电力物联网-(2)系统设计

电力物联网系统设计

前言

        在此之前写过《电力物联网系统设计》开篇文章,上一篇文章主要的概述性的内容,发表之后总觉得对电力物联网系统设计这一方面还只是开了一个头,没有把相关的内容讲解清楚,于是经过一段时间的构思终于产出了本篇《电力物联网系统设计2》,本篇是经过个人花费一段时间对物联网方面开源产品以及行业产品调研分析汇总之后产出的,文章主要讲述了物联网平台核心的功能设计,以及经过汇总分析制定的一套技术方案,希望读者在阅读的过程中能够有所收获。

一、系统功能介绍

        在写本篇博客之前个人查阅了大量资料并且研究了业界流行的开源解决方案以及云厂商推出的物联网平台,其中比较有代表性的有JetLinks物联网平台、铱塔智联(openiita)物联网平台和阿里云物联网平台。

        JetLinks物联网平台功能如下所示:

图1、JetLinks物联网平台

        铱塔智联(openiita)物联网平台功能如下所示:

图2、 铱塔智联(openiita)物联网平台

        阿里云物联网平台:

图3、阿里物联网平台

        通过这些对比我总结归纳了以下几个核心功能模块:接入网关、设备管理、运维管理、规则引擎、OTA。这些模块各解决方案提供商可能叫法有区别但是都提供了相应的能力,下面我将简单介绍一下这些模块的作用。

接入网关:需要具备多种协议支持的功能;在边缘设备接入网关的过程中还需要进行认证鉴权、编解码;还需要具备消息总线的功能,对采集到的消息进行处理最终形成统一的消息格式对接下游系统

设备管理:这里我们通常把采集设备相关的模型统称为物模型,这里的设备不是具体的某一台设备,而是逻辑设备,相应的有设备属性,以及关联的采集点位。在电力行业我们通常采集的是四遥(遥测、遥信、遥控、遥调) 信息。

运维管理:这一块也是很重要的,无论设计什么产品我们都不单单只考虑业务功能模块,还需要考虑业务可运维的能力,物联网平台上线之后很大一部分功能就是运维,其中比较常见的有告警模块、工单模块、日志模块等。

规则引擎:还是说很多时候我们想要在云端灵活控制边缘端,这时候我们需要自定义一些规则来完成一些业务,规则引擎可以适配不同应用场景,通过配置规则来执行一些场景应用,来完成某种功能或数据输出转发

OTA:空中下载技术(Over-the-Air Technology, OTA),这一项也是非常重要的需求,很多时候边缘端设备在跨地域的地方,而我们的技术人员又没办法直接远程操作边缘端设备,这时候就需要通过云端下方指令的方式来控制边缘端设备

二、系统设计

        下图是我在借鉴开源解决方案和云厂商的技术方案规划的物联网平台应用架构,其中涵盖了物联网平台核心功能模块,设计这套系统的理念是独立解耦,物联网平台能力对于公司下游业务系统来说应该是通用的,另外在接入网关层我们必须要具备多种协议支持的功能,而且还需要灵活搭配协议包,因为下图既是一个整体,各模块也是需要解耦和满足自由组合的,这个思想是我在设计企业通用的数字化能力平台过程中的主要思想。

图5、物联网平台应用架构

        物联网平台我理解是对接边缘端最靠前的系统,这里既要满足对接边缘端多种协议的适配工作,还需要对接下游业务系统提供丰富的消息总线服务,如下图所示是我构思的物联网平台和下游系统数据流架构图,这里主要采用了消息中间件进行解耦和削峰的方式,另一方面体现的各业务系统交互通过OpenApi,这里的核心设计思想考虑到的是指责单一,模块间解耦。

图6、物联网平台技术架构

        系统开发工作中最重要的一环在于系统设计,理论指导实践,实践过程中完善理论一直以来的都是我坚信的真理,本文没有做实现细节的阐述,因为编码实现环节方式方法有千万条道路,实际上我们前期可以借鉴行业开源解决方案的实现来轻松实现自己的需求。

总结

        本篇博客是基于上一篇相关博客进一步详细讲解的内容,上一篇博客总在概述性的阐述了物联网的形态以及电力物联网方向的基本架构和关键技术,本篇博客的主旨是具象化设计物联网系统,通过查阅资料总结归纳业界开源方案以及PasS云服务方案,提炼出了个人理解的物联网形态,在系统设计章节更是结合自身的理解阐述了电力物联网系统的设计,本着技术分享交流的心态,希望本篇文章对读者有参考价值。

参考文章

电力物联网系统设计_电力物联网的网络架构-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

千层烤馍,五彩斑斓的甘肃特色美食

