当前位置: 首页 > news >正文

构建一个支撑10万设备的虚拟电厂IoT平台

       

构建一个支撑10万设备的虚拟电厂IoT平台

    本文通过实践经验以及构想设计分析基于虚拟电厂业务的IoT平台该如何去设计。首先我们先介绍一下IoT平台详细设计的内容,然后我们来分析一下IoT平台的技术架构的性能指标以及不同体量的IoT平台需要如何进化。

一、IoT平台详细设计

1. 技术栈选择

    硬件层

    传感器和设备:用于收集各种能源数据,如太阳能板、风力发电机、储能系统等。

    网关:用于连接传感器和设备到网络,如Modbus (RTU/TCP)、DL/T645、IEC 102、IEC 104等。

    软件层

    消息队列:如EMQX(用于处理设备消息),支持MQTT协议。

    数据库:如TDengine(用于存储和分析时间序列数据)。

    后端服务:Spring Cloud微服务架构,用于处理业务逻辑,如资源调度、优化算法等。

   云平台

    云服务:如阿里云、AWS、Azure等,提供计算资源、存储、网络等基础设施。

2. 系统架构设计

2.1 数据采集与传输

    设备接入:通过网关和传感器将数据实时传输到IoT平台。

    协议支持:确保支持多种通信协议,如MQTT、CoAP等。

2.2 数据存储与管理

    时间序列数据库:使用TDengine存储大量的时间序列数据,支持快速查询和分析。

    数据清洗与预处理:在数据入库前进行清洗和预处理,确保数据质量。

2.3 数据处理与分析

    实时数据处理:利用流处理框架(如Flink)进行实时数据分析。

    高级分析:使用机器学习模型进行能源预测和优化调度。

2.4 业务逻辑与调度

    微服务架构:使用Spring Cloud构建微服务,实现资源的调度和优化。

    调度算法:开发或集成先进的调度算法,如遗传算法、模拟退火算法等,以实现最优的能源分配。

二、IoT平台的技术架构

    回顾了过去iot平台设计和实践经验,以及调研了市面上的开源iot平台,最终发现iot实际上解决方案大同小异,iot平台核心定义就是由感知层、网络层、应用层组成,虽说各层技术栈选型存在些许差异,但是总体上都是类似的,如下图所示是我抽象设计的一款iot平台架构:

这里感知层和网络层就是协议适配解析网关模块,应用层就是业务系统,iot平台的特性就是多协议支持和适配、海量数据上传以及数据时效性高、海量数据实时计算。这里网关层就是设计用来满足第一特性的,基于数据的海量特性这里选用了Kafka、Flink、TDengine、hive,接下来我将分别介绍一下技术选型的和架构设计的思考。

Kafka

    开源的分布式流数据平台,特性是高可扩展、高吞吐量与低延迟、持久性与可靠性,而且kafka在大数据领域实践案例丰富,单机性能可以达到10万级别吞吐量。

Flink

    开源的流处理分布式计算框架,具备低延迟、高吞吐、高可用等特性,通过和市面上Apache Spark Streaming进行不同维度对比之后选用。

TDengine

    目前应用场景较多,另外由于我们做电网业务,TDEngine正好是国产化同类型数据库里面BeachMark结果较好的,所以进行了选用,有如下特性:

hive

    建立在Hadoop上的数据仓库软件,用于查询和管理存储分布式环境的大规模数据集。可以轻松处理PB级别的数据。一个设计良好的Flink作业,在匹配的硬件和数据源/接收器支持下,达到每秒数百万至数千万条消息的吞吐量是常规操作。而要冲击每秒亿级的吞吐,则需要对上述每一个环节进行极致的优化。

    以上分别简单描述了核心组件的选型分析以及能够支撑的业务体量,由上面数据可以初步得出这套架构配合相应的服务器资源能够轻松达到10万级别吞吐量,如果集群和分布式模式百万级也能够实现、数据体量实际上没有限制。

总结

    本文结合自己iot方面的经验对iot平台的设计进行了初步的描述其中包括技术选型,使用到的技术栈,抽象架构图,业界iot平台实际上都大同小异,而虚拟电厂平台属于电网业务,在网关层面有行业特点,整体架构和核心设计思路没有太大区别,大家设计过程中开源收集开源产品以及各大厂商取长补短,能够很快的设计出一款适合自身业务的iot平台。

http://www.dtcms.com/a/399923.html

相关文章:

  • Linux 中,`pip install`与 `apt install`
  • 宁波优质网站制作哪家好晋中市科技馆网站建设
  • SPA中篇【德国篇】钢铁齿轮与数字神经:跨国汽配巨头SPA并购整合攻坚记
  • 十大拿货网站注册app短信验证码平台
  • 山东莱州市建设局网站广西住房城乡建设厅
  • 企业网站构建方案大数据营销系统软件
  • Mysql(二十二)——InnoDB页结构
  • 亮数据|智能IDE与爬虫MCP实战
  • 网站开发的前端到底是什么建设项目一次公示网站
  • 动态做网站丰台新乡网站建设
  • 建设企业网站服务器电商网站建设制作
  • Linux安全 | 防火墙工具 iptables 详解
  • Matlab通过GUI实现点云的最远点下采样(Farthest point sampling)
  • 品牌设计公司哪家好网站可以做多少优化关键词
  • RK3588+MCU机器人控制器解决方案
  • JavaScript内存泄漏与闭包详解:从原理到实践
  • ARM芯片架构之CoreSight Programmers‘ Model 深入解析
  • Video-XL-2论文阅读
  • 在网站建设工作会议上讲话网站安全管理制度
  • JAVA第一阶段结束喽后天更新第二阶段至于明天当然是练习时间回顾一下之前学的太良心了
  • 专业门户网站建设用流媒体做的电台网站
  • python(74) 调用dll文件
  • 国家关于网站信息建设管理文件郴州市人口
  • 温州市城市建设档案馆网站公司宣传册排版
  • redis的set集合的编码方式以及应用场景
  • 【MySQL初阶】03-常见的数据类型
  • CPU调用频率偏高 原因调查
  • Nest 中的数据库集成、JWT身份认证与任务调度全解析
  • 中小型企业网站建设与管理设计制作软件
  • 常德网站建设套餐报价怎么制作公司网页教程