Download presentation
Presentation is loading. Please wait.
1
第 4 部分 DeviceNet从站开发 2003/09/16 第4部分:DeviceNet从站开发
2
内 容 概 述: DeviceNet规范 DeviceNet通讯协议 DeviceNet组2 从站的开发 EDS文件 设备描述
2003/09/16 第4部分:DeviceNet从站开发
3
DeviceNet 规 范 2003/09/16 第4部分:DeviceNet从站开发
4
DeviceNet 规范介绍 第一卷:DeviceNet 通信模型和协议 第二卷:DeviceNet 设备描述和对象库
DeviceNet Specification Volume I: DeviceNet Communication Model and Protocol 描述设备间建立和管理连接的方法 第二卷:DeviceNet 设备描述和对象库 DeviceNet Specification Volume II :DeviceNet Device Profiles and Object Library 详述使用第一卷中介绍的通信服务的各个对象 2003/09/16 第4部分:DeviceNet从站开发
5
DeviceNet 通信协议&报文格式 2003/09/16 第4部分:DeviceNet从站开发
6
DeviceNet 的基础 DeviceNet 是一个基于连接的协议 在建立起连接之前,两个节点间没有通讯
每个连接都有定时器 DeviceNet利用对等的生产者/消费者通信模式 一个生产者, 多个消费者 没有高速也可完成同步化 DeviceNet也可以配置成主/从连接 可满足低成本的从站设备 一个网络中可有多个主站 2003/09/16 第4部分:DeviceNet从站开发
7
给生产者-消费者的数据流分配一个唯一的连接ID 连接双方识别该连接ID,其它消费者忽略该连接ID
生产者/消费者结构 点-点单向报文传送 Producer Consumer Data ID ‘A’ 给生产者-消费者的数据流分配一个唯一的连接ID Consumer 连接双方识别该连接ID,其它消费者忽略该连接ID 2003/09/16 第4部分:DeviceNet从站开发
8
连接双方识别该连接ID,其它消费者忽略该连接ID
生产者/消费者结构 点-点双向报文传送 Producer / Consumer Data ID ‘A’ Producer / Consumer Consumer 连接双方识别该连接ID,其它消费者忽略该连接ID . Data ID ‘B’ 每个方向分配一个单独的连接ID . 2003/09/16 第4部分:DeviceNet从站开发
9
给生产者-消费者的数据流分配一个唯一的连接ID 所有参与者识别该连接ID,其它消费者忽略该连接ID
生产者/消费者结构 多点单向报文传送 Producer Consumer 给生产者-消费者的数据流分配一个唯一的连接ID Data ID ‘A’ Consumer 所有参与者识别该连接ID,其它消费者忽略该连接ID 2003/09/16 第4部分:DeviceNet从站开发
10
给每个生产者的数据流分配一个单独的连接ID 所有参与者识别该连接ID,其它消费者忽略该连接ID
生产者/消费者结构 多点双向报文传送 给每个生产者的数据流分配一个单独的连接ID Producer/ Consumer Producer/ Consumer Data ID ‘A’ Data ID ‘B’ Consumer 所有参与者识别该连接ID,其它消费者忽略该连接ID Data ID ‘C’ 2003/09/16 第4部分:DeviceNet从站开发
11
客户机/服务器模式 客户机发起同服务器的连接 一个客户机可以有多个服务器 一个服务器也可以有多个客户机 要看各节点的资源 Client1
Server1 Server2 Server3 客户机发起同服务器的连接 一个客户机可以有多个服务器 一个服务器也可以有多个客户机 要看各节点的资源 2003/09/16 第4部分:DeviceNet从站开发
12
客户机发起同另一个客户机的连接,这种情况,进行对等通信
客户机/服务器模式 对等通信 Client / Server Client / Server Server1 Server3 Server2 客户机发起同另一个客户机的连接,这种情况,进行对等通信 2003/09/16 第4部分:DeviceNet从站开发
13
支持服务器间的直接数据传送.建立连接时需要一个客户机支持,但实时运行时客户机不参与.
客户机/服务器模式 服务器-服务器 (分布式控制结构) Client Client Server2 Server1 支持服务器间的直接数据传送.建立连接时需要一个客户机支持,但实时运行时客户机不参与. 2003/09/16 第4部分:DeviceNet从站开发
14
预定义主/从连接只允许每个从站有一个主站
网络中可以同时有多个主站 Master Master Slave1 Slave2 Slave3 Slave4 预定义主/从连接只允许每个从站有一个主站 从站是简单的设备,支持简单的连接方法 2003/09/16 第4部分:DeviceNet从站开发
15
预定义主/从连接 一个主站可作为另一个主站的从站 Master / Slave Slave1 Slave2 Slave3 Slave4
2003/09/16 第4部分:DeviceNet从站开发
16
如何建立连接 客户机通过未连接端口提交连接请求 服务器检验其有效性 选择一闲置端口 (CAN标识符)
选择一种数据格式(16位,32位,有符号/无符号等) 服务器检验其有效性 如果可以,返回成功信息,开始利用指定的端口和格式进行通信 如果不可以,拒绝客户机建立连接的请求 2003/09/16 第4部分:DeviceNet从站开发
17
举例 断线 Client(客户) Server(服务器) 我要和你讲话 抱歉,我不能 建立连接失败 我要和你讲话 好的,我可以 成功建立连接
通话 通话 2003/09/16 第4部分:DeviceNet从站开发
18
如何建立连接 DeviceNet为未连接报文保留了几组CAN标识符 组2-报文6 :仅限组2未连接显式请求报文(分配预定义主/从连接)
组3- 报文6: UCMM请求报文 组3 -报文5: UCMM响应报文 2003/09/16 第4部分:DeviceNet从站开发
19
举例1 利用建立的连接通信 0001 000011 3 0010 000100 3 MAC ID 3 MAC ID 4 2 11 101
0001 000011 3 0010 000100 3 MAC ID 3 MAC ID 4 2 11 101 000100 1 11 110 000011 利用UCMM建立连接 2003/09/16 第4部分:DeviceNet从站开发
20
UCMM 请求(未连接报文请求) 打开显式报文连接请求格式: Frag: 分段说明。 [0] = 非分段报文; [1] =分段报文
XID: 传送 ID.。交替发送,避免报文重复. R/R: 请求/响应。 [0] = 请求;[1]=响应 组选择。0x00 =组 1; 0x01=组 2; 0x03 = 组 3. 2003/09/16 第4部分:DeviceNet从站开发
21
报文体格式 报文体格式决定类标识符和实例标识符的范围(尺寸) 例如:实例 ID=8位,则属性标识符最大值为255 2003/09/16
第4部分:DeviceNet从站开发
22
UCMM 响应(未连接报文响应) 打开显式报文连接成功响应格式:
!注意:分配成功后,接下来的显式报文将使用从站返回的报文体格式传送,而不是主站请求的报文格式 2003/09/16 第4部分:DeviceNet从站开发
23
打开显式信息连接请求举例 客户机服务器使用组1,信息ID=A 服务器客户机使用组1,信息ID=3
客户机MACID=0,服务器MACID=5 客户机服务器使用组1,信息ID=A 服务器客户机使用组1,信息ID=3 客户机向服务器发出打开显式信息连接的请求。 打开显式信息连接请求 数据=05 4B 00 0A 7 6 5 4 3 2 1 Frag [0] XID[0] MACID [5] 1 R/R [0] 服务代码[4B] 2 保留 请求的信息体格式[0] 3 组选择[0] 源信息ID [A] 2003/09/16 第4部分:DeviceNet从站开发
24
打开显式信息连接响应举例 打开显式信息连接响应 11 101 000101 数据=00CB00030200 信息头 信息体
字节偏移 1 2 3 4 5 Frag[0] XID MAC ID R/R[1] 服务代码[4B] 保留(所有位=0) 实际信息体格式 目的信息ID 源信息ID 信息头 信息体 连接实例ID 2003/09/16 第4部分:DeviceNet从站开发
25
建立的显式信息连接示意图 组1信息ID=A CID=280 链路 生产者 链路 消费者 链路 消费者 组1信息ID=3 CID=0C5 链路
MAC ID=0 MAC ID=5 客户机 服务器 2003/09/16 第4部分:DeviceNet从站开发
26
显式请求报文 7 6 5 4 3 2 1 Frag[0] XID[0] MACID=5 R/R[0] 服务器代码=OE 分类 ID=05
显式请求格式和实例: 客户机向服务器发送 “获取单个属性”请求,请求读取: 服务器(MACID=5)的 连接类( Class ID=05)的 实例02(Instance ID = 02)的 属性09-“期望信息包速率” (属性ID=09)的属性值 7 6 5 4 3 2 1 Frag[0] XID[0] MACID=5 R/R[0] 服务器代码=OE 分类 ID=05 实例 ID=02 服务数据 属性 ID=09 1 2003/09/16 第4部分:DeviceNet从站开发
27
显式响应报文 显式响应格式和实例: 7 6 5 4 3 2 1 Frag[0] XID[0] MACID=0 R/R[1] 服务器代码=OE
服务器发送 “获取单个属性”响应 7 6 5 4 3 2 1 Frag[0] XID[0] MACID=0 R/R[1] 服务器代码=OE 数据 1 2003/09/16 第4部分:DeviceNet从站开发
28
DeviceNet仅限组2从站开发 2003/09/16 第4部分:DeviceNet从站开发
29
几个重要概念 支持UCMM 的设备 - 支持UCMM的设备可以通过UCMM报文对等建立连接 不支持UCMM的设备 - 典型的低端设备
仅限组2服务器 - 不支持UCMM的设备 - 一定要支持预定义主/从连接组 组2服务器 -支持UCMM的设备 -作为预定义主/从连接组的从站设备 2003/09/16 第4部分:DeviceNet从站开发
30
UCMM与仅限组2服务器 UCMM 仅限组2服务器 支持UCMM的设备可以使用UCMM建立连接 专项的请求和响应端口
可以很灵活的建立显式报文 与仅限组2服务器相比需要较强的CPU功能和较多的内存 设备应近可能支持UCMM 仅限组2服务器 使用仅限组2未连接显式请求报文建立连接 该组无单独的连接响应端口。服务器利用显式报文响应端口进行响应 不支持其它通信功能 仅限组2从站一定要支持预定义主/从连接组 增加扫描卡的负担(扫描卡代理每个从站的显式报文) 2003/09/16 第4部分:DeviceNet从站开发
31
预定义主/从连接组 最初是为了简化建立连接而设计的 不支持UCMM的设备必须支持预定义主/从连接组 几乎所有设备都支持预定义主/从连接组
无法充分体现DeviceNet的优势 所有的扫描卡都支持预定义主/从连接组 !注意:支持UCMM的设备成功响应了预定义主/从连接分配请求后,主站可以使用UCMM建立的显式连接,也可以使用预定义主/从连接分配的显式连接同设备通信,设备必须都能处理 2003/09/16 第4部分:DeviceNet从站开发
32
预定义主/从连接只允许每个从站有一个主站
网络中可以同时有多个主站 Master Master Slave1 Slave2 Slave3 Slave4 预定义主/从连接只允许每个从站有一个主站 从站是简单的设备,支持简单的连接方法 2003/09/16 第4部分:DeviceNet从站开发
33
预定义主/从连接 一个主站可作为另一个主站的从站 Master / Slave Slave1 Slave2 Slave3 Slave4
2003/09/16 第4部分:DeviceNet从站开发
34
组2和CAN 组2-报文6 :仅限组2未连接显式请求报文(分配预定义主/从连接) 2003/09/16 第4部分:DeviceNet从站开发
35
组2和CAN 从站的MAC ID 总是在CAN的标识场中(除主站的位选通I/O) 将MAC ID 放置在报文ID前面 减少从站的中断次数
可以使用基本的CAN( BasicCAN) 从站的MAC ID 决定总线访问的优先级,尤其是对位选通,状态改变和循环 2003/09/16 第4部分:DeviceNet从站开发
36
举例2 预定义主/从连接 10 000100 100 3 10 000100 011 3 MAC ID 3 MAC ID 4 2 10
110 分配预定义主/从连接 2003/09/16 第4部分:DeviceNet从站开发
37
仅限组2未连接请求报文格式 从站须依据分配者的MAC ID 来确认主站MAC ID,而不是源MAC ID 服务代码[4B]:分配连接
2003/09/16 第4部分:DeviceNet从站开发
38
分配选项 可以组合选择(同时选择多项) 循环和状态改变不能同时选,二者互斥 应答抑制只用于循环和状态改变 2003/09/16
第4部分:DeviceNet从站开发
39
预定义主/从连接组 预定义主/从显式报文 预定义主/从 I/O报文 位选通(Bit Strobe):多点传送 循环(Cyclic)
典型请求-响应机制。主站请求,从站响应 预定义主/从 I/O报文 轮询(Poll),点到点 同一时刻,一个主站对一个从站 位选通(Bit Strobe):多点传送 一个主站对所有它的支持位选通的从站 循环(Cyclic) 主站/从站周期性的发起传送 状态改变(Change-Of-State ) 当I/O状态改变时主站/从站发起传送 2003/09/16 第4部分:DeviceNet从站开发
40
组2连接实例 连接实例 说明 1 显式 (Explicit) 2 轮询I/O( Polled) 3 位选通I/O(Bit-Strobed )
4 状态改变或循环I/O (COS or Cyclic) 5 预留 !注意: 状态改变和循环I/O连接为互斥设置 !注意: 支持预定义主/从连接的从站必须为预定义主/从连接组保留这些实例号 2003/09/16 第4部分:DeviceNet从站开发
41
仅限组2未连接响应报文格式 !注意:分配成功后,接下来的显式报文将使用从站返回的报文体格式传送,而不是主站请求的报文格式
2003/09/16 第4部分:DeviceNet从站开发
42
举例 建立轮询连接举例 MAC ID Message ID Slave Master 6 Slave Slave I/O Poll 5
Master I/O Poll 3 Slave Master Explicit Req 4 2 Slave Slave Explicit Rsp 1 Slave Group 2 Unconnected 2003/09/16 第4部分:DeviceNet从站开发
43
仅限组2从站开发的特点 低成本,易于实现,可以作为开发的入手点 比较通用 需要仅限组2主站(代理UCMM功能) 连接数极有限
一个显式连接 四个 I/O连接 仅通过组2接收报文 通过组1和组2传送报文 2003/09/16 第4部分:DeviceNet从站开发
44
电子数据文档(EDS 文件) 2003/09/16 第4部分:DeviceNet从站开发
45
设备配置 配置概述 配置支持 DeviceNet 配置工具 2003/09/16 第4部分:DeviceNet从站开发
46
配置概述 DeviceNet协议可以通过网络配置设备 设备不须要配置开关 一个工具可以访问所有的节点 机械设计,强度,体积设计更灵活
用户可配置的产品特性更多 无须专门的配置端口 一个工具可以访问所有的节点 在线调整设备参数 远程识别网上设备 2003/09/16 第4部分:DeviceNet从站开发
47
配置概述 电子数据文档(Electronic Data Sheet- (EDS) ) 参数对象与参数对象根 配置组合对象 以上各种组合
几种配置方法 电子数据文档(Electronic Data Sheet- (EDS) ) 参数对象与参数对象根 配置组合对象 以上各种组合 允许不同复杂程度的工具 手提式,用于工厂维护 提供原始的配置 基于PC机的通用软件配置工具 提供标准配置 产品指定的工具 复杂设备配置 2003/09/16 第4部分:DeviceNet从站开发
48
配置概述 原始配置 标准配置 将资料输入到可下载的组 基本的表格输入格式 利用工具从设备中提取数据块 最经济的配置法
提供从设备读取配置参数的方法 参数对象或电子数据文档的使用允许工具检查数据的有效值 支持电子数据文档 2003/09/16 第4部分:DeviceNet从站开发
49
配置支持 DevieNet规范定义数种配置选择 参数对象与简化参数对象 配置组合对象 电子数据文档 2003/09/16
第4部分:DeviceNet从站开发
50
配置支持 参数对象 包含每个可配置属性的必要信息 包含本文/帮助字串用于用户提示 工具从设备中提取全部的配置信息 每个可配置属性需要一个实例
任何配置工具都可配置该设备 每个可配置属性需要一个实例 数据存放设备中,所以需要较大的ROM空间 2003/09/16 第4部分:DeviceNet从站开发
51
参数对象例子 参数类 实例 1 之属性 <输出状态> 2003/09/16 第4部分:DeviceNet从站开发
52
配置支持 电子数据文档 (EDS文件) 让参数对象变成可选支持(非必须的) ASCII 文件格式 包含所有可配置属性的信息
内容同参数对象相同 结合简化参数对象 参数对象提供公用接口 EDS 提供描述性文本,数据限定值等 2003/09/16 第4部分:DeviceNet从站开发
53
配置支持 电子数据文档包括以下几个部分: DeviceNet 规范 第2卷 第4章 文件描述 设备描述 参数 2003/09/16
54
EDS文件 2003/09/16 第4部分:DeviceNet从站开发 $ Presence Sensing Device
$ Sample Electronic Data Sheet $ $ All unknown numeric fields shown as 99 $ All unknown string fields shown as “XYZ” $ Assume APP Object Class = 77 [File] DescText = “EDS for Type XYZ Presense Sensor” CreateDate = ; CreateTime = 09 : 03 : 50; ModDate = ; ModTime = 0 : 03 : 50; [Device] VendCode = 1 VendName = “Allen-Bradley”; ProdType = 6; ProdCode = 1; MajRev = 1’ MinRev = 0 ProdName = “Type XYZ Presense Sensor”; SerNum = 0x ; Comment = $ creation date $ Vendor code $ Product type $ Product code $ Maj rev $ Minor rev $ Serial number $ User Comment 2003/09/16 第4部分:DeviceNet从站开发
55
EDS文件 2003/09/16 第4部分:DeviceNet从站开发 [Params] Param1 =
6, “ ”’ 0x02, 2, 2, “Output State”, “ “, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0; Param2 = 0, 6, “ ”, 1, 2, “Diagnostic”, 0, 0, 0, $ Parameter 1 description $ data slot $ path size, path $ descriptor $ data type, size $ name $ units $ help text $ min, max, default $ scaling factors $ scaling links $ decimal precision $ Parameter 2 description 2003/09/16 第4部分:DeviceNet从站开发
56
DeviceNet 配置工具 通过网络配置 直接连接配置 2003/09/16 第4部分:DeviceNet从站开发
57
DeviceNet 设备描述 2003/09/16 第4部分:DeviceNet从站开发
58
什么是设备描述? 设备描述定义一个设备: 设备类型举例: 行为 如何交换输入/输出数据 如何配置 气阀 伺服驱动器 马达启动器 限位开关
光电开关 2003/09/16 第4部分:DeviceNet从站开发
59
为什么需要设备描述? 从网络的角度来看,相似设备如果使用相同的设备描述,则他们具有一致的行为, 通信方式和配置.
一致的行为, 通信方式和配置使得设备具有: 互用性 互换性 当然,最终还是由用户确认设备的互换性 架设,精确度,环境系数,寿命 设备描述只提供逻辑上的互换性 如果制造商有特定的参数,全面替代是不可能的 DeviceNet 第二卷,第三章,设备描述 2003/09/16 第4部分:DeviceNet从站开发
60
定义设备的行为 定义设备的行为等于定义设备的对象模型,因为 定义设备的对象模型,必须: 对象有定义好的行为 对象之间的连接结构有定义好的行为
列出设备中所有的对象类 说明各类的实例数 说明各对象会否会影响设备的行为,以及如何影响 定义所有对象同其它对象之间的接口 2003/09/16 第4部分:DeviceNet从站开发
61
对象模式(流量计) 2003/09/16 第4部分:DeviceNet从站开发 DeviceNet Network
Instance #1 = AIP Input Range Instance #2 = LPF parameters Application Ex t’d Diag Object Object(s) Parameter Object Class Diag Object #1 Analog #2 Low Pass Input Point Filter Flow Object Object Transducer Identity Object Assembly Object Class Message Router Instance Instance #2 #1 Explicit DeviceNet I/O Msg Object Connection Object Class DeviceNet Network 2003/09/16 第4部分:DeviceNet从站开发
62
输入/输出数据格式 设备的I/O数据可利用组合对象来结构化 设备可支持多个I/O组合,用户根据需要选择期望的I/O数据格式
2003/09/16 第4部分:DeviceNet从站开发
63
I/O组合格式(流量计) 该例中,4个属性集合在一个的数据结构中: 流量值 诊断位1,2,3 Bit Bit Bit Bit Bit Bit
Byte 7 6 5 4 3 2 1 Flow Value (Low Byte) 1 Flow Value (High Byte) Diag Diag Diag 2 Reserved Bit #3 Bit #2 Bit #1 2003/09/16 第4部分:DeviceNet从站开发
64
如果所要的设备描述不存在 DeviceNet规范规定了定义新描述所需的步骤 由ODVA专家(特别兴趣小组)定义新的设备类型
印刷发行新设备描述 2003/09/16 第4部分:DeviceNet从站开发
65
新设备描述的建立过程为: 该类设备的专家定义新设备描述 将提案交于ODVA技术委员会审查 ODVA讨论,改进(如须) ,然后批准该设备描述
发行新设备描述 2003/09/16 第4部分:DeviceNet从站开发
Similar presentations