【OpenHarmony开源开发者成长计划解决方案学生挑战赛】--基于OpenHarmony的智慧农业环境监控系统设计 - HarmonyOS技术社区 - 电子技术论坛 - 广受欢迎的专业电子论坛
分享 收藏 返回

张铭哲 关注 私信
[文章]

【OpenHarmony开源开发者成长计划解决方案学生挑战赛】--基于OpenHarmony的智慧农业环境监控系统设计

【项目名称】基于OpenHarmony的智慧农业环境监控系统设计

【项目负责人】:张铭哲

1、项目描述

​ 环境监控和自动化控制是农业生产中不可或缺的环节,作物的生长环境监测和控制直接决定了作物的产量和质量。随着信息化、智能化建设的不断推进,云平台成功案例的不断增多,将农业环境监测与云平台相结合,打造智慧农业云平台,可以使劳动力和生产率得到进一步的释放和提升,进一步促进农业的现代化发展。该项目基于OpenHarmony系统,以海思微处理器开发板为感知层核心,利用国产开源OpenHarmony操作系统开发环境参数检测、网络连接等应用。以云服务器为基础构建智慧农业系统服务平台,实现云平台与传感网络系统的通信连接管理等;构建远程信息管理和控制的 Web 应用平台。充分利用互联网和 Web 技术为用户提供实时监测、信息管理等功能,使得用户在一定程度上脱离时间和空间的限制,实现对现场的远程监控和管理。

2、项目方案简介

系统物联网模型功能划分:

​ 本系统设计如下图所示,采用四层物联网模型结构,即感知层、网络层、平台层和应用层。其中,系统的环境参数检测功能被划分到感知层,负责完成温湿度、光照强度、土壤湿度等环境信息采集任务;网络层包括网络接入功能以及信息传输功能。这里面,信息传输功能主要是将感知层获取的数据上传到云服务系统,同时将云服务器的信息或指令下发给感知层设备。网络层使用Wi-Fi通信方式接入网络,采用MQTT协议等推送数据信息到平台层和应用层。云服务主要支持平台层功能,负责设备管理、命令下发、信息存储等管理功能。应用层则利用云服务器提供的服务或手机等用户终端来实现数据的可视化及客户交互。

物联网模型功能划分

系统的功能逻辑:

​ 本系统的功能逻辑如下图所示。设计方案以小熊派鸿蒙开发板为核心实现网络层和感知层的主要功能。该开发
板使用海思微处理器,运行OpenHarmony 操作系统,实现包括系统外设初始化、网络接入、系统管理、数据采集、数据联网上报等功能。平台层和应用层功能则由云服务器和小熊派鸿蒙开发板协同实现。

系统逻辑功能

系统框图如下图所示:

系统框图

系统硬件部分介绍:

**主控芯片:**MCUv采用Bear Pi-HM Nano开发板,搭载海思Hi3861RNIV100微处理器。该处理器是一款32位微处理器,高度集成了SoC WiFi芯片。

image-20220902105911415

电源管理模块采用LDO稳压电路分为两部分,分别是稳压5V电路和3.3V电路。

温湿度传感器采用SHT30支持2.4V5.5V供电,测量范围为-40℃到125℃,相对湿度为0100%,通信协议采用IIC.

光照传感器采用BH1750,支持2.4v3.6V供电,测量范围165535Lx,通信协议采用IIC.

土壤湿度传感器,表面采用镀镍处理,有加宽的感应面积,可以提高导电性能,通过比较放大器LM393输出,使用ADC进行数据的采集.

补光灯,水泵,风扇通过开发板IO口外界三极管驱动电流放大电路实现控制.

系统软件介绍:

  1. 软件开发及其工具

    ​ 软件开发在OpenHarmony内核抽象层之上进行。内核抽象层为用户提供进程管理、内存管理、文件系统、网络管理和外设管理等操作系统功能。鸿蒙的内核抽象层支持CMSIS应用程序标准接口,本次开发采用轻量级系统中常用的CMSIS标准。

    ​ 本项目开发环境布置在Window以及Linux操作系统上面。系统编译环境在Linux系统性建立,应用程序使用C语言编写,在VSCode上实现编程。需要安装配置Python及gcc编译器的支持,开发环境还需要安装npm和hpm等鸿蒙操作系统的组包和发行版管理工具。

    image-20220902110127148
  2. 环境参数检测

    ​ 环境参数检测通过操作温湿度传感器、光照传感器、土壤湿度传感器实现。获取到的温湿度、光照强度以及土壤湿度等环境信息通过MQTT协议上传到云端,当光照强度过低或者温度、湿度超标时,会引起报警以及风扇转动、开启水泵等操作,流程如下图所示:

环境参数监测

  1. Wi-Fi通信

    ​ 核心开发板通过所使用到的传感器监测数据后,需要通过WiFi联网将数据上报云端。海思Hi3861RNIV100微处理器SoC WiFi芯片连接WiFi流程图如下所示:

    wifi连接流程

  2. MQTT协议

​ 消息队列遥测传输协议,是一种基于TCP/IP协议的即时通讯协议,采用发布、订阅模式为处于网络层上的传感器与平台层、应用层提供实时消息服务。MQTT协议开销低,带宽占用小,易于实现,在物联网工程中应用广泛。作为MQTT协议的客户端,开发板上需要布置相关业务代码,主要包括网络连接信息结构体定义、MQTT 客户端信息结构体、MQTT 客户端初始化、MQTT客户端连接代理服务器、订阅MQTT消息、发布MQTT消息等。这些业务代码,本文的设计采用鸿蒙系统项目下的第三方代码进行布置。

mqtt

3、项目功能说明

  1. 下位机可以实时采集大棚中的环境信息,主要包括温度、湿度、光照强度、土壤湿度以及当前所处地区天气环境。
  2. 下位机可以根据当前环境信息,自动实现补光、通风、灌溉、报警功能,来实现智慧农业。
  3. 通过云服务器的数据传输在web端可视化界面上面实时显示当前大棚中的环境状态。
  4. 在web端可以手动控制实现补光、通风、灌溉功能。
  5. 在web端可以实时显示数据曲线,并且带有存储数据的功能,存储的数据包括四部分,分别是温度、湿度、光照强度和土壤湿度,数据保存到csv文件中,方便后续对数据分析处理。

4、项目功能展示

系统外观展示:

系统运行中:

web端可视化界面1:

web端可视化界面2:

存储数据形式展示:

视频展示地址:

https://www.bilibili.com/video/BV1Ad4y1P7xw?spm_id_from=333.999.0.0

5、项目总结及展望

​ 本文设计的环境参数监测系统设计,硬件选用海思Hi3681处理器的轻量级终端,具有数据实时显示、自动控制、超限报警等功能。,软件选择在OpenHarmony操作系统上进行开发,采用物联网解决方案,网络通信业务代码选择OpenHarmony下的第三方代码。系统测试结果表明,该系统最终实现了环境参数数据采集、数据联网上报和指令下发等功能,验证了设计方案的正确性。系统虽然实现功能,但仍然存在不足之处,后续将加强应用层上的数据可视化及环境参数控制等相关业务逻辑设计方面的工作。

回帖(5)

张铭哲

2022-9-3 10:55:02
不错不错,加油!
1

韩乐

2022-9-3 19:22:35

不错不错,加油!

玩硬件的女孩纸

2022-9-7 16:45:56
太厉害了

小伍

2022-9-8 10:19:18
这个设计太厉害了呀

jf_65020769

2022-9-8 16:54:00
这个不错呀,赞赞赞

更多回帖

×
发帖