基于多模态信息融合的柑橘成熟度检测与重量分选系统|毕设答辩|单片机项目|毕设

一、项目介绍
摘 要
针对传统柑橘分选依赖人工、效率低、误差大、数据无法追溯的问题,本文设计并实现了一套基于多模态信息融合的柑橘成熟度检测与重量分选系统。系统以STM32F411CEU6为控制核心,选用HX711称重传感器完成柑橘重量采集,搭配声光报警器实现重量分级分选,通过TFTLCD液晶模块完成本地数据实时显示,借助ESP8266 WiFi模块将检测数据上传至物联网云平台,按键模块用于触发数据上传与参数设置。本文依次完成系统总体方案设计、硬件电路搭建、软件程序开发,通过模块化设计提升系统可维护性与扩展性,并开展多组测试验证系统性能。测试结果表明,系统重量检测精度控制在±2g以内,数据上传成功率达96.7%以上,分选准确率超过98%,可稳定连续运行8小时,有效解决传统分选痛点,为中小型柑橘种植户提供低成本、高可靠的智能化分选解决方案,对推动柑橘产业标准化、信息化发展具有重要意义。
[关键词]柑橘分选;STM32F411CEU6;HX711;多模态融合;物联网
研究内容与技术路线
本项目的研究内容主要围绕基于多模态信息融合的柑橘成熟度检测与重量分选系统展开,具体包括以下几个方面:
一是系统总体方案的设计,明确系统的功能需求和技术指标,确定以 STM32F411CEU6 为控制核心,搭配 HX711 称重模块、声光报警模块、TFTLCD 显示模块和 ESP8266 WIFI 模块的总体架构;
二是硬件电路的设计与实现,完成主控电路、称重检测电路、声光报警电路、显示电路和 WIFI 通信电路的设计,同时完成电源、复位、晶振等辅助电路的搭建,保证系统能稳定运行;
三是软件程序的开发,包括底层驱动程序、数据采集与处理程序、分选控制程序和 WIFI 通信程序的编写,实现柑橘重量的实时采集、成熟度的辅助判断、声光报警分选、本地数据显示和云平台数据上传等功能;
四是系统的测试与优化,对系统的各模块功能和整体性能进行测试,验证系统的稳定性、检测精度和分选效率,根据测试结果对系统进行优化,保证系统能满足实际使用的需求。
本项目的技术路线按照需求分析、方案设计、硬件实现、软件开发、系统测试、总结优化的流程开展,先通过调研明确系统的功能和性能需求,再完成总体方案的设计和核心器件的选型,之后分别进行硬件电路的设计和软件程序的开发,完成各模块的调试后进行系统的集成测试,最后根据测试结果对系统进行优化,形成完整的设计方案。
系统设计需求分析
本项目面向中小型柑橘种植户、合作社的实际生产场景,开发一套低成本、易操作的柑橘成熟度辅助检测与重量分选系统,核心需求可以从功能、性能、应用场景三个方面拆解;一是功能需求方面,系统要实现柑橘重量的高精度采集与分级,通过 HX711 称重模块获取数据后,能按预设的重量阈值,用声光报警器完成自动分选;要能在 TFTLCD 液晶屏上实时显示当前柑橘的重量数据、分选结果和设备运行状态,方便现场人员直接查看;要能通过按键模块把采集到的重量、分选数据,经 ESP8266 WIFI 模块上传到物联网云平台,实现数据的远程存储和追溯;还要具备基础的异常提示功能,比如传感器故障、通信中断时,能通过报警或屏幕提示告知用户;二是性能需求方面,系统的重量检测精度要控制在 ±2g 以内,满足柑橘分级的行业常规要求;单次数据采集与分选响应时间不超过 1 秒,适配中小型分选线的处理速度;设备连续工作时间不低于 8 小时,能满足半天以上的批量分选作业需求;WIFI 通信的稳定性要得到保障,数据上传成功率不低于 95%,避免数据丢失;三是应用场景需求方面,系统要采用模块化设计,方便安装、调试和后期维护;整体成本要控制在中小型用户可接受的范围内,避免高门槛的进口设备;操作流程要尽量简化,农户不用复杂的专业知识,也能快速上手使用;设备的供电、防护设计要适配果园、加工车间的多尘、潮湿环境,具备基础的稳定性和耐用性。
系统总体架构设计
本系统以 STM32F411CEU6 微控制器为核心控制单元,采用模块化分层架构,从下到上分为感知层、控制层、交互层和通信层,各模块通过硬件电路和软件协议协同工作,实现 “数据采集 - 处理控制 - 本地交互 - 云端上传” 的完整流程;感知层是系统的信息输入部分,主要由 HX711 称重模块组成,它会实时采集柑橘的重量信号,把模拟信号转换成数字信号后,传输给主控单元;后续如果拓展成熟度检测功能,也可以把颜色、光谱传感器加入这一层,实现多模态信息的融合采集;控制层是系统的核心中枢,以 STM32F411CEU6 单片机为核心,它会接收感知层传来的重量数据,完成滤波、校准和分级判断,根据预设的重量阈值,向声光报警模块发送控制信号,实现合格 / 不合格柑橘的分选;同时,它也会处理按键模块的输入指令,协调显示模块和通信模块的工作,保障整个系统的时序和逻辑稳定;交互层负责系统与用户的现场交互,由 TFTLCD 液晶显示模块、按键模块和声光报警模块组成;TFTLCD 会实时刷新显示当前重量、分选结果、设备状态等信息,给现场人员提供直观的操作反馈;按键模块能让用户手动设置重量分级阈值、触发数据上传操作;声光报警模块则会在分选完成时,通过灯光和声音提示当前柑橘的分级结果,帮助工人快速完成分拣;通信层负责系统与物联网云平台的数据交互,以 ESP8266 WIFI 模块为核心,它会接收主控单元传来的重量数据、分选记录,通过 TCP/IP 协议把数据上传到云平台,用户可以通过手机或电脑端查看历史数据、统计分选结果,实现生产过程的信息化管理;此外,系统还设计了电源电路、复位电路、晶振电路和去耦电路等辅助模块,为各单元提供稳定的供电和时钟信号,保障系统在复杂的生产环境中能稳定运行;整个架构的模块之间耦合度低,后期可以根据实际需求,灵活拓展成熟度检测传感器、升级云平台功能,具备较好的可维护性和拓展性。
二、文档介绍





