采用线性化编程时,所有程序指令都编写在一个连续的程序块——组织块OB1中,无须编制程序块、功能块、数据块等。
采用调用式编程的程序由组织块OB、程序块(FC)、功能块(FB)、系统程序块(SFC)、系统功能块( SFB)、数据块(DB)等组成,由组织块OB1对各逻辑块与数据块进行组织与管理。
采用结构化编程的程序结构形式与调用式编程相同,程序同样由组织块OB、程序块(FC)、功能块(FB)、系统程序块(SFC)、系统功能块(SFB)、数据块(DB)等组成,并通过组织块OB1对其进行组织与管理。功能块(FB)可以用于结构化编程,为了满足参数化编程的需要,功能块(FB)需要配套的即时数据块DI,组织块OB1在调用FB时,需要根据不同的控制要求,通过即时数据块DI对参数进行赋值。
图中为采用三种不同编程方式的程序结构示意图,在实际调用式编程、结构化编程时,被组织块OB1调用的逻辑块还可以调用其他逻辑块(程序嵌套)。
![西门子S7-300/400PLC的程序结构](/upload/hcom/20230612060732wz0dxfljehu.jpg)
S7-300/400的程序结构与执行过程