毕业论文
您现在的位置: 语言识别 >> 语言识别资源 >> 正文 >> 正文

STM32语音识别智能垃圾桶设计程序

来源:语言识别 时间:2022/6/19
宿爱白颠风白斑净 http://m.39.net/pf/a_4618208.html

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