由于操作过于频繁,请点击下方按钮进行验证!

工业以太网与Modbus TCP

 一 以太网的标准

  以太网是一种局域网。早期标准为IEEE 802.3,数据链路层使用CSMA/CD,10Mb/s速度物理层有:

(1)10 Base 5粗同轴电缆,RG-8,一段最长为500m;

(2)10 Base 2细同轴电缆,RG-58,一段最长为185m;

(3)10 Base T双绞线,UTP或STP,一段最长为100m。


  快速以太网为100Mb/s,标准为802.3a,介质为100 Base Tx双绞线、100 Base Fx光纤。

  目前10/100M以太网使用最为普遍,很多企事业用户已实现100M到以太网桌面,确实体验到高速“冲浪”的快感,另外从距离而言,非屏蔽双绞线(UTP)为100m,多模光纤可达2~3km,单模光纤可大于100km。千兆以太网1000Mb/s为802.3z/802.3ab,万兆以太网10Gb/s为802.3ae,将为新一轮以太网的发展带来新的机遇与冲击。

二 工业以太网与商用以太网的区别

  什么是工业以太网?技术上,它与IEEE802.3兼容,故从逻辑上可把商用网和工业网看成是一个以太网,而用户可根据现场情况,灵活装配自己的网络部件,但从工业环境的恶劣和抗干扰的要求,设计者希望采用市场上可找到的以太网芯片和媒介,兼顾考虑下述工业现场的特殊要求:首先要考虑高温、潮湿、振动;二是对工业抗电磁干扰和抗辐射有一定要求,如满足EN50081-2、EN50082-2标准,而办公室级别的产品未经这些工业标准测试,表1列出了一些常用工业标准。为改善抗干扰性和降低辐射,工业以太网产品多使用多层线路板或双面电路板,且外壳采用金属如铸铝屏蔽干扰;三是电源要求,因集线器、交换机、收发器多为有源部件,而现场电源的品质又较差,故常采用双路直流电或交流电为其供电,另外考虑方便安装,工业以太网产品多数使用DIN导轨或面板安装;四是通信介质选择,在办公室环境下多数配线使用UTP,而在工业环境下推荐用户使用STP(带屏蔽双绞线)和光纤。

三 TCP/IP

1. 为什么使用TCP/IP?

  最主要的一个原因在于它能使用在多种物理网络技术上,包括局域网和广域网技术。TCP/IP协议的成功很大程度上取决于它能适应几乎所有底层通信技术。

    20世纪80年代初,先在X.25上运行TCP/IP协议;而后又在一个拨号语音网络(如电话系统)上使用TCP/IP协议,又有TCP/IP在令牌环网上运行成功;最后又实现了TCP/IP远程分组无线网点与其他Internet网点间TCP/IP通信。所以TCP/IP协议极其灵活,具备连接不同网络的能力。

  另外,使用TCP/IP也简化了OSI模型,因为它省略了表示层和会话层。如果现在把以太网的物理层和数据链路层加到OSI模型就构成了基于以太网的TCP/IP网,如图1所示。用以太网实现TCP/IP也是经济的一种方式。


2. Internet Protocol(IP)

  IP是Internet最基本的协议,用户可从(暂不可见)下载RFC79来得到其文件,(要求评论RFC: Request For Comments:一系列备忘录的名称,包括概述、评价、意见、技术和研究,以及所提出的和被接受的互联网标准)。

  IP层主要目的是找到IP报文的“下一个连接点”,它可以是路由器、计算机、控制器甚至I/O,关键该设备须有自己的IP地址。凡在网络层使用IP协议的网络,都通过IP地址寻址,所以使用时首先要进行复杂的设置,每个节点至少需一个“IP地址”、一个“子网掩码”、一个“默认网点”和一个“主机名”,如此复杂的设置,对于一些初识网络的用户来说的确带来不便,不过随着对网络熟悉,有许多IP地址配置工具,可方便进行IP设置,甚至是自动设置。

  IP是面向报文的协议,它独立处理每个报文包,每个报文包必须含有完整的寻址信息。IP报文包的格式如图2所示。

  IP地址的类型共有4种(如图3所示):A类用于处理超大型网络,最多16387064个主机(1~126);B类网络最多可有64516个主机(网络地址的第一段为128~191);C类用于小型网络,最多可有254个主机(网络地址的第一段为192~223);D类用于多点播送,用于多目的信息的传输。全零(“0.0.0.0”)地址对应于当前主机,全1地址(“255.255.255.255”)是当前子网的广播地址。

