针对“掉包”现象的分析 点击:568 | 回复:0



jjjyyyfff

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 15回
  • 年度积分:0
  • 历史总积分:30
  • 注册:2005年1月15日
发表于:2006-12-05 13:54:00
楼主
工程上也许会出现如下问题:网络连接无误,但上位机上看不到某个现场设备,或者刚组网时运行良好,但过一段时间出现通信中断,无法下达指令,到现场检查设备,无异常,硬件设备OK。
本人分析如下,请各位大拿指教:
1 现场总线是网络化控制,各种总线又不同的通讯协议,而MAC层协议更是通讯协议的核心。如:profibus、FF采用令牌环机制,CAN、Ethernet、LON采用CSMA机制(各总线MAC层协议有所不同),所以,不同类型的总线设备之间的通讯便成为防碍网络间的通讯。
2 当网络上有多个节点,如上百个节点,这时网络上通讯冲突便不可避免。
例如: 
LON总线MAC子层的通信协议为带优先级可预测P-坚持CSMA/CD。在此协议中,网络上任意节点均可以在任意时刻主动地向网络上其它节点发送信息,而不分主从。每个节点要监听通道的状态,当它有信息欲发送,且检测出通道处于空闲状态则发送信息;否则,等待,首先经历一个固定的周期Beta1,如果在Beta1期间内没有检测到通道上有信息发送则确定该通道空闲,接着经历优先级时隙,优先级越高所加的优先级时隙越少;随后再根据网络积压参数BL产生一个随机时隙W’,W’为0到W之间的随机数,W=BL×16。当时延结束时,如果网络仍空闲,节点以概率P=1/W,发送报文。此种方式在负载较轻时使介质访问延时最小化,而在负载较重时使冲突最小化,但不能消除冲突。
 
当某个节点发一个数据包未果而多次进行退避,最后该节点便丢弃该包(尝试256次,根据LON通信规范白皮书)。这样便造成数据的丢失,会出现上位机不能与之正常通信。
解决办法:合理设计该节点的优先级,发包的时间间隔等,降低其他节点的优先级等等。
以上分析本人的一些体会,不知对否,请各位指教。


热门招聘
相关主题

官方公众号

智造工程师