1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > canopen和modbus的区别 – PHP基础 – 前端 php写入指定目录txt文件内容

canopen和modbus的区别 – PHP基础 – 前端 php写入指定目录txt文件内容

时间:2021-06-12 02:38:49

相关推荐

canopen和modbus的区别 – PHP基础 – 前端 php写入指定目录txt文件内容

CANopen作为一种非常实用的通信协议在工控领域非常实用,相对于RS485的MODBUS协议,该协议有速度快,稳定性好的优点。

1, CAN发送数据时,每次是发一个包,每个包还带一个ID,这点和RS485有差别。

2, CANopen是软件协议,是搭建在CAN硬件之上的协议。

3, CANopen和485的modbus类似,都是是一个主站多个从站的形式。主站一般由PLC或者连接CAN模块的PC实现,从站只要有CAN收发器芯片就可以了。

4, CANopen实现最主要的功能有三个,心跳,SDO和PDO。

1)心跳:所有的从站都会按一定的节奏发送一个固定格式的心跳包给主站,主站可以设置一个定时检测,如果一定时间内没有接收到心跳就会判断该从站掉线。

2)SDO:类似MODBUS中的10命令,发送固定格式的CAN数据包,该数据包可以修改其他从站的对象字典(配置参数),从站设备接收到该命令后会有结果返回;

3)PDO:类似主动上传模式,设置完成后,会按照一定延时自动发送,保证传输成功,该功能属于单向传输。

5, 一些名词的解释

1)对象字典:其实就是一个配置列表,每个从站和每个主站都有一个对象字典,对象字典里可以配置该设备如何进行心跳、PDO、SDO等操作。也可以实现自定义参数,比如对象字典某个地址存放小数点的点位,主站通过SDO修改这个地址来修改小数点位。

2)每个从站节点有以下状态:

初始化:上电后对CAN控制器进行初始化

应用层复位:应用程序复位,如开关量模拟量输出的复位

通讯复位:节点的CANopen通讯复位,复位后可以进行CANopen通讯

预操作状态:操作就绪,此时不能进行PDO通信,可以进行SDO参数配置,主站可以进行网络管理

操作状态:CANopen激活,PDO按照对象字典的设置进行传输,SDO也可以传输数据和修改参数

停止状态:主站发送停止状态,PDO通信停止

主站可以通过发送命令让网络中任意一个从站节点进行状态切换。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。