3. Transmission Control Protocol (TCP)

  TCP是基于传输层的协议(如图4所示),协议文件可从RFC793得到,使用广泛,面向连接的可靠协议。它能把报文分解为数段,在目的站再重新装配这些段,支持重新发送未被收到的段,提供两台设备间的全双工连接,允许它们高效地交换大量数据。TCP使用滑动窗口协议来高效使用网络。由于TCP很少干预底层投递系统的工作,它适应各种投递系统;且提供流量控制,能使各种不同速率的系统进行通信。报文段是TCP所使用的基本传输单元,用于传输数据或控制信息。


4. TCP端口

  TCP是使用端口(Socket)号把信息传到上层,为用户提供不同服务,端口号跟踪同一时间内通过网络的不同会话。RFC1700中定义了众所周知的特殊端口号,常用端口如表2所列。其中502端口是自动化公司唯一所拥有的端口号码。


5. 协议(Protocal)的功能

  组建网络时,必须选择一种网络通信协议,使得用户之间能相互进行“交流”。协议是网络设备用来通信的一套规则,可理解为一种彼此都能听懂的公用语言。如在网络层使用IP协议,在传输层使用TCP协议,就构成了目前常用的TCP/IP协议,现在几乎所有厂商和操作系统都支持它。同时,TCP/IP也是Internet的基础协议。

         如在(如图5所示),就构成了完整工业以太网应用。

应用层使用工业上事实标准的Modbus协议

 四 开放和标准的Modbus TCP

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

  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所示。

MBAP报文头

3. Modbus功能代码

  共有3种类型分别为:

    (1)公共功能代码(如表4所示):已定义好的功能码,保证其唯一性,由(暂不可见)认可;

    (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)。

4. Modbus应用举例

读寄存器(见表5)。

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

Modbus TCP客户端的实况。

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

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

使用send()命令发送;

在同一连接等待应答;

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

Modbus TCP的样板程序

用户可通过网站(暂不可见)下载到:

JAVA的应用程序;

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

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

Modbus TCP协议

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



五 使用TCP/IP Modbus的原因

  1. TCP/IP已成为信息行业的事实标准:世界上93%的网络都使用TCP/IP,只要在应用层使用Modbus TCP,就可实现工业以太网数据交换;

  2. 易于与各种系统互连:可用于管理网、实时监控网及现场设备通信;

  1. 网络实施价格低廉:可全部使用通用网络部件;

  2. 用户强烈要求:目前中国已把Modbus TCP作为工业网络标准之一,用户可免费获得协议及样板程序,可在Unix、Linux、Windows下运行,不需要专门驱动程序。在国外,Modbus TCP被国际半导体业SEMI定为网络标准,国际水处理、电力系统也把它作为应用的事实标准,还有越来越多行业作为标准来用;

  1. 高速的数据:用户最关心的是所使用网络的传输能力,100M以太网的传输结果为:每秒4000个Modbus TCP报文,而每个报文可传输125个字(16bit),故相当于4000×125=500000个模拟量数据(8000000开关量!);

  1. 厂家能提供完整解决方案:工业以太网的接线元件,包括工业集成器、工业交换机、工业收发器、工业连接电缆。工业以太网服务器,包括远程、分布式I/O扫描功能,设备地址IP的设置功能,故障设备在线更换。功能,分组的信息发布与订阅功能,网络动态监视功能,还有支持瘦客户机的Web服务。其他工控设备的支持:如工业用人机界面、变频器、软起动器、电动机控制中心、以太网I/O、各种现场总线的网桥、甚至带TCP/IPModbus的传感器,都为用户使用提供了方便。


声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,不为其版权负责。如果您发现网站上所用视频、图片、文字如涉及作品版权问题,请第一时间告知,我们将根据您提供的证明材料确认版权并按国家标准支付稿酬或立即删除内容,以保证您的权益!联系电话:010-58612588 或 Email:editor@mmsonline.com.cn。

网友评论 匿名:

分享到