何琪辰
“老師,我們已經(jīng)有了機(jī)器人的大腦,那么怎么才能讓我的機(jī)器人動(dòng)起來呢?”“是呀,我的掃地機(jī)器人什么時(shí)候才能幫我們打掃衛(wèi)生呢?”我說道:“大家別急,先想想是什么東西能夠讓機(jī)器人動(dòng)起來的?”學(xué)生們異口同聲地回答道:“是電機(jī)?!?/p>
“對(duì),大家說得很正確,電機(jī)是把電能轉(zhuǎn)化為動(dòng)能的部件,可以讓我們的機(jī)器人在‘大腦的控制下做出各種動(dòng)作,那么什么能夠讓機(jī)器人大腦的指令傳遞給機(jī)器人身上的各個(gè)部件的?那就是連接機(jī)器人所有傳感器和執(zhí)行器的‘神經(jīng),也就是我們平時(shí)所見到的電線。”
電線種類繁多,哪一種是合適制作機(jī)器人的電線呢?電線除了粗細(xì)不同之外,有些很硬,有些卻很軟;有些能夠任意彎曲形狀,而有些則很有彈性,這取決于電線的股數(shù)。
圖1的電線是單股電線,圖2的電線為多股電線,單股電線較硬,而多股電線較軟。以往多使用焊接的方法連接電線,這樣制作機(jī)器人的效率較低?,F(xiàn)在多使用更為便捷的方法,如使用跳線與面包板組合或者杜邦線與排針組合。
跳線是一段電線,兩端有細(xì)針;面包板中間有一條槽將其分成上下兩個(gè)部分,上下對(duì)稱(圖3)。每一部分由五行數(shù)列組成。每一縱列包括5個(gè)插孔,每個(gè)插孔都是串聯(lián)的。如果將跳線插在同一列中,則是短路的,而由中間長(zhǎng)槽分開的上下兩列時(shí)則不然。如果需要將多列連接,只需用一條跳線插進(jìn)兩列中的任意一個(gè)插孔即可(圖4)。
另一種方法是用杜邦線和排針(圖5)。排針是兩邊一樣長(zhǎng)的排針,可以折下所需長(zhǎng)度的排針,插在Arduino上,這樣就可以用杜邦線去連接Arduino和傳感器了。當(dāng)然排針也可以直接插進(jìn)面包板,以更方便地連接電路。
有了機(jī)器人的神經(jīng),就可以讀取機(jī)器人大腦的信息,也可以控制機(jī)器人的各個(gè)執(zhí)行部件。在第9期的文章中,我們已經(jīng)通過程序使得Arduino的13號(hào)引腳指示燈閃爍,同樣可以用導(dǎo)線和LED將指示燈的效果轉(zhuǎn)移到面包板上。電路連接如圖6所示。
Arduino其實(shí)是微型計(jì)算機(jī),它由數(shù)字電路組成的,其數(shù)字引腳上只有0V或者5V兩種狀態(tài)。Arduino上的GND引腳表示的是0V,所以當(dāng)Arduino的13號(hào)引腳的電壓是5V時(shí), LED就會(huì)發(fā)光。但由于LED能夠承受的電壓是3V,而Arduino輸出的電壓是5V,超過了LED能夠承受的電壓,需要用一個(gè)電阻來分壓,以免LED被燒壞,因此在電路中串聯(lián)了一個(gè)1000Ω的電阻。
同樣,如果要控制一個(gè)蜂鳴器,我們只需用導(dǎo)線連接Arduino和蜂鳴器,這里選取引腳9(如圖7),然后編寫對(duì)應(yīng)的Ardublock程序(圖8)。
當(dāng)我們完成程序上傳之后,可以聽到蜂鳴器里傳出鳴叫聲,修改“delay”的參數(shù)就可以改變鳴叫的間隔時(shí)間,從而實(shí)現(xiàn)Arduino控制蜂鳴器的目的。可以注意到,在這個(gè)電路中蜂鳴器并沒有串聯(lián)電阻,這是由于我們選用蜂鳴器的額定電壓是5V,無需分壓。所以在今后制作機(jī)器人的過程中,需要仔細(xì)考慮各種電子元件的電壓,不可超過其額定范圍,不然輕則發(fā)燙燒毀電路,重則引發(fā)火災(zāi)。在下一期,我們將深入了解機(jī)器人大腦的工作方式,讓機(jī)器人的大腦真正運(yùn)轉(zhuǎn)起來。