企业号介绍

全部
  • 全部
  • 产品
  • 方案
  • 文章
  • 资料
  • 企业

ZLG致远电子

专注服务工业领域企业类用户,提供从感知控制、互联互通、边缘计算到ZWS IoT-PaaS云平台的产品与系统化方案。

186 内容数 1.1w 浏览量 15 粉丝

【EsDA协议转换】Modbus转OPC UA协议

03-16 59浏览量

OT/IT系统中的设备使用了各种各样的通讯协议,如何让这些设备实现信息共享,是当今工业互联网的一大难点。本文将讲解如何使用EsDA工具图形化低代码地开发一个Modbus与OPC UA的"转换器"。  简介随着工业互联网和产业数字化的加速推进,工业企业的IT(Information Technology)系统与OT(Operation Technology)系统也在加速融合。但OT/IT系统中的设备使用了各种不同的通讯协议,如何将它们互联起来,让所有的信息能够实现共享,是当前工业互联网的一大难点。

如图1,在实际项目中可能会存在这么一种场景,需要采集支持各种标准或非标准协议的工业设备的数据并将其发送到支持OPC UA/OPC DA协议的SCADA(Supervisory Control And Data Acquisition数据采集与监视控制)系统中。但由于SCADA系统支持的是OPC UA/OPC DA协议,这些设备不能直接接入到系统,这个时候就需要一个"转换器"。

图1

若需要采集数据的设备仅支持Modbus协议,此时就需要一个Modbus转OPC UA /OPC DA的"转换器",如下图2,本文以实现Modbus转OPC UA /OPC DA协议"转换器"为目标,展开讲解,介绍如何通过EsDA家族中的AWFlow DesignerEPC6450-AWI开发板套件,进行图形化低代码应用开发,快速完成一个"转换器"。


图2

1. 本次实验主要步骤

在PC机上配置Modbus模拟从设备;
 

业务开发,使用EsDA家族中的AWFlow Designer,进行图形化开发完成"转换器"业务;

在PC机上打开OPC UA Client模拟软件,读取OPC UA服务器数据。

2. EsDA方案与传统方案对比

"转换器"的传统的解决方案是采购一个协议转换网关,但与传统方案相比,使用EsDA 家族中的AWFlow Designer(嵌入式应用开发利器——【EsDA】AWFlow)与配套开发板方案主要有以下优点:

灵活性高支持二次开发,传统网关一般功能比较单一,使用EsDA方案,可以使用AWFlow Designer对硬件进行可视化配置,且可根据实际需求自由更改应用逻辑(且大多数情况无需重新编译和烧写固件),可同时做多种协议的"转换器",尽可能降低成本,甚至可以做协议转换之外的其它业务;

二次开发简单,使用AWFlow Designer简单"拖拽、连线"即可完成二次开发;

可复用性强、模块化程度高,AWFlow将常用模块封装为"节点",高度模块化,并支持自定义节点;

硬件成本比传统方案低。

 零基础EsDA入门若是刚开始接触 EsDA ,可先阅读EsDA MPC-ZC1系列文章,从零开始搭建环境和掌握基本开发流程,已有基础的可以跳过:

EsDA MPC-ZC1 入门(一)—— 软件安装

EsDA MPC-ZC1 入门(二)—— LED 控制

EsDA MPC-ZC1 应用——串口服务器(一)

  • EsDA MPC-ZC1 应用——串口服务器(二)

1. 实验准备工作

1.1 PC机软件安装

下载并安装OPC UA Demo Client(OPC UA客户端模拟工具)

  • 下载并安装ModbusSlave(Modbus从机模拟工具)

1.2 硬件准备工作

如图3,准备一块EPC6450-AWI开发板,并按照下图所示连接好硬件(另一端接到PC机上)。

图3

1.3 配置PC机

注意: 需要将PC机与开发板设置为同一网段( 例如本实验选用EPC6450-AWI开发板的ip为169.254.240.77故需要将PC机的ip改为169.254.240.xx),否则实验可能会失败,本文的PC机ip更改为169.254.240.136。1.3.1 配置模拟Modbus从设备

1.3.1.1 打开刚才安装的Modbus Slave软件,如下图4。

图4

1.3.1.2 依次点击Connection–>Connection Setup,并根据图5配置从设备参数,并点击OK保存设置。

