一、PLC与变频器的通讯
我们就以三菱PLC FX1N−24MR−001为例,详细介绍一下PLC与变频器建立通讯的一般操作流程。FX1N−24MR−001与VectorqueTM变频器采用RS485通讯,PLC的编程软件使用GX Developer Version 8,安装GX Simulator后可以单步调试。另外需要安装485通讯模块FX1N−485−BD。
FX1N−485−BD接口及与V&T变频器连线
| 单位:mm 附件: 顶盖板 ×1 终端电阻 330Ω×2 终端电阻 110Ω×2 M3 安装模板螺丝 ×2 M3 安装盖板螺丝 ×1 图上标签 ① 安装孔(3-Φ3.5) ② 连接到PLC ③ RS-485 终端段子,这个端子的顶面高于PLC盖板大约7mm ④ SD LED:在发送数据时高速闪烁 ⑤ RD LED:在接收数据时高速闪烁 ⑥ 连接显示模块,FX1N-5DM或存储器FX1N-EEPROM-8L |
图1 FX1N−485−BD与V&T变频器通讯连线
◆ 变频器参数设置
PC.00=6 通讯波特率19200bps
PC.01=0 通讯格式1−8−1格式,无校验
PC.02=1 变频器地址为1
P0.06=2 通过通讯的方式进行变频器的运行、停机、正/反转等操作
P3.09=0 允许电机反转
二、完整程序如下
;* 功能::V&T蓝海华腾变频器三菱FX系列PLC通讯例程(读与写)
;* 适用:三菱FX系列及其相兼容的PLC,在FX1s-10MR-001上验证通过 OK
;* 版权:深圳市蓝海华腾技术有限公司2009 版权所有
;* 功能详解:本程序是V&T蓝海华腾变频器与三菱PLC通讯进行变频器运行/
;* 停止控制、以及用通讯改写变频器的设定频率和读取其运行频率的例程。
;* 其中:X0为变频器的开机控制
;* X1为变频器的停止控制
;* D130为变频器的运行频率设定地址(两位小数)
;* D70为通讯读取的变频器实际运行频率(两位小数)
;* 本程序的通讯格式:波特率19200,8-N-1格式,使用前请设置P0.06=2
;* 注:请在引用(使用)本程序的时候,请保留以上声明
0 LD M8000
1 MOV H0C91 D8120
6 OUT M8161
8 MOV H1 D200
13 MOV H6 D110
18 LDI T3
19 MPS
20 ANI T3
21 ANI T2
22 ANI T1
23 OUT T0 K1
26 MRD
27 ANI T3
28 ANI T2
29 OUT T1 K2
32 MRD
33 ANI T7
34 ANI T3
35 OUT T2 K4
38 MPP
39 OUT T3 K5
42 LDP X000
44 ANI X001
45 SET M20
46 MOV H0 D23
51 MOV H0 D24
56 MOV H1 D25
61 LDP X001
63 SET M21
64 MOV H0 D23
69 MOV H0 D24
74 MOV H0 D25
79 LD M20
80 OR M21
81 OUT T7 K5
84 OUT M7
85 ANDP T7
87 RST M20
88 RST M21
89 LDP T0
91 ANI M7
92 MOV D130 D30
97 MOV H1 D23
102 DIV D30 H100 D32
109 MOV D33 D25
114 MOV D32 D24
;* 写变频器参数
119 LDP T1
121 MOV H41 D201
* <功能码(写参数)>
126 MOV H80 D202
131 MOV D23 D203
136 MOV D24 D204
141 MOV D25 D205
146 CALL P1
149 SET M8122
151 LD T1
152 RS D200 K8 D230 K8
;* 读变频运行频率
161 LDP T2
163 MOV H3 D201
168 MOV H81 D202
173 MOV H36 D203
178 MOV H0 D204
183 MOV H1 D205
188 CALL P1
191 SET M8122
193 LD T2
194 RS D200 K8 D230 K15
203 LD M8123
204 MPS
205 AND T2
206 BMOV D230 D50 K15
213 MPP
214 OUT T63 K3
217 AND T63
218 RST M8123
220 LD M8000
221 MUL D61 H100 D36
228 MOV D62 D37
233 ADD D36 D37 D38
240 MOV D38 D70
245 FEND
;* 以下部分为通讯的CRC校验程序
246 P1
247 LD M8000
248 MOV D110 V1
253 MOV H0FF D100
258 MOV H0 D101
263 MOV H0FF D102
268 MOV H0 D103
273 MOV K0 V0
278 SET M0
279 FOR D110
282 LD M0
283 WXOR D100 D200V0 D100
290 ADD V0 K1 V0
297 FOR K8
300 LD M0
301 MOV H0 D109
306 MUL D102 H100 D108
313 DADD D100 D108 D102
326 DDIV D102 H2 D104
339 MOV D104 D102
344 CMP D106 K1 M10
* <比较移出位数是否等于1>
351 LD M11
352 WXOR D102 H0A001 D102
359 ZRST M10 M12
364 LD M0
365 DDIV D102 H100 D104
378 MUL D104 H100 D108
385 SUB D102 D108 D100
392 MOV D104 D102
397 NEXT
398 NEXT
399 LD M0
400 MPS
401 AND T4
402 RST M0
403 MPP
404 MOV D100 D200V1
409 MOV D102 D201V1
414 MOV K10 T4
419 SET M4
420 SRET
421 END
三、CRC算法
如果要动态修改某一功能码,例如设定频率,则需要在PLC中计算CRC16校验和,下面的程序可以完成该功能,如果您引用该函数完成设计存在问题,请到我公司网站下载包含CRC算法的例程。
;* 功能:CRC16校验和算法
;* 适用:三菱及其兼容PLC适用,三菱FX1S-10MR-001上验证通过
;* 版权:深圳市蓝海华腾技术有限公司版权所有 2009
;* 日期:2009-11-05
;* 输入:D200~D200+n-1,n为参与校验的数据个数,D110=n
;* 中间变量:D100~D109
;* 资源使用:V0,V1,M0,M10,M11,M12及各运算标志
;* 输出:D200~D200+n-1保持不变,D200+n,D200+n+1,存放CRC16校验和
;* 引用时请保留以上声明!
0 LD M8000
1 MOV K6 d110
2 MOV D110 V1
7 MOV H0FF D100
12 MOV H0 D101
17 MOV H0FF D102
22 MOV H0 D103
27 MOV K0 V0
32 SET M0
33 FOR D110
36 LD M0
37 WXOR D100 D200V0 D100
44 ADD V0 K1 V0
51 FOR K8
54 LD M0
55 MOV H0 D109
60 MUL D102 H100 D108
67 DADD D100 D108 D102
80 DDIV D102 H2 D104
93 MOV D104 D102
98 CMP D106 K1 M10
* <比较移出位数是否等于1>
105 LD M11
106 WXOR D102 H0A001 D102
113 ZRST M10 M12
118 LD M0
119 DDIV D102 H100 D104
132 MUL D104 H100 D108
139 SUB D102 D108 D100
146 MOV D104 D102
151 NEXT
152 NEXT
153 LD M0
154 MPS
155 AND T4
156 RST M0
157 MPP
158 MOV D100 D200V1
163 MOV D102 D201V1
168 MOV K10 T4
173 SET M4
174 END
四、程序下载到PLC
需要使用三菱PLC专用下载线缆,型号SC09或USB接口的SC09。下载接线图:
图2
将 PLC 接好电源,并将PLC 与电脑的下载线SC09 连接好后,上电,点击GX DeveloperVersion 8 中,我们刚才打开的“读取和改写变频器参数例程”程序中,点击菜单:在线->传输设置
图 3
并在弹出的“传输设置”里面选择相应与PLC 连接的下载COM 口,如上图中选择COM9,然后确认。然后再点击菜单:在线->PLC 写入,弹出写入对话框,然后选中程序和PLC参数,点击执行后开始写入。程序写入完毕后,在弹出的确认窗口中,点击确认。
图 4
◆ 验证程序逻辑
例子程序写入后,连接V&T变频器与三菱PLC。如图:
并设置V&T变频器参数,首先进行P0.01=5恢复出厂参数,然后设置P0.06=2,P3.09=0,PC.00=6,PC.02=1。
图 5
如果PLC端子X0与COM闭合,变频器正转开机运行,X1与COM闭合变频器停机, D130 是设定变频器运行频率寄存器(频率设定),D70 为PLC 读取的变频器实时运行频率。如果这些动作都能正常对应,则表明程序运行正常。
◆ 更改波特率
如果想更改程序波特率,除了修改V&T变频器PC.00、PC.01为所需要的波特率外
PC.00 通讯波特率
4:4800bps
5:9600bps
6:19200bps
7:38400bps
8:57600bps
PC.01 数据格式
0:1−8−1格式,无校验
1:1−8−1格式,偶校验
2:1−8−1格式,奇校验
还需要修改PLC程序,将波特率格式字送入D8120元件。
三菱PLC波特率控制字D8120含义如下:
《通讯格式[D8120]》
通讯格式D8120除了用于采用FNC80(RS)指令的无顺序通信外,还能用于计算机链接通讯时的特殊数据寄存器。
所以,在使用FNC80(RS)指令时,关于计算机链接通讯的设定无效,请根据以下注意事项设定格式。
注:※1:起始符,终止符的内容可由用户变更,使用计算机通讯时,必须将其设定为0。
※2:b13-b15时计算机链接通讯连接时的设定项目,使用FNC80(RS)指令时,必须设定为0。
※3:RS485未考虑设置控制线方法,使用FX2N-485-BD、FX0N-485ADP时,请设定(b11,b10)=(1,1)
※4:是在计算机链接通讯连接时设定,与FNC80(RS)没有关系。
※5:适应机种是FX2NC以及FX2N版本V2.00以上
位号 | 名称 | 内容 |
0(位OFFF) | 1(位ON) |
b0 | 数据长 | 7位 | 8位 |
b1 | 奇偶性 | b2,b1 |
b2 | {0,0}:无 |
| {0,1}:奇数(0DD) |
| {1,1}:偶数(EVEN) |
b3 | 停止位 | 1位 | 2位 |
b4 | 传送速率(BPS) | b7,b6,b5,b4 |
b5 | {0,0,1,1}:300 |
b6 | {0,1,0,0}:600 |
b7 | {0,1,0,1}:1200 |
| {0,1,1,0}:2400 |
| {0,1,1,1}:4800 |
| {1,0,0,0}:9600 |
| {1,0,0,1}:19200 |
b8※1 | 起始符 | 无 | 有(D8124) 初始值:STX(02H) |
b9※1 | 终止符 | 无 | 有(D8125) 初始值:STX(03H) |
b10 | 控制线 | 无顺序 | b11,b10 |
b11 | (0,0):无接口> |
| (0,1):普通模式接口> |
| (1,0):互锁模式接口>※5 |
| (1,1):调制解调器模式接口,RS-485C接口>※5 |
| 计算机链接通讯※4 | b11,b10 |
| (0,0):RS-485接口 |
| (1,0):RS-232C接口 |
b12 | 不可使用 |
b13※2 | 和校验 | 不附加 | 附加 |
b14※2 | 协议 | 不使用 | 使用 |
b15※2 | 控制顺序 | 方式一 | 方式四 |
通讯格式的设定例:
数据长 | 7位 | 奇偶性 | 奇数 | 停止位 | 1位 | 传输速度 | 19,200bps | 首 | 无 | 端子 | 无 | 控制线 | 无 |
| 左表的通讯设定请按照下列程序进行,请设定外转设备的串行通讯设定。 |