Ethernet通信

2024-09-02

Ethernet通信(精选6篇)

Ethernet通信 篇1

摘要:介绍基于Ethernet/IP通讯的智能MCC网络控制系统,并应用于某实际工程项目,取得了良好效果。

关键词:马达控制心,电机保护器,工业以太网,网络拓扑结构,设备级环网

0 引言

随着科学技术的不断进步,工业领域对自动化控制水平的要求不断提高,电动机控制中心MCC也得到迅速发展,智能型MCC在逐步地得到推广应用。智能MCC是一种将设备网技术、通讯技术、控制网技术及交换机技术融入到传统的电动机控制中心,将MCC中各回路单元通过网络与控制单元进行数据通信的设备网层面的自动控制系统。

1 智能MCC

智能MCC配电系统的主回路配置和传统MCC配置方式基本一致。智能MCC一次回路由断路器、接触器、智能电机保护器组成,或者由断路器、变频器、软起动器等支持通信控制功能的驱动装置组成。电机保护器有E3Plus、E300、M102、3UF7等。智能MCC的核心元件是智能电机保护器,主要用于对电机运行的控制,对接触器合、分闸控制,以及对电机运行状态和运行数据进行采集。智能MCC的电机保护器取代了传统的热继电器,简化了控制回路,对于电机的保护有着更大的优势。此外,智能MCC还能提供全面的管理诊断信息,使系统的电气设备状态数据透明化,实现自动采集和分析,并提供各类报表;可对能源消耗情况进行测量、统计、分析,为电能消耗和成本结构优化提供依据;可为电气人员提供详细、明确的电气设备运行状况,使电气管理维护人员通过设备运行的数据进行有计划的设备维护和检修工作,大大地提高设备的有效运行率,提高维护人员的工作效率,节约备品备件及保养维护费用,降低备件库存及资金占用。

智能MCC自动化控制系统融入的设备网网络具有网络化、系统化、可扩展、开放式的特点,是一种简单高效的网络解决方案。智能电动机保护器、智能电动机控制器、拖动装置、PLC等不同产品均可接驳在设备网上进入系统。其在提供多供货商同类部件间的可互换性的同时,允许用户通过单根通讯电缆连接和控制100个以上产品,不仅节省了大量I/O盘柜,还可以节省大量的控制电缆,减少了配线和安装工业自动化设备的成本和时间。设备网网络的直接互连性不仅改善了设备间的通信,而且提供了相当重要的设备级诊断功能;它具有“看到内部”和监控每台电动机的能力,如果电动机脱扣,则智能MCC指示脱扣的原因。

2 Ethernet/IP网络结构

Ether Net/IP是适合工业环境应用的协议体系。它是一种是面向对象的协议,能够保证网络上隐式的实时I/0信息和显式信息(用于组态参数设置、诊断等)的有效传输。

Ether Net/IP模型由IEEE802.3标准的物理层和数据链路层、以太网TCP/IP协议和控制与信息协议CIP三部分组成。

Ether Net/IP网络最主要的拓扑结构有星形拓扑、总线型拓扑、环形拓扑,如图1所示。

3 设备级环网DLR

DLR是一种工业应用的网络技术,应用于自动化的嵌入式终端设备中,如I/O模块和可编程控制器,使以太网环网拓扑结构应用于设备级,而不同于常用网络或交换机级环形拓扑结构,使网络基础设施更加灵活。DLR技术增加了设备级网络的灵活性,优化设备运行。当DLR监测到环网被破坏,能提供备用的路由数据,迅速修复网络。DLR内置的诊断功能可以快速诊断故障点,缩短维修的平均时间。

DLR环网如图2所示,由活动监控节点、备用监控节点及普通节点构成一个环保网。DLR网络需要至少将一个节点配置为环网监控节点。当有多个节点被启用为监控节点时,优先级值最高的节点将成为活动环网监控节点;其他节点则自动变为备用监控节点。环网监控节点主要用来验证环网的完整性、重新配置环网,恢复单点故障及收集环网诊断信息。

环网正常运行时,活动监控节点的一个端口被阻塞,只转发DLR Beacon信标帧,不转发业务数据;环网节点设备两个端口接收并转发Beacon信标帧来检测网络是否有断点,如果监控节点在一个端口上接收到另一个端口的Beacon帧,说明环没有断点。

当有故障发生时,如图3所示,Beacon信标帧数据包不能在活动监控节点的两端收到;活动监控节点打开被阻塞的端口,拆除原来的断点,将当前的网络结构设置为两个线形拓扑结构;同时DLR协议的节点会检测到物理层故障,故障两端的节点会发送状态信息,并一步发送到管理者中;活动监控节点通过收到的状态信息,可以很容易确定故障发生的位置;当故障恢复以后,活动监控节点在其两个端口上都侦听到Beacon帧,系统会自动转换为环网模式。

此外,非DLR设备也可以接入到DLR环网里,为了保证环网恢复时间,最好使用DLR TAP连接器来接入非DLR设备。

4 基于Ethernet/IP的智能MCC的设计

在某新建项目中,通过对比智能MCC电气系统与传统MCC系统的投资费用,认为智能MCC系统不仅能节省控制电缆、控制电缆桥架材料费和安装调试人工费,还可以实现生产工艺能源管理,遂决定采用智能MCC电气系统。

