西门子S7-1200/1500PLC的程序组成之FB的应用
西门子1200PLC的程序组成包括:输入输出变量、M变量、OB块、FB块、FC块、DB块。
其中FB块是将自身的值存储在背景数据块中的代码块,FB块执行完后背景数据块中的值仍然可以使用。也就是说可以在FB块中生成多个背景数据块,在添加DB块时类型选择要建立数据块的FB就好了。
我们以单按钮启动、停止控制负载为例,说明FB块的用法。
一、组态一个PLC设备
1、新建一个项目,在项目中添加一个PLC设备。
2、配置PLC CPU模块的属性参数。
PROFINET接口的子网。
PROFINET接口的IP地址。
系统和时钟存储器开启。
下图这个型号的PLC CPU是1516-3 PN/DP,有两个PROFINET接口,注意IP地址的不同。
3、添加一个DI/DQ模块,不用分配它的I、Q地址,默认。
二、组态一个HMI设备
1、在项目树中,找到,添加新设备,选择HMI型号,确定。
2、在“设备和网络”项目的“网络视图”中,用鼠标连接PLC与HMI的网口。如在启动向导时选择了PLC,则可省去这一步。
3、配置HMI的PROFINET以太网地址,与PLC为同一网段,不同网址。
以上2、3可以在添加HMI启动向导时自动完成。
三、编写PLC程序
1、新建一个PLC变量表,如系统比较复杂,可以把M区变量、I区变量、Q区变量分别建立变量表。
如为复杂控制系统,变量表好与系统默认变量表分开。
2、新建一个FB程序块,可手动进行编号,随后定义一些块接口参数。
可以按照不同功能,分不同结构来定义“元素”。
这里的元素中含变量和常量。
这里的按钮与变量表里的按钮不是同一个。
3、编写FB程序。
这里仿真的话,输入地址要用内部存储地址M代替。
4、鼠标右击FB块,在FB块属性中取消勾选“优化的块访问”。
5、在OB块中调用FB,生成背景数据块。
6、如有需要可添加多个DB(数据块),也可用重复拖拽FB的方式调用。
7、添加变量表中的变量,只要往下拖动方框右下角的小点,即可添加多个同类型的变量。
8、可以在不同的DB数据块中设定不同的断电保持特性。
四、仿真
程序仿真的话,还是要把输入变量I变换为M,不然会出错。
\