郭宗輝 欒秋平


摘要:智能循跡小車是現代大學生電子競賽項目中比較熱門的項目。文章介紹的小車主要是以AT89S52單片機為核心,然后采用QTI紅外傳感器來進行設計的。文章介紹了小車的硬件設計以及軟件設計,可以為智能循環小車的設計提供一些參考。
關鍵詞:單片機;智能循跡小車;小車設計;AT89S52單片機;QTI紅外傳感器 文獻標識碼:A
中圖分類號:TP39 文章編號:1009-2374(2015)32-0014-02 DOI:10.13535/j.cnki.11-4406/n.2015.32.008
智能循跡小車是現代大學生電子競賽項目中比較熱門的項目。在比賽中智能循跡小車通過地面上黑線或者白線的引導前進,并且在比賽中要通過感應器的感應來躲避障礙物,在偏離軌道的時候能夠自動返回,小車在比賽中所用的時間以及小車的循跡效果決定了小車的比賽成績。智能循跡小車是智能機器人的另一種模式,本設計中采用的是以AT89S52單片機作為智能循跡小車的控制器以及四組QTI紅外傳感器對路面進行檢測,單片機通過傳感器的檢測來進行小車循跡的控制。
1 智能循跡小車的結構組成及設計
智能循跡小車的車體結構圖如圖1所示。智能循跡小車的主要結構有控制電路板、傳感器、電機、底盤部件等。
圖1 智能循跡小車車體結構 圖2 系統框圖
系統的總體框圖如圖2所示。智能循跡小車的總體設計方案如下:(1)智能循跡小車以AT89S52單片機作為整個控制電路板的核心,外接控制電機信號以及紅外傳感器;(2)智能循跡小車的電機是使用伺服舵機來驅動小車進行基本的動作(前行、后退、左右轉、掉頭、停止);(3)傳感器方面智能循跡小車選擇的是QTI紅外傳感器來探測地面上的黑白線,小車車體的下面分別從左到右安裝了四個QTI紅外傳感器,傳感器的信號連接著單片機的四個引腳,單片機根據傳感器所檢測到的信號來控制小車沿著軌跡進行行駛;(4)小車的底盤部件分別包括了電池盒、底盤木體、尾輪和左右輪等一些部件。三輪結構的小車前方的兩側分別為驅動輪,在校車的后方有一個尾輪,可以起到支撐的作用,這樣小車在隱性的過程中可以靈活地循跡。
2 智能循跡小車硬件設計
2.1 伺服電機
伺服舵機在選擇的時候要能夠按照指令來控制小車的位置和速度。它的外觀如圖3所示,伺服舵機上有三條輸入線,分別是紅色、黑色、白色,紅色的是電源線,黑色是地線,白色的是信號控制線。伺服舵機的信號控制周期是20ms的脈寬調制(PWM)信號。在伺服舵機的內部有一個基準電路,能夠產生的基準信號寬度為1.5m、周期為20ms;另外還有一個比較器,可以將基準信號與外加信號進行比較,以此來判斷方向以及大小,進而產生出電機的轉動信號。
圖4上的脈沖序列以高電平1.5ms、低電平20ms進行不斷重復。這個脈沖序列經過零點標定后的不會旋轉的伺服電機,如果發現此時的伺服電機在進行旋轉,就表明該電機需要進行標定。通過圖4、圖5、圖6可知,電機的轉速是由高電平持續時間來控制的;在高電平的持續時間是1.3ms的時候,電機進行順時針的高速旋轉;當高電平的持續時間為1.7ms的時候,電機進行逆時針的高速旋轉。
選擇P1.0的電機來控制小車右輪,P1.1的伺服電機來控制小車左輪。伺服電機和單片機之間的接口如圖7所示。
2.2 循跡傳感器
2.2.1 傳感器的選擇。傳感器的原理圖和接線圖如下面的圖8、圖9所示。在接線圖中的W表示的是VCC引腳,是白色的線;R表示的是SIG引腳接到單片機I/O引腳,是紅色的線;B表示的是GND引腳,是黑色的線。QTI是通過一個發光的二極管和一個光敏三極管的耦合得到一個類似光敏電阻的元件來對信號等的電平進行控制。傳感器對于黑色的表面,反射率很低,光敏三極管沒有導通,此時由三極管和電容組成的RC電路的時間常數就比較大,電壓大部分都降在三極管的兩端,其中R端輸出高電平1。反之,當傳感器經過亮表面時,反射率就比較高,此時的光敏三極管導通,RC電路的時間常數比較小,電壓大部分降在電容的兩端,R端輸出低電平0。
2.2.2 小車循跡策略。將四個QTI傳感器的信號線連接到小車相應的I/O口,我們選定的對象是P2中的P2.1、P2.2、P2.3、P2.4。在連接相應的信號線時,使用不同顏色的線,這樣在進行錯誤的檢查時就非常簡單清晰。傳感器的接口設計圖如下:
在圖11中,我們可以看到傳感器是集中在一條直線上的,P2.2和P2.3引腳信號是第一級方向上的傳感信號,P2.1和P2.4是第二級傳感信號。小車在前進的過程中,黑線一直在第一級傳感器下面,當小車偏離的時候,傳感器就可以及時地檢測出來并予以糾正。第二級的傳感器實際上是第一級的后備裝置,當小車偏離的角度過大時,第二級可以進行糾正,提高了小車的循跡可靠性。
3 智能循跡小車軟件設計
3.1 小車基本動作的實現
智能循跡小車在前進的時候,從不同的方向看它的輪子轉動的方向是不一樣的,在左邊是逆時針,右邊則是順時針。同理,小車做其他動作時,我們也可以分析出小車輪子的方向。在改變小車的速度時,我們可以通過控制參數的變化來改變速度的大小。小車兩個輪子的速度與方向控制著小車本身的方向和速度。在C語言中,我們直接用left、right來表示左右輪的參數,用for循環來控制脈沖的數量。
3.2 循跡功能的實現
圖12與表1中的循跡策略相同。在長傳感器測試的基礎上,調用一個move函數來完成長期的循跡過程。小車的循跡路線可以在程序中做進一步的修改,例如小車走到白線時自動停止、從一條黑線走到另一條黑線的一些功能。按照本文中所講的智能循跡小車的設計方法制作的小車,實驗結果表明:該設計法方法下的小車能夠很平穩地運行,在運行的過程中基本沒有發生偏離,在路線的轉彎處也能夠很好地運行,并且可以自動地調節小車的速度。
4 結語
智能循跡小車的設計需要涉及到許多方面,在小車的設計中,單片機、傳感器的選擇都非常重要,不同單片機下的小車性能也不相同。本文中主要簡單探討了以AT89S52單片機作為控制核心、QTI紅外傳感器為基礎的智能循跡小車的設計。在小車中單片機根據傳感器的輸出信號來對小車的智能進行控制,實現小車的前進、后退等一系列活動。實驗結果表明,該種設計方法下的小車具有很強的運行能力,能夠很好地控制小車的運行
過程。
參考文獻
[1] 王琰,郭燕,等.基于C51單片機的智能循跡小車設計與實現[J].機電一體化,2013,(8).
[2] 張巖,裴曉敏,付韶彬,等.基于單片機的智能循跡小車設計[J].國外電子測量技術,2014,(3).
[3] 劉遠明,李道霖,韓緒鵬,等.感應式循跡小車的設計與實現[J].電子設計工程,2011,(10).
(責任編輯:周 瓊)