智能MCC网络控制系统如图4所示。采用Rockwell的Center Line2500系列智能MCC。在柜内每个回路单元分别安装有E3plus和E300智能电机控制器、Power FLEX753变频器和SMC软起动器等具有以太网通讯网卡的驱动设备,在柜顶安装有支持DLR环网功能的Stratix5700交换机。每个智能设备与5700交换机组成星形柜内网络。每排MCC柜顶的交换机组成一个DLR环网,最终与PLC控制系统相连。

PLC控制系统由具有冗余电源的RA Control Logix 1756-L72控制器,EN2T、EN2TR通讯模块,ETAP通讯连接器和Stratix5700&8300交换机等装置组成。EN2T主要用来与交换机和DCS通讯,不同的EN2TR主要用来与不同的DLR环网设备通讯。PLC作为智能MCC控制系统核心控制器,负责采集每个MCC回路单元的数据信息和开关量信息,并将这些信息发送给DCS系统,同时接收DCS发送的控制指令,并将这些指令发送到每个回路单元,控制电机的启停。三层管理型交换机Stratix8300可以将PLC控制系统与以太网系统互连,从而实现远程测控与远程维护。

为了网络流量的管理方便和使网络更易于维护,单个DLR网络中节点不宜超过50个。如果应用需要使用超过50个节点,则最好将节点分隔成多个独立的,相互链接在一起的DLR网络。同时,为了防止网络风暴影响网络传输速度,可以在交换端口将不同的环网设置成不同的VLAN地址。

5 结语

工业以太网Ether Net/IP的引入,使马达控制中心得以智能化、网络化,使MCC接线和维护更加简单、方便,同时大大减少了控制硬件和电缆数量,使总体成本降低。

参考文献

[1]袁礼.计算机网络原理与应用[M].北京:清华大学出版社,2011

[2]徐明成.计算机网络原理与应用技术[M].北京:电子工业出版社,2009

[3]赵宏.以太网交换机技术[J].辽宁大学学报,2002,(02):182-186

[4]陈维刚.基于CIP协议的Ethernet/IP工业以太网节点设计[J].测控技术,2004,23(06)

[5]李武杰.Ethernet/IP工业以太网研究及应用[J].电子设计工程,2011,19(09)

[6]张立众.Ether Net/IP节点的设计[J].化工自动化及仪表,2010,37(03):100-102

Ethernet通信 篇2

关键词:EtherNet/IP,PLC,硬件再分配,ENBT模块,处理器通信

中国石油克拉玛依石化公司原有一套炼化装置生产回水处理装置A,后需新增一套除油装置B,两套水处理系统均以Rockwell PLC为控制核心,并通过1756-ENBT模块连接到同网段的以太网。在B装置建设中发现其部分现场设备距离A装置控制柜很近,而距离B控制柜较远,从B控制柜到新建设备的桥架敷设难度较大。经相关技术人员分析后,决定通过硬件组态将安装在A装置机架上的模块组态到B装置,将该模块的控制权归属于B,从而避免昂贵的硬件接线费用。由于两套装 置的部分 数据需要 共享,因此采用RSLogix 5000的Produced / Consumed标签功能加以实现。

1控制系统网络结构

改造后,整个水处理装置的控制系统为开放性网络,系统分为设备层、控制层和信息层,如图1所示。A装置控制网通过本地节点的CNB模块与远程节点连接,传输介质为同轴电缆。利用Control Net网络实现远程I / O控制与管理。A装置含两类远程节点,其中FLEX I/O系统通过Control Net适配器连接到Control Net网络,FLEX I / O模块不具备直接通信功能,无法利用EtherNet / IP网络组态到B装置。本地节点和另一远程节点上的每一个模块都具备单独的通信功能, 可以通过硬件组态将A装置的对应模块组态到B装置。信息层主要通过ENBT模块连接到交换机,实现处理器和本地节点模块与同网段中其他节点的通信,其他节点包括上位机、同网段处理器、本地节点模块和其他智能设备。两套装置通过上层交换机组网。

2 PLC硬件重分配

硬件重新分配要求两套PLC控制器必须在同一网段,利用RSLinx软件通过新建一个EtherNet / IP驱动,可以自动获取这两套控制器的硬件分布、IP及硬件版本等信息,如图2所示。若不在同一网段将无法在同一驱动连接下获取该信息[1,2]。

RSLinx扫描到的硬件信息与RSLogix 5000的硬件组态无关,仅与网络中实际模块的位置和模块自身的信息有关。改造中将A装置2#槽DO输出模块OB16D组态到B装置,OB16D模块安装在A装置机架上。但由于B装置拥有实际控制权,A不具有控制权,因此在A组态中2#槽不组态。

如图3所示,B装置中在5#槽添加其自身以太网模块B_ENBT,同时添加与之通信的A装置的以太网通信模块A_ENBT,要将OB16D模块添加到B的硬件中需采用RSNet Worx for Ether NetIP工具对B的硬件组态进行结构优化,然后在B的A_ENBT下添加OB16D。添加方法与本地模块相同,槽号为2,模块版本信息参考RSLinx,如图4所示。此时在B工程的Controller Tags中会自动生成OB16D对应的标签信息,如输出标签名为B_ENB: 2: O,在B的逻辑组态中可直接引用。 由于B的硬件组态中需添加A的模块,因此B的RSLogix软件版本不能低于A的版本,否则无法完成对应模块的添加。

3数据共享