图5

1.3.1.3 按F8弹出Slave Definition界面,并如图6所示进行配置,点击OK保存。

图6

1.3.1.4 双击红框位置,配置Modbus从设备对应寄存器的值,如图7所示。图72. EsDA业务开发

本次实验主要完成的是上图红框部分,即EPC6450-AWI作为一个"转换器",其业务主要分为两大部分:

从Modbus设备读取数据;
 

  • 启动OPC UA服务器,创建变量,并将上一步读取到的数据的值写入(让OPC UA模拟客户端读取)。

2.1 应用流图绘制

2.1.1 依次将画布拖出modbus_master_in、modbus_parse_in、fscript、log、opc_ua_server节点,并依次连线。

2.1.2 双击modbus_master_in节点,对应之前在PC机上Modbus Slave模拟软件的参数,进行配置。

2.1.3 配置modbus_master_in节点连接参数与数据读取方式,并点击完成。

2.1.4 配置modbus_parse_in节点,配置Modbus数据解析方式,并点击完成。

2.1.5 在fscript节点编写脚本,配置OPC UA服务器初始参数,并将从Modbus设备读取到的数据写入OPC UA服务器。

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

//脚本如下:if (state == 0) {//opcua_servermy_modbus_testopcua_server_add_folder(1, "my_modbus_test");//opcua_server:在文件夹zlg_gateway1里新建一个对象com1.m1opcua_server_add_object(1, "dev1", "my_modbus_test"); //opcua_server:在对象dev1里新建一个变量test_data,类型Uint32,只读opcua_server_add_variable(1, "test_data", "UInt32", "dev1"); //标记已经初始化过了state = state + 1;msg.payload = "opcua server creat variable";} else if (state == 1) {var moudbus_read = msg.payloadvar data = iformat("%d",moudbus_read) //将读取到的数据写入opcua_server的test_data变量中opcua_server_variable_write(1, "test_data",data)}

至此,"转换器"业务流图已经开发完成。

2.1.6 将开发板与AWFlow Designer建立连接并将应用流图下载到开发板。

 实验结果

配置模拟OPC UA客户端,读取数据。1. 打开刚才安装的OPC UA Demo Client软件。2. 双击打开对话配置菜单,输入服务器地址,并建立连接。

3. 查看转换器创建的文件夹与数据,数值为18正是之前所配置的Modbus从设备寄存器中的数值。

4. 修改Modbus模拟从设备的数值为38,片刻后,OPC UA Client模拟软件上的数值也变为38,实验成功。

