您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 力控与MCGS以太网通讯方法
工控机力控与MCGS以太网通讯方法一、MODBUS/TCP通讯协议介绍MODBUS/TCP是简单的、中立厂商的用于管理和控制自动化设备的MODBUS系列通讯协议的派生产品,显而易见,它覆盖了使用TCP/IP协议的“Intranet”和“Internet”环境中MODBUS报文的用途。协议的最通用用途是为诸如PLC’s,I/O模块,以及连接其它简单域总线或I/O模块的网关服务的.MODBUS/TCP使MODBUS_RTU协议运行于以太网,MODBUSTCP使用TCP/IP和以太网在站点间传送MODBUS报文,MODBUSTCP结合了以太网物理网络和网络标准TCP/IP以及以MODBUS作为应用协议标准的数据表示方法。MODBUSTCP通信报文被封装于以太网TCP/IP数据包中。与传统的串口方式,MODBUSTCP插入一个标准的MODBUS报文到TCP报文中,不再带有数据校验和地址。1.1通讯所使用的以太网参考模型ModbusTCP传输过程中使用了TCP/IP以太网参考模型的5层:第一层:物理层,提供设备物理接口,与市售介质/网络适配器相兼容第二层:数据链路层,格式化信号到源/目硬件址数据帧第三层:网络层,实现带有32位IP址IP报文包第四层:传输层,实现可靠性连接、传输、查错、重发、端口服务、传输调度第五层:应用层,Modbus协议报文.1.2ModbusTCP数据帧Modbus数据在TCP/IP以太网上传输,支持EthernetII和802.3两种帧格式,ModbusTCP数据帧包含报文头、功能代码和数据3部分,MBAP报文头(MBAP、ModbusApplicationProtocol、Modbus应用协议)分4个域,共7个字节,如下图所示:图:MODBUSTCP报文由于使用以太网TCP/IP数据链路层的校验机制而保证了数据的完整性,MODBUSTCP报文中不再带有数据校验”CHECKSUM”,原有报文中的“ADDRESS”也被“UNITID”替代而加在MODBUS应用协议报文头中1.3ModbusTCP使用的通讯资源端口号在Moodbus服务器中按缺省协议使用Port502通信端口,在Modus客户器程序中设置任意通信端口,为避免与其他通讯协议的冲突一般建议2000开始可以使用.1.4ModbusTCP使用的功能代码按照使用的通途区分,共有3种类型分别为:1)公共功能代码:已定义好功能码,保证其唯一性,由Modbus.org认可;2)用户自定义功能代码有两组,分别为65~72和100~110,无需认可,但不保证代码使用唯一性,如变为公共代码,需交RFC认可;3)保留功能代码,由某些公司使用某些传统设备代码,不可作为公共用途。按照应用深浅,可分为3个类别1)类别0,客户机/服务器最小可用子集:读多个保持寄存器(fc.3);写多个保持寄存器(fc.16)。2)类别1,可实现基本互易操作常用代码:读线圈(fc.1);读开关量输入(fc.2);读输入寄存器(fc.4);写线圈(fc.5);写单一寄存器(fc.6)。3)类别2,用于人机界面、监控系统例行操作和数据传送功能:强制多个线圈(fc.15);读通用寄存器(fc.20);写通用寄存器(fc.21);屏蔽写寄存器(fc.22);读写寄存器(fc.23)1.5ModbusTCP通讯应用举例在读寄存器的过程中,以ModbusTCP请求报文为例,具体的数据传输过程如下:1)ModbusTCP客户端实况,用Connect()命令建立目标设备TCP502端口连接数据通信过程2)准备Modbus报文,包括7个字节MBAP内请求;3)使用send()命令发送;4)同一连接等待应答;5)同recv()读报文,完成一次数据交换过程6)当通信任务结束时,关闭TCP连接,使服务器可以为其他服务(以上转自=4JZgzDszuwXa4r4gh8MYqPwPYB13X5TmYz504-x96S46pg7el8USrNHXWoCvC-Zq7Tku7np-Br5gEwcRDZo1fKUnliSAXiatAHnDHtU6fGHP3PXRQ-IuGe8QOoKIiUE0Mvd__Z11hby0WmZGekkLDK)二、MCGS介绍打开MCGS,在MCGS里双击打开设备窗口;右键菜单,打开设备工具箱;点击设备管理双击通用TCP/IP父设备,添加到右侧栏中;然后双击MODBUSTCPIP数据转发设备,添加到右侧栏中;然后点击确定,回到设备窗口;双击添加通用TCP/IP父设备在通用TCP/IP父设备下添加MODBUSTCPIP数据转发设备双击通用TCP/IP父设备进行设置网络类型选TCP,服务器/客户设置选服务器,本地IP即触屏的IP,本地端口号不小于3000,远程IP即工控机IP。本地IP和远程IP必须在同一网关内。触屏开机时用指甲按住屏幕,进入系统设置,点击系统维护—设置系统参数—IP地址,填写IP地址,此IP应与通用TCPIP父设备的本地IP一致。在子设备ModbusTCPIP数据转发设备中,打开设置设备内部属性;弹出ModbusTCPIP数据转发设备通道属性设置窗口;在弹出的窗口内,点击增加通道;转发开关量时,设备寄存器类型选[1区]输入继电器时,工控机只能读,选[0区]输出继电器时,工控机工控机可以读写;设备开始地址和连续通道的个数根据需求设置;点击确认,回到ModbusTCPIP数据转发设备通道属性设置窗口,点击确认;转发模拟量时,方法和与以上基本相同,但设备寄存器类型选[4区]输出寄存器,可设为读写,其他设置按需选取;建立完成;双击建立的变量,打开变量选择窗口;在窗口中选择要转发的变量,点击确认;创建完成,点击确认,然后保存。三、工控机设置打开工控机的本地连接—属性—Internet协议(TCP/IP)中设置,工控机有两个网口,对应两个网卡的本地连接,需对应正确。打开网络邻居,点击查看网络连接;双击打开本地连接;单击属性;在常规-此连接使用下列项目中找到Internet协议(TCP/IP),双击打开;在弹出的窗口中选择使用下面的IP地址;在IP地址输入框内写入IP地址,并与MCGS的通用TCP/IP父设备的远程IP地址一致;点击确定。注意工控机有两个网卡,对应两个网口,设置的时候需对应正确。四、力控设置打开力控工程管理器新建一个工程,选中之后点击开发;双击IO设备组态,打开IOManger窗口;找到MODBUS-标准MODBUS-MODBUS(TCP),双击打开;设备名称酌情填写,通讯方式选TCP/IP方式;单击下一步,设备IP地址与与MCGS的通用TCP/IP父设备的本地IP地址一致;点击下一步,完成,关闭IOManger窗口;双击数据库组态,打开DbManger窗口;在数据库位置右键—新建,这里先连接开关量读取;选择数字I/O点,继续;在弹出的窗口中,点名酌情填写;点击数据连接,在左侧的框内选中PV,然后在连接项处点击添加;内存区选02号功能码(DI离散输入量)时,对应MCGS的1区输入继电器,只能读;选01和05号功能码(DO离散输出量)时,对应MCGS的0区输出继电器,可设为读写;偏置根据MCGS的变量地址填写,点击确定完成;模拟量的添加方法与上述方法基本相同,内存区选03号功能码(HR保存寄存器),对应MCGS的4区输出寄存器,数据格式与MCGS相应的变量相同,可设为读写,偏置和数据格式根据MCGS的相关变量填写,点击确定完成;至此设置完成。
本文标题:力控与MCGS以太网通讯方法
链接地址:https://www.777doc.com/doc-2611472 .html