虹科干货 | CANopen协议基础知识——LSS服务

描述

 

CANopen协议概述

 

CANopen是一种架构在CAN串行总线系统上的高层通讯协议,常被用于嵌入式系统与工业控制领域,包括电机控制、机器人制造、医疗、汽车等多个行业领域。本篇文章将主要介绍CANopen的LSS服务。

CANopen

LSS概述

Layer setting service (LSS)是CANopen的设置服务与协议(CiA 305),是具有LSS主功能的CANopen设备通过CAN网络查询或更改CANopen设备上物理层、数据链路层和应用层的三个数据,包括Node_ID、波特率、LSS地址(1018h)。

每个LSS从站都有唯一的LSS地址,其中包含了四个32位子索引的1018h Identity object对象(具体可见CiA301规范)。LSS从站可以处于配置模式和等待模式,LSS主站负责在两个模式之间进行切换。

CAN

LSS协议的消息都是由8个字节组成,其中字节0始终包含服务的命令说明符(CS),同时LSS协议的两个CAN-ID分别为7E57E4

7E5h:用于从 LSS 主站发送至 LSS 从站的消息(请求)。
 

7E4h:用于从 LSS 从站发送至 LSS 主站的消息(响应)。

CANopen

LSS服务

LSS服务主要包括开关状态服务、配置服务、查询服务、识别服务,这里主要介绍开关状态服务和配置服务。

开关状态服务

借助这个服务,LSS主站可以将LSS从站切换成配置模式或者等待模式,在配置模式下才能够对LSS从站设备进行节点ID和波特率的更改,这里主要用到命令符号CS=40h。通过这个服务可以将网络中的所有LSS从站切换为配置模式或者等待模式。

CAN

如果在整个CAN网络当中不想操作所有的LSS从站,那么也可以通过LSS地址中的参数来操作相应的设备,这个时候LSS主站会发送四条消息(如下图),之后相应的从站会切换到配置模式并发送确认。

CAN

配置服务

通过配置服务,LSS主站可以更改并且存储(如果有必要的话)LSS从站节点ID和波特率。

1

配置节点服务

LSS主站向LSS从站发送新节点ID的消息,返回错误代码 00h:没有错误,01h:无效节点。

CAN

2
 

配置波特率服务

LSS主站向LSS从站发送新波特率的消息,返回错误代码 00h:没有错误,01h:波特率不支持,FFh:无效表索引

CAN

其中表索引与波特率的对应关系如下图

CAN

3
 

激活位计时参数服务

LSS 主站使用此命令同时激活网络中所有 LSS 从站的设定波特率,其中Switch delay的单位ms,确保在可能再次发送消息之前,网络中的所有 LSS 从站均具有相同的波特率。从每个 LSS 从站收到此消息之后,其中存储的时间即是允许等待的时间。只有这时才能接受新的波特率,还可以再次等待相同的时间;只有这时 LSS 从站才能再次发送消息。

CAN

4
 

保存配置服务

通过这一服务,LSS主站可以保存重新设定的节点ID和波特率;在执行这一服务的时候LSS主站必须确保网络中只有一个LSS从站处于配置模式。返回错误代码 00h:没有错误,02h:访问非易失存储器失败。

CAN

CANopen

LSS服务示例

目前有一个LSS从站的参数设置节点ID=40h,波特率=1000kBd,现在需要将参数修改如下节点ID=04h,波特率=500kBd。那么将进行以下报文命令操作:

7E5 | 04 01 00 00 00 00 00 00  

将LSS从站切换至配置模式


 

7E5 | 5E 00 00 00 00 00 00 00  

查询LSS从站的节点ID


 

7E4 | 5E 40 00 00 00 00 00 00 

回复节点ID


 

7E5 | 11 04 00 00 00 00 00 00  

将从站节点设置为04h


 

7E4 | 11 00 00 00 00 00 00 00  

从站返回确认


 

7E5 | 13 00 02 00 00 00 00 00  

将LSS从站波特率设置为500kBd


 

7E4 | 13 00 00 00 00 00 00 00  

从站返回确认


 

7E5 | 17 00 00 00 00 00 00 00  

LSS主站发送保存更改命令


 

7E4 | 17 00 00 00 00 00 00 00  

LSS返回确认


 

7E5 | 04 00 00 00 00 00 00 00 

将LSS从站切换至等待模式


 

705 | 00                                    

控制器重启接受新参数

虹科在CAN、CANopen等工业总线通讯领域深耕多年,有着深厚的技术实力,目前已面向国内市场推出了CANopen源代码、CANopen数据记录仪、网关、板卡等产品,并推出了虹科自研的CANopen IO模块,性价比高,货期稳定此外,针对客户在CANopen方面的培训需求,虹科还推出了相关的课程培训服务,欢迎拨打400-999-3848到虹科了解详情。

 

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分