曹琛,常樂
(北京理工大學 計算機學院,北京 100081)
一種智能家居服務機器人的家居服務設計
曹琛,常樂
(北京理工大學計算機學院,北京100081)
提出一種智能家居服務機器人設計架構,以TMS320F2812作為主控芯片,嵌入監(jiān)聽器模塊,利用延時估計法實現聲源方位的實時檢測;嵌入語音識別模塊、電機驅動模塊和避障模塊,實現語音控制機器人的運動,并且利用超聲波傳感器使得機器人在移動過程中能夠躲避障礙物;此外,提供編程接口實現機器人對家庭成員語音指令做出相應的行動。
TMS320F2812;智能家居;機器人;語音識別;超聲波避障
隨著電子技術、嵌入式領域的快速發(fā)展,智能控制和自動化技術日益成熟,同時機器人領域也得到了突飛猛進的發(fā)展,讓機器人聽懂人話,用各種指令(如聲音、手勢)來操縱機器人進行一系列的操作,使之能與人交流,完成人們交給它們的任務是越來越多的工業(yè)、商業(yè)、家庭、乃至個人亟待發(fā)展的課題之一。
現代家居中,人們越來越注重家中各種家具布局的智能化,可操作化,合理化,科學化和人性化。提出一種包含語音、通信接口、電機、避障、信號處理等模塊的設計框架,可以設計制造出一種智能化、人性化的智能家居服務機器人。
生活中人們需要到有垃圾桶的地方去扔廢物或雜物,會帶來一些不便性,尤其是老人、孕婦和殘疾人,不便、費時、費勁等問題更為突出。針對一問題,設計出一種可幫人處理垃圾的家居服務機器人,機器人隨叫隨到,當用戶想要扔垃圾的時候,只要將指令說出來,機器人就會快速準確無誤地來到身邊。由于聲音信號在系統(tǒng)中會轉化成數字信號,對數字信號的處理結果直接決定了最終的效果,因此本系統(tǒng)還設計了一套基于DSP控制的能夠語音識別的智能機器人,實現“隨叫隨到”的控制功能。
本系統(tǒng)以TMS320F28012作為核心控制器[1],以拾音器作為聲音傳感器,采用延時估計法,實現對用戶位置的實時檢測與自行判斷;采用超聲波傳感器實現自動躲避行進過程中的障礙,準確到達用戶方位;同時,采用語音識別技術實現對用戶各種語音指示的識別,從而使得此智能家居機器人具有聲控避障功能,能“隨叫隨到”,體現了智能化,充滿了人性化。
1.1 系統(tǒng)硬件設計方案
系統(tǒng)硬件包括兩大部分:機器人機械結構和硬件控制電路?;谌嗆嚇嬙斓南敕?車體的機械結構為一部三輪小車車體,當車體上的拾音器接收到指令信號(用戶的聲音指令)時,自動地移動到用戶所在處。
系統(tǒng)總體框圖如圖1所示,包括電源設計模塊、TMS320F2812最小系統(tǒng)模塊、語音識別模塊、聲源定位模塊、電機驅動模塊、超聲波避障模塊。
圖1 系統(tǒng)總體結構圖
1.2 系統(tǒng)軟件設計方案
系統(tǒng)軟件主要包括一些算法,如特定語音識別算法、聲源定位算法和自動避障算法。
1.2.1 特定語音識別算法
針對特定語音的識別,本設計采用的是凌陽語音芯片SPCE061A,其處理過程如圖2所示。首先要濾除輸入的語音信號的噪音并進行預加重處理,提升高頻分量,然后利用線性預測系數等方法進行頻譜分析,找出語音的特征參數作為未知模式,與預先存儲的標準模式進行比對,當輸入的未知模式與標準模式的特征一致時,計算機便識別輸入的語音信號并輸出結果[7]。
圖2 SPCE061A語音識別過程
輸入的語音與標準模式的特征完全一致固然好,但是,語音含有不確定因素,完全一致的情況幾乎不存在,事實上沒有人能以絕對相同的語調把一個詞說兩遍。因此,要預先制定好打算輸入語音的特征模式與標準模式類似程度(或距離度)的算法規(guī)則,把距離最小(即最類似)的模式作為識別相應語音的方法。
1.2.2 聲源定位算法
針對聲源定位,本設計采用了基于傳聲器陣列時延估計法[4]來判斷用戶聲源的方向?;跁r延估計的聲源定位算法分為兩個部分:①時延估計,計算聲源到兩個傳聲器之間的時間差;②方位估計,根據時延和傳聲器陣列的幾何位置來估測出聲源的所在位置。第一部分即時延估計的準確度是關系到聲源定位準確與否的關鍵條件。
(1)時延估計
時延估計(Time Delay Estimation,TDE)采用廣義互相關法。假設兩傳聲器m1和m2間距為d,在沒有混響的情況下,兩傳聲器接收到的信號x1(t)和x2(t)為:
s(t)是聲源信號,α1、α2是在聲源至傳感器傳遞過程中聲波的傳播衰減系數;τ是聲源傳播至兩個傳感器延遲時間,即到達時延(TDOA);n1(t)、n2(t)為環(huán)境噪聲??梢圆捎脗鹘y(tǒng)的互相關法來估測到達時延(TDOA),互相關方程如下:
根據式(3)選取不同的權函數ψ12(ω),就可得到到達時延的不同算法,可以根據實際情況(實際聲學的環(huán)境)選擇對應的準則來選取權函數,使得Rx1x2(τ)有個較尖銳的峰值,得到較好的估測效果。Rx1x2(τ)的峰值處就是兩個傳聲器之間的時延??墒窃趯嶋H場景下,權函數的選取是一個難點。目前用得比較多的是基于互功率譜相位加權(CSP)法,其中加權函數選為。此方法的核心思想是對信號互功率譜進行歸一化處理,去除信號的幅度值,只保留信號的相位特征,對于抑制噪聲和混響,都有不錯的效果。
(2)方位估計
圖3 幾何定位法
由圖3可得:
因為AB距離和V聲音已經給出,時延(tA-tB)可由式(1)~(3)算出,再由式(4)、式(5)就可求得聲源偏移正方向的角度θ。得到方位后,就能編程控制驅動電機,驅動機器人向用戶方向移動。
1.2.3 超聲波避障算法
避障采用聲波反射原理,在測量過程中聲波信號由傳感器發(fā)出,在發(fā)射的同時開始計時,超聲波在空氣中傳播,途中碰到障礙物就立即反射回來,超聲波接收器收到反射波就立即停止計時。因此可以采用時間差測距法,根據計時器記錄的時間就可以計算出發(fā)射點距障礙物的距離S, 即S=v×Δt/2。式中,v為超聲波在空氣中的傳播速度,該值與溫度有關,在常溫下近似為340 m/s;Δt為發(fā)射、接收信號的時間差。
系統(tǒng)中在機器人前、后、左、右分別放置超聲波傳感器,可分別測量出垃圾桶與障礙物之間的距離,根據距離的遠近決定機器人的轉向。
2.1 電源模塊
本系統(tǒng)的電源模塊[5]如圖4所示。TMS320F2812芯片的核心需要+1.8 V供電,I/O口需要+3.3 V供電;凌陽語音芯片SPCE061A由5 V供電;拾音器由5 V供電;直流電動機由5 V供電。
對照組和觀察組的60例研究患者每天給予患者1枚安達芬栓(重組人干擾素α2b栓,安徽安科生物工程(集團)股份有限公司生產,國藥準字S20020103,10萬U/粒)進行治療,于月經結束后第3天開始使用,具體用藥方法為每晚睡前將藥物置入到陰道后穹窿處,1粒/次,且連續(xù)使用12次為1個治療療程,治療3個療程?;颊咴谥委熎陂g禁止盆浴、陰道沖洗、性生活。
圖4 電源模塊
2.2 聲源定位模塊
聲源定位模塊主要包括拾音器構成的麥克風陣列和信號處理單元,如圖5所示。
圖5 拾音器與DSP連接圖
麥克風陣列采用兩個拾音器(監(jiān)聽器)來實現,拾音器具有成本低、保真度高、噪聲小、功耗低、傳輸距離遠等優(yōu)點,監(jiān)聽范圍為30~50 m2。不過拾音器所拾取的聲音信號過小,在采集的時候容易受周圍環(huán)境噪聲的影響,所以有必要對聲音信號進行預處理,在設計中通過信號調理單元進行處理,使之盡可能滿足系統(tǒng)要求。本設計采取兩級放大電路,主要是為了放大拾音器采集到的微弱電信號。又因為A/D模塊無法采集負電壓,因此需要對放大后的電信號進行偏置,使其不出現負電壓,以便于后續(xù)的DSP采樣,更大程度地減小誤差。
2.3 語音識別模塊
本設計采用語音芯片SPCE061A作為語音模塊實現語音識別,相比于專業(yè)的語音處理芯片更加方便,節(jié)省了成本,且容易實現。此芯片擁有8路10位精度的ADC,其中一路為專用聲音轉換通道,并且內置麥克風放大器和自動增益控制(AGC)電路,這為實現語音識別提供了方便的硬件條件。不僅如此,SPCE061A還具有通用異步串行接口(UART)模塊,可以用來與TMS320F2812串行通信。借助于IOB端口的復用功能和UART IRQ中斷,可以同時完成UART接口的接收與發(fā)送過程。SPCE061A 與TMS320F2812通過串口進行通信,如圖6所示。
圖6 語音芯片SPCE061A與DSP的連接圖
2.4 TMS320F2812最小系統(tǒng)
智能機器人控制器是最主要的核心部分,它的主要作用在于:接收并處理各種傳感器信號,準確判斷輸入信號,并輸出合適的輸出信號,因為需要處理的數據量是很大的,所以對實時性和準確度要求很高,適合采用DSP。
本設計選用TI公司的32位定點數字信號處理器TMS320F2812為核心處理器。TMS320F2812每秒可以執(zhí)行150 MB條指令,具有強大的數據處理能力,片內存儲器資源包括:128 KB×16b POM,18 KB×16b的數據存儲器SARAM、片內128 KB×16b的Flash程序存儲器、4 KB×16b片上Boot ROM、1 KB×16b的一次可編程存儲器OTP;同時集成豐富的外設資源,主要包括模/數轉換模塊(ADC)、事件管理器模塊(EV)、串行外設接口模塊(SPI)、串行通信接口模塊(SCI)、CAN控制器模塊(eCAN)等,可以很方便地采集并處理各種傳感器信號,實時地控制機器人的移動,并完成與語音識別芯片的通信。
2.5 電機驅動模塊
電機驅動模塊根據DSP控制器的控制信號驅動電機的運行(前進、轉彎、后退等)。電機的驅動電路采用H橋驅動電路,如圖7所示[6]。
Q1、Q2、Q3、Q4這4個三極管組成4個橋臂,Q1和Q4一組,Q2和Q3一組,Q5控制Q2、Q3的導通與斷開, Q6控制Q1和Q4的導通與斷開。由于Q5、Q6由TMS320F28027的GPIO口來控制,這樣就能通過I/O輸出的高低電平來控制四個橋臂的導通與關斷,從而控制電機的運行狀態(tài)(正轉或反轉等),進而控制垃圾桶的移動方向。在設計中利用了L298N芯片驅動元件,可以有效地避免分立元件帶來的電路板過于復雜的問題。
圖7 H橋驅動電路
2.6 避障檢測模塊
障礙檢測模塊作為對外部障礙信息的采集窗口,把移動過程中障礙信息檢測出來,并交給DSP控制器進行處理。系統(tǒng)中采用的傳感器是UCM40T/R,若傳感器接收到反射的超聲波,就通知DSP控制器前方有障礙物,反之則可以行進。超聲波避障模塊與DSP控制器的連接圖如圖8所示。
圖8 超聲波避障模塊與DSP控制器的連接圖
系統(tǒng)軟件主要包括:特定聲源定位算法模塊、避障軟件模塊、數據采集模塊、SCI通信模塊。系統(tǒng)總體軟件流程圖如圖9所示。
3.1 特定聲源定位算法模塊
本系統(tǒng)的聲源定位算法主要基于傳聲器陣列時延估計法,利用A/D采樣模塊檢測不同拾音器所接收到的聲音信號,算法實現上采用的是廣義互相關法。DSP采樣得到的波形接近為正弦波,將對應采樣得到的值放入數組中保存,首先進行相關運算,得出互相關譜。為了避免誤差和雜音的干擾,進行了多次計算去除了誤差較大的值。其算法流程圖如圖10所示。
圖9 系統(tǒng)總體軟件流程圖
圖10 聲源定位算法流程圖
為了避免機器人對接收到的任何聲音都進行定位,本系統(tǒng)在定位時加入了語音識別,即只對需要的聲音進行方位判斷,其算法流程圖如圖11所示。對特定聲音進行語音識別的流程圖如圖12所示。
3.2 避障軟件模塊
避障軟件模塊采用一個計數器實現對時間的采樣。機器人上電后,首先對前進方向上的兩個超聲波上電,并在觸發(fā)其中一個超聲波的同時啟動計數器工作,每個回波返回,都會觸發(fā)一次外部中斷,在外部中斷處理程序對超聲波返回時間進行記錄。同時啟動另一個超聲波傳感器而關閉當前工作的傳感器。
實際上,在每個時刻,只有一個超聲波傳感器[8]工作,并采集到數據。當前面的兩個超聲波中的任何一個采集到的數據小于同定值(認為有障礙物的值)時,才依次打開另外3對超聲波傳感器。超聲波避障流程圖如圖13所示。
本系統(tǒng)的創(chuàng)新點介紹:
圖11 語音辨識整體框圖
圖12 特定聲音的聲源定位流程圖
①選擇TMS320F2812作為DSP控制器,充分利用其A/D采樣、GPIO、中斷、定時器SCI等功能,利用TMS320F2812超強的MCU特性(高速采樣和快速計算能力)采集并且計算出了μs級的時間差信號,從而實現了系統(tǒng)的集成化。
②本設計所采用的特定聲源定位法,可以有效地實現機器人對特定的聲音指令的判斷并定位,從而向聲源移動。
③設計的機器人能夠對特定的聲音指令進行識別,根據不同的指令做出不同的動作,從而使其人性化。
④所設計的機器人能夠在移動過程中躲避障礙(利用超聲波避障模塊),從而使其更加智能化。
⑤本設計在機器人設計范疇內,實現了機器人的聽覺(聲音定位)、認知(根據不同聲音指令做不同操作)、行走(運動)和觸覺(躲避障礙物)等功能。
用戶相對機器人有多個測試位置,其中用戶距離機器人的直線距離均大于4 m。測試結果如表1和表2所列。
表1 特定聲音定位測試結果
圖13 超聲波避障流程圖
表2 聲音識別測試結果
從上述一系列的測試可知,當機器人接收到用戶的聲音信號后,會自動地移動到用戶身邊,若移動過程中有障礙物,能夠很聰明地躲開。機器人還能識別用戶不同的聲音指令,并根據不同的指令做出不同的操作。下一步工作將對算法不斷改進,使其更加成熟。
[1]蘇奎峰,呂強,常天慶,等.TMS320X281x DSP原理及C程序開發(fā)[M].北京:北京航空航天大學出版社,2008.
[2]容茂成,祖麗楠,楊鵬.移動機器人聽覺定位技術研究[J].機器人技術與應用,2009(1).
[3]呂曉玲,張明路.基于機器人聽覺的聲源定位策略[J].傳感技術學報,2010(4).
[4]崔瑋瑋,曹志剛,魏建強.聲源定位中的時延估計技術[J].數據采集與處理,2007(3).
[5]康華光.電子技術基礎模擬部分[M].4版.北京:高等教育出版社,1999.
[6]謝自美.電子線路設計、實驗、測試[M].2版.武漢:武漢華中理工出版社,2000.
[7]李晶皎.凌陽十六位單片機原理及應用[M].北京:北京航空航天大學出版社,2003.
[8]徐科軍.傳感器與檢測技術[M].北京:電子工業(yè)出版社,2004.
(責任編輯:楊迪娜收修改稿日期:2016-05-12)
Home Service Design of Smart Home Service Robot
Cao Chen,Chang Le
(School of Computer Science,Beijing Institute of Technology,Beijing 100081,China)
In the paper,a design architecture of intelligent home service robor is proposed,which takes TMS320F2812 as the master chip, the listener module is embedded.The delay estimation method(Time Delay Estimation,TDE)is used for the real-time detection of the sound source orientation,the embedded speech recognition module,the motor drive module and the obstacle avoidance module are used for the voice control movement of the robot.The robot uses the ultrasonic sensors in the process of moving,that can avoid the obstacles. In addition,it provides a programming interface for the robot family members voice commands to make the appropriate actions.
TMS320F2812;smart home;robot;sound source recognition;ultrasonic obstacle avoidance
TP368.1
A