先主通讯口设定,后在其他端口设定不同的通讯地址,并设置通讯时序。
搭建485总线通讯网络即可。
RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,现在多采用的是两线制接线方式,这种接线方式为总线式拓扑结构,在同一总线上最多可以挂接32个节点。
扩展资料:
注意RS485硬件上的几个要点:接口芯片、终端电阻、接地。
1、接口芯片这个就需要看选用芯片的数据手册,一般引脚没有接错,正常供电,连线正常不会有什么问题。如果通信不正常首先看一下线有没有接错A->+,B->-。
2、终端电阻是RS485通信必不可少的,横跨在两个信号线之间的电阻,一般有两个,阻值为120Ω,主设备一个,末尾的从设备一个。如果通信出现问题,可以检查一下终端电阻是否正常连接,信号线之间的阻值是否正常(两个并联为60Ω)。
3、对于接地,RS485是检测两个信号线的差值,所以不接地也可以通信。如果遇到通信不正常,可以尝试一下接地或者不接地。
1、网线接485转换器接线方法:一头采用568A标准,一头采用568B标准。
2、常见的rs485是半双工通信,一般买到的485转换器的收发切换是硬件自动完成的,但也有需要软件参与控制收发切换的,需要看转换器手册确认。
3、如果用的rs485是半双工通信,收发切换也需要时间,主机需要在发送前检查当前是否正在接收数据。从机收到主机数据,也应该延时一段时间(如20ms)。
4、485转换器主要的作用是将单端的RS-232信号转换为平衡差分的RS-485或RS-422信号,RS-485、RS-422自动识别功能,使用更加简单。
5、如果用的rs485是半双工通信,收发切换也需要时间,主机需要在发送前检查当前是否正在接收数据,从机收到主机数据,也应该延时一段时间(如20ms)。
如图就是RS485的手拉手连接又叫总线连接。
网络拓扑一般采用终端匹配的总线型结构。在构建网络时,应注意如下几点:
(1)采用一条双绞线电缆作总线,将各个节点串接起来,从总线到每个节点的引出线长度应尽量短,以便使引出线中的反射信号对总线信号的影响最低。有些网络连接尽管不正确,在短距离、低速率仍可能正常工作,但随着通信距离的延长或通信速率的提高,其不良影响会越来越严重,主要原因是信号在各支路末端反射后与原信号叠加,会造成信号质量下降。
(2)应注意总线特性阻抗的连续性,在阻抗不连续点就会发生信号的反射。下列几种情况易产生这种不连续性:总线的不同区段采用了不同电缆,或某一段总线上有过多收发器紧靠在一起安装,再者是过长的分支线引出到总线。总之,应该提供一条单一、连续的信号通道作为总线。
(3)注意终端负载电阻问题,在设备少距离短的情况下不加终端负载电阻整个网络能很好的工作,但随着距离的增加性能将降低。理论上,在每个接收数据信号的中点进行采样时,只要反射信号在开始采样时衰减到足够低就可以不考虑匹配。但这在实际上难以掌握,美国MAXIM公司有篇文章提到一条经验性的原则可以用来判断在什么样的数据速率和电缆长度时需要进行匹配:当信号的转换时间(上升或下降时间)超过电信号沿总线单向传输所需时间的3倍以上时就可以不加匹配。
一般终端匹配采用终端电阻方法,RS-485应在总线电缆的开始和末端都并接终端电阻。终端电阻在RS-485网络中取120Ω。相当于电缆特性阻抗的电阻,因为大多数双绞线电缆特性阻抗大约在100~120Ω。这种匹配方法简单有效,但有一个缺点,匹配电阻要消耗较大功率,对于功耗限制比较严格的系统不太适合。另外一种比较省电的匹配方式是RC匹配。利用一只电容C隔断直流成分可以节省大部分功率。但电容C的取值是个难点,需要在功耗和匹配质量间进行折中。还有一种采用二极管的匹配方法,这种方案虽未实现真正的“匹配”,但它利用二极管的钳位作用能迅速削弱反射信号,达到改善信号质量的目的,节能效果显著(来自于百度百科)
怎么样可以避免RS485出现的问题呢,如果咱们不想更改软件的话,可以采购这种技术
TS-8515-A
Modbus协议多主机智能管理器
(Modbus协议通讯主机代理器)
依据modbus协议的要求和针对目前的技术现状,提出以下设计方案,目的使modbus多主机通讯更加符合工业通讯实际应用,让此类通讯更加稳定。
解决MODBUS RTU/ACSII通讯中不能有两个上位机的问题。将该模块接到多个主机与从机之间,通过该模块的信号转接,实现两个以上主机同时与多个从机的通讯。
采用主机代理方式:所有modbus主机只直接与代理主机通讯,用四个(或多个)RS485/RS232端口同时与各个modbus主机通讯。
代理主机从堆栈中按先进先出原则分别取出modbus通讯主机命令,向从机总线发送命令。
微处理器从4个(或多个)端口得到modbus通讯主机的命令后,进行CRC校验后,将正确的命令压入堆栈。从端口5得到的返回数据进行CRC校验后,将返回数据传送到对应主机的端口。
发送modbus通讯主机命令时间间隔可以设定,按照工业系统的可靠性和稳定性原则,设计发送命令时间间隔最小时间为250ms。如果系统中有两台modbus通讯主机,则需要设定modbus通讯主机的发送命令时间间隔为500ms(一般默认值)。依次类推。
系统使用堆栈,并且周期取出存贮命令,所以不会造成存贮或数据溢出。
系统的稳定性和可靠性也是预知的。稳定的发送命令时间间隔是可以计算的。
如果发生个别从机故障或者线路故障,系统不会一直处于等待状态,其他的主机和从机仍能正常工作。
此设备已通过实际测试和得到现场应用。
二、技术指标:
电 源:DC9-30V供电
工作电流:DC24V
通讯速率:300-1152Kbps,默认9600 8 N 1
端口数量:主机端口4个,从机端口1个(RS485总线理论为256节点)。
隔离保护:信号隔离电压5000V;电源隔离 1000V
通讯距离:RS-485/422侧的通讯距离15Km
最多节点数:RS-485为128节点
协议标准: RS-485符合TIA/EIA-485-A标准;RS-422符合EIA-422-A标准;支持MODBUS RTU或MODBUS RTU/ACSII协议进行透传,不区分命令。
数据缓冲区:数据缓冲区扩大到8K字节,保证设备有足够的空间接收设备(从机)返回的数据;
命令长度:存贮主机命令的堆栈扩大到450条命令,命令长度增加到260个字节;
散热:彻底解决可能存在的散热问题,主芯片增加散热片和导热硅胶。
防护电压:15KV静电保护,600W/ms雷电防护;电磁兼容符合GB/T 17626《电磁兼容 试验和测量技术》中的IEC61000-4-5中关于浪涌测试要求。
尺寸大小:工业导轨槽模块(126mm×90mm×34mm)
工作温度:-45℃~85℃
三、参数配置
通讯采用MODBUS RTU或MODBUS RTU/ACSII协议进行透传,常用的命令均可使用。
默认参数:4个主机端口和1个从机端口的波特率微9600 8 N 1。
1、硬件连接:
A+,B-:接下位机(从设备)
A1+,B1-:接上位机1 (modbus主机)
A2+,B2-:接上位机2(modbus主机)
A3+,B3-:接上位机3 (modbus主机)
A4+,B4-:接上位机4(modbus主机)
2、该模块要设置的参数有:
(1)串口设置:
波特率:可以设置(300~115200bps)
数据据位:8位
停止位:1位
校验:无
波特率:300bps~115200bps常用波特率(出厂设置为9600bps)
(2)下位机最大响应时间:70ms~65535ms(出厂设置为70ms)。在接收主机或者从机的命令过程中,将数据在缓冲区保存,在等待70ms后,没有新数据,就认为该命令结束,然后将数据转发。
接线时候,主从之间A接A,B接B
RS485在现场施工接线时候确实问题比较多的,可以从以下方面排查
1,使用非规线缆。IEEE标准里要求的是使用屏蔽双绞线。现场我们应用下来,双绞线也行,但BV线和平行线BVVB肯定不行。
2,共管穿线。485的AB线按说要求上只能单独穿管不能与220V混走。但实际施工时候很多现场违规施工,把220V和485线绞合或者共管。
3,附近有干扰源。例如变频器。
4,布线拓扑不合规。485总线只接受菊花链拓扑,又叫做手拉手。不接受星形,树形,混合型拓扑。
5,由于线路的回声,导致通讯问题。所以要加入终端电阻吸收回声。尤其在通讯距离比较长时候。
6,因为RS485是有极性链 接,如果总线上有一个或者多个从站AB接反了,是有可能会影响整个总线通讯的。
7,误把485总线接入了电源。由于现在很多设备都用的是欧式插座。电源和485都挨着。所以很容易接错。一旦接错可能整个总线都接入高压导致从站大面积烧毁。
总之,RS485在布线时候的问题非常多。作为现场总线来说,不如找个支持无极性,任意拓扑,能与220V混走的二总线替代RS485,也不用隔离电源B0505了,成本大幅度降低。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)