劉文泉,朱春燕
(1.西北工業大學自動化學院,陜西西安,710072;2.西安工業大學北方信息工程學院,陜西西安,710200)
智能循跡小車主要由STC89C52RC單片機開發板、HJIR1循跡模塊、L298N驅動模塊、電機模塊、電源模塊等組成,圖1是智能循跡小車系統組成。采用STC89C52單片機I/O口控制L298N驅動模塊,來控制四個直流電機的運動形態,完成規定黑色線循跡控制。

圖1 智能循跡小車控制系統組成圖
智能小車采用HJ-IR1光電循跡傳感器,圖2是紅外發射管紅外光線發射到黑色線時,由于黑色對紅外光線的吸收高,因此反射回紅外接收管的紅外光線相對減少,此時I/O口輸出高電平,如果紅外發射管反射到其它路面則I/O口輸出低電平。

圖2 黑色障礙物光路圖
STC89C52單片機的最小系統,主要擴展包括:供電電路、復位電路和時鐘電路。
光電循跡傳感器電路如圖3所示。當發射管發出的紅外線遇到黑線時,黑線吸收了紅外線,導致反射回來的紅外線很少,所以光敏三極管不會導通,從電路中可以看出遇到黑線時輸出端輸出AOUT模擬量在5V,通過比較器比較在輸出DOUT數字量高電平1給單片機。

圖3 循跡傳感器電路圖
電機的驅動電路如圖4所示,采用L298N驅動芯片帶動兩個直流電動機進行運轉,選用電機是抗干擾碳刷TT減速馬達,抗干擾碳刷到電動機的作用是改變DC電機的電流方向。
2.3.1 H橋驅動電路分析
電動機控制電路的雙H橋,包括八個三極管和兩個馬達。在電機運行時,根據三極管的導通情況來控制電機的電流方向。H橋電機驅動電路有三種狀態,下面作一路電機的分析。

圖4 電機驅動電路
狀態一:首先ENA是使能端,是控制剎車使用的,IN1、IN2是控制電機的正轉和反轉。當輸入高電平1進入使能端、IN1和IN2輸入低電平0時,ENA和IN1的信號通過兩個與門電路給三極管T1輸送一個低電平0,而給三極管T2輸送一個高電平1,三極管T2導通而三極管T1不導通。所以電機沒有電流進入,從而直流電機不工作。
狀態二:使能端還是給高電平1讓其使能工作,然后給IN1輸入高電平1,IN2輸入低電平0,使得三極管T2和T3不導通,而三極管T1和T4導通,這樣使電機反轉。
狀態三:分別給ENA、IN1、IN2輸入高電平1、低電平0、高電平1,其使得三極管T2和T3導通,三極管T1和T4不導通,電機正轉。
所以通過一路電機的分析我們可以得出四路電機的工作狀態,在編寫程序的時候怎樣給芯片定義高低電平決定了小車的運動狀態。
2.3.2 小車運動控制邏輯
小車在L293D驅動芯片控制下可以得到電機控制邏輯:當使能端ENA為高電平時,如果給引腳IN1輸入低電平而給引腳IN2輸入為高電平,則電機正轉;如果引腳IN1輸入高電平而引腳IN2輸入低電平,則電機反正轉;IN1和IN2都輸入低電平時,電機停止。表1是小車的運動邏輯。

表1 小車運動邏輯
設計采用C語言編譯。該方案使用軟件設計的模塊化結構。光電循跡小車的主程序流程如圖5所示。
圖6所示為小車的狀態,紅色代表傳感器,黑色代表循跡路線,直行時傳感器的電平為00100 。當單片機讀到P1口的低四位為00100時,就執行直行函數。

圖5 主程序設計流程圖
小車的向右偏移的四種狀態。四種狀態則分別對應程序里面四種函數:
若P1口低四位狀態=01100,小車輕微向左偏離軌道,則執行向左微轉函數;
若P1口低四位狀態=01000,小車中度向左偏離軌道,則執行向左中轉函數;
若P1口低四位狀態=11000,小車嚴重向左偏離軌道,則執行向左大轉函數;
若P1口低四位狀態=10000,小車馬上向左偏離軌道,則執行向左死轉函數。

圖6 小車向右偏移
小車的向左偏移的四種狀態。四種狀態則分別對應程序里面四種函數:
若P1口低四位狀態=00110,小車輕微向右偏離軌道,則執行向右微轉函數;
若P1口低四位狀態=00010,小車中度向右偏離軌道,則執行向右中轉函數;
若P1口低四位狀態=00011,小車嚴重向右偏離軌道,則執行向右大轉函數;
若P1口低四位狀態=00001,小車馬上向右偏離軌道,則執行向右死轉函數。

圖7 小車實物圖
在安裝好小車之后首先要檢查電源線、信號線、元器件引腳之間有無短路等情況。以小車前進為例,通電之后觀察小車輪胎的轉向,如果一個或者兩個輪胎都反轉,則接線錯誤,需要調整接線位置;如果輪胎不轉,則說明接線沒有導通,要重新接線檢測,重新接線之后還不能轉動,則說明直流電機壞了或者程序出現錯誤,可以通過換電機進行調整。小車原地打轉或者前進時候沖出跑道,不能正常循跡,可以通過調節紅外傳感器的可調電阻,改變傳感器靈敏度,及傳感器距離地面的高度。安裝調試完成之后實物圖如7所示。在軟件調試過程中,利用ISP軟件調試,支持計劃刻錄編譯和調試軟件WAVE 6000。
本課題研究的智能小車的循跡系統,能夠實現按照預定軌道沿著黑色標記線運動。保證光電傳感器的正常靈敏的工作,使小車不受到外界干擾而偏離黑線運動;并保留了擴展功能,方便以后的擴展和進一步的開發。