logo资料库

canopen实例分析之PDO.pdf

第1页 / 共12页
第2页 / 共12页
第3页 / 共12页
第4页 / 共12页
第5页 / 共12页
第6页 / 共12页
第7页 / 共12页
第8页 / 共12页
资料共12页,剩余部分请下载后查看
机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 目录目录目录目录 第一章 PDO 实例分析 ................................................................................................................ 1 一、目的: ................................................................................................1 二、手段: ................................................................................................1 三、分析: ................................................................................................1 四、过程: ................................................................................................2 4.1.对象字典的编写 ...................................................................................................... 2 4.1.1 各节点 ID 分配表定义 .................................................................................. 2 4.1.2 对节点 1 进行对象字典编写......................................................................... 2 4.1.3 对节点 2 进行对象字典编写......................................................................... 3 4.1.4 对节点 3 进行对象字典编写......................................................................... 5 4.2 节点 1 发送数据至节点 2、节点 3 ........................................................................ 6 4.2.1 节点 1 发送数据至总线................................................................................. 6 4.2.2 节点 2、节点 3 从总线接收数据................................................................. 7 4.3 节点 2 发送数据至节点 3 ..................................................................................... 8 4.3.1 节点 2 发送数据至总线............................................................................... 8 4.3.2 节点 3 从总线接收数据................................................................................ 9 参考文献 ....................................................................................................................................... 10 CANopen CANopen 工作流分析 工作流分析 V1.0 工作流分析 CANopen CANopen 工作流分析 Date: 2011----5555----20 Copyright By Tongji University Date: 2011 20 Copyright By Tongji University Date: 2011 Date: 2011 20 Copyright By Tongji University 20 Copyright By Tongji University i
机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 第一章第一章第一章第一章 PDO 实例分析 实例分析 实例分析 实例分析 一一一一、、、、目的目的目的目的: 实例的目的如图 1-1 所示,实现节点 1 的数据(A、B)传送到节点 2、节点 3,同时实现节点 2 传输数据(C、D)至节点 3 。 图 1-1 数据传输目的 二二二二、、、、手段手段手段手段: 使用 PDO 进行数据传送。 三三三三、、、、分析分析分析分析: PDO 通信是基于生产者/消费者(Producer/Consumer)模型,主要用于 图 1-2 SDO 客户/服务器通讯模式 [1] 传输实时数据。产生数据的节点将带有自己节点号的数据放到总线上,需要该数 据的节点可以配置为接收该节点发送的数据 [3] 。 CANopen CANopen 工作流分析 工作流分析 V1.0 工作流分析 CANopen CANopen 工作流分析 Date: 2011----5555----20 Copyright By Tongji University Date: 2011 20 Copyright By Tongji University Date: 2011 Date: 2011 20 Copyright By Tongji University 20 Copyright By Tongji University 1
机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 四四四四、、、、过程过程过程过程:::: 4.1.对象字典的编写 对象字典的编写 对象字典的编写 对象字典的编写 对象字典的结构和条目对于所有设备是共同的,本例中采用索引定位,子索 引确定对象的思想构建对象字典,方法是使用结构体定义子索引,子索引结构体 的成员变量包含对象的属性(读写权限,数据类型,数据长度等)和指向对象的 指针,定义索引时包含指向子索引的指针和子索引数目,对象字典各项在代码中 采取如图 1-3 所示的方式来组织构建,这样可以方便地通过索引和子索引一找到 对应的项,对象定义为指针的形式可以通过主站的 SDO 报文进行读写,实现对对 象字典的灵活配置,同时这种方式实现通讯层与应用层共享数据变量的特点。对 象字典的条目格式如图 1-3 所示: 索引索引索引索引 对象对象对象对象((((符号名符号名符号名符号名)))) 名称名称名称名称 属性属性属性属性 类型类型类型类型 强制强制强制强制/可选可选可选可选 4.1.1 各节点各节点各节点各节点 ID 分配表定义 分配表定义 分配表定义 分配表定义 图 1-3 对象字典模块结构图 表 1-1 各节点 ID 分配表 节点 节点 1 节点 2、 节点 3 主节点 NODE-ID 0x01 0x02 0x03 0x04 4.1.2 对节点对节点对节点对节点 1 进行对象字典编写 进行对象字典编写 进行对象字典编写 进行对象字典编写 节点 1 发送数据至节点 2、节点 3,故需定义 TPDO,我们在此处定义为 TPDO1。节点 1 的应用数据区、TPDO1 的通讯参数和映射参数在对象字典中的 定义分别如表 1-2、1-3 和 1-4 所示。 表 1-2 节点 1 的应用数据区在对象字典中的定义 索引索引索引索引 子索引子索引子索引子索引 名称名称名称名称 类型类型类型类型 值值值值 权限权限权限权限 7100h 00h 入口数目 U8 02h rw 01h A U16 2DFFh rw 02h B U8 C3h rw 表 1-3 节点 1 的 TPDO1 通讯参数在对象字典中的定义 1800h 02h — 03h 00h 04h 01h TPDO 传输类型 禁止时间 入口数目 Reserved 发送 PDO 标识符 数据类型 数据类型 数据类型数据类型 U8 U16 U8 —— U32 FFh 值值值值 00h 05h —— 180h+NodeID rw 权限权限权限权限 rw ro rw rw CANopen CANopen 工作流分析 工作流分析 V1.0 工作流分析 CANopen CANopen 工作流分析 Date: 2011----5555----20 Copyright By Tongji University Date: 2011 20 Copyright By Tongji University Date: 2011 Date: 2011 20 Copyright By Tongji University 20 Copyright By Tongji University 2
表表表表 1-3 节点节点节点节点 1 的的的的 TPD01 通讯参数在对象字典中的定义 通讯参数在对象字典中的定义 通讯参数在对象字典中的定义 通讯参数在对象字典中的定义 1800H TPDO 数据类型 数据类型 数据类型数据类型 入口数目 00h 入口数目 入口数目入口数目 U8 值值值值 05h 权限权限权限权限 ro 01h 发送发送发送发送 PDO 标标标标 U32 180h+NodeID rw 识符识符识符识符 传输类型 02h 传输类型 传输类型传输类型 禁止时间 03h 禁止时间 禁止时间禁止时间 U8 U16 04h reserved ------ FFh 00h ------ 05h Event timer U16 0x0000h rw rw rw rw
机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 05h event timer U16 0x0000h rw 节点 1 的 TPDO1 的 COB-ID 定义为 181h。 1A00h 表 1-4 节点 1 的 TPDO1 的映射参数在对象字典中的定义 值值值值 — 数据类型 TPDO1 数据类型 数据类型 数据类型 00h 01h 02h PDO 映射数目 映射数目 映射数目 映射数目 A B U8 U16 U8 02h 7100 01 10h 7100 02 08h 权限权限权限权限 rw rw rw 其中 7100 01 10h 映射数据对象字典中索引为 7100h,子索引为 01h,长度 为 16 位的数据。 4.1.3 对节点对节点对节点对节点 2 进行对象字典编写 进行对象字典编写 进行对象字典编写 进行对象字典编写 节点 2 接收来自节点 1 的数据(A、B),故需定义 RPDO1;此外节点 2 将 数据传(C、D)送给节点 3,故需要定义 TPDO2。节点 2 的应用数据在对象字 典中的定义如表 1-5 所示。 表 1-5 节点 2 的应用数据在对象字典中的定义 索引索引索引索引 子索引子索引子索引子索引 名称名称名称名称 类型类型类型类型 值值值值 权限权限权限权限 7200h 00h 入口数目 U8 02h rw 01h A U16 -- rw 02h B U8 -- rw 7300h 00h 入口数目 U8 02h rw 01h C U16 F3CCh rw 02h D U8 D5h rw 此时索引为 7200h,子索引为 01h,02h 条目中起初并没有实际值,这两个 条目分别用来接收节点 1 的数据 A、B。接受数据后,子索引为 01h 的条目的值 为 2DFFh,子索引为 02h 的条目为 C3h。索引为 7300h,子索引为 01h,02h 条 目中为数据 C、D 的索引。 1400h 表 1-6 节点 2 的 RPDO1 通讯参数在对象字典中的定义 值值值值 数据类型 RPDO1 — 数据类型 数据类型数据类型 00h 01h 入口数目 U8 05h 接收 PDO 标识符 U32 180h+NodeID 权限权限权限权限 ro rw CANopen CANopen 工作流分析 工作流分析 V1.0 工作流分析 CANopen CANopen 工作流分析 Date: 2011----5555----20 Copyright By Tongji University Date: 2011 20 Copyright By Tongji University Date: 2011 Date: 2011 20 Copyright By Tongji University 20 Copyright By Tongji University 3
机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 02h 03h 04h 05h 传输类型 禁止时间 U8 U16 FFh 0 Reserved —— —— event timer U16 0x0000h rw rw rw rw 节点 2 定义 RPDO1 的 COB-ID 为 181h,对应节点 1 的 TPDO 的 COB-ID, 实现节点 1 与节点 2 之间的数据传输。 1600h 表 1-7 节点 2 的 RPDO1 映射参数在对象字典中的定义 — 值值值值 数据类型 RPDO 数据类型 数据类型 数据类型 00h PDO 映射数目 U8 02h 01h A U16 7200 01 10h 02h B U8 7200 02 08h 权限权限权限权限 rw rw rw 其中 7200 01 10h 表示映射到对象字典中索引为 7200h,子索引为 01h,长 度为 16 位的数据。 因为节点 2 发送数据至节点 3,故需在对象字典中定义 TPDO,在此定义为 TPDO2,其通讯参数和映射参数定义如表 1-8 和 1-9 所示。 表 1-8 节点 2 中 TPDO2 通讯参数在对象字典中的定义 1800 — TPDO2 数据类型 数据类型 数据类型 数据类型 值值值值 05h 280h+NodeID FFh 00h —— 0x0000h 权限权限权限权限 ro rw rw rw rw rw 02h 03h 04h 05h 00h 入口数目 01h 发送 PDO 标识符 传输类型 禁止时间 U8 U32 U8 U16 Reserved —— event timer U16 节点 2 的 TPDO2 的 COB-ID 为 282h。 表 1-9 节点 2 中 TPDO2 映射参数在对象字典中的定义 CANopen CANopen 工作流分析 工作流分析 V1.0 工作流分析 CANopen CANopen 工作流分析 Date: 2011----5555----20 Copyright By Tongji University Date: 2011 20 Copyright By Tongji University Date: 2011 Date: 2011 20 Copyright By Tongji University 20 Copyright By Tongji University 4
机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 — 00h 01h 02h TPDO1 数据类型 数据类型 数据类型 数据类型 PDO 映射数目 C D U8 U16 U8 值值值值 02h 7300 01 10h 7300 02 08h 权限权限权限权限 rw rw rw 1A00 其中 7300 01 10h 表示映射到对象字典中索引为 7300h,子索引为 01h,长 度为 16 位的数据 4.1.4 对节点对节点对节点对节点 3 进行对象字典编写 进行对象字典编写 进行对象字典编写 进行对象字典编写 节点 3 分别接受节点 1、节点 2 的数据,需在节点 3 的对象字典中定义 RPDO1、RPDO2,其中 RPDO1 的 COB-ID 需与节点 1 的 TPDO1 的 COB-ID 一 致,RPDO2 的 COB-ID 需与节点 2 的 TPDO2 的 COB-ID 一致。 表 1-10 节点 3 的应用数据在对象字典中的定义 索引索引索引索引 子索引子索引子索引子索引 名称名称名称名称 类型类型类型类型 值值值值 权限权限权限权限 7100h 00h 入口数目 U8 02h rw 01h A U16 -- rw 02h B U8 -- rw 7200h 00h 入口数目 U8 02h rw 01h C U16 -- rw 02h D U8 -- rw 其中名称为 A、B、C、D 的条目起初并没有实际值,接受节点 1 和节点 2 的数据后,这些条目才具有相应的值。 1400h 表 1-11 节点 3 的 RPDO1 的通讯参数在对象字典中的定义 值值值值 数据类型 数据类型 数据类型 数据类型 — RPDO1 00h 入口数目 U8 05h 01h 接收 PDO 标识符 U32 180h+Nod 02h 03h 04h 传输类型 禁止时间 U8 U16 eID FFh 0 Reserved —— —— 权限权限权限权限 ro rw rw rw rw CANopen CANopen 工作流分析 工作流分析 V1.0 工作流分析 CANopen CANopen 工作流分析 Date: 2011----5555----20 Copyright By Tongji University Date: 2011 20 Copyright By Tongji University Date: 2011 Date: 2011 20 Copyright By Tongji University 20 Copyright By Tongji University 5
机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 机械工程学院机械设计及理论研究所 05h event timer U16 0x0000h rw 其中 RPDO1 的 COB-ID 为 181h,与节点 1 的 TPDO1 的 COB-ID 一致,实 现节点 1 与节点 3 之间的数据传输。 1600h 1401h 表 4-11 节点 3 的 RPDO1 的映射参数在对象字典中的定义 值值值值 数据类型 RPDO1 — 数据类型 数据类型 数据类型 00h PDO 映射数目 01h 02h A B U8 U32 U32 02h 7100 01 10h 7100 02 08h 表 4-12 节点 3 的 RPDO2 的通讯参数在对象字典中的定义 值值值值 数据类型 数据类型 数据类型 数据类型 U8 U32 U8 U16 —— U16 05h 280h+NodeID FFh 0 —— 0x0000h — 00h RPDO2 入口数目 01h 接收 PDO 标识符 02h 03h 04h 05h 传输类型 禁止时间 Reserved event timer 权限权限权限权限 rw rw rw 权限权限权限权限 ro rw rw rw rw rw 其中 RPDO2 的 COB-ID 为 282h,与节点 2 的 TPDO2 的 COB-ID 一致,实 现节点 2 与节点 3 之间的数据传输。 1601h 表 4-13 节点 3 的 RPDO2 的映射参数在对象字典中的定义 值值值值 数据类型 RPDO2 — 数据类型 数据类型 数据类型 00h PDO 映射数目 01h 02h C D U8 U32 U32 02h 7200 01 10h 7200 02 08h 权限权限权限权限 rw rw rw 4.2 节点节点节点节点 1 发送数据至节点 发送数据至节点 2、、、、节点节点节点节点 3 发送数据至节点 发送数据至节点 4.2.1 节点节点节点节点 1 发送数据至总线 发送数据至总线 发送数据至总线 发送数据至总线 节点 1 的 TPDO1 报文组装如图 1-4 所示: CANopen CANopen 工作流分析 工作流分析 V1.0 工作流分析 CANopen CANopen 工作流分析 Date: 2011----5555----20 Copyright By Tongji University Date: 2011 20 Copyright By Tongji University Date: 2011 Date: 2011 20 Copyright By Tongji University 20 Copyright By Tongji University 6
分享到:
收藏