Modicon-Quantum与S7-PLC通过TCP协议通信的实现.doc

上传人:scccc 文档编号:12714645 上传时间:2021-12-05 格式:DOC 页数:16 大小:353.50KB
返回 下载 相关 举报
Modicon-Quantum与S7-PLC通过TCP协议通信的实现.doc_第1页
第1页 / 共16页
Modicon-Quantum与S7-PLC通过TCP协议通信的实现.doc_第2页
第2页 / 共16页
Modicon-Quantum与S7-PLC通过TCP协议通信的实现.doc_第3页
第3页 / 共16页
Modicon-Quantum与S7-PLC通过TCP协议通信的实现.doc_第4页
第4页 / 共16页
Modicon-Quantum与S7-PLC通过TCP协议通信的实现.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《Modicon-Quantum与S7-PLC通过TCP协议通信的实现.doc》由会员分享,可在线阅读,更多相关《Modicon-Quantum与S7-PLC通过TCP协议通信的实现.doc(16页珍藏版)》请在三一文库上搜索。

1、Modicon Quantum与S7 PLC通过TCP协议通信的实现企业:控制网日期:2009-05-17领域:工业以太网点击数:432周平 (1981-)男,湖北汉川人,学士,工程师,主要从事冶金、水处理行业,自动控制开发、改造工作。摘要:本文简要介绍了Modbus-TCP协议,工业以太网On TCP 、On ISO。针对宝钢长材坯料生产系统优化工程水处理项目中遇到的Quantum与S7 PLC间以太网通讯协议不兼容问题,给出了解决方案,并详细介绍了配置过程和主要程序。关键词:以太网;Modbus-TCP;工业以太网;IPCom;S7Com;Quantum;S7;PLC推荐精选Abstrac

2、t: 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:

3、Ethernet; Modbus-TCP; Industrial Ethernet; IPCom; S7Com; Quantum; S7; PLC 随着科学技术的发展,许多工业厂商开始将传统的现场总线构架在以太网上,以太网技术正在逐渐从民用、商用应用于工程领域。从目前工业自动化控制领域的发展情况来看,以太网技术最终取代现场总线是工业控制网络发展的必然趋势。西门子和施耐德两家的PLC在工程项目中经常遇到,西门子S7系列PLC支持On TCP 或On ISO 的以太网通讯,施耐德Quantum 和Premium PLC 支持Modbus TCP 通讯,但是两个PLC之间通过以太网直接通讯一直未能解

4、决。2008年,在上海金自天正信息技术有限公司从宝钢承接的长材坯料生产系统优化工程水处理项目中,需要应用这个技术,在施耐德公司技术服务的支持、查阅文档,并不断尝试下,终于成功解决。1 Modbus-TCP简介 Modbus应用层协议由美国Modicon公司(现为施耐德电气旗下品牌)与1979年开发的,由于其简单易用,得到了广大工业自动化仪器仪表企业的采纳与支持,实际已成为了业界标准。Modbus 应用层协议位于ISO/OSI参考模型中的第7层,将它嵌入到不同的底层协议中形成了三种具体的通信方式:Modbus 串行链路、Modbus-Plus 和Modbus-TCP。Modbus-TCP实现了在

5、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 控制

6、系统组成 本系统整个结构为典型以太网星型结构,如图 1所示。各PLC均为以太网上的独立节点,包括多个施耐德Quantum PLC和西门子S7 PLC。其中Quantum PLC位于水处理电气室,S7 PLC分布在连铸、LF炉、电炉各电气室,Quantum PLC作为公辅系统需与另外三套S7 PLC交换数据。 图1 系统结构图3.2 控制系统数据通信的配置 要实现各个PLC通过以太网进行数据传输,必须建立在协议统一的基础上。Quantum PLC支持Modbus-TCP协议,而S7 PLC支持Industrial Ethernet On TCP协议,这两个协议在应用层不同,但是低层协议是相同的。

