基于D1-H哪吒的分布式能源智慧管理和M2M交易系统

2023-11-07 17:30

本文主要是介绍基于D1-H哪吒的分布式能源智慧管理和M2M交易系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

项目演示

本项目应用物联网和区块链技术,基于 RISC-V 架构的 D1-H Dock Pro 设计开发了一套分布式能源智慧管理小型示范系统,在该系统上实现了能源生产和消费数据的实时监测,以及 M2M 自主交易。未来可以扩展更多的联网方式如 4G、5G、NBIoT 等,便于适应多样化部署环境的需求。

在这里插入图片描述

系统实施过程中,分布式风光储一体小型电站通过风力和太阳光生产清洁能源,并存储在储能电池中,产生的能源数据通过专用网关传输至物联网后台;当有电器负载需要充电时,打开智能开关并计量充电量,将充电数据上传至物联网后台;利用 IOTA 区块链和充电数据等信息,在能源生产端(电站) 和消费端(智能开关与负载)之间进行能源交易结算。

  • 电站实物图

在这里插入图片描述

  • 网关和智能开关实物图

在这里插入图片描述

  • 后台管理网页

在这里插入图片描述

PART01 分布式小型电站系统

  • 搭建电站系统

风光互补发电监测系统由风光互补充电控制器、风力发电机、太阳能电池板、储能电池、逆变器、RS458-WiFi 网关构成。电站利用太阳能和风能发电,并将电能存储在储能电池中,可以为交流和直流负载供电。

在这里插入图片描述

  • D1-H Dock Pro网关

为了实现对电站的智能监测,项目使用 D1-H Dock Pro 开发板设计开发一款专用网关,实时采集电池控制器、气象环境传感器等其它传感器的数据,并通过无线通信方式(WiFi)以 HTTP 协议或 MQTT协议将传感器数据上传至物联网后台。

智能硬件终端(分布式风光储一体小型电站、智能开关)产生的数据和控制信号通过 WiFi 上 传 至 物 联 网 和 区 块 链 后 台 系 统 。后 台 系 统 构 主 要 包括 MQTT Broker、REST API 服务、Web 服务和区块链服务。

在这里插入图片描述

PART02 智能开关系统

智能开关用于能源消费端,实现对能源消费者(电器负载)的供电控制、电能消费数据的采集和传输等功能。该智能开关基于 D1-H Dock Pro 开发板进行设计开发,通过开发板的 I/O 口控制继电器、UART 接收电能计量模块的数据。设计一个扩展电路板与开发板配合使用,扩展电路板集成电能计量模块、继电器等。本文设计的智慧开关的功能主要是控制电器开关与计量电器用电参数以及环境参数并上传到云端服务器。

在这里插入图片描述
在这里插入图片描述

PART03 M2M交易系统

  • IOTA Client的搭建

基于 IOTA 的开源 Rust 项目 iota.rs 的 Production 版,使用Docker 在境外服务器上搭建 IOTAClient 以连接 Hornet 节点,从而连接 IOTA 网络的开发版 Devnet。当机器人发送充电请求时,通过 IOTAClient 连接 Hornet 节点,实现身份验证、账户余额查询、M2M 交易等功能。

在这里插入图片描述

  • Web交易系统

用户登录 Web 界面,能源生产者(电站)将传感器数据通过MQTT 消息发布给网页,网页进行实时可视化显示。消费者向网页发布请求充电的 MQTT 消息,网页收到消息后,通过 IOTAClient 连接 Hornet 以获取消费者的账户余额,当账户余额足够时,网页发布 MQTT 消息,使智能开关打开,智能开关每隔一段时间将用电量返回给网页,网页通过 IOTAClient 连接 Hornet 进行定时交易。消费者通过 MQTT 消息向网页发布停止充电的信息,网页关闭智能开关,并保存此消费者的交易记录,包括交易双方、交易金额、交易电量及交易时间等,供用户查询历史数据。

在这里插入图片描述

PART04 参赛团队

华东师范大学“萌新队”
指导老师:左少华、吴幸
成员:龚丹妮、万海缘、李丽莹

原贴链接:https://bbs.aw-ol.com/topic/2745/
资源获取、问题讨论可以到全志在线开发者社区进行:https://www.aw-ol.com
全志及开发者最新动态可以关注全志在线微信公众号

这篇关于基于D1-H哪吒的分布式能源智慧管理和M2M交易系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/365180

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

Java 线程池+分布式实现代码

《Java线程池+分布式实现代码》在Java开发中,池通过预先创建并管理一定数量的资源,避免频繁创建和销毁资源带来的性能开销,从而提高系统效率,:本文主要介绍Java线程池+分布式实现代码,需要... 目录1. 线程池1.1 自定义线程池实现1.1.1 线程池核心1.1.2 代码示例1.2 总结流程2. J

在Node.js中使用.env文件管理环境变量的全过程

《在Node.js中使用.env文件管理环境变量的全过程》Node.js应用程序通常依赖于环境变量来管理敏感信息或配置设置,.env文件已经成为一种流行的本地管理这些变量的方法,本文将探讨.env文件... 目录引言为什么使php用 .env 文件 ?如何在 Node.js 中使用 .env 文件最佳实践引

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象

Redis实现分布式锁全过程

《Redis实现分布式锁全过程》文章介绍Redis实现分布式锁的方法,包括使用SETNX和EXPIRE命令确保互斥性与防死锁,Redisson客户端提供的便捷接口,以及Redlock算法通过多节点共识... 目录Redis实现分布式锁1. 分布式锁的基本原理2. 使用 Redis 实现分布式锁2.1 获取锁