0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CANOpen系列教程09 _CANOpen对象字典

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 2020-03-06 16:31 次阅读

1写在前面

上一篇文章主要是引导大家学习CANOpen协议通信接口的相关内容。通信接口的内容有点多,对于初学者来说,如果看不懂,请多看几遍(最好有个印象)。

CANopen设备最重要的一个部分就是对象字典。对象字典本质上是一种被预先安排的对象序列,可通过网络访问。字典里面的每一对象均可使用一个16-bit主索引和8-bit子索引寻址到。

初学者学习如果难理解通信接口(上一篇)有些内容,如:PDO、SDO及网络管理对象,可以结合对象字典索引来学习和记忆。

2

对象字典重要内容

对象字典OD:Object dictionary。

一组带有 16 位索引和 8 位子索引的数据或对象。对象字典下面主要包含:数据类型、通信对象、应用对象。

对象字典主索引:

2.1 通信子协议区

通信子协议区,如上图1000h 到 1FFFh这个区域。也就是通信接口(或通信对象)协议区。

对于初学者来说,通信对象子协议区是比较重要的一个区域,牵涉到上一篇文章《通信接口》讲述的大部分内容。同时,这之间的关系也非常紧密。

通讯对象子协议区:

如上图,通讯对象子协议区又划分为几个区域,而其中的1000h 到 1029h为通用通讯对象。

通用通讯对象里面的内容已经被约定好,如果我们需要用到,可直接配置使用即可。

通用通讯对象内容:

通信子协议区的内容非常重要,也比较多,需要拆分并一个一个掌握。可结合周立功提供相关教程,以及前面提到的CiA 301手册理解。

我这里就不一一列出来了,简单再列一个通信子协议区中PDO通信参数与映射参数:

写到这里,想必很多朋友都能理解,也能明白这些内容。更多的内容,可以结合这种拆分的思路去理解。

3

对象字典生成工具

上面介绍了对象字典的一些内容,可能还是有很多初学者不明白。同时,也就可能会产生疑问:这个对象字典我们需要字典和我们代码有什么关系呢?

可以简单来说,就是一些16位索引和8位子索引对应的变量数据,来下看下代码(下面两图),加深理解:

3.1 对象字典的代码需要自己写吗?

很多初学者,包括我(之前初学时)也会产生疑问:对象字典的代码需要我们自己写吗?

答案:不用自己写。

当然,对象字典的代码可以自己写,但完全没必要。1.自己写不一定正确;2.有现成工具可以节约大量时间。

3.2 Canfestival对象字典生成工具

我微信公众号分享《CANOpen系列教程》的封面中有一行英文:Canfestival.相信学过CANOpen的朋友都应该知道我接下来会结合这套Canfestival免费开源的CANOpen架构来讲述。

其中,Canfestival里面包含我们需要的CANOpen协议源码和对象字典生成工具。

有了对象字典生成工具,对象字典的代码就可以通过它来自动生成。搭建Canfestival对象字典生成工具的环境是一个重点。

对于很多初学者来说搭建环境也是一个难点,不少初学者就卡在这一关,然后,学习CANOpen就没有继续下去了。

简单的说,搭建对象字典生成工具的环境步骤不多,可能会因为诸多因素导致搭建失败。搭建成功,运行之后会出现如下图界面:

在学习对象字典生成工具时,会看见一个词:EDS,即Electronic Data Sheet电子数据单。

像周立功的CANOpen从站模块就配有工具生成EDS文件。当然,Canfestival提供的工具也能导出EDS文件。

Canfestival对象字典生成工具搭建过程,及相关内容我将在下一篇文章详细讲述。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 通信协议
    +关注

    关注

    28

    文章

    951

    浏览量

    40667
  • CAN
    CAN
    +关注

    关注

    57

    文章

    2807

    浏览量

    465598
  • CANopen
    +关注

    关注

    8

    文章

    291

    浏览量

    44187
