0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

modbus设备数据 保存到mysql数据库项目案例

协议转换网关 来源:协议转换网关 作者:协议转换网关 2025-07-10 12:48 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

目录
1 案例说明
2 VFBOX网关工作原理
3 准备工作
4 设置网关采集MODBUS从站数据
5 网关写数据到MYSQL数据库
6 安装MYSQL数据库
7 案例总结

1 案例说明

  1. 设置网关采集Modbus设备数据
  2. 把采集的数据写到MySQL数据库。

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. VFBOX网关。支持采集modbus设备数据,保存到MySQL数据库。
  2. 电脑。IP设置成192.168.1.198,和网关在同一个网段。
  3. 网线、12V电源
  4. Modbus从站设备。本文用一个温湿度传感器进行测试。

4 设置网关采集modbus从站数据

  1. 硬件连接。首先确认设备的接口RS232还是RS485接口。并按如下的方式进行连接。
    接口类型 设备 网关
    RS232接口 RX COM1-TX
    TX COM1-RX
    GND COM1-GND
    RS485接口 A COM1-A
    B COM1-B
  2. 在电脑上打开VFBOX Studio配置软件。新建工程,选择对应的设备类型。设备类型查看设备背面的标签。可选的型号有:VB301-1100,VB301-1200,VB301-1400,VB302-2400,VB303-2400.
    在这里插入图片描述
  3. 点击 新建设备,选择modbus RTU驱动。
    在这里插入图片描述
  4. 输入设备名称,自己定义设备名称。
    在这里插入图片描述
  5. 输入和设备相同的串口参数。比如,设备的波特率是9600,则下面的对话框也选择9600.
    在这里插入图片描述
  6. 增加要采集的数据。输入数据的数据类型和寄存器地址。
    在这里插入图片描述
  7. 填写说明。在添加“地址”的时候需要对modbus的通信指令有一些了解,这里面有一些默认的规则。可先查看设备的说明书,找到要读取的地址。然后通过对比下表进行设置。
    数据区 功能说明
    0X Digital Coils 数据类型:Boolean
    读写:可读写
    寄存器地址:00001-09999(10进制), 协议地址:0000H-270FH(16进制)
    对应的功能码:01H 05H 0FH
    1X digital Inputs 数据类型:Boolean
    读写:只读
    寄存器地址:10001-19999(10进制), 协议地址:0000H-270FH(16进制)
    对应的功能码:02H
    3X Analog Inputs
    数据类型:
    1 Register: short word
    2 Register: Long Dword float
    4 Register: LLong Qword Double
    读写:只读
    寄存器地址:30001-39999(10进制), 协议地址:0000H-270FH(16进制)
    对应的功能码:04H
    4X Holding Registers 数据类型:
    1 Register: short word
    2 Register: Long Dword float
    4 Register: LLong Qword Double
    读写:可读写
    地址范围:40001-49999(10进制),0000H-270FH(16进制)
    对应的功能码:03H 06H 10H
    其他说明:
  8. 地址可填写5位或者6位的地址长度。
  9. 如果设备的地址是从0开始,则设置网关时地址加1。
  10. 地址是10进制。

举例1:假设要读取的地址是40015,数据类型是float,地址从0开始,则查看上表,40015对应的数据区是“4X Holding Registers”,且数据类型是float,则数据区选择“4X Holding Registers(2 Registers)”,设备地址从0开始,则在网关里配置为40016,配置如下:
在这里插入图片描述

举例2:假设读取数据的功能码是03,地址是0x39,地址从1开始,数据类型是double。查看上表可知,03功能码对应的数据区是“4X Holding Registers”,数据类型是double,则数据区选择“4X Holding Registers(4 Registers)”,地址是0x39,转换成10进制是57,则设置如下:
在这里插入图片描述

  1. 设置完成后,点击菜单“下载”,把工程下载到网关里。
  2. 点击菜单“查看数据”,查看网关采集到的数据。
    在这里插入图片描述
  3. 如果显示的数据和实际不匹配,可能是字节顺序要调整。在下面的窗口中可以修改波特率,扫描间隔,通讯超时,字节顺序等参数。
    在这里插入图片描述
  4. 数据类型
    网关支持多种数据类型,用户在添加的时候可以根据采集到数据选择对应的数据类型。不同的设备可能有不同的数据类型名称,可对应选择。
    Boolean 位,布尔变量。变量存储为 8 位(1 个字节)的数值形式,但只能是True 或是 False。
    Char 有符号数,有负数。占用一个字节,8位。
    Byte 无符号数,占用一个字节,8位。
    Short 有符号短整型。有负数。长度2个字节,16位。
    Word 无符号的短整型,长度2个字节,16位。
    Long 有符号长整型,有负数。长度4个字节,取值范围为:-2^31 ~ (2^31 -1)。
    DWord 无符号的长整型,且占4个字节,32位。
    Float 单精度浮点型数据,长度 4 个字节,包括一个符号位、一个 8 位 二进制指数和一个 23 位尾数。浮点型转换成10进制数据的时候请注意字节顺序问题。在不同的设备中字节顺序不同,有4种不同的字节顺序:1234、4321、3412、2143。网关在转发浮点型数据的时候,不对字节顺序进行调整,所以在转换的时候请参考被采集设备的浮点数顺序。
    LLong LLong是长度为8个字节的有符号整数。有负数。
    Qword Qword是长度为8个字节的无符号整数。
    Double 双精度浮点(double)型,占8 个字节(64位)内存空间。

