版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章绪论1.1研究目的及意义随着我国社会经济的迅速发展与城镇化加剧,城市化使越来越多的年轻人从农村进入城市,农村人口减少,导致农田荒废,粮食减产REF_Ref17568\r\h[1]。农业科技创新和智能农业机器的应用,提高机械化水平是缓解或解决的农业危机的必然选择。水稻直播栽培相比传统移栽插秧技术,具有省工省力、降低生产成本、缩短生育期、提高产量、有利于规模化生产等优点,但现有水稻直播机一般很笨重,不能满足重量轻、自动化程度高、可实现无人自动作业的水稻直播的要求REF_Ref25344\r\h[2]。机器人用于农业,是现代农业的发展趋势。有一类机器人,称为自平衡机器人,是机器人家族中的重要一族REF_Ref25566\r\h[3]。进入21世纪,在机器人学和机器人,自平衡机器人由于其固有的不稳定动力学特性,引发了人们极大的研究兴趣,各种先进的自平衡机器人系统相继诞生。其机体置于底盘之上,可装载各种电子设备,如机载工控机、数字信号处理器、惯性测量单元、导航定位系统、电子眼等。底盘桥体主要用于安装或连接机体与轮系,固定驱动系统,包括电机及其伺服机构,轮系由左轮和右轮通过轮轴或传动机构组成。两轮机器人的重心一般位于轮系轴线之上,因而形成了内在的固有的不稳定动力学特性REF_Ref25667\r\h[4]。水稻直播是在沼泽湿滑状态下进行,现有自平衡机器人不能适应稻田环境REF_Ref25726\r\h[5]。很多智能化的系统都能够运用到我国人民的日常生活中,农业的智能化就是一个新兴的智能产,并且其最主要也是最关键的环节就是有效的提开我压农作物的培养质量以及培养效率,在此基础上能够有效地利用农作物的生长时期,并对温室环境进行充分的检测以及合理的调节REF_Ref25804\r\h[6]。在我国当前市面上出现了很多能够有效帮助农作物提升培育效率的智能化机器,但是大多机器都没有将自动的处理、对周围环境的检测以及远程操控等主要因素有效地结合起来,只能够进行较为简单的系统功能REF_Ref25902\r\h[7]。到21世纪,万能机器人会出现在农田里。它不但能播种、除草、中耕,而且能施肥和收获。耕种深度为20厘米,那时地面保持平坦,耕种只须5厘米深就够了REF_Ref25980\r\h[8]。这样,机器人耕地能耗可节省88%左右。用机器人播种,可以在上一茬未收获之前就使下一茬下种和发芽。万能机器人还可以采用整体收割法,沿耕作地来回走一次就可把庄稼收割完,装到集装箱内运走。脱粒可以借助超声波来完成,也可以用微波进行干燥。万能机器人能根据土壤的温度、气温、风力来完成种地、锄草、浇灌、施肥、收割、脱粒、吹干、运走等工作。几乎所有的农业工作都能由万能机器人自动进行REF_Ref26124\r\h[9]。它不但能减轻人的劳动强度,而且能提高产量,便于收获。在劳动力短缺、产业升级需求增长、前沿技术加快发展等多重因素影响下,农业机器人正加速拓展应用范围。如今,农业机器人不仅越发多元化、智能化,而且还推动了“无人农场”等新兴概念的实现,未来市场前景十分广阔REF_Ref26222\r\h[10]。1.2国内外研究现状国际上对基于STM32智能耕种机器人系统设计的研究已经颇有成效REF_Ref26362\r\h[11]。2020,Suleiman中评估了尼日利亚佐伊亚州佐邦国家农业推广工作人员可持续土地利用和农业生产中知识管理(km)有效性的挑战。使用结构良好的问卷制定了188的样品大小并用于研究REF_Ref26529\r\h[12]。2015年,AnwarIbrahim;RizwanMuhammad;MohammedAlshitawi;AbdulazizAlharbi;AbdulrahmanAlmarshoud在《IntelligentGreenHouseApplicationBasedRemoteMonitoringforPrecisionAgriculturalStrategies:ASurvey》中已经部署了智能温室(GH)应用程序,以改善对农业增长的管理,从而在各种环境下监控精确农业。2015年,Kennedy,HannahJoy在《WeedRemovalEfficacyandLaborImplicationsofanIntelligentCultivatorinVegetableCropsMarkedwithMachineVisionDetectableSignals》中研究利用机器视觉识别杂草,有选择地变量施用化学制剂或直接实现机械除草就显得尤为重要。要实现变量喷洒或直接实现机械除草REF_Ref26598\r\h[13]。目前,我国在基于STM32智能耕种机器人系统设计的研究已经处于世界领先地位。2021年,在《小型智能化家用耕种机的开发应用研究》中以家用小型智能化耕种机的应用设计为主题,根据目前市场上的智能扫地机器人、智能除草机以及专业的农业机器人的基础理论和实际应用展开探讨研究,开发新型的针对国内的农家乐、庭院土地、中小型土地等的家用智能化耕种机,即在传统耕种机的基础上增加智能化的功能化设计,将需要被翻垦的土地采用智能化耕种,减少劳动力,节约时间,解决农村劳动力缺失造成的土地荒芜问题,设计出一款电动的、能够自动在划定区域耕地的农用智能产品REF_Ref26722\r\h[14]。2019年,绿洲在《智能农机:农业耕种好轻松》中总结智能农机的应用经验,分享智能农机世界研究成果,比较中国与世界先进国家在人工智能研究领域的差距,2019年7月15日,江西省农业科学院在南昌县嘉莱特花园酒店召开了'智能农机助力乡村振兴高层论坛,除了江西省内业界专家、政府相关部门人员和智能农机企业代表齐聚会场外,还有中国工程院院士罗锡文教授,中国农业大学、中国农业机械化科学研究院、华中农业大学等智能农机领域的研究专家也受邀给会议代表做了精彩演讲REF_Ref26790\r\h[15]。2017年,王磊在《农业耕种智能嵌入式远程监控系统设计与实现》中主要体现了大型的机械化逐渐取代了以往的手工劳作,大大的减轻了农民的负担,提高了农民的收入REF_Ref26862\r\h[16]。本文正是基于这个背景为前提下,提出了对农机智能监测系统的设计。通过该系统雇主可以在远程计算机上观察农机的耕种作业情况,查看农机最后作业的面积,农机耕种的深松深度是否符合要求,能够为雇主节省成本,提高农业生产监管效率REF_Ref19034\r\h[17]。第2章系统总体结构2.1设计方案本设计是基于STM32智能耕种机器人系统设计,该套系统使用蓝牙通信技术,手机端作为上位机,可以实时接收并显示下位机发送来的信息,还可以发送指令对周围环境做出举措。实现的功能如下:蓝牙通信,手机作为上位机,上位机可以接收,并显示下位机发来的信息;可以发送命令,对周围环境进行调整控制耕种机器人,并可以控制耕种机器人移动和移动的速度;发送命令,控制耕种机器人开始/停止耕种REF_Ref27260\r\h[19];耕种机器人的下位机可以接收上位机的信息,控制耕种机器人移动;系统可实时监测耕种机器人的速度,通过土壤传感器,检查土壤肥力;通过温湿度模块监测温湿度并做出反应,通过红外传感器监测光照强度并做出调整;通过超声波传感器检测和障碍物的距离。环境参数可以显示在OLED屏上,可以发送给上位机;还可以接收上位机命令,执行开始/停止耕种REF_Ref27486\r\h[20]。图2.1系统结构框图2.2单片机选型方案一采用的主控制器STC89C52,STC89S52拥有功耗低、性能强的特点,并且其本身的储存能力非常的出色。虽然这款单片机拥有很多的优点,但是52单片机芯片集程度不高,性能无法跟32单片机相比,它的储存器位数为8位,不能满足这次设计对储存器的要求,所以此方案不进行选择。方案二STM32单片机,作为一款超低功耗的32位器件,能够将模电数电集成到一个芯片中,从而有效地解决多种问题,具有极高的实用性。STM32F103C8T6是一款广泛应用于32位系统、符合设计所需要的要求。其高可靠性、低功耗、易于扩展、尺寸小、性价比高、线路简单等特点,因此,方案二被选为我们的首选。2.3显示模块选型方案一采用LCD1602的最大优点在于其价格亲民、性能稳定,且可轻松连接至单片机。LCD1602显示模块主要是用于小尺寸的屏幕显示和仪器表盘上,因为LCD1602显示的数字内容受限,本设计所需要显示的内容较多,因此无法达到要求,所以此方案不进行选择。方案二采用OLED液晶显示的选择通常是与单片机共同出现的,因为其能够进行更多数据与文字的显示,同时此显示屏的显示位数在同类产品中相对较多,而且拥有更简单的编写程序,这使得它成为一款非常优秀的显示设备。在经济方面,该方案的价格相对较为亲民,尤其是OLED液晶显示屏,使其成为本次设计的理想选择,故选择方案二。2.4温湿度传感器选型方案一采用数字温度传感器DS18B20作为温度传感器。DS18B20是一种采用单总线技术,且只能检测温度。本设计需要检测温湿度。所以此方案不进行选择。方案二是选择型号为DHT11温湿度传感器。DHT11温湿度传感器,能够同时监测温度和湿度,可以适用于各种空间的温度和湿度的检测。在组装方面,容易上手只需按照说明书进行组装,输出信号稳定,能够长期工作,故选择方案二。2.5无线数据传输选型方案一是选用NRF24L01模块传输,但在传输过程中需要用至少2个电路板才能进行通讯。方案二是采用BH-HC05蓝牙模块,这个模块数据显示可以通过蓝牙方式把数据传输到上位机,传输距离也是研究所需要的,大大的简化了观察数据的步骤。故选择方案二。2.6红外传感器选型方案一是选用HC-SR501热敏传感器,这个传感器极易受射频辐射的干扰,灵敏度低,有时还会失灵,不易操作。方案二是选用IR红外传感器,这个传感器以发射和接收红外线来检测光照强度,具有快速响应不受干扰的特点,其优点是成本低廉,安全,易操作使用寿命长,故选择方案二。2.7土壤传感器选型方案一是选用YL-69土壤湿度传感器,敏感度低,价格较高,只能检测土壤的湿度值,不能提供设计所需数值,不易操作,所以不做选择。方案二是选用NH52DLJ土壤氮磷钾传感器,这个传感器可以检测设计需要的氮磷钾的含量,其优点在于门槛低,测量快速,无需试剂,不限检测次数。电极采用特殊处理的合金材料,可承受较强的外力冲击,不易损坏。完全密封,响应速度快,互换性好。可以更好的帮助我们了解土壤特性。故选择方案二。2.8测距模块选型方案一是选用激光测距,激光测距的直线特性非常好,但是极易受环境影响,干扰很大,应用条件苛刻。方案二是选用HC-SR04超声波传感器,超声波传感器的频率高、波长短、方向性好、可以线性传播、对液体或者固体有不错的穿透效果,结构稳定,成本低廉,安全,易操作使用寿命长,故选择方案二。第3章系统的硬件部分设计3.1系统总体设计本设计是一种基于STM32的智能耕种机器人系统设计,本设计系统使用BH-HC05蓝牙通信技术,手机端作为上位机,可以实时接收并显示下位机发送来的信息,还可以发送指令,并控制耕种机器人移动、开始/停止耕种;下位机能够接受上位机发来的指令,控制耕种机器人移动;还可实现系统实时监测耕种机器人的速度,环境的各个参数并显示,还可以发送至上位机。下位机接收上位机指令,开始/停止耕种。在软件平台实现了远程控制自动播种、耕地功能。如图3.1所示系统原理图:图3.1系统原理图3.2系统的主要功能模块设计3.2.1STM单片机介绍本设计中的控制核心选用的是意法半导体公司推出的STM32系列32位的单片机,目前STM32以其强大的功能,超高的性价比几乎完全替代了MCS-51系列的8位单片机。STM32系列作为专门为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARMCortex-M3内核。具体到本文所选用的STM32F103C8T6。STM32F103C8T6共有44个引脚。它的所有I/O口都可以由软件编程设置为8种工作模式,有模拟输入、上拉输入、浮空输入、强推挽/强上拉、仅为输入/高阻,开漏输出等。同时,每一个I/O口的驱动电流都可以达到20mA,但是也有一个限制,就是整个单片机的最大承受电流不可以超过120mA。如图3.2所示为STM32F103C8T6的实物图:图3.2STM32F103C8T6实物图3.2.2单片机控制电路设计STM32F103C8T6单片机为系统运行提供了重要支持,它能够实现低功耗,而且运转速率飞快,高性能、低成本,有多个扩展口,封装体积小等优点。STM32F103C8T6整个系统结构可以分为由ARM公司设计的Cortex-M3内核和ST公司在此基础上优化的总线矩阵、DMA、AHB、APB1以及APB2上挂载的外设等两个部分。STM32F103C8T6的GPIO有8种模式,其中包含上拉、下拉输入模式,所以外接按钮时可不设上下拉电阻。根据原理图显示。STM32最大3.6V的工作电压,使用了LDO(低压差线性稳压器)将输入电压VIN降到3.3v给微控制器供电。其内部安装有时钟复位电路和供电电源,时钟电路的作用是计时和统计周围环境时间变化,复位电路是为了在特殊情况下对电路进行保护,恢复到原始工作状态的保险,供电电源就是整个单片机的动力系统。单片机内部还装有自动断电开关,当电路损坏时,复位电路没有投入工作就会将整个电路的电源切断防止发生危险在单片机系统内部需要复位电路、晶振电路以及电源电路。基于STM32的智能耕种机器人系统设计中最小系统电路图如3.3所示。图3.3STM32F103C8T6最小系统电路3.2.3显示模块电路设计基于STM32的智能耕种机器人系统设计中显示模块使用OLED屏,即有机发光二极管显示。因其特性为具备轻薄、省电等特性,因此从2003年开始,这种显示设备在MP3播放器上得到了广泛应用,而对于同属数码类产品的DC与手机,此前只是在一些展会上展示过采用OLED屏幕的工程样品。自2007年后,寿命得到很大提高,具备了许多LCD不可比拟的优势。三种颜色任你选:蓝色、白色、蓝黄双色。由于OLED和LCD屏幕显示不一样,为此刚上电的瞬间,屏幕没有反映,当执行到该模块的代码时,SDA接口将数据传入,屏幕才会进行显示。OLED屏电路设计中的通过查找数据手册可知该模块1脚接地(GND),2脚接电源(VCC),该模块采用SPI模式与单片机进行通讯。在SPI模式下,SDA和RST与单片机进行接口。第3脚接单片机PC13,第4脚接PC15端口。完成与数据的传输功能。基于STM32的智能耕种机器人系统设计中OLED电路设计如图3.4所示。图3.4OLED显示屏原理图3.2.4温湿度传感器模块电路设计基于STM32的智能耕种机器人系统设计中对于温湿度的采集将使用DHT11传感器。DHT11是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。温湿度传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。DTT11温湿度传感器电路设计中的通信引脚DATA将会与单片机控制端的PA7引脚相连接,温湿度传感器的正负极与电源正负极相连接即可,完成与数据的传输功能。基于STM32的智能耕种机器人系统设计中DTH11温湿度传感器电路设计如图3.5所示。图3.5DHT11温湿度传感器原理图
3.2.5蜂鸣器模块电路设计基于STM32的智能耕种机器人系统设计中蜂鸣器是设计是报警模块。蜂鸣器是一种将电信号转换为声音信号的器件,常用来产生设备的按键音、报警音等提示信号蜂鸣器按驱动方式可分为有源和无源蜂鸣器。有源蜂鸣器其内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定。无源蜂鸣器其内部不带振荡源,需要控制器提供振荡脉冲才可发声,调整提供振荡脉冲的频率,可发出不同频率的声音蜂鸣器有正负极,顶部印有+号的为正极,若蜂鸣器引脚没剪,则长的为正极,单片机引脚不能直接连接蜂鸣器,加NPN型三极管进行驱动,因为单片机的引脚驱动能力有限,蜂鸣器的功率比较大,所以需要通过三极管来驱动,R1为限流电阻,单片机引脚如果给高电平,则三极管导通,VCC便给蜂鸣器供电,如果给低电平,则三极管断开,PNP型三极管同理,只不过是单片机引脚输出低电平导通,输出高电平断开。此设计采用的是有源蜂鸣器。在蜂鸣器模块中需要10K电阻去驱动。才能使其正常工作。基于STM32的智能耕种机器人系统设计中蜂鸣器报警模块电路设计如图3.6所示。图3.6蜂鸣器原理图3.2.6超声波测距模块电路设计本文基于STM32的智能耕种机器人系统设计中测量和障碍物之间的距离是通过超声波传感器HC-SR04完成的。HC-SR04是根据超声波的一些特性制造出来的,用于完成对超声波的发射和接收,内部的换能晶片受到电压的激励而发生振动产生超声波,超声波的频率高、波长短、方向性好、可以线性传播、对液体或者固体有不错的穿透效果,比如一些不透明的物体,超声波可以穿透几十米,而且它在遇到杂质等等物体时会发生反射现象,从而产生回波。想要用超声波完成检测工作,必须要有一个既可以发出超声波又可以接收超声波的装置,能实现这样功能的装置我们称为超声波传感器,也叫作超声波换能器或者超声探头。HC-SR04超声波传感器内部的主要部件是压电晶片,它在受到电压的刺激时就可以发射超声波,然后由接收端进行接收。小功率超声波传感器大多用来进行检测,例如一些导盲、坐姿矫正的产品,应用的就是小功率传感器,大功率的超声波传感器在生活中并不常见。超声波传感器有许多不同的结构,可分直探头、斜探头、表面波探头、兰姆波探头、双探头(一个用来发射、一个用来接收)等。超声波传感器主要由发送部分、接收部分、控制部分和电源部分构成。其中,发送部分由发送器和换能器构成,换能器可以将压电晶片受到电压激励而进行振动时产生的能量转化为超声波,发送器将产生的超声波发射出去;接收部分由换能器和放大电路组成,换能器接收到反射回来的超声波,由于接收超声波时会产生机械振动,换能器可以将机械能转换成电能,再由放大电路对产生的电信号进行放大;控制部分就是对整个工作系统的控制,首先控制发送器部分发射超声波,然后对接收器部分进行控制,判断接收到的是否是由自己发射出去的超声波,最后识别出接收到的超声波的大小;电源部分就是整个系统的供电装置。这样,在电源作用下、在控制部分控制下,发送器与接收器两者协同合作,就可以完成传感器所需的功能。超声波传感器HC-SR04的通信引脚,分别与单片的第3信号线是连接单片机的PB0引脚,第4信号线是连接单片机的PB1引脚,HC-SR04超声波传感器的正负极与电源正负极相连接即可。当整个模块通电后,会通过超声波实时进行距离测算,当距离过近时,会引起蜂鸣器报警,提醒工作人员停止耕种。基于STM32的智能耕种机器人系统设计中HC-SR04超声波传感器电路设计如图3.7所示。图3.7HC-SR04超声波测距原理图3.2.7土壤传感器模块电路设计本文基于STM32的智能耕种机器人系统设计中测量土壤成分使用的是NH52DLJ土壤氮磷钾传感器。它是一种用于测量土壤中氮、磷、钾、肥力、的装置。它通常由一个传感器和一个数据采集系统组成。NH52DLJ土壤氮磷钾传感器是一种用于测量土壤中氮、磷、钾等离子浓度的装置。其原理是基于离子选择电极和电化学方法。传感器的主体是离子选择电极,它能够选择性地感受到土壤中的氮、磷、钾等离子。当离子选择电极与土壤中的目标离子接触时,电极表面的电位会发生变化,这种变化被转化为电信号,进而测出离子的浓度。传感器的工作原理主要包括感受元件、转换元件和信号处理元件三个部分。其中感受元件主要是离子选择电极,转换元件是将离子浓度转换为电信号,信号处理元件则对电信号进行放大、滤波和转换等处理,最终输出测量结果。传感器的优点是测量快速、准确、无污染,能够实现在线监测,为农业生产提供了强有力的技术支持。如果在较坚硬的地表测量时,应先钻孔(孔径应小于探针直径),再插入土壤中并将土压实然后测量;传感器应防止剧烈振动和冲击,更不能用硬物敲击。由于传感器为黑色封装,在强烈阳光的照射下会使传感器使急剧升温(可达50℃以上),为了防止过高温度对传感器的温度测量产生影响,请在田间或野外使用时注意遮阳与防护。NH52DLJ土壤氮磷钾传感器模块电路设计中的通信引脚分别连接单片机。第1信号线是连接单片机的PA9引脚,第2信号线是连接单片机的PA8引脚,土壤传感器的正负极与电源正负极相连接即可。基于STM32的智能耕种机器人系统设计中NH52DLJ土壤氮磷钾传感器电路设计如图3.8所示。图3.8NH52DLJ土壤氮磷钾传感器原理图3.2.8蓝牙通信模块电路设计基于STM32的智能耕种机器人系统设计中通讯采用的是BH-HC05蓝牙模块。它可以通过蓝牙通信模块将各个传感器数据传输至上位机。BH-HC05蓝牙通信模块与单片机的连接方式是串口通信协议。每传输模块接收数据后在发出去之前会对数据进行解压处理,发送成功的同时数据解压也完成,发送过程还要注意进行加密处理,预防重要信息的泄露。这种串口通信协议内部的电路并没有很复杂,可以绑定一对一的传输路线,传输过程不耗费任何流量和资金,大大降低了数据传输成本。BH-HC05蓝牙通信电路设计中的通信引脚TXD和RXD将会与单片机控制端的PB11和PB10引脚相连接,完成与手机的通信功能。基于STM32的智能耕种机器人系统设计中BH-HC05蓝牙通信电路设计如图3.9所示。图3.9BH-HC05蓝牙通信原理图3.2.9红外传感器模块电路设计基于STM32的智能耕种机器人系统设计中采集光照使用的是IR红外传感器。红外传感器由光敏电阻或\t"/item/%E5%85%89%E6%95%8F%E7%94%B5%E9%98%BB/_blank"光导管构成,常用的制作材料为镉,另外还有硒、化铝、和铋等材料。这些制作材料具有在特定波长的光照射下,其阻值迅速减小的特性。这是由于光照产生的流子都参与导电,在外加电场的作用下作动,电子奔向电源的正极,空穴奔向电源的负极,从而使光敏电阻器的阻值迅速下降。IR红外传感器是用硫化镉或硒化镉等半导体材料制成的特殊,其工作原理是基于。光照愈强,阻值就愈低,随着光照强度的升高,电阻值迅速降低,亮电阻值可小至1KΩ以下。光敏电阻对光线十分敏感,其在无光照时,呈\t"/item/%E5%85%89%E6%95%8F%E7%94%B5%E9%98%BB/_blank"高阻状态,暗电阻一般可达1.5MΩ。光敏电阻的特殊性能,随着科技的发展将得到极其广泛应用。IR红外传感器是利用半导体的应制成的一种电阻值随光的强弱而改变的阻器,又称为;入射光强,电阻减小,入射光弱,电阻增大。还有另一种入射光弱,电阻减小,入射光强,电阻增大。IR红外传感器一般用于光的测量、光的控制和(将光的变化转换为电的变化)。常用的光敏电阻器硫化镉光敏电阻器,它是由制成的。光敏电阻器对光的(即光谱特性)与人眼对(0.4~0.76)μm的响应很接近,只要人眼可感受的光,都会引起它的阻值变化。设计光控电路时,都用白炽灯泡(珠)光线或自然光线作控制光源,使设计大为简化。通常,IR红外传感器都制成薄片结构,以便吸收更多的光能。当它受到光的照射时,半导体片(光敏层)内就激发出电子—空穴对,参与导电,使电路中电流增强。红外传感器用于检测光照强度,帮助决策是否适宜进行耕种操作。IR红外传感器模块电路设计中的通信引脚连接单片机。第3信号线是连接单片机的PA2引脚。红外传感器的正负极与电源正负极相连接即可。基于STM32的智耕种机器人系统设计中IR红外传感器电路设计如图3.10所示。图3.10IR红外传感器原理图3.2.10驱动电机模块电路设计以下是基于STM32的智能耕种机器人系统设计中模拟耕地和播种的驱动电机部分。选择直流电机作为耕地播种的驱动电机,并配备驱动电路。使用STM32微控制器的PWM输出功能,控制电机的转速和方向。连接STM32的PWM输出引脚和电机驱动电路,以实现对耕地驱动电机的控制。基于STM32的智耕种机器人系统设计中电机模块电路设计如图3.11所示。图3.11电机驱动耕种原理图3.2.11继电器模块电路设计以下是基于STM32的智能耕种机器人系统设计中浇水的继电器部分。根据采集的土壤湿度值决定是否对植物进行自动浇水。这部分将通过继电器进行实现,具体的电路如下图所示,连接电源模块和继电器输出引脚到浇水装置的电源和控制线路,通电后对开关进行吸合,最终控制水泵进行浇水。使其能够控制浇水装置的启停。基于STM32的智耕种机器人系统设计中继电器电路设计如图3.12所示。图3.12继电器原理图第4章系统的软件设计4.1开发软件介绍智能耕种机器人系统设计核心采用STM32单片机控制,通过C语言控制硬件,在软件硬件的配合下完成系统的功能需求。系统具有蓝牙模块子程序,串口子程序,定时器程序等,采取模块化编程,方便移植,修改,完善。系统采用STM32单片机做为主控芯片,程序的编程通过KEIL软件开发,此软件非常简单,界面也简单,可以在线编程下载,效率高。本次设计采用标注库开发,这样节约了开发实践,通过C语言编程,设计采用的C语言结构简单,移植性高,语法简单深受人们喜爱。设计采用STLINK进行程序的下载,KEIL5MDK界面如4.1所示。图4.1编程软件介绍4.2软件主流程图此设计具备多项耕种功能。核心控制芯片为STM32单片机,配备了多个传感器模块,以实现对农田环境和机器人操作的监测和控制。首先,通过NH52DLJ土壤氮磷钾传感器实时检测土壤的各个数值,确保农田的适宜耕种,其次,IR红外传感器用于检测光照强度,帮助决策是否适宜进行耕种操作。另外,DHT11传感器用于检测温湿度值,以提供农田的环境数据。此外,HC-SR04超声波测距模块用于测量障碍物的距离,实现机器人的避障功能,确保耕种操作的安全性。检测到的数据可以实时显示在OLED屏幕上,方便用户了解农田的状态和环境。通过BH-HC05蓝牙模块,下位机能够实时接收并显示上位机发送来的信息,还可以接收上位机发送的指令,控制耕种机器人的移动、开始/停止耕地、开始/停止播种等操作。同时,下位机可以实时监测机器人的速度和显示,并将相关信息发送至上位机进行远程监控。通过上位机和下位机之间的通信,实现了远程控制和监测功能,用户可以通过软件平台远程控制自动播种和耕地操作,提高了农田管理的效率和便利性。综上所述,基于STM32的智能耕种机器人设计具备了土壤参数监测、光照检测、温湿度检测、避障功能、实时数据显示和远程控制等多项耕种功能,可以有效提升农田管理的智能化水平,减轻农民的劳动负担,并提高农田的产量和质量。基于STM32的智耕种机器人系统设计中整体流程图如图4.2所示。图4.2整体流程图4.3土壤传感器模块软件设计NH52DLJ土壤氮磷钾传感器在耕种之前会对土壤进行是否符合耕种条件的测试。当模块通电后,会通过土壤模块进行检测,当土壤参数不在设定范围内,则进行蜂鸣器报警,可以显示土壤氮、磷、钾、PH值、肥力各个参数显示,此数值实时传达上位机。并且工作人员可以通过手机APP对耕种机器人进行控制。如果含量不达标则不进行耕种。如果各个数值在可控范围内则开始进行耕种机器人的运作。NH52DLJ土壤氮磷钾传感器软件设计如图4.3所示。图4.3NH52DLJ土壤氮磷钾模块流程图4.4温湿度模块软件设计温湿度传感器DHT11实时监测温湿度,当温度值高于设置的阈值范围,则开启1号步进电机打开遮阳系统,遮盖阳光;温度低于设置的阈值范围则关闭1号步进电机关闭遮阳系统,并点亮前3个LED灯模拟光照来达到设定预值,温度不在阈值范围可以进行蜂鸣器报警。各个数值可以显示在上位机和OLED屏上。当湿度高于设置的阈值则开启2号步进电机打开风扇来模拟通风、或点亮LED灯模拟光照。当湿度低于设置的阈值则开启继电器1号来进行浇水。此数值实时传达上位机,OLED屏也可以显示。工作人员可以通过手机APP对耕种机器人进行控制。DHT11温湿度传感器软件设计如图4.4所示。图4.4DHT11温湿度模块流程图4.5超声波模块软件设计采用HC-SR04超声波模块来进行耕种机器人在耕种过程中遇到障碍物应该进行提醒。当整个模块通电后,会通过超声波实时进行距离测算,可以在上位机中显示耕种的速度,当与障碍物距离不在设定的阈值范围小于15cm时,会引起蜂鸣器报警,提醒工作人员停止耕种。工作人员可以远程控制耕种机器人前进、后退、左转、右转来避开障碍物继续进行耕种。HC-SR04超声波模块软件设计如图4.5所示。图4.5HC-SR04超声波模块流程图4.6红外模块软件设计采用IR红外模块来检测光照强度。当整个模块通电后,会实时对光照强度进行监测,当光照值高于设置的阈值范围,则开启2号步进电机打开遮阳系统,遮盖阳光并开起继电器进行浇水来缓解光照过强而进行的水分蒸发。光照值低于设置的阈值范围则关闭2号电机关闭遮阳系统并点亮后3个LED灯模拟光照来达到设定预值,各个数值可以显示在上位机和OLED屏上。超过预设值时,都会进行蜂鸣器报警,并实时传达上位机APP由工作人员对耕种机器人进行控制。IR红外模块软件设计如图4.6所示。图4.6IR红外传感器模块流程图4.7显示模块软件设计OLED显示屏不同于LCD,OLED上电是没有反应的,需要程序驱动才会有显示液。想要OLED显示数字等先要对数字进行取模处理。在进行编写程序。显示之前进行信号的忙检查,一开始的模式设置成输入模式,设置RS,RW,EN的值,等待一个延时,让EN为1。进入OLED的初始化,先等待一个延时,写入指令,固定哪一个地方显示什么,模式设置,关闭,清屏,光标移动和开的设置等。初始化完成之后进行写数据,先要检查一下是否忙碌,RS、RW、EN为0,清屏指令,就可以进行指令的写入。写入的数据可以存在DATA里面。重复的写入想要显示的数据,液晶显示屏上就可以显示数据了。OLED显示模块软件设计如图4.7所示。图4.7OLED显示模块流程图4.8继电器模块软件设计在STM32的软件程序中,编写代码来控制继电器模块的GPIO输出引脚状态,以控制继电器的通断状态。根据系统逻辑和传感器反馈,确定何时需要打开或关闭继电器,从而实现对浇水装置的控制。需要注意的是:在选择继电器模块时,需要根据系统的电源和控制要求选择合适的继电器类型和规格。在连接继电器模块和STM32微控制器时,应注意电气连接的正确性和稳定性,确保信号和电源传输的可靠性。在系统软件中,编写相应的控制代码,实现对继电器的精确控制和保护。以上是基于STM32的智能耕种机器人系统设计中模拟浇水的继电器部分的简要描述。继电器模块软件设计如图4.8所示。图4.8继电器模块流程图4.9电机模块软件设计在系统软件中,编写相应的代码以接收用户输入或传感器反馈,并根据需求控制耕地驱动电机的工作,例如启动、停止、转速调节等。播种驱动电机设计:选择合适的步进电机或直流电机作为播种驱动电机,并配备驱动电路。使用STM32微控制器的GPIO输出功能,控制电机的运动和停止。连接STM32的GPIO输出引脚和电机驱动电路,以实现对播种驱动电机的控制。在系统软件中,编写相应的代码以接收用户输入或传感器反馈,并根据需求控制播种驱动电机的工作,例如启动、停止、转动角度控制等。注意事项:在设计驱动电机部分时,需要根据具体的电机参数和工作要求选择合适的电机类型、驱动电路和控制方式。在连接电机和STM32微控制器时,应注意电气连接的正确性和稳定性,确保信号和电源传输的可靠性。在系统软件中,编写相应的驱动程序和控制算法,以实现对驱动电机的精确控制和保护。以上是基于STM32的智能耕种机器人系统设计中模拟耕地和播种的驱动电机部分的简要描述。电机模块软件设计如图4.9所示。图4.9电机模块流程图第5章系统测试5.1系统软件调试软件程序是驱动系统运行的关键力量,软件程序设计完成以后,为了防止系统运行出现问题,需要进行软件调试。软件调试按照流程依次进行调试,首先对主程序进行检查,确保主程序无问题后逐一排查子程序。基于STM32的智能耕种机器人系统设计中选用的编程软件和调试软件是KEIL,一般在编写过程中都会加入标注,程序标注也有助于软件调试和以后的检查,依次检查能够快速发现问题,方便我们检查快速修复程序。如果出现程序运行卡顿或者是短路情况,需要进行源代码编写纠正和检查程序算法是否错误。5.2系统硬件调试单片机硬件调试主要是验证硬件设计的正确性首先,通过对硬件原理图和PCB板的验证,确认单片机的硬件设计是否符合要求,电路连通是否正确等。其次检查硬件接口是否正常,对单片机的各种接口进行检查和测试,以确定它们是否正常工作。如果有问题,则应及时调整。然后发现并解决硬件设计问题,通过对硬件进行测试,检测到的问题并加以解决,以确保硬件能够正常运行最后,应该在干净通风的环境下确保单片机的可靠性,对单片机进行长时间测试,以确保它的稳定性和可靠性。总之,单片机硬件调试的目的是为了确保单片机的正常运行,使设计结果符合预期。5.3示例功能测试通过手机APP可以对耕种小车进行控制,可以前进后退,左转右转,变换速度,是否耕种。下位机会进行实时环境监测,实时监测温湿度,当温湿度没有在设定范围时,进行蜂鸣器报警做出相应措施,并通过BH-HC05蓝牙通信实时传达上位机,并作人员可以通过手机APP对耕种机器人进行控制;当HC-SR04超声波模块通电后,会通过超声波模块实时进行距离测算,当距离过近时,会引起蜂鸣器报警,提醒工作人员停止耕种。当IR红外线模块通电后,会进行实时的红外线测量,光照强度不在设定的范围内时,会进行蜂鸣器报警并采取相应的措施,并实时传达上位机APP由工作人员对工种机器人进行耕种或停止控制。具体操作如下图所示。图5.1整体实物图5.2对小车进行控制测试图5.3下位机环境实时监测测试总结本文主要研究的对象是基于STM32智能耕种机器人系统设计,此系统使用BH-HC05蓝牙通信技术,手机端作为上位机,可以实时接收并显示下位机发送来的信息,还可以发送指令,并发送控制耕种机器人移动、开始/停止耕地、开始/停止播种;下位机能够接受上位机发来的指令,控制耕种机器人移动;还可实现系统实时监测耕种机器人的速度,显示,并发送至上位机。IR红外传感器可以检测光照强度,HC-SR04超声波传感器采集耕种机器人与障碍物的距离并报警;DHT11温湿度传感器采集温度湿度信息,进而对播种环境进行调节,使用NH52DLJ土壤氮磷钾传感器检测土壤成分,查看土壤是否适宜耕种;下位机接收上位机指令,开始/停止耕地,或开始/停止播种。在keil5软件平台实现了远程控制自动播种、耕地功能。基于STM32智能耕种机器人系统设计在传统的耕种机器人上进行了功能上的改革。但是仍有一些不足之处。智能耕种机器人的稳定性不高,现阶段只能应用于较平缓的路面,对环境要求较高,仅限于小面积使用。这些功能都还待完善。参考文献“耕种管收”智慧农业新神器[J].叶青.农业知识.2020,第19期农产品主产区农户耕种意愿及补偿标准测算研究——以广西为例.缪文慧.2016现代农业智能装备标准引领农机智能制造工业转型[C].吕程序,张俊宁,曾贞.2017第十九届中国科协年会.2017基于三菱PLC的智能化家用酿酒机[J].陈廷炫,刘伟峰,王涛.电子制作.2021,第012期智能农机·无人农业——2020年智能农机装备田间日活动在河北赵县成功举办[J]河北农机.2020,第006期集中展现智能农机装备和智慧农业技术——2020年智能农机装备田间日活动在河北赵县举办[J].朱礼好,党东民,朴松花.农机质量与监督.2020,第007期智能化小型家用仪器用于中学化学定量型实验的研究[A].魏蝶.2020农业耕种智能嵌入式远程监控系统设计与实现[A].王磊.2017农业耕种智能化神器亮相广西科技活动周[J].农业科技与信息.2017,第011期农机技术推广工作面临的问题及措施分析[J].梁振刚.农民致富之友.2017,第023期基于STM32温湿度采集的播种机器人控制系统设计[J].吉林化工学院学报,2020,37(11):9-16.王影,徐姣姣,刘麒,李宝华,苟垚,张野.基于单片机的温湿度控制系统设计[J].机械与电子,2021,39(06):48-51.任卫红,史君诚黄建辉.基于单片机的中药柜温湿度控制系统设计[J].电子制作,2021(15):87-89.叶柠,孙宇舸,张宁.基于单片机的温湿度检测装置的设计与实现[J].科技创新与应用,2021,11(30):72-75.张安东.基于STM32单片机的超声波测距系统设计与实现[J].铜陵职业技术学院学报,2020,19(03):51-53+58.冯箫,周娜.基于单片机的大棚温湿度控制系统设计[J].电脑知识与技术,2020,16(23):193-194.Landwirtschaft4.0imMaisanbau:WennCloudundBigDataSmartFarmingunterstützen[J].MartinKunisch,FlorianKloepferMais.2017,04.AgriTrust—ATrustManagementApproachforSmartAgricultureinCloud-basedInternetofAgricultureThings[O].KamranAhmadAwan,IkramUdDin,AhmadAlmogren.ZhiwuHan,JiaFu,YuqiangFang,JunqiuZhang,ShichaoNiu,LuquanRen.Anti-adhesivepropertyofmaizeleafsurfacerelatedwithtemperatureandhumidity[J].JournalofBionicEngineering,2017,14(3)ShuangWang,YuanTao,YaliZhou,JuanNiu,YingjieShu,XingwangYu,SushuangLiu,MingChen,WeihongGu,HaoMa.TranslationallycontrolledtumorproteinGmTCTPinteractswithGmCDPKSK5inresponsetohightemperatureandhumiditystressduringsoybeanseeddevelopment[J].PlantGrowthRegulation,2017附录附录A原理图图A.1原理图附录B源代码#include"delay.h"#include"delay.h"#include"sys.h"#include"oled.h"#include"bmp.h"#include"key.h"#include"usart.h"#include"usart2.h"#include"usart3.h"#include"led.h"#include"adc.h"#include"DHT11.h"#include"UltrasonicCtrol.h"#include"timer.h"#include"pwm.h"externinttimeN;inttimeNFlag=0;intdangwei=0;u8temperature; u8humidity;u8shidu[15];u8tem[15];u8timeNs[15];u8temperaturedyu=30; u8temperaturehyu=32; u8humidityyu=60;u8shiduyu[15];u8temgyu[15];u8temdyu[15];intcsbNum=0;u8csbNums[15];u16yan;u8yans[15];unsignedintyanyu=300;u8tuyus[15];unsignedinttuyu=150;u16tu;u8tus[15];u8tuyus[15];intfragment=0;u8send[50];u16jl;u16jlyu=50;u8jls[8];u8jlyus[8];intbeepnum=0;intbiaozhi=0;intbiaozhi1=0;intbiaozhi2=0;intbiaozhi3=0;intbiaozhi4=0;intbiaozhi5=0;u16feng;u8fengs[15];unsignedintfengyu=3;u8fengyus[15];voidUSART1_Puts(char*str){while(*str){USART1->DR=*str++;while((USART1->SR&0X40)==0);}}voidUSART3_Puts(char*str){while(*str){USART3->DR=*str++;while((USART3->SR&0X40)==0);}}voidUSART2_Puts(char*str){while(*str){USART2->DR=*str++;while((USART2->SR&0X40)==0);}}intmain(void){ u8temp[9]; inti,j; int32_tn_brightness; floatf_temp; delay_init(); delay_ms(1000); delay_ms(1000); NVIC_Configuration(); OLED_Init(); OLED_ColorTurn(0);//0正常显示,1反色显示OLED_DisplayTurn(0);//0正常显示1屏幕翻转显示 OLED_Refresh(); OLED_Clear(); KEY_Init(); LED_Init(); beep_Init(); beep=0; Adc_Init(); //ADC初始化 usart2_init(9600);usart3_init(9600); JDQ1=0;JDQ2=0;// TIM1_PWM_Init(899,0);//不分频。PWM频率=72000/(899+1)=80Khz// TIM3_Int_Init(9999,7199);OLED_ShowChinese(0,0,0,16);//系 OLED_ShowChinese(18,0,1,16);//统 OLED_ShowString(36,0,":",16);OLED_ShowChinese(0,16,2,16);//系 OLED_ShowChinese(18,16,3,16);//统 OLED_ShowString(36,16,":",16);OLED_ShowChinese(0,32,4,16);//系 OLED_ShowChinese(18,32,5,16);//统 OLED_ShowString(36,32,":",16); OLED_ShowChinese(0,48,6,16); OLED_ShowChinese(18,48,7,16);// OLED_ShowChinese(36,48,8,16);// OLED_ShowString(54,48,":",16); OLED_Refresh(); while(DHT11_Init()) //DHT11初始化 { delay_ms(200);} UltraSoundInit(); KEY_Init(); temdyu[0]=temperaturedyu%100/10+'0'; temdyu[1]=temperaturedyu%10+'0'; OLED_ShowString(90,0,temdyu,16); shiduyu[0]=humidityyu%100/10+'0'; shiduyu[1]=humidityyu%10+'0'; OLED_ShowString(90,16,shiduyu,16); tuyus[0]=tuyu/100+'0'; tuyus[1]=tuyu%100/10+'0'; tuyus[2]=tuyu%10+'0'; OLED_ShowString(90,32,tuyus,16); jlyus[0]=jlyu/100+'0'; jlyus[1]=jlyu%100/10+'0'; jlyus[2]=jlyu%10+'0'; OLED_ShowString(90,48,jlyus,16); OLED_Refresh(); while(1) { if(USART3_RX_STA==1){ USART3_RX_STA=0; if(USART3_TX_BUF[1]=='1'){ temperaturedyu=(USART3_TX_BUF[2]-'0')*10+(USART3_TX_BUF[3]-'0'); humidityyu=(USART3_TX_BUF[4]-'0')*10+(USART3_TX_BUF[5]-'0 tuyu=(USART3_TX_BUF[6]-'0')*100+(USART3_TX_BUF[7]-'0')*10+(USART3_TX_BUF[8]-'0'); jlyu=(USART3_TX_BUF[9]-'0')*100+(USART3_TX_BUF[10]-'0')*10+(USART3_TX_BUF[11]-'0'); temdyu[0]=temperaturedyu%100/10+'0'; temdyu[1]=temp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 游泳指导员客户服务知识考核试卷含答案
- 丁苯胶乳装置操作工交接知识考核试卷含答案
- 野生植物管护巡护工安全文化能力考核试卷含答案
- 飞机桨叶型面仿形工班组安全竞赛考核试卷含答案
- 糖果成型工创新意识测试考核试卷含答案
- 四氯化硅氢化工保密评优考核试卷含答案
- 赢战2026马年企业年终晚会开场倒计时模板
- 4 让经验照亮课堂让成长接续发生-2026年秋季青蓝工程师徒结对活动校长讲话稿
- 营销漏斗模型的思考模板
- 2026年智能分拣系统行业技术创新动态报告
- 医学影像技术事业单位考试题库及答案
- (2026年)食管癌的诊断和治疗健康宣教课件
- 田型调整实施方案
- 江苏江南水务股份有限公司招聘笔试题库2026
- 职业生涯规划与管理
- 《短歌行》2026年统编版高一语文必修上册
- 2025-2030中国模块化负压病房平战结合模式与公共卫生体系建设
- 业务员钉钉考勤制度
- 离婚协议书 2026年民政局标准版
- 流行性感冒课件
- T-CSES 191-2025 一般工业固体废物道路利用技术指南
评论
0/150
提交评论