B为新增装置,其生成运行需获取A装置的部分数据,笔者采用Rockwell的Produce /Consumed标签实现数据共享。在A的Controller Tags中新建全局变量标签,数据类型选择为Produced, 并设置Connection的链接个数,本例中设置为3, 需要注意的是: 该数值不得少于接收者个数。A控制器以广播形式发送对应的Produced型标签数据。作为接收方,B必须建立与之对应的标签, 用于接收A发送的数据,如图5所示,B新建标签选择数据类型为Consumed,Connection中设置数据源提供者和对应的变量名。

A以广播方式发送数据,而B接收数据需建立相应的链路。数据的发送与接收是基于以太网的,因此在B的ENB模块首先需添加A的ENB模块,建立以太网通信; 其次接收数据由硬件A_ CPU提供,链路需指定到对应的硬件设备。其中, B通信数据的硬件组态如图6所示。设置完成后指定数据标签将按照设定的RPI时间进行刷新。

4结束语

Ethernet通信 篇3

1 ETHERNET/IP

ControlNe t是一种确定性的串行通信系统, 它的协议模型同七层的ISO OSI模型相似, 采用了从物理层到应用层分层方式。ControlNe t2.0版本引入了数据包的TCP/IP封装, 而代替了基于以太网的物理层和数据链路层, 最终形成“基于以太网的ControlNet”, 称为Ethe rNe t/IP。

2 CONTROLLOGIX的以太网接口

ControlLogix系列PLC使用ControlNe t总线来联接本地I/O板卡作为平台, 1756-ENET以太网模块支持EtherNet/IP。只要遵循Ethe rNe t/IP协议, 我们就可以使用Se ndRRData等封装命令, 发送CIP消息:

CIP对象模型同样包括“模拟输入点” (0x0A) 和“离散输入组” (0x1D) 对象。

3 设计方案

因为ControlNet连接信息的优势不能在EtherNet/IP上体现, 这时就可以使用无关联信息:以太网不预留带宽;通过TCP协议来保证传输。对于CIP_Read_Data请求, 比起关联信息, 无关联信息有效地压缩了信息, 并且在传输中提高了3%的速率。而缺点是, 客户端应用程序必须在建立更新连接时发送请求, 或者更快。以太网的延迟将导致PLC断开连接。

ControlLogix多请求服务 (0x0A) 是用作合并CIP_Re ad/Write_Data请求, 即当总请求或期望的请求值的大小到达PLC的缓冲极限的时候使用。

4 EPICS技术支持的实施

EPICS设备的输入和输出驱动支持:模拟量, 二进制数和多位记录类型。当使用单个数组元素或结构体元素, 以及并非数组或结构体的全部时, 标签名就必须使用标量值。可以处理的PLC数据类型包括BOOL, SINT, INT, DINT和REAL。也可以在运行时改变记录的配置, 这些是不需要重新起动输入输出控制器的, 即所涉及的标签的名字记录能实时替换。当发生通信错误或超时, 驱动将默认断开PLC连接并尝试再次连接。

数组元素进入数组时, 驱动默认要求传输顺序是从第一个元素到请求最高的元素。这样就决定了传送时间会大量减少, 但可能会产生其他作用:每当输出改变的记录超过一个元素时, 输入输出控制器总将重写整个数组。因为持续传输, 同样的PLC数组被其它数据来源也修改了, 输入输出控制器对这些变动忽略而重写它们数组传输同样是受到上述PLC缓冲极限和大小限制的。针对这些情况, 记录配置允许个别的数组元素传输到工作区。

对于输出记录, 每当记录被处理时, 驱动都将发送一个CIP_Write_Data消息。否则它将周期性地从PLC上读取标签, 并且当记录内容不同时, 在PLC上将不断更新输出记录值。驱动为各扫瞄列表保留统计信息 (错误计数, 最新/最小/最大传送时间) 。模拟输入记录能够得到这些值。

5 研究成果

使用MVME2100CPU与100base T网络接口通过一个双倍速集线器连接到一个10base TPLC。网络使用率一般在2%以下。若是传输标量REAL, BOOL或DINT, 以及一组15个REAL或352个BOOL值, 速度是平均11毫秒传输一个单个的标签。

而当使用普通设置时, 输入输出控制器配置了352个二进制的输入记录, 以10Hz扫描一个BOOL数组的元素。而120个模拟输入记录, 以2Hz扫描的三个元素为40个REAL的数组。整个BOOL数组传输时间平均是在15ms内, 所有REAL的数组传输了25ms。

对于这些测量值, PLC的系统上限的时间设置到了10%。在增加到50%以后同时连接CPU和PLC到网络交换器, 单个标签的平均时间减少到了7ms。

6 结论

EPICS使用起来很方便。在系统运行时也可以随意改变记录配置, 传输中由PLC缓冲极限的限制从而自动地决定是否合并。根据以太网的本身特性, 传送速率会随时间自动变化。交换网络拓扑结构也使网络的不确定性减到了最小。为了达到所需的输出值, 也可以将值放在数组里。这样保证了梯形逻辑图的可读性, 传输数组元素时, 标签名字尽量使用可理解的而非无意义的名称。测试的1756-ENET模块版本不支持隐性信息。理想的输入输出控制器能读取标签并且能接受随时变动的异步通知或周期性更新, 没有不确定性。对于目前的实施水平, 已经可以在EPICS环境下成功的使用ControlLogix综合系统。

参考文献

