台达PLC与三菱变频器Modbus通讯案例分享

张开发
2026/4/19 12:01:51 15 分钟阅读

分享文章

台达PLC与三菱变频器Modbus通讯案例分享
台达PLC与三菱E740或D700变频器modbus 通讯案例 配件台达DVP系列PLC三菱E740或者d700变频器昆仑通态触摸屏和威纶通触摸屏 功能实现PLC与变频器进行modbus 通讯触摸屏控制启停设置设定频率加减速时间读取实际频率电压电流。 说明程序带注释资料全 程序可以直接用于现场生产。最近在做一个项目实现台达PLC与三菱E740或D700变频器通过Modbus通讯并且搭配昆仑通态触摸屏和威纶通触摸屏来控制整个流程。今天就来和大家详细讲讲这个案例还会分享带注释的程序资料很全直接拿去就能用于现场生产。一、硬件连接台达DVP系列PLC这是我们控制的核心它负责与变频器以及触摸屏进行数据交互。三菱E740或D700变频器作为执行机构接收来自PLC的指令并驱动电机运行。触摸屏昆仑通态触摸屏和威纶通触摸屏在这里用于人机交互方便操作人员启停设备、设置频率等参数。将台达PLC的RS485通讯口与三菱变频器的RS485通讯口连接注意A接AB-接B-。同时将触摸屏通过合适的通讯线连接到PLC上具体接口根据触摸屏型号和PLC型号来定。二、软件设置与程序编写1. 三菱变频器设置首先要对三菱变频器进行参数设置使其能够正确响应Modbus通讯。参数含义设置值Pr.79运行模式选择2外部运行模式Pr.117站号设定1假设站号为1可根据实际情况调整Pr.118通讯速率设定96009600bps可根据需求更改Pr.119数据长度/停止位长18位数据1位停止位Pr.120奇偶校验选择0无校验Pr.121通讯再试次数3可根据现场通讯稳定性调整Pr.122通讯校验时间间隔9999无通讯校验Pr.123等待时间设定9999无等待时间Pr.124CR/LF有/无选择0无CR/LF代码附加2. 台达PLC程序编写下面分享台达PLC控制变频器的程序注释非常详细大家一看便知。// 定义变量 VAR Start_Stop : BOOL; // 启停控制变量 Set_Frequency : REAL; // 设定频率变量 Accel_Time : REAL; // 加速时间变量 Decel_Time : REAL; // 减速时间变量 Actual_Frequency : REAL; // 实际频率变量 Actual_Voltage : REAL; // 实际电压变量 Actual_Current : REAL; // 实际电流变量 END_VAR // 主程序 PROGRAM MAIN // 触摸屏控制启停 IF HMI_Start_Button THEN Start_Stop : TRUE; ELSIF HMI_Stop_Button THEN Start_Stop : FALSE; END_IF; // 触摸屏设置设定频率 Set_Frequency : HMI_Set_Frequency; // 触摸屏设置加减速时间 Accel_Time : HMI_Accel_Time; Decel_Time : HMI_Decel_Time; // Modbus通讯发送部分 // 启停控制 IF Start_Stop THEN // 向变频器发送启动命令假设启动命令代码为0x01 Modbus_Write(1, 0x01, 0x0001); ELSE // 向变频器发送停止命令假设停止命令代码为0x00 Modbus_Write(1, 0x01, 0x0000); END_IF; // 设置设定频率 // 将设定频率转换为变频器可识别的格式假设频率分辨率为0.01Hz Frequency_Value : Set_Frequency * 100; Modbus_Write(1, 0x02, Frequency_Value); // 设置加速时间 // 假设加速时间单位为秒转换为变频器可识别格式 Accel_Value : Accel_Time * 10; Modbus_Write(1, 0x03, Accel_Value); // 设置减速时间 // 假设减速时间单位为秒转换为变频器可识别格式 Decel_Value : Decel_Time * 10; Modbus_Write(1, 0x04, Decel_Value); // Modbus通讯接收部分 // 读取实际频率 Modbus_Read(1, 0x05, Actual_Frequency_Value); // 将读取到的频率值转换为实际频率假设频率分辨率为0.01Hz Actual_Frequency : Actual_Frequency_Value / 100; // 读取实际电压 Modbus_Read(1, 0x06, Actual_Voltage_Value); // 根据变频器规格转换为实际电压值 Actual_Voltage : Actual_Voltage_Value * 0.1; // 读取实际电流 Modbus_Read(1, 0x07, Actual_Current_Value); // 根据变频器规格转换为实际电流值 Actual_Current : Actual_Current_Value * 0.01; // 将实际频率、电压、电流值传递给触摸屏显示 HMI_Actual_Frequency : Actual_Frequency; HMI_Actual_Voltage : Actual_Voltage; HMI_Actual_Current : Actual_Current; END_PROGRAM上述代码中我们首先定义了一系列变量用于存储控制和反馈数据。通过触摸屏的按钮和输入框来控制启停、设定频率以及加减速时间。然后使用自定义的ModbusWrite和ModbusRead函数实际项目中需根据台达PLC的指令库进行正确编写来与变频器进行数据交互。在发送部分根据不同的控制需求向变频器发送相应的命令和参数。接收部分则读取变频器反馈的实际运行数据并进行格式转换后传递给触摸屏显示。三、触摸屏设置无论是昆仑通态触摸屏还是威纶通触摸屏都需要进行画面设计和通讯参数设置。1. 画面设计主界面放置启停按钮、设定频率输入框、加减速时间输入框以及实际频率、电压、电流的显示框。参数设置界面可以设置一些其他相关参数如通讯站号等如果有需要。2. 通讯参数设置设置与台达PLC对应的通讯协议、波特率、站号等参数确保触摸屏能够与PLC正常通讯。四、总结通过以上步骤我们就实现了台达PLC与三菱E740或D700变频器的Modbus通讯并利用触摸屏进行了友好的人机交互控制。在实际现场生产中要注意通讯线路的屏蔽以减少干扰保证通讯的稳定性。希望这个案例对大家有所帮助欢迎交流讨论。台达PLC与三菱E740或D700变频器modbus 通讯案例 配件台达DVP系列PLC三菱E740或者d700变频器昆仑通态触摸屏和威纶通触摸屏 功能实现PLC与变频器进行modbus 通讯触摸屏控制启停设置设定频率加减速时间读取实际频率电压电流。 说明程序带注释资料全 程序可以直接用于现场生产。

更多文章