请教485 自组网

[复制链接]
 楼主| zhang_shy 发表于 2010-5-21 16:53 | 显示全部楼层 |阅读模式
如题,我现在做的一个产品是用485通信的,要实现自组网,
大概的要求是:多台控制器联网使用时,自动生成一个网络,
其中地址码最小的一个为主机,其余为从机,构成自动控制系统;
如果个别从机故障,自动退出,不影响其余工作,
如果主机故障,自动退出,在其余从机中产生一个新的主机,
组成一个新的系统;
那位兄弟做过这样的网络,谢谢了!
xwj 发表于 2010-5-22 14:03 | 显示全部楼层
为什么非得要个主机呢?
chunyang 发表于 2010-5-23 19:25 | 显示全部楼层
这个要靠协议,且这个协议比较复杂,工艺性要做好不容易。大致思路:设备上电后先侦测总线,判断总线空闲时发出带地址的请求码,如果有主机存在则在主机的响应下进行地址比较,数值大的自动取消主机标识,四轴飞行器存在则自行设置成主机,待其它请求发生后再进行地址比较决定主机权的归属,同时要有冲突规避机制,可以根据本身地址映射一个特定的延时算法。这个协议要编的好,不是初学者有能力搞定的,应该从应用的角度出发,用更简单的方案去解决实际问题。

评分

参与人数 1威望 +1 收起 理由
zhang_shy + 1

查看全部评分

 楼主| zhang_shy 发表于 2010-5-29 10:19 | 显示全部楼层
楼上说的,根据本身地址映射一个特定的延时算法,这个我也考虑过,不过如果是两个地址一样的话就是你说的那个冲突避免机制,不知道该怎么实现。
更简单的方法来说,我想过是人为的干预一下,把其中的一台设为主机,不过这个产品按要求是不能人为干预的。不知道你还有什么高建。谢谢了!!!!!!!
chunyang 发表于 2010-5-29 16:47 | 显示全部楼层
不是本身地址,是ID,必须唯一。
 楼主| zhang_shy 发表于 2010-5-31 14:03 | 显示全部楼层
考虑过每台机器全球唯一ID,感觉不好实现,我的想法是:出厂的时候可以设置成一样的ID,在组网的时候,它能够自己改成不同的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

13

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部