[1]田淑珍.可编程控制器原理及应用[M].北京:机械工业出版社, 2005.

Ethernet通信 篇4

以太网具有传输速度高、兼容性好和应用广泛等优势,支持几乎所有流行的网络协议,支持基于异种操作系统的异种网络间的互联,这使得工控领域中的通信问题得到了解决,故而逐渐进入控制领域,使得新型的以太网控制网络技术形成,即工业以太网技术。

控制网络国际组织CI和开放式设备供货商协会ODVA开发的工业以太网EtherNet/IP,由于采用了EtherNet和TCP/IP技术,还引入了通用工业协议CIP,因而具有广泛的优越性。

1)它为网络设备提供了良好的一致性规范,解决了设备间的互操作问题;

2)较为容易集成到Internet/Intranet;所有供应商都可自主地选择以太网芯片及开发平台;

3)CIP的应用得到广泛的支持;且仅用一种配置工具就可完成不同网络上设备的配置;

4)最新技术体现在同步技术和安全技术方面的新进展。

目前,EtherNet/IP已经成为国际标准,在世界上也已得到数以百计的厂商支持,国际上ODVA、CI、IAONA和IEA,也一直在进行有关的技术开发。相应开发工具可以从www.odva.org和www.controlnet.org中获得。为了加快它的推广,ODVA还提供了免费的开发软件包。

1 EtherNet/IP协议分析

EtherNet/IP是适合工业环境应用的协议体系,由通用工业协议CIP加上已经被广泛使用的EtherNet和TCP/IP协议构成。与DeviceNet、ControlNet网络具有统一的应用层、应用对象库和设备描述,具有较好的一致性。不同的是它在物理层和数据链路层采用EtherNet技术,传输层和网络层采用TCP(UDP)/IP技术。

1.1 EtherNet/IP对象模型

EtherNet/IP对象模型是用来抽象描述可供使用的一系列通信服务、节点的外部特性和产品获得及交换信息的通用方法。如图1所示,每个设备必须包括的对象有连接对象、标识对象、同网络连接相关的对象和信息路由对象。如组合对象等,可根据实际的应用来选择加入。

从图1看出,采用未连接报文管理器和连接管理器来处理网络上的信息。在通信之前,先用未连接报文管理器为尚未连接的设备建立连接;每个连接被建立时,就被赋予一个连接ID;一旦连接成功,设备所需的全部通讯资源都将被保留;连接建立之后,再区分显式和隐式通信来接收和发送报文。

1.2 CIP通信原理及主要传输方式

EtherNet/IP采用了生产者/消费者的通信模式代替传统的源/目的通信模式来交换对时间要求苛刻的数据。CIP连接可分为I/O连接和显性报文连接。

I/O连接通过专用的特殊通讯路径或端口,在生产者应用对象和多个消费者应用对象之间建立连接。它专门用来传输I/O数据,如图2所示。

显式报文连接用于两个设备之间的普通信息传输,可以使用多用途的通讯路径。使用典型的请求/应答网络通讯模式,一般用来上下载程序、设备信息、组态信息等,如图3所示。

EtherNet/IP中现有如下3种主要传输类型:

1)UCMM,即基于无连接的报文传输。由客户端和服务器端组成,客户端可同时向多个服务器端发起多次请求/响应,反之亦然。

2)1类传输,即基于连接的实时数据传输。由生产者和消费者组成,它允许连接的双方可以分别同时发送和接收数据,且可重复进行。

3)3类传输,即基于连接的报文传输。与UCMM传输方式类似,但它适合于以定时方式进行的事件类触发数据的传输,传输效率较高。

2 EDS相关技术

EDS文件规范是CIP协议定义,对于DeviceNet、ControlNet、EtherNet/IP等网络都是适用的。它按章节进行组织,依次分为条目、数据区等,除文件和设备说明是必需的章节外,其余部分可视情况选择。

文件说明,主要提供文件的创建、修改时间等相关信息。

设备说明,主要提供供应商名称、设备类型、产品代码版本等设备的相关信息。

参数类,用来标识被EDS描述的配置参数的同一类属性;包含被CIP对象库定义的参数对象类属性的子集。

参数,标识所有的配置参数。如配置参数1链接到设备中定义的参数对象(0x0F)实例1的参数值属性(属性1)。示例如下:

参数组,用来标识设备中的所有参数组,每个参数组包含一系列的参数对象实例。

连接特性,包含有关设备支持的应用连接类型号。

设备分类、端口,描述设备具有哪种网络接口(DeviceNet、ControlNet、EtherNet/IP)以及相应的端口(DeviceNet、ControlNet、TCP)等。

组合部分,主要通过描述、成员数据长度和成员数据参考等数据区实现复杂数据结构定义。示例如下:Assem5链接到设备中组合对象(0x04)实例5的数据属性(属性3)。

