北京信息科技大學 自動化學院,北京100192
隨著社會經濟的發展,汽車的定位導航技術被利用的日益廣泛,它將GPS和現代通訊技術相結合,具有監控、調度、報警、自檢等功能。它通過采集汽車的地理位置信息,設備自動跟蹤汽車信息,以及其周邊信息,然后將其信息顯示出來。它還有一個重要的功能,那就是它存儲了很多交通網信息,包括我國城市交通圖,以及精度比較高的全國公路網,方便自動控制行駛路線,使其應用前景廣闊。
自定位技術在各個領域有重要的應用。在無人機上也有很強的應用性,導航系統指引無人機到達正確的位置,例如農業領域中有農藥噴灑無人機等,遙感測繪無人機用此技術來測繪地理信息,此技術的開發與應用在國內蓬勃發展。
設計出AVR單片機作為控制自定位控制系統的樞紐,該系統通過設計相關硬件模塊以及相關的電路的設計實現汽車導航系統的功能,可以根據GPS信息以及綜合車流信息,控制轉向舵機和直流驅動電機的工作,實現調整小車的行駛方向和速度的目的。通過設計一些非常實用的內容來實現相關功能,例如顯示車輛相關信息,該系統把常見的道路圖、停車設施、道路屬性、等信息實時傳給主控人員。有助于在不熟悉的環境中處理交通問題,在未知的道路中,可以比較準確掌握道路的情況。
首先主控人員將前往目標輸入系統中,然后電腦便能根據各種道路情況選出最好的路徑,這些情況包括速度限制、紅綠燈數等,并將這些信息顯示出來讓駕駛員觀察。這樣的系統具有很多優點,它不但幫助司機避開忙碌的交通路線,還具有利于疏散擁擠的車流。除此之外,它還有適時改變路線的功能,例如司機沒有按照設定的路線行走,新的路線會被系統從新設計出來。通過小車的測試,最終實現到達的目的地,其實驗對實際自定位工程技術的研究具有重要借鑒意義,其對生產生活具有重要的影響。
系統主要包括AVR單片機最小系統[1]、電子羅盤、GPS模塊、無線信息傳輸模塊、舵機轉向模塊、電機驅動模塊以及電源模塊,系統結構如圖1所示。
首先利用GPS將數據傳給單片機,單片機將當前數據與目標數據進行比較,得到正確的航向,再通過電子羅盤得到車當前的航向,通過與當前航向與正確航向的比較,將比較結果送給單片機控制模塊進行實時控制,為了實現驅動電機轉動和舵機運轉,需要輸出相應的電信號來滿足其需求。
在此系統中,通過無線模塊,小車可以將當前位置信息息、時間信息發送到電腦上。操作者同樣可以在小車運行的時候,改變程序,并通過無線模塊傳送到小車,實現對小車的在線控制。




本設計用的ATMEL公司的AVR單片機[2],其典型特點就是增強型RISC,具有內載Flash的特征的單片機,芯片上的Flash存儲器附在用戶的產品中,具有可隨時編程和再編程的功能。為了使其具有較強的信息處理能力,故設計的AVR單片機有增強的RISC結構[3],使其具有在單位時間內處理復雜的信息。2.7~6V的電壓即可滿足AVR單片機的工作。通過其他的電源、頻率、復位以及下載電路的設計來滿足其最小系統的需求。
通過設計的分級電源電路的設計,為控制板、舵機和電機提供不同電壓值的電源,為系統各模塊供電。小車系統根據各部件正常工作的需要,對配發的7.2V蓄電池進行調節電壓。其中,為AVR單片機提供5V電壓,為舵機供電3.5~6V電壓,電機驅動芯片的供電電壓直接用電池電壓,驅動芯片的邏輯控制電平小于7V。電壓分配如圖2所示。
(1)單片機芯片的供電
為了穩定的得到3.3V電壓,在本設計中采用LM1117穩壓芯片。LM1117-3.3芯片產生1A輸出電流,可以為單片機和大部分芯片提供工作電壓。通過在穩壓芯片兩端都并聯了一個電解電容,得到波形準確的3.3V電壓。3.3V穩壓電路如圖3所示。
(2)舵機及驅動電路的供電
電壓與電機的速度成正比例關系,電壓越高,舵機反應越快。3.5~6V的電壓為舵機供電范圍,正常情況,為舵機的供電電壓為6V,可以通過電池電壓經過三個限流管得到6V電壓,以供舵機使用。3個限流管的壓降是2.1V,電池的標準電壓為7.2V,由于電池充滿電后電壓會達到8V左右,所以使用三個限流管。為了實現對電機的驅動,特使用L298N芯片來實現其功能,4.5~46V電壓為其提供的標準電壓范圍,由于其電壓與電流成正比關系,為了得到大電流,通常需要提供一個較大的電壓。因為L298N芯片有一個邏輯控制電壓,由電池電壓經過兩個限流管得到限高電壓。驅動電路的供電與舵機電路的供電如圖4所示。
GPS[4]接口電路為GPS向AVR單片機傳輸GPS數據提供了支持,是系統能夠實現定位功能的重要部分。為了實現GPS模塊的輸出電平與單片機電平兼容,特設計MAX232芯片實現RS232電平轉換為TTL電平。AVR單片機具有兩個USART,通過USART進行數據的傳輸,將GPS模塊經過電平轉換電路后與單片機的USART0相連,GPS模塊接口電路得到了實現,如圖5所示。在數據傳輸過程中,首先對USART模塊初始化,GPS模塊將字符逐一傳給單片機,通過USART的數據寄存器UDR來將字符存放在這里,每來一個數據,可由相應的標志位置位產生中斷,在中斷程序中,系統通過軟件編程將UDR里的數據取走放在定義的數組里,并且標志位會清零,以接收下一個字符,通過這樣的過程,最后GPS數據就被成功地保存在數組中了。原理如圖5所示。

