DND论坛 你的意见 设为首页 加入收藏 联系远方

系统主菜单

新闻更新

CAN&CANopen

DeviceNet

开发笔记

DND论坛 

本站留言 

网络链接

精彩文集

关于DND

热点文章点击

黑客故事之第八军团 2003-12-28[20179] 

简单的DeviceNet开发实验网络搭建(一) 2004-01-04[12957] 

CAN总线浪涌保护的简单方法 2005-06-06[10674] 

關於新增sunny為版主的公告 2009-02-20[8972] 

DeviceNet—开发者指南(远方译自CIA) 2004-01-04[7909] 

最新回复文章

DeviceNet中的对象概念 2003-12-29[5166] 

DeviceNet—开发者指南(远方译自CIA) 2004-01-04[7909] 

简单的DeviceNet开发实验网络搭建(一) 2004-01-04[12957] 

Producer/Consumer网络通讯模型 2004-01-04[4148] 

关于CAN物理层协议的探讨(远方译) 2005-03-16[7673] 

路,在脚下延伸……我坚定而执着地走着!

你的位置:DND首页 > DeviceNet > 阅读文章


 

DeviceNet中的对象概念

时间:2003-12-29 阅读5167次

 

 

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


对象的概念 

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

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


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报文相关的连接对象中。


 

 

 

 bawenchang 

 [00022] 

发表于2006-05-29 10:20 

 

远方,你好,我在学习DEVICENET编程,有个问题想请教你,就是I/O通讯之前要不要使用显性连接进行连接??

 

 fanxl617 

 [00041] 

发表于2010-09-15 13:18 

 

远方大哥好,对于一款devicenet协议芯片dn1022,我如何判断他已经实现什么功能,我还需要做什么工作,整个从站开发又需要做哪些工作呢?group2 only从站

 

 

姓 名:   密 码: 注册 修改

 

论坛最新贴子

ODVA核心成员













Copyright © 2003 DnDev.com  All Rights Reserved.
DND-DeviceNet 开发网  版权所有

制作维护:远方   Email:yuanfangjy@163.com