RS485通讯原理
5.1.1 RS485通讯原理
三菱PLC与第三方设备进行的通信称为无协议通讯,所谓无协议通讯并不是没有协议的通讯,而是自己选择非三菱的通讯协议,这个协议的选择是由第三方设备(基于RS485),决定的。如变频器支持MODBUS通信协议。
(1) Modbus通信协议简介:
MODBUS通信协议是一种主从式串行异步半双工通信协议,采用主从式通信结构,可使一个主站对多个从站进行双向通信。MODBUS协议又分MODBUS RTU、MODBUS ASCII和后来发展的MODBUS TCP三种模式,物理硬件接口为串行通讯口(RS232,RS422,RS485)与以太网口。
由于MODBUS协议是完全公开透明的,所需的软硬件又非常简单,这就使它已经成为一个通用的工业标准,几乎所有的控制设备和智能化仪表都支持MODBUS通信协议。通过MODBUS协议,不同厂商所生产的控制设备和智能仪表就可以连成工业网络,进行集中监控。
①通讯的硬件基础:串口,类似于说话的嘴;软件基础:协议,类似于所说的语言;
②本次课程案例是建立在:RS-485硬件基础上的;Modbus-RTU通讯;
③利用通讯互联只需一根屏蔽双绞线,甚至可以无线的方式传输信号,省去了许多线路。
(2)Modbus可使用ASCII或RTU两种数据编码,ASCII编码是将所要传送的数据先转换成想对应的ASCII码后再传送,而RTU则是数据直接传送,不再经过转换。
Modbus消息帧两种传输模式∶ASCII与RTU
ASCI消息帧∶
起始位 | 设备地址 | 功能代码 | 数据 | LRC校验 | 结束符 |
以冒号(∶)字符(ASCII码 3AH)开始
以回车换行符结束(ASCII码 ODH,0OAH)
RTU消息帧∶
起始位 | 设备地址 | 功能代码 | 数据 | CRC校验 | 结束符 |
结束符以至少3.5个字符时间的停顿间隔开始
以至少3.5个字符时间的停顿标定了消息的结束
注:奇偶校验位其实就是为了保证单个字节传输的正确性。LRC/CRC为了确保报文帧的正确性。这两个校验分别处于网络分层的不同层次上,要处理的对象是不同的。
(3)Modbus-ASCII或RTU的串行数据传输格式分为三种情况,以RTU有校验为例:
有奇偶校验位
起始位 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 奇偶位 | 停止位 |
说明:PLC与变频器的ModBus通讯方案中,PLC作为主,变频器作为从,所谓主从,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。 主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则从设备不作任何回应。协议建立了主设备查询的格式:设备(或广播)地址、功能代码、所有要发送的数据、错误检测域。
(4)三菱FX3U通讯指令解读:
三菱FX3U的通讯格式字存储器为D8120,需在程序里首先对其进行定义。
b15 | b14 | b13 | b12 | b11 | b10 | b9 | b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 |
D8120(通信格式)
在D8120中设定数值,进行数据长度、奇隅校验、波特率等的通信设定.
D8120的内容如表5-1所示:
表5-1 D8120通讯格式设定
位编号 | 名称 | 内容 | |
0(位OFF) | 1(位 0N) | ||
b0 | 数据长度 | 7位 | 8位 |
bl | 奇偶校验 | b2,bl | |
b3 | 停止位 | 1位 | 2位 |
b4 | 波特率 (bps) | b7, b6. b5. b4 b7, b6. b5, b4 | |
b8 | 报头 | 无 | 有(D8124)初始值:STX(02H) |
b9 | 报尾 | 无 | 有(D8125)初始值:ETX(03H) |
blO bll | 控制线 | 无协议 | bll.blO (0,0):无<RS-232Ctt 口〉 本以及FX2NC、FX3S、FX3G、 FX3GC、FX3U FX3UC就可编程控制器) |
计算机 链接 | bll.blO | ||
bl2 | 不可以使用 | ||
bl3 | 和校验 | 不附加 | 附加 |
B14 | 协议 | 无协议 | 专用协议 |
bl5 | 控制顺序 | 协议格式1 | 协议格式4 |