基于STM32的果园害虫防治系统_第1页
基于STM32的果园害虫防治系统_第2页
基于STM32的果园害虫防治系统_第3页
基于STM32的果园害虫防治系统_第4页
基于STM32的果园害虫防治系统_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-12-第4章系统软件设计害虫防治系统是一种利用传感器和执行器对农作物进行监测和保护的智能设备,可以有效地减少农药的使用和提高农业生产效率。本章节介绍了一种基于STM32的害虫防治系统的软件方案,包括系统功能、软件架构、主要模块和算法。4.1系统功能害虫防治系统的主要功能有:当下位机采集到环境数据,会通过无线通信模块发送到网关处理,之后由网关上传云端。根据网关或云端服务器的指令,通过高压电网、舵机等执行器对果园进行害虫的杀灭和处理。通过液晶显示屏等人机交互设备,向用户显示系统的工作状态、环境数据、害虫信息等。4.2软件架构害虫防治系统的软件架构采用分层设计,分为驱动层、应用层和通信层,如图4.1所示。图4.SEQ图\*ARABIC\s11软件框架驱动层:驱动层负责实现对STM32单片机的各种外设的控制,包括烟雾传感器,雨滴传感器,高压电网继电器、诱捕LED、LCD显示屏等。应用层:实现了系统的核心功能,包括数据采集、数据处理、数据发送、害虫防治、信息展示等。通信层负责实现与网关与下位机及云端的数据交互功能,通过nRF24L01与ESP8266模块,将系统的运行状态和防治结果发送给用户,或接收网关控制指令。4.3主要模块和算法害虫防治系统的主要模块和算法有:数据采集模块:负责通过各种传感器采集农作物的环境数据和害虫信息,并将数据存储在内存中。数据处理模块:负责对采集到的数据进行滤波、校准、转换等预处理操作,并根据设定的阈值进行异常检测和报警。控制策略模块:负责根据数据处理模块的结果,以及用户设定的参数,选择合适的执行器模块,并生成相应的控制信号,将控制信号发送给执行器模块,以及将系统状态和数据发送给网关。4.3.1数据采集模块数据采集模块由雨滴传感器,MQ-2烟雾传感器,HX711压力传感器三部分组成。雨滴传感器,在系统上电后开始初始化,随后开始循环采集环境数据,并将采集到的数据通过ADC通道反馈给数据处理单元。MQ-2烟雾传感器,会在系统上电后进行初始化,由于需要在特定温度环境下,才能够精准采集数据,所以其内置的加热电路,会在上电后进行一个约2s的预热过程,随后通过ADC通道将采集到的数据反馈给数据处理单元。收集盒的重量采集使用了HX711压力传感器,他与单片机通过SCK管脚和TO管脚使用串口传输数据。通过这两个管脚能选择输入通道和最高128倍的增益。当管脚TO为高电平时,表明没有数据输出,SCK管脚是低电平状态。当TO从高电平变低电平后,SCK管脚会输入25个至27个不等的时钟脉冲。第一个时钟脉冲的上升沿读出输出的24位数据的最高位,直至第24个时钟脉冲完成后,24位的数据也从最高位至最低位逐位输出完毕。第25至27个时钟脉冲用来选择下一次输入通道和增益,参见表4.1与图4.2。表4.SEQ表\*ARABIC\s11HX711模块25至27时钟脉冲SCK脉冲数输入通道增益25A12826B3227A64图4.SEQ图\*ARABIC\s12:HXT11时序4.3.2数据处理模块数据处理模块主要下位机通过主控程序,对采集到的数据,进行处理,转化为日常所通用的格式的数据,即将采集到雨滴传感器,MQ-2烟雾传感器,HX711压力传感器的模拟值,转化成,状态,浓度,克或千克值。雨滴传感器在硬件上,将可调精度电阻设置为最大5Ω,所以在采集量上,最大值为2500,当其采集量低于1700时,可判断为天气状态为下雨或受到泼溅,我在程序中使用公式:采集值/阈值=状态值,将模拟值转换为真假值,来获取天气状态为下雨或受到泼溅的状态,之后将其存放于一个特定数组中,等带控制策略模块处理。MQ-2烟雾传感器可调精度电阻置为RL=5Ω,所测浓度值与气敏电阻阻值成对数关系满足公式:logRS=mlogC+n,n、m均为常数,C为浓度值(ppm),RS为气敏电阻阻值(Ω)。气敏电阻阻值RS与RL满足关系式:RS=(3.3-V)/V*RL,V为电压输出值,3.3为加在模块上的电压值。V与ADC采集值(ADC_Value,4095约为最大采集值)满足关系:V=3.3*ADC_Value/4095,至此程序中可调用doublepow(doublex,doubley)函数,得出,程序函数公式:ppm=613.9f*pow(RS/R0,-2.074f),R0为洁净空气电阻值,由此可以得出MQ-2烟雾传感器所测浓度值(ppm)。HX711压力传感器模块使用串口通信,数据通道128倍增益,内置计量器,可直接输出计量值,只需对其进行参数调整,即可得出准确重量。将其可调精度电阻置为R=5Ω,参数值GapValue为500.0,实际重量计算公式为:实际重量=计量值/GapValue。4.3.3控制策略模块控制策略部分根据获取到的相关实际值进行事件处理,我在此处设置多个事件:启机事件、停机事件、倾倒事件、展示事件、通信事件、告警事件,每个事件设计为一个u8类型全局变量的一个bit位,预留2位,可有各个模块感知、调用。雨滴传感器,当判定当前状态为异常状态,即当处理的数据状态值为0时,将设置告警事件,当检测到时,将判定系统停机,控制继电器断开高压电网线路,以防止短路,当消失时,会延时5s再次判定为正常时,控制系统启机,恢复正常工作。MQ-2烟雾传感器,当检测到浓度值大于阈值22ppm时,判定火灾发生,当即进行告警事件,停机事件,通信事件。HX711压力传感器,当检测到收集盒重量达到与阈值2kg时,将重量值保存在一个10个元素的数组中,并触发舵机倾倒收集盒,当未达到阈值时,则更新称此次记录值。通信事件,下位机通过驱动nRF24L01周期性的向网关上送数据,包括设备号,系统状态,雨滴传感器状态,空气状态,以及收集记录的总重量。网关模块中驱动nRF24L01周期性接受,并解析数据,并且网关模块中加载有机智云官网提供的官方库,再将乐鑫模块固件烧录到ESP8266后,即可通过ESP8266模块将下位机数据上传云端。显示事件,显示当前各个模块的数据,与通信状态。图4.SEQ图\*ARABIC\s13机智云平台图4.SEQ图\*ARABIC\s14软件流程4.4开发环境及功能测试本次毕业设计选择的是两个STM32单片机当做作为主控单片机,采用C语言对软件进行开发,使其能够完成各种实际的工作,这样就可以实现全部的微处理器程序的相关工作,从而可以较好地实现各种实际的函数。其中,程序设计的具体软件为:KeilVision5软件。4.4.1下位机软件调试对下位机驱动进行调试,以保证相关模块可被正确调用,包括系统延时功能测试,雨滴、烟雾、压力传感器功能测试,舵机继电器控制测试,相关的调试细节如下流程。系统延时功能测试,系统延时可以保证系统数据被正确处理,本次测试中使用心跳灯配合,实现单片机闪电后的心跳控制,相关测试接口为:voiddelay_init(void),该函数对系统延时,进行时钟选择、开启及预分频,无参数与返回值。voiddelay_us(u32nus),进行nus微妙的延时,无返回值。voiddelay_ms(u16nms),进行nms毫秒的延时,无返回值。雨滴、烟雾、压力传感器功能测试,系统采集功能测试,配合配合OLED屏幕测试,实现数据展示,相关测试接口如下:voidmh_init(void),雨滴传感器初始化,无返回值与入参。intmh_res_value(void),获取获取雨滴传感器AD转换的结果,返回整形,无入参。voidmq_init(void),烟雾传感器初始化,无返回值与入参。intmq_res_value(void),获取烟雾传感器AD转换的结果,返回整形,无入参。voidpower_init(void),压力传感器初始化,无返回值与入参。u32power_read(void),通过串口读取烟雾传感器AD转换的结果,通道增益倍数128,返回整形,无入参。图4.SEQ图\*ARABIC\s15采集展示舵机与继电器控制测试,系统的采控动作,相关测试接口如下:voidsg90_PWM_Init(void),舵机与定时器初始化,无返回值与入参。voidServer_360_Forward(void),舵机360度旋转控制。voidServer_180_Angle(void),舵机180度旋转控制。4.4.2网关及通信调试对网关的数据转发功能进行测试,验证通信的通道处于连通状态,测试功能包括,nRF24L01模块收到下位机数据,通过ESP8266模块网关在云端上线。nRF24L01模块通信下位机发送,网关接收,数据对比验证,相关测试接口如下:voidNRF24L01_Init(void),nRF24L01模块初始化,无返回值与入参。voidNRF24L01_RX_Mode(void),nRF24L01模块接收模式设置无返回值与入参。voidNRF24L01_TX_Mode(void),nRF24L01模块发送模式设置无返回值与入参。u8NRF24L01_RxPacket(u8*rxbuf),nRF24L01模块接收函数,返回值返回无符号的字符值,参数为接收数据的空间地址。u8NRF24L01_TxPacket(u8*txbuf),,nRF24L01模块发送函数,返回值返回无符号的字符值,参数为要发送数据的空间地址。图4.SEQ图\*ARABIC\s16下位机接收到的数据ESP8266模块云端上线,模块上电后,又快速频闪进入心跳状态为连接云端成功,APP中灰色显示为离线,平台端可查看上线日志。图4.SEQ图\*ARABIC\s17APP设备上线及通信日志第5章总结本次设计了一种基于STM32的害虫防治系统的设计方案,该系统利用STM32F103C8T6作为主控芯片,下位机通过传感器采集果园环境信息,并将数据发送到网关然后整合上送到云端,实现对果园环境的实时监测,通过诱虫灯、高压电网等设备对害虫进行有效的防治,提高农作物的产量和质量。网关处理接受的数据,并保存到云端。该系统具有低功耗、高可靠性、易扩展性等特点,可以在运行过程中进行智能化调控,适用大多数果园害虫防治。本次设计完成了以下任务:一、在了解国内外相关研究的背景下进行阅读分析,分析当前现状,确定系统需求和功能,分析系统的工作原理和运行环境。二、设计系统的硬件电路并选择合适的硬件平台。三、设计系统的软件程序并选择合适的软件开发工具。四、搭建系统硬件,完成系统的软件流程设计,程编写系统的软件程序,进行调试和测试。五、实现了害虫防治系统的,数据采集监控,下雨报警停机,火灾报警停机,害虫的灭杀、收集、倾倒,多端通信显示。在完成以上任务的同时,也会遇到一些问题,例如户外环境对无线通信信号质量的影响,需要对硬件和软件都有一定的要求,不同的果园种植方式不同等,都产生了一定的影响。展望将来,该系统可以通过对软硬件技术规格的迭代,使用更多更精准的传感器,更优秀的软件架构,结合物联网技术,从而缔造出更为全面,更为可靠的害虫防治系统。总之,本次基于STM32的果园害虫防治系统设计是一次具有创新性的设计,设计系统具有性能好、速度快、造价低廉等优点,满足了农业生产部分害虫治理的需求,有广阔的应用前景和市场价值。虽然这之中还存有一些待解决的问题,但是我相信在日后的探索与研究中一定会有更全面,完美的结果出现。参考文献[1]李凯亮,舒磊,黄凯,等.太阳能杀虫灯物联网研究现状与展望[J].智慧农业,2019,1(3):16.[2]张锦芳,张阳,徐文平,陶黎明.昆虫的趋光性及其应用于害虫治理的研究进展[J].世界农药,2020,42(11):26-35.DOI:10.16201/10-1660/tq.2020.11.04[3]黄清臻.信息化和智能化技术在有害生物防控中的应用[J].中华卫生杀虫药械,2021,27(3):5.[4]杨莹.风吸式杀虫灯和频振式杀虫灯在柑橘害虫防治中的应用[J].浙江农业科学,2019,60(07):1161-1162.DOI:10.16178/j.issn.0528-9017.20190727.[5]王美珍,张衍炽,谢宝林,等.智能虫害防治系统对茶小绿叶蝉防效试验报告[J].福建茶叶,2019,41(7):2.[6]包晓敏,汪静波.物联网技术在农业害虫测报方面的应用与发展[J].新疆农机化,2020(05):25-29.DOI:10.13620/ki.issn1007-7782.2020.05.007.[7]杨莹.风吸式杀虫灯和频振式杀虫灯在柑橘害虫防治中的应用[J].浙江农业科学,2019,60(07):1161-1162.DOI:10.16178/j.issn.0528-9017.20190727.[8]蔡绍博,张军,徐欢,蔡绍硕.基于物联网技术的农业大棚灯光控制与害虫诱杀系统[J].种子科技,2022,40(07):104-107.DOI:10.19904/14-1160/s.2022.07.034.[9]MBuevich,SDan,TEscalada,AJacquiau-Chamski,ARowe.Fine-grainedremotemonitoring,controlandpre-paidelectricalserviceinruralmicrogrids[D].Ipsn-14InternationalSymposiumonInformationProcessinginSensorNetworks,2014:1-12.[10]王智慧,曾虹峰,何倦户.基于NRF24L01的四轴无人机无线测试系统设计[C]//中国航空工业集团有限公司防务生产与保障部,中国航空工业技术装备工程协会.2019航空装备服务保障与维修技术论坛暨中国航空工业技术装备工程协会年会论文集.[出版者不详],2019:604-606.DOI:10.26914/kihy.2019.035056.[11]赵建设张易成刘彪吴光磊郭立月蒋高明.诱虫灯对害虫诱捕规律及防治效果研究进展[J].南方农业,2022,16(18):1-7.[12]李馨蕾,黎镜鑫,周瑞婷,袁梦.一种农作物智能电子灭虫灯的设计[J].南方农机,2022,53(07):32-34.[13]KusakariSI,OkadaK,ShibaoM,etal.HighVoltageElectricFieldsHavePotentialtoCreateNewPhysicalPestControlSystems[J].Insects,2020,11(7):447.[14]PrasathST,NavaneethanC.AnIn-DepthStudyofSmartAgricultureBasedonInternetofThingsandWirelessSensorNetworks[J].ECStransactions,2022(1):107.[15]SahadevR,KaushalM,BiswasA.PlaneRegionStepFarming,AnimalandPestAttackControlUsingInternetofThings[M].JohnWiley&Sons,Ltd,2021.[16]FigueiredoV,MafraS,RodriguesJ.AProposedIoTSmartTrapusingComputerVisionforSustainablePestControlinCoffeeCulture[J].2020.[17]Toscano-MirandaR,ToroM,AguilarJ,etal.Artificial-intelligenceandsensingtechniquesforthemanagementofinsectpestsanddiseasesincotton:asystematicliteraturereview[J].TheJournalofAgriculturalScience,2022(1/2):160.[18]AnwarDH,WildanM,Rohanda,etal.DesignandImplementationofWerengPestBasedonInternetofThings[C]//IEEEInternationalConferenceonSmartInstrumentation,MeasurementandApplications.IEEE,2021.附录原理图:部分原码:#include"devices.h" //设备驱动#include"print.h" //定义的所有函数接口均在此文件内定义#include"stdio.h" //包含有关标准输入输出操作的头文件#include"delay.h" //包含有关延时操作的头文件#include"led.h" //包含有关led灯操作的头文件#include"oled.h" //包含有关OLED操作的头文件#include"24l01.h" //包含有关NRF操作的头文件#include"relay.h" //包含有关继电器操作的头文件#include"mh.h" //包含有关雨滴传感器操作的头文件#include"mq_2.h" //包含烟感操作的头文件#include"power.h" //包含压力操作的头文件#include"server.h" //包含舵机操作的头文件intdevices_init(void){ delay_init(); //系统延时初始化 led_ini

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论