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

电力物联网系统设计

前言

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

一、系统功能介绍

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

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

图1、JetLinks物联网平台

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

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

        阿里云物联网平台:

图3、阿里物联网平台

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

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

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

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

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

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

二、系统设计

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

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

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

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

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

总结

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

参考文章

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

开源相机管理库Aravis例程学习(七)——chunk-parser

开源相机管理库Aravis例程学习(七)——chunk-parser 简介例程代码函数说明arv_camera_create_chunk_parserarv_camera_set_chunksarv_chunk_parser_get_integer_value 简介 本文针对官方例程中的:05-chunk-parser做简单的讲解。并介绍其中调…

Spring Framework-简介

Spring Framework Java Spring是一个开源的Java应用框架,它的主要目的是简化企业级应用开发的复杂性。Spring框架为开发者提供了许多基础功能,使得开发者能够更专注于业务逻辑的实现,而不是底层的细节。 主要特点和功能: 控制反…

怎么识别数学公式?分享简单识别方法

怎么识别数学公式?在学术研究和日常工作中,数学公式无疑是一个常见且重要的元素。然而,手动输入复杂的数学公式往往既耗时又容易出错。幸运的是,随着科技的发展,现在我们有了一些高效的软件工具,可以帮助我…

C语言----斐波那契数列(附源代码)

各位看官们好,当我写了上一篇博客杨辉三角后,有一些看官叫我讲一下斐波那契数列。对于这个大家应该是有了解的。最简单的规律就是f(n)f(n-2)f(n-1)。就是当前是前两项之和,然后下标1和0都是1.从第三项开始计算的。那么我们知道规律&#xff0…

纯电动汽车的发展趋势简述

纯电车简介 纯电动汽车是使用电池驱动电动马达而不是传统的内燃机的汽车。它们通常使用电池组储存能量,然后通过电动马达转化为动力来驱动车辆。相比于传统的燃油车,纯电动汽车具有零排放、低噪音、低维护成本等优点,因此在环保和能源效率方…

MATLAB蚁群算法求解带时间窗的旅行商TSPTW问题代码实例

MATLAB蚁群算法求解带时间窗的旅行商TSPTW问题代码实例 蚁群算法编程求解TSPTW问题实例: 在经纬度范围为(121, 43)到(123, 45)的矩形区域内,散布着1个商家(编号1)和25个顾客点(编号为226),各个…

Go-Zero定义API实战:探索API语法规范与最佳实践(五)

前言 上一篇文章带你实现了Go-Zero模板定制化,本文将继续分享如何使用GO-ZERO进行业务开发。 通过编写API层,我们能够对外进行接口的暴露,因此学习规范的API层编写姿势是很重要的。 通过本文的分享,你将能够学习到Go-Zero的API…

【御控物联】Java JSON结构转换、JSON协议转换、JSON属性互换(15):对象To数组——转换映射方式

文章目录 一、JSON结构转换是什么?二、术语解释三、案例之《JSON对象 To JSON数组》四、代码实现五、在线转换工具六、技术资料 一、JSON结构转换是什么? JSON结构转换指的是将一个JSON对象或JSON数组按照一定规则进行重组、筛选、映射或转换&#xff0…

如何压缩图片大小?7个实用软件教你快速压缩图片大小

如何压缩图片大小?7个实用软件教你快速压缩图片大小 以下是七个实用的软件,可以帮助您快速压缩图片大小: 图片编辑助手:这是一款功能强大的图像处理软件,其中包含了图像压缩功能。您可以打开需要压缩的图片&#xf…

Java 包语句,看这一篇就够了

1.设计的文件层级 我们将“Package”文件夹称为根目录,“Level01”称为一级目录,“Level02”称为二级目录,以此类推。 2.发现在不同目录下的包名有如下特征: 根目录下的文件不需要包名,可以理解成包名为 “”一级目录…

上海人工智能实验室浦视团队联培博士(2025)招生正式启动!

上海人工智能实验室浦视团队2025级联培博士招生计划开启啦! 上海人工智能实验室作为国内领先的人工智能领域的新型科研机构,不仅致力于攻克重要基础理论难题,更着眼于构建全球领先的 AI 技术人才培养平台。浦视团队是大模型方向的核心科研团…

【Java基础】我不允许还有人搞不懂lambda表达式!!!

λ希腊字母表中排序第十一位的字母避免匿名内部类定义过多,使得代码更加简洁其实质属于函数式编程的概念 (params)->expression[表达式] (params)->statement[语句] (params)->{statements}lambda表达式推导过程: 创建一个类,重写接…

AI机器人火了,探讨早就可以帮我们开拓市场的中关村科金语音机器人

近期AI机器人给我们带来了不少惊喜,比如国外 Figuer 联合 OpenAI 做了 Chatgpt 机器人,可以通过对话后推理干活,国内仿生机器人员工也开始量产,看到AI机器人不禁想到会不会替代我们的工作?我们了解到很多机器人厂家的…

【JAVA进阶篇教学】第十一篇:Java中ReentrantLock锁讲解

博主打算从0-1讲解下java进阶篇教学,今天教学第十篇:Java中ReentrantLock锁讲解。 在Java并发编程中,保证多线程环境下的数据安全是至关重要的。ReentrantLock 是Java中用于实现线程安全的一种锁机制。本篇博客将深入介绍 ReentrantLock 的原…

MapReduce代码

WordCount 数据准备: a.txt lxy lxy lxy zhang wsoossj liagn guui liang liagn代码(在idea中创建一个Maven工程): mapper: package com.lxy.mr.wordcount.thi;import org.apache.hadoop.io.LongWritable; import…

ABAP ALSM_EXCEL_TO_INTERNAL_TABLE 导入Excel的几个问题

1、没有办法多页签 2、单元格50个字符限制,每个单元格仅读取50个字符 3、Excel单元格总不能有不可见字符换 eg 回车,换行 # 等否则读取的结果会加上引号

【会议征稿】第四届机器学习与智能系统工程国际学术会议(MLISE 2024, 6/28-30)

第四届机器学习与智能系统工程国际学术会议(MLISE 2024)由珠海科技学院主办,并获得多家高校与研究机构共同支持,将于204年6月28-30日在珠海召开。 MLISE将围绕 “机器学习与智能系统工程” 相关领域,为国内外研究人员与学者提供一…

kafka学习笔记04(小滴课堂)

Kafka的producer生产者发送到Broker分区策略讲解 Kafka核心API模块-producer API讲解实战 代码: ProducerRecord介绍和key的作用 Kafka核心API模块-producerAPI回调函数实战 producer生产者发送指定分区实战 我们设置5个分区。 我们指定分区。 重新指定一个分区&am…

根据后端返回下拉请求地址,前端动态请求拿到下拉数据渲染

完整代码如下&#xff1a; <template> <!-- 资源列表页 --> <div> <div> <i click"$router.go(-1)" style" color: #409eff; cursor: pointer; margin-right: 5px; font-size: 18px; " class"el-icon-back" ><…

【算法】二分查找——二分查找

本节博客详述“二分查找”并且以例子来进行讨论&#xff0c;有需要借鉴即可。 目录 1.二分查找1.1使用前提1.2模板 2.题目3.题解代码示例4.二分查找的一般模板5.总结 1.二分查找 1.1使用前提 使用的条件&#xff1a;数组具有“二段性”&#xff0c;二段性指的是数组可以根据某…