news 2026/5/3 1:53:32

台达 24es 与两台施耐德 ATV310 变频器的 RTU 通讯示例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
台达 24es 与两台施耐德 ATV310 变频器的 RTU 通讯示例

台达24es通讯(rtu方式)两台施耐德ATV310变频器示例 施耐德变频器的rtu有一点麻烦,是和大多变频器通讯不一样,它有它的逻辑,但这并不妨碍我们和它的通讯,比如用台达plc来通讯,点动频率,加减速时间都可以设定,需要来看看吧 1.硬件,台达plc(es.eh…类型,支持modrw指令)施耐德ATV310(其他型号也可以)。 2.实现功能,两台变频器分别的控制,加减及设定频率,加减速点动频率设定,运行数据读取。

最近在做工业控制相关项目的时候,遇到了用台达 PLC 通过 RTU 方式和施耐德 ATV310 变频器通讯的需求。施耐德变频器的 RTU 通讯逻辑和大多变频器不太一样,有点麻烦,但这并不影响我们实现和它的通讯。下面我就给大家分享一下用台达 24es 进行两台施耐德 ATV310 变频器通讯的示例。

硬件准备

首先来看看我们需要用到的硬件:

  • 台达 PLC(es、eh 等类型,支持 modrw 指令)。这种类型的 PLC 支持 modrw 指令,这对于和变频器进行通讯至关重要,因为我们后续的数据读写都要依靠这个指令来完成。
  • 施耐德 ATV310 变频器(其实其他型号理论上也可以,不过这里以 ATV310 为例)。

实现功能

我们要实现的功能包括对两台变频器分别进行控制,比如加减及设定频率,加减速点动频率设定,还有运行数据的读取。下面我就结合代码给大家详细说说。

代码示例及分析

' 初始化部分 LD M0 ' 假设 M0 为启动标志位 CALL SUB_COMM ' 调用通讯子程序 ' 通讯子程序 SUBROUTINE SUB_COMM: ' 对第一台变频器(站号 1)进行频率设定 MOV D100 K1 ' D100 存放要设定的频率值,这里简单赋值一个固定值,实际可根据需求修改 MOV K1 D102 ' 站号 1 MOV K16#06 D104 ' 写单个寄存器功能码 MOV K16#2000 D106 ' 要写入的寄存器地址(这里是频率设定寄存器,具体地址参考变频器手册) MOV D100 D108 ' 要写入的数据 CALL MODRW ' 调用 modrw 指令进行通讯 ' 对第二台变频器(站号 2)进行频率设定 MOV D110 K2 ' D110 存放第二台变频器要设定的频率值 MOV K2 D102 ' 站号 2 MOV K16#06 D104 ' 写单个寄存器功能码 MOV K16#2000 D106 ' 要写入的寄存器地址 MOV D110 D108 ' 要写入的数据 CALL MODRW ' 调用 modrw 指令进行通讯 ' 读取第一台变频器的运行频率 MOV K1 D102 ' 站号 1 MOV K16#03 D104 ' 读多个寄存器功能码 MOV K16#2001 D106 ' 要读取的寄存器地址(运行频率寄存器) MOV K1 D108 ' 要读取的寄存器数量 CALL MODRW ' 调用 modrw 指令进行通讯 MOV D112 D120 ' 将读取到的数据存放到 D120 中 ' 读取第二台变频器的运行频率 MOV K2 D102 ' 站号 2 MOV K16#03 D104 ' 读多个寄存器功能码 MOV K16#2001 D106 ' 要读取的寄存器地址 MOV K1 D108 ' 要读取的寄存器数量 CALL MODRW ' 调用 modrw 指令进行通讯 MOV D112 D122 ' 将读取到的数据存放到 D122 中 RET

