图11-27 FM352-5不能使用的指令
图11-28 FM352-5专用函数库
FM352-5模块具有独立的执行程序,与普通的CPU编程方法类似,但是不能使用语句表编程。由于FM352-5是针对位信号进行处理的,在SIMATIC Manager中集成的一些指令不能使用,如图11-27所示。由于时序的原因,在位逻辑中不能使用单线圈的R/S触发器及SAVE指令。在比较器和转换器中,不能使用涉及浮点运算的指令,计数器、定时器,则需要使用FM352-5专用的函数库。安装了FM352-5的参数化软件后,在“SIMATIC Manager”中自动集成FM352-5专用的函数库,如图11-28所示,函数库中包含计数器、定时器、加减乘除函数块、移位寄存器函数块等,如果在FM352-5中使用非法的指令,则在程序编译时会报错。FM352-5的执行程序只能存储于一个函数块FB中,执行程序中不能使用M、DB、I、Q、L、PIW、PQW等数据区,也不能使用绝对地址,必须使用FB中的形参进行程序的编写,FB形参是由IN、OUT及STAT接口区组成,可以是数组、结构及FB等数据类型。FM352-5使用的函数块FB形参有固定的格式,有的形参可以添加修改,有的则不能做任何改动。函数块FB输入接口区的形参见表11-6所示。
表11-6 FB输入接口区的形参
输入接口区的形参为集成的数字量输入信号(2B)和CPU发送的命令信号(14B),形参使用符号名寻址,例如集成的第一个输入信号地址表示为Din[0],而不能使用IX.X。函数块FB输出接口区的形参见表11-7所示。
表11-7 FB输出接口区的形参
输出接口区的形参为集成的数字量输出信号(2B)和向CPU发送的状态信息(14B)。函数块FB静态接口区的形参见表11-8所示。
表11-8 应用FB的静态形参格式
(续)
(续)
形参“Intr”中每一个位都可以产生过程中断,产生的中断在CPU中调用相应的OB块,例如OB40,通过OB40中的形参“OB40_POINT_ADDR”第一个字节的8个位,可以判断产生中断的事件是由“Intr”中哪一个位触发的;“ST”为FM352-5模块的诊断信息;“Encoder”为编码器的数据区,可以对编码器进行读写操作;在接下来的数据区可以自由插入FM352-5专用的函数块,例如计数器和定时器等,数量与FM352-5的资源有关;“FF”专用于S/R,R/S触发器的寄存器,不能作为其他数据区使用;“Edge”专用于信号沿检查的寄存器,不能作为其他数据区使用;“Conn”专用于连接器,相当于普通CPU的中间变量,不能作为其他数据区使用。
FM352-5模块只能使用上面介绍的形参,并以符号名寻址方式编程,下面以示例的方式介绍FM352-5的编程方法,假设当FM352-5的第一个输入点为1时,使能FM352-5第一个输出点输出10kHz脉冲,脉冲频率由CPU设定并将频率设定值读回到CPU中进行校验。根据控制要求,可以使用FM352-5专用函数库中的FB119产生脉冲输出,FB119的输入、输出参数见表11-9所示。
表11-9 FB119输入、输出参数
参数“PERIOD”等于50000除以所需要的频率,例如当“PERIOD”=W#16#C350时,输出频率为1Hz;当“PERIOD”=W#16#1时,输出频率为50kHz;当“PERIOD”=W#16#5时,输出频率为10kHz,所以从CPU中将W#16#5赋值参数“PERIOD”就能满足控制要求。FB119的功能如图11-29所示。(www.xing528.com)
图11-29 FB119的功能图
当“ENABLE”为1时,Q输出频率信号。
编程步骤如下:
1)建立S7-300系列PLC站,在硬件配置中插入CPU和FM352-5,并编译存盘。
2)在“SIMATIC Manager”中,打开库“Library”,将“FM352-5”中函数块复制到应用程序中。其中FB3为FM352-5示例函数块,形参格式已经按照要求建立。
3)在硬件配置中,双击FM352-5图标,点击“Programming”标签,进入编程设置界面,如图11-30所示。
图11-30 FM352-5“Programming”界面
在“Function Block number(FB)”处输入需要编写的FB,本例中为3,点击“EditAp-plication FB”,编辑FB3。
4)在FB3接口区“OUT”中,加入形参“#CPU_In.Feedback1”(地址2.0)作为FM352-5返回CPU的信息;在接口区“IN”中,加入形参“#CPU_Out.CP_Period1”(地址10.0)作为CPU发送的命令;在“STAT”中,加入FB119,命名为CP1。
5)在FB3中编写程序如图11-31所示。
图11-31 FB3示例程序
“#DIn[0]”为FM352-5集成的第一个输入点,“#DOut[0]”为FM352-5集成的第一个输出点,FB119参数“#CPU_Out.CP_Period1”为CPU发送的命令,并将发送的命令再返回到CPU中,存盘后关闭FB3。
6)分别点击图11-30中的第3、4、5步进行语法检查、代码编译,并将FB3中的程序下载到FM352-5中(联机状态),在编译时显示程序占用FM352-5资源的百分比。
7)在CPU中调用FB31功能块,建立与FM352-5的通信,示例程序如下:
M1.1为1时,通信建立,FM352-5运行,并将W#16#5发送到FM352-5的数据接收区#CPU_Out.CP_Period1中,这样当FM352-5第一个输入信号为1时,第一个输出点输出10kHz频率。FM352-5模块专用函数库中的FB30为调试块,当在CPU中调用FB30时,FM352-5模块集成的输入、输出点由CPU接替控制,适合于调试阶段程序模拟,FB30、FB31不能同时调用。
FM352-5的示例程序FM352-5.zip、参数化软件及电子手册参考光盘“功能模块FM”目录。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。