收藏 人收藏

    相关推荐

    三格电子-ProfiNet 转CAN/CANopen网关

    CANopen
    三格电子科技
    发布于 :2025年03月31日 14:53:23

    使用ES32实现CANopen从机

    字典CANopen设备模型如下图。对象字典描述了CANopen设备的所有行为和参数。CanFestival是一套开源免费的
    的头像 发表于 03-26 19:05 76次阅读
    使用ES32实现<b class='flag-5'>CANopen</b>从机

    EtherCAT转CANopen配置CANopen侧的PDO映射

    在工业自动化领域,EtherCAT和CANopen是两种广泛应用的通信协议。它们各自具有独特的优势,但在某些应用场景下,需要将这两种协议进行转换以实现设备间的高效数据交换。本文将详细介绍如何在
    的头像 发表于 03-26 17:56 140次阅读
    EtherCAT转<b class='flag-5'>CANopen</b>配置<b class='flag-5'>CANopen</b>侧的PDO映射

    CANOPEN协议详细介绍

             CANOPEN协议是基于CAN总线协议建立的应用层协议。 CANOPEN协议的基本通信单元叫做“通信对象”,他们结构相同,包括funciton Code、Node-ID、DLC
    发表于 03-26 15:27 0次下载

    EtherCAT转CANOPEN:技术突破与未来展望!

    本文介绍了 EtherCAT 与 CANopen 的互操作性,兴达易控 XD-ECCOM20 网关实现其无缝连接。网关通过将 EtherCAT 从站接口转换为 CANopen 主站接口,实现数据透明传输。
    的头像 发表于 03-24 10:06 93次阅读
    EtherCAT转<b class='flag-5'>CANOPEN</b>:技术突破与未来展望!

    CANOpen转PROFINET网关连接低压伺服系统

    CANOpen转PROFINET网关连接低压伺服系统是一个在工业自动化领域中常见的应用场景,以下是对该连接过程的详细解析: 一、准备工作 1. 硬件准备: ● CANOpen转PROFINET网关
    的头像 发表于 03-24 07:35 117次阅读
    <b class='flag-5'>CANOpen</b>转PROFINET网关连接低压伺服系统

    颠覆想象!CanOpen转ProfiNet网关重塑纠偏系统格局

    该生产线采用了纠偏系统,其运用的是CanOpen通讯协议,而现场搭配的PLC为西门子S7-1500系列,采用Profinet工业以太网通讯。通过上述使用稳联技术CanOpen转ProfiNet网关
    的头像 发表于 02-20 17:01 200次阅读
    颠覆想象!<b class='flag-5'>CanOpen</b>转ProfiNet网关重塑纠偏系统格局

    三格电子-MODBUS TCP转CANOpen网关

    Modbus TCP转CANopen网关 型号:SG-TCP-COE-210 产品用途 本网关可以实现将CANOpen接口设备连接到MODBUS TCP网络中;并且用户不需要了解具体的CANOpen
    的头像 发表于 11-26 11:21 282次阅读
    三格电子-MODBUS TCP转<b class='flag-5'>CANOpen</b>网关

    Profinet转CanOpen网关连接与CanOpen协议磁轨道实现高效连接

    项目旨在展示如何通过开疆智能Profinet转Canopen网关实现西门子1200PLC与磁轨道之间的连接。以下是项目实施的步骤概要:安装必要的GSD文件到西门子组态软件中,确保系统能够识别并使用Profinet转Canopen网关设备。
    的头像 发表于 11-14 10:01 355次阅读
    Profinet转<b class='flag-5'>CanOpen</b>网关连接与<b class='flag-5'>CanOpen</b>协议磁轨道实现高效连接

    CANopen协议架构和应用原理

    稳健的通信协议和接口在工业电机控制应用中发挥着重要作用。在工业驱动应用中,当需要多个处理器元件来持续通信以完成复杂任务时,CANopen因其易于集成、高度可配置,以及支持高效、可靠的实时数据交换等特性,受到了众多工程师青睐。本文从低功耗电机控制应用的角度深入探讨CANopen
    的头像 发表于 11-04 13:49 778次阅读

    MODBUS TCP 转 CANOpen

    产品概述 SG-TCP-COE-210 网关可以实现将 CANOpen 接口设备连接到 MODBUS TCP 网络中。用户不需要了解具体的 CANOpen 和 Modbus TCP 协议即可实现
    的头像 发表于 09-24 13:59 406次阅读
    MODBUS TCP 转 <b class='flag-5'>CANOpen</b>

    CANopen系列CANopen从站为什么总不上传PDO报文?

    CANopen网络中无法获取从站的TPDO数据?本文将为您解析可能的原因及解决方案。通过检查TPDO的通信参数和传输类型,确保主站与从站的数据同步,快速定位问题所在。如果你的CANopen网络中
    的头像 发表于 09-19 08:05 540次阅读
    【<b class='flag-5'>CANopen</b><b class='flag-5'>系列</b>】<b class='flag-5'>CANopen</b>从站为什么总不上传PDO报文?

    DeviceNet转CANopen协议网关(DeviceNet转CANopen

    一,设备主要功能 捷米特JM-DNT-COP网关实现DeviceNet总线和CANopen网络连接起来。本网关连接到DeviceNet总线中作为从站使用,连接到CANopen总线中作为主站
    的头像 发表于 09-10 10:16 442次阅读
    DeviceNet转<b class='flag-5'>CANopen</b>协议网关(DeviceNet转<b class='flag-5'>CANopen</b>)

    风力发电领域canopen转Profinet网关的应用

    在风力发电领域,开疆canopen转Profinet网关KJ-PNG-205的应用案例通常涉及将风力涡轮机内部的CANopen网络与外部的Profinet工业以太网连接起来。这种转换网关允许风力发电场的控制系统通过Profinet协议收集和监控涡轮机的状态信息,同时发送控
    的头像 发表于 08-29 14:28 465次阅读
    风力发电领域<b class='flag-5'>canopen</b>转Profinet网关的应用

    STM32H743怎么在FreeRTOS中移植canopen?

    STM32H743怎么在FreeRTOS中移植canopen?
    发表于 07-03 06:32