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 位 |
|
blb2 |
奇偶校验 |
b2,bl (0.0): 无 (0.1): 奇校验 (ODD) (1,1): 偶校验 (EVEN) |
|
|
b3 |
停止位 |
1 位 |
2 位 |
|
b4 b5 b6 b7 |
波特率 (bps) |
b7, b6. b5. b4 b7, b6. b5, b4 (0.0,1.1): 300 (0.1.1.1): 4.800 (0,1,0.0): 600 (1.0.0.0): 9.600 (0.1.0.1): 1.200 (1,0.0.1): 19.200 (0,1,1,0): 2.400 (1.0.1.0): 38.400 |
|
|
b8 |
报头 |
无 |
有 (D8124) 初始值: STX(02H) |
|
b9 |
报尾 |
无 |
有 (D8125) 初始值 :ETX(03H) |
|
blO bll |
控制线 |
无协议 |
bll.blO (0,0): 无 <RS-232Ctt 口〉 (0.1): 普通模式 VRS-232C 接口〉 (1.0): 相互链接模式 VRS-232C 接口〉 (FXZ 河編程控制器Vm.2.00以上的版 本以及 FX2NC 、 FX3S 、 FX3G 、 FX3GC 、 FX3U FX3UC 就可编程控制器) (1.1): 调制解调器模式 RS-232C 接口, RS-485/RS-422 接口 |
|
计算机 链接 |
bll.blO (0.0): RS-485/RS-422 接口 (l,0): RS-232C 接口 |
||
|
bl2 |
不可以使用 |
||
|
bl3 |
和校验 |
不附加 |
附加 |
|
B14 |
协议 |
无协议 |
专用协议 |
|
bl5 |
控制顺序 |
协议格式 1 |
协议格式 4 |