1.小車控制及驅(qū)動單元的選擇
????此部分是整個小車的大腦,是整個小車運行的核心部件,起著控制小車所有運行狀態(tài)的作用。通常選用單片機作為小車的核心控制單元,本文以***凌陽公司的SPCE061A單片機為例予以介紹。SPCE061是一款擁有2K RAM、32KFlash、32 個I/O 口,并集成了AD/DA功能強大的16位微處理器,它還擁有豐富的語音處理功能,為小車的功能擴展提供了相當(dāng)大的空間。只要按照該單片機的要求對其編制程序就可以實現(xiàn)很多不同的功能。
????小車驅(qū)動電機一般利用現(xiàn)成的玩具小車上的配套直流電機。考慮到小車必須能夠前進、倒退、停止,并能靈活轉(zhuǎn)向,在左右兩輪各裝一個電機分別進行驅(qū)動。當(dāng)左輪電機轉(zhuǎn)速高于右輪電機轉(zhuǎn)速時小車向右轉(zhuǎn),反之則向左轉(zhuǎn)。為了能控制車輪的轉(zhuǎn)速,可以采取PWM調(diào)速法,即由單片機的IOB8、IOB9輸出一系列頻率固定的方波,再通過功率放大來驅(qū)動電機,在單片機中編程改變輸出方波的占空比就可以改變加到電機上的平均電壓,從而可以改變電機的轉(zhuǎn)速。左右輪兩個電機轉(zhuǎn)速的配合就可以實現(xiàn)小車的前進、倒退、轉(zhuǎn)彎等功能。
2.小車循跡的原理
????這里的循跡是指小車在白色地板上循黑線行走,通常采取的方法是紅外探測法。
????紅外探測法,即利用紅外線在不同顏色的物體表面具有不同的反射性質(zhì)的特點,在小車行駛過程中不斷地向地面發(fā)射紅外光,當(dāng)紅外光遇到白色紙質(zhì)地板時發(fā)生漫反射,反射光被裝在小車上的接收管接收;如果遇到黑線則紅外光被吸收,小車上的接收管接收不到紅外光。單片機就是否收到反射回來的紅外光為依據(jù)來確定黑線的位置和小車的行走路線。紅外探測器探測距離有限,一般最大不應(yīng)超過15cm。對于發(fā)射和接收紅外線的紅外探頭,可以自己制作或直接采用集成式紅外探頭。
(1)自制紅外探頭電路如圖1所示,紅外光的發(fā)送接收選用型號為ST168的對管。當(dāng)小車在白色地面行駛時,裝在車下的紅外發(fā)射管發(fā)射紅外線信號,經(jīng)白色反射后,被接收管接收,一旦接收管接收到信號,那么圖中光敏三極管將導(dǎo)通,比較器輸出為低電平;當(dāng)小車行駛到黑色引導(dǎo)線時,紅外線信號被黑色吸收后,光敏三極管截止,比較器輸出高電平,從而實現(xiàn)了通過紅外線檢測信號的功能。將檢測到的信號送到單片機I/O口,當(dāng)I/O口檢測到的信號為高電平時,表明紅外光被地上的黑色引導(dǎo)線吸收了,表明小車處在黑色的引導(dǎo)線上;同理,當(dāng)I/O口檢測到的信號為低電平時,表明小車行駛在白色地面上。此種方法簡單,價格便宜,靈敏度可調(diào),但是容易受到周圍環(huán)境的影響,特別是在圖1較強的日光燈下,對檢測到的信號有一定的影響。
(2)集成式紅外探頭可以采用型號為E3F-DS10C4集成斷續(xù)式光電開關(guān)探測器,它具有簡單、可靠的工作性能,只要調(diào)節(jié)探頭上的一個旋鈕就可以控制探頭的靈敏度。該探頭輸出端只有三根線(電源線、地線、信號線),只要將信號線接在單片機的I/O口,然后不停地對該I/O口進行掃描檢測,當(dāng)其為高電平時則檢測到白紙,當(dāng)為低電平時則檢測到黑線。此種探頭還能有效地防止普通光源(如日光燈等)的干擾。其缺點則是體積比較大,占用了小車有限的空間。
3.紅外探頭的安裝
????在小車具體的循跡行走過程中,為了能精確測定黑線位置并確定小車行走的方向,需要同時在底盤裝設(shè)4個紅外探測頭,進行兩級方向糾正控制,提高其循跡的可靠性。這4個紅外探頭的具體位置如圖2所示。圖中循跡傳感器共安裝4個,全部在一條直線上。其中InfraredMR與InfraredML 為第一級方向控制傳感器,InfraredSR 與InfraredSL 為第二級方向控制傳感器。小車行走時,始終保持黑線(如圖2 中所示的行走軌跡黑線)在InfraredMR和InfraredML這兩個第一級傳感器之間,當(dāng)小車偏離黑線時,第一級探測器一旦探測到有黑線,單片機就會按照預(yù)先編定的程序發(fā)送指令給小車的控 制系統(tǒng),控制系統(tǒng)再對小車路徑予以糾正。若小車回到了軌道上,即4個探測器都只檢測到白紙,則小車會繼續(xù)行走;若小車由于慣性過大依舊偏離軌道,越出了第一級兩個探測器的探測范圍,這時第二級動作,再次對小車的運動進行糾正,使之回到正確軌道上去。可以看出,第二級方向探測器實際是第一級的后備保護,從而提高了小車循跡的可靠性。
4.軟件控制
????其程序控制框圖如圖3。小車進入循跡模式后,即開始不停地掃描與探測器連接的單片機I/O口,一旦檢測到某個I/O口有信號,即進入判斷處理程序(switch),先確定4個探測器中的哪一個探測到了黑線,如果InfraredML(左面第一級傳感器)或者InfraredSL(左面第二級傳感器)探測到黑線,即小車左半部分壓到黑線,車身向右偏出,此時應(yīng)使小車向左轉(zhuǎn);如果是InfraredMR(右面第一級傳感 器)或InfraredSR(右面第二級傳感器)探測到了黑線,即車身右半部壓住黑線,小車向左偏出了軌跡,則應(yīng)使小車向右轉(zhuǎn)。在經(jīng)過了方向調(diào)整后,小車再繼續(xù)向前行走,并繼續(xù)探測黑線重復(fù)上述動作。
??? 由于第二級方向控制為第一級的后備,則兩個等級間的轉(zhuǎn)向力度必須相互配合。第二級通常是在超出第一級的控制范圍的情況下發(fā)生作用,它也是最后一層保護,所以它必須要保證小車回到正確軌跡上來,則通常使第二級轉(zhuǎn)向力度大于第一級,即level2>level1(level1、level2為小車轉(zhuǎn)向力度,其大小通過改變單片機輸出的占空比的大小來改變),具體數(shù)值在實地實驗中得到。
????專家點評:根據(jù)本文所講述的方法,我們可以較容易地做出按照一定軌跡行走的智能電動小車。但是按照該方法行走的小車如果是走直線,有可能會是蛇形前進。為了使小車能夠按軌跡行走的更流暢,可以在軟件編程時運用一些簡單的算法。例如,在對小車進行糾偏時,適當(dāng)提前停止糾偏,而不要等到小車完全不偏時再停止,以防止小車的過沖。
華中科技大學(xué)電工電子科技創(chuàng)新基地 張立 楊立
評論