【单片机毕业设计】【mcuclubdz-1108】智能扫地机器人的设计与实现
摘要:本文介绍了一款基于STM32F103C8T6单片机的智能扫地机器人设计方案。系统具备语音控制(干拖/湿拖/扫地模式)、障碍物检测(超声波测距)、湿度调节(水泵加湿)、按键设置和OLED显示等功能。采用模块化设计,包含输入(语音识别、超声波、湿度检测等)、中控(STM32处理)和输出(显示、继电器控制)三部分。提供原理图、PCB图及关键程序代码,展示了障碍物避障、模式切换和湿度控制的逻辑实现。
在这里插入代码片
最近设计了一个项目智能扫地机器人的设计与实现,与大家分享一下:
一、基本介绍
项目:智能扫地机器人的设计与实现
项目编号:mcuclub-dz-1108
单片机类型:STM32F103C8T6
具体功能:
从机:
1、通过语音识别控制干托、湿托、扫地的清洁模式(干托、湿托用一个电机,扫地用另一个电机);
2、监测到距离障碍物小于最小值自动控制小车停止运行;
3、监测到湿度小于最小值在湿托打开加湿(开启水泵),监测到湿度大于最大值关闭加湿;
4、通过按键切换设置阈值、切换清洁模式、启动车辆运行;
5、通过OLED显示距离、湿度和当前清洁模式;
二、32实物图
单片机型号:STM32F103C8T6
板子为绿色PCB板,两层板,厚度1.2,上下覆铜接地。元器件基本上为插针式,个别降压芯片会使用贴片式。
供电接口:TYPE-C
三、原理图
软件版本:AD2013
电路连线方式:网络标号连线方式
注意:原理图只是画出了模块的引脚图,而并不是模块的内部结构原理图
四、PCB图
由原理图导出,封装很大一部分都是作者自己绘制,不提供封装库,只提供连接好的源文件。中间有一个项目编号,隐藏在单片机底座下,插入单片机后不会看到。
两层板,上下覆铜接地。
五、系统框图
此次设计是基于STM32F103C8T6单片机的基于STM32的智能扫地机器人设计;该设计主要可以分为三部分:输入、输出和中控。中控部分采用STM32F103C8T6单片机作为主控芯片,主要是对输入进行处理然后控制输出;
输入又可以分为五部分:第一部分是语音识别检测模块,通过语音识别模块可以控制干拖,湿拖,扫地和启停;第二部分是超声波监测模块,通过此模块可以监测当前的距离值;第三部分是湿度检测模块,由此模块可以检测当前环境的湿度。第四部分是按键模块,通过按键可以设置阈值以及切换模块和控制启停;第五部分是供电电路,主要是用来对整个系统进行供电;
输出主要可以分为两个部分:第一部分是显示部分,显示当前距离,湿度和不同的模式,以及启停的状态。第二部分是继电器模块:通过继电器模块进行干拖、加湿、扫地以及车辆的运行;
六、软件设计流程

七、部分程序展示
软件版本:keil5
逻辑程序和驱动程序分开,分布于main.c和其他.c文件
///**********************************
//函数名:处理函数
//传参值:无
//返回值:无
//**********************************/
void Manage_Function(void)
{
if(display_num == 0) //测量界面
{
if(flag_begin == 1) //开始驾驶 距离小于最小值关闭电机
{
if(dist_value < dist_min)
{
RELAY_DJ = 0;
}
else //否则打开电机
{
RELAY_DJ = 1;
}
}
else
{
RELAY_DJ = 0;
}
if(flag_mode == 0) //模式为0关闭继电器
{
RELAY_JS = 0;
RELAY_TD = 0;
RELAY_SD = 0;
}
else if(flag_mode == 1) //模式为1打开拖地
{
RELAY_JS = 0;
RELAY_TD = 1;
RELAY_SD = 0;
}
else if(flag_mode == 2) //模式为2打开拖地 并根据湿度打开加湿
{
RELAY_TD = 1;
RELAY_SD = 0;
if(humi_value < humi_min)
{
RELAY_JS = 1;
}
else if(humi_value > humi_max)
{
RELAY_JS = 0;
}
}
else if(flag_mode == 3) //模式为3打开扫地关闭其他继电器
{
RELAY_JS = 0;
RELAY_TD = 0;
RELAY_SD = 1;
}
}
else //设置界面
{
RELAY_DJ = 0;
RELAY_TD = 0;
RELAY_SD = 0;
RELAY_JS = 0;
}
}
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)