首页 > 其他分享 >项目实践 采集Profinet IO从站设备数据转modbus方案

项目实践 采集Profinet IO从站设备数据转modbus方案

时间:2024-01-31 10:06:24浏览次数:29  
标签:网关 modbus IO Profinet 数据 设备

1 功能需求 在很多项目应用中,需要把Profinet IO设备的数据发送到modbus协议的scada系统中。因为在系统主要是modbus协议,Profinet IO设备不能直接接入到系统。Profinet IO A协议内容非常复杂,所以modbus设备不直接支持Profinet IO协议。使用一个协议转换的网关设备可以很好的实现两个协议之间的转换。

2 功能实现 不同协议设备之间的互联互通,主要使用协议转换网关来实现。在网关的选型上,需要考虑两方面的问题。一个是硬件接口,如RS485,RS232,网口等连接方式。一个是通信协议的转换,如modbus转成Profinet IO。在选择协议转换网关的时候,则可以根据现场设备的接口数量,协议类型选择合适的设备,这样可以避免成本的浪费。VFBOX网关设备作为一个桥梁连接在不同设备之间。工作原理是网关分别和不同设备进行通信。用户可以在网关里进行配置,建立不同设备之间的数据对应关系。配置完成后,网关会自动采集设备里的数据,并把数据从一个设备转发给另外一个设备。系统架构如下: 图片.png

3 设置网关采集ProfinetIO从站设备数据

  1. 安装VFBOXStudio软件。打开软件后,点击新建工程,设备类型选择实际网关的型号。参考网关背面标签。
  2. 图片.png
  3. 点击“新建设备”,驱动类型选择如下:
  4. 图片.png
  5. 导入设备的GSD文件,获取Profinet IO从站的信息。设备类型信息(BACICV1.4),设备名称(robot2),设备的IP地址。
  6. 图片.png
  7. 导入后,双击设备名称,弹出设备属性对话框。
  8. 图片.png
  9. 添加要采集的数据。DI或者Input的读写控制是“读”, Do或者Output的读写控制是“写”,
  10. 图片.png
  11. 配置完成后点击菜单“下载”,把工程下载到网关里。
  12. 点击菜单“查看数据”,查看网关采集到的数据。可以双击“写”属性的标签,发送数据给设备。
  13. 图片.png

4 用Modbus协议转发数据

  1. 点击菜单“服务”-“Modbus Slave”,把modbus TCP中的启用设置成Yes
  2. 图片.png
  3. 把要转发的数据添加到对应的寄存器下。
  4. 图片.png
  5. 配置完成后,点击“下载”,把工程下载到网关中。在电脑上就可以使用modbus的测试软件读取网关里的数据了。

5 选择槽号和数据地址

  1. 网关中导入GSD文件后,需要选择采集数据的slot。打开设备属性的配置窗口。
  2. 如下导入某个GSD文件后,设备的数据分布在以下数据块中。比如,要采集的数据在Input Float32,则选择此数据块。此处的选择要和proneta软件上读取的插槽保信息持一致。
  3. 图片.png

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

  1. 不需要修改上位机里的程序。
  2. 不用调整上位机的参数。
  3. 不影响上位机原有的工作方式和功能。
  4. 只需要简单的配置就可以实现功能需求。

标签:网关,modbus,IO,Profinet,数据,设备
From: https://blog.51cto.com/vfbox/9501736

相关文章

  • 如何在vue3项目app.ts中获取第三方跳转过来的token 提前处理携带token情况的初始化 两
    如何在vue3项目app.ts中获取第三方跳转过来的token提前处理携带token情况的初始化两种方式路由守卫和window.location在Vue3项目的app.ts文件中获取第三方跳转过来的token,你可以使用VueRouter的route对象来获取URL参数。假设你的token参数位于URL的查询字......
  • 物联网浏览器(IoTBrowser)-Modbus协议集成和测试
    Modbus协议在应用中一般用来与PLC或者其他硬件设备通讯,Modbus集成到IoTBrowser使用串口插件模式开发,不同的是采用命令函数,具体可以参考前面几篇文章。目前示例实现了Modbus-Rtu和Modbus-Tcp两种,通过js可以与Modbus进行通讯控制。   一、开发插件添加引用添加NModbus4,......
  • 【侯捷C++面向对象笔记】补充2-pointer-like & function-like class
    关键词:仿函数pointer-like:将一个类设计得像指针一样,通常通过重载*和->操作符实现。function-like:将类的成员设计得能像函数一样使用,通过重载()操作符实现。TipDemo应用:智能指针注意:->符号在作用一次后,会继续作用下去(不同于*号)Foof(*sp):f为一个Foo对象本体,使用时f.m......
  • Overview how does plpgsql function get executed
    TheSQLCREATEFUNCTIONprocess_orders()RETURNSvoidAS$$DECLAREcrecord;BEGINFORcINSELECT*FROMordersLOOPRAISENOTICE'Processing:%%',c.id,c.total;ENDLOOP;END;$$LANGUAGEplpgsql;createtableorders(idint,t......
  • 2018-2019, ICPC, Asia Yokohama Regional Contest 2018
    Preface又被输出格式创飞了,E题狂暴卡1h后面发现原来输出边的时候没有按照一小一大的顺序来输出不过后面也没啥会的题了,几何、线代题做不来,对着一个四色定理题乱搞一波发现样例都过不去值得一提的是这场前期完全是顺序开题,从A一直开到EA.DigitsAreNotJustCharacters签到......
  • Qt 解决qtcreator工程文件例程报错error: cannot initialize object parameter of typ
    qt下载好并且环境配置完成,kits和qt都已配置完成在qtcreator中,在终端手动编译qmakemake都完全没问题,但是在qtcreator中却报错。即使是新建工程例程都报错。版本qt5.6.0qtcreator4.11.0报错main.cpp:96:error:cannotinitializeobjectparameteroftype‘QWidget’wi......
  • Visual Studio 配置 MySQL
    1.将MySQL中的include文件和lib文件资源粘贴到VisualStudioinclude文件下和lib文件下找到MySQL的lib和include位置找到VisualStudio的include和bin文件位置将其放进去2.找到两个文件,放在创建的项目目录里在项目里,点击这个,打开文件夹位置......
  • Qt cannot initialize object parameter of type ‘QWidget‘ with an expression of
    报错如图:qtcreator工程文件例程报错error:cannotinitializeobjectparameteroftype‘QWidget’withanexpressionoftype‘tab_workface’问题分析可能因为qtcreator4.11.0basedonqt5.12版本略微冲突导致。。问题解决帮助->关于插件,将ClangCo......
  • IPQ4019: Revolutionizing Long-Range Wireless Connectivity
    UnveilingtheIPQ4019:RevolutionizingLong-RangeWirelessConnectivityIntroduction:TheIPQ4019System-on-Chip(SoC)emergesasagame-changerforPoint-to-Point(PTP)andPoint-to-Multipoint(PTMP)applications,presentingadvancedfeaturestailoredfor......
  • Python中HTTPException(基于werkzeug.exceptions包)
    当我们在开发HTTP服务时(接口服务),由于很多从内部引发的Python异常,会触发标准HTTP非200响应的视图。为了让前端有着更好的视图体验(如果因为内部异常,会返回给前端/调用方更好的一个页面/返回)。对于我们来说,给予调用方一个固定的返回格式时非常重要的(因此通过HTTPException......