徐 偉 侍中樓
(江漢大學工程訓練中心 武漢 430056)
機器人研究領域一直關注如何在未知環境中利用傳感器反饋信息對目標進行檢測、識別與定位,也是移動機器人適應周邊環境、實現自身設計功能的重要體現。近些年,廣泛應用于移動機器人的視覺感知目標識別技術取得了大量的研究成果[1]。通過機器人視覺技術,可以對既定目標進行直接觀測,可以測量到較廣的范圍,可以獲得較全面的目標信息,目標圖像分辨率較高。但機器人視覺感知技術也具有一定的局限性,如光強度變化會引起結果數據諸如顏色色值、對比度的變化等等,尤其當周邊環境能見度較低時,視覺感知往往會失效。而在實際應用中,聲音信號則具有視覺信號所不具備的特點[2]和優勢,如聲音信號不具備特定方向性,聲音信號的時間分辨率高,特別是能見度較低時聲音信號可以不受限制等。所以機器人聲音聽覺感知技術的研究,可以有效改善視覺、聲納等傳感器在特定環境下應用的局限性。
人類通過聽覺系統接收并處理聲音信息,聽覺系統包含外周和中樞兩部分。聽覺外周接收器官是耳,外周聽覺系統通過聽覺纖維與中樞聽覺系統相連,對聲音進行由機械能向生物電能的轉換,以生物電能的形式傳遞到神經系統中[3]。聲音經過外耳道進入聽覺系統后被逐級感知,最終到達最頂層的聽覺大腦皮層。大腦皮層接收到聲音信號的輸入后,經過一系列處理,使生物個體可以感知聲音,包括聲音傳遞中所包含的信息[4]。聽覺外周對聲音信息的傳遞和處理極為重要的,是生物聽覺系統處理聲音信息的基礎,并且實現聲音信息由機械能向生物電能的能量轉換,哺乳類動物(包括人類)具有一對對稱的聽覺外周接收器官,可以擴大生物體聽覺的空間范圍、實現聲源的定位等功能[5]。
在本實驗研究中,利用聲音傳感器接收聲波,然后通過電子器件和程序軟件將聲音信號進行處理,從而實現仿人機器人對聲源進行定位、跟蹤的基本功能。
聲音定位(sound localization)是聽覺系統根據聽覺線索確定聲源物理位置的能力。機器人的聽覺感知技術的研究,與它的視覺感知技術研究相比,目前處于相對較弱的階段。先前機器人導航主要使用測距傳感器(如聲納),而跟蹤主要依靠視覺[6]。但是像生物個體那樣,視覺被限制在小于180°的范圍內,而聽覺能帶來360°的全方位感知。由于聲音的衍射、反射等特性,它能定位不在視覺范圍內的聲音目標,特別是能見度較低時。在多信息采集的位置環境系統中,將聽覺感知技術與視覺感知技術兩者相互結合,可以很大程度上彌補機器人的視覺局限性。近年來,機器人聽覺感知的研究已經成為機器人研究領域的重要分支。實現聽覺功能是機器人智能化程度的重要標志之一,也是實現人機對話、環境交互等功能的重要技術手段[7]。因此,研究機器人聽覺定位跟蹤聲源目標具有重要的理論意義和實際價值[8]。
為了使仿人機器人在生理習慣上更接近于人類聽覺習慣,在本實驗研究中將以心理聲學理論模型為基礎,使仿人機器人具備對人類心理聲學的部分特性。
某些人類聽覺系統的性質不能嚴格按照生理學或解剖學進行解釋,而從人類對聲音的感覺或心理聲學(psychacoustic)角度卻能很好地理解這些性質[9]。
心理聲學,是使用噪聲能量平均的方法來評價噪聲對人的影響,這就是時間平均聲級或等效連續聲級,用Leq表示,通用的有A、B、C和D四個計權聲級。A計權聲級能夠較好地反映人耳對噪聲的強度與頻率的主觀感覺,對一個連續的穩態噪聲,它是一種較好的評價方法,故亦稱等效連續A聲級L(A)eq[10]。等效連續A聲級定義為在聲場中某一定位置上,用某一段時間能量平均的方法,將間歇出現的變化的聲音以一個聲級來表示該段時間內的噪聲大小,稱這個聲級為此時間段的等效連續聲級,即:

其中,PA(t)是瞬時A計權聲壓;P0是參考聲壓(2×10-5Pa);LA是變化A聲級的瞬時值,單位分貝(dB);T是測量時間段的值[11]。
在上面公式中,聲音感知強度(perceived intensity)是聲音信號持續時間的函數,通過A計權聲級值所反映出來的。在現實生活中,輕按一下汽車喇叭不會顯得那么響亮,但持續十幾秒鐘所造成的效果卻讓聲音非常刺耳。定量的說,如果某段聲音持續時間增加十倍,比如從50ms增加到500模式,等效為在強度上增加了10dB。
如果數據符合正態分布,其累積分布在正太概率紙上為一直線,則可用下面近似公式計算:

