CanOpen通讯中SDO的使用问题


参数TxSDO RxSDO 601 581这些参数都是相对于哪边来讲的。

TxSDO和RxSDO都是相对于产生SDO报文的节点来讲的,比如主节点要写数据到从节点,它发出RxSDO(600+ServerID),Rx表示要接收数据的意思,从节点发出TxSDO(580+ClientID),Tx表示要发出数据的意思。

再比如,主节点要读取从节点的数据,它发出TxSDO(600+ServerID),Tx表示要发出数据的意思,从节点响应发出RxSDO(580+ClientID),Rx表示要接收数据的意思。

Tx和Rx都是相对于发出报文的节点自己而言,表示要产生数据还是消耗数据。

600+ServerID始终表示主节点,580+ClientID始终表示从节点。

PDO为CANOPEN通讯中的过程数据对象,数据长度为1-8Byte,包括TxPDO和RxPDO。其中TxPDO和RxPDO为CANOPEN从站发给主站的过程数据,对应PROFIBUS的输入区(I区);RxPDO为CANOPEN主站发送给从站的数据,对应PROFIBUS输出区(Q区)。

在CAN总线的角度来看,一条报文是生产数据的就是带T的,消费者就是带R的。

节点1生产数据到CAN总线,节点2从CAN总线采集数据。节点1需要配置的就是TPDO,节点2需要配置的就是RPDO,CanID必须相同。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM