其他品牌
plc的硬件配置、控制程序采用施奈德的编程软件包unitypro完成,pc通过网络或usb与m340plc进行程序传送。首先进行plc硬件组态,含底版、电源、cpu、输入输出模块等。通过电源模块属性可查看电源使用情况,应保留一定余量,否则需更换容量更大的电源模块;在cpu模块的serialport口配置串行链路参数如:485modbus主站、波特率9600、帧延时4ms、数据位8位、停止位1位、偶校验;创建网络链路ethernet1并配置ip地址等网络通信参数4AM4842-8ED40-0FA0,将cpu模块的ethernet口链接到网络链路ethernet1;根据现场模拟量信号要求配置模拟量输出模块参数;定义相关变量等。
4.2plc程序设计
(1)程序结构。程序采用模块化设计,具有较高可读性、可维护性其程序结构如图3所示。
图3程序结构图
(2)程序注释。plc上电首次扫描执行初始化init()子程序,初始化通信参数,上、下游海拔预置值,各个传感器调零值,拦污栅压差整定值等。
传感器通信comm()子程序,分时读取传感器水位值,通信故障时水位保持原值。
计算calc()子程序,计算出上、下游,拦污栅后的实际海拔值,拦污栅压差、各机组有效水头等。
信号输出out()子程序,拦污栅压差过大报警、通信故障报警、装置故障报警、4~20ma模拟量输出等。
数据上送sent()子程序,根据监控上位机通信规约,组织上送数据信文,含各实际海拔值、有效水头、详细故障信息、拦污栅压差报警定值等。
4.3水位信号读取
m340plc和编码器串行rs485通信采用modbusrtu通信规约,这个通讯协议已广泛被国内外各行业作为系统集成的一种通用工业标准协议,有利于系统的维护和扩展。plc为主站,编码器为从站。
查编码器技术手册,水位测值的modbus地址是4x0000,根据modbus通信规约信息帧结构读取地址1传感器的水位测量值,应发送以下通信码:m340plc读取水位信息主要用read_var功能模块:
010300000001840a
站地址功能码首地址个数crc校验码
功能模块说明[1]
adr
通信地址:语法为addm(`r.m.c.node`机架号.模块号.通道号.站地址)类型。
obj要读取的对象类型
’%m’:内部位
’%mw’:内部字
’%s’:系统位
’%sw’:系统字
num读取的第一个对象的索引。
nb要读取的对象的数量。
recp输出参数包含所读取对象的值的字表。
gest交换管理表:4个字的数组。