如何解读EDS文件

如何解读EDS文件,第1张

如何解念激读EDS文件

2015-05-31 14:22:45

我们绝拆知道,使用ODVA组织的CIP协议时,需要对支持CIP网络的设备编写该设备的描述文件,以便CIP网络中的其他设备能够识别该设备,这个描述文件被称为EDS(Electronic Data Sheet:电子数据文件)。

本文就和读者谈谈如何理解和编制EDS文件。

为什么 EDS 文件非常重要?

一个设计完美的EDS 文件会使设备的集成非常容易;一个设计槽糕的EDS文件会产生很多误判或者在某些场合下根本无法实现设备的集成仔宏袜。这里为编写一个设计良好的EDS文件提出了一些忠告。EDS的不同部分将按出现的顺序进行介绍(按照在EDS ASCII文件的出现次序,按中括弧[]顺序进行) ,描述他们的功能和他们包含他们的信息。

[File] 文件段。这个段用于EDS文件的管理。

如果提供的关键字不足以提供确定的管理细节,那么要通过使用注释增加额外的信息。比如包括:设备名称、创建日期、创建时间、修改日期、修改时间、版本号、URL地址等内容。强烈推荐使用URL (Uniform Resource Locator:统一资源定位)关键字,使用户能够查找到该EDS文件的最新版本。

举例:下面是万可公司的一款产品的[File]段:

[File]

$+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

DescText    = "EDS File for WAGO I/O-System with EtherNet/IP coupler"

CreateDate  = 04-22-2004

CreateTime  = 12:00:00

ModDate     = 04-22-2004   

ModTime     = 12:00:00

Revision    = 1.1

$ HomeURL     = "http://www.wago.com/wagoweb/germany/ger/support/downloads/data/750341_1.eds"

[Device] 设备段。 在这个段包含的ID(Identification:身份)信息用来匹配在网络上已经发现设备带有的EDS文件。

这个段含有的是EDS文件中最重要的元素。身份识别是通过读取ID对象的前5个属性,并且与EDS文件中相对应的信息进行比较。他们是:供应商编码、供应商名称、产品类型、产品类型名称和产品编码。

通过他们运行时选项区分的任何设备必须用不同的EDS文件来隐藏,作为结果,他们必须有不同的ID对象属性。

在按装EDS时,设备段会指定一个图标文件为该设备自动分配一个图标。 强烈反对不使用图标的做法,因为图标是在网络中,区分设备类型/家族的最好的图形表示方法。对于用户而言,这也是最容易区别身份的办法。

举例:下面是万可公司的一款产品的[Device]段:

[Device]

$+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

VendCode    = 40                       $ Vendor Code

VendName    = "Wago Corporation"       $ Vendor Name

ProdType    = 12                       $ Product Type - Communication Adapter

ProdTypeStr = "Communications Adapter" $ Product Type String

ProdCode    = 341                      $ Product Code

MajRev      = 1                        $ Major Rev

MinRev      = 1                        $ Minor Rev

ProdName    = "WAGO Ethernet(10/100MBit)- STD"

Catalog     = "750-341"

$ Icon        = "750341_1.ico"

[Device Classification] 设备分类段。这个段对用于EtherNet/IP的EDS/设备进行了分类。

这是对用于EtherNet/IP 所有设备的提出要求。他必须包含至少一个连接 EtherNet/IP 的网络入口

举例:下面是万可公司的一款产品的[Device Classification]段

[Device Classification]

$++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Class1 = EtherNetIP

[Connection Manager] 连接管理段。这个段指定了设备的CIP 连接。

在 [File]文件段后,[Device]设备段和[Device Classification]设备分类段,这是一个EtherNet/IP 设备最重要的段,有了它才能成为CIP连接的目标。只有在这个段指定的连接才能被基于EDS的配置工具所使用。而所有的触发和传送类型要通过连接N入口来实现。比如:连接1为类别1,仅用于输入;连接2为类别1,仅用于侦听。在EDS文件中(类别0用于安全连接,类别1用于其他连接)指定连接类别0和1是通常做法。今天还没有使用其他的传送类别,也没有任何基于EDS的工具能够翻译其他类别。

如果有多个连接,不同的选项能够为设备建立不同功能的连接,每个连接需要分别标记一个连接N入口。只有在少数情况下,多个连接的连接N入口能够被“复用”,比如,使用一个参数用于连接点的信息。

使用传送类型和选择连接参数必须生成一个有意义的结合,以配合目标设备的功能。如果某些选择是相互排斥但设备又能够支持,那么要选择一系列独自的连接N入口去涵盖他们。象 EZ-EDS这样的工具能够帮助用户防止一些非法的组合,但不是全部。这种工具还能帮助用户对32-位加密的触发/传送值和连接参数进行解码。为每个独自连接N入口选择一个有意义的名字能帮助用户在使用中少犯错误。

所有的连接N入口都需要一个路径;否则,目标设备就不会连接到任何数据。我们强烈推荐支持所有的三种应用路径(配置,消费,生产),因为这也是ODVA组织的推荐之一,即:用于EtherNet/IP设备的推荐功能。在配置路径时,通常不需要对连接使用符号(标签)。

从源到目的(O->T)和从目的到源(T->O)属性(请求数据间隔,尺寸和格式)可以使用一些非常有意义的信息。当没有指定RPI(Request Packet Interval:请求数据间隔)值时,配置工具可能按给定的总线(网络)选择能够支持的任何值,而这个值可能超出了设备的能力。

