打印
[485通信]

工控机485的奇葩问题 求围观

[复制链接]
2578|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
guanlan12|  楼主 | 2014-3-18 11:12 | 只看该作者
停止位,波特率,数据位都是按照陀螺仪的通信要求设置的。

使用特权

评论回复
板凳
guanlan12|  楼主 | 2014-3-18 11:16 | 只看该作者
另外,我把我的电脑,工控机,还有陀螺仪这三个的485连到一起,在我的电脑上用串口助手发送一个命令,陀螺仪是能反馈回来数据的,串口助手和工控机上的程序都能读到。但是用工控机发送命令,陀螺仪是没有反馈数据的。
这是不是能说明问题是出在工控机的write指令上?

使用特权

评论回复
地板
sjnh| | 2014-3-18 11:28 | 只看该作者
可能是工控机485方向切换出了问题。有可能是陀螺仪接到命令后立即返回数据,但工控机还没有切换485到收的状态,导致数据丢失。而计算机的485设备方向控制是自动的。
你说的工控机有没有这个问题我不了解,我公司产品与其它家工控板(linux系统)通信,我的设备是接到命令后2ms之内一定会返回数据,而对方要求100ms,就是因为方向不能快速切换。
供参考,把陀螺仪返回时间加长,或用示波器观察485总线电平有没有冲突(总线电平在陀螺仪返回数据是翻转不了)

使用特权

评论回复
5
guanlan12|  楼主 | 2014-3-18 14:21 | 只看该作者
sjnh 发表于 2014-3-18 11:28
可能是工控机485方向切换出了问题。有可能是陀螺仪接到命令后立即返回数据,但工控机还没有切换485到收的状 ...

可能是工控机485方向切换出了问题。有可能是陀螺仪接到命令后立即返回数据,但工控机还没有切换485到收的状态,导致数据丢失。而计算机的485设备方向控制是自动的。
我把电脑、工控机、陀螺仪三个都连在了一起,工控机发命令,陀螺仪如果有返回的话,电脑的串口助手肯定能读到的,但是现在读不到。

使用特权

评论回复
6
chunyang| | 2014-3-18 15:43 | 只看该作者
监测一下工控机的指令以及陀螺仪的响应,与能发生正确反应的操作对比一下不就知道了。

使用特权

评论回复
7
sjnh| | 2014-3-18 16:17 | 只看该作者
guanlan12 发表于 2014-3-18 14:21
可能是工控机485方向切换出了问题。有可能是陀螺仪接到命令后立即返回数据,但工控机还没有切换485到收的 ...

如果工控机占着总线、驱动能力又强,陀螺仪驱动能力弱,电脑串口就不一定接收到数据

使用特权

评论回复
8
guanlan12|  楼主 | 2014-3-18 19:54 | 只看该作者
大家看看这两个波形,一样的数据,一个是用电脑的串口助手发的,一个是工控机发的。是不是工控机发的波形有问题啊?没有负值,要怎么解决额?

QQ图片20140318195418.jpg (148.04 KB )

工控机的波形

工控机的波形

QQ图片20140318195428.jpg (164.71 KB )

电脑发的波形

电脑发的波形

使用特权

评论回复
9
guanlan12|  楼主 | 2014-3-18 19:55 | 只看该作者
sjnh 发表于 2014-3-18 16:17
如果工控机占着总线、驱动能力又强,陀螺仪驱动能力弱,电脑串口就不一定接收到数据 ...

波形发上来了,能帮忙看下吗  谢谢了

使用特权

评论回复
10
sjnh| | 2014-3-19 08:37 | 只看该作者
看波形像是总线被占了,可能是工控机没有切换到接收状态,占了总线,陀螺仪的数据无法把总线翻转。

如果你没有方法测量工控机485方向控制器信号,可以这样测试:
在工控机出口A/B线上串2个电阻,例如50欧,而陀螺仪与计算机是直接链接,这样即使工控机占了总线,由于总线上有大电阻,陀螺仪发送数据也能把自己输出口电平翻转了,计算机就能收到;
如果真是这样,那确定是工控机没有及时切换到接收状态。

使用特权

评论回复
11
科技猎人| | 2014-3-19 08:42 | 只看该作者
注意这三个设备是否共地了,485为差分线,大部分情况下不共地也是能正常通信的,但是当两个设备参考地间压差太大时就会影响通信。就像你给出的波形(AB间电压),明明没问题可就是通信不成功。所以485总线,除了要接AB两线外,GND也要连在一起。

使用特权

评论回复
12
guanlan12|  楼主 | 2014-3-19 08:53 | 只看该作者
科技猎人 发表于 2014-3-19 08:42
注意这三个设备是否共地了,485为差分线,大部分情况下不共地也是能正常通信的,但是当两个设备参考地间压 ...

485的电压差不是应该-0.2到-6v表示逻辑0吗?第一个图都是正的,这样对吗

使用特权

评论回复
13
guanlan12|  楼主 | 2014-3-19 09:09 | 只看该作者
sjnh 发表于 2014-3-19 08:37
看波形像是总线被占了,可能是工控机没有切换到接收状态,占了总线,陀螺仪的数据无法把总线翻转。

如果你 ...

我刚把工控机、陀螺仪、电脑三个485连在一起,工控机和陀螺仪的通信正常了,但是只把工控机和陀螺仪连起来却不行。是不是工控机485输出的电压差没有负值的原因?

使用特权

评论回复
14
sgj245609615| | 2014-3-19 10:27 | 只看该作者
工控机端 485总线上建议A加个上拉电阻 B加个下拉电阻

使用特权

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

本版积分规则

1

主题

9

帖子

0

粉丝