基于STM32和树莓派的森林灾情监测飞行器

(整期优先)网络出版时间:2023-04-18
/ 2

基于STM32和树莓派的森林灾情监测飞行器

卢发云,齐金榜,王晓丽

上海工程技术大学 上海市 201600

摘要:智能小车可实现足不出户便获取各个地区的环境质量信息,对于一些人类难以进入或者危险区域,智能车具有高机动性,大大提高了便捷性,安全性。

关键词:森林火灾预测 飞行器 yolov5

1.研究背景

森林是自然界中的宝贵资源,森林火灾检测技术的研究在林木保护工作中具有很重要的意义。传统的森林火灾检测办法有观测塔检测、卫星检测、人工巡检等。观测塔的检测范围小,存在监控死角的问题。人工巡检的方法通常需要大量劳动力,而且受环境因素的影响,很容易发生危险。卫星检测虽然检测范围广,但是启动成本高,且监测效果容易受天气、云层厚度、轨道周期等影响。通过人工巡逻的森林防火办法效率低下、容易发生危险。

2.研究意义

无人机具有高机动性并且能够以较低的成本覆盖不同高度不同位置的区域,将无人机与深度学习技术相结合能够有效地帮助人们及时发现火灾。该模型可以用于实时监控森林火灾,不仅提高了森林火灾的防范能力,还提高了林火预警的自动化、数字化水平

(一)研究内容:

当森林火灾监测系统开始工作时,无人机搭载高清摄像头按照规划好的航线进行飞行。无人机在进行航线飞行时,信号发射器将采集到的影像数据和无人机的位置信息传输到地面终端监测系统,该系统利用森林烟火识别算法分析是否有火灾发生。当系统监测到有火灾发生时,地面终端会向无人机发出悬停指令,无人机接受指令后悬停,并且转动摄像头将火灾周围态势实时传送到地面终端,供工作人员进行处理。

本项目介绍分为两大模块,第一模块为四翼飞行器的软硬件设计,第二模块为基于YOLOV5的火焰及烟雾检测算法。

四旋翼飞行器控制系统以STM32f103zet单片机为核心,根据各个传感器的特点,采用不同的校正方法对各个传感器数据进行校正以及低通数字滤波处理,之后设计了互补滤波器对姿态进行最优估计,实现姿态测量。最后结合 GPS 控制与姿态控制叠加进行 PID 控制四旋翼飞行器的四个电机,来达到实现各种飞行动作的目的,并添加图传模块,使用两块树莓派分别做接收端和发射端,使用OPENHD固件,树莓派接收端通过HDMI在显示屏显示视频。,实现远程实时操控。

灾情检测系统使用基于回归的目标检测与识别算法YOLOV5,经过训练检测火焰及烟雾,最后传递报警信息至监测人员,实现灾情检测。

(二)四翼飞行器:

2.1硬件设计:

四旋翼无人机采用模块化设计,如图所示。分别由控制模块、WIFI图传模块、姿态测量系统、电源供电系统、无线通信模块、 GPS 卫星定位系统、遥控器控制模块、电机驱动模块、串口通信模块、地面站系统。

四旋翼飞行器的主控板选择的是意法半导体公司生产的STM32f103zet芯片,STM32系列的单片机是基于 Cortex -M3内核的处理器,功耗低,处理速度快,最高工作频率可达72MH。电源模块采用11.1V锂电池外部供电,连接电子调速器为控制器提供 SV 电压。控制器上还有3.3V稳压芯片,为控制芯片供电。遥控器控制模块,控制器对遥控器数据进行捕获处理该部分我们通过对STM32定时器进行输入捕获配置,捕获接收机发出的 PWM 信号,把该信号转化成控制量在经过 PID 控制把输出量给四个电机,进而控制飞行器的动作。 GPS 卫星定位导航系统,配合上位机在上位机上输入一些 GPS 坐标点,控制系统就会自动生成航线,并且能够从 GPS 系统中读取定位数据,并且与存储的定位坐标做实时的对比,然后修正航线,将定位坐标显示在上位机上,处理并显示当前位置。

2.2 姿态控制系统:

2.2.1姿态获取

