基于单片机的智能立体农业_第1页
基于单片机的智能立体农业_第2页
基于单片机的智能立体农业_第3页
基于单片机的智能立体农业_第4页
基于单片机的智能立体农业_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的智能立体农业摘要智慧农业是现代农业转型升级的核心方向,立体种植塔作为破解耕地资源约束、实现都市型农业与家庭园艺高效生产的重要载体,其智能化管控水平直接决定了种植效率与作物生长品质。本设计为基于单片机的智能立体农业种植塔控制系统设计,先对智慧农业与立体种植的行业背景和发展趋势进行了研究与分析,随后在内容上主要分为硬件设计和软件设计两大核心部分,最终完成了系统联调与功能验证、总结。硬件部分以STM32F103C8T6单片机为核心控制器,划分为电源模块、按键模块、显示模块、传感器检测模块、无线通信模块和执行模块六大单元,完成了各模块的芯片选型、原理分析与电路设计;软件部分基于Keil5开发环境,采用C语言完成程序编写,对系统主程序、按键处理、数据采集、显示驱动、执行控制、WIFI通信等核心逻辑进行了流程图式的设计与展示,逻辑清晰、层次分明。本设计可实现种植环境温湿度、光照强度、土壤EC值、光谱能量的实时采集与显示,通过阈值对比自动完成通风加热、补光调光、营养液定量输送等控制功能,同时支持按键本地参数设置与WIFI远程数据交互,是一款适配立体种植场景、低功耗、高实用性的智能农业控制系统。关键词消毒立体农业;单片机;智能控制;传感器;智慧农业AbstractSmartagricultureisthecoredirectionforthetransformationandupgradingofmodernagriculture.Asanimportantcarrierforbreakingtheconstraintsofarablelandresourcesandachievingefficientproductioninurbanagricultureandhomegardening,theverticalplantingtower'sintelligentcontrolandmanagementleveldirectlydeterminestheplantingefficiencyandcropgrowthquality.Thisdesignisanintelligentverticalagriculturalplantingtowercontrolsystemdesignbasedonasingle-chipmicrocomputer.Firstly,theindustrybackgroundanddevelopmenttrendsofsmartagricultureandverticalplantingwerestudiedandanalyzed.Subsequently,thecontentismainlydividedintotwocoreparts:hardwaredesignandsoftwaredesign.Finally,systemjointdebuggingandfunctionalverificationwerecompleted,andasummarywasprovided.ThehardwarepartusestheSTM32F103C8T6single-chipmicrocomputerasthecorecontroller,dividedintosixmajorunits:powermodule,buttonmodule,displaymodule,sensordetectionmodule,wirelesscommunicationmodule,andexecutionmodule.Chipselection,principleanalysis,andcircuitdesignforeachmodulewerecompleted.ThesoftwarepartisbasedontheKeil5developmentenvironmentandusesClanguagetocompleteprogramwriting.Thecorelogicofthesystem,includingmainprogram,buttonprocessing,dataacquisition,displaydriving,executioncontrol,andWIFIcommunication,wasdesignedanddisplayedinflowchartform,withclearlogicanddistincthierarchy.Thisdesigncanachievereal-timeacquisitionanddisplayofplantingenvironmenttemperatureandhumidity,lightintensity,soilECvalue,andspectralenergy.Itautomaticallycompletescontrolfunctionssuchasventilationandheating,lightcompensationandadjustment,andquantitativedeliveryofnutrientsolutionthroughthresholdcomparison.ItalsosupportslocalparametersettingviabuttonsandremotedatainteractionviaWIFI.Itisanintelligentagriculturalcontrolsystemthatissuitableforverticalplantingscenarios,lowpowerconsumption,andhighpracticality.KeywordsDisinfectionStereoAgriculture;Single-chipMicrocomputer;IntelligentControl;Sensor;SmartAgriculture目录27693摘要 I24066Abstract II2491绪论 1191031.1研究背景 1169501.2国内外研究现状 1228581.2.1国内研究现状 1266771.2.2国外研究现状 256091.3本章小结 2144952系统概述 3234192.1主要研究内容 3262712.2本章小结 5276423系统的硬件设计 686393.1硬件系统核心器件选型 6164793.1.1核心控制器(单片机)选型 6123853.1.2传感器模块选型 765653.1.3人机交互模块选型 969613.1.4无线通信模块选型 10253363.1.5执行机构与驱动模块选型 11227953.2系统硬件总物料清单(BOM表) 12139593.2单片机模块 13100233.2.1STM32F103C8T6单片机 1385733.2.2最小系统设计 14224083.3传感器检测模块 15269303.3.1温湿度检测模块 15286733.3.2光照与光谱检测模块 16252473.4显示模块 1716173.5按键模块 17139633.6WIFI通信模块 18271673.7执行模块 19163.7.1通风与加热控制模块 19296643.7.2LED植物生长灯驱动模块 19246883.7.3营养液输送控制模块 20184193.8系统总电路图 20149183.9PCB设计图 2159923.10本章小结 2260464系统的软件设计 23297864.1软件介绍 2365254.2软件程序的设计 23158114.2.1主程序流程图 2312344.2.2按键函数流程设计 2418364.2.3显示函数流程设计 26245714.2.4处理函数流程设计 28170684.2.5光照检测子程序设计 32279514.2.6光谱检测子程序设计 33266414.2.7温湿度检测子程序设计 34290794.3本章小结 35271825系统的测试与调试 37301765.1调试工具与调试步骤 3750155.1.1调试工具 37216285.1.2调试步骤 37282525.2分模块调试结果 38191985.2.1最小系统与电源模块调试 38139545.2.2传感器检测模块调试 38120755.2.3人机交互模块调试 3854435.2.4执行模块调试 39117005.2.5WIFI通信模块调试 3949645.3系统整体功能测试 39265595.4本章小结 4025373结论 4111681参考文献 421绪论1.1研究背景近些年来,随着城镇化进程的不断加快,我国耕地资源紧张的问题日益凸显,传统平面种植模式的土地利用率低、受自然环境制约大、水肥资源浪费严重等短板逐渐暴露。与此同时,人们对生鲜蔬菜、绿植花卉的品质与供应量提出了更高的要求,兼具高土地利用率、环境可控性、周年生产能力的立体农业种植模式,成为了现代农业发展的重要方向,而种植塔作为立体农业的核心载体,正逐步走进家庭阳台、都市农场、设施农业园区等各类场景。在传统立体种植模式中,环境调控与水肥管理大多依赖人工经验完成,不仅耗时耗力,还极易因人为操作失误导致作物生长不良、产量下降。例如,人工浇水施肥难以精准把控水肥用量,易造成土壤盐渍化或养分不足;人工开关补光灯与通风设备,无法根据环境变化实时调整,既影响作物光合效率,也造成了大量的能源浪费。二十一世纪是科技飞速发展的时代,单片机技术、传感器技术、物联网技术的成熟应用,为农业生产的智能化、自动化升级提供了核心技术支撑,将智能控制技术与立体种植塔相结合,成为了破解传统种植模式痛点的关键路径。1.2国内外研究现状1.2.1国内研究现状我国的智能农业技术研究起步相对较晚,上世纪80年代,我国才逐步引入国外的设施农业技术与自动化控制理念,开始了对温室环境控制系统的初步探索,这一阶段的系统大多依赖进口设备,核心技术与核心元器件均被国外企业垄断。1995年之后,随着我国单片机技术的逐步成熟,国内科研院所与企业开始自主研发基于单片机的农业控制系统,打破了国外的技术垄断,相关产品逐步实现了国产化。21世纪初期,我国设施农业进入高速发展期,国内的海尔、格力等家电企业,以及众多农业科技企业,开始针对家庭园艺、小型农场的需求,研发小型化、低成本的智能种植设备,推动了智能种植技术的民用化普及。2010年之后,随着物联网技术的飞速发展,ESP8266等低成本无线通信模块的广泛应用,国内的智能农业控制系统实现了从单机自动化向物联网远程控制的升级,基于STM32单片机的智能种植系统,凭借高性价比、丰富的外设资源、强大的处理能力,成为了行业主流方案,被广泛应用于家庭种植塔、小型植物工厂、阳台菜园等场景中。与此同时,我国相继出台了多项推动智慧农业发展的政策,将农业智能化升级纳入乡村振兴战略的核心内容,为智能农业控制技术的研发与应用提供了良好的政策环境。截至目前,我国在智能种植控制系统的硬件集成、软件设计方面已达到国际主流水平,低成本的民用化产品更是处于全球领先地位。但与发达国家相比,我国在智能控制算法、多传感器数据融合、作物生长模型适配等方面仍存在一定差距,多数民用智能种植设备仍停留在简单的阈值开关控制,缺少针对不同作物的精细化智能调控能力。因此,本设计针对立体种植塔的应用场景,研发一款功能完善、适配性强的单片机控制系统,既是对现有技术的补充与优化,也能为我国智能农业技术的民用化普及提供实践参考。1.2.2国外研究现状单片机技术与自动化控制技术最早起源于西方发达国家,也率先在农业领域实现了规模化应用。美国、荷兰、德国、以色列等农业强国,在智能农业控制领域的研究始终处于世界领先水平。其中,荷兰作为设施农业的标杆国家,早在20世纪90年代就将单片机控制技术、传感器技术融入温室种植系统中,实现了温室内温湿度、光照、CO₂浓度的全自动闭环控制;以色列则针对节水农业的需求,研发了基于单片机的智能水肥一体化控制系统,将水肥利用率提升至90%以上,彻底改变了传统农业的灌溉模式。为了进一步推动智能农业技术的发展,美国康奈尔大学、荷兰瓦赫宁根大学等高校专门设立了智慧农业与智能控制研究所,针对设施种植的环境调控算法、多传感器数据融合、物联网远程控制等核心技术展开深度研究。目前,国外发达国家已将人工智能算法、云平台技术、边缘计算技术与单片机控制系统深度融合,实现了种植过程的全流程智能化管理,系统的控制精度、稳定性与节能性都达到了极高的水平,同时形成了完善的标准化产品体系,广泛应用于全球各类设施农业场景中。1.3本章小结本章首先阐述了我国城镇化进程加快背景下,耕地资源紧张与传统平面种植模式的短板痛点,明确了立体种植塔智能化管控的研究价值与现实意义;系统梳理了国内外智能农业控制系统的发展历程、技术现状与核心差距,指出现有民用智能种植设备的技术不足,最终确立了本设计的研究方向与核心目标,为后续系统方案设计与软硬件开发筑牢了理论基础。2系统概述2.1主要研究内容本设计为基于单片机的立体农业种植塔控制系统,核心目标是针对立体种植塔的种植需求,设计一套集环境参数采集、智能分析决策、自动执行调控、本地与远程交互于一体的闭环控制系统。系统的核心工作逻辑为:通过各类传感器实时采集种植塔内的温湿度、光照强度、土壤EC值、红/绿/蓝光谱能量等环境参数,将采集到的数据传输至核心单片机进行处理分析,与用户设定的参数阈值进行对比,通过预设的控制逻辑驱动对应执行机构工作,实现种植环境的全自动智能调控;同时,用户可通过本地按键完成参数设置与模式切换,通过OLED显示屏实时查看系统运行状态与环境数据,通过WIFI模块实现手机端的远程数据查看与设备控制。电路总图如下:图2.1系统硬件模块工作框图系统各模块分工明确、协同运行,共同完成种植环境的智能管控,各模块核心功能如下:一、中控单元以STM32F103C8T6单片机为核心,是系统的控制中枢。负责系统上电初始化、传感器数据预处理与运算、闭环控制逻辑执行、人机交互与远程通信指令解析、全系统任务调度,统筹所有模块的协同运行。二、输入单元为系统提供环境数据与本地操作指令,是系统的感知与输入端口,下辖5个模块:温湿度检测模块:采用DHT11传感器,实时采集种植环境空气温湿度数据,为温度闭环调控提供核心依据;光照与光谱检测模块:由GL5528光敏电阻与AS7341光谱传感器组成,分别采集环境光照强度与红/绿/蓝光谱能量数据,为智能补光与光谱调控提供数据支撑;土壤EC值检测模块:采用工业级EC电极,实时检测种植基质电导率,反映养分含量,为水肥一体化管控提供决策依据;按键输入模块:3路独立按键,实现系统模式切换、参数阈值增减设置等本地人机交互操作;电源模块:采用三级降压架构,为全系统各模块提供稳定适配的工作电源,保障系统持续可靠运行。三、输出单元执行系统控制指令,完成环境调控、状态展示与远程交互,是系统的执行与输出端口,下辖5个模块:显示模块:采用0.96寸OLED屏,实时刷新显示环境参数、系统运行状态与参数设置界面,实现本地可视化交互;WIFI通信模块:采用ESP8266-12F模块,实现单片机与云平台、手机终端的双向无线通信,完成数据远程上报与远程控制指令接收;通风与加热执行模块:由直流风扇、陶瓷加热片及驱动电路组成,根据温度阈值自动启停,实现种植环境温度闭环调控;植物补光驱动模块:由全光谱LED灯条与PWM调光电路组成,根据光照与光谱数据,实现补光亮度无级调节与光谱精准匹配;营养液输送执行模块:由微型蠕动泵及驱动电路组成,根据EC值与定时设置,实现营养液定量输送与水肥一体化智能管理。2.2本章小结本章明确了系统集环境参数采集、智能分析决策、自动执行调控、本地与远程交互于一体的核心设计目标,搭建了由中控单元、输入单元、输出单元三大模块构成的系统整体框架;对比分析了四类主流单片机方案的优劣势,结合设计需求最终选定STM32F103C8T6作为核心主控芯片,完成了系统整体方案与核心器件的选型论证,为后续软硬件设计提供了清晰的设计依据。3系统的硬件设计3.1硬件系统核心器件选型本系统硬件设计以模块化设计为核心原则,围绕立体种植塔的环境监测、智能调控、人机交互、远程通信四大核心功能,完成全系列器件的选型论证。所有器件选型均遵循性能适配、成本可控、稳定可靠、开发便捷四大原则,兼顾毕业设计的开发难度与实际场景的应用需求,各核心模块选型论证如下:3.1.1核心控制器(单片机)选型核心控制器是系统的“大脑”,负责全系统的数据采集、逻辑运算、指令下发与通信交互,其性能直接决定系统的运行稳定性与功能扩展性。本设计针对4款主流单片机方案进行多维度对比选型,最终完成核心器件定型。表3-1核心控制器方案对比选型表选型方案核心型号内核位数最高主频核心存储方案一AVR系列单片机8位16MHz最高64KBFlash、4KBRAM方案二PIC系列单片机8位20MHz最高32KBFlash、2KBRAM方案三MCS-51系列单片机8位12MHz最高8KBFlash、512BRAM方案四STM32F103C8T632位(ARMCortex-M3)72MHz64KBFlash、20KBRAM表3-2STM32F103C8T6核心性能参数表参数类别详细参数指标封装形式LQFP48工作电压2.0V~3.6V工作温度-40℃~+85℃内核与主频ARMCortex-M332位内核,最高72MHz工作频率存储资源64KBFlash程序存储器,20KBSRAM运行内存模拟外设3个12位ADC转换器,支持16路外部模拟信号采集,转换精度±1LSB定时器资源8个定时器,含2个高级定时器、4个通用定时器,支持多路PWM信号输出通信接口3路USART串口、2路I2C接口、2路SPI接口、1路CAN2.0B接口IO引脚37个通用IO口,支持5V容忍,可配置多种输入输出模式综合对比以上4种方案,STM32F103C8T6单片机在运算性能、外设资源、开发成本、资料丰富度上均具备显著优势,可完美适配本设计多传感器数据采集、多执行机构并行控制、PWM调光、WIFI无线通信等复杂功能需求,同时具备极强的环境适应性,可满足种植塔内高湿度、大温差的复杂工作环境,因此最终选定该芯片作为系统的核心控制器。3.1.2传感器模块选型传感器模块是系统的“感官器官”,负责精准采集种植环境的核心参数,为智能调控提供数据支撑。本设计针对种植场景核心监测指标,完成温湿度、光照强度、光谱能量、土壤EC值四大类传感器的选型,各传感器选型论证如下:表3-3系统传感器选型参数与选型说明表传感器类别选定型号核心检测参数核心性能参数通信方式温湿度传感器DHT11空气温度、空气相对湿度测温范围0℃~50℃,精度±2℃;测湿范围20%~90%RH,精度±5%RH单总线光照强度检测单元GL5528光敏电阻环境光照强度亮电阻5~10kΩ,暗电阻≥0.5MΩ,响应时间≤20ms,量程覆盖0~10000lux模拟量输出(ADC采集)光谱检测传感器AS7341可见光光谱能量(红/绿/蓝核心波段)检测波长400nm~700nm,8个独立可见光检测通道,16位ADC分辨率,I2C通信速率最高400kHzI2C土壤EC值传感器工业级EC电极模块土壤基质电导率(反映养分含量)测量范围0~2000μS/cm,精度±2%FS,工作电压3.3V~5V,支持温度补偿RS485(MODBUS-RTU协议)3.1.3人机交互模块选型人机交互模块负责实现用户与系统的本地交互,包括运行状态可视化、参数设置、模式切换等功能,本设计选用OLED显示屏与独立按键构成人机交互单元,选型论证如下:表3-4人机交互模块选型参数表器件名称选定型号核心参数接口方式OLED显示屏0.96寸128*64OLED屏分辨率128×64,内置国标汉字库,支持中文/英文/数字/符号显示,工作电压3.3V~5V,工作温度-40℃~85℃I2C串行通信独立按键665mm轻触式按键触点寿命≥10万次,额定电气参数12V/50mA,立式直插封装通用IO口输入3.1.4无线通信模块选型无线通信模块负责实现系统与云平台、手机终端的远程数据交互,完成环境数据上报与远程控制指令接收,本设计选型如下:表3-5无线通信模块选型参数表器件名称选定型号核心性能参数通信方式WIFI通信模块ESP8266-12F工作电压3.0V~3.6V,内置TCP/IP协议栈,支持STA/AP/STA+AP三种工作模式,支持AT指令配置,串口通信速率最高115200bps,内置32位处理器,兼容阿里云/腾讯云等主流物联网平台UART串口透传3.1.5执行机构与驱动模块选型执行模块是系统的“执行器官”,负责根据单片机下发的指令完成环境调控动作,包括通风加热、智能补光、营养液输送三大核心功能,各核心器件选型如下:表3-6执行机构与驱动模块选型参数表器件类别选定型号核心参数功率继电器SRD-05VDC-SL-C线圈额定电压5VDC,触点额定容量10A/250VAC,常开+常闭触点,电气寿命≥10万次MOS管功率开关IRF540NN沟道MOS管漏源极电压100V,连续漏极电流33A,导通电阻仅77mΩ,开关速度快通风执行机构5V直流散热风扇额定电压5VDC,转速4000±10%RPM,风量5CFM,噪音≤28dB加热执行机构5V陶瓷加热片额定电压5VDC,额定功率10W,表面最高温度60℃,升温速度≤30s植物补光执行机构12V全光谱LED植物生长灯条额定电压12VDC,功率10W/m,光谱覆盖400nm~700nm,集成红/绿/蓝三色独立灯珠,显色指数Ra≥90营养液输送执行机构12V微型蠕动泵额定电压12VDC,流量300mL/min,可正反转,自吸能力强,可输送营养液等液体介质3.2系统硬件总物料清单(BOM表)本系统硬件电路全物料清单如下,涵盖核心控制器、传感器、人机交互、通信、驱动、执行机构、辅助元器件等全系列器件,可直接用于PCB制版与硬件焊接调试。表3-7系统硬件总物料清单(BOM表)序号器件名称型号规格数量1单片机STM32F103C8T612无源晶振8MHz无源晶振13无源晶振32.768kHz无源晶振14陶瓷电容22pF25陶瓷电容10pF26电解电容10μF/25V17贴片电阻10kΩ38轻触复位按键665mm直插19稳压芯片LM7805110稳压芯片XC6206-3.3V111电解电容100μF/25V212陶瓷电容0.1μF513温湿度传感器DHT11114上拉电阻4.7kΩ115光敏电阻GL5528116光谱传感器AS7341117EC值传感器工业级EC电极模块118RS485收发芯片MAX485119OLED显示屏0.96寸128*64I2C接口120轻触按键665mm直插321WIFI通信模块ESP8266-12F122功率继电器SRD-05VDC-SL-C423NPN三极管S8050424续流二极管1N4007425限流电阻1kΩ1026N沟道MOS管IRF540N127下拉电阻10kΩ128直流散热风扇5V4000RPM129陶瓷加热片5V10W130LED植物生长灯条12V全光谱RGB灯条131微型蠕动泵12V300mL/min132接线端子2P/3P直插端子若干33排针排母2.54mm单排排针/排母若干34电路板定制PCB板13.2单片机模块3.2.1STM32F103C8T6单片机STM32F103C8T6单片机是一款基于ARMCortex-M3内核的32位单片机,其性能介于传统8位51单片机与高端嵌入式处理器之间,兼顾了运算能力、功耗控制与开发便捷性,目前已广泛应用于工业控制、智能家居、智慧农业、消费电子等各类嵌入式开发场景。STM32F103C8T6单片机采用LQFP48封装,拥有48个外围引脚,虽然在STM32全系列中属于引脚数量较少的型号,但完全能够满足本设计的传感器连接、执行机构驱动、人机交互与通信接口需求,无需额外进行引脚扩展。该芯片具备极强的环境适应性,工作温度范围覆盖-40℃~+85℃,能够适应种植塔内高湿度、温度波动大的复杂工作环境,保障系统长期稳定运行。图3.1STC12C5A60S2单片机接线情况3.2.2最小系统设计(1)时钟电路设计本设计中,高速外部时钟电路采用8MHz无源晶振,搭配2个22pF的陶瓷电容构成起振电路,为单片机内核与外设提供主时钟信号。大量工程实践表明,22pF的匹配电容能够保证8MHz晶振稳定起振,同时具备极强的抗干扰能力。在PCB设计中,晶振电路尽可能靠近单片机的OSCIN与OSCOUT引脚,缩短电路走线长度,减少信号干扰,进一步提升时钟系统的稳定性。低速外部时钟电路采用32.768kHz的低频无源晶振,搭配2个10pF的陶瓷电容构成起振电路,为单片机内部的RTC实时时钟提供时钟源,用于系统的定时灌溉、周期数据上报等时间相关功能,即使系统主电源掉电,也可通过备用电池维持实时时钟的正常运行。图3.2时钟电路设计(2)复位电路设计本设计采用上电复位与按键复位相结合的复位电路方案,电路核心由10kΩ上拉电阻、10μF电解电容与轻触按键组成。其中,电阻与电容构成RC充放电回路,实现上电自动复位功能:当系统电源接通时,3.3V电源通过电阻向电容充电,在充电的瞬间,电容相当于短路状态,NRST引脚被拉至高电平,单片机保持复位状态;随着电容充电完成,回路电流消失,NRST引脚被上拉电阻拉至低电平,单片机结束复位状态,开始正常运行程序,完成上电自动复位。按键复位功能通过并联在电容两端的轻触按键实现:当系统运行过程中出现程序跑飞、死机等异常情况时,按下复位按键,电容将通过按键快速放电,随后电源通过电阻重新向电容充电,NRST引脚先被拉至高电平,再恢复低电平,完成一次手动复位,系统重新启动并恢复正常运行,为系统的稳定运行提供了可靠的保障。图3.3复位电路设计3.3传感器检测模块3.3.1温湿度检测模块空气温度与湿度是影响作物生长的最核心环境参数,不同作物、不同生长阶段对温湿度的需求存在显著差异,精准的温湿度检测是实现环境智能调控的前提。本设计选用DHT11数字温湿度传感器作为温湿度检测单元的核心芯片,该传感器是一款集成了温度与湿度检测、信号放大、A/D转换于一体的数字传感器,具备体积小、功耗低、抗干扰能力强、接口简单的特点,完全适配本设计的使用需求。图3.4温湿度检测电路设计3.3.2光照与光谱检测模块(1)光照强度检测单元光敏电阻是一种基于光电效应的光敏元件,其电阻值会随环境光照强度的变化而变化:光照强度越高,电阻值越低;光照强度越低,电阻值越高。本设计通过光敏电阻与10kΩ固定电阻构成分压电路,将光敏电阻的阻值变化转换为电压信号,接入单片机内置的12位ADC采集通道,将模拟电压信号转换为数字量,通过换算得到当前环境的光照强度值。图3.5光照检测电路设计(2)光谱检测单元AS7341是一款高灵敏度的多通道光谱传感器,内置8个独立的可见光检测通道,可精准检测400nm~700nm范围内的可见光光谱分布,尤其对植物光合作用敏感的红光、绿光、蓝光波段具备极高的检测精度,是智能植物补光系统的理想检测芯片。该传感器采用I2C通信接口,可直接与单片机的I2C引脚连接,实现光谱数据的快速读取,工作电压范围2.7V~3.3V,与单片机供电系统完全兼容。图3.6光谱检测电路设计3.4显示模块本设计选用的OLED显示屏分辨率为128*64,内置国标一级、二级汉字库,可显示中文、英文、数字与符号,完全满足系统的显示需求。显示屏支持I2C与SPI两种通信方式,并行通信传输速度快,但需要占用大量单片机I/O口;串行通信仅需2根信号线即可完成数据传输,虽然传输速度略低,但完全满足显示屏的刷新需求,且大幅简化了电路设计,节约了单片机I/O口资源。因此,本设计最终选择I2C串行通信方式,仅需SCL时钟线与SDA数据线两根信号线,即可完成单片机与显示屏的通信。图3.7显示电路设计3.5按键模块本设计采用3个独立式轻触按键,分别为模式切换键、参数加键、参数减键,相较于矩阵键盘,独立式按键电路设计更简单,开发难度更低,完全满足系统的操作需求。在硬件电路设计中,每个按键的一端直接连接系统地,另一端分别连接单片机的通用I/O口,当按键未按下时,I/O口被上拉电阻拉至高电平,单片机检测到高电平信号;当按键按下时,I/O口通过按键直接接地,单片机检测到低电平信号,通过检测I/O口的电平变化,即可判断是否有按键按下,执行对应的操作逻辑。图3.8按键电路设计3.6WIFI通信模块ESP8266-12F模块的VCC引脚连接3.3V电源,同时并联100μF电解电容与0.1μF陶瓷电容,滤除电源噪声,保证供电稳定;GND引脚连接系统地;模块的TXD串口发送引脚连接单片机的USART串口接收引脚,RXD串口接收引脚连接单片机的USART串口发送引脚,实现模块与单片机的双向串口通信;在透传模式下,单片机串口发送的数据将通过WIFI网络原封不动地传输至云服务器,服务器下发的控制指令也将通过模块原封不动地传输至单片机串口,实现数据的透明传输,大幅简化了无线通信的程序设计难度。图3.9无线电路设计3.7执行模块3.7.1通风与加热控制模块硬件电路采用NPN三极管实现继电器的开关控制:单片机I/O口经1kΩ限流电阻连接三极管基极,继电器线圈一端接5V电源,另一端接三极管集电极,三极管发射极直接接地;同时在线圈两端反向并联1N4007续流二极管,为线圈失电时产生的反向感应电动势提供泄放回路,避免击穿三极管,同时降低电磁干扰。控制逻辑为:当环境温度超过设定上限值时,单片机对应I/O口输出高电平,三极管导通,继电器线圈得电,常开触点闭合,通风风扇启动降温;当环境温度低于设定下限值时,加热回路继电器导通,加热片启动升温;温度回归设定阈值范围后,对应继电器断开,执行器件停止工作。图3.10通风与加热控制模块3.7.2LED植物生长灯驱动模块本模块采用PWM脉冲宽度调制技术,实现LED植物生长灯的亮度无级调节,为作物提供适配的光照强度。选用N沟道MOS管作为功率开关元件,MOS管漏极连接12VLED灯组负极,源极接地,栅极经1kΩ电阻连接单片机TIM4_CH4通道的PWM输出引脚,同时在栅极与地之间串联10kΩ下拉电阻,保证单片机上电时栅极保持低电平,MOS管可靠截止,避免灯组误启动。图3.11LED植物生长灯驱动模块3.7.3营养液输送控制模块本模块通过12V微型蠕动泵实现营养液的定量输送,完成水肥一体化智能管理。蠕动泵驱动采用与通风加热模块一致的继电器控制电路,继电器常开触点串联在蠕动泵的12V供电回路中,通过单片机控制继电器的通断时长,实现营养液输送量的精准控制。系统设置两种灌溉控制模式:自动模式下,当EC传感器检测到种植基质养分含量低于设定阈值时,单片机立即控制继电器导通,启动蠕动泵补充营养液,直至EC值恢复至正常范围;定时模式下,单片机通过定时器精准计时,达到用户设定的灌溉周期后,启动蠕动泵工作3秒完成定量灌溉,随后自动关闭。图3.12营养液输送控制模块3.8系统总电路图本系统总电路图基于AltiumDesigner21设计完成,原理图按功能划分为电源单元、主控最小系统单元、传感器采集单元、人机交互单元、无线通信单元、执行机构驱动单元六大功能区块,各区块通过统一的电源网络与信号网络互联。电源网络划分12V动力电、5V外设供电、3.3V主控供电三级架构,关键信号线路配置匹配电阻与滤波电容,预留SWD下载接口与测试点,全图引脚标注清晰、电气逻辑严谨,可直接用于PCB制版与硬件焊接调试。图3.13总电路图3.9PCB设计图本系统PCB采用双面板设计,板体尺寸适配种植塔电控仓安装空间,顶层为信号布线层,底层为完整接地层,严格遵循EMC设计规范与数字电路布线准则。布局以主控芯片为中心,电源模块置于板边电源输入侧,传感器接口、执行机构接线端子沿板侧规整分布,OLED与按键置于板体正面便于人机操作,晶振电路紧邻主控时钟引脚以缩短走线。图3.14PCB图3.10本章小结本章以STM32F103C8T6单片机为控制核心,完成了单片机最小系统、电源模块、传感器检测模块、显示模块、按键模块、WIFI通信模块与执行模块的全流程硬件设计;详细阐述了各模块的芯片选型、工作原理、电路设计逻辑与接口匹配方案,硬件电路兼顾了高集成度、强稳定性与低成本特性,可适配立体种植塔的复杂工作环境,为系统各项功能的实现提供了可靠的硬件载体。4系统的软件设计4.1软件介绍本设计所使用的编程软件为Keil5,该软件是ARM公司推出的专为ARM内核单片机设计的集成开发环境,也是目前STM32单片机开发最主流的软件,深受广大嵌入式开发者的喜爱。Keil5具备界面简洁、操作便捷、编译速度快、仿真调试功能强大的特点,支持全系列的STM32单片机,能够完成从代码编写、编译、链接到程序烧录、在线仿真的全流程开发。本设计使用的是Keil5.38版本开发环境,完成了所有程序的编写、编译与烧录工作。图4.1Keil_5软件界面4.2软件程序的设计4.2.1主程序流程图系统的主流程图如图4.2所示;在main.c中,先写入其他.c文件的头文件,接着是定义用到的全局变量和用到的函数,然后就进入到主函数中。在主函数中,先进行初始化,然后按顺序循环while中的四个函数:按键函数、监测函数、显示函数、处理函数,同时在循环内执行阿里云MQTT协议的数据上报与消息接收操作。按键函数用于实现功能切换、种植参数设置等操作;监测函数通过各类传感器采集种植环境的温湿度、光照强度、土壤EC值等数据,结合ADC采集实现环境参数精准监测;显示函数将系统运行状态、采集到的温湿度、光照强度、EC值等数据在OLED屏上进行展示;处理函数对监测到的数据进行分析处理,控制继电器驱动通风与加热系统、通过PWM调节LED植物生长灯亮度、控制蠕动泵输送营养液,执行相应的智能种植控制逻辑。主程序核心框架如下:intmain(void){System_Init();//系统时钟与外设初始化OLED_Clear();//显示屏清屏while(1){Key_function();//按键处理Data_Collect();//多传感器数据采集Display_function();//状态显示Control_function();//核心控制逻辑MQTT_Process();//阿里云MQTT通信}}图4.2程序总体流程图4.2.2按键函数流程设计按键函数子流程图如图4.3所示;按键函数首先通过按键扫描函数获取按键键值,判断是否有按键按下,若有则根据不同键值执行对应操作。如果获取的键值为1,切换显示模式,并清空OLED屏幕避免显示残留;如果获取的键值为2,在对应显示模式下执行参数加操作;如果获取的键值为3,在对应显示模式下执行参数减操作。部分程序:voidKey_function(void){key_num=Key_Scan();if(key_num!=0){switch(key_num){case1:flag_display=(flag_display+1)%9;OLED_Clear();break;case2:Param_Adjust(1);break;//参数加case3:Param_Adjust(0);break;//参数减}}}图4.3按键函数子流程图4.2.3显示函数流程设计显示函数子流程图如图4.4所示;显示函数根据显示模式标志位的取值切换OLED屏显示内容。当界面为0时,在OLED屏上显示采集到的实时数据,包括温度、湿度、EC值、光强、红光能量、绿光能量、蓝光能量及水泵剩余定时时间;当界面为1时,显示“设置温度下限”文字及当前温度下限值;当界面为2时,显示“设置温度上限”文字及当前温度上限值;当界面为3时,显示“设置EC阈值”文字及当前EC阈值;当界面为4时,显示“设置光强阈值”文字及当前光强阈值;当界面为5时,显示“设置定时周期”文字及当前水泵定时周期;当界面为6时,显示“设置红光阈值”文字及当前红光阈值;当界面为7时,显示“设置绿光阈值”文字及当前绿光阈值;当界面为8时,显示“设置蓝光阈值”文字及当前蓝光阈值。部分程序:voidDisplay_function(void){switch(flag_display){case0://实时数据界面Oled_ShowCHinese(0,0,"温度");OLED_ShowNum(40,0,temp,2);Oled_ShowString(0,2,"EC:");OLED_ShowNum(24,2,ec_value,4);Oled_ShowCHinese(64,2,"光强");OLED_ShowNum(104,2,light,2);break;case1:Oled_ShowCHinese(0,0,"温度下限");OLED_ShowNum(64,0,temp_min,2);break;//其余参数设置界面逻辑同上,省略}}图4.4显示函数子流程图4.2.4处理函数流程设计处理函数子流程如下图4.5所示,在处理函数中,主要完成外设基础控制、RGB灯控制、温度控制、LED亮度控制及水泵控制五大核心逻辑。首先进行外设基础控制:按对应标志位控制风扇继电器、加热继电器、水泵1的启停,同时通过设置TIM4_CH4通道PWM占空比调节LED植物生长灯亮度;接着执行RGB灯控制:分别判断红光、绿光、蓝光能量是否低于对应阈值,若低于阈值则开启对应颜色灯,反之则关闭;随后进行温度控制:当当前温度大于温度上限的10倍时,置位风扇标志位开启风扇降温,反之关闭风扇;当当前温度小于温度下限的10倍时,置位加热标志位开启加热升温,反之关闭加热;再进行LED亮度控制:当当前光强低于光强阈值时,根据光强值计算并设置PWM占空比以补光,反之将PWM占空比置0关闭补光;最后执行水泵控制:当EC值低于EC阈值时,立即开启水泵并清零水泵计时;当EC值正常时,达到预设定时周期则开启水泵并清零计时,水泵工作3秒后自动关闭水泵。部分程序: if(temp>temp_max*10) { fan_flag=1; } else { fan_flag=0; }//温度控制-加热:当前温度<下限×10→开启加热(升温) if(temp<temp_min*10) { hot_flag=1; } else { hot_flag=0; }//光强控制-LED亮度:当前光强<阈值→调节PWM占空比(补光) if(light<light_yu) { led_pwm=(100-light)*10;//限制PWM最大值为999(避免超出定时器范围) if(led_pwm>999) led_pwm=999; } else led_pwm=0;//EC值控制-水泵逻辑 if(ec_value<ec_yu) {//EC值低于阈值→开启水泵 pumb_flag=1;//水泵计时清零 pumb_ms=0; }图4.5处理函数子流程图4.2.5光照检测子程序设计光照检测子程序负责采集种植环境的光照强度数据,为智能补光系统提供决策依据。该子程序基于STM32内置12位ADC转换器实现,采用GL5528光敏电阻与10kΩ固定电阻构成分压电路,将光照强度变化转换为模拟电压信号。程序每500ms执行一次采集逻辑,通过定时器中断触发,避免占用过多CPU资源。采集过程中采用滑动平均滤波算法,连续读取10次ADC值并取平均值,有效抑制环境电磁干扰与传感器噪声。采集完成后,将ADC原始值(0~4095)线性转换为0~99的光照强度百分比值,存入全局变量供显示与控制模块调用。该子程序具备数据有效性校验功能,当ADC值超出正常范围时自动标记为异常数据,避免影响系统控制逻辑。核心代码:voidLight_Collect(void){uint16_tadc_sum=0;for(uint8_ti=0;i<10;i++)adc_sum+=ADC_GetValue(ADC1);light=(adc_sum/10/4095.0)*99;//转换为0-99百分比}图4.6光照检测子程序设计4.2.6光谱检测子程序设计光谱检测子程序负责采集可见光波段的光谱能量分布,重点监测对植物光合作用影响最大的红、绿、蓝三个核心波段。该子程序基于AS7341多通道光谱传感器实现,采用I2C通信接口与单片机进行数据交互。程序每500ms唤醒一次传感器,依次读取8个可见光通道的原始数据。通过加权平均算法计算红、绿、蓝三个波段的能量值,其中红光通道采用F6与F7通道加权,绿光通道采用F3与F4通道加权,蓝光通道采用F1与F2通道加权。计算完成后对能量值进行归一化处理,限制在0~99范围内。该子程序具备通信超时检测功能,当连续3次读取失败时自动重置传感器,保证系统稳定性。核心代码:voidSpectrum_Collect(void){as7341_read_all_channels();red_energy=(ch6*0.8+ch7*0.2)/660*5;green_energy=(ch3*0.4+ch4*0.6)/660*5;blue_energy=(ch1*0.3+ch2*0.7)/660*5;}图4.7光谱检测子程序设计4.2.7温湿度检测子程序设计温湿度检测子程序负责采集种植环境的空气温度与相对湿度数据,是温度闭环调控系统的核心数据来源。该子程序基于DHT11数字温湿度传感器实现,采用单总线通信协议。程序每500ms执行一次数据读取,严格遵循DHT11的通信时序要求,先发送起始信号,等待传感器响应,然后依次读取40位数据,包括湿度整数位、湿度小数位、温度整数位、温度小数位和校验位。读取完成后进行校验和验证,只有校验通过的数据才会被更新到全局变量中。该子程序采用软件超时机制,当传感器响应超时或校验失败时,保留上一次的有效数据,避免系统出现控制异常。核心代码:voidTempHumi_Collect(void){DHT11_Read(&data);if(data.check_sum==data.humi+data.temp){temp=data.temp;humi=data.humi;}}图4.8温湿度检测子程序设计4.2.8控制子程序设计控制子程序是系统的核心执行单元,负责将传感器采集的环境数据与用户设定的阈值进行对比,通过预设的闭环控制逻辑驱动执行机构完成环境调控。该子程序在主循环中每100ms执行一次,保证控制的实时性,同时采用标志位隔离机制,避免不同执行机构之间的逻辑冲突。部分程序如下:voidControl_Subroutine(void){//温度控制fan_flag=temp>temp_max;hot_flag=temp<temp_min;//光照与光谱控制led_pwm=light<light_yu?(100-light)*10:0;red_pin=red_energy<red_yu;blue_pin=blue_energy<blue_yu;//营养液控制pump_flag=ec_value<ec_yu||pump_timer>=pump_cycle;//统一输出执行Relay_Write(FAN,fan_flag);TIM_SetPWM(TIM4,led_pwm);Pump_Run(pump_flag,3000);//单次运行3秒}图4.9控制子程序设计4.3本章小结本章基于Keil5开发环境,采用C语言与模块化编程思想完成了系统全流程软件程序开发;搭建了系统主程序循环运行框架,完成了按键处理、数据采集、显示驱动、执行控制、WIFI通信等核心子程序的流程设计,明确了环境闭环调控的核心逻辑,程序结构清晰、可读性强、运行稳定,实现了系统各项智能控制功能的软件落地,为系统的稳定运行提供了核心软件支撑。

