EthernetIP IO从站设备数据 转 Modbus RTU TCP项目案例
1 案例说明
1. 设置网关采集EthernetIP IO设备数据
2. 把采集的数据转成Modbus协议转发给其他系统。
2 VFBOX网关工作原理
VFBOX网关是协议转换网关,是把一种协议转换成另外一种协议。网关可以采集西门子,欧姆龙,三菱,AB PLC,DLT645,DLT698电表,modbus rtu tcp,环保的HJ212协议,opc ua和opc da,电力的IEC103 IEC104, IEC61850等,以及EthernetIP,Profinet IO,CCLink,EtherCAT现场总线协议,bacnet,MQTT,mysql,sqlserver数据库。不同型号的网关支持不同的协议,具体支持的协议参考网关侧面标签上的型号。依托500多种型号的网关产品,可以实现多种不同协议之间的互联互通。
网关连接在不同协议的设备之间,就像一个“翻译”,把一种设备支持的协议,转换成另一种设备支持的协议,从而实现两个不同协议的设备之间的数据交换。工作架构如下:

3 准备工作
1. 仰科网关。支持采集EthernetIP IO数据,Modbus协议转发。
2. 电脑。IP设置成192.168.1.198,和网关在同一个网段。
3. 网线、12V电源。
4 网关采集EthernetIP IO数据
1. EthernetIP IO协议一般用于采集机器人,控制器等设备的数据。
2. 安装VFBOX Studio软件。打开软件后,点击新建工程,设备类型选择实际网关的型号。可选的型号有:VB301-1100,VB301-1200,VB301-1400,VB302-2400,VB303-2400.
3. 点击“新建设备”,驱动类型选择如下:
4. 输入被采集设备的IP地址和端口号,端口号一般默认是44818
5. 按照被采集数据的设备配置网关的输入块、输出块的参数。这些参数和被采集设备保持一致。这些参数在被采集设备上查看。
6. 添加要采集的数据。需要知道这个点位的地址和数据类型,填写到如下的选项中。
7. 写数据到EIP设备的配置如下,读写类型设置成“写”
8. 配置完成后点击菜单“下载”,把工程下载到网关里。
9. 点击菜单“查看数据”,查看网关采集到的数据。对比一下当前值,“状态”显示Good,更新时间为当前时间就代表采集到了数据。