L10、L50、L90為累積百分聲級,其定義如下。
L10為測量時間內,10%的時間超過的噪聲級,相當于噪聲的平均峰值;
L50為測量時間內,50%的時間超過的噪聲級,相當于噪聲的平均值;
L90為測量時間內,50%的時間超過的噪聲級,相當于噪聲的背景值[12]。
在本實驗系統中,將以式(2)作為程序設計的理論基礎公式。
本系統通過分布在機器人頭部的左、中、右方向上的3個采用以NE5532為核心的LY-901拾音器來對外界產生的聲音信號進行采集(如圖1),單片機根據不同信號的來源對聲音信號進行分析,該仿生機器人模仿人類并不會對任何聲音造成的反饋都去轉動頸部脖子去定位聲源,僅僅通過分析確定聲音信號的來源方向,控制機器人眼睛LED對聲音來源造成一定的反應;只有通過被動紅外傳感器對某個特定的物體(比如一個人體)所造成的聲音信號才會有特定的反應(轉動頸部),形成對聲音信號的定位。

圖1 機器人頭部的拾音器裝置
本系統所使用的單片機為Arduino Uno R3,是Arduino系列的主力開發板。該單片機芯片是AVR系列的Atmega328P,該芯片提供了如下接口:14路數字I/O接口、6路模擬輸入接口、6路PWM信號接口、1路I2C接口、1路SPI接口、1路UART接口,其內部閃存(Flash)有32KB,靜態訪問存儲器(SRAM)2KB,可擦寫存儲器(EEPROM)1KB[13~14]。
LY-901拾音器按AA類放大器原理進行設計,以NE5532芯片為核心,從而消除了拾音器由于與后級負載之間連線長短、連線上分布電容大小、負載輸入阻抗等原因而對拾音質量造成的影響。其電器參數如下:工作電壓(直流),6V~12V;頻率響 應,100Hz~5500Hz;輸 出 信 號 幅 度,2.5Vpp/-25dB;輸出阻抗600Ω。采集到的3路音頻信號進入單片機系統的數—模轉換模塊,進行模擬信號到數字信號的轉換,以進行后續的數字信號處理[15]。
機器人聽覺感知實驗電路原理圖2所示。

圖2 機器人聽覺實驗電路原理圖
仿生機器人最后完成圖如圖3所示。

圖3 機器人完成圖



在程序void setup()部分,對各硬件結構的引腳分配做了說明。其中,對常數項glanceMillis定義了一個以毫秒為單位的最小延時,一旦觸發,機器人LED眼睛會向聲源做出“瞟一眼”的動作,但不會轉動頸部做出定位聲源的動作。
在主循環程序中,在對經過時間變量current-Mills清零以前,讀入聲音傳感器和PIR傳感器的返回值,通過比較三個聲音傳感器的振幅大小差異來確定聲源的位置。
PIR傳感器(以右側PIRR為例),其邏輯是:PIRR為高電平且右邊檢測到聲音:機器人頸部向右轉動;僅僅PIRR為高電平時,頸部不轉動;PIRR為高電平且左邊檢測到聲源時,頸部不轉動。換言之,當PIR傳感器和聲音傳感器同時滿足時,機器人頸部才會轉動。
在程序中,利用心理聲學模型,使機器人能夠對更小振幅但持續時間更長的聲音做出反應。對于常量MicTriglow和MicTrighigh分別定義了與持續時間有關的觸發電平和與持續時間無關的觸發電平,當檢測到聲音振幅等于或大于由MicTrighigh定義的觸發電平時,該系統就觸發,這是機器人不考慮心理聲學關于聲音的持續時間。但如果聲音振幅大于MicTriglow且小于MicTrighigh的定義值,則機器人需要考慮心理聲學關于聲音的持續時間,即聲源的持續時間必須大于或等于常數Lowsound-Millis所限定的時間。
機器人聽覺定位跟蹤聲源系統研究是當前國際上的前沿課題。它是機器人實現智能化必不可少的一部分,是智能科學研究成果在機器人上的體現。要進一步發展仿人機器人的聲音定位及聽覺的問題或設計新的模型,還需要一個不斷改進和持續研究的過程。在本課題實驗研究中,以心理聲學模型為基礎,實現了仿生機器人聲源定位功能、聽覺的正常行為功能,特別是使機器人具有了基于心理聲學的聲源識別功能。從聽覺生理學、聽覺心理學、人工智能等專業實現跨學科領域綜合研究方面做了有效的探索研究。本文研究成果為機器人仿人生物體特性研究提供了一定的借鑒。