甘肃玫瑰千层烤馍是一道具有浓郁地方特色的传统面点,以其独特的口感和精美的外观而闻名。食家巷的千层烤馍更是其中的佼佼者,它采用了优质的原料和传统的制作工艺,让你品尝到最正宗的甘肃味道。 食家巷千层烤馍的制作过程非常讲究&#xff0c…

蓝桥杯-线性动态规划问题背包问题进阶策略详解-奇怪的段

0奇怪的段【算法赛】 - 蓝桥云课 (lanqiao.cn) 基础dp&#xff1a; #include<iostream> #include<cstring> #include<algorithm>using namespace std;const int N1e56;typedef long long ll;ll f[N][206]; ll a[N]; ll sum[N]; ll p[206]; int n,k;int main…

Python 和Java 哪个更适合做自动化测试?

Python和Java都是常用于自动化测试的编程语言&#xff0c;它们各有优势和适用场景。本文将从零到一地详细描述Python和Java在自动化测试中的特点和应用。 首先&#xff0c;我们来介绍Python在自动化测试中的优势。 Python是一种简洁、易读且功能强大的编程语言&#xff0c;它…

链表----带环链表快慢指针进阶版

1.带环链表及其拓展 &#xff08;1&#xff09;这个题目组要就是进行判断这个链表是否带环&#xff0c;使用的是布尔类型作为返回值&#xff1b; &#xff08;2&#xff09;我们这里的思路是使用的快慢指针&#xff0c;快指针一次走2步&#xff0c;慢指针一次走1步&#xff0c…

C++:编程领域的全能王者

在编程语言的海洋中&#xff0c;C以其全面而强大的功能&#xff0c;犹如一位全能王者&#xff0c;屹立不倒。它不仅在科技领域有着广泛的应用&#xff0c;更在推动社会进步、促进人类创新方面发挥着至关重要的作用。 一、C&#xff1a;编程界的璀璨明星 C自诞生以来&#xff…

【数据结构】红黑树(定义性质、插入、查找、删除)解析+完整代码

3.3 红黑树 3.3.1 定义和性质 为什么发明红黑树&#xff1f; 平衡二叉树和红黑树的时间复杂度相同&#xff0c;但是平衡二叉树的平衡特性容易被破坏&#xff0c;需要频繁调整树的形态。 红黑树RBT&#xff1a;插入/删除很多时候不会破坏红黑特性&#xff0c;无需频繁调整树的形…

浅谈Windows 上的线程亲和性(Thread affinity)

​ 前言 线程属性包括是否分离、亲和性、调度策略和优先级等。Linux默认的调度策略是CFS(完全公平调度算法),而 Windows 是基于优先级抢占式的策略。 在这些方面,Windows 和 Linux 差异巨大。本文仅针对 Windows 系统的线程亲和性进行探讨。 线程亲和性(Thread affinity) 什…

ESP32如何使用PSRAM

ESP32的内部RAM的设计做了内存扩展。您可以通过寻址高达4MB的外部SPI RAM内存来进一步扩展它。在本文中&#xff0c;探讨如何在项目中使用PSRAM&#xff0c;针对ESP32-WROVER模块进行特别的讨论。 关键问题&#xff1a; 如何确保PSRAM在应用程序代码中可用&#xff1f;如何分…

HOOPS Visualize:工业级3D可视化SDK,打造移动端和PC端工程应用程序

HOOPS Visualize是一种高性能的软件开发工具包&#xff08;SDK&#xff09;&#xff0c;旨在帮助开发人员轻松构建和集成高质量的3D可视化功能。这是一种全功能的&#xff0c;以工程为重点的场景图技术&#xff0c;我们称为Core Graphics。Core Graphics可集成到一个框架中&…

uniapp高性能图片裁剪插件,可添加水印

效果图&#xff1a; 插件地址&#xff1a;高性能图片裁剪&#xff0c;裁剪图片后自动添加水印 - DCloud 插件市场 示例&#xff1a; <template> <view><button click"select">选择图片</button><image mode"widthFix" :src&qu…

鸿蒙内核源码分析 (内核启动篇) | 从汇编到 main ()

这应该是系列篇最难写的一篇&#xff0c;全是汇编代码&#xff0c;需大量的底层知识&#xff0c;涉及协处理器&#xff0c;内核镜像重定位&#xff0c;创建内核映射表&#xff0c;初始化 CPU 模式栈&#xff0c;热启动&#xff0c;到最后熟悉的 main() 。 内核入口 在链接文件…

python的标准数据类型

四、标准数据类型 1、为什么编程语言中要有类型 类型有以下几个重要角色&#xff1a; 对机器而言&#xff0c;类型描述了内存中的电荷是怎么解释的。 对编译器或者解释器而言&#xff0c;类型可以协助确保上面那些电荷、字节在程序的运行中始终如一地被理解。 对程序员而言…