一、所需硬件:
1、三菱FX3U 系列PLC
2、三菱FX3U-485ADP-MB
3、三菱FX3U-CNV-BD
4、台达VFD-M 系列变频器二、程序解释:
通信参数:数据位:8位校验位:偶校验停止位:1位
波特率:9600bps
变频器从站地址:01请变频器参数设置跟 PLC一致
1、X0 为正传启动变频器
2、X1 为反转启动变频器
3、X2 为停止变频器
4、X3 为写频率,预写的频率值保存在D0 里,比如要给变频器写25HZ 的话,应该先给D0 预写2500(10 进制,精度是 0.01)
程序分段解释如下:
初始化操作,特别说明的是,初始化的时候预设变频器频率值是 25HZ
第一行:表明是使用 RS485方式、波特率是 9600bps、停止位 1位、偶校验方式、数据长度为 8位
第二行:表明 PLC通信协议选择为 MODBUS RTU,且做 MODBUS RTU主站第三行:表明变频器响应 PLC命令的最大时间是 1000ms,即就是 1秒
第四行:MODBUS RTU 3.5字符响应时间,设置时,应该大于 3.5字符时间即可,这里设置为 400ms第五行:是信息对信息的延迟时间,这里设置为 10ms第六行:主站命令错误从试次数,设置为 0
正传变频器命令段D1:变频器从站地址,这里设置为H0001
D2:MODBUS RTU 写寄存器功能码,为H0006
D3:写变频器启动/停止寄存器地址,查阅变频器手册可知道为H2000
D4:PLC 预写的寄存器个数,这里一定要设置为H0001,因为功能码06 就指的是给单个寄存器写数据的
D5:正传寄存器数据,查阅变频器手册可知为H0012反传变频器命令段
D1:变频器从站地址,这里设置为H0001
D2:MODBUS RTU 写寄存器功能码,为H0006
D3:写变频器启动/停止寄存器地址,查阅变频器手册可知道为H2000
D4:PLC 预写的寄存器个数,这里一定要设置为H0001,因为功能码06 就指的是给单个寄存器写数据的
D5:反传寄存器数据,查阅变频器手册可知为H0022
停止变频器命令段D1:变频器从站地址,这里设置为H0001
D2:MODBUS RTU 写寄存器功能码,为H0006
D3:写变频器启动/停止寄存器地址,查阅变频器手册可知道为H2000
D4:PLC 预写的寄存器个数,这里一定要设置为H0001,因为功能码06 就指的是给单个寄存器写数据的
D5:停止寄存器数据,查阅变频器手册可知为H0001
写频率变频器命令段D1:变频器从站地址,这里设置为H0001
D2:MODBUS RTU 写寄存器功能码,为H0006
D3:写变频器频率寄存器地址,查阅变频器手册可知道为H2001
D4:PLC 预写的寄存器个数,这里一定要设置为H0001,因为功能码06 就指的是给单个寄存器写数据的
D5:写频率寄存器数据,先给D0 预写想要的频率值后,然后按下X3 即可把预想的频率写入变频器,比如预想写如 21.22HZ的话,那么应该首先给 D0赋值 K2122,然后按下 X3即可写入频率
延时触发 ADPRW指令,延时时间可做调整,这里是 100ms,也可以再短一些,比如 10ms,20ms,50ms等
ADPRW 指令段,ADPRW指令详解[三菱PLC作Modbus通信,用ADPRW指令读取变频器的频率,了解一下]
刚才讲过了D1:是从站地址D2:是功能码D3:是寄存器起始地址D4:是读或者写的寄存器个数D5:是读或者写的缓冲区
M8029 是ADPRW 指令完成标志位,当ADPRW 指令完成后,复位M0 M1 T0 等。