AD封装库元器件库大全:封装库
资源目录:
本设计:
基于STM32F语音识别智能垃圾桶设计(程序+pdf原理图+设计说明书)
程序编译器:keil5
编程语言:C语言
设计编号:C
例程简介
通过语音识别模块ASRM08-B进行垃圾分类的语音识别,当说出具体垃圾名后,语音播报模块播放出具体垃圾分类名,
同时对应分类的垃圾桶自动开盖(舵机旋转实现),延时指定时间后,垃圾桶自动合盖(舵机旋转实现).
语音模块唤醒名字:猫头鹰
垃圾分类:
(1)可回收垃圾:旧报纸、塑料瓶、废铁、图书、坏手机、玻璃瓶、旧水管、洗衣机、电视机、电饭煲
(2)厨余垃圾:剩菜、剩饭、菜叶、果皮、隔夜饭、骨头、鸡蛋壳、茶叶渣、菜根、苹果核
(3)有害垃圾:灯泡、电池、药品、灯管、油漆桶、化妆品、老鼠药、指甲油、杀虫剂、农药
(4)其他垃圾:果壳、泥土、瓜子壳、废水、陶瓷、一次性筷子、卫生纸、烟头、餐巾纸、牙签
语音识别模块关键词设置:
01,jiubaozhi,,02,suliaoping,,03,feitie,,04,tushu,,05,huaishouji,,06,boliping,,07,jiushuiguan,,08,xiyiji,,09,dianshiji,,10,dianfanbao,,11,shengcai,,12,shengfan,,13,caiye,,14,guopi,,15,geyefan,,16,gutou,,17,jidanke,,18,chayezha,,19,caigen,,20,pingguohe,,21,dengpao,,22,dianchi,,23,yaoping,,24,dengguan,,25,youqitong,,26,huazhuangpin,,27,laoshuyao,,28,zhijiayou,,29,shachongji,,30,nongyao,,31,guoke,,32,nitu,,33,guazike,,34,feishui,,35,taoci,,36,yicixingkuaizi,,37,weishengzhi,,38,yantou,,39,canjingzhi,,40,yaqian,,41,kehuishoulaji,,42,chuyulaji,,43,youhailaji,,44,qitalaji,,45,zhurenqingfenfu,,49,maotouying,,操作及现象
1、呼唤“猫头鹰”--应答“主人请吩咐”,板载RGB红灯亮,5秒内呼唤“旧报纸”-识别成功板载RGB绿灯亮,
语音播报“可回收垃圾”,同时对应垃圾桶打开,延时5秒,垃圾桶合盖,RGB绿灯灭
2、呼唤“猫头鹰”--应答“主人请吩咐”,板载RGB红灯亮,5秒内呼唤“剩菜”-识别成功板载RGB绿灯亮,
语音播报“厨余垃圾”,同时对应垃圾桶打开,延时5秒,垃圾桶合盖,RGB绿灯灭
3、呼唤“猫头鹰”--应答“主人请吩咐”,板载RGB红灯亮,5秒内呼唤“灯泡”-识别成功板载RGB绿灯亮,
语音播报“有害垃圾”,同时对应垃圾桶打开,延时5秒,垃圾桶合盖,RGB绿灯灭
4、呼唤“猫头鹰”--应答“主人请吩咐”,板载RGB红灯亮,5秒内呼唤“瓜子壳”-识别成功板载RGB绿灯亮,
语音播报“其他垃圾”,同时对应垃圾桶打开,延时5秒,垃圾桶合盖,RGB绿灯灭
注意:
在呼叫“猫头鹰”成功后,板载RGB红灯亮,若10秒内没有说出具体垃圾名,红灯灭,需要再一次唤醒“猫头鹰”
实物图:
以下为本设计资料展示图:
原理图:
开发板原理图:
源程序(提供源文件)
以下为部分程序,完整程序可在下载链接获取:
intmain(void){HAL_Init();//复位所有外设,初始化Flash接口和系统滴答定时器SystemClock_Config();//配置系统时钟GENERAL_TIMx_Init();//通用定时器初始化并配置PWM输出功能MX_USARTx_Init();//初始化串口并配置串口中断优先级GPIO_AUDIO_Init();//初始化语音模块引脚LED_GPIO_Init();//初始化板载LED引脚HAL_TIM_Base_Start_IT(htimx2);//在中断模式下启动定时器2/*启动通道PWM输出*/HAL_TIM_PWM_Start(htimx3,TIM_CHANNEL_1);HAL_TIM_PWM_Start(htimx3,TIM_CHANNEL_2);HAL_TIM_PWM_Start(htimx3,TIM_CHANNEL_3);HAL_TIM_PWM_Start(htimx3,TIM_CHANNEL_4);/*设置舵机1-4初始角度为0°*/__HAL_TIM_SET_COMPARE(htimx3,TIM_CHANNEL_1,50);//设置舵机1初始角度--0°__HAL_TIM_SET_COMPARE(htimx3,TIM_CHANNEL_2,50);//设置舵机2初始角度--0°__HAL_TIM_SET_COMPARE(htimx3,TIM_CHANNEL_3,50);//设置舵机3初始角度--0°__HAL_TIM_SET_COMPARE(htimx3,TIM_CHANNEL_4,50);//设置舵机4初始角度--0°/*初始化舵机1-4的状态标志*/Rubbish_01_ActCode=RUBBISH_IDLE;//舵机1状态空闲Rubbish_02_ActCode=RUBBISH_IDLE;//舵机2状态空闲Rubbish_03_ActCode=RUBBISH_IDLE;//舵机3状态空闲Rubbish_04_ActCode=RUBBISH_IDLE;//舵机4状态空闲/*使能接收,进入中断回调函数*/HAL_UART_Receive_IT(husart1,aRxBuffer[0],1);HAL_UART_Receive_IT(husart2,aRxBuffer[1],1);HAL_UART_Receive_IT(husart3,aRxBuffer[2],1);/*设定语音模块播放音量等级为20*/VolumeSetting(20);while(1){Speech_Recognition();//语音识别Servo_OpenAndClose();//伺服(舵机)01-04开盖合盖动作}}
资料清单如下(提供清单所有文件):
资料下载链接:
注:仿真程序等源文件需要使用电脑打开,下载到电脑再使用解压密码进行解压!不要使用手机解压!更多资源扫文章最上面
转载请注明:http://www.0431gb208.com/sjslczl/653.html