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

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

3天内不再提示

CANopen通信系统基础知识科普

jf_13721959 来源:jf_13721959 作者:jf_13721959 2022-04-25 08:48 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在阅读有关CAN总线的文章时,你肯定会遇到“CANopen”这个词,它其实是一个基于CAN 的通信系统。CANopen 在基本术语中可以定义为在CAN 总线传输数据时使用的通信语言。发送者和接收者对数据信息的定义需要遵循共同的标准。

与CAN 总线底层协议包含物理层和数据链路层相比,CANopen 则是包含网络层、传输层、会话层、表示层、应用层这五个层次的高层协议。

poYBAGJlKfWAXcFbAAA9yUwCEcw163.png

在CAN总线上这些协议层之间都是独立的。

在CAN总线上这些协议的功能描述如下:

分层定义 功能
网络层 路由和寻址
传输层 可靠的端到端传输
会话层 同步
表示层 编码与表示
应用层 描述如何配置、传输和同步
CANopen设备

尽管CAN 总线已经成功的应用在很多行业,但是为了让它能够应用在更多的领域,CANopen 被设计出来。最初CANopen 是为面向运动的机器控制系统设计的,如今它在各个领域都得到了应用,例如:

Robotics(机器人

Medical equipment(医疗设备)

Stepper and servo motors(步进电机伺服电机

Food processing(食品加工)

Automation(自动化)

Off-road vehicles(非公路车辆)

Marine electronics(船用电子设备)

Railway application(铁路应用)

Building automation(建筑自动化)

Mechanical manufacturing(机械制造

Industrial machinery(工业机械)

Security monitoring(安防)

CANopen 使设计人员能够执行各种功能,使CAN 总线更适合于嵌入式网络应用,如车内网络。它提供了高度灵活的配置功能。使用CAN-open,能够做到:

实现设备网络行为

影响和控制网络行为

沟通和处理数据

设备内部故障提示

设备能够点对点通信

定义内部设备结构

允许数据速率在10kbps-1000kbps 间调整

CANopen 的内部设备结构有三个主要的逻辑部分:

协议栈 ●通过CAN n/w处理通信
应用软件 ●支持内部控制功能
●为硬件提供接口
对象字典 ●CANopen设备的配置和诊断是最重要的
●接口协议以及应用软件
●涵盖所有的使用数据类型
●存储所有的交流参数和申请参数

CANopen 消息帧格式: CANopen 的消息帧格式和CAN总线的相似。它包含了的COB-ID 和控制位,为了避免和CAN 总线的COB-ID 冲突,所有的COB-ID 均不相同。

pYYBAGJlKi6AFEe4AABTYwHCVbE700.png

CANopen 协议:

一个CANopen协议栈实现几个CANopen COB与对应速率的CANopen 通信。CANopen 协议由以下部分组成:

数据对象服务协议(SDO)

pYYBAGJlKkCAL6KeAAAP1NGG7E4840.png

SDO服务使CANopen节点能够通过CAN网络读取、编辑、更改或访问另一节点对象字典的值

这是一种确认的通信服务,由两个具有不同CAN标识符的CAN数据帧组成

在以CAN为传播媒介上建立两个CANopen设备之间的对等“客户端-服务器”的通信Server(服务端): 访问对象字典的所有者Client(客户端): 访问对象字典并启动与专用SDO“服务器”通信的设备

尽管SDO 非常灵活,但OVERHEAD 的存在使其不太适合实时数据操作。为了解决这个问题,使用了进程数据对象协议。

进程数据对象协议(PDO)

poYBAGJlKl-AMwTMAAALysH8KII049.png

PDO 通常被视为一个重要的CANopen 协议,因为它承载了大量的信息

CANopen 使用进程数据对象(PDO)跨CANopen 节点在实时操作数据中传播高优先级控制和状态信息

PDO 由单个CAN 帧组成,可在单个帧内仅传送多达8字节的应用程序数据,其中包含多个对象参数值Producer(生产者): 它产生要传输到主机的数据Consumer(消费者):这里的主机就是消费者。它从生产者那里接收数据

网络管理协议(NMT)

NMT 服务定义CANopen 设备的通信方式。在接收到NMT 协议时,CANopen 设备被迫转换到命令的NMT 状态。NMT 状态机包括:

初始化状态(设备在通电或复位后进入初始化状态)

预运行状态

运行状态

停止状态

NMT 协议发送单个CAN 帧,数据长度为2字节,CAN ID为0。它包含命令标识符/功能代码(第一位),它代表请求状态,对于NMT,如果将其设置为显性状态0,则所有节点都必须执行该命令。节点ID——作为指定的名字,包含需要遵守状态转换命令的模块ID。

在NMT中,模块需要使用SDO协议操作,因为PDO仅在操作状态下才可运作。

特殊功能协议

为了产生特定的网络行为,CANopen提供了三种特定的协议:

Synchronisation Protocol(同步协议):该协议允许同步多个设备。同步生成器或应用程序主机定期传输同步协议。根据预定义的连接设置,同步消息映射到单个CAN 帧,COB ID 为80h。(它不携带数据(DLC=0))

Emergency Protocol(应急协议):任何内部设备错误都会触发应急协议。在这种情况下,紧急消息由故障设备发送。每个错误事件只传输一次。故障设备使用将CAN标识符COB ID 80h+(节点ID)分配给紧急消息的功能。如果CAN总线上的设备没有新的错误,则不会继续传输此类消息

Time-stamp protocol(时间戳协议):允许CANopen系统的用户调整特定的网络时间,该时间戳映射到一个CAN帧,该帧具有6字节的数据。这6个字节中最初的4个字节代表“一天之中的时间”信息,4个字节存储的都为毫秒信息,接下来的2个字节则为1984年1月1日0点这个数据信息。默认情况下,关联的CAN帧预设值为CAN标识符100h。

错误控制协议:监听CANopen 网络

Heartbeat Protocol(防断连协议):防断连协议验证其可用性及NMT 有限状态自动化(FSA)。对于CANopen 中的所有网络。防断连信号循环传输,以确认防断连发生器的可用性。

Boot up protocol(启动协议):这表示一种独特类型的错误控制协议。在进入NMT FSA 预运行状态之前,它将作为NMT FSA 状态初始化中的最终操作进行传输。接收到此消息表示

新设备已注册到CANopen 网络

更改网络设置(当有新设备添加到CANopen 时)

它可以被认为是CANopen 网络中出现错误情况的标志

审核编辑:汤梓红

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

    关注

    145

    文章

    2020

    浏览量

    134686
  • 通信系统
    +关注

    关注

    6

    文章

    1247

    浏览量

    54967
  • CANopen
    +关注

    关注

    8

    文章

    456

    浏览量

    47583
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    科普通信射频接头学习

    科普通信射频接头学习
    的头像 发表于 08-19 17:09 730次阅读
    <b class='flag-5'>科普</b>|<b class='flag-5'>通信</b>射频接头学习

    汽车生产中的测试台连接 – EtherCAT 转CANopen高效的网关通信

    汽车生产中的测试台连接 – EtherCAT 转CANopen高效的网关通信
    的头像 发表于 05-20 11:43 382次阅读
    汽车生产中的测试台连接 – EtherCAT 转<b class='flag-5'>CANopen</b>高效的网关<b class='flag-5'>通信</b>

    CANopen转Profinet网关,AGV可以无缝地与工厂的控制系统集成

    在自动化引导车(AGV)行业中,将CANopen协议转换为Profinet协议的网关应用案例通常涉及系统集成:AGV系统通常由多个设备组成,包括车辆本身、充电站、调度系统等。这些设备可
    的头像 发表于 05-10 15:55 407次阅读
    <b class='flag-5'>CANopen</b>转Profinet网关,AGV可以无缝地与工厂的控制<b class='flag-5'>系统</b>集成

    效果器的基础知识

    电子发烧友网站提供《效果器的基础知识.doc》资料免费下载
    发表于 03-26 14:30 6次下载

    EtherCAN转CANopen网关:一键升级通信效率!

    兴达易控EtherCAN转CANopen网关XD-ECCOM20是现代工业自动化系统中不可或缺的重要设备,它能够有效实现EtherCAT网络与CANopen协议之间的无缝通信。本文将从
    的头像 发表于 03-22 12:32 599次阅读
    EtherCAN转<b class='flag-5'>CANopen</b>网关:一键升级<b class='flag-5'>通信</b>效率!

    EtherCAN转CANopen网关,轻松搞定通信难题!

    在现代工业自动化和通信领域,兴达易控EtherCAN转CANopen网关XD-ECCOM20扮演着至关重要的角色。EtherCAN是一种高速现场总线协议,广泛应用于汽车电子、工业控制等领域;而CANopen则是一种基于CAN总线
    的头像 发表于 03-22 11:42 580次阅读
    EtherCAN转<b class='flag-5'>CANopen</b>网关,轻松搞定<b class='flag-5'>通信</b>难题!

    【北京迅为】iTOP-RK3568OpenHarmony系统南向驱动开发GPIO基础知识

    【北京迅为】iTOP-RK3568OpenHarmony系统南向驱动开发GPIO基础知识
    的头像 发表于 03-06 11:23 1008次阅读
    【北京迅为】iTOP-RK3568OpenHarmony<b class='flag-5'>系统</b>南向驱动开发GPIO<b class='flag-5'>基础知识</b>

    功率器件热设计基础知识

    功率器件热设计是实现IGBT、碳化硅SiC等高功率密度器件可靠运行的基础。掌握功率半导体的热设计基础知识,不仅有助于提高功率器件的利用率和系统可靠性,还能有效降低系统成本。本文将从热设计的基本概念、散热形式、热阻与导热系数、功率
    的头像 发表于 02-03 14:17 1252次阅读

    储能科普之电池基础知识

    利用这段时间给大家整理了五期储能基础知识的分享。 1、电池储能系统ESS/BESS 电池储能系统(Energy Storage System / Battery Energy Storage
    的头像 发表于 01-27 17:37 2543次阅读
    储能<b class='flag-5'>科普</b>之电池<b class='flag-5'>基础知识</b>

    PCB绘制基础知识

    电子发烧友网站提供《PCB绘制基础知识.pdf》资料免费下载
    发表于 01-21 15:20 8次下载
    PCB绘制<b class='flag-5'>基础知识</b>

    储能科普(二)3S系统详细介绍

    上一期,小固分享了《储能科普(一)电池基础知识》, 本期小固分享储能系统里的“3S系统”。 所谓“3S系统”指的就是储能
    的头像 发表于 01-13 09:21 4996次阅读
    储能<b class='flag-5'>科普</b>(二)3S<b class='flag-5'>系统</b>详细介绍

    EMC基础知识-华为

    EMC基础知识-华为
    发表于 01-06 14:09 5次下载

    射频芯片基础知识科普

    无线通信系统中,一般包含有天线、射频前端、射频收发模块以及基带信号处理器四个部分。随着5G时代的,天线以及射频前端的需求量及价值均快速上升,射频前端是将数字信号向无线射频信号转化的基础部件,也是
    的头像 发表于 12-31 13:50 1480次阅读
    射频芯片<b class='flag-5'>基础知识</b><b class='flag-5'>科普</b>

    万字长文,看懂激光基础知识

    深入介绍激光基础知识,帮助您轻松理解激光领域的关键概念和原理。
    的头像 发表于 12-20 09:49 2098次阅读
    万字长文,看懂激光<b class='flag-5'>基础知识</b>!

    华为-射频基础知识培训

    课程目标z 熟悉和掌握射频基本概念和知识z 了解无线射频系统结构z 了解天馈系统的概念和知课程内容第一章 无线通信的基本概念第二章 射频常用计算单位简介第三章 射频常用概念辨析第四章
    发表于 12-10 13:39 1次下载