通讯网关软件018——利用CommGate X2MQTT实现MQTT访问OPC Server

news2024/11/24 0:36:58

本文介绍利用CommGate X2MQTT实现MQTT访问OPC Server。CommGate X2MQTT是宁波科安网信开发的网关软件,软件可以登录到网信智汇(http://wangxinzhihui.com)下载。

【案例】如下图所示,SCADA系统配置OPC Server,现在上位机需要通过MQTT Subscrible软件来获SCADA的数据。

【解决方案】设置网关机,与OPC Server采用以太网通讯,与MQTT Client上位机采用以太网通讯,安装CommGate X2MQTT软件。

1. 配置DCOM:在网关机和OPC Server上配置DCOM,重启网关机、OPC Server。

2. 在网关机上运行OPC Client软件,与OPC Server进行OPC 通讯调试。

3. MQTT通讯调试:在网关机上运行MQTT调试工具,与MQTT Broker Server通讯调试。通讯正常后,记下通讯参数。

4. 配置X2MQTT 出口端参数:在X2MQTT安装目录Ini下编辑X2MQTT.ini,修改出口端参数。

[OUT]
;通讯类型MQTT,不做修改
Type = MQTT

;MQTT Broker服务器IP
ServerIP =

;MQTT Broker服务器端口
Port = 1883

;用户ID,可以随意设置
ClientID =

;认证用户
UserName =

;认证密码
Password = 

;消息话题
Topic = Values

;QOS   0: 最多一次传递,数据可能丢失  1:最少一次传递,数据可能重复 2:恰好一次传递,数据不会重复
QOS = 1

;保持激活的间隔时间,单位s,最小值为10s
KeepAliveInterval = 20

;默认为1。如果设置为1,代表客户端请求删除与代理关联的会话状态。如果设置为0,代表在断开连接后保留会话状态,以便下一次连接时恢复。
CleanSession = 1

;默认为1。如果设置为1,需要发送完一条消息才能发送下一条。如果设置为0,飞行中的消息最多可达10条
Reliable = 1

;连接超时时间,单位s
ConnectTimeout
 = 10

;尝试重连的时间,单位s
RetryInterval = 10

;发送超时时间,单位s
SendTimeout
 = 10

;1次发送标签数,取值10-1000
SendTagsOnce = 1000

[IN]
;输入端配置文件名,不含后缀
INI = OpcDa

Type =

5. 配置X2MQTT 入口端参数:在X2MQTT安装目录Ini下编辑OpcDa.ini,按照刚才记下的通讯参数修改入口端参数。

[IN]
;OPC通讯,不做修改
Type=OPC_CLIENT
;输入OPC Server的名称
OpcName=OPCSim32 2.0  
;输入OPC Server的IP
OpcNode=127.0.0.1
;1次装载标签个数,取值范围 1-2000
LoadMode = 1000

6. 标签配置:在X2MQTT安装目录下编辑X2MQTT.xls,配置标签。

7. 运行X2MQTT.exe,启动网关。

8. 用MQTT Subscrible连接MQTT Broker服务器,确认数据是否正确。

9. 详细配置说明见《X2MQTT V4使用手册》。

更多通信资源请登录网信智汇(http://wangxinzhihui.com)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1068780.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ORACLE中SQL运算符的优先级

SQL运算符优先级: 注: 1、可以使用括号改变优先级顺序 2、可以看出OR的优先级最低,算术运算符的优先级最高 另:操作符优先级 * / - 1、乘除的优先级高于加减; 2、同一优先级运算符从左向右执行; 3、括号内的…

yolo_tracking中osnet不支持.pth格式,而model_zoo中仅有.pth

yolo_traking-7.0中REID模块用到了osnet,track.py中模型文件不支持.pth,而model_zoo中仅有.pth,改动代码太麻烦了,网上查到的.pth文件转化为.pt文件都需要读取网络架构,不太可能实现。 读取osnet_x0_25_msmt17.pth发现…

(高阶) Redis 7 第21讲 IO多路复用模型 完结篇

🌹 以下分享 Redis IO多路复用模型,如有问题请指教。🌹🌹 如你对技术也感兴趣,欢迎交流。🌹🌹🌹 如有对阁下帮助,请👍点赞💖收藏🐱‍🏍分享😀 IO多路复用模型是什么 I/O:网络IO 多路:多个客户端连接(连接即套接字描述符,即socket或channel),指…

BJT晶体管

BJT晶体管也叫双极结型三极管,主要有PNP、NPN型两种,符号如下: 中间的是基极(最薄,用于控制),带箭头的是发射极(自由电子浓度高),剩下的就是集电极&#xff0…

蓝宝石(白宝石)镜片

蓝宝石 ( AL2O2 三氧化二铝 ) (注意透光波段 5um以下) 特此记录 anlog 2023年10月7日

解决:使用WileyNJDv5_Template模板时,无法生成pdf文件。

目录 问题: 解决办法: 检查过程: WileyNJDv5-Template模板链接:New Journal Design LaTeX template (wiley.com) 问题: 使用wileyNJDv5_Template模板时候,无法生成pdf文件。无论是使用texlivetexmaker还…

2023年中国石化行业节能减排发展措施分析:用精细化生产提高生产效率,降低能耗[图]

2022年,我国石油和化工行业克服诸多挑战取得了极其不易的经营业绩,行业生产基本稳定,营业收入和进出口总额增长较快,效益比上年略有下降但总额仍处高位。2022年,我国石油化工行业市场规模为191761.2亿元,同…

【Vue面试题七】、SPA (单页面) 首屏加载速度慢怎么解决?

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:SPA首屏加载速度慢的怎么…

【Python_PySide2学习笔记(十八)】勾选按钮QCheckBox类的基本用法

勾选按钮QCheckBox类的基本用法 前言正文1、创建勾选按钮2、勾选按钮获取选中状态3、创建按钮组4、按钮组添加勾选按钮5、按钮组设置单选6、按钮组信号:选中状态改变7、按钮组获取所有勾选按钮7.1、获取勾选按钮对象7.2、获取勾选按钮文本7.3、获取勾选按钮ID7.4、按…

超越bash:让你的命令行更聪明

本周岛主给大家带来一款能够提高工作效率的神器——zsh 在今天的计算机领域,命令行终端是一个不可或缺的工具。尽管现代计算机的用户界面变得越来越友好,但对于高级用户来说,命令行终端仍然是一种更加高效、灵活的工作方式。在命令行终端中&…

进阶指针(五)—— 指针笔试题

✨博客主页:小钱编程成长记 🎈博客专栏:进阶C语言 🎈相关博文:进阶C语言(一)、进阶C语言(二)、进阶C语言(三)、进阶指针(四&#xff0…

问题即机会,中国充电服务商加速向上

10月4日,能链智电与香港特别行政区引进重点企业办公室(简称:“引进办”)达成合作,成为首批重点引进企业。 引进办是香港特区政府引进世界各地高潜力重点企业来港的窗口,从这则消息可以看出,新能…

OpenCV 13(模版匹配和霍夫变换)

一、模版匹配 所谓的模板匹配,就是在给定的图片中查找和模板最相似的区域,该算法的输入包括模板和图片,整个任务的思路就是按照滑窗的思路不断的移动模板图片,计算其与图像中对应区域的匹配度,最终将匹配度最高的区域…

三相PWM整流器有限集模型预测电流控制Simulink仿真模型

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

正点原子嵌入式linux驱动开发——U-boot移植

uboot的移植并不是说从零开始将uboot移植到所使用的开发板或者开发平台上。这个对于我们开发者来说基本是不可能的,这个工作一般是半导体厂商做的,半导体厂商负责将uboot移植到他们的芯片上,因此半导体厂商都会自己做一个开发板,这…

平台项目首页——左侧菜单栏实现(三)

这里写目录标题 一、页面布局设计二、左侧菜单栏设计1、注意2、使用组件1、导入组件2、注册组件3、使用组件 3、用户信息代码设计4、左侧菜单代码设计5、用户信息——注销登录和切换项目功能实现 三、嵌套路由实现1、配置home的嵌套路由(子路由)2、home中…

Python-将常用库写入到一个Python程序里面,后续使用直接导入这个文件即可,就相当于导入了所有的库,就不用每次都写一堆的import了

sys.path.append(rD:\Backup\Documents) # 上方代码中的这一句 是我的常用库 所在的文件路径 当然,文件名建议写英文(比如:Common_use_lib.py), 不要写:常用库... 我这里只是演示使用,方便理…

机器学习笔记 - 基于pytorch、grad-cam的计算机视觉的高级可解释人工智能

一、pytorch-gradcam简介 ​Grad-CAM是常见的神经网络可视化的工具,用于探索模型的可解释性,广泛出现在各大顶会论文中,以详细具体地描述模型的效果。Grad-CAM的好处是,可以在不额外训练的情况下,只使用训练好的权重即可获得热力图。 1、CAM是什么? CAM全称Class Activa…

GitHub工具之云资产管理

文章目录 0x01 介绍0x02 软件架构0x03 下载地址0x04 更新记录0x05 实现功能0x06 使用截图1、云存储工具-资产列表2、云存储工具-阿里云3、云存储工具-七牛云4、云存储工具-腾讯云5、云存储工具-亚马逊6、云存储工具-京东云7、云存储工具-金山云8、云存储工具-其他9、云存储工具…

java项目中git的.ignore文件设置

在Git中,ignore是用来指定Git应该忽略的故意不被追踪的文件。它并不影响已经被Git追踪的文件。我们可以通过.ignore文件在Git中指定要忽略的文件。 当我们执行git add命令时,Git会检查.gitignore文件,并自动忽略这些文件和目录。这样可以避免…