打印

大家帮我看看这个485的方案是否可行?

[复制链接]
3776|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
summerlee|  楼主 | 2007-2-1 08:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我要做一个项目,最多需要64个485的接点,每个节点的距离很近,不到一米,直接用手拉手的方式连接起来,主从方式,大家看能不能行,节点能不能通信流畅,再就是实时响应速度能不能跟上,最慢的时候要求有1秒能响应就可以了.有经验的大家帮助想想行不行啊...先谢过了..

相关帖子

沙发
sdw001| | 2007-2-1 10:16 | 只看该作者

没太看明白。

“最慢的时候要求有1秒能响应就可以了”,这个1秒是单机反映时间吧。如果是这样就没问题,主要看你的数据量多少了。

使用特权

评论回复
板凳
sharpboy| | 2007-2-1 10:41 | 只看该作者

回复

这个和主机、从机CPU程序处理有关!建议建64栈,先取数,再处理,或用多任也可

使用特权

评论回复
地板
summerlee|  楼主 | 2007-2-2 21:33 | 只看该作者

我说的相应速度的意思是,

我说的相应速度的意思是,当从机采集到有告警信息的时候,主机因为是轮询点名的方式和从机通信,以采集是否有报警信息,考虑到每一个节点的通讯时间和延时,这种告警信息不一定非常快的实时响应,所以产生相应延时,我的最慢的时候要求1秒内能响应过来,不知道能不能实现这一点。。。。

使用特权

评论回复
5
daguang72| | 2007-2-3 08:32 | 只看该作者

一点儿问题没有

使用特权

评论回复
6
cyli1983| | 2007-2-3 08:33 | 只看该作者

我不觉得

hao a  

使用特权

评论回复
7
summerlee|  楼主 | 2007-2-4 03:20 | 只看该作者

因为我以前发现过主机点名从机的时候,需要有个延时

延时多了就影响实时响应的速度了。。但延时少了就有时候出现在某个点名的从机上通信死了的现象,其实我也不知道为什么需要这个延时。。。。

使用特权

评论回复
8
ocon| | 2007-2-6 01:21 | 只看该作者

提高轮询速度的方法,

延时由以下环节决定,都是可以精确计算的:
1.主机将数据写入发送缓冲到数据发完的时间;
2.从机收完数据后比较地址是否相符的时间;
3.从机处理数据的时间;
4.从机将回发数据写入发送缓冲到数据发完的时间;

提高通讯速率可以缩短1.和4.的时间,距离这么近,选好芯片波特率完全可以上兆;选择带有地址检测功能串口的单片机,通过硬件来比较地址可节省2.的时间;改进软件的写法可以大大缩短3.的时间;
以前做过一个抢答器,用的就是485轮询,足够快。

使用特权

评论回复
9
无格| | 2007-2-6 08:20 | 只看该作者

看你的数据位长度,时间主要还是花在发送上

使用特权

评论回复
10
iC921| | 2007-2-6 11:04 | 只看该作者

注意选择轻载芯片

基本的是1UL,另外还有1/2、1/4、1/8UL的。

网络不要接成环形

好象你要求的速度主太高,又是如此短的距离,不用终端电阻吧

使用特权

评论回复
11
fredu| | 2007-2-6 15:12 | 只看该作者

应该没有问题

正常的话没有问题,但是还要看你对节点工况的处理情况了,对那些出现通讯故障的节点的处理方法

使用特权

评论回复
12
summerlee|  楼主 | 2007-2-6 18:28 | 只看该作者

感谢楼上各位,

其实我最担心的是节点通信不正常的情况,我以前搞过个别的产品,距离也很近,手拉手接法,每次上电启动的时候,主机都要发指令点名,从机回复,依此来自测通信是否正常,调试过程中发现,对每个节点通信的时候必须有一个静休的时间,才能保证主机下发的指令从机会正确接收,否则会丢失节点数量,我也不知道这是什么原因,如果节点多了就会影响时实响应速度.各位在这方面帮助分析一下原因,你们是否遇到过这样的问题.

8楼的请问,你做的抢答器,有没有遇到这样的问题,你说的带硬件解释地址的单片机是个什么意思?偶从来没有用过啊...

使用特权

评论回复
13
iC921| | 2007-2-6 19:53 | 只看该作者

每个节点通信的时候必须有一个静休的时间

释放总线,得给人家时间吧。最小呼叫间隔,我没想过它能少。

使用特权

评论回复
14
ocon| | 2007-2-6 22:54 | 只看该作者

这么短的距离,释放总线需要的时间基本可以忽略。

如果你的系统需要的“静休”时间超出你的估算值,说明软件存在BUG。

某些单片机的串口有个功能(例如PIC),利用串口通讯的第九位标明某字节为地址,接收方收到此类字节时自动比对,不同就扔掉,相符才用中断通知单片机有人在点它的名,赶紧来接收处理接下来的数据,这种机制兼顾了响应速度和MCU占用率,平时MCU该干什么干什么,不用每来一个字节都瞎忙一番。

使用特权

评论回复
15
lyqun8002| | 2007-2-7 16:03 | 只看该作者

这要看你的数据量和波特率

这要看你的数据量和波特率,例如波特率为9600,那么一个字节约需要1毫秒,那么64个节点一个发一个字节就需要64毫秒,还不计算主机自主命令,若果字节很长的话,那就有问题了!

使用特权

评论回复
16
leonline| | 2007-2-9 15:49 | 只看该作者

问题不大,而且这是最廉价的方案

应该没有什么问题,注意:
1.硬件设计特别是阻抗匹配,包括想好网络拓扑的结构;
2.软件中时延不是问题,你说的静休我理解就是总线释放转换的时间,一方面为了使总线归零,另一方面给接收方足够时间从上一次中断中出来,特别对于协议比较复杂的应用,几个毫秒足够;
3.协议要尽可能设计精简,能满足将来扩展的前提下尽量短小;

使用特权

评论回复
17
summerlee|  楼主 | 2007-2-10 05:11 | 只看该作者

谢谢讨论

谢谢大家的讨论,我最头痛的就是那个静休时间,14楼的说可能有BUG,可是我检查了那么多就找不出来,而且加点延时就好了。。如果真有BUG,能通过延时就去掉?后边几位讨论的和我的感觉差不多。还有个问题,希望大家给点意见,就是我把每个节点之间的连接的接插件设计成RJ45口的,这样现场施工接线非常方便,但我老担心一天24小时运转着,这种接插件在工业现场用的接触问题,以及上述讨论的净休问题是否会由此而来?大家再讨论讨论啊。。。

使用特权

评论回复
18
leonline| | 2007-2-10 14:06 | 只看该作者

RJ45

可以使用RJ45和超五类线

使用特权

评论回复
19
lyqun8002| | 2007-2-11 09:23 | 只看该作者

没问题

RJ45插头没问题,所有的局域网接头都是RJ45插头;而其网线是4对双绞线,正好适用485的差分信号传输!

使用特权

评论回复
20
summerlee|  楼主 | 2007-2-14 15:33 | 只看该作者

楼上的回答使我信心大增,谢谢了昂....

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

62

主题

150

帖子

1

粉丝