EDS文件对于设备制造商、系统集成商和最终用户都是比较重要的一个部分。ODVA和CI提供免费软件EZ-EDS(http://www.odva.org),及友好界面帮助制造商生成EDS文件。

3 EtherNet/IP协议的数据封装

EtherNet/IP规范为CIP协议提供承载服务,在发送CIP数据包之前必须对其进行封装。Ethernet/IP协议的报文封装,如图4所示。所有封装好的信息,是通过TCP(UDP)端口0XAF12来传送的,也适合于其他支持TCP/IP的网络。

CIP报文封装的数据格式,如表1所示,其字段允许CIP数据能通过TCP或UDP传送并确保在接收方解码。下面以向对方的UCMM发送建立显性连接的请求报文为例来说明。

报文(16进制)表示:6F00 3E00 0000 0220 00000000 0000 0000 0000 0000 0000 0000 0000 0000 00040200 0000 0000 B200 2E00 5402 2006 2401 0AF0 00000000 0000 0180 ABCD 0100 9876 5432 0700 00004082 1F00 FB42 4082 1F00 FB42 A302 2002 2401。

前两字节为发送RRData的命令字0x006F(注意高位低位存放顺序)。数据长度为0x3E=62字节,CIP报文总长度为62+24(报文头长度)=86字节。

接下来为RRData命令相关数据。Interface Handle=0x00000000。Time out=0x0400。Item Count=0x0002,表明下面有两项:地址项Addr Item ID=0x0000,Addr Len=0x0000;数据项Data Item ID=0x00B2,DataLen=0x2E=46字节。后面是CIP数据内容。

将CIP报文封装正确,通过套接字接口发送到网络的其他节点,实现数据通讯。

4 EtherNet/IP的应用前景

工业以太网已经成为控制系统网络发展的主要方向,具有广阔的发展前景。EtherNet/IP作为国际标准的工业以太网技术,已经成为IEC61158和IEC61784的组成部分;将以更低的系统总体拥有成本、更全面的功能实现工业自动化和IT集成,完成对未来的承诺。

总之,EtherNet/IP网络作为一个完全开放的优良的工业以太网技术,将使它更快地在世界范围内得以推广,其巨大的发展潜力必将使应用领域不断的得到扩展。

参考文献

[1]http://www.odva.org.

[2]陈卫民,谢楠.基于ARM的工业以太网智能网关研制[J].微计算机信息,2008,5.

[3]颉新春,等.基于令牌总线和工业以太网的控制系统[J].自动化仪表,2008,1.

[4]胡凌燕,等.交换式工业以太网实时性实验研究[J].微计算机信息,2008,15.

[5]陈廷炯,等.工业以太网协议[J].软件,2008,9.

Ethernet通信 篇5

Ethernet已经成为局域网的事实标准, 它在局域网市场上的占有率超过90%。随着计算机价格的下降, 组建并运行局域网不是一件非常难的事情。然而, 在网络教学中, 如何去体会和理解局域网中协议的运行机理不是一件容易的事情。

网络仿真是一种使用软件模拟实际网络的运行, 跟踪记录网络运行过程中的各种参数, 对不同类型的数据进行分析, 得出网络性能的评估结果的方法。网络仿真工具多种多样, 其中应用较为广泛的是NS2[1] (Simulation Networkversion2) 。

NS2仿真原理

1.NS2的特点: (1) 采用面型对象、离散事件驱动的仿真方法, 便于对实际网络建模, 仿真效率高, 系统易于扩展。 (2) 采用两种语言即C++和Otcl, 兼顾仿真效率和系统建模的灵活性。可以使用Otcl进行仿真场景配置, 采用C++编写网络组件扩充系统的仿真能力。 (3) 支持802.3Mac协议;可生成指定的业务流;支持链路失败、出错处理。 (4) 仿真结果使用NAM进行动态显示。

2.Ethernet仿真原理

LAN连接实现网络协议栈中低三层的功能:逻辑链路层 (LL) 、介质访问控制层 (MAC) 、物理层。

物理层有两个仿真对象:Channel和Classifier/Mac。Channel仿真共享介质, 并在发送过程中支持MAC对象的介质访问机制;接收时, Classifier/Mac负责将复制包传送给接收的MAC对象。

MAC依赖物理层的功能完成载波侦听、冲突检测和冲突避免等功能, CSMA/CD的所有功能都在MAC对象中实现。

链路层实现排队和地址解析。Queue实现发送队列机制, LL对象实现地址解析。

每个局域网中有一个默认的Lan Router对象, 该对象在局域网初始化时被创建。对于LAN上的每一个节点, 链路层对象 (LL) 有一个指向Lan Router的指针, 它能为局域网上发送的每个包找到目的节点[2]。

Ethernet仿真实现与分析

根据NS2仿真所使用的语言, 仿真分为解释层和编译层。解释层用来配置仿真场景及参数;编译层用来实现仿真元素, 如物理层、链路层、MAC协议等。

1.配置网络场景

图1构架了一个总线型的以太网, 总线上共有0-7号站点, 总线带宽为10Mb, 延时为30ms, 0号节点为发送者, 6号节点为接收者。在二者进行通信的过程中, 分别设定延时为15ms、20ms、25ms、30ms、35ms、40ms时, 改变其带宽, 分别为2Mb、4Mb、6Mb、8Mb、10Mb、12Mb、14Mb, 来分析时延、带宽与吞吐量之间的关系。仿真时间4.5秒。

2.仿真结果分析

仿真结果以两种形式给出, 一种是使用NS提供的动画软件NAM, 可以动态地演示局域网通信的整个过程。

由于LAN只实现了OSI参考模型的低三层功能, 缺少传输层和应用层。在仿真LAN时, 为了仿真数据包在LAN中的传送过程, 仿真实例中加入了9号节点, 它具有传输层功能, 作为0号节点和6号节点通信时的数据源。

第二种仿真结果是以trace文件形式给出。

仿真结束后, 使用grep和gawk数据处理工具对trace文件中的数据进行处理, 得到网络吞吐量随时延和带宽的变化情况如上图2所示。

从图2可以看出, 当总线上延时和带宽分别为10Mb、30m不变时, 0号给6号传送数据, 当设定延时不变时, 随着带宽的增大, 吞吐量会随之增加;但是当带宽的值增加到超过总线上总带宽时, 吞吐量保持不变;当设定带宽值不变时, 网络的吞吐量随着延迟的增加大而减小。

结论

NS2已经成为一个广泛应用的网络仿真工具, 其中集成了大量典型的有线、无线甚至卫星网络下各个层协议, 同时NS2研究者及用户又在对NS2进行不断的修改和完善。NS2的这种开放性, 使得NS2在教育和研究方面有着广泛的应用。

本文使用NS2仿真Ethernet网络的通信过程, 特别是使用NAM工具动态演示了Ethernet的通信原理。通过演示, 可以直观地看到网络协议的行为, 了解各种环境或者因素对网络带来的影响。为了进一步深入研究, 本文通过相关工具对仿真结果进行分析, 给出网络吞吐量与时延、带宽之间的关系。研究的步骤和结果对于仿真技术在网络课程教学中的应用具有一定的借鉴作用。

摘要:本研究了使用NS2仿真Ethernet网络的原理和步骤, 设置LAN仿真场景, 并使用数据处理工具对结果进行分析。分析结果给出网络带宽、延迟对网络吞吐量的影响。研究的步骤和结果对于仿真技术在网络课程教学中的应用具有一定的参考价值。

关键词:网络仿真,局域网,网络课程教学

参考文献

[1]徐雷鸣.NS2与网络模拟[M].北京:人民邮电出版社, 2006, 11.

Ethernet通信 篇6

电力线网络分布广泛,其接入的负载复杂多样并具有时变性,载波信道的阻抗匹配与否严重影响着电力线载波的可靠、实时传输[1]。在电网处于工作状态时,人们会测量电网载波信道的阻抗值,通过这些数据来优化载波信号,保障载波通信和抄表的质量。DZ3载波阻抗测试装置正是用于测量低压电力线的载波信道阻抗,它主要由主站和终端两部分组成。

主站通过向测试终端发送统一格式的报文指令来控制终端的具体操作。主站负责接收、存储终端测试所得的数据,并对终端上传的数据进行相关处理。终端依据自由坐标轴阻抗测试原理,可测量80 k Hz~500 k Hz量程范围内的低压电力线载波信道阻抗的模值和相位[2,3]。每个终端都配有一个独一无二的ID号。当终端与主站连接成功时,主站管理软件的界面上会显示出在线终端设备的ID号,通过选中ID号来对相应的终端设备发送指令。使用主站管理软件设置测试频点、测量时间间隔等参数,终端可自动完成单一频点或是多个频点的载波阻抗测量,并保存测量数据。

通过主站设置相应的参数可使终端实现阻抗的自动化测试,主站与终端之间有三种通信方式:USB、GPRS及以太网通信方式,从而使阻抗测试更加方便。使用一根USB连接线直接把计算机与终端相连,主站便可读取终端中的测量数据,并向终端发送指令,但电脑的USB接口有限,一台PC机不能同时控制多台终端,且USB连接线长度有限只能近距离测试[4,5]。也可采用GPRS的通信方式,在终端的GPRS模块中安上客户识别模块SIM卡(Subscriber Identity Module),主站的通信设置项选择GPRS通信即可控制终端运行,但这种方式费用较高[2]。为了降低测试费用并实现对不同地点的多台终端的同时监控,新增了以太网的通信方式。以太网可封装任何协议的数据,具有标准化成熟、灵活性好、成本低、易于使用等优势,选用以太网通信方式,主站可同时监控在同一局域网内的多台终端设备[6,7]。

2 DZ3载波阻抗测试终端以太网通信方式调测

DZ3载波阻抗测试终端原有USB与GPRS两种通信方式,现在又添加了以太网的通信方式[8]。其实质是在终端硬件原有基础上增加了一个以太网转串口模块,并在终端的软件部分进行了串口接收数据的相关修改。该模块给每台终端设备都设置了一个IP号,可自动侦测10/100 Mb/s的网络环境,实现TCP/IP到TTL间的数据转换。为确保使用新的通信方式时,终端与主站间能正常地进行命令与数据的传输,且不影响其他所有模块正常工作,需要在使用前对其进行相应的测试。

2.1 终端部分程序的修改

以太网数据收发方式除04命令(主站向终端发送要求上传ID号的命令)外,其他所有命令与USB通信方式相同,数据处理方式也与USB一致,程序都进入USB_Poll()函数进行命令的处理,只是测量数据包的发送方式不同于USB,采用的是串口发送,再经串口转以太网接口模块,最后由以太网上传至主站。因此,终端的程序需增加判断终端连接上线的函数,并在串口接收数据及部分命令处理程序中进行修改。具体执行步骤如下:

(1)修改串口0接收中断函数void Int Uart0Rx(void)interrupt 4。原程序负责接收主站发送给终端的所有命令,将接收到的命令存入临时缓存中,再调用接收串比较函数来判定接收的命令标置位。现在程序中增加了以太网连接方式标记位,用于处理以太网连接方式的数据,再依据命令的第二位(命令的第二位数字表示当前接收命令的长度)来截取测试所需的有效位数。

(2)修改接收串比较函数GPRS_Rec String_Comp(Uart0_Re_buf)。该函数原用于比较GPRS通信方式时接收到的字符串,以便相应标志位的设置。现在终端新增了以太网与串口接口转换的通信模块,当终端与主站都上线并处于同一局域网时,为确认终端设备是否已经与主站连接成功,主站会向终端发送04命令,即ID号上传请求命令。此时,若终端已连接上线,终端的串口中断接收函数可接收到04命令,然后进入接收串比较函数。比较函数把接收到的命令与程序中记录的正确命令相比较,若接收的命令完全正确,终端会立即把ID号回复给主站,并把以太网通信方式标记位设置为1,表示终端与主站连接成功。否则表示终端与主站连接失败,主站无法使用以太网的方式向终端发送命令及接收终端上传的数据。

(3)修改void USB_Poll(unsigned char*n)函数。该函数原是USB通信方式的命令处理函数,由于以太网通信方式的命令处理同USB一致(04命令除外),只有处理后的数据包发送方法不同,因此,在原函数中调用了串口发送程序。当以太网通信方式标记位的值为1时,终端的数据包采用串口发送至串口转以太网模块,经以太网传至主站。

2.2 终端以太网通信方式的命令收发测试

测前需先确定DZ3载波阻抗测试终端的硬件无故障,程序修改完编译无错误后即可载入芯片中开始具体的测试。测试方法是先使用网络调试助手发指令给终端,若终端能辨识出接收的指令正确与否,同时正确回复所有接收正确的指令,则表示终端软、硬件均无误,可与主站连接正常工作。终端回复的数据包中数据格式多样,有些为十六进制数据,有些则为BCD码,还有些为WORD型数据。

主要测试的几条常用指令如下:

(1)ID号的上传

主站开机,若选择以太网通信方式,主站向终端发送“04 04 FF 00”命令,要求终端上传ID号,终端中断接收函数(void Int Uart0Rx(void)interrupt 4,串口0接收中断函数)接到04命令后,进入GPRS_Rec String_Comp函数,对接收到的串比较,判断接收到的串中与04命令匹配后,对相应的标志置位设置为1,表示终端连接上网络了。又返回中断接收函数。后进入USB_Poll()函数,若Comcode=0x04,用串口发送ID给主站。具体测试如下:

主站发:04 04 FF 00

终端回复:相应终端设备的ID号,如84 00 00 0C0C 05 00 01 03 03 80 00。

终端回复的数据串表示接收数据的长度为12位(终端回复主站的命令的第3位与第4位表示报文长度,000C是十六进制数据,转为十进制数值为12),该测试终端的ID号的流水号为:000133。

若终端无回复,则需先检查网络调试助手与终端是否已建立连接,确定连接后,逐步调试程序,查看程序的串口接收函数中有无指令接收到,如此逐步查询直至找到具体故障点。若终端回复的位数不对或是回复的数据有误,则需先查看接收到的指令是否正确,若正确则进入相应指令的数据处理函数,辨别是终端数据处理不当还是数据包发送时发生了掉包故障,亦或是主站接收程序的故障。

(2)状态读回

主站发要求读回当前测试状态的08命令给终端,终端接收到命令,进入USB_Poll()函数,先解析命令,得知是08命令后(即Comcode=0x08),进入08命令的处理程序,数据处理后需上传给主站的数据包使用串口发送给主站。测试如下:

主站发:08 04 F3 00

终端回复:终端设备的当前具体状态,如88 00 0012 05 02 A0 8C 20 11 07 07 17 16 34 19 55 00。

从接收数据串的第3位和第4位可知主站接收到的这串数据长度为18位(00 12十进制为18),05表示测试的组间时间间隔为5 min,02表示频点时间间隔为2 min,当前测试频点为110 k Hz(A08C十进制为41 100,41 100-40 000=1100,1 100/10=110),20 11 07 07 17 1634 19则表示当前的时间状态:2011年、周六、7月、17日、16时、34分、19秒。

其他所有指令的发送与接收都是在确定ID号上传正确后才可进行,此时可确定串口的收发程序无误,直接调测命令解析与数据处理部分的程序。

(3)阻抗实时测量

主站发03命令给终端,终端接收到命令,进入USB_Poll()函数,解析得知是03命令后(即Comcode=0x03),进入03命令的处理程序,在实时测量结束后,把测量所得的数据通过串口发送当前状态给主站。阻抗实时测量的测试过程如下:

主站发:03 04 F8 00

终端回复:终端当前测量的频率点、阻抗模值及相位等数据。如83 00 00 21 11 07 15 2B 5C 16 09 0031 FF F8 52 6C 16 09 00 66 FF FD 79 7C 16 09 00CC FF FD 91 00。

终端答复主站的这串数据的长度为33位(00 21十进制为33),11 07 15表示11年7月15日,2B 5C表示测试频率点为110(2B 5C十进制为11 100,11 100-10 000=1 100,1 100/10=110),16 09表示16时9分,阻抗模值为20.4(00 CC十进制为204,204/10=20.4),FF FD分别为相位高低位的计算参数,91为校验位,00表示最后的结束符。终端实时测量的具体回复数据会依据当前主站设置测量的参数值而变化。

若终端回复的数据与主站设置的参数不一致,需要查看03命令的解析程序解析结果是否正确,若命令解析无误则应逐步调试阻抗测量部分的程序,观察几条关键程序执行后得到的结果与理论值是否相近。

(4)读终端上报数据

当测试人员想查看前一天的测试数据时,测试人员可登入主站管理软件,用主站发02命令给终端,02命令可使终端把所有的测试数据上传给主站。终端接收到命令,进入USB_Poll()函数,解析得知是02命令后(即Comcode=0x02),进入02命令处理的那段程序,除中间的7次循环发送0这一点上存在区别(以太网通信方式不发而USB发)外,其他数据都由串口发送给主站。02命令的回复数据包含了前一天或是前几天的测试数据(DZ3阻抗测试终端最多可记忆8天的测量数据),因此其回复的数据包长度是所有报文指令中最长的。具体测试结果如下:

主站发:02 04 F9 00

终端回复:终端内存储的所有阻抗测量数据。如8200 00 27 12 04 05 31 9C 00 01 09 00 00 CB FF FC58 AC 00 01 09 00 02 0A FF FB 7F BC 00 01 09 0005 ED FF FC F4 00,具体回复的数据依据终端测量所得的数据而定。

终端回复的82报文内容可分为三部分:数据头、数据段及结束段。数据头含命令类型、回复命令的状态、数据包的长度及时间四点。如上面回复报文中的前几位82 00 00 27 12 04 05表示终端回复的是82命令,00表示命令状态正常,00 27说明数据包长度为39位,发送时间为12年4月5日。数据段由多个阻抗测试数据块组成,解析数据块可得知测试的频率点、此频率点下测试所得的数据长度、测试该点的时间、测得的阻抗模值及相位。例子中的第一个数据块31 9C 00 01 09 0000 CB FF FC即表示测试频点为270 k Hz(31 9C十进制为12 700,(12 700-10 000)/10=270),00 01是WORD型数据表示该数据块的长度,09 00说明测试时间在9点整,00 CB用于计算阻抗模值,FF FC则用于相位的计算。终端回复的数据包的最后两位数据F4 00是结束段,F4为校验位,00是结束符。

一台终端用于测试的时间越长,内部存储的数据会随之增多(每台终端最多可存储8天的测量数据)。终端传给主站的上报数据越多,主站接收数据包的过程中就有可能发生数据掉包或数据错误等故障,这时可用网络调试助手发送02命令给终端,若网络调试助手接收到终端回复的数据包完整,则表示故障点在主站的接收或解析数据包程序中,否则表示终端有故障。

(5)错误命令

由于传输过程中的各种干扰,终端接收到的命令有可能发生错误,终端在接收到错误的命令后会回复主站并要求其重发。测试过程如下:

主站发:16 04 ED 00(该命令不存在)

终端回复:CC 00 00 07 16 22 00

CC表示终端接收到的命令是不在协议规定的范围内的异常命令码,00 07说明该回复数据有7位(00 07为十进制7),16是指接收到的错误命令码(以16H开头的命令),22是校验位,00为结束符。

(6)其他命令

主站发命令给终端,终端接收到命令,进入USB_Poll()函数,解析得到Comcode后,依据Comcode的具体数值判断得知主站发给终端的是哪一条命令,随后进入这条命令相应的命令处理程序,最后把需要发送的数据通过串口传到终端的串口转以太网工作模块,通过以太网把数据包传给主站。

2.3 测试结果分析

按上述的命令收发测试方法调测后,确定主站与终端间的所有命令的收发都正确时,终端可以用于阻抗测试。把终端与一个标准阻抗盒相接,阻抗盒的A相接入20Ω电阻、B相接入50Ω电阻、C相接入150Ω电阻。主站在阻抗检测设置中选择三相测试,并设置了121 kHz、132 kHz、270 kHz、412 kHz、310 kHz这5个常用频点作为一组测试频点进行循环测试,每隔30min测试一组,通过查看主站读回的阻抗测量数据来验证终端测试的结果。主站读回的数据将自动保存到Excel表格中,测试所得数据的部分截图如图1,读表可知每个频点的具体测试时间、测得的阻抗值等数据。主站读回的3个相位的阻抗值均与标准阻抗盒设置的阻抗值相近,并在误差允许的范围内,验证了终端阻抗测试的正确性。

采用Ethernet通信方式的低压电力载波阻抗自动检测系统,使得测试更加方便,加强了主站对多台终端设备的同时监控能力,为加入这种通信方式,终端的部分程序进行了适当的增加与修改。测试过程得到了满意的结果。

参考文献

[1]曾凌峰.基于电力载波的电器设备管理智能系统[J].煤炭技术,2010,29(5):40-42.

[2]朱铮涛,曾江翔.SIM卡及其初始信息写入方法研究与实现[J].微计算机信息,2009,25(8-3):111-113.

[3]吴少勇,甘玉玺,张翰之.以太网的环路检测技术[J].中兴通讯技术,2012(1):40-43.

[4]齐传凤,王学伟,韩东,等.低压电力线载波信道阻抗测试终端的设计与应用[J].电测与仪表,2012,49(1):57-62.

[5]韩东,王学伟,陆以彪,等.低压电力载波信道阻抗测试装置:中国,201887763[P].2011-06-29.

[6]叶崧.集成WSN、载波通信和多种现场总线的网关设计[J].现代电子技术,2011,34(24):87-89.

[7]江洁,赵不贿,唐平.一种基于电力载波的家庭网络与以太网的连接方法[J].计算机工程,2004,30(21):166-168.

上一篇:凭证价值下一篇:分部数据