资源描述:
《基于cp341模块的modbusrtu从站协议免驱动通信》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、西安工程大学学报JournalofXianPolytechnicUniversity第24卷第6期(总106期)2010年12月Vo.l24,No.6(Sum.No.106)文章编号:1674649X(2010)06078605基于CP341模块的MODBUSRTU从站协议免驱动通信王延年,陈红,高霞(西安工程大学电子信息学院,陕西西安710048)摘要:为了克服在SIEMENSPLC通信系统,用硬件驱动实现MODBUSRTU从站协议通信的弊端,提出了MODBUSRTU从站协议免驱动通信的设计方案.该方案基于CP341串行通信处理器模块
2、的ASCII通信方式,采用STEP7编程软件,根据MODBUSRTU报文格式编写通信程序,实现MODBUSRTU从站协议免驱动通信.通过CP341与DCS之间数据通信程序的设计,建立了PLC做从站与DCS的MODBUS通信.与使用MODBUSRTU协议转换卡相比,软件编程具有较强的灵活性和通用性.关键词:CP341通信模块;MODBUSRTU从站协议;免驱动;串行通信中图分类号:TN91504文献标识码:A0引言在目前的工业通信领域中,MODBUS协议作为一种开放高效的现场总线通信协议,得到越来越普遍[12]的现场设备接口支持.PLC,DC
3、S,HMI,变频器,触摸屏,智能仪表等许多工业自动化设备都使用MODBUS协议作为通信标准.有了MODBUS,不同厂商生产的控制设备可以连成工业网络,进行集中监控.西门子公司的S7系列PLC以其卓越的性价比在工业控制领域被广泛应用,其提供的CP341通信处理器模块有一个通信接口,可实现与各种串口设备之间的智能通信.采用CP341实现MODBUS通信主要有2条途径:(1)通过装载专用的MODBUSMaster/Slave驱动程序,利用STEP7中的参数化设置工具,实现MODBUS通信功能;(2)通过采用ASCII通信方式,在PLC中编写通信程序来实现MOD
4、BUS通信功能.第一条途径必须购买额外的MODBUS协议转换卡,增加了系统开发的经济成本,降低了系统配置的灵活性和可扩展性,但是使用MODBUS协议转换卡可以使通信更为容易,所以该方法被广泛应用.第二条途径程序比较繁琐,目前国内外很少有人研究成功,但是该途径不需另外购买MODBUS协议转换卡,且适用于任何基于ASCII通信的串口通信协议,具有一定的灵活性和通用性.本文利用CP341在PLC中编写通信程序实现S7300PLC做从站与DCS的MODBUS通信.1系统通信构成PLC系统采用SIEMENSSIMATICS7300PLC,由多块I/O模块、CP
5、341串行通信处理器模块、电源模收稿日期:20100416通讯作者:王延年(1963),男,吉林省长春市人,西安工程大学教授.Emai:lwyn11405@yahoo.com.cn第6期基于CP341模块的MODBUSRTU从站协议免驱动通信787块(PS)等构成,PLC系统与EMERSON的DCS系统以电缆连接,在MODBUS网络中用作从站,用于将现场36个油泵的运行、停止状态传给DCS,同时接收来自中控室的操作指令.图1为通信系统构成框图.图1通信系统构成图PLC系统与DCS系统之间采用MODBUSRTU协议通讯.MO
6、DBUS协议是目前工业领域应用最广泛的协议,它是应用于电子控制器上的一种通用语言,通过此协议,控制器相互之间、控制器经由网络(如以太网)和其他设备之间可以通信.它已经成为一种通用工业标准.MODBUS控制器数据通信使用主/从技术,即仅一台设备(主设备)能初始化传输(查询),其他设备(从设备)根据主设备查询提供的数据做出相[3]应的反应.2系统通信实现21CP341模块CP341是点对点的快速、功能强大的串行通信处理器模块,有一个通信接口,用于S7300和ET200M(S7作为主站),可以减轻CPU的负担.CP341有6种不同的型号,可以使用的通信协
7、议包括ASCII、3964(R)、RK512协议和可装载的驱动程序,包括MODBUS主站协议、从站协议等.CP341有RS232C、TTY、[4]RS422/485等3种不同的传输接口.本系统选用RS485接口的CP341模块,使用集成在CP341内的ASCIIDriver通信协议,通过编写通信程序,来实现MODBUSRTU从站协议.CP341用功能块FB7PRCVRK!接收数据,用FB8PSNDRK!发送数据,在用户程序中,FB7/FB8分别有一个背景数据块,FB7/FB8是无条件调用的,数据的发送或接收可以是循环的,也可以是时间驱动的.22
8、通信接口硬件组态本系统采用国际上通用的MODBUS通信协议进行数