以太网传输速度快,数据量又大,为什么我看到工程机械系统里全都是以CAN总线来进行通信,这种场合下,CAN总线的优点比以太网好在哪里?
最佳答案
CAN总线的特点是没有主站和从站之分的,他是利用报文的头来定义接收对象的,就是1个报文,既可以只有一个接收对象,也可以有多个对象,甚至是全部对象,
他的原理是,想发送数据的对象,在发送前,先检查总线上是否有人在发送,如果有,则要等,如没有则就可以发送
但如果在一个时刻的2个站,都想发送数据,但检查总线的时候,总线是空闲的,则大家都开始往总线上发送数据,但由于2个站都发送数据,势必会造成数据混乱,这也叫碰撞,
那么以太网技术的,那么这两个站的数据,大家都要报废,然后内部有一个延时,延时后,其中一个再重发
但CAN总线不是,在同一时刻,虽然有2个站都在发,但CAN的报文有优先级别的,就是优先级别高的报文,会继续发送,并且不会破坏报文的数据,优先级别低的报文,就不行了,要等高级别的报文发送完毕后,在开始发送
那么CAN是怎么做到2个站同时发送时,高级别的优先,并且发生碰撞时,高级别的数据不会报废呢,
就是CAND报文头有一个报文识别码,说简单点就是发送由1和0组成的报文头,
假设A设备的报文头是00001111
B设备的报文头是 00011000
则A的报文优先级比B的高,为什么呢
因为我们同时往一个总线上发送1和0,那么此时总线上得到的逻辑电平应该为0
CAN总线上的通信设备,是边发送,边监听的,
就是A发送一个0后,他会检查总线上的电平是否是0,如果是0则继续发,如果是1,说明有更高优先级别的报文出现,那么A将停止发送
直到总线空闲后,重新发送
那么CAN的优点就是,能保证最重要的报文优先传送,这对于汽车上面,或者设备上面有关安全方面的报文能第一时间得到处理,
提问者对于答案的评价:
谢谢
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc250865.html