西门子PLC结构化编程详解,电气小白建议收藏!
在进行PLC编程的时候,我们常用的方式有,线性化编程、模块化编程以及结构化编程。线性化编程只使用一个主程序,所有的程序指令都在主程序中执行,适合小型自动化项目。模块化编程是将一个自动化项目分割成不同的功能模块,比如一个自动化项目可以分成手动、自动、报警等不同的功能,这些不同的功能然后再统一被主程序调用。结构化编程与模块化有些类似,都是使用多个子程序,但是结构化编程将某些可重复性的任务,做成可复用的程序块,方便移植使用。为了直观的理解这三种编程方式的区别,下面以两条流水线的起保停控制作为举例说明。使用的硬件信号表1所示:
表1:IO信号表
线性化的编程方式,所有的程序都在OB1中,如图1所示:
▲ 图1 线性化编程
模块化的编程方式,将两条流水线分别在不同的子程序中进行调用,如图2、图3所示:
▲ 图2 主程序调用子程序
▲ 图3 流水线1执行程序
▲ 图4 流水线2执行程序
结构化编程,则是通过建立FB程序块,内部的功能在FB中实现,该FB块可重复使用,当进行FB程序块调用的时候,会自动生产对应的DB数据块,程序进行控制的时候,定义具体的管脚即可。具体的结构化编程如图所示:
▲ 图5 OB1的程序调用
▲ 图6 流水线1的程序
▲ 图7 流水线2的程序
▲ 图8 流水线功能的背景块