最近浏览过的用户(0查看全部

为你推荐

  • 【产品应用】基于CAN智慧云实时查看汽车GPS轨迹2023-05-26 08:28

    汽车路试场景下,测试车辆还未完善,缺少完整的远程监控功能,难以查看车辆的路程信息,适配ZLG致远电子提供的CANDTU系列设备与CAN智慧云,可以云端实时查看路试车辆行驶轨迹与速度。应用场景在汽车路试中,众多厂商只能获取部分的测试数据。然而实际上,测试工程师不但需同时查看多台测试车辆当前的位置,还需查看路试的行驶轨迹或车辆的行驶速度,配合测试的数据进行相互校
    5浏览量
  • 【EsDA应用】蓝牙服务端节点详解2023-05-25 08:27

    蓝牙作为一种近距离无线通信技术,被广泛使用在汽车,智能家居和医疗等领域中。本文主要介绍如何通过EsDA开发套件,快速实现蓝牙服务器的相关应用业务。简介前面文章讲解了ble_client的相关节点和业务处理,有兴趣的可以跳转链接【EsDA应用】蓝牙客户端节点详解去查看。本文主要基于MPC_ZC1开发板以及可将节点进行拖拽连接的图形化设计工具AWFlowDesi
  • 【产品应用】如何利用IoT云平台统计设备数据?— 进阶篇2023-05-24 08:28

    设备数据上云,解析后的设备数据一般是时序存储,但纯粹的设备时序数据无法给用户带来更大的业务价值,需要根据业务需求进行额外的数据统计分析。本文将介绍如何利用ZWS云平台的自定义统计算法对数据进行统计。应用场景上一篇《如何利用IoT云平台统计设备数据?—基础篇》介绍了如何运用ZWS云平台中的内置统计算法进行数据统计,这次将介绍如何创建自定义统计算法。为什么需要自
    6浏览量
  • 【技术分享】物联网ZigBee技术详解② — 组网类型2023-05-23 08:28

    ZigBee是无线通信中最重要的无线协议之一,在各种物联网通信领域中得到了广泛应用。ZigBee技术在物联网应用中的成功,与其强大的组网功能密不可分。本期文章和你一起了解ZigBee的组网类型。ZigBee网络设备类型ZigBee为了充分利用硬件资源避免硬件资源的浪费,同时兼顾低功耗、低成本的硬件考虑,定义了两种设备类型,它们分别是全功能设备和精简功能设备。
    4浏览量
  • 【产品应用】隔离收发器全“芯”升级,你知道哪些?2023-05-20 08:28

    传统灌封类隔离收发器,虽能满足一般的工业环境,但对于环境要求更高场合并不适用,加上体积较大,用于高密度PCB器件布局更是捉襟见肘。ZLG致远电子全”芯“升级的隔离收发器恰恰解决了这些痛点。新升级“芯”优势ZLG致远电子目前推出的SM系列全隔离收发芯片使用了先进的SiP封装技术,相较于传统的灌封类技术,SM系列全隔离收发芯片具有高集成度、物理尺寸小、电性能高、
    8浏览量
  • 【产品应用】如何利用IoT云平台统计设备数据?— 基础篇2023-05-19 08:27

    通过查询设备历史数据,可以看到数据一段时间的变化,如果想将设备数据进行进一步处理和聚合,数据统计必不可少。本文将介绍如何使用ZWS云平台的数据统计功能,以及内置算法的实例操作。应用场景设备上报到ZWS云平台的数据经过解析后可以直观地看到某一时刻设备的数据状态,而想观察设备数据整体的特征或者分析某一个时间段数据,就得利用统计功能对数据进行处理:统计数据准备首先
    11浏览量
  • 【EsDA应用】5分钟快速实现图像人脸检测2023-05-18 08:28

    人脸识别是一种高安全性的生物识别技术,广泛应用在安防、身份验证等领域。而人脸检测是进行人脸识别的重要前提,本文主要介绍如何基于EsDA设计的人脸检测节点,快速实现人脸检测功能。简介人脸识别是一种高安全性的生物识别技术,在安防、身份验证等领域被广泛应用。本文在【EsDA应用】5分钟快速实现摄像头图像采集的基础上,使用M6G2C核心板,简单介绍如何基于EsDA设
    11浏览量
  • 【技术分享】如何提高多路热电偶测量的通道一致性2023-05-17 08:28

    多路热电偶测温容易遇到通道精度的一致性问题,主要原因是冷端的温度不一致性。本文分析该问题,并推荐相应的电路解决方案。热电偶冷端的实际位置热电偶是一种温差元件,如下图1,它的输出信号是两个线端之间的电压差:a(TA1-TA2)-b(TB1-TB2)。由于热源处是一个点,TA1和TB1相等,可记为TH。若室温处的两个线端A2和B2的温度TA2和TB2也相等,记为
    13浏览量
  • 【技术分享】M6Y2C+ePort-M辐射整改2023-05-16 08:28

    本文以M6Y2C核心板平台搭配ePort-M的工控整机为案例,通过测试结果直观感受时钟驱动强度与SlewRate对辐射测试的影响。ePort-M模块与MAC端通过RMII接口进行通讯,其Pin6脚为RMII的参考时钟REFCLK,频率为50MHz,该时钟由M6Y2C核心板提供,ePort-M作为接收端。下图1和图2所示为某工控整机的辐射测试结果,该工控整机使
    10浏览量
  • 【产品应用】CANopen主站如何获取Modbus设备的数据2023-05-12 17:31

    CANopen通信硬件接口为CAN总线,然而Modbus通信硬件接口为串口/以太网口;那么问题来了:CANopen主站如何获取Modbus型传感器的数据呢?让我们一起来实现。PXB-6021是ZLG致远电子推出的一款ModbustoCANopen协议转换器,具有1路CAN,1路百兆以太网和1路RS485。该产品支持ModbusRTU及ModbusTCP,可以
    18浏览量