代码分析

  • 初始化部分:我们用一个启动标志位 M0 来控制通讯子程序的调用。当 M0 为 ON 时,就会调用通讯子程序SUB_COMM
  • 通讯子程序
  • 频率设定部分:对于每台变频器,我们先将要设定的频率值存放在一个数据寄存器中(如 D100 对应第一台,D110 对应第二台),然后设置站号、功能码(这里用的是写单个寄存器功能码K16#06)、要写入的寄存器地址(这里假设K16#2000是频率设定寄存器地址,具体要参考变频器手册),最后调用MODRW指令进行通讯,将频率值写入变频器。
  • 运行频率读取部分:同样,先设置站号、功能码(读多个寄存器功能码K16#03)、要读取的寄存器地址(假设K16#2001是运行频率寄存器地址)和要读取的寄存器数量,然后调用MODRW指令进行通讯,将读取到的数据存放到指定的数据寄存器中(如 D120 对应第一台,D122 对应第二台)。

通过以上代码和分析,我们就可以实现用台达 24es PLC 对两台施耐德 ATV310 变频器进行分别控制、频率设定和运行数据读取啦。在实际应用中,大家要根据具体的需求和变频器手册来调整代码中的参数哦。

台达24es通讯(rtu方式)两台施耐德ATV310变频器示例 施耐德变频器的rtu有一点麻烦,是和大多变频器通讯不一样,它有它的逻辑,但这并不妨碍我们和它的通讯,比如用台达plc来通讯,点动频率,加减速时间都可以设定,需要来看看吧 1.硬件,台达plc(es.eh…类型,支持modrw指令)施耐德ATV310(其他型号也可以)。 2.实现功能,两台变频器分别的控制,加减及设定频率,加减速点动频率设定,运行数据读取。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 7:56:03

探索 SSM 甜品交易系统

ssm甜品交易系统,包含文档,Javassm Ecplice,jsp最近在折腾一个超有趣的项目——SSM 甜品交易系统!今天就来和大家分享一下我的一些经历和发现。这个系统主要涉及到 Java、SSM(Spring Spring MVC MyBatis)…

作者头像 李华
网站建设 2026/5/3 1:53:12

select count(*) 表名 和select count(*) from 表名

mysql一次核对数据,少写了一个from,直接写成下面的sql了。select count(*) 表名结果无论哪个表都返回1,把我吓得捏了一把汗还以为数据被谁清空了。。原来是自己的手误,select count(*) 表名相当于把表名当成了列的别名&#xff0c…

作者头像 李华
网站建设 2026/5/3 1:53:18

Qwen3-Embedding-4B部署教程:Python调用避坑指南

Qwen3-Embedding-4B部署教程:Python调用避坑指南 1. Qwen3-Embedding-4B介绍 Qwen3 Embedding 模型系列是 Qwen 家族中专为文本嵌入和排序任务打造的最新成员,基于强大的 Qwen3 系列基础模型构建。该系列覆盖多种参数规模(0.6B、4B 和 8B&a…

作者头像 李华
网站建设 2026/5/3 1:53:33

RS ASIO音频延迟消除技术:实时演奏优化的完整解决方案

RS ASIO音频延迟消除技术:实时演奏优化的完整解决方案 【免费下载链接】rs_asio ASIO for Rocksmith 2014 项目地址: https://gitcode.com/gh_mirrors/rs/rs_asio 您是否遇到这些音频延迟困扰? 当您满怀激情地在摇滚史密斯中弹奏时,是…

作者头像 李华
网站建设 2026/5/3 1:53:18

基于multisim的两位二进制比较电路设计

设计一个两位二进制数&#xff08;AX2X1&#xff0c;BY2Y1&#xff09;的比较电路。(不能用集成的数值比较器&#xff0c;其他器件不限) 要求有三个输出A>B&#xff0c;A<B&#xff0c;AB分别对应三个输出端FA&#xff0c;FB&#xff0c;FO。 若A>B&#xff0c;FA1&am…

作者头像 李华
网站建设 2026/5/1 12:23:53

黑苹果配置革命:OpCore Simplify智能EFI生成解决方案

黑苹果配置革命&#xff1a;OpCore Simplify智能EFI生成解决方案 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 传统黑苹果配置的复杂性已经成为阻碍…

作者头像 李华