9、,還有對電信號放大的功能.光敏三級管的外型與一般三極管相差不大,一般光敏三極管只引出兩個極——發(fā)射極和集電極,基極不引出,管殼同樣開窗口,以便光線射入.為增大光照,基區(qū)面積做得很大,發(fā)射區(qū)較小,入射光主要被基區(qū)吸收.工作時集電結(jié)反偏,發(fā)射結(jié)正偏.在無光照時管子流過的電流為暗電流Iceo=(1+β)Icbo(很小),比一般三極管的穿透電流還小;當有光照時,激發(fā)大量的電子-空穴對,使得基極產(chǎn)生的電流Ib增大,此刻流過管子的電流稱為光電流。集電極Ic=(1+β)Ib。可見光電三極管要比光電二極管具有更高的靈敏度。
光電傳感器在一般情況下,有三部分構(gòu)成,它們分為:發(fā)送器、接收器和檢測電路。如圖3:
10、
圖3:光電傳感器原理圖
發(fā)送器對準目標發(fā)射光束,發(fā)射的光束一般來源于半導體光源,發(fā)光二極管(LED)、激光二極管及紅外發(fā)射二極管。光束不間斷地發(fā)射,或者改變脈沖寬度。接收器有光電二極管、光電三極管、光電池組成。在接收器的前面,裝有光學元件如透鏡和光圈等。在其后面是檢測電路,它能濾出有效信號和應用該信號。此外,光電開關(guān)的結(jié)構(gòu)元件中還有反射板和光導纖維。三角反射板是結(jié)構(gòu)牢固的反射裝置。它由很小的三角錐體反射材料組成,能夠使光束準確地從反射板中返回,具有實用意義。它可以在與光軸0到25的范圍改變反射角,使光束幾乎是從一根發(fā)射線,經(jīng)過反射后,還是從這根反射線返回。
1.2.7.2光電傳感器的
11、分類
⑴槽型光電傳感器
把一個光發(fā)射器和一個接收器面對面地裝在一個槽的兩側(cè)的是槽光電傳感器。發(fā)光器能發(fā)出紅外光或可見光,在無阻情況下光接收器能收到光。但當被檢測物體從槽中通過時,光被遮擋,光電開關(guān)便動作。輸出一個開關(guān)控制信號,切斷或接通負載電流,從而完成一次控制動作。槽形開關(guān)的檢測距離因為受整體結(jié)構(gòu)的限制一般只有幾厘米。
⑵對射型光電傳感器
若把發(fā)光器和收光器分離開,就可使檢測距離加大。由一個發(fā)光器和一個收光器組成的光電開關(guān)就稱為對射分離式光電開關(guān),簡稱對射式光電開關(guān)。它的檢測距離可達幾米乃至幾十米。使用時把發(fā)光器和收光器分別裝在檢測物通過路徑的兩側(cè),檢測物通過時阻擋光路,收光器就動作
12、輸出一個開關(guān)控制信號。
⑶反光板型光電開關(guān)
把發(fā)光器和收光器裝入同一個裝置內(nèi),在它的前方裝一塊反光板,利用反射原理完成光電控制作用的稱為反光板反射式(或反射鏡反射式)光電開關(guān)。正常情況下,發(fā)光器發(fā)出的光被反光板反射回來被收光器收到;一旦光路被檢測物擋住,收光器收不到光時,光電開關(guān)就動作,輸出一個開關(guān)控制信號。
⑷擴散反射型光電開關(guān)
它的檢測頭里也裝有一個發(fā)光器和一個收光器,但前方?jīng)]有反光板。正常情況下發(fā)光器發(fā)出的光收光器是找不到的。當檢測物通過時擋住了光,并把光部分反射回來,收光器就收到光信號,輸出一個開關(guān)信號。
1.2.7.3光電傳感器的特性曲線
事實上,紅外光電傳感器特性并不是
13、簡單的白區(qū)高電壓,黑線低電壓,其電壓大小與傳感器距離黑色路徑標記線的水平距離有定量關(guān)系:離黑線越近,電壓越低,離黑線越遠,則電壓越高,具體的對應關(guān)系與光電管型號以及離地高度有關(guān),如下圖4所示:
圖4:光電傳感器的特性曲線
因此,只要根據(jù)傳感器電壓—偏移距離特性關(guān)系,即傳感器電壓上的大小就可以確定各傳感器與黑色標記線的距離,進而獲得車身相對路徑標記線的位置,得到連續(xù)分布的路徑信息。
1.2.7.4光電傳感器方案的選擇
根據(jù)光電傳感器的工作原理以及特性曲線我們初步擬訂了三種方案。
方案1:用光敏電阻組成光敏探測器。光敏電阻的阻值可以跟隨周圍環(huán)境光線的變化而變化。當光線照射到白線上面時,光
14、線反射強烈,光線照射到黑線上面時,光線反射較弱。因此光敏電阻在白線和黑線上方時,阻值會發(fā)生明顯的變化。將阻值的變化值經(jīng)過比較器就可以輸出高低電平。但是這種方案受光照影響很大,不能夠穩(wěn)定的工作。因此我們考慮其他更加穩(wěn)定的方案。
方案2:用紅外發(fā)射管和接收管自己制作光電對管尋跡傳感器。紅外發(fā)射管發(fā)出紅外線,當發(fā)出的紅外線照射到白色的平面后反射,若紅外接收管能接收到反射回的光線則檢測出白線繼而輸出低電平,若接收不到發(fā)射管發(fā)出的光線則檢測出黑線繼而輸出高電平。這樣自己制作組裝的尋跡傳感器基本能夠滿足要求,但是工作不夠穩(wěn)定,且容易受外界光線的影響,因此我們放棄了這個方案。
方案3:用TCRT5000
15、型光電對管。TCRT5000是一種反光板型光電探測器,其發(fā)射器是一個紅外發(fā)光二極管,而接收器是一個高靈敏度的光電三極管。
TCRT5000其具有如下特點:
(1)塑料透鏡可以提高靈敏度。
(2)內(nèi)置可見光過濾器能減小離散光的影響。
(3)體積小,結(jié)構(gòu)緊湊。
(4)當發(fā)光二極管發(fā)出的光反射回來時,三極管導通輸出低電平。此光電對管調(diào)理電路簡單,工作性能穩(wěn)定。
因此,我們選擇了方案3。
1.3小車尋跡的方法與原理
1.3.1紅外探測法尋跡
這里的尋跡是指小車在白色地板上尋黑線行走,通常采取的方法是紅外探測法。紅外探測法,即利用紅外線在不同顏色的物體表面具有不同的反射性質(zhì)的特點,在小
16、車行駛過程中不斷地向地面發(fā)射紅外光,當紅外光遇到白色紙時發(fā)生漫反射,反射光被裝在小車上的接收管接收;如果遇到黑線則紅外光被吸收,小車上的接收管接收不到紅外光。單片機就是否收到反射回來的紅外光為依據(jù)來確定黑線的位置和小車的行走路線。紅外探測器探測距離有限,一般最大不應超過15cm。對于發(fā)射和接收紅外線的紅外探頭,可以自己制作或直接采用集成式紅外探頭。經(jīng)過上面比較分析我們選用TCRT5000型光電對管。
1.3.2單片機如何控制尋跡
單片機控制尋跡的原理一般是分兩步走的:第一步,通過矩陣式掃描,即給光電傳感器矩陣分別輸入兩個“1”信號的行值,將輸出的4個列值信號分別存入兩個地址(如30H、31
17、H)的低4位,低4位從高到低分別對應著4個方向:前、后、左前、右前。然后用“F0”與這八位做“或”邏輯運算,即屏蔽掉高四位后作為本次的信號值;第二步,將本次的信號值與上一次掃描處理后的信號值進行邏輯處理,得出一個新方向,作為小車行進的方向。在這個程序里,邏輯處理內(nèi)外層得到新方向是尋跡的關(guān)鍵。按照以下3種規(guī)則執(zhí)行:前后比較規(guī)則,內(nèi)外層切換規(guī)則,優(yōu)先級規(guī)則。
(1)前后比較規(guī)則
此規(guī)則是這個算法的核心規(guī)則。它的目的是盡可能的用新探測到的黑點作為新方向。新方向F通過
(1)來求得。邏輯處理前“0”表示黑線軌跡,邏輯處理后
18、“1”表示軌跡行進方向。舉例如下:以內(nèi)層為例,設(shè)當前測得的值為,且前一次測得的值為經(jīng)過上述(1)邏輯處理后,假設(shè)結(jié)果為,則正前方是行進的新方向。
(2)內(nèi)外層切換規(guī)則
如果4個光電傳感器前后兩次所檢測的值完全一樣,則在邏輯處理后會出現(xiàn)全零,這時保持原方向行進。如果碰到曲線拐彎或者曲線斷續(xù),則有可能出現(xiàn)多個“1”即多個方向,這時可采用“內(nèi)外層切換規(guī)則”,也就是說從內(nèi)層切換到外層,啟用外層掃描值重復上述前后比較規(guī)則來進行判斷。啟用外層信號進行二次判斷能很好的處理曲線拐彎及曲線斷續(xù)等內(nèi)層處理不好的情況。但用外層信號判斷,因為其傳感器布置的間隙距離比內(nèi)層大,其控制精度不如用內(nèi)層信號判斷。
(3)
19、糾錯規(guī)則
在運行中,傳感器有可能受到干擾而發(fā)出錯誤信號導致小車走錯或迷失方向,這個時候糾錯規(guī)則能讓小車后退起到糾錯作用。所謂糾錯規(guī)則就是在走錯后出現(xiàn)了內(nèi)外層左面、前面、右面均沒有探測到軌跡線的情況下,讓小車后退,一直退到前面?zhèn)鞲衅骼镉袀鞲衅魈綔y到軌跡線為止。此時再用(1)式求得新的行進方向,從而實現(xiàn)糾錯功能。
2硬件電路的設(shè)計
2.1控制器模塊電路的設(shè)計
在控制器模塊中應用STC89C54RD+芯片,作為控制核心對光電傳感器送來的各種信號進行分析處理并作出相應的動作。其工作原理如圖5
光電傳感器組
STC89C54RD+芯片
控制直流電機
控制小車轉(zhuǎn)向
圖5:硬件框圖
20、2.2電機驅(qū)動電路的設(shè)計
直流電機驅(qū)動電路使用最廣泛的就是H型全橋式電路,這種驅(qū)動電路可以很方便實現(xiàn)直流電機的四象限運行,分別對應正轉(zhuǎn)、正轉(zhuǎn)制動、反轉(zhuǎn)、反轉(zhuǎn)制動。它的基本原理圖如圖6所示。全橋式驅(qū)動電路的4只開關(guān)管都工作在斬波狀態(tài),S1、S2為一組,S3、S4為另一組,兩組的狀態(tài)互補,一組導通則另一組必須關(guān)斷。當S1、S2導通時,S3、S4關(guān)斷,電機兩端加正向電壓,可以實現(xiàn)電機的正轉(zhuǎn)或反轉(zhuǎn)制動;當S3、S4導通時,S1、S2關(guān)斷,電機兩端為反向電壓,電機反轉(zhuǎn)或正轉(zhuǎn)制動。
圖6:H型全橋式電路原理圖
在小車動作的過程中,我們要不斷地使電機在四個象限之間切換,即在正轉(zhuǎn)和反轉(zhuǎn)之間切換,也就
21、是在S1、S2導通且S3、S4關(guān)斷,到S1、S2關(guān)斷且S3、S4導通,這兩種狀態(tài)之間轉(zhuǎn)換。在這種情況下,理論上要求兩組控制信號完全互補,但是,由于實際的開關(guān)器件都存在開通和關(guān)斷時間,絕對的互補控制邏輯必然導致上下橋臂直通短路,比如在上橋臂關(guān)斷的過程中,下橋臂導通了。這個過程可用圖7說明。
因此,為了避免直通短路且保證各個開關(guān)管動作之間的協(xié)同性和同步性,兩組控制信號在理論上要求互為倒相的邏輯關(guān)系,而實際上卻必須相差一個足夠的死區(qū)時間,這個矯正過程既可以通過硬件實現(xiàn),即在上下橋臂的兩組控制信號之間增加延時,也可以通過軟件實現(xiàn)。
由于電機在正常工作時對電源的干擾很大,如果只用一組電源時會影響
22、單片機的正常工作,所以我們選用雙電源供電。一組5V給單片機和控制電路供電,另外一組9V給電機供電。在控制部分和電機驅(qū)動部分之間用光耦隔開,以免影響控制部分電源的品質(zhì)。
2.3 PWM控制調(diào)速
PWM(脈沖寬度調(diào)制)控制,通常配合橋式驅(qū)動電路實現(xiàn)直流電機調(diào)速,非常簡單,且調(diào)速范圍大。它的原理就是直流斬波原理,如圖6所示。若S3、S4關(guān)斷,S1、S2受PWM控制。假設(shè)高電平導通,忽略開關(guān)管損耗,則在一個周期內(nèi)的導通時間為t,周期為T,波形如圖8所示,則電機兩端的平均電壓為:U=Vcc*t/T=α*Vcc ,其中,α=t/T稱為占空比,Vcc為電源電壓(電源電壓減去兩個開關(guān)管的飽和壓降)。
23、
圖8:PWM控制波形圖
電機的轉(zhuǎn)速與電機兩端的電壓成比例,而電機兩端的電壓與控制波形的占空比成正比,因此電機的速度與占空比成比例,占空比越大,電機轉(zhuǎn)得越快,當占空比α=1時,電機轉(zhuǎn)速最大。
PWM控制波形的實現(xiàn)可以通過模擬電路或數(shù)字電路實現(xiàn),例如用555搭成的觸發(fā)電路,但是這種電路的占空比不能自動調(diào)節(jié),不能用于自動控制小車的調(diào)速。而目前使用的大多數(shù)單片機都可以直接輸出這種PWM波形,或通過時序模擬輸出,最適合小車的調(diào)速,我們系統(tǒng)采用的STC89C54RD+芯片,通過改變PWM波形來改變占空比,從而控制電機調(diào)速。
在實際制作過程中,我們認為控制信號的頻率不需要太高,一般在40
24、0Hz以下為宜,占空比16級調(diào)節(jié)也完全可以滿足調(diào)速要求,并且在小車行進的過程中,占空比不應該太高,在直線前進和轉(zhuǎn)彎的時候應該區(qū)別對待。若車速太快,則在轉(zhuǎn)彎的時候,方向不易控制;而車速太慢,則很浪費時間。這時圖8可以根據(jù)具體情況慢慢調(diào)節(jié)。我們經(jīng)過調(diào)試將小車驅(qū)動信號的占空比設(shè)為8/16以下。
2.4光電傳感器的電路設(shè)計與安裝
2.4.1光電傳感器電路的設(shè)計
根據(jù)題目的要求,自動尋跡小車要沿著黑線運行,采用TCRT5000型光電對管進行探測。其工作電路圖如下所示,在圖9所示電路中,電阻R1,W5起限流的作用,防止TCRT5000因電壓過大燒毀。R6與R8均為上拉電阻。通過調(diào)解電阻W6可以調(diào)節(jié)比
25、較器的參考電壓,經(jīng)示波器觀察,輸出波形相當規(guī)則,可以直接供單片機查詢使用。而且經(jīng)試驗驗證給此電路供電的電池的壓降較小。因此我們選擇此電路作為我們的傳感器檢測與調(diào)理電路。
圖9光電對管檢測電路
2.4.2光電傳感器的安裝
在小車自動尋跡行走過程中,為了能精確測定黑線位置并確定小車行走的方向,需要同時在底盤裝設(shè)5個TCRT5000型光電傳感器,進行兩級方向糾正控制,提高其尋跡的可靠性。這5個TCRT5000型光電傳感器的具體安裝位置如圖10所示。圖中尋跡傳感器共安裝5個,成“一”字型排列。其中傳感器2與傳感器3為第一級方向控制傳感器,傳感器1與傳感器4
26、為第二級方向控制傳感器。小車行走時,始終保持黑線在傳感器2和傳感器3這兩個第一級傳感器之間,當小車偏離黑線時,第一級探測器一旦探測到有黑線,單片機就會按照預先編定的程序發(fā)送指令給小車的控制系統(tǒng),控制系統(tǒng)對小車路徑予以糾正。若小車回到了軌道上,即只要第5個傳感器檢測到黑線,其他4個傳感器均檢測到白紙,則小車會繼續(xù)直線行駛;若小車由于慣性過大依舊偏離軌道,越出了第一級兩個探測器的探測范圍,這時第二級動作,再次對小車的運動進行糾正,使之回到正確軌道上去??梢钥闯觯诙壏较蛱綔y器實際是第一級的后備保護,從而提高了小車尋跡的可靠性。
3軟件設(shè)計
3.1系統(tǒng)程序流程圖
本系統(tǒng)的控制方案是根據(jù)傳
27、感器模塊所獲得的當前小車行駛的信息,控制直流電機驅(qū)動芯片L298N動作進行PWM調(diào)速,從而調(diào)整小車的行駛方向和速度,使小車達到自動尋跡行駛的目的。圖11為系統(tǒng)程序流程圖。
開始
進行初始化
驅(qū)動直流電機
小車自動尋跡
尋跡完成停止
圖11:系統(tǒng)程序流程圖
3.2尋跡算法流程圖
小車的路徑搜索算法是自動尋跡小車設(shè)計中的關(guān)鍵部分。此系統(tǒng)路徑搜索算法采用簡單的switch語句,根據(jù)檢測到黑線的光電傳感器的位置判斷舵機的偏轉(zhuǎn)角度,同時給出相應的速度控制信號。程序流程圖如圖12所示。
開始
角度檢測
中間的傳感器檢測到黑線
舵機不偏轉(zhuǎn),電機速度給定值最大
左邊的傳感器檢測到黑線
28、
舵機左轉(zhuǎn),角度越大,速度給定值越小
舵機右轉(zhuǎn),角度越大,速度給定值越小
經(jīng)延時修正后繼續(xù)前進
圖12:尋跡算法流程圖
3.3通過軟件避免直通短路
從前面的分析可知,橋式驅(qū)動電路中,由于開關(guān)管有開通和關(guān)斷時間,因此存在上下橋臂直通短路的問題。直通短路的存在,容易使開關(guān)管發(fā)熱,嚴重時燒毀開關(guān)管,同時也增加了開關(guān)管的能量損耗,浪費了小車寶貴的能量。死區(qū)時間的問題,只有在正轉(zhuǎn)變?yōu)榉崔D(zhuǎn)的時候才存在,而在正轉(zhuǎn)啟動或反轉(zhuǎn)啟動的時候并沒有,因此不需要修正。如果開關(guān)管的開通和關(guān)斷時間非常小,或者在硬件電路中增加延時環(huán)節(jié),都可以降低開關(guān)管的損耗和發(fā)熱。當然,通過軟件避免直通短路是
29、最好的辦法,它的操作簡單,控制靈活。通過軟件實現(xiàn)死區(qū)時間,就是在突然換向的時候,插入一個延時的環(huán)節(jié),待開關(guān)管關(guān)斷之后,再開通應該開通的開關(guān)管。圖13為利用軟件修正死區(qū)時間的流程圖,在開關(guān)管每次換向的時候,不立即進行方向的切換,而是先使開關(guān)管關(guān)斷一段時間,使其完全關(guān)斷后再換向打開另外的開關(guān)管。這個關(guān)斷時間由單片機軟件延時實現(xiàn)。
啟動驅(qū)動程序
是否換向
是否調(diào)整速度
改變占空比跳速
延時修正
換向
圖13:修正死區(qū)時間的流程圖
4系統(tǒng)功能測試
4.1測試儀器
測試使用的儀器設(shè)備如表1所示。
表1 測試使用的儀器設(shè)備
序號
名稱、型號、規(guī)格
數(shù)量
備注
1
DF
30、1731SL1ATA型直流穩(wěn)壓電源
1
無
2
TDS1002數(shù)字存儲示波器
1
無
3
CA1640P—20型函數(shù)發(fā)生器
1
無
4
FLUKE 15B型萬用表
1
精度為位
5
ZSD-803A型秒表
1
精度為
6
PC機
1
Intel Celeron 2.4G,256DDR
4.2傳感器與檢測體間距的測試
為了使光電傳感器TCRT5000能夠準確的識別行駛軌跡,必須將光電傳感器TCRT5000與行駛軌跡的距離調(diào)試到最佳位置。因此我們用萬用表測試集電極的電流大小,來尋找其與軌跡間距大小的關(guān)系,從而確定光電傳感器TCRT5000與軌跡間的最
31、佳距離。測試數(shù)據(jù)用曲線表示,如圖14所示。
圖14:集電極電流與軌跡間距的關(guān)系
于是根據(jù)集電極電流的大小與光電傳感器到被檢測黑線之間的距離d的關(guān)系圖,我們將小車上的光電傳感器TCRT5000離黑線間的距離調(diào)試為9mm左右,從而使光電傳感器TCRT5000能夠迅速準確的將檢測到的信息反饋給單片機STC89C54RD+,達到最佳的尋跡效果。
結(jié)束語
本文設(shè)計了一個小車自動尋跡控制系統(tǒng)。在硬件上,該系統(tǒng)采用STC89C54RD+單片機為控制核心,協(xié)調(diào)電源模塊、傳感器模塊及直流電機驅(qū)動控制模塊的工作;在控制算法上,采用
32、路徑搜索算法和類PI控制算法實現(xiàn)對小車的舵機轉(zhuǎn)角和直流電機轉(zhuǎn)速的控制。此外,系統(tǒng)還完成了對加長轉(zhuǎn)臂舵機的控制,實現(xiàn)了轉(zhuǎn)向伺服電機與車速的配合控制。實驗結(jié)果表明,該小車自動尋跡時路徑準確,穩(wěn)定性好,達到了我們預期的目的。
參考文獻
[1].李正軍。計算機控制系統(tǒng)。北京:機械工業(yè)出版社,2005
[2].陳懂。智能小車的多傳感器數(shù)據(jù)融合[J]。現(xiàn)代電子技術(shù),2005
[3].高峰編。單片微型計算機原理與接口技術(shù)。北京:科學出版社,2003
[4].何立民。MCS—51系列單片機應用系統(tǒng)設(shè)計。北京:北京航空航天大學出社,2003
18