关于485通信不稳定问题解决方案[STM32产品问题]
485通讯不稳定的问题(具体表现为有时能通讯上,有时通讯不上)
RS485在连接设备过多、通讯距离过长、双绞线质量差,接线不规范等,都会导致通讯不稳定的问题。
解决方案:
一、关于485总线的几个概念:
1、485总线的通讯距离可以达到1200米。
根据485总线结构理论,在理想环境的前提下,485总线传输距离可以达到1200米。其条件是通讯线材优质达标,波特率为9600,只负载一台485设备,才能使得通讯距离达到1200米,所以通常485总线实际的稳定的通讯距离往往达不到1200米。如果负载485设备多,线材阻抗不合乎标准,线径过细,转换器品质不良,设备防雷保护复杂和波特率的提高等等因素都会降低通讯距离。
2、485总线可以带128台设备进行通讯。
其实并不是所有485转换器都能够带128台设备的,要根据485转换器内芯片的型号和485设备芯片的型号来判断,只能按照指标较低的芯片来确定其负载能力。一般485芯片负载能力有三个级别――32台、128台和256台。。此外理论上的标称往往实际上是达不到的,通讯距离越长、波特率越高、线径越细、线材质量越差、转换器品质越差、转换器电能供应不足(无源转换器)、防雷保护越强,这些都会降低真实负载数量。
3、485总线是一种最简单、最稳定、最成熟的工业总线结构
这种概念是错误的。485总线是一种用于设备联网的、经济型的、传统的工业总线方式。其通讯质量需要根据施工经验进行调试和测试采可以得到保证。485总线虽然简单,但也必须严格按照安装施工规范进行布线。
二、必须严格按照施工规范施工
在485总线系统施工时必须严格按照施工规范施工,特别应注意下面几点。
1、485+和485-数据线一定要互为双绞。
2、布线一定要布多股屏蔽双绞线。多股是为了备用,屏蔽是为了便于出现特殊情况时调试,双绞是因为485通讯采用差模通讯原理,双绞的抗干扰性较好。不采用双绞线是错误的。
3、485总线一定要用手牵手式的总线结构,坚决避免星型连接和分叉连接。
4、设备供电的交流电及机箱一定要真实接地,而且接地良好。有很多地方表面上有三角插座,其实根本没有接地,接地良好可以防止设备被雷击、浪涌冲击。静电累积时可以配合设备的防雷设计较好地释放能量,保护485总线设备和相关芯片不受伤害。
5、为避免强电对其干扰,485总线应避免和强电走在一起。
三、推荐几种调试方法:
在调试前首先要确保设备接线正确,且施工合乎规范。可以根据遇到的问题采用下面几种调试方法。
1、共地法: 用1条线或者屏蔽线将所有485设备的GND地连接起来,这样可以避免所有设备之间存在影响通讯的电势差。
2、终端电阻法: 在最后一台485设备的485+和485-上并接120欧姆的终端电阻来改善通讯质量。
3、中间分段断开法: 通过从中间断开来检查是否设备负载过多、通讯距离过长、某台设备对整个通讯线路的影响等。
4、单独拉线法: 单独简易拉一条线到设备,这样可以用来排除是否是布线引起了通讯故障。
5、更换转换器法: 随身携带几个转换器,这样可以排除是否是转换器质量问题影响了通讯质量。
6、笔记本调试法: 先保证自己随身携带的电脑笔记本是通讯正常的设备,用它来替换客户电脑进行通讯,如果正常,则表明客户的电脑的串口有可能被损害或者受伤。
四、建议和忠告
采用485总线结构常见的几种通讯故障有下面几种。
1、通讯不上,无反应。
2、可以上传数据,但不可以下载数据。
3、通讯时系统提示受到干扰,或者不通讯时通讯指示灯也不停地闪烁。
4、有时能通讯上,有时通讯不上,有的指令可以通,有的指令不可以通。
为减少通信故障提出下面几条建议和忠告供参考。
1、建议用户使用和购买门禁厂家提供的485转换器或者厂家指定推荐品牌的485转换器。
2、门禁厂家会对与其配套的485转换器做大量的测试工作,并且会要求485转换器生产厂家按照其固定的性能参数进行生产和品质检测,所以它与门禁设备具备较好的兼容性。千万不要贪图便宜购买杂牌厂家的485转换器。
3、严格按照485总线的施工规范进行施工,杜绝任何侥幸心理。
4、对线路较长、负载较多的485总线工程采用科学的、有预留的解决方案。
5、如果通讯距离过长, 如超500米,建议采用中继器或485HUB来解决。
6、如果负载数过多,如一条总线上超过30台,建议采用485HUB来解决问题。
7、现场调试带齐调试设备。现场调试一定要随身携带几个可以接长距离和多负载的转换器、一台常用的电脑笔记本、测试通路断路的万用表,几个120欧姆的终端电阻。
PS:理论和实践总是有差距的,理论只是一个参考,具体的项目应用中,要在不违背基本理论的前提下,具体问题具体分析!
在各种现场中,485总线应用的非常的广泛,但是485总线比较容易出现故障,现在将485总线容易出现故障的情况并且可以排除这些故障的方法罗列如下:
1.由于485信号使用的是一对非平衡差分信号,意味485网络中的每一个设备都必须通过一个信号回路连接到地,以减少数据线上的噪音,所以数据线最好由双绞线组成,并且在外面加上屏蔽层作为地线,将485网络中485设备连接起来,并且在一个点可靠接地。
2.在工业现场当中,现场情况非常复杂,各个节点之间存在很高的共模电压,485接口使用的是差分传输方式,有抗共模干扰能力,但是当共模电压大于+12V或者小于-9V时,超过485接收器的极限接收电压。接收器就无法工作,甚至可能会烧毁芯片和一起设备。可以在485总线中使用深圳市富永通科技有限公司的485光隔离中继器,将485信号及电源完全隔离,从而消除共模电压的影响。
3.485总线随着传输距离的延长,会产生回波反射信号,如果485总线的传输距离如果超过100米,建议施工时在485通讯的开始端和结束端120欧姆的终端电阻。相关接线方法可以参考网页:120欧姆电阻的接法.
4.485总线中485节点要尽量减少与主干之间的距离,一般建议485总线采用手牵手的总线拓扑结构。星型结构会产生反射信号,影响485通信质量。如果在施工过程中必须要求485节点离485总线主干的距离超过一定距离,使用深圳市富永通科技有限公司的485中继器可以作出一个485总线的分叉。如果施工过程中要求使用星型拓扑结构,可以使用深圳市富永通科技有限公司的485集线器可以解决这个问题。
5.影响485总线的负载能力的因素:通讯距离,线材的品质,波特率,转换器供电能力,485设备的防雷保护,485芯片的选择。如果485总线上的485设备比较多的话,建议使用带有电源的485转换器,无源型的485转换器由于时从串口窃电,供电能力不是很足,负载能力不够。选用好的线材,如有可能使用尽可能低的波特率,选择高负载能力的485芯片,都可以提高485总线的负载能力。485设备的防雷保护中的防雷管会吸收电压,导致485总线负载能力降低,去掉防雷保护可以提高485总线负载能力。如果在现场施工中,相关的因素不能改变,建议使用深圳市富永通科技有限公司的485中继器或者485集线器来提供485总线的负载能力。
关于485通信不稳定问题解决方案[STM32产品问题]的更多相关文章
- 485通信——驱动 MX64/MX28 舵机
背景:在使用STM32调试MX64舵机时,由于控制该舵机需要采用RS485通信协议,因此需要从单片机的串口经过一个TTL转485通信的模块再与舵机进行通信. 485通信特点: 485通信采用差分信号: ...
- 4位或者5位led数码显示,485通信modbus,支持任意小数点写入,工业标准设置,可和plc,dcs,组态完美对接,支持定制修改
MRD-5030具有4位8段数码管,支持通过工业标注协议Modbus(Modbus-RTU)控制显示,支持任意小数点的显示.数据以半双工方式通信.电源端口和通信端口都具有防浪涌,防雷600W保护,能够 ...
- docker - 由于docker swarm子网与host机器网络冲突导致的container通信问题的解决方案
背景 近期,公司网络要迁移到新的网段,所以原来在服务器上面搭建的docker swarm需要重新构建... 拿到新的服务器地址看了一下,“10.xxx.xxx.xxx" ... 纳尼,这IP ...
- 串口RS232和485通信的波形分析
一.串行数据的格式 异步串行数据的一般格式是:起始位+数据位+停止位,其中起始位1 位,数据位可以是5.6.7.8位,停止位可以是1.1.5.2位. 起始位是一个值为0的位,所以对于正逻辑的TTL电平 ...
- iOS9 HTTP 通信报错解决方案
UIWebView *myview = [[UIWebView alloc] initWithFrame:CGRectMake(, , [UIScreen mainScreen].bounds.siz ...
- 关于loadrunner运行场景时提示“初始化失败,通信错误”的解决方案
1)在loadrunner的安装目录下的bin文件夹下有个“wlrun.exe”的文件 2)右键点击“属性”->"兼容性"->兼容模式中选择“windows xp(se ...
- LK产品如何提高通信速率
之前做LK,由于采用自定义协议,485通信.为了避免通信撞车,采用主控轮询.从机应答的通信方式. 当设备规模扩大,需要轮询的子设备和参数变多时,轮询周期就会加长,人机交互时,系统反应缓慢. 分析主控轮 ...
- STM32库函数编程、Keli/MDK、stm32f103zet6
catalogue . Cortex-M3地址空间 . 基于标准外设库的软件开发 . 基于固件库实现串口输出(发送)程序 . 红外接收实验 . 深入分析流水灯例程 . GPIO再举例之按键实验 . 串 ...
- 基于433MHz无线串口,多发一收解决方案
一.无线发展背景 随着科学技术的飞速发展,智能家居.智慧农业.智慧城市如雨后春笋.而这些行业的发展离不开无线的应用. 传统的有线连接不仅仅是成本高,包括布线安装.维护等也是成本巨大.并且机动性也很差, ...
随机推荐
- Linux->ZooKeeper集群搭建
人,总免不了有心结,限制着自己,难以前行.对于ZooKeeper的理解,以及实践也拖了很久,今天用零散时间学习一下,补点干货. 一.简述 Zookeeper是Google的Chubby一个开源的实现, ...
- jbd2/dm-2-8 io太高
用iotop查看发现[jbd2/dm-2-8]几乎占用了99%的io使用率,但是却没有输入输出 后来上网查找,网上有人说是个内核bug,需要升级内核,或者降低jdb2的提交次数,即重新挂载磁盘 添加c ...
- C语言编译器,写给萌新们看看。
就我已经经历过的大学课程,仿佛每一门计算机的专业课程的开头,都是在介绍计算机发展的历史,和大名鼎鼎的冯诺依曼结构. 譬如C语言,比较水的计算机导论,c++,数据结构,计算机组成原理,甚至是Linux实 ...
- SNMP协议详解
简单网络管理协议(SNMP)是TCP/IP协议簇的一个应用层协议.在1988年被制定,并被Internet体系结构委员会(IAB)采纳作为一个短期的网络管理解决方案:由于SNMP的简单性,在Inter ...
- hibernate 映射 数据库number 映射为 double 为空 报错问题
将 数据库表 映射成hibernate 实体类时 将number --- double 如果数据库中number 为空,查找数据时将报错 Can not set double field ***** ...
- bzoj3718 [PA2014]Parking
Description 你的老板命令你将停车场里的车移动成他想要的样子.停车场是一个长条矩形,宽度为w.我们以其左下角顶点为原点,坐标轴平行于矩形的边,建立直角坐标系.停车场很长,我们可以认为它一直向 ...
- 【我所认知的BIOS】—> uEFI AHCI Driver(8) — Pci.Read()
[我所认知的BIOS]-> uEFI AHCI Driver(8) - Pci.Read() LightSeed 6/19/2014 社会一直在变.不晓得是不是社会变的太苦开,而我没变所以我反而 ...
- mac zsh 快捷定位文件
brew install zsh vim ~/.zshrc plugins=(git autojump zsh-autosuggestions zsh-syntax-highlighting yarn ...
- C/C++心得-结构体
先说句题外话,个人认为,基本上所有的高级语言被设计出来的最终目的是降低软件开发难度,提升软件开发人员素质和团队协作能力,降低软件维护的难度.在学习语言的时候,可以从这么方面来推测各种语言语法设计的原因 ...
- Keil开发的ARM程序main函数之前的汇编分析
Keil开发的ARM程序main函数之前的汇编分析 ——BIN文件中RW段的数据移动 系统平台: STM32系列STM32F103ZE,512KB内部FLASH,64KB片内存储; FLASH地址范围 ...