IOTOS物联中台衔接通信连接驱动和协议报文驱动,实现多个设备实例复用同一个TCP端口,以modbus rtu协议tcp透传方式采集数据

server/2024/9/23 6:25:50/

网站:UIOTOS前端零代码 原型即应用!支持页面嵌套、属性继承、节点编辑,真正实现页面即组件,支持无代码开发复杂的前端界面应用。

从前面驱动实例可以看出,设备连接通信和报文解析通常是在一个驱动里,这种方式对于对单个特定设备的解析较为直接。

但是如果接入多个设备实例,而且通信连接无法或不适合用多个独立的通信连接通道时,就需要考虑将通信连接和协议报文分别做成独立的、可解耦的驱动,并配置两个驱动对应的设备实例做好数据分发配置,实现驱动之间衔接协同处理。

比如bacnet协议,对当前网段扫描通常只能一个运行实例,如果有多个bacnet设备,分别关联相同的bacnet驱动,必然导致冲突,因此需要一个驱动对应的设备实例专门用于扫描,其他设备用于该通道对应实际设备的数据点。

再比如本篇要重点介绍的modbus rtu协议,此前有提供文章Modbus-rtu报文协议TCP连接透传实例详细介绍使用步骤。文章中主要是针对一个设备实例一个TCP端口的情况。而当希望多个不同的设备实例,共享 公共的一个TCP端口传输通道时,就需要本文下面要介绍的通信驱动和协议驱动解耦和衔接相关的内容。                                


http://www.ppmy.cn/server/12174.html

相关文章

在docker容器中编译 rk3588 ubuntu固件

文件准备 Linux SDK ---- rk3588_linux_release_20230114_v1.0.6c_0*Ubuntu根文件系统 ---- Ubuntu22.04-Xfce_RK3588_v3.11-27_20240410.img.7z 硬件环境 一个可联网的linux机器,并且装有docker 打包一个docker编译环境 Dockerfile内容 直接通过dockerfile构…

HTML:PC和手机的自适应图形布局样例

作者:私语茶馆 1.前言 有时我们需要开发一个自适应PC和手机的HTML页面,由于屏幕大小不同,会涉及到自动部署。W3School提供了一个非常好的案例:Responsive Image Gallery。本文利用独立CSS文件详细介绍一下这个案例。 2.案例详细介绍 2.1.Project项目文件结构 企业级项目…

软考140-上午题-【软件工程】-软件工具

一、软件工具 用来辅助软件开发、运行、维护、管理和支持等过程中的活动的软件称为软件工具。 1-1、软件开发工具 对应于软件开发过程的各种活动,软件开发工具通常有:需求分析工具、设计工具、编码与 排错工具、测试工具等。 1-2、软件维护工具 辅助软…

项目实践---贪吃蛇小游戏(下)

对于贪吃蛇小游戏,最主要的还是主函数部分,这里就和大家一一列举出来,上一章已经写过头文件了,这里就不多介绍了。 首先就是打印桌面,也就是背景,则对应的代码为: void SetPos(short x, short …

Keil和VSCode协同开发STM32程序

系列文章 STM32单片机系列专栏 C语言术语和结构总结专栏 文章目录 1. 配置环境 2. 测试打开工程 3. 测试编译工程 随着项目的复杂度上升,开发者不仅需要强大的硬件支持,还需要一个高效和灵活的开发环境。 vscode是一款集成大量可以便携开发插件的代码…

理解CSS中的sticky与fixed定位

在CSS中,position: sticky; 和 position: fixed; 是两种常见的定位方式,它们可以让元素脱离文档流,并具有固定位置的效果。然而,它们在实际应用中有着不同的特点和使用场景。 sticky定位 特点:position: sticky; 允许…

Maven基础篇1

1.Maven依赖管理 2.依赖传递 项目2需要用到项目3 需要将项目三作为资源配置到项目二 也就是dependecy中加入项目三的gav 两点注意事项: 使用项目三,直接将其gav添加到依赖中, 使用项目三,项目三不能感知到,自己有…

在vscode上面进行分支merge的记录

前言:在我们的项目中,有两个分支:master和liutielong。现在要将liutielong分支的改动merge到master分支中。 如果master分支已经更改了,所以要先pull(这是在git bash里面的命令)。 git pull origin master…