前几天下载了S7-200SMART V3版本的软件和相关的一些说明文档,S7-200SMART V3版本新增加了UDT的数据类型、数组的数据类型、FB功能块和运动控制等新功能,安装好STEP7-MicroWIN SMART V3版本软件后就迫不及待想尝试下看能否实现在S7-1200/1500中一样封装一个气缸功能,发现使用起来还是比原来的S7-200SMART V2.8以下版本的好用多了。(在文章末尾提供了S7-200SMART V3版本的软件和相关手册的下载)
如下图所示,在左侧项目树下找到“UDT”的选项 ,在里面新建三个UDT的数据类型,分别为气缸数据类型,命名为“TypeCylinder”、气缸报警数据类型,命名为“TypeCylinderAlarm”、控制模式数据类型,命名为“TypeControlMode”。 (1)“TypeCylinder”的UDT数据类型 在该UDT的数据类型中,添加气缸使用相关的变量,如下图所示: (2)“TypeCylinderAlarm”的UDT数据类型 在该UDT的数据类型中,添加气缸报警相关的变量,如下图所示:
(3)“TypeControlMode”的UDT数据类型 在该UDT的数据类型中,添加控制模式相关的变量,如下图所示: 新建好气缸功能块FB0后,在准备编写气缸功能块控制程序时,发现在气缸功能块中需要使用到定时器指令,然而S7-200SMART中的定时器指令无法向S7-1200/1500中的定时器一样进出参数化,所以,没办法只能先使用里面的FB功能块来编写一个定时器功能块了。 在左侧项目树下找到“程序块”右键点击选择插入一个功能块FB1,并对该功能块命名为“LB_TON”,如下图所示: (1)创建“LB_TON”功能块的接口区 在接口区中定义相应 的ipunt变量、output变量和一些Static的变量,定义的变量如下所示:
这里我们使用“BGN_ITIME“和”CAL_ITIME“这两条指令来搭建一个定时器的功能块程序。程序如下所示: S7-1200/1500中如何编写一个气缸功能块 封装好了定时器功能块后,我们就可以按照在S7-1200/1500中的方式来编写气缸功能块,(S7-1200/1500中的方式来编写气缸功能块的相关内容可以参考上一篇文章) 调用定时器功能块对气缸的限位信号进行滤波操作程序如下图所示
手自动控制程序
命令中转与汇总输出程序
报警判断程序
报警复位与报警汇总输出程序
使用气缸功能块实现对提升气缸和真空吸气缸的控制,在调用该气缸功能块前,需要在左侧项目树下的“全局变量表“中建立相应变量,这里两个气缸可采用数组的方式来建立,数组的数据类型可选择气缸的数据类型,同时气缸报警也可使用数组的方式建立,后续在调用气缸功能块时把所建立的变量分配过去即可,所建立的变量如下所示,地址中显示的绝对地址为系统自动生成的地址。
新建一个FB功能块,并对该功能块命名为“EM0_CM0_Cylinders“,在该FB块中调用气功功能块程序,如下图所示
最后在主程序中MAIN(OB1)中调用功能块“EM0_CM0_Cylinders“,如下所示 S7-200SMART V3版本的软件新增了很多功能,更多的功能大家可以扫描下面的二维码,下载编程软件和相关的样本手册,编程手册进行查阅 S7-200 SMART V3.0软件和手册下载
【1】S7-200_SMART_V3编程软件(测试套件)
网盘链接: https://pan.baidu.com/s/1BDQt02rtkFwXovvQ9RuYGw?pwd=1111 提取码: 1111
【2】S7-200_SMART_V3系统手册
官方链接:
https://support.industry.siemens.com/cs/document/109978364/s7-200-smart-v3-0-%E7%B3%BB%E7%BB%9F%E6%89%8B%E5%86%8C?dti=0&lc=zh-CN
网盘链接1:
https://pan.baidu.com/s/1F8_MMmt1J2R5XuJ4enH5_Q?pwd=1111 提取码: 1111
网盘链接2 :S7-200 SMART V3.0测试软件及固件 链接: https://pan.baidu.com/s/1_z3cU_y0h3zZq7j1zImZ9g 提取码: h8jn
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |