三菱FX3U与4台台达Ms300变频器通讯程序 通讯说明:用三菱FX3U的PLC实现与4台台达ms300变频器modbus通讯 器件:三菱FX3U PLC,三菱FX3U 485BD通讯板,台达Ms300变频器,昆仑通态触摸屏,附送威纶通触摸屏程序 功能:触摸屏上设置每台频率,监控每台输出频率,输出电压,控制启停,正反转。 说明:已经通过测试运行可行。 程序带有注释,接线方式,参数设置

最近搞了个三菱FX3U与4台台达Ms300变频器通讯的项目,给大家分享分享。咱要实现的功能就是通过三菱FX3U的PLC与4台台达ms300变频器进行modbus通讯,同时在触摸屏上设置每台变频器的频率、监控输出频率和电压,还能控制启停以及正反转。这一通操作下来,已经测试运行可行啦,而且程序带注释,接线方式和参数设置也都有,话不多说,开整。

器件准备

  1. 三菱FX3U PLC:作为整个系统的控制核心,负责与变频器和触摸屏交互数据。
  2. 三菱FX3U 485BD通讯板:实现PLC与变频器之间的RS - 485通讯。
  3. 台达Ms300变频器:一共4台,根据PLC的指令进行相应的运行操作。
  4. 昆仑通态触摸屏:当然,还附送威纶通触摸屏程序,用于人机交互,设置和监控变频器参数。

接线方式

将三菱FX3U 485BD通讯板的SDA和SDB分别对应连接到台达Ms300变频器的RDA和RDB上,因为是4台变频器,所以每台变频器的这两个通讯引脚都要与485BD通讯板对应连接。同时,所有变频器的SG(信号地)要与485BD通讯板的SG连接在一起,保证共地,减少干扰。

参数设置

台达Ms300变频器参数设置

  1. 通讯相关参数
  • 将P02 - 00设置为0010,此参数设置通讯波特率为9600bps。
  • P02 - 01设置为0001,即数据格式为8位数据位、1位停止位、无奇偶校验。
  • P02 - 02设置变频器站号,4台变频器站号分别设置为1、2、3、4。

三菱FX3U PLC参数设置

在PLC编程软件中,设置通讯参数与变频器一致,波特率9600bps,数据格式8位数据位、1位停止位、无奇偶校验。

程序代码及分析

下面是关键部分的程序代码,以三菱FX3U的梯形图为例:

// 初始化部分
LD M8000
MOV K9600 D8120 // 设置通讯波特率为9600bps
MOV K16#8E D8121 // 设置数据格式,8位数据位、1位停止位、无奇偶校验

这部分代码在PLC上电初始化时执行,通过MOV指令设置通讯相关的特殊寄存器D8120和D8121,保证PLC与变频器通讯参数一致。

// 读取变频器数据部分
FOR K1 K4 M100 // 循环4次,对应4台变频器
  LD M100
  MOV K[M100] D100 // 将当前循环次数(即变频器站号)存入D100
  MOV K4001 D102 // 设置读取输出频率的寄存器起始地址
  MOV K1 D104 // 读取1个寄存器数据
  CALL P100 // 调用读取子程序
NEXT

这里通过FOR - NEXT循环,对4台变频器依次进行数据读取操作。每次循环时,将变频器站号存入D100,设置好要读取的寄存器地址(这里以输出频率为例)和读取个数,然后调用读取子程序。

// 读取子程序
P100:
  LD M8000
  MOV D100 D200 // 变频器站号存入D200
  MOV D102 D202 // 读取寄存器起始地址存入D202
  MOV D104 D204 // 读取个数存入D204
  RS D0 D200 D4 D204 // 使用RS指令进行通讯读取
  RET

在读取子程序中,将主程序传递过来的参数放入相应寄存器,然后使用RS指令进行实际的通讯读取操作。RS指令会根据设置的参数,从指定站号的变频器读取相应寄存器的数据,并存储到指定的存储区。

// 写入变频器数据部分,以设置频率为例
FOR K1 K4 M110
  LD M110
  MOV K[M110] D110 // 变频器站号存入D110
  MOV K4000 D112 // 设置写入频率的寄存器起始地址
  MOV D[M110 * 10 + 20] D114 // 从触摸屏获取的频率值存入D114
  MOV K1 D116 // 写入1个寄存器数据
  CALL P110 // 调用写入子程序
NEXT

写入部分同样通过循环对4台变频器依次写入数据。这里从触摸屏获取设置的频率值,根据变频器站号和相应寄存器地址,调用写入子程序进行频率设置。

// 写入子程序
P110:
  LD M8000
  MOV D110 D210 // 变频器站号存入D210
  MOV D112 D212 // 写入寄存器起始地址存入D212
  MOV D114 D214 // 要写入的数据存入D214
  MOV D116 D216 // 写入个数存入D216
  RS D10 D210 D14 D216 // 使用RS指令进行通讯写入
  RET

写入子程序和读取类似,将参数传递给RS指令,完成对变频器寄存器的写入操作,实现频率设置等功能。

通过这样一套程序,结合合理的接线和参数设置,就能实现三菱FX3U与4台台达Ms300变频器稳定通讯,并且配合触摸屏实现各种控制和监控功能啦。希望对大家有所帮助,要是有问题,欢迎一起讨论。

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