使用一个固定的RPI值,也不需要太多的考虑,因为这是一个只能选择的值。在大多数情况下,在EDS文件中最好使用参数N入口,为RPI定义最小/最大/缺省值。对于尺寸(size)和格式(format),两个区域至少填入一个值。如果两个区域都填写了,尺寸区域将优先;当仅使用格式区域时,就用数字定义它,空着尺寸区域;如果不使用格式时,就可以空着。强烈推荐定义格式。

在配置属性部分,允许输入两个配置格式和两个配置尺寸。这个特性能够很好地处理模块化的设备。在Forward_Open请求中产生的第一部分数据,用于适配器的消费;数据的第二部分转发到各自的模块,满足模块的要求。对于非模块化设备,一个部分就足够了。

举例:下面是万可公司的一款产品的[Connection Manager]段

[Connection Manager]

$++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Connection1 = 0x84070002,     $ trigger &transport

$ class1,

$ cyclic, change of state, application,

$ exclusive owner,

$ server

0x33750405,    $ connection parameter

$ O->T, T->O fixed size supported

$ O->T 32-bit run/idle header

$ O->T Null,PtP, T->O Null,PtP,Multicast

$ O->T,T->O Low,High Priority

, 5, ,         $ O->T RPI,size,format

, 6, ,         $ T->O RPI,size,format

, ,           $ config part 1 (not used)

, ,           $ config part 2 (not used)

"class1 - exclusive owner", $ connection name

"",                         $ help string

"20 04 2C 01 2C 04"       $ referencing the target object

Connection2 = 0x82070002,    $ trigger &transport

$ class1,

$ cyclic, change of state, application,

$ input only,

$ server

0x33750405,    $ connection parameter

$ O->T, T->O fixed size supported

$ O->T 32-bit run/idle header

$ O->T Null,PtP, T->O Null,PtP,Multicast

$ O->T,T->O Low,High Priority

, 0, ,        $ O->T RPI,size,format

, 6, ,        $ T->O RPI,size,format

, ,           $ config part 1 (not used)

, ,           $ config part 2 (not used)

"class1 - input only", $ connection name

"",                    $ help string

"20 04 2C FE 2C 04"  $ referencing the target object

Connection3 = 0x81070002,    $ trigger &transport

$ class1,

$ cyclic, change of state, application,

$ listen only,

$ server

0x33750405,    $ connection parameter

$ O->T, T->O fixed size supported

$ O->T 32-bit run/idle header

$ O->T Null,PtP, T->O Null,PtP,Multicast

$ O->T,T->O Low,High Priority

, 0, ,         $ O->T RPI,size,format

, 6, ,         $ T->O RPI,size,format

, ,           $ config part 1 (not used)

, ,           $ config part 2 (not used)

"class1 - listen only", $ connection name

"",                     $ help string

"20 04 2C FF 2C 04"   $ referencing the target object

[Assembly]装配,[Params]参数和[ParamClass]参数类别段。

这些段应该在EDS文件中按其他部分的要求适当地进行填写,比如,连接N入口。

如果参数值没有限制在一个子区域的范围之内,如在参数N入口的区域定义一个在最小/最大值,那么列举时会有一个好的数据。为EtherNet/IP 的设备配置参数时,希望能把它打入配置装配。各自参数可以在EDS内部定义,但有些市售工具不允许访问设备内部的个别参数,只能使用显式信息 (Get/Set_Attribute_Single或者Get/Set_Attribute_All)才能工作。

举例:下面是万可公司的一款产品的[ParamClass]段

[ParamClass]

$++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

MaxInst     =10   $ total number of configuration parameters

Descriptor  =0x0A $ all full attributes are supported and stored in non-volatile storage

CfgAssembly =0

[Capacity] 容量段。

这个段描述设备本身具有的通信能力(因此对公司非常有用)。应该描述连接的数量和连接的速度(每秒多少帧)。

[Port] 端口段。

这个段提供端口信息,这仅对需要执行CIP路由设备才有用。虽然允许,这个段对于支持单一CIP端口的设备来说是不必要的。当设备中内置交换机时,如设备带有多个以太网端口,这个段仍然不需要(或者仅限于一个入口)除非设备执行一个端口到另一个端口的CIP路由。

举例:下面是万可公司的一款产品的[Port]段

[Port]

$++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Port1 = TCP, "EtherNet/IP port", "20 F5 24 01", 1

$+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

eds文件是让软件rslinx识别硬件,eds是描述硬件的,eds遵循开放的规范,是升级硬件的描述文件.

运行Rockwell Software-》Rlinx-》Tools-》EDS Hardware Installation Tool进行安装。

对于DeviceNet 来说,EDS显得格外重要。没有它,设备无法正常通信及显示。

小知识:RSLinx可以为所有Allen-Bradley网络提供 完整的驱动程序。通过RSLinx软件,用户可以通过一个窗口查看所有活动网络,也可以通过一个或多桥掘个通讯接口同源好时运行时运行任何所支持的应用程序的组合雹消铅。RSLinx提供最快速的OPC、DDE和Custom C/C++的接口。

RSLinx还可以为用户提供多个网络、本地工作站和DDE/OPC性能诊断工具,便于进行系统维护和故障排除。 )

用canopen

builder扫描后打开那个不识别的装置,看好喊祥里面的厂商代码那四个信息,然后在那个郑差搏eds里面修改相关信息就好了,这是你导入的eds和你的设备不匹配造成的。庆伍


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12141112.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存