CA800首页 >> 技术文库 >> 技术指导 >> 开放和标准的Modbus/TCP
 
开放和标准的Modbus/TCP
2007-11-27 15:25:00 来源:作者: 网友评论 条 点击查看

  Modbus是开放协议,IANA(Internet Assigned Numbers Authority, 互联网编号分配管理机构)给Modbus协议赋予TCP端口502,Modbus协议可免费从www.Modbus.org得到。

  Modbus是标准协议,它已提交给IETF(Internet Engineering Task Force, 互联网工程任务部),将成为Internet标准。因自1978年,工业自动化行业已安装了百万计串口Modbus设备和十万计Modbus TCP/IP设备,拥有超过300个Modbus兼容设备厂商,还有90%的第三厂家I/O支持Modbus TCP/IP,所以是使用广泛的事实标准。Modbus的普及得益于使用门坎很低,无论用串口还是用以太网,硬件成本低廉,Modbus和Modbus TCP都可以免费得到,不需交任何费用,且在网上有很多免费资源,如C/C++、JAVA样板程序、ActiveX控件、各种测试工具等,所以用户使用很方便。另外,几乎可找到任何现场总线到Modbus TCP的网点,方便用户实现各种网络之间的互联。

1. Modbus TCP/IP

  如果使用TCP/IP以太网的5层:

第一层:物理层,提供设备的物理接口,与市售的介质/网络适配器相兼容;

第二层:数据链路层,格式化信号到源/目的硬件地址的数据帧;

第三层:网络层,实现带有32位IP地址的IP报文包;

第四层:传输层,实现可靠性连接、传输、查错、重发、端口服务、传输调度;

第五层:应用层,Modbus协议报文。

2. Modbus TCP数据帧

  在TCP/IP以太网上传输,支持Ethernet II和802.3两种帧格式。图6所示,Modbus TCP数据帧包含报文头、功能代码和数据3部分。


MBAP报文头(MBAP、Modbus Application Protocol、Modbus应用协议)分4个域,共7个字节,如表3所示。


3. Modbus功能代码

  共有3种类型分别为:

(1)公共功能代码(如表4所示):已定义好的功能码,保证其唯一性,由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,用于人机界面、监控系统的例行操作和数据传送功能:

  4. 强制多个线圈(fc.15);读通用寄存器(fc.20);写通用寄存器(fc.21);屏蔽写寄存器(fc.22);读写寄存器(fc.23)。

4. Modbus应用举例

  1.  

  2. 读寄存器(见表5)。

  3. Modbus TCP请求报文举例(见表6)。

  4. Modbus TCP客户端的实况。

    用Connect()命令建立目标设备TCP 502端口的连接数据通信的过程:

    1. 准备Modbus报文,包括7个字节的MBAP在内的请求;

    2. 使用send()命令发送;

    3. 在同一连接等待应答;

    4. 同recv()读报文,完成一次数据交换过程。
      当通信任务结束时,关闭TCP连接,使服务器可以为其他服务。

  5. Modbus TCP的样板程序

    用户可通过网站www.transparent-factory.com下载到:

    1. JAVA的应用程序;

    2. 基于Unix系统下,C的应用程序;

    3. 基于Win32系统下,C的应用程序。

  6. Modbus TCP协议

    协议文本的英文版可从www. Modbus.org下载,如需协议文本的中文版,可向施耐德电气(中国)投资有限公司各地区办事处索要。


本信息来源于网络,不代表本站观点[关闭][打印]
相关文章
·多线程技术解决开放式数控系统实时性能的应用设计2008-4-9
·DSX5-70三杆虚拟轴机床开放式数控系统2008-3-19
·开放式现场总线CC-Link综述2008-2-28
·基于PMAC的车床开放式数控系统2008-1-21
·基于智能运动控制器的开放式多轴联动数控系统2007-12-9
·开放式数控系统的状况及在超精密加工中的应用2007-10-30
·开放式运动控制器在数控滚齿机中的应用2007-8-16
·基于Trio的开放式多轴运动控制器系统2007-5-26
文章评论 已有位对此文章感兴趣的网友发表了看法 点击查看  
用户名: 密 码: 匿名(不用注册)
行业分类
电力能源 冶 金 石油化工
机械制造 纺织印染 水工业
造纸印刷 智能建筑 建 材
交 通 汽车制造 食品工业
包装工业 机 床 塑胶工业
医 药 物 流 安 防
环 保 烟草工业 电 梯
电子制造 电气机械 金 融
I T 通 信 其 他
热门文章
·PLC控制的加热炉温度控制系统
·可编程序控制器的电气图
·汽车发动机进气控制技术透视
·浅谈负载发电和变频制动的方式
·工业以太网与智能建筑
·PLC在变频调速的应用
·将变频器改成不间断电源的可行性及
·变频器产生的干扰及解决方案
·PLC、变频器在泵站恒压供水中应用
·IGBT高压大功率驱动和保护电路的应
热评文章
·自动化焊接技术在机床行业的应用
·炼油厂节电降耗新途径--页岩干馏装
·变频供水新概念---新型的可视化自动
·济钢燃气-蒸汽发电DCS电气系统设计
·缸体珩磨机床的电气改造
·“关于最佳循环控制的功率因数改善
·磁悬浮列车是怎样运行的?
·泓格WinCon8000在油库消防监控系统
·电气施工时常用的经验公式
·“铁老大”注入ERP力量