用AVR單片機創(chuàng)造機器生命
1 什么是機器生命
機器生命就是一個能自主生存的機器,一個自動為生存下去而奮斗的機器。對于機器生命來說,生存的含義就是不斷電,繼續(xù)運行。機器生命具有完全自主決策、自主行動、活動于未知世界、不需人類參與就能持續(xù)運行并且自我維護等特征。影片《終結(jié)者》中的天網(wǎng)就是超級機器生命。《霹靂5號》描述了一個機器人從無生命到有生命的過程。
N.維納(Norbert Wiener,1894~1964)寫《控制論》時創(chuàng)造出第一個機器生命Wiener龜,這個機器龜僅有2個電子管組成的模擬計算機,但它卻能實現(xiàn)真正的烏龜覓食、睡覺、探索、逃避等行為,其表現(xiàn)如同一個有生命的生物一樣。機器龜上面有太陽能電池,當(dāng)自身電池快用完前,機器龜樂于尋找一個光線充足的地方充電,充滿電后可能找個地方睡懶覺,或者探索未知世界,它有避免碰撞和避免到傾斜地方的趨向,我們無法預(yù)知它的行蹤,因為它不是按照程序運行的,就如同我們自己一樣。后來維納在他的機器龜上又加了一個電子管,三個電子管連接成簡單的神經(jīng)網(wǎng)絡(luò),通過對機器龜訓(xùn)練,維納通過搖鈴可控制機器龜?shù)男袨椤U缬猩飳W(xué)家訓(xùn)練狗使得狗聽到搖鈴聲后就流口水。
2 我們可以自己動手做一個機器寵物
我們今天有先進的單片機,制作一個更好的機器生命其實不難。機器生命遠比按固定程序運行的機器人好玩,就如同寵物狗比玩具狗好玩一樣。我們設(shè)想的機器生命可以是一個小型履帶式機器人,帶有太陽能板,能感受光線強弱,障礙物距離和碰撞,為了實現(xiàn)人機互動,該機器生命具有語音識別功能。試想你學(xué)習(xí)一天,回到寢室,叫一聲TONY,你的機器寵物轉(zhuǎn)身飛快跑向你,那種感覺只有寵物的創(chuàng)造者才能體會……
3 如何實現(xiàn)?如何設(shè)計電路?如何設(shè)計結(jié)構(gòu)?
這個機器生命方案采用ATmega16單片機做控制器,單片機的8路AD通道和其余24個IO接口都被使用。AVR單片機AD轉(zhuǎn)換頻率高于音頻,可以用來進行簡單的語音采集。機器生命的程序較復(fù)雜,而AVR單片機適合進行快速復(fù)雜運算。本設(shè)計的電路板上除了ATmega16單片機外,還有2個LG9110電機驅(qū)動芯片、2個LM386音頻功放芯片,和LM393電壓比較器芯片,再加上少量電阻電容和三極管,電路簡潔,適合初學(xué)者和中級愛好者動手制作。
LCD采用通用1602模塊,支持3位控制線4位數(shù)據(jù)線,如果你采用IO口復(fù)用技術(shù),可用6條線控制LCD模塊。
此方案涉及光電檢測、自動充電、語音識別、超聲波測距、鍵盤(4個碰撞開關(guān))、LCD液晶顯示、電機驅(qū)動等技術(shù),這些都是動手做簡單機器人的基本技術(shù),如果愛好者能把這個機器生命做好,那么你的電路設(shè)計、調(diào)試經(jīng)驗和編程能力都會有很大的提高。
這個機器生命的技術(shù)含量相當(dāng)于20世紀(jì)70年代國際機器人領(lǐng)域的先進水平。當(dāng)時已經(jīng)有很多非常精密和復(fù)雜的工業(yè)機器人被應(yīng)用,但這種簡單的機器人怎么能稱作先進呢?因為技術(shù)的復(fù)雜和技術(shù)的先進不是一個概念,復(fù)雜+精密不一定等于先進。先進的東西不一定復(fù)雜和精密。
A 尋光
我們可以用光電二極管來檢測光線強弱。當(dāng)然也可以用光敏電阻。將光敏電阻和一個固定電阻串聯(lián)接在電源正負極之間,光敏電阻*近正極一側(cè)。從光敏電阻和固定電阻連接點引出導(dǎo)線接到ATmega16的AD轉(zhuǎn)換輸入口。當(dāng)強光照在光敏電阻時,光敏電阻阻值變小,因此其壓降變小,而固定電阻分壓增多,引出的AD檢測電位升高,被單片機轉(zhuǎn)化為數(shù)字量后判斷光線增強。機器生命有5個光電傳感器,其中4個面向機器人前后左右四個方向,另一個指向太陽能板所面對的方向。通過編程可以讓機器人自主移動到光線最強的地方。
評論