GE的PAC系列PLC从站改造技巧
项目中需要将GE的90-70 PLC + VersaMax从站升级改造成 PAC Rx3i + Profinet从站,改造中一个最大的问题是:为了考虑最终冷备系统需要的程序合并,即几个PLC的程序合并到一起,它们中的一部分变量地址可能会重复而需要更改。
这部分工作较为繁琐且容易出错,为尽量避免出错,推荐如下小技巧:
不管程序中一个变量使用的多少次,其最终出现在xml文件的字段下,修改中的address部分,再导入回去,其修改是有效的。
4、批量替换程序中的变量地址(自制小工具Win7):
为后期合并程序做准备,我们可以使用自制小工具实现变量地址的整体偏移。小工具可对GME和Cimplicity变量表进行操作。具体使用方法详见软件帮助。
注意:Cimplicity变量表批量更改地址时,需逐个PLC实施。
5、批量设置变量名的前缀、后缀
合并时除了地址会冲突,变量名也可能存在冲突。通过Excel表格为变量名添加前缀或后缀来解决这个问题。
6、使用符号变量替换地址变量:(矩阵部分)
矩阵编程的方式存在的最大问题是不够直观。如何把不直观变得直观?使用GE的结构变量(UDT)并配合MOVE_FROM_FLAT 和 MOVE_TO_FLAT两个系统功能块即可完成。
由于结构变量并不能直接映射%R、%W等PLC的寄存器地址,编程中使用结构变量后存在如何把结构变量的数据传递出去的问题,可以使用MOVE_FROM_FLAT 和 MOVE_TO_FLAT来完成。
- MOVE_TO_FLAT :Copies data from symbolic memory to reference memory. 从符号内存中拷贝数据到参考地址内存(%R、%W等)。
- MOVE_FROM_FLAT:Copies reference memory data to a User-defined Data Type (UDT) variable or UDT array.从参考地址内存拷贝数据到用户自定义变量(UDT)。
例如:为矩阵的第一行定义一个UDT。
使用MOVE_FROM_FLAT来接受控制指令
使用MOVE_TO_FLAT 来发送状态信息。
通过上述的改造,矩阵变得直观,编程中不必再考虑数据对位的问题。