2009-03-13

樂高機器人-- 雙耳NXT (NXT Robot with 2 Sound Sensors)


 一年多前,探奇曾經發表 『兩個耳朵的NXT機器人』,當時曾經想進一步研究透過聲音引導機器人,也就是讓機器人追著聲音跑,一拖又過了一年,這次看到NXT聲音感應器的文章,終於下定決心做做看。

使用探奇八號的車體,將兩個聲音感應器安裝在比較高的位置,好像機器人高舉手臂。



將燈光裝在感應器上方,可以顯示聲音感應器的狀況。



大費周章地將感應器包一下,好像聊勝於無。



於馬達已經佔了BC兩個輸出端,所以只好使用剩下的輸出端當作機器人左耳的燈光,右耳的燈光利用光源感應器來代替。只要有聲音感應,燈光就會亮起。

這台機器人的原理跟人一樣,就是『那邊聲音大就向那邊轉』。

測試時還刻意打開較遠處的收音機,作為背景,雖然不會受到干擾,不過控制者的聲音需要大一點。

為了避免聲音干擾,我作了下面的調整:

1. 在NXT-G程式中,將聲音感應器調為dBA模式,可以有效降低馬達聲音的干擾。

2. 當然我還是為聲音感應器作了『外耳』,也可以防止下方馬達運轉聲音的干擾。

3. 馬達馬力輸出調整在40%以下,讓馬達安靜一點。同時機器人也不用跑太快,不然不容易控制。

經過聲音感應器對調實驗,發現每個聲音感應器似乎有不同的靈敏度,所以這台機器人很容易有一邊耳聾的現象。

聲音感應器跟一般麥克風一樣,具有指向性,所以我將這台機器人放到桌上進行實驗,因為聲音感應器剛好與音源(我的嘴巴)的高度相同。

其實以目前的科技,可以將語音辨識系統做在小小的感應器上,再透過I2C送資料給NXT,就可以讓NXT增加語音控制的能力。不知道哪家公司願意試試看。

下面第一段影片是讓機器人在原地迴轉,面向聲音來源。



第二段影片,機器人的雙耳接收到差不多大小的聲音時會直線前進,這樣就可以讓機器人追尋聲源前進。





沒有留言:

張貼留言

探奇歡迎大家留言討論!謝謝分享你的意見。