楊弼堯
(西南民族大學(xué),四川成都,610000)
智能尋跡小車是一種不需要人工參與就能自動(dòng)沿著軌跡行駛的小車。它集機(jī)械、電子、計(jì)算機(jī)等技術(shù)于一體。該技術(shù)可應(yīng)于無人生產(chǎn)線、物流、倉庫等領(lǐng)域等各種領(lǐng)域,也可以作為玩具的發(fā)展對象,為中國玩具市場技術(shù)含量的缺乏進(jìn)行一定的彌補(bǔ),實(shí)現(xiàn)經(jīng)濟(jì)收益,形成商業(yè)價(jià)值。
本文設(shè)計(jì)的智能尋跡小車要求能夠在白底黑線的跑道上自動(dòng)行駛,跑道示意圖如圖1 所示。軌跡由多段直線和圓弧組成,小車在運(yùn)動(dòng)過程中需要直線行駛,轉(zhuǎn)直角彎、大彎和小彎,為實(shí)現(xiàn)自動(dòng)行駛,需要對小車的機(jī)械結(jié)構(gòu)和控制系統(tǒng)進(jìn)行設(shè)計(jì)。
圖1 小車尋跡跑到示意圖
尋跡小車為三輪小車,主要由機(jī)械系統(tǒng)和控制系統(tǒng)兩部分組成。其中機(jī)械系統(tǒng)包括底盤、車輪、電機(jī)和傳感器。由于亞克力材料具有絕緣性能優(yōu)良,質(zhì)量輕,便于加工的特點(diǎn),所以底盤采用亞克力材料。小車共三個(gè)輪子,前面兩個(gè)輪子作為驅(qū)動(dòng)輪加轉(zhuǎn)向輪,后輪為一個(gè)萬向輪,可實(shí)現(xiàn)轉(zhuǎn)向。車輪骨架采用塑料,質(zhì)量輕,強(qiáng)度合適,輪子外部用橡膠包裹,增大摩擦力。前面兩個(gè)車輪的轉(zhuǎn)動(dòng)由電動(dòng)機(jī)驅(qū)動(dòng),驅(qū)動(dòng)電機(jī)可以采用步進(jìn)電動(dòng)機(jī)也可以采用直流電機(jī)。步進(jìn)電動(dòng)機(jī)為數(shù)字量控制,控制精度高,但輸出的轉(zhuǎn)矩隨轉(zhuǎn)速的升高而下降,且在較高轉(zhuǎn)速時(shí)會(huì)急劇下降,不適用于小車等有一定速度要求的系統(tǒng)。直流電機(jī)具有轉(zhuǎn)動(dòng)力矩大,響應(yīng)快速,體積小,質(zhì)量輕,調(diào)速平滑、方便,調(diào)速范圍廣,過載能力強(qiáng),可實(shí)現(xiàn)頻繁的無級快速啟動(dòng)、制動(dòng)和反轉(zhuǎn),價(jià)格便宜的特點(diǎn),本次設(shè)計(jì)采用直流雙軸減速電機(jī)驅(qū)動(dòng)兩個(gè)驅(qū)動(dòng)輪。傳感器是用來識(shí)別跑到上的黑線的,所以采用顏色識(shí)別傳感器,為了使小車能夠識(shí)別轉(zhuǎn)不同的路徑,采用5 個(gè)顏色識(shí)別傳感器,并且按照一定的距離并行安裝在小車前面的底盤上,由于控制系統(tǒng)由STC89C52RC 單片機(jī)最小系統(tǒng)、電源模塊、直流電機(jī)驅(qū)動(dòng)模塊、傳感器模塊組成。
尋跡小車的結(jié)構(gòu)組成如圖2 所示。
圖2 尋跡小車的結(jié)構(gòu)組成
利用差速轉(zhuǎn)向原理實(shí)現(xiàn)小車左轉(zhuǎn)、右轉(zhuǎn)、直角彎、轉(zhuǎn)轉(zhuǎn)大彎、轉(zhuǎn)小彎的運(yùn)動(dòng)控制。所謂的差速,是指左右兩驅(qū)動(dòng)車輪有速度差,差速原理如圖3 所示。小車在拐彎時(shí)車輪的運(yùn)動(dòng)軌跡是圓弧,如果小車向右轉(zhuǎn)彎,圓弧的中心點(diǎn)在右側(cè),在相同的時(shí)間里,左側(cè)輪子走的弧線比右側(cè)輪子長,為了平衡這個(gè)差異,就要右邊輪子慢一點(diǎn),左邊輪子快一點(diǎn),用不同的轉(zhuǎn)速來彌補(bǔ)距離的差異。同理,小車左轉(zhuǎn)時(shí),在相同的時(shí)間里,右側(cè)輪子走的弧線比左側(cè)輪子長,就要左邊輪子慢一點(diǎn),右邊輪子快一點(diǎn)。要實(shí)現(xiàn)小車兩輪轉(zhuǎn)速的快慢,則需要控制驅(qū)動(dòng)兩個(gè)車輪轉(zhuǎn)動(dòng)的直流減速電機(jī)的轉(zhuǎn)速和方向。
圖3 差速原理
要求小車在白色地板上循黑線行走,由于黑線和白色地板對光線的反射系數(shù)不同,可以根據(jù)接收到的反射光的強(qiáng)弱來判斷“道路”。通常采取的方法是紅外探測法,即利用紅外線在不同顏色的物體表面具有不同的反射強(qiáng)度的特點(diǎn),實(shí)現(xiàn)尋跡。本次設(shè)計(jì)的智能尋跡小車采用TCRT5000 紅外線傳感器對黑色軌道進(jìn)行識(shí)別。在小車行駛過程中傳感器的紅外對管不斷向地面發(fā)射紅外光,當(dāng)紅外光遇到白色地面時(shí)發(fā)生漫反射,紅外對管接收管接收反射光;如果遇到黑線則紅外光被吸收,則紅外對管接收不到信號(hào)。紅外對管采集回來的信號(hào)通過傳感器模塊里面的LM339 比較器后輸出高或低電平,低電平為白色地面,高電平為黑色跑道,從而實(shí)現(xiàn)信號(hào)的檢測。
控制系統(tǒng)的結(jié)構(gòu)框圖如圖4 所示。控制器為單片機(jī),輸入信號(hào)為TCRT5000 紅外傳感器,控制對象為直流減速電機(jī),由于需要對電動(dòng)機(jī)的轉(zhuǎn)速和轉(zhuǎn)向進(jìn)行控制,所以在單片機(jī)和電機(jī)之間加上電動(dòng)機(jī)的驅(qū)動(dòng)模塊L298N。需要電源模塊為系統(tǒng)提供電源。
圖4 控制系統(tǒng)的結(jié)構(gòu)框圖
(1)電源模塊
小車的供電系統(tǒng)分為兩部分,一部分為系統(tǒng)給直流減速電機(jī)驅(qū)動(dòng)模塊供電,另一部分為單片機(jī)和紅外傳感器供電。為使電機(jī)不會(huì)因電壓的變化受影響,使用電壓為12V 的可重復(fù)充電18650 電池組為電動(dòng)機(jī)供電。單片機(jī)和紅外傳感器需要5V 電壓,采用LM2596S 降壓電源模塊將12V 電壓轉(zhuǎn)換5V 的穩(wěn)壓電源,為單片機(jī)和紅外傳感器供電。
(2)紅外傳感器的接口電路
為了使小車能夠?qū)崿F(xiàn)直行、向左直行、向左轉(zhuǎn)大彎、轉(zhuǎn)小彎,向右直行、向右轉(zhuǎn)大彎、轉(zhuǎn)小彎,該尋跡小車用安裝5 個(gè)TCRT5000 紅外傳感器,其中中間的3 個(gè)傳感器長度相同,兩側(cè)的2 個(gè)傳感器比中間的短,5 個(gè)傳感器并行安放,傳感器之間的距離根據(jù)黑色跑道的寬度確定。正常行駛時(shí),只有中間的傳感器在黑色跑到上方,當(dāng)小車需要向左轉(zhuǎn)彎時(shí),左側(cè)的傳感器會(huì)出現(xiàn)在黑色跑到上方,根據(jù)檢測是哪個(gè)或者哪幾個(gè)左側(cè)的傳感器在黑色跑到上方,來判斷小車是轉(zhuǎn)直角彎、小彎還是大彎。同理當(dāng)小車需要向右轉(zhuǎn)彎時(shí),右側(cè)的傳感器會(huì)出現(xiàn)在黑色跑到上方,根據(jù)檢測是哪個(gè)或者哪幾個(gè)右側(cè)的傳感器在黑色跑到上方,來判斷小車是轉(zhuǎn)直角彎、小彎還是大彎。小車行駛狀態(tài)與傳感器信號(hào)之間的關(guān)系如表1 所示。根據(jù)5 個(gè)傳感器檢測到的不同信號(hào),單片機(jī)執(zhí)行不同的子程序,實(shí)現(xiàn)小車按照軌跡行駛。
表1 傳感器與小車運(yùn)動(dòng)狀態(tài)
在設(shè)計(jì)程序時(shí),將小車的每一種運(yùn)動(dòng)狀態(tài)單獨(dú)編譯成一個(gè)子程序,當(dāng)單片機(jī)檢測到紅外傳感器輸入信號(hào)后,調(diào)用相應(yīng)的子程序即可,這樣不但可以節(jié)省了很大的程序空間,而且提高單片機(jī)的運(yùn)行速度,使小車的運(yùn)動(dòng)軌跡更精準(zhǔn)。采用TCRT5000 紅外傳感器進(jìn)行尋跡,5 個(gè)紅外傳感器的接口電路如圖5 所示。每個(gè)傳感器的輸出口分別與單片機(jī)的I/O 口相連。
圖5 紅外傳感器的接口電路
(3)電機(jī)驅(qū)動(dòng)電路
小車的兩個(gè)驅(qū)動(dòng)輪采用直流電機(jī)驅(qū)動(dòng),因?yàn)閱纹瑱C(jī)自身管腳輸出的高電平的電壓不能直接驅(qū)動(dòng)直流電機(jī)轉(zhuǎn)動(dòng),所以需要通過電機(jī)驅(qū)動(dòng)芯片來完成小車的驅(qū)動(dòng)。由于L298N 芯片驅(qū)動(dòng)能力強(qiáng)、操作方便、穩(wěn)定性好,性能優(yōu)良,能夠分時(shí)驅(qū)動(dòng)兩個(gè)直流電機(jī),并能實(shí)現(xiàn)電機(jī)轉(zhuǎn)向和速度控制,所以采用L298N 直流電機(jī)驅(qū)動(dòng)模塊,電機(jī)的驅(qū)動(dòng)電路如圖6 所示。L298N 芯片左側(cè)引腳與單片機(jī)的I/O 口相連,右側(cè)引腳與兩個(gè)直流減速電機(jī)的兩根控制線相連。
圖6 電機(jī)驅(qū)動(dòng)電路
L298N 的9、10 引腳與左側(cè)電機(jī)相連,11、12 引腳與右側(cè)電機(jī)相連,通過設(shè)置IN1、IN2、IN3、IN4 引腳的數(shù)值,實(shí)現(xiàn)小車的轉(zhuǎn)向控制。控制方式與小車運(yùn)動(dòng)狀態(tài)如表2 所示。
表2 控制方式與小車運(yùn)動(dòng)狀態(tài)
小車的轉(zhuǎn)速通過對使能端ENA、ENВ 輸出PWM 脈沖實(shí)現(xiàn)控制,改變PWM 的占空比即可實(shí)現(xiàn)對電機(jī)兩輪轉(zhuǎn)速進(jìn)行控制,從而實(shí)現(xiàn)小車沿不同軌跡運(yùn)動(dòng)。
由于AT89C52RC 單片機(jī)沒有PWM 輸出口,所以利用單片機(jī)內(nèi)部的定時(shí)計(jì)數(shù)器T0 實(shí)現(xiàn)PWM 脈沖的輸出,為了提高單片機(jī)的工作效率,定時(shí)計(jì)數(shù)器采用中斷的工作方式。通過改變定時(shí)器T0 的初值,可以實(shí)現(xiàn)P2.7 和P2.2 引腳輸出不同占空比的PWM 脈沖波形。
(4)STC89C52RC 單片機(jī)接口電路
STC89C52RC 單片機(jī)具有高速、低功耗、超強(qiáng)抗干擾的特點(diǎn),工作電壓為5V,8K 字節(jié)的ROM、512 字節(jié)的RAM,32 個(gè)通用I/O 口,3 個(gè)16 位定時(shí)器/計(jì)數(shù)器,4 路外部中斷。
單片機(jī)的P1.0~P1.4 分別與5 個(gè)紅外傳感器TCRT5000 的輸出引腳out1~out5 相連,接收紅外傳感器發(fā)出的信號(hào)。單片機(jī)的P2.2~P2.7 分別與電動(dòng)機(jī)的驅(qū)動(dòng)芯片L298N 的引腳相連,通過控制各引腳的輸出值實(shí)現(xiàn)電動(dòng)機(jī)的轉(zhuǎn)速和轉(zhuǎn)向控制,電路接線圖如圖7 所示。
圖7 單片機(jī)的接口電路
小車進(jìn)入尋跡模式后,即開始不停地掃描與紅外傳感器連接的單片機(jī)I/O 口P1.0~P1.4 的狀態(tài),一旦檢測到某個(gè)I/O 口有信號(hào)發(fā)生變化,就執(zhí)行相應(yīng)的判斷程序,把相應(yīng)的信號(hào)發(fā)送給電動(dòng)機(jī)從而糾正小車的狀態(tài)??刂葡到y(tǒng)程序流程圖如圖8 所示。
圖8 控制系統(tǒng)程序流程圖
當(dāng)所有傳感器輸出為0 時(shí),說明小車脫離運(yùn)行軌道,小車將停止運(yùn)動(dòng),當(dāng)傳感器輸出不全為零時(shí),則要判斷調(diào)用哪個(gè)應(yīng)用模塊。應(yīng)用模塊共有7 個(gè),當(dāng)中間的傳感器輸出為1,其它輸出為0 時(shí),調(diào)用直行程序模塊,當(dāng)中間和左2傳感器輸出為1,其它輸出為0 時(shí),調(diào)用向左轉(zhuǎn)直角彎程序模塊;當(dāng)只有左2 傳感器輸出為1,其它輸出為0 時(shí),調(diào)用向左轉(zhuǎn)小彎程序模塊;當(dāng)中間和左側(cè)兩個(gè)傳感器同時(shí)輸出為1,其它輸出為0 時(shí),調(diào)用向左轉(zhuǎn)大彎程序模塊;右轉(zhuǎn)彎同理。每個(gè)應(yīng)用模塊包括定時(shí)器T0 初始化函數(shù),定時(shí)器T0 中斷服務(wù)函數(shù),用于生成兩路可調(diào)的PWM。當(dāng)小車直行時(shí),兩個(gè)驅(qū)動(dòng)電機(jī)轉(zhuǎn)速相同,P2.7 和P2.2 引腳輸出占空比相同的PWM 脈沖波形;當(dāng)小車轉(zhuǎn)彎時(shí),輸出的兩路PWM 占空比不同。當(dāng)轉(zhuǎn)小彎時(shí),兩路PWM 占空比的差值小,當(dāng)轉(zhuǎn)大彎時(shí),兩路PWM 占空比差值較大,具體數(shù)值需要現(xiàn)場調(diào)試得到。
設(shè)計(jì)的智能尋跡小車通過紅外傳感器循跡模塊判斷黑線路徑,然后由STC89C52 單片機(jī)通過IO 口控制L298N驅(qū)動(dòng)模塊改變兩個(gè)直流電機(jī)的工作狀態(tài),最后實(shí)現(xiàn)小車循跡。小車具有結(jié)構(gòu)簡單,質(zhì)量輕,性能較好的特點(diǎn)。