物料配送无人机的设计与实现_第1页
物料配送无人机的设计与实现_第2页
物料配送无人机的设计与实现_第3页
物料配送无人机的设计与实现_第4页
物料配送无人机的设计与实现_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

物料配送无人机的设计与实现摘要针对电商与智慧物流快速发展背景下,传统地面配送在末端环节存在的效率低、成本高及路况适应性差等问题,设计并实现了一套基于STM32F103C8T6的小型物料配送无人机系统。该系统集成了重量检测、GPS定位、4G远程通信、语音播报及实时视频传输六大功能模块。采用HX711传感器实现货物挂载状态监测,NEO-6M模块获取实时位置信息,ML307R4G模块完成与阿里云平台的数据交互及远程控制,ESP32-CAM摄像头负责配送现场实时画面回传。语音播报功能用于提示电池电量与超重状态。系统整体结构紧凑、成本可控,适用于校园、厂区等小范围、短距离的物料搬运场景。该系统具有成本低廉、结构简单、易于维护的特点,为校园、厂区及山区等场景下的小型紧急物资配送提供了可行的低成本技术方案。关键词物料配送;无人机;GPS定位;4G远程控制AbstractE-commerceandintelligentlogisticshavedevelopedrapidlyinrecentyears.Whentraditionalgrounddistributionisdealingwiththelastdistancesenttousers,itisbecomingmoreandmoreobviousthatthedeliveryisslow,thecostishigh,andtheplacewheretheroadisdifficultismoretroublesome.UAVdeliveryisnotthesame,flyingupflexible,notafraidoftrafficjams,butalsopoint-to-pointdirect,sothelogisticsindustryistryinginthisdirection.WehavedoneasetofsmallmaterialdistributionUAVbasedonSTM32F103C8T6,whichintegratessixmainfunctions:weightdetection,GPSpositioning,4Gremotecommunication,voicebroadcast,real-timevideotransmission.Intermsofspecificimplementation,HX711weightsensorisusedtoseewhetherthegoodsarehangingwell,NEO-6Mmoduletakesthereal-timeposition,ML307R4GmoduleisdockedwithAlibabaCloudplatformfordatatransmissionandremotecontrol,andESP32-CAMcamerasendsthepictureofthedeliverysitebackinrealtime.Thevoicebroadcastwillreportthestatewhenthebatterypowerandweightareoverweight.Weknowwhetherthedronehaspowerorisoverweight.Thissystemisnotcomplexasawhole,andthecostisrelativelylow.Itcanbeusedtosendasmallpartoncampusoratoolkitinthefactory.Inshort,itistofindawaytosavemoneyandsavetimeforsmall-scaleandshort-distancematerialhandling.Thesystemhastheadvantagesoflowcost,simplestructureandeasymaintenance.Itissuitableforsmallemergencymaterialdistributionincampus,factoryandmountainareas,andprovidesafeasibletechnicalsolutionforlow-costUAVlogisticsapplication.Keywordsmaterialdelivery;UAV;GPSpositioning;4Gremotecontrol目录TOC\o"1-3"\h\z\uHYPERLINK\l_Toc4673摘要 PAGEREF_Toc4673\hIHYPERLINK\l_Toc18598Abstract PAGEREF_Toc18598\hIIHYPERLINK\l_Toc256191绪论 PAGEREF_Toc25619\h-1-HYPERLINK\l_Toc192431.1研究背景与意义 PAGEREF_Toc19243\h-1-HYPERLINK\l_Toc190041.2国内外研究现状 PAGEREF_Toc19004\h-1-HYPERLINK\l_Toc201441.2.1国内研究现状 PAGEREF_Toc20144\h-2-HYPERLINK\l_Toc82681.2.2国外研究现状 PAGEREF_Toc8268\h-3-HYPERLINK\l_Toc88991.3研究主要内容 PAGEREF_Toc8899\h-4-HYPERLINK\l_Toc145751.5本章小结 PAGEREF_Toc14575\h-4-HYPERLINK\l_Toc213482系统总体设计 PAGEREF_Toc21348\h-5-HYPERLINK\l_Toc30762.1系统设计方案 PAGEREF_Toc3076\h-5-HYPERLINK\l_Toc116072.3核心器件选型对比 PAGEREF_Toc11607\h-6-HYPERLINK\l_Toc323112.3.1主控芯片的选型 PAGEREF_Toc32311\h-6-HYPERLINK\l_Toc270732.3.2通信模块的选型 PAGEREF_Toc27073\h-7-HYPERLINK\l_Toc221642.3.3定位模块的选型 PAGEREF_Toc22164\h-8-HYPERLINK\l_Toc255882.2.4HX711重量传感模块的选型 PAGEREF_Toc25588\h-9-HYPERLINK\l_Toc229732.2.5ESP32-CAM摄像头模块选型 PAGEREF_Toc22973\h-10-HYPERLINK\l_Toc46952.4本章小结 PAGEREF_Toc4695\h-12-HYPERLINK\l_Toc326663系统的硬件设计 PAGEREF_Toc32666\h-13-HYPERLINK\l_Toc9713.1STM32F103C8T6电路图设计 PAGEREF_Toc971\h-13-HYPERLINK\l_Toc81273.2STM32F103C8T6最小系统 PAGEREF_Toc8127\h-14-HYPERLINK\l_Toc279003.3HX711重量传感模块 PAGEREF_Toc27900\h-15-HYPERLINK\l_Toc45793.4ESP32-CAM摄像头模块 PAGEREF_Toc4579\h-15-HYPERLINK\l_Toc280363.5NEO-6MGPS定位模块 PAGEREF_Toc28036\h-16-HYPERLINK\l_Toc274123.6ML307R4G通信模块 PAGEREF_Toc27412\h-17-HYPERLINK\l_Toc129933.7DY-SV17F语音播放模块 PAGEREF_Toc12993\h-18-HYPERLINK\l_Toc14233.8SG90舵机卸货模块 PAGEREF_Toc1423\h-18-HYPERLINK\l_Toc37963.9OLED显示模块 PAGEREF_Toc3796\h-19-HYPERLINK\l_Toc123943.10独立按键模块 PAGEREF_Toc12394\h-19-HYPERLINK\l_Toc31093.11供电电路设计 PAGEREF_Toc3109\h-20-HYPERLINK\l_Toc34393.12本章小结 PAGEREF_Toc3439\h-21-HYPERLINK\l_Toc26424系统的软件设计 PAGEREF_Toc2642\h-23-HYPERLINK\l_Toc58434.1开发环境介绍 PAGEREF_Toc5843\h-23-HYPERLINK\l_Toc60244.2软件程序的设计 PAGEREF_Toc6024\h-23-HYPERLINK\l_Toc214264.2.1主程序流程设计 PAGEREF_Toc21426\h-23-HYPERLINK\l_Toc44864.2.2按键函数流程设计 PAGEREF_Toc4486\h-25-HYPERLINK\l_Toc147204.2.3显示函数流程设计 PAGEREF_Toc14720\h-26-HYPERLINK\l_Toc132824.2.4业务处理函数流程设计 PAGEREF_Toc13282\h-26-HYPERLINK\l_Toc95394.3本章小结 PAGEREF_Toc9539\h-27-HYPERLINK\l_Toc140275系统的测试 PAGEREF_Toc14027\h-29-HYPERLINK\l_Toc255245.1硬件单元测试 PAGEREF_Toc25524\h-29-HYPERLINK\l_Toc285195.2软件功能测试 PAGEREF_Toc28519\h-29-HYPERLINK\l_Toc123435.3实物功能测试 PAGEREF_Toc12343\h-30-HYPERLINK\l_Toc124115.3.1重量检测与语音播报功能测试 PAGEREF_Toc12411\h-30-HYPERLINK\l_Toc236155.3.2GPS定位与显示功能测试 PAGEREF_Toc23615\h-30-HYPERLINK\l_Toc136215.3.3系统续航与稳定性测试 PAGEREF_Toc13621\h-31-HYPERLINK\l_Toc122255.4本章小结 PAGEREF_Toc12225\h-31-HYPERLINK\l_Toc8516结论 PAGEREF_Toc8516\h-33-HYPERLINK\l_Toc5365参考文献 PAGEREF_Toc5365\h-35-HYPERLINK\l_Toc24101谢辞 PAGEREF_Toc24101\h-37-HYPERLINK\l_Toc24322附录A PAGEREF_Toc24322\h-38-HYPERLINK\l_Toc11150附录B PAGEREF_Toc11150\h-39-1绪论1.1研究背景与意义近年来,电子商务与即时配送业务规模持续扩大,传统地面物流体系在末端配送环节中面临交通拥堵、人力成本上升、送达时效延长等问题,且配送难度随订单密度增加而加剧。据国家邮政局发布的统计数据显示,快递业务量保持快速增长,但快递从业人员数量增幅相对滞后,仅依靠增加人力与车辆难以满足小件、急件等高频配送需求。相比之下,无人机配送具备空中运行不受地面交通信号与拥堵影响、点对点直达、飞行速度快及环境友好等优势,因此被视为解决末端物流瓶颈的有效途径。与地面运输车辆相比,无人机可沿直线航线飞行,规避复杂路段的延误,从而缩短配送时间、降低燃油消耗与碳排放。近年来,低空经济得到国家政策层面的持续推动,相关管理部门在空域使用规范、飞行操作标准及产业扶持措施等方面不断完善制度建设,为无人机物流配送创造了日益成熟的应用环境。多家物流企业与科技公司已开展实际飞行测试,结果表明无人机配送在时效性、运行成本与安全性方面具有可行性。在特定场景中,如生产车间内的零件运输、医院内部的样本或药品传递、不同仓库之间的物资调拨,无人机配送同样展现出较高的实用价值。在工厂车间零件转运、医院样本与药品传递、仓库间少量物资调拨等特殊场景中,亟需一种灵活便捷、响应及时、可高频次出动的运输工具,物料配送无人机正是为满足这类需求而设计。此类应用对飞行的准确性、稳定性以及自主路径规划能力提出了较高要求:例如生产线急需的配套零件、患者等待的检验报告,都需要实现快速精准的送达。当前多数研究聚焦于大规模物流体系或通用型无人机配送方案,针对这类特定场景的完整解决方案仍相对匮乏。部分现有方案在室内或半开放环境下定位精度不足,而物品投放往往需要厘米级的定位精度;同时,部分系统的避障与动态路径调整能力较弱,面对突发情况易出现任务失败;此外,部分方案的模块间兼容性不足,接口标准不统一,导致系统整体可靠性下降。因此,为满足此类场景下的物料配送需求,研制一款实用化的小型配送无人机具有重要的现实意义。本文所研制的物料配送无人机系统,可实现自主飞行与定点物品投放,具有重要的理论与实践价值。从理论层面,该研究梳理了飞控、定位、路径规划与通信等模块的协同工作机制,可为同类系统的开发提供可行的设计参考;从实践层面,通过硬件搭建与系统调试,验证了该方案的可行性与实用性,为小件物资的低成本、高效率运输提供了新的实现路径。该系统可实现自动起飞、导航、定点投放等自主功能,无需人工干预。在社会与经济效益层面,该研究也契合我国低空经济的发展目标,有助于缓解城市交通拥堵问题,减少末端配送的小型货运车辆数量,降低尾气排放,推动智慧物流与绿色物流的发展。同时,该研究也可为智能制造、智慧医疗等领域的物资搬运工作提供借鉴,具备一定的推广应用潜力。1.2国内外研究现状1.2.1国内研究现状国内无人机物流产业虽起步较晚,但发展势头迅猛,在产业应用落地、核心技术攻关和工程实践教学方面均取得了丰硕成果。产业应用层面,京东JDX、顺丰丰翼、菜鸟网络等企业已在农村、山区、海岛等交通不便地区开展常态化无人机配送服务,构建了覆盖全国的无人机物流网络。在核心技术研发方面,飞控系统是无人机稳定运行的核心基础。晏芙蓉等人REF_Ref27605\r\h\*MERGEFORMAT[1]深入推导了四旋翼无人机的动力学模型,设计了基于串级PID的姿态控制系统,实现了无人机的平稳悬停和定点飞行;张浩松等人REF_Ref9340\r\h[2]进一步优化了姿态解算算法,引入互补滤波融合陀螺仪和加速度计数据,有效降低了传感器噪声对飞行稳定性的影响。动力系统方面,郭瑞鑫等人提出了一种多电源智能切换动力控制系统,通过动态分配不同电池组的输出功率,将无人机续航时间延长了15%;狄正杰等人REF_Ref9395\r\h[3]则设计了一款垂直起降(VTOL)货运无人机,结合了多旋翼垂直起降和固定翼长航程的优点,大幅提升了无人机的作业半径和载重能力。导航与环境感知技术方面,姚念等人REF_Ref27961\r\h\*MERGEFORMAT[4]研发了基于多超声波测距的无人机防撞系统,能够实时检测前方10米内的障碍物并实现自主规避;梁瑞REF_Ref28229\r\h\*MERGEFORMAT[5]设计了工业无人机探测雷达信号处理器,进一步提升了无人机在复杂环境下的远距离感知能力。配套技术方面,孙兆键等人REF_Ref28170\r\h\*MERGEFORMAT[6]研发的野外自动找平起降平台,解决了无人机在崎岖地形下的安全起降难题;王继昌等人REF_Ref9435\r\h[7]提出的无人机质量质心快速测量系统,为无人机的配重优化和飞行姿态调整提供了精准的数据支撑。在工程实践与教学研究层面,基于STM32单片机的小型无人机开发成为主流方向。刘健REF_Ref9464\r\h[8]设计了一款基于STM32单片机的微型无人机系统,实现了基本的飞行控制和数据采集功能;覃江德等人REF_Ref9490\r\h[9]系统阐述了四旋翼无人机的完整设计流程,包括硬件电路搭建和软件程序编写,为本科毕业设计提供了标准化参考。廖奕超等人REF_Ref9539\r\h[10]基于MSP432单片机开发了智能送货无人机,集成了GPS导航和自动卸货功能;朱彦泓等人REF_Ref9572\r\h[11]则将无人机与地面物流小车相结合,设计了一套空地协同的货物分拣配送系统,提升了物流作业的整体效率。针对特殊应用场景,李者等人REF_Ref9604\r\h[12]研究了矿井巷道灾变环境下的无人机自适应侦测技术,解决了无GPS信号环境下的导航和通信难题;姚翠萍REF_Ref28617\r\h\*MERGEFORMAT[13]设计了基于单片机的无人机电气设备在线监测系统,能够实时预警电机过热、电压异常等故障,提升了飞行安全性。在无线供电方面,陈海峰他们REF_Ref9647\r\h[14]拿无线输电技术做了个小实验,研究了一下小型无人机的位置控制怎么搞,给无人机的续航问题指了个新方向。尽管无人机配送技术已取得了诸多进展,但要实现大规模落地应用,仍面临若干问题:首先,当前商用配送无人机的采购与使用成本较高,难以在校园、厂区这类小范围场景中普及应用[16];其次,低成本无人机往往缺乏完善的远程监控与管理功能,难以实现物联网平台的统一调度与状态实时监测[17];此外,现有研究多聚焦于飞控算法的优化,对于货物状态监测、自动卸货等配送场景的实用功能关注不足[18]。针对上述问题,本文基于STM32F103C8T6微控制器,设计了一款低成本物料配送无人机,集成了重量检测、4G远程通信、GPS定位与自动卸货等功能,为校园、厂区等小范围场景的无人机配送提供了可行的解决方案。1.2.2国外研究现状国外无人机物流配送领域起步较早,在商业化落地、政策配套与核心技术研发方面均走在全球前列,已形成了较为成熟的产业生态与技术体系。商业化应用层面,头部企业已实现规模化的试点运营,验证了无人机配送的商业可行性。亚马逊于2013年率先启动PrimeAir项目,研发了可载重5磅、配送半径15英里的小型配送无人机,截至2024年底,已在澳大利亚、英国、美国等多个国家和地区实现常态化试运营,累计完成超过50万次商业配送任务,占据全球已商业化无人机物流市场份额的28.6%。Zipline作为全球医疗配送领域的标杆企业,自2016年起在卢旺达、加纳等国家开展医疗物资配送服务,累计完成超过200万次血液、疫苗等紧急医疗物资的配送,准时率达到99.2%,截至2025年3月,其自主飞行里程已突破1亿英里,成为全球运营规模最大的无人机配送服务商。谷歌旗下的Wing项目则在澳大利亚试点了“无人机+地面中转站”的混合配送模式,将配送时效较传统方式提升了50%,配送成本降低了35%,累计完成超过50万次居民配送服务。学术研究层面,国外学者在调度优化、控制算法与基础硬件方面开展了深入研究。在配送调度优化领域,Han等人[19]针对多餐厅共享配送车队的复杂场景,提出了拆分式配送的最优调度模型,通过动态订单分配与航线规划,将整体配送效率提升了18%。在核心控制算法方面,Can[20]提出了一种基于动态误差优化的混合PSO-模糊逻辑算法,应用于无人机直流电机的行为控制,相比传统PID算法,系统的抗气流干扰能力提升了23%,有效提升了无人机在复杂气象条件下的飞行稳定性。另有研究人员探索了基于单片机的手势识别技术在无人机人机交互中的应用,拓展了非接触式控制的应用场景。总体而言,国外的无人机配送方案多面向大规模商业化运营,系统的硬件成本与部署门槛较高,难以直接适配校园、厂区这类小范围、低成本的细分场景,这也为本研究的低成本物料配送无人机的设计提供了切入点。1.3研究主要内容本研究旨在设计并实现一款低成本、高可靠性的小型物料配送无人机系统,主要研究内容包括以下几个方面:以STM32F103C8T6微控制器为核心,集成重量检测、GPS定位、4G通信、自动卸货、语音播报和视频传输等功能模块,设计并制作系统的硬件电路板,完成各模块之间的电路连接和调试。基于Keil5开发环境,采用C语言编写单片机程序,实现各硬件模块的驱动和系统的整体控制逻辑。具体包括按键检测、传感器数据采集、OLED显示、舵机控制、语音触发、4G数据传输以及与阿里云平台的通信等功能。通过ML307R4G模块,将无人机的实时位置、货物重量、飞行状态等数据上传至阿里云物联网平台,同时接收来自移动终端的远程控制指令,实现对无人机的远程监控和卸货操作。通过硬件单元测试、软件功能测试和实物集成测试,验证系统各项功能的正确性和稳定性。针对测试过程中发现的问题,对硬件电路和软件程序进行优化改进,提升系统的整体性能。1.4本章小结本章阐述了物料配送无人机的研究背景与应用意义,重点分析了无人机配送在解决末端物流问题中的潜在价值。梳理了国内外在无人机物流领域的研究现状与发展趋势,明确了本课题的研究定位与创新点。介绍了本文的主要研究内容及整体章节结构,为后续各章的展开奠定了框架基础。后续章节将按照硬件设计、软件开发、系统集成及实验验证的顺序,系统呈现物料配送无人机的完整实现过程,确保论文结构的逻辑连贯性与内容完整性。2系统总体设计2.1系统设计方案本系统采用模块化设计理念,以STM32F103C8T6微控制器为核心控制器,将整个系统划分为中控部分、输入部分和输出部分三个部分,各部分之间通过标准接口进行连接,便于系统的扩展和维护。中控部分由STM32F103C8T6单片机组成,是整个系统的控制核心。其主要功能是接收输入部分采集的各种数据,经过处理和分析后,向输出部分发送控制指令,协调各模块的工作,实现系统的整体功能。输入部分由五个模块组成:第一部分是HX711重量传感模块,用于检测货仓内货物的重量,判断是否有货物待运输;第二部分是ESP32-CAM摄像头模块,用于实时采集配送现场的视频画面;第三部分是NEO-6MGPS模块,用于获取无人机的实时位置信息;第四部分是独立按键模块,用于实现本地重量校准、手动卸货和系统复位等功能;第五部分是供电电路,为整个系统提供稳定的直流电源。输出部分由四个模块构成:第一个为OLED显示屏,用来显示货物重量、GPS定位信息、网络状况以及电池电压等信息;第二个为SG90舵机,用于控制货舱舱门开关,从而达到自动卸货目的;第三个为DY-SV17F语音播报单元,在检测到货物时发出语音警告;第四个为ML307R4G通信模块,用于实现无人机与阿里云之间通讯及遥控功能。系统总体结构框图如图2-1所示图2.1系统框图2.3核心器件选型对比2.3.1主控芯片的选型方案一:STC89C52SSTC89C52是基于8051内核的8位单片机,价格便宜、编程方便、资料齐全,应用范围较广,但是运算速度慢,最高主频只有11.0592MHz,内存空间小,不能支持大量传感器的数据采集及复杂的通信协议的要求,另外,它的外部设备端口数量较少,不能连接多个串口设备。方案二:STM32F103C8T6STM32F103C8T6是一种基于ARMCortex-M3内核的32位单片机,最高主频可达72MHz,有64KBFlash和20KBSRAM可存储空间,可以完成大量的传感器数据采集以及4G通信等工作。它还具有众多外围设备,比如三个USART串口、两个SPI接口、两个I2C接口以及多个定时器等都可以满足本项目各个模块的需求。而且STM32系列单片机有着非常好的开发环境和庞大的函数库,可以大大加快开发进度。从系统的功能要求、计算能力和开发难易程度出发。本设计选择STM32F103C8T6作为系统的主控芯片,如表2-1所示表2-1主控制芯片对比对比项目STC89C52STM32F103C8T6内核架构8位8051内核32位内核ADC通道无内置ADC12位ADC,10通道通信接口UART×1UART×3、SPI×2、I²C×2、USBI/O数量32个37个DMA支持不支持支持开发生态KeilC51,资源基础KeilMDK/HAL库,社区成熟价格约10~15约15~25综合考量本系统需同时处理多路PWM输出、IMU姿态解算、GPS数据接收、ADC电池电压监测及无线遥控信号解析等开发任务,51单片机在运算速度、硬件乘除法器、定时器资源及接口数量方面均存在不足。因此本设计选用STM32F103C8T6为主控制器,其基于ARMCortex-M3内核、72MHz主频、集成丰富外设,可高效完成飞控算法与实时响应,适合物料配送无人机场景,因此选择该芯片作为系统的主控单元,STM32F103C8T6如图2-2所示。图2-2STM32F103C8T6单片机2.3.2通信模块的选型方案一:NRF24L01NRF24L01是一款常用的短距离无线通信模块,具有功耗低、成本低、传输速率快等优点,适用于短距离的点对点通信。但其通信距离有限,在开阔地的最大通信距离约为100米,且无法接入互联网,不能实现远程监控和控制。此外,其抗干扰能力较差,在复杂环境下容易出现通信中断的情况。方案二:ML307RML307R是一款高性能的4GCat.1模块,支持中国移动、中国联通和中国电信的4G网络,能够实现全国范围内的无线通信。该模块内置TCP/IP协议栈,支持MQTT、HTTP等多种网络协议,能够方便地对接阿里云、腾讯云等主流物联网平台。其通信距离不受限制,只要有4G网络覆盖的地方都能实现数据传输,完全满足本系统远程监控和控制的需求。综合考虑通信距离、网络覆盖和功能需求,本设计选择ML307R作为系统的通信模块,如表2-2所示表2-2通信模块对比对比项目NRF24L01ML307R通信方式2.4GHz无线点对点4G蜂窝网络通信通信距离空旷环境约100米全国范围内联网能力无法接入互联网可接入互联网传输速率最高2Mbps最高10Mbps,抗干扰能力较弱,2.4GHz频段强,稳定性高硬件接口SPIUART、USB、SPI、I2C等价格约5-15元约30-80元综合考量本系统需实现无人机与地面调度平台之间的超视距指令传输、飞行数据回传及物流状态上报,nRF24L01模块虽响应快、功耗低,但有效通信距离仅200米左右,难以满足物料配送无人机在园区或城区范围内的远程控制需求;而ML307R作为4GCat.1通信模块,依托蜂窝网络覆盖广、穿透力强、无需额外搭建基站,可随时随地进行双向数据传输,并支持断网重连与心跳包机制,更适用于实际配送场景中跨区域、非视距的飞行任务。因此本设计选用ML307R为无线通信模块,ML307R模块如图2-3所示。图2-3ML307R模块2.3.3定位模块的选型方案一:ATGM336HATGM336H支持北斗和GPS双系统定位,定位精度高,冷启动时间短,能够在复杂环境下提供稳定的定位服务。但其价格相对较高,对于本设计的低成本定位需求来说,性价比不高。方案二:NEO-6MNEO-6M是一款经典的单GPS定位模块,具有价格低廉、性能稳定、易于使用等优点,广泛应用于各种低成本的定位系统中。其定位精度约为±10m,冷启动时间约为30秒,能够满足本系统的基本定位需求。虽然其定位精度不如双模模块,但对于小型物料配送无人机来说已经足够。综合考虑成本和性能需求,本设计选择NEO-6M作为系统的定位模块,如表2-3所示。表2-3定位模块的选型对比对比项目ATGM336HNEO-6M支持卫星系统北斗/GLONASS多系统仅GPS单系统水平定位精度2.5m±10m典型冷启动时间约23-32s约30s工作电压3.3-5V3.3-5V抗环境干扰能力强一般开发资料一般非常丰富价格约15-25元/个约5-15元/个综合考量本系统需为物料配送无人机提供实时位置信息、航向校准及失控返航定位支持,ATGM336H模块虽支持多卫星系统、水平精度可达2.5m,但价格较高、开发资料一般;而NEO-6M模块虽仅为GPS单系统、精度±10m,但其冷启动时间约30秒、工作电压兼容3.3~5V,且价格低廉、开发资料非常丰富,对于小型物料配送无人机的定位需求已足够。综合考虑成本、开发便捷性及实际飞行场景,本文设计选择NEO-6M作为系统的定位模块,NEO-6M模块如图2-4所示。图2-4NEO-6M模块2.2.4HX711重量传感模块的选型方案一:ADS1231ADS1231是一款高精度、低噪声的24位ADC芯片,专为桥式传感器设计,内置温漂补偿电路,称重稳定性好,适用于高精度电子秤等场景。但其外围电路相对复杂,模块成本较高,且与常见微控制器的接口兼容性略逊于HX711,对于本设计中对成本较为敏感的小型称重需求来说,性价比偏低。方案二:HX711HX711是一款专为电子秤设计的24位A/D转换器芯片,内部集成了稳压电源、时钟振荡器等必要电路,仅需少量外部元件即可构成完整的称重数据采集模块。该模块具有价格低廉、使用简单、与单片机连接方便等优点,广泛应用于各类低成本称重系统中。其采样频率为80Hz,能够满足小型物料配送无人机的载重检测与货物投放判断需求。虽然其内部未集成温度补偿功能,但对于本系统室内外短时工作环境而言影响甚微。综合考虑成本、开发便捷性与性能需求,本设计选择HX711作为系统的重量传感器模块,如表2-4所示。表2-4HX711重量传感模块对比对比项目ADS1231HX711分辨率/精度24位,内置温度补偿24位,无内置温度补偿采样率10SPS/80SPS80SPS接口方式SPI接口,需配置外部时钟与基准源STM32/Arduino兼容性好,驱动简单适用场景工业级高精度室内环境称重系统,开发难度驱动复杂通用开源驱动丰富成本芯片价格高芯片价格低综合考量本系统的成本与开发难度,本设计最终选择HX711重量传感模块作为系统的重量检测模块。HX711重量传感模块如图2-5所示。图2-5HX711重量传感模块2.2.5ESP32-CAM摄像头模块选型方案一:OV7670摄像头模OV7670是一款经典的30万像素CMOS图像传感器,最大支持VGA(640×480)分辨率,配合外部FIFO缓存可以减轻主控芯片的读取压力,模块成本较低。但该模块需要占用较多的I/O口进行并行数据传输,且图像处理需依赖外部MCU(如STM32)进行算法实现,开发周期较长。对于本系统中小型配送无人机的视觉辅助(如货物识别、起降点标记识别)需求而言,其分辨率较低、抗干扰能力一般,且会增加主控芯片的负担,整体集成度不高。方案二:ESP32-CAMESP32-CAM是一款集成了ESP32芯片与OV2640传感器的开发模块,最大支持200万像素,内置Wi-Fi和蓝牙,可直接通过串口或网络传输图像数据,无需额外主控。该模块体积小、功耗较低、开发资源丰富,并支持JPEG压缩输出,能够满足无人机对货物标识或降落靶标的实时图像采集需求。虽然其工作电流在开启Wi-Fi时可达180~200mA,对于小容量电池有一定压力,但本系统采用间断拍摄与传输策略可以降低平均功耗。综合考量集成度、开发便捷性、图像质量与成本,本设计选择ESP32-CAM作为系统的摄像头模块。对比项目OV7670ESP32-CAM核心功能仅输出原始图像数据内置ESP32主控图像分辨率最大640×480最高1600×1200开发便捷性需额外MCU处理数据,主流库支持完善,开发便捷性需手动配置时序主流库支持完善传输方式需额外MCU处理数据直接通过无线传输图像成本成本更低但整体方案成本更低表2-5ESP32-CAM摄像头模块为实现无人机对货物标识与起降点的识别,本系统需配置适配的摄像头模块,需兼顾分辨率、开发难度与系统兼容性。初期考虑OV7670传感器,其成本低、可输出640×480图像,但存在I/O占用量大、图像处理依赖飞控主控、开发难度高、抗干扰性差的问题,会显著增加飞控负担。后续选用ESP32-CAM模块,该模块集成ESP32与OV2640传感器,支持200万像素(1600×1200)采集,自带Wi-Fi/蓝牙,可直接输出JPEG压缩图像,无需额外主控处理数据。模块资料丰富、体积小巧,Wi-Fi工作电流约180~200mA,虽功耗略高,但采用间断拍照传输模式,可满足无人机续航需求。综合集成度、开发效率与图像质量所以最后选了它作为摄像头模块,ESP32-CAM摄像头模块如图2‑6所示。图2-6ESP32-CAM摄像头模块2.4本章小结本章对物料配送无人机系统的功能需求进行了详细的分析,明确了系统需要实现的各项功能。提出了系统的总体设计方案,采用模块化设计思想,将系统划分为中控、输入和输出三个部分,并阐述了系统的工作流程。对主控芯片、通信模块和定位模块进行了选型对比,说明了选型依据,为后续的硬件和软件设计奠定了基础。3系统的硬件设计3.1STM32F103C8T6电路图设计本系统以STM32F103C8T6为核心控制器,其最小系统是硬件稳定运行的基础,由主芯片电路、电源电路、复位电路、时钟电路、下载接口电路五部分构成。主芯片电路采用LQFP-48封装,3.3V单电源供电,严禁接入5V;每个电源引脚并联100nF电容,滤除高频纹波,保证供电稳定。复位电路:采用低电平复位,由10kΩ上拉电阻、0.1μF电容与复位按键组成,支持上电自动复位与手动复位,确保系统异常时快速重启。时钟电路:采用外部8MHz晶振,为芯片提供基础时钟,经内部PLL倍频后最高可达到72MHz主频,满足电机控制与通信运算需求。PCB电路板如图3.1所示图3.1PCB板本系统采用CH340C芯片实现USB转串口功能,通过板载USB接口J2连接电脑。USB差分信号D+、D-接入CH340C后,由其TXD、RXD引脚分别连接至STM32的PA10(USART1_RX)与PA9(USART1_TX),可同时实现程序下载与调试信息输出,便于开发调试。STM32的启动模式由BOOT0与BOOT1引脚控制:程序下载时,将BOOT0接3.3V、BOOT1接地,复位后进入内置Bootloader模式;正常运行时,仅需将BOOT0接地即可。板载LED1为电源指示灯,USB供电正常时点亮,下载过程中需留意其状态,避免供电不稳如表3-1单片机端口分配表所示。表3-1STM32F103C8T6端口分配表功能模块设备STM32引脚通信方式摄像头模块ESP32-CAMTX(PA9)/RX(PA10)UART1GPS定位模块NEO-6MTX(PA2)/RX(PA3)UART24G通信模块ML307RTX(PB10)/RX(PB11)UART3称重传感器模块HX711DT(PB13)/SCK(PB12)自定义串行OLED显示屏0.96寸I2COLEDSDA(PB14)/SCL(PB15)I2C2舵机控制模块SG90舵机IO(PB0)PWM输出按键输入模块独立按键S1/S2/S3PA5/PA6/PA7数字输入3.2STM32F103C8T6最小系统STM32F103C8T6最小系统是无人机控制电路的核心,负责协调所有外设模块的运行。最小系统主要由电源电路、时钟电路、复位电路、BOOT启动电路和单片机芯片组成。电源电路采用Type-C接口输入5V电压,通过XC6206线性稳压芯片将5V电压转换为3.3V,为单片机和大部分传感器模块供电。为了保证电源的稳定性,在电源输入端和输出端都并联了100nF的陶瓷电容和22uF的电解电容,用于滤除电源中的高频和低频噪声。时钟电路采用8MHz的无源晶振作为主时钟源,配合两个30pF的负载电容组成振荡电路,为单片机提供72MHz的系统时钟。同时,采用32.768kHz的无源晶振作为低速外部时钟,用于实时时钟功能。复位电路采用上电复位和手动复位相结合的方式,通过一个10K的上拉电阻和一个100nF的电容实现上电复位,同时并联一个手动复位开关,方便系统调试。BOOT启动电路通过两个10K的电阻将BOOT0和BOOT1引脚拉低,使单片机从Flash存储器启动。STM32F103C8T6最小系统如图3.2所示图3.2STM32F103C8T6最小系统3.3HX711重量传感模块HX711重量传感模块是实现货物检测功能的核心,由电阻应变式压力传感器和HX711模数转换芯片组成。压力传感器安装在无人机货仓的底部,当有货物放入货仓时,压力传感器会产生微小的形变,将重量信号转换为电信号。HX711芯片是一款专为高精度电子秤设计的24位A/D转换器,能够将压力传感器输出的微弱电信号放大并转换为数字信号,传输给单片机进行处理。硬件连接方面,HX711模块的VCC引脚接5V电源,GND引脚接地,DT引脚连接单片机的PB13引脚,SCK引脚连接单片机的PB12引脚。为了减少电磁干扰,压力传感器与HX711模块之间采用屏蔽线连接,屏蔽层单端接地。在安装过程中,需要确保压力传感器受力均匀,避免出现偏载的情况,否则会影响测量精度。系统在上电初始化时会自动进行去皮校准,消除传感器的零点漂移。通过多次测量取平均值的方法,对采集到的重量数据进行滤波处理,提高测量的稳定性。HX711重量传感模块如图3.3所示图3.3HX711重量传感模块3.4ESP32-CAM摄像头模块ESP32-CAM摄像头模块是实现配送现场实时视觉监控功能的核心,由ESP32-S双核微控制器与OV2640CMOS图像传感器集成而成,内置2.4GHzWi-Fi通信功能,能够独立完成图像采集、JPEG压缩与无线传输任务。该模块体积小、重量轻、集成度高,无需额外主控芯片即可工作,能够为地面操作人员提供无人机周边环境、货物挂载状态及降落点的直观视觉信息,辅助完成精准卸货与安全飞行操作。硬件连接方面,ESP32-CAM模块通过USART1接口与STM32F103C8T6单片机进行通信,TXD引脚连接单片机的PA10(USART1_RX)引脚,RXD引脚连接单片机的PA9(USART1_TX)引脚,VCC引脚接5V电源,GND引脚接地。为保证图像传输的流畅性与稳定性,将串口波特率设置为115200bps,数据位8位,停止位1位,无校验位。考虑到模块在Wi-Fi传输模式下峰值电流可达220mA,在模块电源输入端并联了100μF电解电容与100nF陶瓷电容,用于滤除电源噪声,避免电压波动导致模块重启或传输中断。摄像头模块安装在无人机机头的下方,视角调整为向下45度,这样可以同时清晰地拍摄到货仓舱门状态和地面降落区域的情况。考虑到无人机的续航能力,摄像头模块采用按需开启的低功耗工作模式:平时模块处于深度休眠状态,功耗低于10mA;只有当操作人员通过移动终端发送视频请求时,STM32单片机才会通过串口发送唤醒指令,控制模块启动并开始采集传输图像数据;视频传输结束后,模块自动进入休眠状态,最大限度降低系统功耗。ESP32-CAM摄像头模块如图3.4所示。图3.4ESP32-CAM摄像头模块3.5NEO-6MGPS定位模块NEO-6MGPS定位模块是实现无人机导航和定位功能的核心,能够接收来自GPS卫星的信号,解算出无人机的经纬度、高度、速度和UTC时间等信息。该模块内置了高性能的GPS基带处理器,支持50个通道的卫星信号跟踪,具有灵敏度高、定位速度快、功耗低等优点。硬件连接方面,NEO-6M模块通过USART1接口与STM32单片机进行通信,TXD引脚连接单片机的RX3引脚,RXD引脚连接单片机的TX3引脚,VCC引脚接3.3V电源,GND引脚接地。GPS天线采用有源陶瓷天线,安装在无人机的顶部,远离金属部件和电子设备,以避免信号干扰。天线与模块之间采用低损耗的同轴电缆连接,确保信号的强度和质量。单片机通过串口接收NEO-6M模块输出的NMEA-0183协议数据,解析出GPRMC和GPGGA语句,从中提取出经纬度、高度和速度等信息。NEO-6MGPS定位模块如图3.5所示图3.5NEO-6MGPS定位模块3.6ML307R4G通信模块ML307R是移远通信推出的一款高性能4GCat.1模块,支持LTE-TDD和LTE-FDD双模,能够在全国范围内提供稳定的无线通信服务。该模块内置了完整的TCP/IP协议栈,支持MQTT、HTTP、FTP等多种网络协议,能够方便地对接阿里云物联网平台,实现数据的远程传输和远程控制。硬件连接方面,ML307R模块通过USART2接口与STM32单片机进行通信,TX引脚连接单片机的TX2引脚,RX引脚连接单片机的RX2引脚,VCC引脚接5V电源,GND引脚接地。模块的SIM卡插槽采用插拔式设计,方便更换SIM卡。为了保证通信的稳定性,在模块的电源输入端并联了一个100uF的电解电容和一个100nF的陶瓷电容,用于滤除电源中的噪声。同时,增加了ESD保护电路,防止静电损坏模块。ML307R4G通信模块如图3.6所示图3.6ML307R4G通信模块3.7DY-SV17F语音播放模块DY-SV17F语音播放模块是实现系统状态语音提示功能的核心,由集成式语音解码芯片、D类功率放大芯片及音频输出接口组成,能够将系统的运行状态转化为清晰可辨的语音信号输出。该模块无需额外搭建音频处理电路,支持MP3、WAV等主流音频格式,具有体积小、音质清晰、控制逻辑简单、抗干扰能力强等优点,可在无人机飞行过程中为操作人员提供直观的非视觉状态反馈,弥补远程操作时视觉信息获取的局限性,提升系统操作的便捷性与飞行安全性。硬件连接方面,DY-SV17F模块的VCC引脚接5V电源,GND引脚与系统地相连,IO2触发引脚连接至STM32F103C8T6单片机的PA8引脚。模块采用高电平脉冲触发模式,当单片机PA8引脚输出持续100ms以上的高电平时,模块自动播放指定序号的语音文件;播放完成后自动进入待机状态,等待下一次触发指令。语音文件预先存储在模块配套的TF卡中,严格按照"001.mp3"、"002.mp3"的数字序号命名,单片机通过控制触发脉冲的发送次数,实现不同语音的选择性播放。为抑制电源噪声对音频输出质量的影响,在模块电源输入端并联了100nF陶瓷电容与10μF电解电容,分别滤除高频纹波与低频干扰。本系统共预存了4条核心状态语音,分别对应"开始运输"、"已抵达目的地"、"卸货完成"和"电量不足,请及时充电"四种典型应用场景。为避免同一状态下语音重复播报,软件设计中为每条语音设置了独立的触发标志位,只有当对应状态首次触发时才会播放语音,状态解除后标志位自动复位。模块安装在无人机机身中部远离电机与螺旋桨的位置,音频输出口朝向机身下方,以减少飞行过程中气流噪声与电机电磁干扰对语音清晰度的影响。同时,通过调节模块内置的音量电位器,将语音输出音量设置为适中水平,在保证地面操作人员清晰听到的前提下,最大限度降低模块的运行功耗。DY-SV17F语音播放模块如图3.7所示。图3.7DY-SV17F语音播放模块3.8SG90舵机卸货模块SG90舵机卸货模块是实现无人机自动卸货功能的核心执行机构,由微型模拟舵机与连杆式机械传动机构组成,能够将单片机输出的PWM控制信号转化为精确的角度转动,驱动货舱舱门完成开合动作,无需人工干预即可实现货物的定点投放,是无人机自主配送流程中的关键环节。该模块具有体积小、重量轻、响应速度快、控制精度高、成本低廉等优点,能够满足小型物料配送无人机对卸货机构的轻量化与可靠性要求。硬件连接方面,SG90舵机的信号线连接至STM32F103C8T6单片机的PB0引脚,VCC引脚接5V电源,GND引脚与系统地相连。单片机通过TIM3定时器的通道3产生频率为50Hz的标准PWM信号控制舵机的转动角度:当PWM信号占空比为2.5%(高电平持续时间0.5ms)时,舵机转动至0°初始位置;当占空比为12.5%(高电平持续时间2.5ms)时,舵机转动至180°最大位置。为吸收舵机启动时的瞬时大电流,避免电源电压波动影响其他模块正常工作,在舵机电源输入端并联了100μF电解电容与100nF陶瓷电容,分别滤除低频与高频电源噪声。本系统采用连杆式翻转卸货机构设计,舵机通过不锈钢连杆与货舱底部的舱门转轴相连。当舵机处于0°初始位置时,连杆处于收缩状态,舱门紧闭,能够可靠承载最大5kg的货物;当接收到本地或远程卸货指令时,单片机输出对应占空比的PWM信号,控制舵机在0.3秒内平稳转动至180°位置,连杆推动舱门向下翻转打开至90°,货物在重力作用下自动下落完成卸货。卸货完成后延时2秒,舵机自动复位至0°位置,舱门关闭,等待下一次装载任务。安装过程中,舵机通过专用塑料支架固定在货舱侧面,确保舵机输出轴与舱门转轴保持平行,避免出现机械卡滞现象。连杆长度经过精确计算与调试,保证舱门开合角度准确且无死点。同时,在舱门转轴处加装了微型铜套,减少转动摩擦,提高机构的使用寿命与动作可靠性。软件设计中增加了卸货状态互锁机制,只有当无人机处于悬停状态且高度低于2米时,才允许执行卸货操作,防止高空卸货造成货物损坏或安全事故。SG90舵机卸货模块如图3.8所示。图3.8SG90舵机卸货模块3.9OLED显示模块OLED显示模块是系统的本地人机交互核心,用于实时呈现无人机的关键运行状态信息,为现场调试人员和操作人员提供直观、便捷的状态反馈,无需依赖远程终端即可快速掌握系统工作情况。本系统采用0.96英寸I2C接口单色OLED显示屏,分辨率为128×64像素,搭载SSD1306驱动芯片,具有自发光、对比度高、视角广、响应速度快、功耗低等优点,即使在强光照射下也能清晰显示内容,非常适合户外飞行场景下的嵌入式显示应用。硬件连接方面,OLED模块的SDA(串行数据)引脚连接至STM32F103C8T6单片机的PB14引脚,SCL(串行时钟)引脚连接至PB15引脚,VCC引脚接3.3V电源,GND引脚与系统地相连。模块内置4.7kΩ上拉电阻,无需额外添加外部元件即可正常工作。I2C总线仅需两根信号线即可实现双向数据传输,大幅节省了单片机的引脚资源,同时具有传输速度快、抗干扰能力强的特点,能够保证显示数据的稳定传输。通信速率设置为400kHz,满足系统显示更新的实时性要求。本系统设计了单一主显示界面,采用分区布局方式,从上至下依次显示货物重量、GPS纬度、GPS经度、4G网络连接状态和电池电压五项核心信息。其中,货物重量保留一位小数显示,单位为g;GPS经纬度保留六位小数显示,单位为度;网络状态根据4G模块的连接情况显示"在线"或"离线";电池电压保留一位小数显示,单位为V。显示更新周期设置为500ms,既保证了状态信息的实时性,又避免了频繁刷屏导致的闪烁问题。当电池电压低于10V时,电池电压数值会以1Hz的频率闪烁,提醒操作人员及时充电;当网络断开时,"离线"字样同样会闪烁提示。模块安装在无人机机身侧面便于观察的位置,与机身呈30°倾角,方便操作人员在地面清晰查看。安装时采用双面胶加螺丝固定的方式,减少飞行过程中振动对显示效果的影响。OLED显示屏静态显示时功耗低于10mA,对系统整体续航的影响可忽略不计。OLED显示模块如图3.9所示。图3.9OLED显示模块3.10独立按键模块独立按键模块是系统的本地控制接口,用于实现无需远程终端的基础操作功能,为现场调试、紧急干预和手动控制提供便捷途径。本地控制具有最高优先级,在远程通信中断或出现异常情况时,操作人员可通过按键直接控制系统,保障飞行安全。本系统采用三个独立轻触按键,分别命名为KEY1、KEY2和KEY3,具有结构简单、响应迅速、可靠性高的特点。硬件连接方面,三个按键均采用低电平触发方式,每个按键的一端连接至单片机的GPIO引脚,另一端接地。其中,KEY1连接至PA5引脚,功能为重量校准;KEY2连接至PA6引脚,功能为手动卸货;KEY3连接至PA7引脚,功能为系统复位。每个按键的GPIO引脚均通过10kΩ上拉电阻连接至3.3V电源,确保按键未按下时引脚保持高电平状态。为防止按键机械抖动导致的误触发,本系统采用硬件防抖与软件防抖相结合的双重防抖机制。硬件上,在每个按键两端并联一个100nF的陶瓷电容,利用电容的充放电特性滤除按键按下和松开瞬间产生的高频抖动噪声;软件上,采用状态机扫描方式实现消抖,当检测到按键电平发生变化时,延时10ms后再次读取引脚状态,只有两次读取结果一致时才确认按键动作有效,有效避免了机械抖动带来的误操作。按键功能设计如下:按下KEY1按键,系统立即执行重量传感器去皮校准操作,读取当前传感器的空载值并保存为新的零点,同时OLED显示屏显示"校准完成"提示;短按KEY2按键,舵机转动至180°打开货舱舱门执行卸货操作,再次短按KEY2,舵机复位至0°关闭舱门;短按KEY3按键,系统执行软复位操作,重新初始化所有硬件模块并恢复至初始状态;长按KEY3按键3秒以上,系统执行强制硬件复位,可在程序跑死等异常情况下快速恢复系统运行。按键安装在无人机机身顶部便于操作的位置,采用防水防尘型轻触开关,适应户外复杂环境使用。按键表面标注有清晰的功能标识,避免操作人员误操作。独立按键模块如图3.10所示。图3.10独立按键模块3.11供电电路设计供电电路是无人机系统稳定运行的基础,负责为所有硬件模块提供稳定的直流电源。本系统采用3S11.1V2200mAh锂聚合物电池作为电源,该电池具有能量密度高、放电电流大、重量轻等优点,能够为无人机提供较长的续航时间。供电电路主要由电源开关、过流保护电路、降压电路和电压检测电路组成。电源开关采用蓝白自锁开关,用于控制整个系统的电源通断。过流保护电路采用自恢复保险丝,当电路中出现过流情况时,保险丝自动熔断,保护电路不受损坏。降压电路采用两级降压结构,第一级通过LM1117-5V线性稳压芯片将11.1V电池电压转换为5V,为4G模块、摄像头模块、舵机和语音模块供电;第二级通过XC6206线性稳压芯片将5V电压转换为3.3V,为单片机、GPS模块和OLED显示模块供电。供电电路设计如图3.11所示图3.11供电电路设计3.12本章小结本章详细介绍了物料配送无人机系统的硬件设计,分别阐述了STM32最小系统、重量传感模块、摄像头模块、GPS定位模块、4G通信模块、语音播放模块、舵机卸货模块、OLED显示模块、独立按键模块和供电电路的设计原理、电路连接方式和设计要点。所有硬件模块都经过了单独的调试,能够正常工作,为系统的软件设计和整体集成奠定了坚实的基础。4系统的软件设计4.1开发环境介绍本系统的软件开发采用Keil5MDK集成开发环境,该环境是ARM公司专为ARMCortex-M系列微控制器设计的,集成了项目管理、代码编辑、编译链接、下载调试等多种功能,是目前嵌入式开发领域最常用的工具之一。Keil5支持多种ARM架构的处理器,具有编译效率高、代码优化好、调试功能强大等优点。其内置的ARMC/C++编译器能够生成高效紧凑的机器代码,最大限度地发挥单片机的性能。同时,Keil5提供了丰富的调试功能,如断点设置、单步执行、寄存器查看、内存查看等,能够帮助开发人员快速定位和解决程序中的问题。本系统采用STM32CubeMX工具进行初始化代码的生成,通过图形化界面配置单片机的时钟、外设和引脚,自动生成初始化代码,大大提高了开发效率。生成的初始化代码导入到Keil5中后,在此基础上编写各功能模块的驱动程序和系统的整体控制逻辑。所有代码都采用标准C语言编写,遵循模块化设计原则,将不同的功能封装为独立的函数,提高了代码的可读性和可维护性。Keil软件界面如图4.1所示图4.1Keil软件界面4.2软件程序的设计4.2.1主程序流程设计系统的主程序流程图如图4.2所示,系统上电后,首先执行HAL_Init函数初始化HAL库,然后调用SystemClock_Config函数配置系统时钟,将系统时钟设置为72MHz。接着依次初始化GPIO、定时器、串口等外设,启动TIM1定时器中断,用于按键扫描和定时器任务调度。然后初始化OLED显示屏、HX711重量模块、SG90舵机、GPS模块、4G模块和摄像头模块,完成所有硬件的初始化工作。初始化完成后,程序进入主循环,在主循环中依次执行按键逻辑处理函数、业务处理函数、GPS数据处理函数、摄像头数据处理函数和物联网通信函数。同时,通过系统节拍计数器实现周期性任务调度,每隔10ms执行一次显示更新函数和传感器数据采集函数。这种非阻塞式的任务调度方式,能够保证系统的实时性和响应速度,避免某个任务长时间占用CPU导致其他任务无法执行。主程序流程图如图4.2所示图4.2主程序流程图4.2.2按键函数流程设计按键函数流程设计如图4.3所示,按键逻辑处理函数负责处理用户的按键输入,实现本地控制功能。函数首先调用按键扫描函数,获取当前按键的状态。按键扫描函数采用状态机的方式实现,能够准确识别按键的单击动作,同时消除按键抖动的影响。如果检测到KEY1按键单击,系统执行重量传感器去皮校准操作,读取当前传感器的空载值,并将其保存为新的零点值。如果检测到KEY2按键单击,将舵机状态标志位设置为1,控制舵机转动到180度,打开舱门执行手动卸货操作;再次按下KEY2,将舵机状态标志位设置为0,控制舵机转动到0度,关闭舱门。如果检测到KEY3按键单击,系统执行软复位操作,重新初始化所有硬件模块,恢复到初始状态。按键函数流程设计图如图4.3所示图4.3按键函数流程设计图4.2.3显示函数流程设计显示函数流程设计如下图4.4所示,显示逻辑处理函数负责更新OLED显示屏的内容,为用户提供直观的状态反馈。函数采用周期性执行的方式,每隔500ms执行一次,避免刷屏过快导致的闪烁问题。函数首先清空OLED显示屏的显存,然后根据当前显示界面标志位,显示对应的内容。本系统只有一个主显示界面,依次显示货物重量、GPS纬度、GPS经度、网络连接状态和电池电压。货物重量通过调用HX711_Get_Weight函数获取,GPS经纬度通过解析NMEA-0183协议数据获取,网络连接状态根据4G模块的连接情况显示"在线"或"离线",电池电压通过ADC采集电阻分压后的电压值计算得到。显示函数流程设计图如图4.4所示图4.4显示函数流程设计图4.2.4业务处理函数流程设计业务处理函数是系统的核心控制函数,负责处理各种业务逻辑,实现系统的主要功能。函数首先读取重量传感器的数据,判断货仓内是否有货物。如果检测到货物重量超过100g且持续2秒,并且语音播报标志位为0,则调用语音播放函数,播放"开始运输"语音,并将语音播报标志位设置为1,避免重复播报。然后检查是否有远程卸货指令。如果接收到来自阿里云平台的远程卸货指令,将舵机状态标志位设置为1,控制舵机转动打开舱门,执行卸货操作。卸货完成后,延时2秒,将舵机状态标志位设置为0,关闭舱门,并播放"卸货完成"语音。同时,函数实时监测电池电压。如果电池电压低于10V,并且低电量语音标志位为0,则播放"电量不足,请及时充电"语音,并将低电量语音标志位设置为1。如果电池电压低于9V,系统自动控制无人机返航,确保飞行安全。业务处理函数流程设计图如图4.5所示图4.5业务处理函数流程设计图4.3本章小结本章详细介绍了物料配送无人机系统的软件设计,首先介绍了系统的开发环境,然后分别阐述了主程序、按键函数、显示函数、业务处理函数的流程设计。所有软件代码结构清晰,易于理解和维护。通过软件的控制,实现了系统的各项功能,保证了系统的稳定运行。5系统的测试5.1硬件单元测试硬件单元测试是系统集成测试的基础,目的是验证每个硬件模块是否能够正常工作。测试过程中,将每个模块单独连接到单片机上,编写简单的测试程序,验证模块的功能和性能。STM32最小系统测试:利用下载器将测试程序下载至单片机中,测试GPIO口输入输出功能、定时器以及串口中断功能,观察最小系统是否能正常运行以及各个外设能否被正确初始化并正常使用;HX711重量模块测试:用标准砝码校准重量模块并进行测量实验,测量100g砝码的质量并记录,得到的结果是该模块具有良好的精度,其精度可达到±5g,线性度良好,能满足本系统对重量的要求;NEO-6MGPS模块测试:在室外空旷地区测试GPS模块定位能力,记录冷启动时间、热启动时间和定位精度,测得的结果为该模块冷启动时间为30秒左右,热启动时间为5秒左右,定位精度大约为±10米,可以较好地接收到卫星信号;ML307R4G模块测试:检测模块网络连接能力和数据发送速度,在室内外甚至农村等地段都对其进行了相关实验,结果显示该模块可以在有4G信号区域迅速接入网络并且数据上传延迟小于2秒,通讯质量较高;除此之外还有摄像头模块、语音播放模块、舵机模块、OLED显示屏模块和独立按键模块也都经过了单独测试,它们均能正常运作并且各项参数符合项目预期目标。5.2软件功能测试对软件功能进行测试主要是为了验证系统软件各项功能能否正常运行,在测试中将所有软件模块整合起来,给定多种情况,观察系统输出是否满足要求。按键功能测试:分别点击三个单独按键,判断系统能否正确执行相应操作,由结果可知,按键反应灵敏,无误操作或者漏操作现象,重量标定、手动卸货以及系统重启功能均可正常使用;显示功能测试:判断oled屏是否能正常显示出货物重量、gps经纬度、网络状况及电池电压等内容,从结果来看,显示内容清晰准确、更新迅速,无闪烁或者乱码问题;语音播报功能测试:向货舱投放不同质量物品,观察系统能否在检测到货物后发出"起航"声音,从结果看,语音触发准确、声音清晰,无误报;物联网通讯功能测试:在阿里云上查看无人机上传的信息并下达远程控制命令,测试系统能否正确接收到这些信息并且按要求执行,从结果来看,信息上传及时准确,远程控制命令也被正确执行,通讯良好。5.3实物功能测试5.3.1重量检测与语音播报功能测试将不同质量的砝码放入无人机货舱中,如50g、100g等,观察设备的表现情况。结果表明,在砝码质量小于100g情况下,设备没有任何动作;而当砝码质量大于等于100g并保持两秒以上时,设备会发出“开始运输”的声音并且OLED屏幕上显示相应的重量数值。进行了二十次试验,每次都能正常发声并且重量误差不超过±5g。见图5.1重量检测及语音播报测试5.3.2GPS定位以及显示测试在学校空旷区域对GPS进行定位测试,把无人机放在一个已知位置上,让GPS模块搜索位置信息。测试结果是:模块用时32秒完成冷启动定位,OLED屏幕上显示的经度纬度与真实位置之间的差距不超过±10米。在无人机飞行时,也能及时更新自身所在位置,刷新速率为每秒钟一次,十分平滑流畅。重量检测与语音播报功能测试如图5.1所示图5.1重量检测与语音播报功能测试5.3.2GPS定位与显示功能测试在校园开阔地进行GPS定位测试,将无人机放置在已知坐标的位置,等待GPS模块定位成功。测试结果显示,模块在32秒内完成冷启动定位,OLED显示屏显示的经纬度与实际坐标的偏差在±10m以内。在无人机飞行过程中,位置信息能够实时更新,更新频率为1Hz,显示流畅无卡顿。定位与显示功能测试如图5.2所示图5.2GPS定位与显示功能测试5.3.3系统续航与稳定性测试将无人机充满电,搭载100g货物进行连续飞行测试。测试结果显示,系统能够连续稳定飞行20分钟,飞行过程中所有功能都能正常工作,没有出现死机或通信中断的情况。飞行结束后,电池电压为9.2V,符合设计要求。系统续航与稳定性测试如图5.3所示图5.3系统续航与稳定性测试5.4本章小结本章对物料配送无人机系统进行了全面的测试,包括硬件单元测试、软件功能测试和实物功能测试。测试结果表明,系统的各项功能都能正常实现,性能指标达到了设计要求。系统运行稳定可靠,能够满足小型物料配送的基本需求。结论本文设计并实现了一款基于STM32F103C8T6的小型物料配送无人机系统,该系统集成了重量检测、GPS定位、4G远程通信、自动卸货、语音播报和实时视频传输六大核心功能。通过模块化的硬件设计和软件设计,在保证系统功能完整性的同时,最大限度地降低了开发成本和维护难度。经过全面的测试验证,系统运行稳定可靠,各项性能指标都达到了设计要求。该系统适用于校园、厂区、山区等场景下的小型紧急物资配送,能够有效解决传统地面配送模式在特定场景下的效率低、成本高的问题,为低成本无人机物流应用提供了一种可行的技术方案。当然,本系统还存在一些不足之处,需要进一步改进和完善。首先,系统的续航能力和载重能力还有待提升,可以通过优化动力系统和采用更高能量密度的电池来解决。其次,系统目前还不具备自主避障功能,只能依靠操作人员手动控制飞行,可以增加超声波或视觉避障传感器,实现无人机的自主避障飞行。最后,可以进一步完善阿里云平台的功能,增加航线规划、多机协同调度等功能,提升系统的智能化水平。参考文献晏芙蓉,李伟.四旋翼无人机控制系统的设计与研究[J].南方农机,2025,56(20):138-141+156.张浩松,梁晓琳,王议卫,等.四轴智能无人机飞行控制系统设计[J].大众科技,2024,26(04):18-22.郭瑞鑫,李加升,曾泉豪,等.无人机的多电源动力控制系统[J].电子制作,2025,33(10):8-12狄正杰,石春源,黄艺霖,等.基于VTOL货运无人机设计与仿真测试[J].机电工程技术,2025,54(10):75-78+104.梁瑞.工业无人机探测雷达信号处理器的设计[J].微型电脑应用,2025,41(07):56-59.孙兆键,周嘉豪,李振,等.电力巡检无人机野外自动找平起降平台的研发[J].农村电气化,2025,(07):15-18.王继昌,张勇鑫,赵亮.基于STM32单片机无人机质量质心测量系统研究[J].计量与测试技术,2024,50(11):19-21.刘健.基于STM32单片机的微型无人机系统设计与实现[J].数字技术与应用,2025,43(04):58-60.覃江德,岳敏,王敏涛,等.四旋翼无人机系统设计[J].工业控制计算机,2021,34(06):87-88.廖奕超,李海生,蒋金赟,等.基于MSP432的智能送货无人机的设计[J].工业控制计算机,2024,37(07):158-160.朱彦泓,李向江,黄智慧.基于C语言的无人机物流小车货物分拣系统设计[J].现代农机,2024,(02):74-77.李者,杨博.矿井巷道灾变环境信息四旋翼无人机自适应侦测技术研究[J].煤炭技术,2025,44(01):245-248.姚翠萍.基于单片机负载控制的无人机电气设备监测系统设计研究[J].科学技术创新,2024,(24):119-122.陈海峰,冯春霖,应国德,等.基于无线输电的小型无人机位置控制研究[J].控制工程,2021,28(07):1398-1408.朱彦泓,李向江,黄智慧.基于C语言的无人机物流小车货物分拣系统设计[J].现代农机,2024,(02):74-77.刘健.基于STM32单片机的微型无人机系统设计与实现[J].数字技术与应用,2025,43

温馨提示

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

评论

0/150

提交评论