基于ARM11的家用智能垃圾桶的设计与实现
随着人们生活水品的不断提高,在人们购买各种家具或家电时越来越重视其智能化和人性化。人们在生活中产生的生活垃圾都需用垃 圾桶放置,考虑到老人、孕妇或者残疾人,放置垃圾时存在的不便、费时、费力等问题。设计针对这些问题,提出了具有语音识别功能的智能垃圾桶设计方案,当用 户想要扔垃圾时,只要一声令下,垃圾桶就会快速准确地来到你身边。
1 系统硬件设计
系统硬件包括垃圾桶车体机械结构和硬件控制电路两个部分。其中车体机械结构为一部三轮小车车体,能按照在不同地点处用户发出的声音指令,自动行驶到用户所在 地。系统硬件电路总体结构框图如图1所示,包括电源模块、ARM最小系统、声源定位模块、语音识别模块、避障模块和电机驱动模块。
工作原理:首先通过语音识别模块识别出用户的呼叫命令,同时通过声源定位模块判断用户所处位置,再通过ARM产生驱动电机的PWM信号,利用电机驱动模块 驱动垃圾桶向声源方向行驶,并在行进过程中,利用避障模块自行避开障碍物。同时,该设计还支持用户对垃圾桶前、后、左、右行驶或打开、关闭垃圾桶盖等语音 控制。
1.1 电源模块
系统所有模块和控制器都需要+5 V的工作电压,采用锂电池进行供电,并用LM2576S-5稳压芯片将电压稳定在+5 V,然后通过稳压源LM1117-33和LM1117-18为S3C6410芯片3.3 V和1.8 V电压。
其余语音芯片UDA1341TS、拾音器的5 V供电、红外避障、直流电动机均为+5 V供电。
1.2 声源定位模块
声源定位模块主要包括拾音器构成的麦克风阵列和信号处理单元,如图2所示。
系统中麦克风阵列选用2个拾音器来实现,其监听范围为30~50 m2。由于拾音器所拾取的声音信号太小,易受环境噪声影响,因此有必要对声音信号进行预处理,通过信号调理单元的处理,使其能够满足系统要求。为满足拾音 器所得到的微弱电信号进行放大,系统采取两级放大电路。又由于A/D模块不能采集负电压信号,因此需要对放大后的电信号进行偏置,使其不出现负电压,便于 ARM采样,使其输出的误差更小。
1.3 语音识别模块
设计采用 Philips公司UDA1341TS专用的语音处理芯片,能对语音实现放大、滤波、采样、A/D或D/A转换及进行数字语音处理功能,并且支持璐总线数 据格式,与ARM芯片S3C6410内置IIS总线接口配合使用。ARM芯片上内置的IIS接口不但能够读取IIS总线上的数据,为FIFO数据提供 DMA的传输模式,而且可以同时传输和接收数据。UDA1341TS对所采集的语音信号进行采集和编码,由DTW模型算法进行模板训练,并将训练结果存储 在Flash中以便于在语音信号识别阶段读取模板。在语音信号识别阶段,将输入的语音信号经过音频数字信号编译码器UDA1341 TS处理后,通知S3C6410嵌入式Linux操作系统,与保存在Flash中的参考样本进行对比,找出最佳的声音识别效果,然后由嵌入式Linux操 作系统中的系统调用函数控制S3C6410的I/O口,指挥垃圾桶的运动。
1.4 电机驱动模块
电机驱动模块根据ARM控制器输出的控制信号驱动电机的运行。电机的驱动电路采用H桥驱动电路,如图3所示。
Q1、Q2、Q3、Q4这4个三极管组成4个桥臂,Q1和Q4组成一组,Q2和Q3组成一组,Q5控制Q2、Q3的导通与关断,Q6控制Q1和Q4的导通 与关断,而Q5、Q6由S3C6410的IO口来控制,这样就可以通过IO输出的高低电平,控制4个桥臂的导通与关断控制电机的运行状态,使之正转反转或 者停转,进而控制垃圾桶的行驶。为避免用分立元件使电路板过于复杂,在设计中使用H桥驱动L298N芯片。
1.5 避障模块
避障电路采用漫反射式光电开关进行避障。光电开关是集发射头和接收头于一体的检测开关,其工作原理是根据发射头发出的光束,被障碍物反射,接收头据此做出判 断是否有障碍物。当有光线反射回来时,输出低电平;当没有光线反射回来时,输出高电平。ARM根据接收头电平的高低做出相应控制,避免小车碰到障碍物,由 于接收管输出TTL电平,有利于ARM对信号的处理。障碍检测模块作为对外部障碍信息的采集窗口,将行进过程中障碍信息检测出来,并传递给ARM控制器进 行处理。
1.6 ARM最小系统
智能垃圾桶以三星公司的ARM微处理器 S3C6410为核心控制器,其主要作用:接收和处理收到的各种传感器信号,并通过决策后输出合适的控制信号。利用S3C6410丰富的片上外设可以方便 地采集和处理各种传感器的信号,实时控制垃圾桶的运动,同时完成与语音芯片UDA1341 TS之间的通信。
2 系统算法设计
系统软件包括声源定位算法、特定语音识别算法和自动避障算法等。
2.1 声源定位算法
针对声源定位,系统采用基于传声器阵列时延估计法来估测用户发声的方向。基于时延估计的声源定位算法分为两个部分:(1)时延估计,即计算声源到两两传声器 之间的时间差。(2)方位估计,即根据时延和传声器阵列的几何位置估计出声源的位置,其中时延估计的精度是关系到声源定位精确与否的关键因素。
- S3C6410启动模式介绍(11-28)
- S3C2440和S3C6410性能比较(11-28)
- S3C6410学习——MemoryMap(11-28)
- 搭建S3C6410嵌入式linux平台(11-28)
- ARM11(s3c6410)和ARM9(2440)的区别(11-26)
- Linux s3c6410 移植(11-23)