基于ARM11的家用智能垃圾桶的設計與實現(xiàn)
隨著人們生活水品的不斷提高,在人們購買各種家具或家電時越來越重視其智能化和人性化。人們在生活中產(chǎn)生的生活垃圾都需用垃 圾桶放置,考慮到老人、孕婦或者殘疾人,放置垃圾時存在的不便、費時、費力等問題。設計針對這些問題,提出了具有語音識別功能的智能垃圾桶設計方案,當用 戶想要扔垃圾時,只要一聲令下,垃圾桶就會快速準確地來到你身邊。
1 系統(tǒng)硬件設計
系統(tǒng)硬件包括垃圾桶車體機械結構和硬件控制電路兩個部分。其中車體機械結構為一部三輪小車車體,能按照在不同地點處用戶發(fā)出的聲音指令,自動行駛到用戶所在 地。系統(tǒng)硬件電路總體結構框圖如圖1所示,包括電源模塊、ARM最小系統(tǒng)、聲源定位模塊、語音識別模塊、避障模塊和電機驅動模塊。
工作原理:首先通過語音識別模塊識別出用戶的呼叫命令,同時通過聲源定位模塊判斷用戶所處位置,再通過ARM產(chǎn)生驅動電機的PWM信號,利用電機驅動模塊 驅動垃圾桶向聲源方向行駛,并在行進過程中,利用避障模塊自行避開障礙物。同時,該設計還支持用戶對垃圾桶前、后、左、右行駛或打開、關閉垃圾桶蓋等語音 控制。
1.1 電源模塊
系統(tǒng)所有模塊和控制器都需要+5 V的工作電壓,采用鋰電池進行供電,并用LM2576S-5穩(wěn)壓芯片將電壓穩(wěn)定在+5 V,然后通過穩(wěn)壓源LM1117-33和LM1117-18為S3C6410芯片3.3 V和1.8 V電壓。
其余語音芯片UDA1341TS、拾音器的5 V供電、紅外避障、直流電動機均為+5 V供電。
1.2 聲源定位模塊
聲源定位模塊主要包括拾音器構成的麥克風陣列和信號處理單元,如圖2所示。
系統(tǒng)中麥克風陣列選用2個拾音器來實現(xiàn),其監(jiān)聽范圍為30~50 m2。由于拾音器所拾取的聲音信號太小,易受環(huán)境噪聲影響,因此有必要對聲音信號進行預處理,通過信號調(diào)理單元的處理,使其能夠滿足系統(tǒng)要求。為滿足拾音 器所得到的微弱電信號進行放大,系統(tǒng)采取兩級放大電路。又由于A/D模塊不能采集負電壓信號,因此需要對放大后的電信號進行偏置,使其不出現(xiàn)負電壓,便于 ARM采樣,使其輸出的誤差更小。
1.3 語音識別模塊
設計采用 Philips公司UDA1341TS專用的語音處理芯片,能對語音實現(xiàn)放大、濾波、采樣、A/D或D/A轉換及進行數(shù)字語音處理功能,并且支持璐總線數(shù) 據(jù)格式,與ARM芯片S3C6410內(nèi)置IIS總線接口配合使用。ARM芯片上內(nèi)置的IIS接口不但能夠讀取IIS總線上的數(shù)據(jù),為FIFO數(shù)據(jù)提供 DMA的傳輸模式,而且可以同時傳輸和接收數(shù)據(jù)。UDA1341TS對所采集的語音信號進行采集和編碼,由DTW模型算法進行模板訓練,并將訓練結果存儲 在Flash中以便于在語音信號識別階段讀取模板。在語音信號識別階段,將輸入的語音信號經(jīng)過音頻數(shù)字信號編譯碼器UDA1341 TS處理后,通知S3C6410嵌入式Linux操作系統(tǒng),與保存在Flash中的參考樣本進行對比,找出最佳的聲音識別效果,然后由嵌入式Linux操 作系統(tǒng)中的系統(tǒng)調(diào)用函數(shù)控制S3C6410的I/O口,指揮垃圾桶的運動。
1.4 電機驅動模塊
電機驅動模塊根據(jù)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個橋臂的導通與關斷控制電機的運行狀態(tài),使之正轉反轉或 者停轉,進而控制垃圾桶的行駛。為避免用分立元件使電路板過于復雜,在設計中使用H橋驅動L298N芯片。
1.5 避障模塊
避障電路采用漫反射式光電開關進行避障。光電開關是集發(fā)射頭和接收頭于一體的檢測開關,其工作原理是根據(jù)發(fā)射頭發(fā)出的光束,被障礙物反射,接收頭據(jù)此做出判 斷是否有障礙物。當有光線反射回來時,輸出低電平;當沒有光線反射回來時,輸出高電平。ARM根據(jù)接收頭電平的高低做出相應控制,避免小車碰到障礙物,由 于接收管輸出TTL電平,有利于ARM對信號的處理。障礙檢測模塊作為對外部障礙信息的采集窗口,將行進過程中障礙信息檢測出來,并傳遞給ARM控制器進 行處理。
1.6 ARM最小系統(tǒng)
智能垃圾桶以三星公司的ARM微處理器 S3C6410為核心控制器,其主要作用:接收和處理收到的各種傳感器信號,并通過決策后輸出合適的控制信號。利用S3C6410豐富的片上外設可以方便 地采集和處理各種傳感器的信號,實時控制垃圾桶的運動,同時完成與語音芯片UDA1341 TS之間的通信。
2 系統(tǒng)算法設計
系統(tǒng)軟件包括聲源定位算法、特定語音識別算法和自動避障算法等。
2.1 聲源定位算法
針對聲源定位,系統(tǒng)采用基于傳聲器陣列時延估計法來估測用戶發(fā)聲的方向。基于時延估計的聲源定位算法分為兩個部分:(1)時延估計,即計算聲源到兩兩傳聲器 之間的時間差。(2)方位估計,即根據(jù)時延和傳聲器陣列的幾何位置估計出聲源的位置,其中時延估計的精度是關系到聲源定位精確與否的關鍵因素。
(1)時延估計。時延估計采用廣義互相關法。假設兩傳聲器m1和m2間距為d,在沒有混響的情況下,兩傳聲器接受到的信號x1(t)和x2(t)為
x1(t)=α1s(t)+n1(t) (1)
x2(t)=α2s(t-τ)+n2(t) (2)
其中,s(t)為聲源信號;α1、α2是聲波從聲源到傳感器的傳播衰減系數(shù);τ是聲源傳播到兩個傳感器所需延遲時間,即到達時延。n1(t)、n2(t)為環(huán)境噪聲。這時,到達時延(TDOA)可以采用傳統(tǒng)的互相關法進行估計,這時互相關方程為
其中,是傳聲器1、2拾取信號的互相關譜;ψ12:(ω)是權函數(shù);φx1x2(ω)=ψ12(ω)Gx1x2(ω)是廣義互相關譜,這樣到達時延為。
根據(jù)上式選取不同的權函數(shù)ψ12(ω)就可得到到達時延的不同算法,它的選取可根據(jù)實際的聲學環(huán)境選擇相應的準則,使得Rx1x2(τ)有個比較尖銳的峰 值,得到最好的估計效果。Rx1x2(τ)的峰值處即為兩傳聲器間的時延。但在實際應用中,權函數(shù)的選取是一個難點。目前用得較多的是基于互功率譜相位加 權(CSP)法,其中加權函數(shù)選為ψ12=1/|Gx1x2(ω)|。這種方法通過對信號互功率譜的歸一化,去除了信號的幅度信息,只保留了信號的相位特 性,對于噪聲和混響都有一定的抑制效果。
(2)方位估計。采用幾何定位法,利用角度距離估計方位。利用兩個拾音器擺成如圖4所示,利用拾音器1和2接收到得時間差就可以檢測出聲源偏離主軸的角度θ。
由圖4可得
由于AB距離和V聲音已知,時延(tA-tB)可由式(1)~式(3)算出,再由式(4)和式(5)可求得聲源偏移正方向的角度θ,則可控制電機轉動使垃圾桶向用戶方位旋轉并前進。
光電開關相關文章:光電開關原理
評論