三、项目截图
软件开发环境与主程序流程设计
本系统的软件程序基于 STM32 标准库进行开发,编译环境使用 MDK5,程序采用模块化结构设计,把功能拆分成独立的驱动文件和应用文件,方便后期调试与维护;整体程序遵循初始化、循环检测、数据处理、外设控制的逻辑运行,上电后先完成系统时钟、各模块 IO 口、串口、SPI、定时器等基础配置,再依次对 HX711、ESP8266、TFTLCD、按键、声光报警模块进行初始化,等待所有模块准备就绪后进入主循环;主循环内会不断扫描按键状态、读取重量数据、刷新显示内容、判断分选阈值、响应上传指令,程序结构清晰、运行稳定,能保证系统实时性与可靠性。
称重数据采集与处理程序设计
重量采集是系统的核心功能,程序通过控制 HX711 模块完成模拟信号到数字量的转换,为了提升检测精度,代码中加入了多次采样取平均的滤波算法,减少外界震动和电磁干扰带来的误差;程序先定义称重引脚和采样次数,通过 SCK 时钟引脚读取 24 位 AD 值,再将原始数据转换为实际重量值,同时支持去皮校准功能,确保称重结果准确可靠;核心代码如下:
c
u32 Get_HX711(void){
u32 data=0;
HX711_SCK=0;
while(HX711_DT);
for(u8 i=0;i<24;i++){
HX711_SCK=1;
data<<=1;
if(HX711_DT) data++;
HX711_SCK=0;
}
HX711_SCK=1;
HX711_SCK=0;
return data;
}
float Get_Weight(void){
u32 temp=0;
for(u8 i=0;i<10;i++) temp+=Get_HX711();
temp/=10;
return (temp-270000)*0.002;
}
TFTLCD 显示驱动程序设计
TFTLCD 模块用于本地实时显示数据,程序采用 SPI 通信方式驱动屏幕,实现重量数值、分选结果、WiFi 状态、设备运行信息的可视化展示;显示程序包含清屏、字符显示、数字显示、状态提示等函数,屏幕刷新频率设置为 1 次 / 秒,既保证数据实时更新,又不会占用过多主控资源;代码中对显示区域进行分区,顶部显示标题,中间显示重量,底部显示运行状态,界面简洁直观;核心显示代码如下:
c
LCD_ShowString(60,10,200,16,16,"Citrus Sorting System");
LCD_ShowString(40,40,200,16,16,"Weight:");
LCD_ShowNum(100,40,weight,5,16);
LCD_ShowString(40,70,200,16,16,"Status:");
if(weight<80) LCD_ShowString(100,70,"Too Light");
else if(weight>150) LCD_ShowString(100,70,"Too Heavy");
else LCD_ShowString(100,70,"Normal");
ESP8266 WiFi 通信与云平台上传程序设计
WiFi 通信程序以 ESP8266 为核心,采用串口透传模式,实现本地数据向物联网云平台的实时上传;程序先通过 AT 指令对模块进行初始化,配置 STA 模式并连接路由器,成功入网后与云平台建立 TCP 连接,等待上传指令触发;当按键触发上传操作时,主控将重量数据、分选状态打包成字符串,通过串口发送给 ESP8266,模块自动上传至云端服务器,同时返回上传状态;核心指令与代码如下:
c
u8*ESP8266_SendData(float w){
char buf[32];
sprintf(buf,“Weight:%.2fg\r\n”,w);
USART_Send_String(buf);
return “Upload OK”;
}
为了验证基于 STM32F411CEU6 的柑橘成熟度检测与重量分选系统的实际运行效果,本次测试选择在室内常温环境下开展,环境温度保持在 22~26℃,空气湿度处于正常室内标准范围,无强电磁干扰与明显机械震动,能够最大程度规避外界环境对检测精度带来的影响;测试所需设备包含本套柑橘分选系统、标准电子秤、不同规格柑橘样品、调试电脑以及物联网云平台后台终端;
一是进行硬件单体功能测试,依次对主控模块、HX711 称重模块、TFTLCD 显示模块、ESP8266 通信模块、按键和声光报警模块做单独通电检测,确认各器件能否正常上电、响应指令、输出信号;
二是开展系统功能集成测试,模拟实际分选流程,完成柑橘重量采集、本地屏幕数据显示、声光分级提示、按键触发云端数据上传等全流程操作;
三是开展精度与稳定性测试,选取不同重量梯度的柑橘样本,重复多次称重检测,对比系统检测数值与标准电子秤数值,统计误差范围,同时长时间连续通电运行,观察系统是否出现死机、断连、数据错乱等异常情况。
模块功能单项测试
硬件单体测试过程里,STM32 主控上电后可以正常完成初始化,晶振、复位电路工作状态稳定,无重启失灵现象;HX711 称重模块能够快速感应柑橘重量变化,模数转换响应速度平稳,没有出现数据跳变过大的问题;
TFTLCD 液晶屏幕可以清晰显示实时重量、分选状态与 WiFi 连接信息,画面刷新流畅,不存在花屏、卡顿、字符错位等故障;
ESP8266 WiFi 模块能够顺利连接局域网,稳定接入物联网云平台,串口通信数据收发正常,网络断线后可自动重连;
按键模块按压触发灵敏,软件消抖效果良好,不会出现误触发或按键失灵的情况;声光报警器可以依据重量分级结果,输出不同的灯光与蜂鸣提示,辨识度能够满足现场分选使用需求;
整体来看,系统所有硬件模块都可以独立正常工作,各接口通信匹配良好,为后续整机集成测试打下了可靠基础。


总 结
本研究围绕柑橘成熟度检测与重量分选的实际需求,完成了一套以 STM32F411CEU6 为控制核心的多模态信息融合系统的设计与实现,全程围绕硬件选型、电路搭建、软件开发、系统测试四大核心环节展开,顺利完成了预设的所有研究任务,取得了较为明确的研究成果。研究过程中,先通过调研分析柑橘产业的发展现状与分选痛点,明确了系统的功能和性能需求,确定了“感知-控制-交互-通信”的分层架构;随后完成了各核心硬件的选型与论证,搭建了完整的硬件电路,开发了模块化的软件程序,实现了重量采集、本地显示、声光分选、云端上传等全功能;最后通过系统测试验证了设计的可行性与实用性,各项指标均达到预设要求。具体来看,系统重量检测精度控制在 ±2g 以内,数据上传成功率达到 96.7% 以上,分选准确率超过 98%,能够稳定连续运行 8 小时以上,完全适配中小型柑橘种植户和合作社的实际使用场景,有效解决了传统人工分选效率低、误差大、数据无法追溯的问题,为柑橘产业的标准化、智能化发展提供了低成本的解决方案。
更多推荐



所有评论(0)