本系統選用的芯片是L298N[6],共有15個引腳,VS接動力電源,范圍為4.5~46V,直接將電源電壓接至VS上,將電源電壓經過兩個限流管分壓后接至VSS,每個限流管有0.7V的壓降,所以接至VSS的電壓不會超過7V。ENA與ENB為使能端,將他們分別接至PD4與PD5,這樣通過輸入0或1就可以起使能作用。IN1與IN2分別接PWM2與PWM3,在ENA為1的情況下,通過設置IN1=1,IN2=0使其控制電機正轉,這時令PWM2為一個占空比不是0的PWM波,PWM3為一占空比為0的PWM波即可得到實現,為了改變速度,可以通過改變PWM2占空比的大小來實現。如需要實現反轉,只需要令PWM2占空比為0,PWM3占空比非零即可。電機驅動電路如圖6所示。

在此系統中,選用的是GY-26電子指南針,其工作原理是感應地球磁場的磁分量,因為其器件有兩個相互垂直軸,使其具有能夠同時得出方位角度的功能,此羅盤以RS232 協議,及I2C 協議與其他設備通信。這個芯片還具有重新標定方位的功能,再加上其具有磁偏角補償功能,使其方位角能夠在各種環境下得到。GY-26電子指南針是一個12引腳模塊,1~6號引腳為主要引腳,9號引腳用于矯正。將9號引腳連接的開關閉合,并將電子羅盤緩慢旋轉一周,則實現了對電子羅盤的矯正。電路連接圖如圖7所示。

無線模塊是調試與控制小車的重要部分,通過無線模塊解決了電腦與單片機只能通過串口線進行通訊的問題。通過無線模塊可以在小車行駛的時候通過電腦讀取單片機里面變量的數據,也可以用電腦通過無線模塊來修改單片機里面變量的數據,這樣就可以實時了解小車的位置信息,可以實時改變小車的速度與轉角,也可以隨時更改小車的目標位置[5]。圖8為其連接電路。

小車在工作中的路況:
①小車通過低速調整自己的舵機轉向,使航向逐漸調整正確,這樣來解決小車的航向與當前位置和目標位置連線構成的方向不一致的問題;
②為了節省時間,在小車航向正確的狀態時,也就是小車按當前的航向可以直線到達目的地時,應加大小車的速度;
③當小車快要到達目標時,為了實現小車減速的功能,要求設計轉向識別功能和調速功能[6]。
在各個模塊的有機配合下,使小車可以正確地行駛到給定位置。其工作的主流程圖如圖9所示。當系統初始化開始正常工作時,通過傳感器采集信息傳遞到系統中,系統自動調節舵機和電機,并顯示出相關信息,實現對小車的控制。
系統為了完成對定位信息的采集[7],需要使用GPS定位信息的采集程序。由于單片機RX、TX端口被占用,且單片機只有一個硬件實現的UART數據通信,因此需要采用軟件模擬UART的方式進行數據傳遞。在設計中所采用的是中斷方式模擬軟UART。按照一定的頻率更新一次采集過程。程序流程圖如圖10所示。單片機初始化后,通過串口實現對GPS的控制,采集定位信息,并將信息傳給單片機,完成GPS定位信息采集任務。


單片機的PWM波提供小車的電機與舵機的驅動信號,改變PWM波的占空比就可以改變控制。在本系統中,定時器1的通道A與通道B產生的兩路PWM波用于控制電機 ,定時器3的通道C產生的PWM用于控制舵機。PWM的兩個主要參數為周期與脈寬,這兩個參數都在定時、計數器對應的寄存器中設置。
定時器1的A、B、C三個通道的PWM初始化如下所示:

通過設計,電子指南針能夠輸出小車的航向,我們可以得到小車與正北方向的夾角。通過GPS技術可以將定位信息及時的傳給應用者。給定一個經緯度的位置數據,小車能夠按照一定的路線走到目標位置。
小車實現的主要功能為:在操場上兩邊禁區的四個頂點處,將小車放在第一個頂點處,小車能緩慢啟動,然后以較快速度運行至第二個頂點處,在即將到達第二個頂點時,會減速和提前拐彎,在轉彎90°時,繼續以較快速度運行至第三個頂點和第四個頂點處,在到達第四個頂點時,小車會停車,最后,小車在操場上跑了一個近似的長方形,誤差為10m左右,最終能夠完成設計的目標。
通過硬件各個模塊的設計以及其軟件設計,實現了所設計的目標。本系統運用了L298N驅動芯片,確保了驅動電路的質量,系統只用一個LM1117-3.3穩壓電路,簡化了系統的電路結構。在本系統中,在原有小車的基礎上,使用機械傳動原理安裝了舵機,舵機通過機械固定,運行可靠穩定。單片機及大部分芯片采用3.3V供電,這樣在電池電壓下降一定范圍后仍可以正常提供3.3V電壓,最終實現了設計目標。
隨著新技術的發展,研究串口和SPI協議的應用,使用更加精密的加工方式安裝舵機裝置,盡可能使舵機工作穩定、可靠,轉彎角度較大,使其自控小車性能更佳。