485总线应用什么协议来实现多机与主机通信?? 点击:3891 | 回复:7



gongkongedit

    
  • 精华:1099帖
  • 求助:0帖
  • 帖子:14392帖 | 54470回
  • 年度积分:0
  • 历史总积分:622
  • 注册:2008年9月08日
发表于:2003-06-26 09:25:00
楼主
我想用485来组网实现多个单片机与后台主机通信,我是一个主机通过232连接到485总线中的多个单片机,并且只有单片机向主机主动发送信息,主机不主动进行查询。。 请问这样的485网络应该怎么来组网,才可以实现多个单片机同时向主机发送信息时不发生冲突?并且数据不会丢失??应该采用什么协议?? 谢谢



小祝

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:4
  • 注册:2003年4月15日
发表于:2003-05-29 23:05:00
1楼
多机通讯,自己解决冲突确实有点累人,我想应该看系统的可靠程度,譬如,如果系统稳定可靠,出错虑少可以用类似于以太网常用的csma/cd 细节确实考虑的比较多,首先是你得考虑两最大节点之间的传播速度,还有系统传输速度来定义的每帧最小帧长,确保可以实现可靠的冲突检测,冲突检测可以自己用帧校验来检测或许其他得方法,这随你,然后就是出错得回退算法,选择也看你。站多了情况下恐怕会很麻烦。 另外就是在系统不是十分可靠和站点较多得情况下可以用环,也就是类似令牌环,这个控制还麻烦些具体你得查书了,我也就知道这么多,呵呵。

GaryLin

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 1186回
  • 年度积分:0
  • 历史总积分:1263
  • 注册:2003年4月15日
发表于:2003-05-30 10:47:00
2楼
以 ethernet 的 碰撞检测 方式来说... 1. 送出信息前得先 listen 网路上是否有信息在传输. 没有时, 才可以送出. 2. 送出后也得 listen, 看看刚才送出的是否有发生碰撞. 有的话得重送. 3. 等待送出或等待重送时, 都要随机 delay 一段时间. delay 的时间不能固定, 以避免网路永远处于碰撞的情形下. 因为 ethernet 的传输速度算很快 10M/100M, 所以这样的方式目前来说效能还不错. 但若用在 485 网络上的话, 以常用的 9.6K ~ 115.2K 来说, 效能可能不太理想. 以 talken-ring 的方式来说, 您还得考虑 ... 1. talken 遭到破坏了, 如何修复 talken? 2. talken 弄丢了, 如何修复 ? 3. talken 卡在某一站台时, 如何修复? ( 拥有 talken 的站台才能发言 ) 这些相关的问题... 肯定是不少的!

GaryLin

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 1186回
  • 年度积分:0
  • 历史总积分:1263
  • 注册:2003年4月15日
发表于:2003-06-04 16:19:00
3楼
Sorry! It is [Token-Ring], not [Talken-Ring]...ccc

kule

  • 精华:1帖
  • 求助:0帖
  • 帖子:5帖 | 20回
  • 年度积分:0
  • 历史总积分:90
  • 注册:2001年11月05日
发表于:2003-06-04 16:54:00
4楼
难题,复杂,"多个单片机同时向主机发送信息时不发生冲突"在485网络上理论上是不可能的,即使收到也是乱码.轮流发送也不见得稳定而且pc端还要分类,与其处理那么多,还不如采用主机查询,节省精力作些别的事情!

kule

  • 精华:1帖
  • 求助:0帖
  • 帖子:5帖 | 20回
  • 年度积分:0
  • 历史总积分:90
  • 注册:2001年11月05日
发表于:2003-06-04 16:54:00
5楼
难题,复杂,"多个单片机同时向主机发送信息时不发生冲突"在485网络上理论上是不可能的,即使收到也是乱码.轮流发送也不见得稳定而且pc端还要分类,与其处理那么多,还不如采用主机查询,节省精力作些别的事情!

yhsu

  • 精华:1帖
  • 求助:0帖
  • 帖子:5帖 | 98回
  • 年度积分:0
  • 历史总积分:126
  • 注册:2002年7月04日
发表于:2003-06-05 09:18:00
6楼
GaryLin大哥,果然厉害:) 这种方案也只有[Talken-Ring]...比较来得快。 不过还是太复杂,可怜这位 linlin

串口方案

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 8回
  • 年度积分:0
  • 历史总积分:8
  • 注册:2003年6月25日
发表于:2003-06-26 09:25:00
7楼
我们有带地址的RS232转RS485设备,可以把每个RS232设备转换成RS485并带一个地址,构成一个有址可寻的RS485网络,并使每个下位机与上位机通信都不会发生冲突,使用方便,不需改变任何设置! 联系方式:ziyc@263.net.cn 13651058485

热门招聘
相关主题

官方公众号

智造工程师