新型多功能智能小車的設(shè)計(jì)與應(yīng)用
摘要:介紹智能小車自動(dòng)完成設(shè)定任務(wù)的設(shè)計(jì)。本設(shè)計(jì)以玩具小坦克為車體,以單片機(jī)AT89S52為核心,利用黑白線傳感器判斷小車行駛的軌跡;利用金屬傳感器判斷軌跡中放置的鐵片;由單片機(jī)對(duì)小車狀態(tài)做出實(shí)時(shí)反應(yīng),并輸出相應(yīng)的控制指令。該系統(tǒng)通過調(diào)節(jié)PWM輸出可控制小車的前進(jìn)、后退、轉(zhuǎn)向、加速、減速等動(dòng)作;可精準(zhǔn)地完成小車沿黑色引導(dǎo)線的尋跡(斷開引導(dǎo)線亦可)、檢測(cè)鐵片個(gè)數(shù)、實(shí)時(shí)LCD顯示行駛距離、時(shí)間和行車軌跡等功能。該設(shè)計(jì)功耗小,成本低,精度較高。
關(guān)鍵詞:AT89S52K;黑白傳感器;金屬傳感器;霍爾傳感器;LCD
0 引言
人類的研究活動(dòng)已擺脫了地球生物圈的束縛而廣泛地進(jìn)入外層空間和海洋深處。對(duì)月球和太陽系其他行星的探測(cè),對(duì)太陽系以外的宇宙進(jìn)行考察,對(duì)數(shù)千米以下的海底的研究,都是目前單靠人力所不能及的。自動(dòng)控制系統(tǒng)正在代替人們完成這些任務(wù)。在戰(zhàn)場(chǎng)上的軍事活動(dòng)中,在惡劣環(huán)境條件下的生產(chǎn)勞動(dòng)中,凡不宜由人直接承擔(dān)的任務(wù),均可由自動(dòng)控制系統(tǒng)代替,如智能小車可以適應(yīng)不同環(huán)境,不受溫度、濕度等條件的影響,完成危險(xiǎn)地段、人類無法介入等特殊情況下的任務(wù)。高科技自動(dòng)控制系統(tǒng)及裝置已日益成為現(xiàn)代社會(huì)活動(dòng)中離不開的自動(dòng)智能設(shè)備。
本文設(shè)計(jì)方案以多功能的智能小車作為自動(dòng)控制系統(tǒng)的載體,以單片機(jī)AT89S52為核心;利用黑白線傳感器判斷小車行駛的軌跡,利用金屬傳感器判斷軌跡中放置的鐵片,由驅(qū)動(dòng)執(zhí)行電路完成小車的行駛,由單片機(jī)對(duì)小車狀態(tài)作出實(shí)時(shí)反應(yīng),并輸出相應(yīng)的控制指令;通過LCD顯示器對(duì)小車運(yùn)行的時(shí)間、鐵片數(shù)目以及行駛路程等參數(shù)進(jìn)行直觀顯示。整個(gè)系統(tǒng)安裝于車體上并實(shí)施控制。安裝在車上的多個(gè)測(cè)距傳感器精度高,能夠準(zhǔn)確測(cè)算出速度與距離,各種聲光器件實(shí)時(shí)顯示各模塊的工作狀態(tài)。全程無需人為控制,順利完成設(shè)定任務(wù)。經(jīng)性能指標(biāo)測(cè)試實(shí)驗(yàn),該系統(tǒng)可實(shí)現(xiàn)控制小車的進(jìn)退轉(zhuǎn)向等動(dòng)作且精度較高。
1 硬件設(shè)計(jì)
1.1 車型
本設(shè)計(jì)選用的履帶車,采用帶電感的大扭力260馬達(dá),具有動(dòng)力性能強(qiáng)、底盤穩(wěn)定性高等特點(diǎn),左右電機(jī)速度調(diào)整到一定時(shí),不易偏離軌道。
1.2 顯示模塊
采用2行16個(gè)字的MD1602A液晶顯示器,其功耗低、體積小、顯示內(nèi)容豐富??赏ㄟ^與單片機(jī)連接,編程,完成顯示時(shí)間和距離等等一系列的功能。
1.3 電源
單電源+DC/DC轉(zhuǎn)換供電。由于電機(jī)驅(qū)動(dòng)和其他芯片工作電壓不一樣,需各自獨(dú)立供電。使用6節(jié)電池產(chǎn)生約7~9 V的電壓,進(jìn)行DC/DC轉(zhuǎn)換,可得到5 V左右的穩(wěn)定電壓。該方案電路簡單、性能穩(wěn)定可靠。
1.4 直流電機(jī)
采用專用芯片L298N作為電機(jī)驅(qū)動(dòng)芯片。采用一個(gè)L298N,可以同時(shí)驅(qū)動(dòng)兩個(gè)電機(jī)。使用PWM方式的調(diào)速電路搭接簡單、驅(qū)動(dòng)電流大、可靠性高,電機(jī)驅(qū)動(dòng)原理如圖1所示。
L298N芯片內(nèi)部包含4通道邏輯驅(qū)動(dòng)電路,是一種二相和四相的專用驅(qū)動(dòng)器,內(nèi)含2個(gè)H橋的高電壓大電流雙全橋驅(qū)動(dòng)器,接收標(biāo)準(zhǔn)TTL邏輯電平信號(hào),符合兩輪驅(qū)動(dòng)和單片機(jī)控制。它可驅(qū)動(dòng)46 V,2 A以下的電機(jī),滿足小車馬達(dá)的驅(qū)動(dòng)要求。
L298N驅(qū)動(dòng)2個(gè)電機(jī),2、3腳和13、14腳之間分別接2個(gè)電動(dòng)機(jī)。5、7、10、12腳接輸入控制電平,控制電機(jī)的正反轉(zhuǎn),ENA(6腳),ENB(11腳)接控制使能端,控制電機(jī)的停轉(zhuǎn)。其中5、7、10、12腳分別接P1.0,P1.1,P1.2,P1.3,L29N的邏輯控制功能如表1所示。
1.5 傳感器模塊
1.5.1 傳感器的安裝
傳感器的安裝如圖2所示,車頭一共有5個(gè)黑白線傳感器和3個(gè)金屬傳感器。中間的金屬傳感器(檢測(cè)距離為8 mm)是來檢測(cè)跑道上的鐵片,旁邊的2個(gè)金屬傳感器(檢測(cè)距離為4 mm)是來檢測(cè)距離引導(dǎo)線70 mm以上的金屬片的。由于在拐彎斷線處,小車可能會(huì)偏出軌道,無法繼續(xù)尋跡,故最外圍的2個(gè)黑白線傳感器就是使小車在偏離軌道一定范圍的情況下,仍能夠調(diào)整車頭,重新回到軌道上,故兩個(gè)傳感器的距離要盡量的遠(yuǎn),在不超出車身范圍的情況下。中間的黑白線傳感器的可擴(kuò)展為讓小車在斷線處仍能夠畫出斷線部分的軌跡(顯示一段斷線,屬于特色部分),另外兩個(gè)黑白線傳感器的任務(wù)就是讓小車完成基本的尋跡功能。
1.5.2 霍爾傳感器
霍爾傳感器是利用霍爾效應(yīng)實(shí)現(xiàn)磁電轉(zhuǎn)換的一種傳感器,它具有靈敏度高,線性度好,穩(wěn)定性高、體積小和耐高溫等特點(diǎn)。對(duì)測(cè)速裝置的要求是分辨能力強(qiáng)、高精度和盡可能短的檢測(cè)時(shí)間。
霍爾傳感器和磁鋼配套使用,用來計(jì)算小車的行駛路程。本作品用到兩個(gè)霍爾傳感器和20個(gè)磁鋼,左右后車輪各一對(duì)(1個(gè)霍爾傳感器和10個(gè)磁鋼),安裝方式如圖3所示。磁鋼數(shù)量越多,測(cè)量出的車輪圈數(shù)約精確,行駛路程也越精確。
1.5.3 金屬傳感器
選用的金屬傳感器為NPN常開型傳感器,理論的測(cè)測(cè)量距離為4 mm,傳感器輸出為1、0開關(guān)量信號(hào),當(dāng)金屬傳感器感應(yīng)到金屬片時(shí),其輸出由高電平變?yōu)榈碗娖健?br />
1.5.4 黑白線傳感器電路模塊
選用TK-20黑白線檢測(cè)傳感器,它是TK-10的升級(jí)版,有效探測(cè)距離達(dá)5 cm。通過調(diào)節(jié)電位器,最遠(yuǎn)可以達(dá)到10 cm(該距離下,探測(cè)黑白線的精度降低)。
1.6 硬件總體框圖
硬件總體硬件框圖如圖4所示。
2 軟件設(shè)計(jì)
2.1 軟件流程圖
圖5為小車整體的系統(tǒng)流程圖。當(dāng)小車前頭的黑白線傳感器同時(shí)檢測(cè)到起點(diǎn)的黑線時(shí),單片機(jī)接收到信號(hào),小車開始加速行駛,且開始交替顯示行駛時(shí)間和行駛路程,此時(shí)由于還沒檢測(cè)到金屬片,故行駛距離顯示為0。當(dāng)小車在行駛的過程中檢測(cè)到第一片金屬片時(shí),小車減速行駛直到停止。數(shù)碼管顯示鐵片數(shù)量為1,且閃爍提示。此時(shí)單片機(jī)收到相應(yīng)信號(hào),控制小車停止5 s,在停止的過程中交替顯示行駛距離和時(shí)間。當(dāng)5 s過后,小車?yán)^續(xù)行駛,當(dāng)檢測(cè)到下一塊鐵片時(shí),小車又停止5 s,鐵片顯示加1(同樣閃爍顯示)。到終點(diǎn)時(shí),小車前頭的黑白線傳感器同時(shí)檢測(cè)到終點(diǎn)的黑線,小車停止,數(shù)碼管顯示鐵片數(shù)量且交替顯示行駛的總時(shí)間和第一片鐵片到終點(diǎn)的路程。此方案的特色是LCD顯示屏還能同步畫出小車行駛的軌跡圖。當(dāng)按下ZLG按鍵,LCD將切換到軌跡顯示,并能在LCD上標(biāo)出鐵片位置。
2.2 編程思想及核心算法的實(shí)現(xiàn)
2.2.1 PWM方波的產(chǎn)生
采用內(nèi)部定時(shí)器方式來產(chǎn)生占空比可調(diào)的PWM方波信號(hào)。
2.2.2 小車拐彎的實(shí)現(xiàn)
如圖7所示,左1黑白線傳感器碰到黑線時(shí),小車向左拐,并鎖住拐彎狀態(tài)等到左2黑白線傳感器碰到黑線,左2黑白線傳感器碰到黑線時(shí),小車向左拐。右1,右2碰到黑線的處理與左1,左2碰到黑線的處理一樣。其他狀態(tài)小車直走(除特殊情況如起跑線與終點(diǎn))。
2.2. 3 小車行駛路程的計(jì)算
小車的行駛的路程是用霍爾傳感器來計(jì)算的。由于黑線位于兩個(gè)輪子之間,設(shè)左輪走過的路程為S1,右輪走過的路程為S2,故實(shí)際距離應(yīng)為(S1+S2)/2。
2.2.4 小車軌跡的繪制
小車的軌跡是由一段段射線構(gòu)成的。小車每走一段距離L,就在屏幕上畫一條線段,線段長度設(shè)計(jì)為4個(gè)像素。畫射線的算法:
橫坐標(biāo): x=Lcosθ
縱坐標(biāo): y=Lsinθ
通過描點(diǎn)函數(shù)一點(diǎn)點(diǎn)描出來。由于單片機(jī)沒有計(jì)算sinθ,cosθ的函數(shù),所以本組采用查表法。
3 系統(tǒng)性能測(cè)試方法與結(jié)果
3.1 測(cè)試步驟
(1)根據(jù)要求做出完整軌跡,總長度為3.8 m,接著分別在直道、彎道放置4個(gè)鐵片,其距離起點(diǎn)依次為30 cm,140 cm,210 cm,270 cm,觀察小車能否尋跡,檢測(cè)到金屬片時(shí)能否停下5 s,顯示并給出提示。
(2)將小車放置起點(diǎn)處,啟動(dòng)小車,手中秒表開始計(jì)時(shí),到終點(diǎn)時(shí)停止計(jì)時(shí),看數(shù)碼管顯示。
(3)重復(fù)步驟(1),步驟(2)四次。
3.2 性能指標(biāo)測(cè)試數(shù)據(jù)
性能指標(biāo)測(cè)試數(shù)據(jù)如表2所示。
經(jīng)測(cè)量小車履帶車輪的半徑為24 mm,經(jīng)計(jì)算的周長為150.72 mm,測(cè)試跑道的長度為380 cm,經(jīng)過測(cè)試每次行駛的時(shí)間誤差很小,性能指標(biāo)良好。
4 結(jié)語
經(jīng)性能指標(biāo)測(cè)試實(shí)驗(yàn),該系統(tǒng)通過調(diào)節(jié)PWM輸出可實(shí)現(xiàn)控制小車的前進(jìn)、后退、轉(zhuǎn)向、加速、減速等動(dòng)作;結(jié)果表明,該設(shè)計(jì)方案科學(xué)合理,可精準(zhǔn)地完成小車沿黑色引導(dǎo)線的尋跡(斷開引導(dǎo)線亦可)、檢測(cè)鐵片個(gè)數(shù)、實(shí)時(shí)LCD顯示行駛距離、時(shí)間和行車軌跡等功能,精度較高。