5 网关写数据到mysql数据库

  1. 在电脑上安装mysql数据库。完成安装后,关闭电脑上的防火墙和杀毒软件。
  2. 登录数据库后,选择Schemas,右键选择Create Schemas,输入名称
    在这里插入图片描述
  3. 打开VS网关配置软件,在导航栏选择MySQL,启用设置成Yes,输入MySQL的IP地址、端口、用户名、密码以及表名。表名不能为空。
    在这里插入图片描述
  4. 到Tags中,添加要写入数据库的标签,然后下载到网关
    在这里插入图片描述
  5. 下载完后打开MySQL,右键vbdata,选择Refresh All,然后再右键vbhistory,选择Select Rows,就可以看到数据
    在这里插入图片描述

6 安装mysql数据库

  1. 在服务器或者电脑上安装mysql数据库。到MySQL官网下载安装文件,以下载MySQL Community (GPL) Downloads为例说明。下载下图中箭头所指的版本。https://dev.mysql.com/downloads/
    在这里插入图片描述
  2. 安装时使用完整安装。
    在这里插入图片描述
  3. Config Type如下:
    在这里插入图片描述
  4. 密码验证选择和5.x的兼容。
    在这里插入图片描述
  5. 运行MYSQL Workbench软件。点击Schemsa(1),在左边的空白处点击右键,然后点击“Create Schema”(2),建立一个数据表,名称为:vbdata(3)。
    在这里插入图片描述
  6. 如果是V5.X以上的版本,安装完成后执行以下信息。root 123456改成数据库的用户名和密码。
    use mysql;
    CREATE USER 'root'@'%' IDENTIFIED BY '123456';
    grant all privileges on . to 'root'@'%';
    FLUSH PRIVILEGES;
    选中vbdata数据库,按如下顺序执行:
    在这里插入图片描述
  7. 关闭电脑上的防火墙和杀毒软件。

7 案例总结
使用协议转换网关可以很方便的实现不同协议的设备之间的数据转换。大量节省了项目实施过程的时间成本,人力成本。VFBOX网关产品都是工业级品质,符合工业应用的场景。只需要简单的参数配置,可以很快完成设备和系统之间的连接。方案优点:

  1. 不需要修改设备里的程序。
  2. 不影响设备原有的工作方式和功能。
  3. 只需要简单的配置就可以实现功能需求。
  4. 设备长期稳定工作。
  5. 网关运行架构如下

