使用VFBOX网关实现变频器EthernetIP转EtherCAT通信的项目案例

一、项目背景

某自动化生产线中,现场有多台变频器(如ABB、丹佛斯、台达等支持EtherNet/IP协议的变频器),用于控制电机的转速。上位控制系统采用西门子或倍福等EtherCAT主站型PLC,要求实时采集变频器的运行频率、输出电流、输出电压、故障代码等参数,并能通过PLC向变频器下发频率设定值、启停控制等指令。

由于变频器只支持EtherNet/IP协议,而PLC控制器使用EtherCAT协议,两种协议无法直接通信。为解决这个问题,项目中采用了VFBOX协议转换网关,实现EtherNet/IP与EtherCAT之间的双向数据转换,无需修改变频器和PLC原有程序。

二、方案架构

整个系统的网络架构如下:

变频器(EtherNet/IP从站设备)
        │  EtherNet/IP
        ▼
   VFBOX协议转换网关
        │  EtherCAT
        ▼
PLC控制器(EtherCAT主站)

VFBOX网关相当于一个"翻译官",通过EtherNet/IP协议采集变频器数据,再以EtherCAT从站的身份将数据转发给PLC主站;反向地,PLC下发的控制指令也通过网关写入变频器。

三、准备工作

  1. VFBOX网关一台,要求支持采集EtherNet/IP数据,并支持EtherCAT从站转发功能(参考网关侧面标签型号)。
  2. 电脑一台,IP地址设置为与网关同一网段(如192.168.1.198)。
  3. 网线、12V电源
  4. 变频器的EtherNet/IP参数资料:IP地址、端口号(默认44818)、输入/输出实例号(Instance)及数据长度;如有EDS文件更佳。

四、网关采集变频器EtherNet/IP数据

1. 新建工程

安装并打开VFBOX Studio软件,点击"新建工程",设备类型选择与网关实际型号一致的选项(如VB301-1100、VB301-1200、VB301-1400、VB302-2400、VB303-2400等)。

2. 添加采集设备

点击"新建设备",驱动类型选择 EtherNet/IP IO(CIP协议)。

3. 填写变频器连接参数

输入变频器的IP地址和端口号,端口号默认44818。

4. 配置输入/输出块(Instance)参数

按照变频器手册设置Connection的输入实例(Input Instance)、输出实例(Output Instance)和长度。这些参数必须与变频器侧的配置保持一致。

例如:Output Instance = 150(100),Input Instance = 101(101),Configuration Instance = 100,长度根据变频器数据区大小填写。

5. 添加采集数据点

根据变频器通信手册中的寄存器地址表,添加需要采集的数据点,例如:

数据点 地址 数据类型 读写类型
运行频率 Output Assembly 地址区 Float/Word
输出电流 同上 Word
输出电压 同上 Word
故障代码 同上 Word
频率设定值 Input Assembly 地址区 Float/Word
启停控制字 同上 Word

注意:向变频器写数据的点,读写类型必须设置为"写"。

6. 下载工程并验证

点击菜单"下载",将工程下载到网关。然后点击"查看数据",确认采集点的"状态"显示为Good、更新时间为当前时间,即表示网关已成功采集到变频器数据。

五、从变频器EDS文件获取参数信息

如果变频器厂商提供了EDS文件,可以直接从文件中读取连接参数:

  1. 将变频器设置为EtherNet/IP从站模式,并启用连接通道。

  2. 打开EDS文件,定位到 [Connection Manager] 段,找到Connection1的Path,类似:

    "20 04 24 64 2C 96 2C 65"; $ Path
    

    解析方法:定位 24 2C 2C

    • 24 后面的 0x64 → Configuration Instance = 100
    • 第一个 2C 后面的 0x96 → Output Instance = 150
    • 第二个 2C 后面的 0x65 → Input Instance = 101
    • Instance值 = 1,Number Size = 1字节
  3. 如果Path格式类似 "20 04 25 00 64 00 2D 00 C6 00 2D 00 C7 00"(即25 00、2D 00分隔),则Instance需要用2个字节表示,此时Instance Number Size需配置为2。常用Instance范围0-255为1字节,0-65535为2字节。

  4. 有些EDS文件通过Param参数定义Instance值,例如Param6定义输入实例(Input Instance)= 3,照此填写即可。

  5. Configuration Size一般填写 0

六、启动EtherCAT从站转发数据

1. 启用EtherCAT服务

进入菜单"服务→EtherCAT",将启用设置为 Yes。主要参数说明:

参数 说明
IN/OUT网口 网关连接PLC主站(EtherCAT主站)的网口
存储区大小 根据实际传输的数据量选择对应大小
Inputs 网关输出给PLC主站的数据(即采集的变频器数据)
Outputs PLC主站输出给网关的数据(即下发给变频器的控制数据)

2. 配置Inputs

点击"Inputs",添加网关要输出给PLC的变频器数据,如运行频率、电流、电压、故障代码等。

3. 配置Outputs

点击"Outputs",添加PLC下发给网关、再由网关写入变频器的数据,如频率设定值、启停控制字等。

4. 下载工程并生成ESI文件

完成配置后点击"下载"将工程下载到网关;然后点击"Generate ESI File"生成ESI描述文件,将该文件导入EtherCAT主站PLC中(如TwinCAT、Codesys或PLC厂家的组态软件),即可扫描到VFBOX从站并建立通信。

注意:如果后续修改了数据点或映射参数,需要重新下载工程、重新生成ESI文件,并再次导入主站。

七、PLC侧配置(以TwinCAT为例)

  1. 将生成的ESI文件复制到主站组态软件的ESI目录。
  2. 扫描网络,找到VFBOX EtherCAT从站设备并添加。
  3. 在主站程序中建立变量映射,与网关配置的Inputs/Outputs数据一一对应。
  4. 下载PLC程序,运行后即可实现:
    • PLC实时读取变频器的频率、电流、电压、故障状态;
    • PLC向变频器写入频率设定值和控制指令。

八、案例总结

通过VFBOX协议转换网关,本项目在不修改变频器和PLC任何程序的前提下,快速实现了EtherNet/IP设备与EtherCAT主站系统之间的双向数据交换。方案优点:

  1. 无需修改设备程序——变频器与PLC保持原有工作方式;
  2. 配置简单——只需在网关软件中完成设备参数、数据点和映射表配置;
  3. 实施周期短——避免了二次开发,节省大量时间和人力成本;
  4. 工业级品质——网关可长期稳定运行于工业现场环境。
posted @ 2026-09-15 17:12  vfbox-2212  阅读(4)  评论(0)    收藏  举报