打印

求助485中线缆电阻等通讯问题

[复制链接]
3603|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
864|  楼主 | 2011-1-24 20:29 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 864 于 2011-1-24 23:00 编辑


说明:
如上图所示,两块板子和PC通讯,被设置为1#的板子会每200MS主动发出0x11,2#板子收到0x11后发出0x22
。1#板A\B上无上、下拉电阻,2#板A\B上都有10K上、下拉电阻,两端无终端电阻,两两位置间线距2-3米
左右。波特率19200,7-E-1。
问题:
一、1#位的板子设置成1#板,2#位的板子设置成2#板:
PC端收不到任何数据,断掉2#板的电源,PC端正常接收1#板发出的数据。
二、1#位的板子设置成2#板,2#位的板子设置成1#板:
PC端都能收到1#板发出的数据,不会出现上述第一种情况,但是PC端只能收到1#板的数据,而不像预想的
能收到两块板子的数据。
补充:
一、通讯线缆用的是普通的4芯单屏蔽线,我选取了其中两跟来用。
二、在现场另外一个房间上述通信方式可以用,但在此房间内通讯失效。两处主要差异在于可行的房间内
线缆长度间距大约有10米,上下拉电阻不同(早期贴在板子上,当时没考虑用485,同事们也没告诉我电阻
具体怎么选取,都说有没有都一样用),其他条件相同。
三、今天现场没有示波器,无法提供信号情况。明天准备带示波器过去,请前辈们看看问题主要原因会在
什么方面,我好去有针对性的排查,现场工具不全,不提前做好准备我去了就白忙活了。先谢谢了!

补充电路图:

相关帖子

沙发
chunyang| | 2011-1-24 22:01 | 只看该作者
终端电阻是必须的,短距时也至少要加一端,一定距离后两端都必须加,另外上下拉偏置电阻必须正确选择,根据200mV的门限计算。

使用特权

评论回复
板凳
mmax| | 2011-1-24 22:05 | 只看该作者
看情况每块板子的通讯信号应该和板子没有做隔离。
1#和2#板子的是怎么供电的?
1#和2#还有电脑的GND应该存在比较大的电压差,导致差分的485信号异常。

使用特权

评论回复
地板
864|  楼主 | 2011-1-24 22:21 | 只看该作者
2# chunyang
谢谢,“一定距离”大概在什么距离。我加上终端也存在这种情况,因为同房间内还有一套三块板在一起的是有终端电阻的,现象一样。

使用特权

评论回复
5
864|  楼主 | 2011-1-24 22:25 | 只看该作者
3# mmax
谢谢。是指哪个通讯信号的隔离?485芯片本身带的那个隔离?电源都是房间内220插座的。

使用特权

评论回复
6
chunyang| | 2011-1-24 22:33 | 只看该作者
楼主最好贴出电路。

使用特权

评论回复
7
mmax| | 2011-1-24 22:34 | 只看该作者
那会不会是2#一直处于发送状态,将总线嵌位了。
所以才有情况1,2#断电后才能收到1#站的数据。

试试检查一下2#站485芯片的接受发送状态信号电平,是发送还是接受。试试改为一直接受,看情况1是否改正了。

使用特权

评论回复
8
chunyang| | 2011-1-24 22:35 | 只看该作者
楼上所言,测一下总线电平即可获知。

使用特权

评论回复
9
864|  楼主 | 2011-1-24 22:40 | 只看该作者
6# chunyang
电路家里没有,打印稿倒是有的,我先用PROTEL照着画一下吧

使用特权

评论回复
10
864|  楼主 | 2011-1-24 23:03 | 只看该作者
8# chunyang
已经在1楼贴出电路图了

使用特权

评论回复
11
864|  楼主 | 2011-1-24 23:06 | 只看该作者
7# mmax
恩,明白你的意思,明天我去测一下。不过在这两种情况后我又在1#位换了块另一个房间已经成功的板子测试第二种情况,出来的情况却又等同于情况一。

使用特权

评论回复
12
iC921| | 2011-1-25 00:37 | 只看该作者
才两三米,找根电话线来拨出线芯,自己绕一会就绕出一条漂亮的双绞线了。

这种情况,屏蔽的作用远不如双绞作用大。

另外,好象你是说只有站号为1#时通讯才通,似乎是软件或别的地方有问题。不知道是不是这样?

使用特权

评论回复
13
iC921| | 2011-1-25 00:38 | 只看该作者
上下拉电阻是为了保证首位通讯值正常而设,不知道你的阻值是是否有问题

使用特权

评论回复
14
864|  楼主 | 2011-1-25 08:43 | 只看该作者
12# iC921
谢谢,起初也怀疑是软件问题,不过现场另一个地方能用后,晚上我又带回公司试验也可以用,就先排除这个原因了。

使用特权

评论回复
15
handlike| | 2011-1-25 10:23 | 只看该作者
(1)1#和2#发送完都应处于接收状态。
(2)波特率降下来再试,考虑到232转485模块的供电功率跟不上。
(3)一个发送完延长几个NOP再转到接收状态。 
(4)每块板子都单独用电脑发送接收可以测出各板子是否软硬件正常。

使用特权

评论回复
16
sun0_liang| | 2011-1-25 16:36 | 只看该作者
RS485居然调不通,真是菜鸟!
线距2-3米左右。波特率19200,7-E-1 这样子的通讯条件要求真的不高啊!
首先先把你的电阻改成 1K欧(上拉和下拉) 和 510欧(终端电阻1个 2个 都行),基本上2、3米的距离,19200这个速度的波特率也真的不算快。
第二:多设备信号地有比较大的压差,可以通过把地短路的方法来调试。
       如果短路后发生漏电保护器动作或者设备芯片烧毁等,那就是存在这个问题了。
       如果通讯成功,那么说明你的信号地设计的水平很烂(或者是你们公司系统设计人员的)。
第三:在看看你的 几个通讯芯片的 方向控制 有没有问题。
第四:程序与软件写的很烂。查一查吧。。
第五:现场电磁兼容环境绝了,共模差模淹没了你的世界。比如说:原子弹爆炸了。。。

15楼说的怪好了,像供电功率这些 这些细节的 也要注意哦。
ps:(3)一个发送完延长几个NOP再转到接收状态。  ——有的芯片需要延时1个位,有的不需要。延时几个nop其实没啥必要了。谢谢。

使用特权

评论回复
17
sun0_liang| | 2011-1-25 16:37 | 只看该作者
假如是第二条的原因 那么在正常长期使用中是否可以短路 要看具体的情况。

使用特权

评论回复
18
qiangdao| | 2011-1-25 17:50 | 只看该作者
sadd

使用特权

评论回复
19
qiangdao| | 2011-1-25 17:52 | 只看该作者
觉得是2#的程序有问题;能否确定2#是否真的收到1#接收到的信号。
板级之间能否都能通讯。

使用特权

评论回复
20
iC921| | 2011-1-25 18:39 | 只看该作者
用示波器看一下各收发器的数据输入端和输出端,看看有没有波形。

使用特权

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

本版积分规则

864
个人签名:每天定心一小时!

18

主题

239

帖子

0

粉丝