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

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

3天内不再提示

虹科干货 | 最简单实用的CANopen介绍,看完你就明白了(2)

虹科智能自动化 2022-07-14 09:32 次阅读

在上一篇文章中,我们介绍了CANopen协议的基础知识和核心概念,而在本篇文章中,我们将继续讲解CANopen通信基础知识。本系列文章主要介绍CANopen协议的基础内容,包括对象字典、服务、SDO、PDO和主/从站节点等。如需CANopen软硬件解决方案或培训服务,可通过400-999-3848或support@hkaco.com联系虹科工业控制团队!

前文回顾:虹科干货 | 最简单实用的CANopen介绍,看完你就明白了(1)

1

CANopen框架

CANopen frame

为了理解CANopen通信,有必要对CANopen的CAN报文进行分解。如下图,11位的CANID被称为通信对象标识符(COB-ID),它被分成两部分。前4位相当于功能代码,接下来的7位包含节点ID。

b373408e-02d7-11ed-9302-dac502259ad0.png

为了理解COB-ID的工作原理,需要从简单的CANopen网络中如何使用标识符的预定义分配开始。


b38dfc26-02d7-11ed-9302-dac502259ad0.png


如上图,COB-ID(381、581等)与通信服务(传输PDO3、传输SDO等)相关联,因此,COB-ID详细说明了哪个节点正在发送/接收数据,以及使用了什么服务。如下图的例子,一个节点ID为5的CANopen设备将通过11位的CAN ID 585传输SDO,这对应于二进制功能代码1011,节点ID 5(在二进制中为0000101)。


2

CANopen通信协议/服务

CANopen communication protocols/services

接下来,我们将简要介绍CANopen的7种服务类型,以及它们如何利用8个CAN帧数据字节。

1. 网络管理(NMT)

NMT服务用于通过NMT命令(如:启动、停止、复位)来控制CANopen设备的状态(如:预运行、运行、停止)。为了改变状态,NMT主机发送一个带有 CAN ID 0的2字节消息(即功能代码0和节点ID 0)。所有从站节点都处理这个报文。第一个CAN数据字节包含请求的状态,而第二个CAN数据字节包含目标节点的节点ID。节点ID 0表示广播命令。

b3bb83a8-02d7-11ed-9302-dac502259ad0.png

可能的命令包括转换到运行(状态01)、停止(状态02)、预运行(状态80)以及重置应用程序(81)和重置通信(82)。

例如:将节点0x06设置为运行模式:000 01 06

2. 同步(SYNC)

SYNC报文用于同步几个CANopen设备的输入和响应--通常由应用主站触发。应用主机将SYNC消息(COB-ID 080)发送到CANopen网络(带或不带SYNC计数器)。多个从节点可以配置为对SYNC做出反应,并通过传输同时捕获的输入数据或通过与参与同步操作的节点同时设置输出来响应。使用SYNC计数器可以配置几组同步操作的设备。

3. 紧急情况(EMCY)

紧急服务用于设备出现致命错误(如传感器故障)时,允许它向网络的其他部分指示这一点。受影响的节点以高优先级向网络发送单个EMCY消息(例如,节点5的COB-ID 085)。数据字节包含有关错误的信息,可以查找详细信息。

b3e2c88c-02d7-11ed-9302-dac502259ad0.png

4. 时间戳(TIME) [PDO]

通过这种通信服务,可以分配全球网络时间。时间服务包含一个6字节的日期和时间信息。应用主机发送 CAN ID 为100的TIME消息,其中最初的4个数据字节包含以毫秒为单位的午夜之后的时间,接下来的2个字节包含自1984年1月1日以来的天数。

5. 过程数据对象 [PDO]

PDO服务用于在设备之间传输实时数据,例如位置等测量数据或扭矩请求等命令数据。在这方面,它类似于J1939中的广播数据参数。关于PDO服务,我们将在下一篇文章中进行详细介绍。

6. 服务数据对象 [SDO]

SDO服务用于访问/改变CANopen设备的对象字典中的值。例如,当应用主站需要改变CANopen设备的某些配置时,可以通过SDO服务来实现。关于SDO服务,我们将在下一篇文章进行详细介绍。

7. 节点监控(心跳) [SDO]

心跳服务有两个目的:提供一个“活动”的消息和确认NMT命令。NMT从设备周期性地(例如每100毫秒)发送心跳消息(例如节点5的CANID为705),在第一个数据字节中包含节点的“状态”。如果在特定时间限制内没有收到任何消息,心跳消息的“消费者”(例如 NMT 主设备和可选的任何其他设备)就会做出反应。

例如:节点5处于预运行模式,周期性发送:705 7F

b3fd66ce-02d7-11ed-9302-dac502259ad0.png

在下一篇文章中,我们将继续讲解CANopen通信的相关知识,包括对象字典、SDO、PDO等,欢迎关注本公众号以便第一时间获取更新的内容。虹科在CAN、CANopen等领域深耕多年,有着深厚的技术实力,目前已面向国内市场推出了CANopen开发源代码、CANopen数据记录仪,和支持CANopen协议的网关、板卡、IO等产品

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

    关注

    57

    文章

    2744

    浏览量

    463591
