在工业控制、电力通讯、智能仪表等领域,通常情况下是采用串口通信的方式进行数据交换。最初采用的方式是rs232接口,由于工业现场比较复杂,各种电气设备会在环境中产生比较多的电磁千扰,会导致信号传输错误。
1979年施耐德电气制定了一个用于工业现场的总线协议modbus协议,现在工业中使用rs485通信场合很多都采用modbus协议,所以今天我们来了解下rs485通信和modbus通信协议。
什么是串口通信
串口通信(serial communication),是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。由于串行通信是在一根传输线上一位一位的传送信息,所用的传输线少,并目可以借助现成的电话网进行信息传送,因此,特别适合于远距离传输。
rs-485协议概述
rs-485和rs-232一样,都是审行通信标准,现在的标准名称是tia485/eia-485-a,但是人们会习惯称为rs485标准,rs-485常用在工业、自动化、汽车和建筑物管理等领域。
rs-485总线弥补了rs-232通信距离短,速率低的缺点,rs-485的速率可高达10mbit/s,理论通讯距离可达1200米;rs-485和rs-232的单端传输不一样是差分传输,使用一对双绞线,其中一根线定义为a,另一个定义为b。
通常情况下,rs485的信号在传送出去之前会先分解成正负对称的两条线路(即我们常说的a、b信号线),当到达接收端后,再将信号相减还原成原来的信号。
拓扑结构
rs485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,多采用的是两线制接线方式,这种接线方式为总线拓扑结构,在同一总线上最多可以挂接32个节点
rs-485总线同12c总线一样支持主从模式,支持点对点单从机模式,也支持多从机模式,不支持多主机模式。
长距离布线会有信号衰减,而且引入噪声和干扰的可能性更大,在线缆a和b上的表现就是电压幅度的变化,但是,采用差分线的好处就是,差值相减就会忽略掉干扰依旧能输出正常的信号,把这种差分接收器忽略两条信号线上相同电压的能力称为共模抑制。
标准规定了,逻辑1: +2v to +6v: 逻辑0: -6v to -2v.
rs-485不需要使用特定的总线电压,只看最小差分电压,在较长的电缆长度上,接收器接收到的电压可能会降低到+/- 200 mv,这对于rs-485仍然是完全可以接受的,这也是rs-485的优点之一。
rs485通常标有a+和b-,rs485的电平指的是两根传输线间的电压差,而不是传输线上的电压。
rs485接线方式
与电脑进行通信时,需要转换器,常见的设备有:usb转rs485转换器,rs232转rs485转换器,以太网转rs485串口服务器。
rs485典型组网结构
rs485总线采用手拉手的总线结构方式。
什么是modbus协议
在rs485的通信方式中,rs485总线上可以挂载多个设备,但是rs485是一种半双工的通信方式(在一个时间段只能与一个设备通信),如果不对挂载的节点设备加以限制,会引起通信紊乱的问题。为了解决数据传输紊乱的问题,我们得对rs485通信加以规则限制,来保证通信的稳定性和可靠性。
举个例子来说明rs485通信协议与modbus通信协议的关系:
我们把城市a看做主机,城市b看做从机,如果两个城市之间要想进行经济往来(数据传输),那么第1件事就是修路,而这里的公路就是rs485总线;既然公路修好了,就可以通车了,但如果我们不对路上的车辆加以限制的话,那发生交通事故的可能性就会很大,所以我们制定了一套交通规则去限制车辆的行驶,而这个交通规则就是modbus串行通信协议。
modbus是应用层的一种串行通信协议,包括:modbus rtu、modbus ascii 和modbus tcp三种,其中modbus rtu与modbus ascii均为支持rs-485总线的通信协议,modbus tcp是支持以太网的通信协议。
modbus 协议是一个主从架构的协议,有一个主节点,其他使用 modbus 协议参与通信的节点是从节点,每一个从设备都有一个唯一的设备地址。
modbus是一个请求/应答协议,并且提供功能码规定的服务。modbus功能码是 modbus请求/应答 pdu(协议数据单元)的元素。
rs485协议与modbus协议的区别
rs485 modbus rtu指令解码
从机地址:从机id,范围0-255,其中有效范围是1-247,其中255是广播地址(广播就是对所有从机发送应答)
功能码:占用一个字节,功能码的意义就是知道这个指令是干啥的.常用的有03、04、06、16;03和04是read,06和16是write
数据区:从机的数据,此区域查询数据的地址和查询字节数等。
校验:crc检验是检测接收的数据是否正确
rs-485通信的应用
工业控制
rs-485通信在工业自动化领域中应用非常广泛。在工业控制系统中,rs-485通信可以用于连接plc(可编程逻辑控制器)、传感器、执行器等设备,实现设备之间的数据交换和控制。例如,在一条生产线上,rs-485通信可以实现各个设备之间的协调工作,确保生产线的正常运行。
采用rs485通信接口,支持modbus协议的空气温湿度传感器
智能家居
随着物联网的兴起,家庭自动化逐渐成为了一个新兴的领域。rs-485通信可以用于连接家庭自动化设备,如温度传感器、智能灯具、智能家电等,实现设备之间的互联互通。通过rs-485通信,这些设备可以相互协作,实现智能化的家居生活。
采用rs485通信接口,支持modbus协议的二氧化碳传感器
其他领域
除了工业控制和家庭自动化领域,rs-485通信还广泛应用于电力、交通、医疗等领域。例如,在电力系统中,rs-485通信可以用于监测电力设备状态、采集电能数据等。
推荐设备:
edgebox-rpi-200 边缘计算控制器
edgebox-rpi-200 是基于树莓派的一体化工业边缘计算控制器,结合了多种工业用途。设计为高可扩展性和坚固耐用的工业硬件,安装丰富的io资源,并由强大的raspberry pi工业软件生态系统提供支持,是智能自动化和工业物联网(iiot)解决方案的理想选择。
特征
一体化工业控制器:
它不仅仅是一个plc,pac,它更可以实现iiot网关,opc ua服务器和工业pc的功能。
强大而灵活的处理器:
由树莓派计算模块 4 (cm4) 提供支持,配备高达 2gb ram 和 8gb emmc,执行实时操作和多进程。
丰富的 io 资源和已安装的工业接口:
支持多种工业总线协议和标准
多种通信能力:
提供全功能无线互连和 rj45 千兆以太网,由多种云服务支持
坚固耐用的工业级硬件设计:
集成热管理,全铝散热器外壳,支持 35mm din 和壁挂式安装
伟大的树莓派工业软件生态系统:
支持多种工业软件和平台,包括codesys,node-red,mqtt,opc ua,ignition等。
写在最后
rs485通信总线是一种半双工通信总线,在同一时间只能接受或发送,可以挂载多个节点设备。
为了解决主机与从机通信的稳定性和可靠性,我们规定了主从模式,同一时刻只能一主一从进行通信。但主机和从机用什么样的数据帧进行通信还没有确定。
modbus协议规定了主机与从机通信的数据格式,相对于自定义的数据格式,modbus的兼容性更强。
浅析鱼与熊掌亦可兼得的脉冲压缩技术
可穿戴健身追踪设备的光学心率传感器简析
2020年台积电的R&D研发费同比增长5%
前景光明!中芯国际在中美贸易战中受益
气体传感器的技术现状
RS-485和Modbus通信协议及工作原理
英女物理家用量子技术远程制造第五种物质状态
就算再暗 美丽不夜!vivo X9 磨砂黑你值得拥有
Blue BYRD便携蓝牙耳塞终于来了!低音震撼,暖人心田
安全第一:有效防范手持激光焊接机可能带来的健康风险
IGBT模块技术
随着机器人技术的不断发展成熟,传统工业生产模式也发生了巨大的变革
路由器功能介绍-双机热备份机制
光电传感器实现智能灯光控制系统
拥抱“芯”变化,助力“芯”增长
未来三年内马斯克是否会为抛弃“激光雷达”而后悔?
蓝屏代码0x000000d1的原因和解决方法
苹果20W USB PD快充充电器测评,外壳模具换汤不换药
研究人员发明可用人眼控制的机器人镜头
小米6、荣耀9、oppor11对比评测:外观、配置、性能、价格,小米6、华为荣耀9、oppor11你买谁?