编程方法
目
录
1线性编程
2模块化编程
3结构化编程
1线性编程
线性编程就是将所有程序指令放置在一个循环程序块OB1中,如图所示。
程序执行过程:
块中的程序按顺序执行,CPU循环扫描时不断地依次执行OB1中的全部指令。
优点:
这种编程方式的特点是程序结构简单,不涉及功能块、功能、数据块、局部变量和中断等较复杂的概念,不带分支,一个程序块包含了所有指令。
线性化编程示意图
1线性编程
缺点:
(1)所有的指令都在OB1中,即使程序中的某些部分代码在大多数时候并不需要执行,但在循环扫描工作方式下每个扫描周期都要扫描执行所有的指令,CPU因此额外增加了不必要的负担,CPU运行效率低。
(2)如果需要多次执行相同或类似的操作,需要重复编写相同或类似的程序。
(3)程序结构不清晰,会造成管理和调试的不便
建议:在编写大型程序时避免采用线性化编程。
2模块化编程
模块化编程是将程序根据功能分为不同的逻辑块,每个块中包含完成某部分任务的功能指令。
程序执行过程:组织块OB1中的指令决定块的调用和执行。被调用的块执行结束后,返回到OB1中继续执行后面的指令,其过程如图所示。
模块化编程中OB1起着主程序的作用,功能(FC)或功能块(FB)控制着不同的过程任务,如电动机控制、电机相关信息及其运行时间等,相当于主循环程序的子程序。
2模块化编程
模块化编程的特点:
(1)模块化编程中,被调用块和调用块之间没有数据交换。
(2)控制任务被分成不同的块,易于几个人同时编程,程序的调试和故障的查找。
(3)OB1根据条件只有在需要时才调用相关的程序块,因此每次循环中不是所有的块都执行,CPU的利用效率得到了提高。
3结构化编程
结构化编程是将过程要求类似或相关的任务归类,形成通用的解决方案,在相应的程序块中编程,即创建可以重复使用的通用代码块,可以在OB1或其他程序块中调用。
通用代码块编程时采用形式参数,可以通过不同的实际参数调用相同的代码块。结构化程序运行过程如图所示。
结构化编程示意图
3结构化编程
结构化编程中,被调用块和调用块之间有数据交换,需要对数据进行管理。结构化编程必须对系统功能进行合理地分析、分解和综合,对编程设计人员的要求较高。
结构化编程具有如下有点:
(1)各单个任务块的创建和测试可以相互独立地进行。
(2)通过使用参数,可将块设计得十分灵活。例如可以创建一个钻孔程序块,其坐标和钻孔深度可以通过参数进行修改。
(3)块可以根据需要在不同的地方以不同的参数数据记录并进行调用。
(4)在预先设计的库中,能够提供用于特殊任务的“可重用”块。
在对S7-1200PLC编程时,推荐用户根据实际工程特点采用结构化编程方式,通过传递参数使程序块重复调用,结构清晰,调试方便。