姿态获取使用MPU6050模块(6轴运动处理传感器),GY-273模块(三轴数字罗盘传感器),ATGM-332D模块构成。

系统首先完成 MCU 内部初始化的工作,即配置STM32使用到的外设,包括时钟系统、 NVIC 中断控制器、 USART 串口通信、12C接口、定时器;然后进行硬件初始化以及系统的姿态解算,采用模块化的设计,具体包括以下4个部分:(1)初始化硬件;(2) MPU6050模块,ATGM-223D模块与GY-273模块的数据采集模块;(3)多传感器数据融合的姿态解算模块;(4)姿态信息输出模块。

其中获取的欧拉角依托MPU6050的数字运动处理器DMP,DMP将原始数据直接转换成四元数输出,运用欧拉角转换算法,从而得到俯仰角、横滚角和偏航角。

2.2.2姿态调整

首先求出四旋翼飞行器姿态误差信号也就是期望值的姿态角与当前获取到的姿态角的差值,然后通过串级 PID 控制算法求得各个电机的调整量,将调整信号传递给四个旋转电机,改变电机的转速来控制整个系统的姿态,使其姿态误差始终趋于最小,形成双级闭环回路控制系统。

2.3无线通信系统

无线通信系统使用NRF2401模块,并在此模块上添加功率放大器 (PA) 和低噪声放大器 (LNA),增加通信距离。接收端由NRF2401模块组成,使用SPI通信连接stm32主控板,如图一所示,在初始化完成后,开始获取位置及姿态信息,将其发送到遥控端,若接收到信息,触发接受中断,并开始解析指令,进一步使用PID算法调整姿态。遥控端由stm32f103,NRF2401模块,显示屏,遥杆元件等组成,如图所示,在遥控端初始化完成后,获取遥杆信息并将其解析,利用NRF2401模块将数据发送,若接收到信息,产生数据中断,进一步进行数据解析,将其显示在显示屏中,方便用户观察。

2.4树莓派图传模块

图传系统硬件有树莓派ZERO和树莓派3B+,两张华硕ac56网卡,RPi Camera v1.3摄像头等模块。

树莓派接收端采用树莓派3B+,外接wifi网卡,使用天线扩展其稳定性及距离,接收回的视频使用HDMI线连接显示器,树莓派发射端使用树莓派Zero,同样外接天线增加发射距离,使用CSI摄像头接到树莓派上。使用固件OPEN HD作为传输软件。

(三)灾情检测系统:

3.1系统总体设计

   无人机依靠图传设备将视频传递到地面设备,地面设备采用深度学习目标检测算法检测火灾及烟雾信息,判断有无火灾,若存在火灾隐患,将报警,并连接此无人机的视频,检测人员进行进一步判断。

3.2目标检测算法

灾情检测主要监测火焰及烟雾两大信息,依托于基于回归的目标检测与识别算法YOLOV5,如流程图,此系统初步配置YOLO的编程环境,再下载所需的权重预训练权重,其中配置数据格式:首先寻找火焰数据集,数据集要包含两个Annotations和JPEGImages的文件夹,将准备好的图片和xml标记信息放于其中。再建立两个分类文件夹,运行voc2yolov3文件,生成train.txt和valid.txt文件信息,将数据集划分。之后运行voc_annotation.py对xml标记信息进行处理,处理成txt文件形式,到此完成制作数据集的步骤。之后用此数据集进行训练并验证其准确性。

主要参考文献(不超过10个)

[1]沈剑峰,丁金华,董宇.基于STM32的互联网数据中心环境检测系统[J].电子技术应用,2012,38(06):76-78+81.DOI:10.16157/j.issn.0258-7998.2012.06.044.

[2]贾立明,赵伟,陈雯雯,吕冬颖.污染源自动监测监控系统国内外研究进展[J].环境科学与管理,2013,38(03):129-133.

     [3]丛希,胡晓丽,袁洪印. 国内外畜禽舍环境监测系统研究现状[J].农业与技术,2012, 32 (6) : 106~ 107.

[4] 魏复盛. 建立和完善我国环境监测分析方法体系[J]。 中国环境监测。 1987 (01)