7、在Quantum PLC 方面,施耐德提供有140NWM10000型模板,该模板支持IPCom服务,可以直接在IP层从以太网其它PLC中获得数据。西门子S7 PLC方面,只需要提供支持Fetch/Write功能的CP通讯卡,具备该功能的通讯卡,所有对PLC的数据取存都是透明的,不需其他编程工作。配置步骤如下: (1) 配置140NWM10000模板,设置模板IP地址,如图 2所示。推荐精选 图2 设置模板IP地址 (2) 导入IPcom服务,并配置CPU与NWM10000传输通道占用的寄存器地址,如图 3所示 。 注意:每个通道占用80个字,也就是说每个通道可以传输80个字,地址设置不要重复。

8、推荐精选 图3 配置CPU与NWM10000传输通道占用的寄存器地址 (3)配置西门子S7 PLC,在HW Manager中配置CP卡,打开Fetch/Write功能,如图 4所示。 图4 配置CP卡 (4) 在Netpro中新建连接,连接对象选择“Unspecified”,类型选择“TCP Connection”,如图 5所示。推荐精选 图5 在Netpro中新建连接 (5) 配置完成的连接,如图 6所示。推荐精选 图6 配置完成3.3 Unity编程实现: (1) 导入扩展数据类型和扩展功能块,如图7所示。 图7 (2) 建立IPCOM_BUF数据类型的变量,如图8所示。 注意:每个IPC

9、OM_BUF占用80个字的地址空间。推荐精选 图8 (3) 主要程序代码,图9为读取S7 CPU DB块中数值的代码段。 图9 S7FetchDB参数描述: 输入参数,如表 1 所示。 表 1 名称类型描述Request_Org01EBOOL上升沿时向S7请求读取数据StartAddrUINTDB块起始地址DBNRBYTEDB块推荐精选IP1 . IP4BYTE要读取的S7 IP地址:IP1.IP2.IP3.IP4.PortUINTS7站点指定的Fetch端口号ConnectBOOL为“1”时,FB功能块尝试与远程S7CPU建立连接,如果连接成功,Activity 和 Connected为“1

10、”,Error =0.SndRcvBufAddrUINT确定参数的起始地址,这个地址必须与变量表中定义的SndRcvBuf参数地址一致。PathUINT指定连接序号。占用IPCOM配置时,对应通道中的某一个连接(共4个通道,每个通道可提供4个TCP连接) 输出参数,如表 2所示。 表 2 名称类型描述DoneBOOL确认功能块执行成功FetchedValuesANY_ARRAY_BYTE从S7 CPU 抓取的数据存放地址ErrorCodeUINT相关S7通讯协议故障码ErrorBOOL功能块执行错误StatUINT相关IPCom通讯系统故障状态ActivityBOOLIPCom正常执行中时为“

11、1”ConnectedBOOLTCP 连接建立后,为“1” (4) 主要程序代码,图 10为向S7 CPU中写入数值。推荐精选 图10 S7WriteDB参数描述: 输入参数,如表 3所示。 表 3 名称类型描述Request_Org01EBOOL上升沿时向S7请求写入数据WriteValuesANY_ARRAY_BYTE向S7写入的数据StartAddrUINTDB块起始地址DBNRBYTEDB块IP1 . IP4BYTE要写入的S7 IP地址:IP1.IP2.IP3.IP4.PortUINTS7站点指定的Write端口号ConnectBOOL为“1”时,FB功能块尝试与远程S7CPU建立连

12、接,如果连接成功,Activity 和 Connected为“1”,Error =0.SndRcvBufAddrUINT确定参数的起始地址,这个地址必须与变量表中定义的SndRcvBuf参数地址一致。PathUINT指定连接序号。占用IPCOM配置时,对应通道中的某一个连接(共4个通道,每个通道可提供4个TCP连接)推荐精选 输出参数,如表 4所示。 表 4 名称类型描述DoneBOOL确认功能块执行成功ErrorCodeUINT相关S7通讯协议故障码ErrorBOOL功能块执行错误StatUINT相关IPCom通讯系统故障状态ActivityBOOLIPCom正常执行中时为“1”Connec

13、tedBOOLTCP 连接建立后,为“1”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.施耐德电气. (注:可编辑下载,若有不当之处,请指正,谢谢!) 推荐精选

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1