资讯动态 / NEWS

热门文章 / Hot articles

公司资讯

CANopen模块的服务数据对象SDO协议是什么?

来源:yy9728见好就收 发表时间:2020-03-19 访问量:514

CANOPEN的SDO协议用于设置和从远程设备的对象字典中读取值。访问对象字典的设备是SDO服务器,访问远程设备的设备是SDO客户端。通讯始终由SDO客户端启动。下面由CANOPEN模块厂家无锡9728见好就收自动化为大家先容一下服务数据对象SDO协议。

在CANopen术语中,从SDO服务器查看通信,以便从对象字典中进行读取会导致SDO上传,而对字典条目的写入即是SDO下载。

因为对象字典值可以大于CAN帧的八个字节限制,所以SDO协议实现了对较长消息的分段和反分段。实际上,有两种协议:SDO下载/上传和SDO块下载/上传。SDO块传输是标准的更新版本,它允许以较少的协议开销传输大量数据。

可以在对象字典中设置从客户端到服务器以及从服务器到客户端的各个SDO传输消息的COB-ID。在对象字典中可以在地址0x1200-0x127F上最多设置128个SDO服务器。同样,可以使用变量0x1280-0x12FF来配置设备的SDO客户端连接。但是,预定义的连接集定义了一个SDO通道,即使在启动后(处于预操作状态)也可以使用该SDO通道来配置设备。该通道的COB-ID为0x600 +用于接收的节点ID和0x580 +用于发送的节点ID。

CANopen模块的服务数据对象SDO协议是什么?

要启动下载,SDO客户端会在CAN消息中使用SDO通道的“接收” COB-ID发送以下数据。

字节1

字节2-3

字节4

字节5-8

3位元

1位元

2位元

1位元

1位元

2字节

1个字节

4字节

ccs = 1

保留(= 0)

n

e

s

索引

子索引

数据

ccs是SDO传输的客户端命令说明符,对于SDO段下载为0,对于SDO段下载为1,对于启动下载为2,对于启动SDO段上传,为3为SDO段上传,4为中止SDO传输,5为SDO块上传,6 SDO块下载

n是消息的数据部分中不包含数据的字节数,仅当设置了e和s时有效

e(如果已设置)表示加急传输,即,所有交换的数据都包含在消息中。如果清除此位元,则消息是分段传输,其中数据不适合一条消息,而使用多条消息。

s(如果已设置)表示在n(如果已设置e)或消息的数据部分中指定了数据大小

index是要访问的数据的对象字典索引

subindex是对象字典变量的子索引

数据包含在快速传输(设置为e)的情况下要上传的数据,或要上传的数据的大小(设置为s,未设置e)

以上便是CANopen模块的SDO协议的先容,了解更多关于CANOPEN模块、DEVICENET模块作用等等9728见好就收才会赢常识,欢迎大家前往CANOPEN主站模块厂家无锡9728见好就收自动化公司。

 


相关标签: 远程io模块图片 , canopen扩展模块 , canopen模块接口

XML 地图 | Sitemap 地图