林委鋒
“老師,今天我們要學(xué)習(xí)什么呢?”“嗯,今年春晚好看嗎?喜歡那個(gè)會(huì)跳舞的機(jī)器人阿爾法和會(huì)飛的機(jī)器人嗎?這些機(jī)器人身體上都裝了一種會(huì)動(dòng)的部件,這就是電機(jī)?!北酒谖覀冇靡环N最簡(jiǎn)單的直流減速電機(jī)來做一輛智能小車。做好以后,你可以編寫程序控制智能小車前進(jìn)、后退,還可以轉(zhuǎn)彎、跳舞哦!
智能小車所需材料如下表所示。智能小車所配的直流減速電機(jī)有多種減速比,建議選用1∶120,負(fù)載轉(zhuǎn)速在6V電壓下每分鐘100轉(zhuǎn),3V電壓下每分鐘42轉(zhuǎn),速度和扭力適中。
首先是安裝小車底盤,如圖1所示,用電烙鐵把小車的電機(jī)接頭和導(dǎo)線焊接固定,各部件裝配好后將開關(guān)、電源插頭、杜邦線和電池盒的引線焊接固定。電機(jī)接頭處的焊接要小心,時(shí)間不能太久,烙鐵頭盡量避免碰到固定電機(jī)的的透明護(hù)套。
然后安裝Arduino板和L298N驅(qū)動(dòng)板,如圖2所示。使用一塊線槽,先用鉛筆在線槽上描出安裝孔,然后用錐子和鑷子鉆孔、擴(kuò)孔,再用小螺絲把Arduino板和L298N驅(qū)動(dòng)板固定在線槽上。為方便把小車底盤的導(dǎo)線穿到線槽上方,在線槽上再開一個(gè)孔。最后把六角銅柱裝到小車底盤上,再根據(jù)銅柱的位置,在線槽上鉆孔,把線槽固定到小車上。
電機(jī)的工作電流比較大,Arduino板不能直接與電機(jī)連接,必須通過電機(jī)驅(qū)動(dòng)板來連接。L298N驅(qū)動(dòng)板的引腳功能如圖3所示。引腳可分為三組:一組是電機(jī)接口,OUT1~OUT4;第二組是電源接口,供電正極和接地;第三組是控制端,In1~I(xiàn)n4和ENA、ENB。
以電機(jī)1(連接電機(jī)1接口)為例,控制端與電機(jī)的關(guān)系如右表所示,1表示高電平,0表示低電平。從表中可看出,In1、In2控制電機(jī)的正反轉(zhuǎn)和停止,當(dāng)兩個(gè)接口的邏輯值相同時(shí)電機(jī)停止。圖3中ENA通過跳線帽連接到高電平引腳上,此時(shí)電機(jī)狀態(tài)受In1、In2控制。當(dāng)ENA接低電平時(shí),電機(jī)不能轉(zhuǎn)動(dòng)。如果拔掉跳線帽,將ENA連接到Arduino板的PWM口(帶符號(hào)~的數(shù)字口),可通過編程控制電動(dòng)機(jī)轉(zhuǎn)速。
如圖4所示,把Arduino板、L298N驅(qū)動(dòng)板、電機(jī)和電源連接起來,其中Arduino板4、5腳分別接In1、In2,6腳接ENA,7、8腳分別接In3、In4,9腳接ENB,智能小車就做好了。
打開ArduBlock軟件,編寫程序測(cè)試智能小車是否可以前進(jìn),如圖5所示。程序控制智能小車前進(jìn)5秒鐘,然后停止3秒鐘。如果智能小車的兩個(gè)輪子不能同步向前轉(zhuǎn),可通過交換電機(jī)與L298N驅(qū)動(dòng)板的連線來調(diào)整。
刪除程序中的6、9腳指令,改為“設(shè)定模擬針腳值”,數(shù)值為130~255。此時(shí)6、9腳輸出PWM信號(hào),可調(diào)整輪子的轉(zhuǎn)速,如圖6所示。
要使智能小車前進(jìn)、后退,程序又該怎么編寫呢?你也來試一試吧!