在这里插入图片描述

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • MODBUS
    +关注

    关注

    28

    文章

    2387

    浏览量

    82294
  • 网关
    +关注

    关注

    9

    文章

    6443

    浏览量

    55596
  • 数据库
    +关注

    关注

    7

    文章

    3993

    浏览量

    67742
  • MySQL
    +关注

    关注

    1

    文章

    897

    浏览量

    29241
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    SNMP设备数据 保存到MySQL数据库项目案例

    VFBOX协议转换网关支持PLC,modbus,EthernetIP,Profinet,CCLink,EtherCAT,IEC61850,IEC104,bacnet,DLT645,HJ212,opc ua,opc da,DNP3。
    的头像 发表于 10-15 15:27 251次阅读
    SNMP<b class='flag-5'>设备</b><b class='flag-5'>数据</b> <b class='flag-5'>保存到</b><b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b><b class='flag-5'>项目</b>案例

    PLC数据保存到MySQL数据库解决方案

    。将这些数据可靠、高效地保存到数据库,能够为企业搭建数据平台,支撑后续的数据分析、报表生成以及决策支持等应用。 在实际应用场景中,面对到多源
    的头像 发表于 09-30 16:50 1340次阅读
    PLC<b class='flag-5'>数据</b><b class='flag-5'>保存到</b><b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b>解决方案

    bacnet mstp设备数据 保存到MySQL数据库项目案例

    VFBOX协议转换网关支持PLC,modbus,EthernetIP,Profinet,CCLink,EtherCAT,IEC61850,IEC104,bacnet,DLT645,HJ212,opc ua,opc da,DNP3。
    的头像 发表于 09-18 14:49 349次阅读
    bacnet mstp<b class='flag-5'>设备</b><b class='flag-5'>数据</b> <b class='flag-5'>保存到</b><b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b><b class='flag-5'>项目</b>案例

    mysql数据恢复—mysql数据库表被truncate的数据恢复案例

    某云ECS网站服务器,linux操作系统,部署了mysql数据库。工作人员在执行数据库版本更新测试时,错误地将本应在测试执行的sql脚本在生产
    的头像 发表于 09-11 09:28 593次阅读
    <b class='flag-5'>mysql</b><b class='flag-5'>数据</b>恢复—<b class='flag-5'>mysql</b><b class='flag-5'>数据库</b>表被truncate的<b class='flag-5'>数据</b>恢复案例

    Ethercat设备数据保存到MySQL数据库项目案例

    VFBOX协议转换网关支持PLC,modbus,EthernetIP,Profinet,CCLink,EtherCAT,IEC61850,IEC104,bacnet,DLT645,HJ212,opc ua,opc da,DNP3。
    的头像 发表于 09-02 14:04 266次阅读
    Ethercat<b class='flag-5'>设备</b><b class='flag-5'>数据</b><b class='flag-5'>保存到</b><b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b><b class='flag-5'>项目</b>案例

    电力IEC104设备数据 保存到MySQL数据库项目案例

    VFBOX协议转换网关支持PLC,modbus,EthernetIP,Profinet,CCLink,EtherCAT,IEC61850,IEC104,bacnet,DLT645,HJ212,opc ua,opc da,DNP3。
    的头像 发表于 08-21 15:43 561次阅读
    电力IEC104<b class='flag-5'>设备</b><b class='flag-5'>数据</b> <b class='flag-5'>保存到</b><b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b><b class='flag-5'>项目</b>案例

    网口环保212设备数据 保存到MySQL数据库项目案例

    VFBOX协议转换网关支持PLC,modbus,EthernetIP,Profinet,CCLink,EtherCAT,IEC61850,IEC104,bacnet,DLT645,HJ212,opc ua,opc da,DNP3。
    的头像 发表于 07-15 16:41 1072次阅读
    网口环保212<b class='flag-5'>设备</b><b class='flag-5'>数据</b> <b class='flag-5'>保存到</b><b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b><b class='flag-5'>项目</b>案例

    串口环保212设备数据 保存到MySQL数据库项目案例

    VFBOX协议转换网关支持PLC,modbus,EthernetIP,Profinet,CCLink,EtherCAT,IEC61850,IEC104,bacnet,DLT645,HJ212,opc ua,opc da,DNP3。
    的头像 发表于 07-11 14:40 374次阅读
    串口环保212<b class='flag-5'>设备</b><b class='flag-5'>数据</b> <b class='flag-5'>保存到</b><b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b><b class='flag-5'>项目</b>案例

    企业级MySQL数据库管理指南

    在当今数字化时代,MySQL作为全球最受欢迎的开源关系型数据库,承载着企业核心业务数据的存储与处理。作为数据库管理员(DBA),掌握MySQL
    的头像 发表于 07-09 09:50 519次阅读

    MySQL数据库采集网关是什么?有什么功能?

    MySQL数据库采集网关是一种用于连接、采集、处理并传输数据MySQL数据库的中间设备或软件系
    的头像 发表于 05-26 15:20 466次阅读

    MySQL数据库是什么

    MySQL数据库是一种 开源的关系型数据库管理系统(RDBMS) ,由瑞典MySQL AB公司开发,后被Oracle公司收购。它通过结构化查询语言(SQL)进行
    的头像 发表于 05-23 09:18 923次阅读

    从Delphi、C++ Builder和Lazarus连接到MySQL数据库

      从 Delphi、C++ Builder 和 Lazarus 连接到 MySQL 数据库 MySQL 数据访问组件(MyDAC)是一个组件
    的头像 发表于 01-20 13:47 1329次阅读
    从Delphi、C++ Builder和Lazarus连接到<b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b>

    适用于MySQL和MariaDB的Python连接器:可靠的MySQL数据连接器和数据库

    和 Linux 的 wheel 包分发。 直接连接 该解决方案使您能够通过 TCP/IP 建立与 MySQL 或者 MariaDB 数据库服务器的直接连接,而无需数据库客户端。另外
    的头像 发表于 01-17 12:18 847次阅读
    适用于<b class='flag-5'>MySQL</b>和MariaDB的Python连接器:可靠的<b class='flag-5'>MySQL</b><b class='flag-5'>数据</b>连接器和<b class='flag-5'>数据库</b>

    MySQL数据库的安装

    MySQL数据库的安装 【一】各种数据库的端口 MySQL :3306 Redis :6379 MongoDB :27017 Django :8000 flask :5000 【二】
    的头像 发表于 01-14 11:25 865次阅读
    <b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b>的安装

    数据库数据恢复—Mysql数据库表记录丢失的数据恢复流程

    Mysql数据库故障: Mysql数据库表记录丢失。 Mysql数据库故障表现: 1、
    的头像 发表于 12-16 11:05 1003次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复—<b class='flag-5'>Mysql</b><b class='flag-5'>数据库</b>表记录丢失的<b class='flag-5'>数据</b>恢复流程