收藏 人收藏

    评论

    相关推荐

    培训 | 重磅来袭!波形分析课程全面上线!

    全新升级/技术提升/快速进阶&TG中心波形分析课程主办单位广州电子科技有限公司TechGear免拆诊断中心支持单位英国PicoTechnologyLtd.HongkePico
    的头像 发表于 12-07 01:04 119次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b>培训 | 重磅来袭!波形分析课程全面上线!

    活动回顾 | 波形诊断开放日-上海站圆满落幕!

    HongkePico波形诊断开放日2024年12月2日,Pico联手TechGear免拆诊断中心,在上海欣车汇成功举办首场波形诊断开放日!非常感谢大家远道而来的参与和支持,一起来看看在
    的头像 发表于 12-07 01:04 225次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b>活动回顾 | 波形诊断开放日-上海站圆满落幕!

    活动 | 免费预约享好礼!波形诊断开放日--上海站开启!

    Pico波形诊断开放日【上海站】2024日12月2日主办单位广州电子科技有限公司TechGear免拆诊断中心支持单位英国PicoTechnologyLtd.HongkePico◆
    的头像 发表于 11-22 01:02 104次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b>活动 | 免费预约享好礼!波形诊断开放日--上海站开启!

    万字干货CAN XL研讨会问答,你想知道的都在这里!

    CANXL国际研讨会圆满结束,感谢各位观众的热情参与!携手多位CANXL创始成员及行业领袖,包括来自国际CiA协会、博世、英飞凌以及恩智浦等,带来5场精彩纷呈的主题演讲,让我们
    的头像 发表于 11-16 01:00 449次阅读
    万字<b class='flag-5'>干货</b>!<b class='flag-5'>虹</b><b class='flag-5'>科</b>CAN XL研讨会问答,你想知道的都在这里!

    MODBUS TCP 转 CANOpen

    侧作为从站,在 CANOpen 侧作为主站,可以比较容易实现 Modbus TCP 与 CANOpen 的互连。 (2)应用简单: 用户不用了解复杂的
    的头像 发表于 09-24 13:59 264次阅读
    MODBUS TCP 转 <b class='flag-5'>CANOpen</b>

    干货 轻松掌握PCAN-Explorer 6,dll调用一文打尽!

    导读:PCAN-Explorer 6(下称“PE6”)作为一款专业的CAN/CAN FD网络处理软件,不仅提供强大的报文监控和发送功能,还通过其创新的dll加载功能,为用户带来了更加灵活和高效
    的头像 发表于 08-29 10:00 474次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b><b class='flag-5'>干货</b> 轻松掌握PCAN-Explorer 6,dll调用一文打尽!

    方案 领航智能交通革新:PEAK智行定位车控系统Demo版亮相

    /CANFD信号处理,方案不仅提升了车辆的智能化水平,更在安全性和效率上迈出了革命性的一步。 PEAK智行定位车控系统,通过CAN/CANFD信号实现车辆的精准控制,包括加减速
    的头像 发表于 08-27 09:28 268次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b>方案  领航智能交通革新:<b class='flag-5'>虹</b><b class='flag-5'>科</b>PEAK智行定位车控系统Demo版亮相

    案例|为什么PCAN MicroMod FD是数模信号转换的首选方案?

    精确的信号采集和转换是确保生产效率和质量的关键。PCAN MicroMod FD系列模块,以其卓越的数模信号转换能力,为工程师们提供一个强大的工具。本文将深入探讨如何通过
    的头像 发表于 06-11 15:36 366次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b>案例|为什么PCAN MicroMod FD是数模信号转换的首选方案?

    干货 | 多设备协同无忧:Linux环境下PCAN固定设备ID/通道分配指南

    在车辆网络系统和工业自动化等多设备环境中,确保设备识别的一致性对于维护系统稳定性至关重要。PCAN适配器提供一种解决方案,允许用户在Linux环境下固定设备ID和通道分配,从而不受USB端口
    的头像 发表于 06-11 15:03 452次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b><b class='flag-5'>干货</b> | 多设备协同无忧:Linux环境下PCAN固定设备ID/通道分配指南

    干货丨轻松掌握PCAN-Explorer 6,dll调用一文打尽!

    PCAN-Explorer 6(下称“PE6”)作为一款专业的CAN/CAN FD网络处理软件,不仅提供强大的报文监控和发送功能,还通过其创新的dll加载功能,为用户带来了更加灵活和高效的批量
    的头像 发表于 04-19 10:36 795次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b><b class='flag-5'>干货</b>丨轻松掌握PCAN-Explorer 6,dll调用一文打尽!

    新品 | E-Val Pro Plus有线验证解决方案

    有线验证解决方案E-ValProPlus我们很高兴地宣布,我们将推出全新的E-Val
    的头像 发表于 04-19 08:04 351次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b>新品 | E-Val Pro Plus有线验证解决方案

    干货|HK-TE-200x系列FAQ(一):如何定义EES的VLAN?

    导读:在今天的干货系列中,我们将探讨HK-TE-200x系列交换机中的VLAN配置。VLAN(虚拟局域网)在现代网络架构中扮演着至关重要的角色,它能够帮助我们有效地隔离广播域,提高网络安全性,并
    的头像 发表于 03-04 14:26 396次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b><b class='flag-5'>干货</b>|HK-TE-200x系列FAQ(一):如何定义EES的VLAN?

    知道激光钻孔技术有多牛吗?看完这篇文章明白

    知道激光钻孔技术有多牛吗?看完这篇文章明白
    的头像 发表于 02-29 17:09 942次阅读

    CANopen以太网网关怎么用?

    CANopen以太网网关怎么用? CANopen以太网网关是一种连接CANopen总线和以太网的设备,它提供CANopen网络和以太网之
    的头像 发表于 02-02 16:59 3320次阅读

    分享 | PCAN工具:强大的CAN通讯解决方案,了解多少?

    在当今的汽车和工业自动化领域,可靠的通讯系统至关重要,PCAN工具为这些应用提供强大的支持。本文将介绍
    的头像 发表于 02-02 09:54 822次阅读
    <b class='flag-5'>虹</b><b class='flag-5'>科</b>分享 | PCAN工具:强大的CAN通讯解决方案,<b class='flag-5'>你</b>了解多少?