企业: | 控制网 | 日期: | 2009-05-17 |
---|---|---|---|
领域: | 工业以太网 | 点击数: | 4805 |
![]() 周平 (1981-) 男,湖北汉川人,学士,工程师,主要从事冶金、水处理行业,自动控制开发、改造工作。 摘要:本文简要介绍了Modbus-TCP协议,工业以太网On TCP 、On ISO。针对宝钢长材坯料生产系统优化工程水处理项目中遇到的Quantum与S7 PLC间以太网通讯协议不兼容问题,给出了解决方案,并详细介绍了配置过程和主要程序。 关键词:以太网;Modbus-TCP;工业以太网;IPCom;S7Com;Quantum;S7;PLC Abstract: The article introduces the ModbusTCP protocol, Industrial Ethernet On TCP and On ISO. Based on the incompatible problem of Ethernet communication protocol between Quantum and S7 PLCs, we provide a solution to it. The configuration process and main program code are introduced in detail. Key words: Ethernet; Modbus-TCP; Industrial Ethernet; IPCom; S7Com; Quantum; S7; PLC 随着科学技术的发展,许多工业厂商开始将传统的现场总线构架在以太网上,以太网技术正在逐渐从民用、商用应用于工程领域。从目前工业自动化控制领域的发展情况来看,以太网技术最终取代现场总线是工业控制网络发展的必然趋势。西门子和施耐德两家的PLC在工程项目中经常遇到,西门子S7系列PLC支持On TCP 或On ISO 的以太网通讯,施耐德Quantum 和Premium PLC 支持Modbus TCP 通讯,但是两个PLC之间通过以太网直接通讯一直未能解决。2008年,在上海金自天正信息技术有限公司从宝钢承接的长材坯料生产系统优化工程水处理项目中,需要应用这个技术,在施耐德公司技术服务的支持、查阅文档,并不断尝试下,终于成功解决。 1 Modbus-TCP简介 Modbus应用层协议由美国Modicon公司(现为施耐德电气旗下品牌)与1979年开发的,由于其简单易用,得到了广大工业自动化仪器仪表企业的采纳与支持,实际已成为了业界标准。Modbus 应用层协议位于ISO/OSI参考模型中的第7层,将它嵌入到不同的底层协议中形成了三种具体的通信方式:Modbus 串行链路、Modbus-Plus 和Modbus-TCP。Modbus-TCP实现了在TCP/IP以太网上以客户/服务器方式的Modbus报文通信。这种通信模型是将Modbus 协议作为应用层协议嵌入到底层TCP/IP中构成的。与标准Modbus帧相比,Modbus-TCP帧中的寻址与校验交有TCP/IP协议完成。 2 Industrial Ethernet On TCP or ISO简介 Industrial Ethernet是西门子通讯系统的新名字,过去叫做SINEC H1网。Industrial Ethernet 包括了所有西门子PLC在以太网上的通讯协议:其中就有ISO layer4 和TCP/IP通讯。 3 Quantum与S7 PLC系统的通讯实现 3.1 控制系统组成 本系统整个结构为典型以太网星型结构,如图 1所示。各PLC均为以太网上的独立节点,包括多个施耐德Quantum PLC和西门子S7 PLC。其中Quantum PLC位于水处理电气室,S7 PLC分布在连铸、LF炉、电炉各电气室,Quantum PLC作为公辅系统需与另外三套S7 PLC交换数据。 3.2 控制系统数据通信的配置 要实现各个PLC通过以太网进行数据传输,必须建立在协议统一的基础上。Quantum PLC支持Modbus-TCP协议,而S7 PLC支持Industrial Ethernet On TCP协议,这两个协议在应用层不同,但是低层协议是相同的。在Quantum PLC 方面,施耐德提供有140NWM10000型模板,该模板支持IPCom服务,可以直接在IP层从以太网其它PLC中获得数据。西门子S7 PLC方面,只需要提供支持Fetch/Write功能的CP通讯卡,具备该功能的通讯卡,所有对PLC的数据取存都是透明的,不需其他编程工作。配置步骤如下: (1) 配置140NWM10000模板,设置模板IP地址,如图 2所示。 (2) 导入IPcom服务,并配置CPU与NWM10000传输通道占用的寄存器地址,如图 3所示 。 注意:每个通道占用80个字,也就是说每个通道可以传输80个字,地址设置不要重复。 (3)配置西门子S7 PLC,在HW Manager中配置CP卡,打开Fetch/Write功能,如图 4所示。 (4) 在Netpro中新建连接,连接对象选择“Unspecified”,类型选择“TCP Connection”,如图 5所示。 (5) 配置完成的连接,如图 6所示。 3.3 Unity编程实现: (1) 导入扩展数据类型和扩展功能块,如图7所示。 (2) 建立IPCOM_BUF数据类型的变量,如图8所示。 注意:每个IPCOM_BUF占用80个字的地址空间。 (3) 主要程序代码,图9为读取S7 CPU DB块中数值的代码段。 S7FetchDB参数描述: 输入参数,如表 1 所示。 表 1
输出参数,如表 2所示。 表 2
(4) 主要程序代码,图 10为向S7 CPU中写入数值。 S7WriteDB参数描述: 输入参数,如表 3所示。 表 3
输出参数,如表 4所示。 表 4
4 结束语 系统投用后,笔者成功地从三台西门子PLC中读写到了数据,且数据响应正常、稳定,达到了预期的效果。在统一的通讯协议下,整个网络结构层次清晰、维护方便,为网络的稳定运行打下了良好基础。应该指出的是,这种通讯方式还在起步阶段,有些地方不够成熟,仍需解决,比如:NWM10000通讯模板不支持冗余系统、配置软件不能向下兼容、硬件升级后没有相应的配置软件等,这些问题仍待解决。 其他作者: 陈 伟(1984-),男,江苏南通人,学士,工程师; 么淑华(1970-),女,河北唐山人,学士,高级工程师。 参考文献 [1] Modbus通信在PLC通道检测中的应用[J].电气时代,2005,6:78---80. [2] UDP and TCP Communication for Quantum and Premium PLCs running Unity Pro Applications System User Guide. 施耐德电气. [3] Data Exchange to Siemens S7 Controllers Quantum and Premium PLCs with S7Com Library System User Guide.施耐德电气. |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
1.我有以下需求: | |
|
|
2.详细的需求: | |
* | |
姓名: | * |
单位: | |
电话: | * |
邮件: | * |