5 用Modbus协议转发数据
1. 点击菜单“服务”-“Modbus Slave”,把modbus TCP中的启用设置成Yes
2. 把要转发的数据添加到对应的寄存器下。
3. 配置完成后,点击“下载”,把工程下载到网关中。在电脑上就可以使用modbus的测试软件读取网关里的数据了。
6 从设备的的EDS文件获取参数信息
1. 有些EIP的从站设备提供了EDS文件,可以从EDS文件中获取点位信息。这些信息是需要填写到网关中。
2. 一般EIP设备上也有对应的显示和配置。请参考设备的使用说明书,先把EIP设备设置成EIP的从站,并且启动连接通道。
3. 打开设备的eds文件,找到如下格式的内容。定位到 [Connection Manager],找到Connection1的Path,类似 "20 04 24 64 2C 96 2C 65"; $ Path。定位24 2C 2C, 24后面的0x64是Configruation(100), 2C 后面的0x96是Output(150),第2个2C后面的0x65是 Input(101)。Instance的值是1。填写如下:
4. 如果 Path类似"20 04 25 00 64 00 2D 00 C6 00 2D 00 C7 00"; 则定位 25 00, 2D 00 2D 00, 后面的2byte是Instance,这种情况vs中Instance Number Size需配置成2。另外,常用的Input/Ouput/Configuration Instance 范围0-255,1个字节,但有些从站Instance范围用0-65535,需要2个字节。
5. 一些EIP设备是用下面的类似的格式定义了Instance Number Size的值。下图中的Param6定义了输入举例(Input Instance)的值3。
6. Configruation Size 一般填写0
7 案例总结
使用协议转换网关可以很方便的实现不同协议的设备之间的数据转换。大量节省了项目实施过程的时间成本,人力成本。VFBOX网关产品都是工业级品质,符合工业应用的场景。只需要简单的参数配置,可以很快完成设备和系统之间的连接。方案优点:
1. 不需要修改设备里的程序。
2. 不影响设备原有的工作方式和功能。
3. 只需要简单的配置就可以实现功能需求。
4. 设备长期稳定工作。
5. 网关运行架构如下
EthernetIP IO从站设备数据 转 Modbus RTU TCP项目案例的更多相关文章
- Modbus RTU 通信应用案例
如何打开项目归档文件 例程中的TIA博途项目文件与STEP 7项目文件均为归档文件,需要按如下方式打开: TIA博途项目文件 1. 打开TIA博途软件,通过软件左下方“项目视图”按钮切换至项目视图: ...
- Modbus RTU新版本指令介绍
Modbus RTU新版本指令介绍 TIA V13 SP1版本软件中提供了2个版本的Modbus RTU指令: 图1. 两个版本Modbus RTU指令 早期版本的Modbus RTU指令(图1. 中 ...
- Modbus RTU 通信工具设计(转)
Modbus RTU 通信工具设计 Modbus 是一个工业上常用的通讯协议.一种通讯约定. ModBus 协议是应用层报文传输协议(OSI 模型第7层),它定义了一个与通信层无关的协议数据单元(PD ...
- Modbus协议栈实现Modbus RTU多主站支持
前面我们已经详细讲解过Modbus协议栈的开发过程,并且利用协议栈封装了Modbus RTU主站和从站,Modbus TCP服务器与客户端,Modbus ASCII主站与从站应用.但在使用过程中,我们 ...
- C# 开发Modbus Rtu客户端 modbus测试Demo,Modbus 串口通信 , 虚拟MODBUS-RTU测试
前言 本文将使用一个NuGet公开的组件技术来实现一个ModBus RTU的客户端,方便的对Modbus rtu的服务器进行读写,这个服务器可以是电脑端C#设计的,也可以是PLC实现的,也可以是其他任 ...
- MODBUS TCP和MODBUS RTU的差别
TCP和RTU协议非常类似, MBAP Header长度共7个字节,分别为Transaction identifier(事务标识符),Protocol identifier(协议标识符),Length ...
- Modbus RTU程序开发解读
Modbus是很好的串口通信协议,其中RTU协议最为常用,通过Modbus RTU,我们可以轻松读写串口信息. 从官网下载libModbus,观察modbus.h可知关键的结构体为: typedef ...
- ModBus通信协议的【Modbus RTU 协议使用汇总】
1.RTU模式 当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符.这种方式的主要优点是:在同样的波特率下,可比ASCII方式传 ...
- Modbus RTU 协议使用汇总
原创地址:https://blog.csdn.net/u012166958/article/details/64920144 标准的Modbus 口是使用RS-232C 兼容串行接口,它定义了连接口的 ...
- 如何使用Delphi编写Modbus RTU CRC16的校验码
在工业控制中,Modbus RTU CRC16的校验码用的比较广泛,包括本人富士产品中,PC与伺服电机以及PC与VP系列的变频器的Modbus RTU通讯中都使用到了CRC16. 而对CRC1 ...
随机推荐
- WPF dotnet core 的 Blend SDK Behaviors 库
之前版本是通过安装 Blend SDK 支持 Behaviors 库的,但是这个方法都是通过引用 dll 的方式,不够优雅.在升级到 dotnet core 3.0 的时候就需要使用 WPF 官方团队 ...
- 9.prometheus监控--监控springboot2.x(Java)
一.环境部署 yum search java | grep jdk yum install -y java-11-openjdk-devel 二.监控java应用(tomcat/jar) JMX ex ...
- 【人脸识别】OpenCV获取自己的图像
思路:先获取10000张自己的图像,然后通过CNN神经网络进行学习. 第一步:先获取自己的脸的数据.如何做? 代码如下: import cv2 import os import sys import ...
- c 语言不输出空数据 (全面覆盖)
目录 去除空值的专栏 解决方案 一.通过数组的自身性质,让其值大于零 1. short 数组测试 2. int 数组测试 3. long 数组测试 4. float 数组测试 5. float 数组测 ...
- C 语言编程 — 堆栈与内存管理
目录 文章目录 目录 前文列表 栈(Stack)和堆(Heap) 栈 堆 内存管理 动态分配内存 重新调整内存的大小和释放内存 前文列表 <程序编译流程与 GCC 编译器> <C 语 ...
- angualr2+ 性能优化-trackBy
1.使用trackBy提高性能 为什么使用trackBy进行性能优化,在平时的开发中,我们对数组的处理基本都是通过接口获取新的数组进行替换或push,但是在这个过程中,Angular不知道你是要做什么 ...
- 倒计时7天!AIRIOT新品发布会,6月6日北京见。
随着物联网.大数据.AI技术的成熟和演进,智能物联网技术正在加速.深入渗透至各行业应用. AIRIOT物联网平台作为赋能数字经济发展和产业转型的数字基座,由航天科技控股集团股份有限公司(股票代码:00 ...
- MySQL 字段截取拼接
@ 目录 前言 需求: 拼接函数: 截取函数: 总结 前言 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i. 提示:以下是本篇文章正文内容,下面案例可供参考 需求: 将数据库中的某一个字段的 ...
- linux用户管理:创建用户,删除用户,管理用户,用户配置
目录 一.关于用户 二.用户的三种类型 三.与用户有关的配置文件详解 四.创建用户 五.设置用户密码 六.删除用户 七.用户密码时效管理 八.查看用户相关信息的命令 九.修改用户基本信息 十.管理用户 ...
- 为什么下载程序的时候会提示win-amd64.exe