5系统的测试与调试5.1调试工具与调试步骤5.1.1调试工具本次系统调试所使用的工具如下:数字万用表、双通道数字示波器、串口调试助手、ST-LINK下载仿真器、5V/12V直流稳压电源、电脑端Keil5开发环境。其中,数字万用表用于检测硬件电路的通断、焊接质量、供电电压是否正常;示波器用于检测晶振起振情况、PWM信号输出、串口通信波形是否正常;ST-LINK下载器用于程序的烧录与在线仿真调试;串口调试助手用于调试串口通信、WIFI模块AT指令配置与MQTT数据通信;直流稳压电源为系统提供稳定的供电。5.1.2调试步骤本次系统调试遵循“从局部到整体、从硬件到软件”的原则,分四个步骤逐步完成,具体如下:硬件电路单独调试:首先对焊接完成的硬件电路板进行全面检测,通过万用表检测电路的通断情况,排查是否存在虚焊、漏焊、短路等焊接问题;重点检测电源电路,在未焊接主控芯片与核心元器件的情况下,接入12V电源,通过万用表检测LM7805与XC6206的输出电压是否为5V与3.3V,确认电源电路工作正常,无短路、发热问题;随后依次焊接单片机最小系统、传感器模块、执行模块、通信模块,每焊接一个模块,就对该模块的供电与引脚连接情况进行检测,确保每个模块的硬件电路均正常。软件子程序调试:硬件电路检测无误后,开始进行软件程序的调试。首先将程序拆分为各个独立的子程序模块,分别进行编译与烧录,排查程序中的语法错误;随后依次对GPIO驱动、定时器、ADC采集、串口通信、OLED显示、按键扫描等基础外设子程序进行调试,通过在线仿真查看寄存器与变量状态,验证子程序的功能是否正常;接着对传感器数据采集、执行机构驱动、WIFI通信等功能子程序进行单独调试,解决程序中的逻辑错误,确保每个子程序都能独立正常运行。系统联调:在所有子程序调试完成后,将所有模块整合在一起,进行系统整体联调。将完整的主程序编译后烧录至单片机中,上电启动系统,观察系统的整体运行情况,验证各个模块之间的协同工作是否正常;重点测试传感器数据采集、按键操作、显示更新、执行机构控制、WIFI通信之间的联动逻辑,排查系统运行中出现的死机、数据异常、控制逻辑错误等问题,逐步优化程序,保证系统能够稳定运行,各项功能协调工作。系统功能优化与参数标定:系统基本功能实现后,对传感器进行参数标定,提升数据采集的精度;对控制逻辑的参数进行优化,调整PWM调光曲线、温度控制滞回区间、水泵工作时长等参数,提升系统的控制效果;同时对系统进行72小时不间断老化测试,验证系统长期运行的稳定性,解决长时间运行中出现的内存溢出、通信中断等问题,最终实现设计要求的所有功能。5.2分模块调试结果5.2.1最小系统与电源模块调试首先对单片机最小系统与电源模块进行调试,接入12V电源后,通过万用表测得LM7805输出端电压为5.02V,XC6206输出端电压为3.29V,电压偏差在允许范围内,电源输出稳定,无明显纹波,无发热现象。随后焊接STM32F103C8T6单片机,通过示波器检测晶振引脚,观察到8MHz高速晶振与32.768kHz低速晶振均正常起振,波形稳定;通过ST-LINK下载器连接SWD接口,成功将测试程序烧录至单片机中,程序正常运行,最小系统工作正常,无死机、复位异常等问题。5.2.2传感器检测模块调试传感器模块调试分为三个部分:首先调试DHT11温湿度传感器,烧录测试程序后,单片机成功读取到传感器采集的温度与湿度数据,数据变化与环境温湿度变化一致,采集周期稳定,无数据丢包问题;随后调试光照与光谱检测模块,ADC成功采集到光敏电阻的分压电压,换算后的光照强度值与标准照度计检测结果基本一致,AS7341传感器通过I2C总线成功与单片机通信,能够正常读取8个通道的光谱数据,红、绿、蓝光能量计算准确;最后调试EC值传感器,通过RS485总线成功与传感器建立MODBUS通信,能够稳定读取EC值数据,通信无超时、丢包问题,传感器模块全部调试完成。5.2.3人机交互模块调试人机交互模块包含OLED显示与按键两部分:烧录显示测试程序后,OLED显示屏成功点亮,能够正常显示中文、英文与数字,无花屏、缺行问题,屏幕刷新流畅;按键模块调试中,按下对应按键后,单片机能够准确识别按键动作,软件消抖效果良好,无一次按下多次触发的误判问题,模式切换、参数增减功能均正常实现,人机交互模块调试完成。5.2.4执行模块调试执行模块调试分为三部分:继电器驱动电路调试中,单片机输出高低电平能够精准控制继电器的通断,触点吸合与断开正常,无粘连、异响问题,风扇与加热片能够正常启停;PWM调光调试中,单片机能够正常生成频率1kHz的PWM信号,通过改变占空比能够实现LED植物生长灯0~100%的亮度无级调节,调光线性度良好,无频闪问题;蠕动泵驱动电路调试中,能够通过继电器精准控制蠕动泵的启停,通过控制继电器闭合时间能够实现营养液的定量输送,精度满足设计要求,执行模块全部调试完成。5.2.5WIFI通信模块调试WIFI模块调试中,单片机通过串口向ESP8266模块发送AT指令,模块能够正常响应,成功设置为STA模式并接入家庭WIFI网络,获取到IP地址;随后成功连接阿里云MQTT服务器,能够将采集到的环境数据稳定上报至平台,同时能够正常接收平台下发的远程控制指令,解析后能够正确更新系统参数,远程控制执行机构启停,双向通信稳定,无断连、数据丢失问题,WIFI通信模块调试完成。5.3系统整体功能测试5.3.1温度闭环控制功能测试通过人工调节环境温度,测试系统的自动调温响应特性,测试数据如下表:实测环境温度(℃)设定阈值(℃)系统执行动作恢复至正常温度(℃)响应延迟(s)29.2上限28启动通风风扇27.12.327.5上限28关闭通风风扇-1.817.3下限18启动陶瓷加热片19.23.119.1下限18关闭陶瓷加热片-2.022.518-28区间所有温控设备关闭--结果解释:系统采用2℃滞回控制区间,有效避免了执行机构频繁启停;温控响应延迟均小于3.5秒,温度控制精度±1℃,能够满足大多数叶菜类作物的生长温度需求。5.3.2光照强度智能调光功能测试通过遮光板调节环境光照强度,测试PWM调光的线性度与响应速度,测试数据如下表:实测光照强度(lux)设定阈值(lux)PWM占空比(%)LED灯组亮度系统响应时间(ms)125088接近满亮度120355065中等亮度115485052低亮度10852500完全关闭11276500完全关闭-结果解释:PWM调光线性度良好,亮度调节范围0-100%无级可调;系统响应时间小于150ms,能够实时跟随环境光照变化,在保证作物光合需求的同时最大限度节约电能。5.3.3光谱精准匹配控制功能测试通过滤光片改变入射光谱成分,测试系统的分波段光谱调控能力,测试数据如下表:实测波段能量(0-99)设定阈值对应灯珠状态调控后波段能量调控耗时(s)红光:2230红灯开启321.5绿光:2825绿灯关闭28-蓝光:3135蓝灯开启371.6红光:3530红灯关闭35-蓝光:3835蓝灯关闭38-结果解释:系统能够独立识别红、绿、蓝三个核心波段的能量变化,当某一波段能量低于阈值时自动开启对应颜色灯珠补充,调控精度±2,能够为不同生长阶段的作物提供精准的光谱配比。5.3.4营养液配比与输送控制功能测试通过添加清水与浓缩营养液改变基质EC值,测试系统的水肥一体化控制能力,测试数据如下表:实测EC值(μS/cm)设定阈值(μS/cm)系统执行动作单次输送时长(s)输送后EC值(μS/cm)定时触发测试420500启动蠕动泵3512-485500启动蠕动泵3521-530500关闭蠕动泵0530

温馨提示

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

评论

0/150

提交评论