您的位置:控制工程论坛网论坛 » 现场总线 » DeviceNet中的对象概念

wqshand

wqshand   |   当前状态:在线

总积分:5732  2024年可用积分:0

注册时间: 2007-03-15

最后登录时间: 2019-07-01

空间 发短消息加为好友

DeviceNet中的对象概念

wqshand  发表于 2007/6/26 9:36:40      1220 查看 0 回复  [上一主题]  [下一主题]

手机阅读

DeviceNet中的对象概念

DeviceNet协议使用面向对象的方法来描述,将一个DeviceNet节点模拟为一个对象,由此定义了节点外部的显性表现,而内部的所有参数全部由类-实例-属性的关系来表现。


对象的概念

■ 参照面向对象的设计语言中对对象一词的描述,我们可以认为对象就是对真实实体的一种抽象,而在DeviceNet中,你可以把一个对象看成一个封装的功能块,它具体对象的一切特点,如包含了数据结构和提供相关的行为等等。

■ 类(Class)是对象的描述,即一个类定义的是一种对象类型。
■ 实例(Instance)是类的一种表现方式,相反类是实例的集合。
■ 在DeviceNet中,一个对象被看作一个类的实例(与一般的面向对象方法不同)。对象模型为管理和实现DeviceNet产品组件的属性(数据),服务(方法或步骤)和行为提供了一个模板。模型为每个属性提供了由4个数字组成的寻址方案。它们分别是节点地址(MAC ID),对象类标识符,实例编号和属性编号。这四级地址与显式报文连接相结合,将数据从DeviceNet网络上的一点传送到另一点。


DeviceNet对象模型
DeviceNet的对象库:

Class Code   Information

01hex       Identity
02hex       Message Router
03hex       DeviceNet
04hex       Assembly
05hex       DeviceNet Connection
06hex       Off–Link Connection Manager
07hex       Register
08hex       Discrete Input Point
09hex       Discrete Output Point
0Ahex       Analog Input Point
0Bhex       Analog Output Point
0Ehex       Presence Sensing
0Fhex       Parameter
10hex       Parameter Group
12hex       Group
1Dhex       Discrete Input Group
1Ehex       Discrete Output Group
1Fhex       Discrete Group
20hex       Analog Input Group
21hex       Analog Output Group
22hex       Analog Group
23hex       Position Sensor Object
24hex       Position Controller Supervisor Object
25hex       Position Controller Object
26hex       Block Sequencer Object
27hex       Command Block Object
28hex       Motor Data Object
29hex       Control Supervisor Object
2Ahex       AC/DC Drive Object
2Bhex       Acknowledge Handler Object
2Chex       Overload Object
2Dhex       Softstart Object
2Ehex       Selection Object

DeviceNet节点必需对象
 

如上节所述,DeviceNet定义了很多对象,而大部分的对象都是可以根据自己所开发的设备来选择的,但作为一个DeviceNet节点,协议中规定必需存在如下几个对象:

*Identity Object(标识对象):DeviceNet产品一般都有一个标识对象实例(1#实例)。此实例包含各种属性,如供货商ID、设备类型、产品代码、版本、状态、序列号、产品名称和说明。

*Message Router Object(消息路由对象):DeviceNet产品一般都有一个报文路由对象实例(1#实例)。报文路由对象向其它对象传送显式报文。一般在DeviceNet网络中它不具有外部可视性。

*DeviceNet Object(DeviceNet对象):DeviceNet产品一般都有一个DeviceNet对象实例(1#实例)。该实例有下列属性:节点地址或MAC ID ,波特率,总线关闭,总线 关闭计数器,单元选择和主机的MAC ID 。

*Connection Object(连接对象):DeviceNet产品一般至少包括两个连接对象。每个连接对象代表DeviceNet网络上两节点间虚拟连接中的一个端点。两种连接类型分别称为显式报文连接和I/O报文连接。显式报文包括属性地址,属性值和服务代码来描述所请求的行为。I/O报文只包含数据。I/O报文中,所有有关如何处理数据的信息都包含在与该I/O报文相关的连接对象中。
1楼 0 0 回复