RS485能否从机向主机发出请求?冲突如何解决? 点击:5839 | 回复:8



zhaoqm

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:12帖 | 59回
  • 年度积分:0
  • 历史总积分:156
  • 注册:2002年11月17日
发表于:2004-02-27 16:41:00
楼主
请教RS485通信!      RS485是单主多从型网络,   但我要求上位机(PC机)处于等待状态,从机需要通信时发出请求然后由上位机应答回复,   这样就可能会引起总线冲突,不知各位有何高见?   难道要上位机轮询?      modbus是否支持这样的通信方式?      我成功的用过CAN总线,但这里要实现的功能太简单了用CAN好像有点浪费.



GaryLin

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 1186回
  • 年度积分:0
  • 历史总积分:1263
  • 注册:2003年4月15日
发表于:2003-12-24 13:08:00
1楼
一般情形下, 的确是用输询的. 简单好用.

zhaoqm

  • 精华:1帖
  • 求助:0帖
  • 帖子:12帖 | 59回
  • 年度积分:0
  • 历史总积分:156
  • 注册:2002年11月17日
发表于:2003-12-24 13:43:00
2楼
谢谢GaryLin 可是PC机轮询的话可能会造成一些麻烦, 各工作站可能不会同时开机,开机后的实际通信数据量也很少, 基本上开机一后一小时内只需与主机通信一次 (含:从机上电向主机报告状态,通信请求,发送数据) 还有就是485如何处理冲突呢? 多谢!

zhaoqm

  • 精华:1帖
  • 求助:0帖
  • 帖子:12帖 | 59回
  • 年度积分:0
  • 历史总积分:156
  • 注册:2002年11月17日
发表于:2003-12-24 14:07:00
3楼
另外,RS485网是否一定要布成单一串联的总线方式?这样的话,从机设置一总线入口一总线出口,当要拔下某一从站时通信就会中断。 采用带分支的总线方式可靠性会受影响吗?

GaryLin

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 1186回
  • 年度积分:0
  • 历史总积分:1263
  • 注册:2003年4月15日
发表于:2003-12-24 14:35:00
4楼
若是您不考虑效能的话, 可以考虑在 "冲突" (主机无回应) 时, 重传数据. Ethernet 的作法也是当冲突发生时, 随机 delay 一段时间, 然后重传. 直到成功. 您可以在从机的接线点, 作成类似 T 型的接头, 如此拔下从机时, 便不会影响到整个网络. 接成分支时, 比较担心的是信号的反射冲突问题. 或加装 I-7510 或 I-7513 这类 Repeater 或 HUB 来稳定信号即可. http://www.icpdas.com.cn/products/7000/i-7510_c.htm http://www.icpdas.com.cn/products/7000/i-7513_c.htm RS485论坛 http://www.gongkong.com/tech/forum/list46.asp

zhaoqm

  • 精华:1帖
  • 求助:0帖
  • 帖子:12帖 | 59回
  • 年度积分:0
  • 历史总积分:156
  • 注册:2002年11月17日
发表于:2003-12-24 15:19:00
5楼
多谢GaryLin的热心回答, 现在有点事去,有空再好好请教!

zhaoqm

  • 精华:1帖
  • 求助:0帖
  • 帖子:12帖 | 59回
  • 年度积分:0
  • 历史总积分:156
  • 注册:2002年11月17日
发表于:2004-02-18 19:42:00
6楼
我现在项目做得差不多了,用的是轮询的方法,不过还没最终调试,几十台从机连上来还不知道会出什么情况,理论上是没问题的

罗汉

  • 精华:1帖
  • 求助:0帖
  • 帖子:19帖 | 30回
  • 年度积分:0
  • 历史总积分:94
  • 注册:2003年11月13日
发表于:2004-02-27 16:41:00
7楼
当然可以,RS485网络采用主节点轮巡河分节点自主发送相结合的方式,具有通讯线路侦听、自动避障等功能。 某节点在发送数据前先检测RS-485网络上是否有数据,如果检测到网络上没有数据时,先发送一个地址字节,同时检测其接收到的字节与发送的字节是否一致,如果一致则继续发送,如不一致,说明其他节点在发送数据,造成了数据冲突,这时可以停止发送,延时随机一小段时间再进行上述的步骤。

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14392帖 | 54470回
  • 年度积分:0
  • 历史总积分:622
  • 注册:2008年9月08日
发表于:2004-03-17 00:03:00
8楼
各位其实都不规范,正确的做法应该是按令牌总线方式或者TDM时间片。有时我们想来想去,其实别人早就解决过并且形成标准。只是我们看得少而已。

热门招聘
相关主题

官方公众号

智造工程师