摘 要:某工厂自动化生产线为了实现对生产过程的实时监控,需要将车间的环境参数和报警信息显示在LED屏上,因LED厂家的通讯协议为非标准Modbus协议,故选择上海泗博Modbus转PROFIBUS网关PM-125 来实现其功能。
关键字:Modbus通用模式、Modbus转PROFIBUS DP、ASCII码、LED显示屏、RS485转PROFIBUS DP、PM-125、西门子S7-300PLC
1. 系统框架
系统框架图如图1所示,本通讯系统主要有由三部分组成,LED显示屏、PM-125和西门子300PLC,PLC将采集到的数据以DP协议发送给PM-125,经协议转换后以设备自定义Modbus协议发送给LED屏显示出来,以下为详细互联图:
图1 系统框架图
2. 系统工作原理
因LED显示屏通讯协议为自定义Modbus协议,故需要在配置软件PMA-123中选择子网的协议类型为通用模式。
PM-125通用模式在DP端有固定的数据帧格式:事物号+数据个数+LED屏定义的数据请求内容,故需要在DP输出数据内容前加两个字节分别表示事物号和数据个数。
LED屏定义的数据请求内容为:数据内容+27 27 27,其中后面的3个27是结束指令。这些数据内容会显示在LED屏上,包括温度、湿度、时间、故障报警等参数。
在PROFIBUS DP端输出数据时要依据固定数据格式(数据内容为ASCII码格式):事物号+数据个数+数据内容+27 27 27(结束指令):
01 18 06 2A 31 32 33 30 34 34 36 30 2D 37 38 39 31 33 31 33 30 30 C1 27 27 27
注:每次发送数据要修改事物号,否则默认事物号不变不发送数据。
3. PM-125通用模式简介
本适配器实现PROFIBUS-DP现场总线协议与RS232/RS485/RS422之间的数据交换。PROFIBUS-DP数据与RS232/RS485/RS422数据之间是双向的转换和传递。PROFIBUS输出数据通过RS232/RS485/RS422口发送到RS232/RS485/RS422总线上,RS232/RS485/RS422口接收到的数据放入PROFIBUS输入数据中。
PROFIBUS输出数据格式:
[事务号] [串口输出数据长度n] [串口输出数据1] …… [串口输出数据n] [0x00] …… [0x00]
|— n —| |— m —|
注意:
Ø PROFIBUS输出字节数应选择大于等于n + 1的数目;
Ø m个0x00为填充数据(亦可为任意数),n+m+1应等于PROFIBUS输出字节数。
Ø 事务号:发送输出数据时,事务号须加一表示新的一帧数据。
PROFIBUS输入数据格式:
[事务号] [串口输入数据长度n] [串口输入数据1] …… [串口输出数据n] [0x00] …… [0x00]
|— n —| |— m —|
注意:
Ø PROFIBUS输入字节数应选择大于等于n + 1的数目;
Ø m个0x00为填充数据,n+m+1应等于PROFIBUS输入字节数。
Ø 事务号:事务号加一表示有一帧新输入数据。
4. PM-125参数设置
在配置软件PMA-123子网协议类型选择通用模式,设置相应通讯波特率、奇偶校验方式、停止位等相关参数。默认数据位只支持8位,若无特殊要求,其他参数可以不用设置。
5. 在STEP7中进行组态配置
如上图所示,首先将PM-125对应的GSD文件成功导入Step7中,然后进行组态:
Ø 新建DP从站地址为7。(将PM-125数码管显示地址手动调整为7,组态软件中的PM-125 DP从站地址必须与数码管上面显示的地址值一致)。
Ø 添加16 Words Input ,16 Words Output数据块后系统会自动分配DP从站的输入、输出起始地址,与网关的输入、输出内存映射区域对应。Step7中所添加的数据块字节数要大于所发送的数据帧字节数。如本案例发送数据个数为24个字节,可以添加数据个数为16 words=32 Bytes。
PROFIBUS DP端正常连接后,网关上面的 STA指示灯会绿灯闪烁。当串口端数据交换正常时,网关上面的串口指示灯TX、RX灯会绿灯闪烁。此时,在监视修改界面按输出数据帧格式输入数据,点击发送后在LED屏上显示相应数据。
6. 结束语
在本通讯系统中,PM-125作为PLC和LED显示屏之间的桥梁,将PROFIBUS-DP协议转换为设备自定义协议,实现两者间的数据交换。在整个系统中,PM-125可以很好的实现客户的要求,受到客户的好评。