小車自動停車入庫系統(tǒng)設計畢業(yè)設計說明書1
《小車自動停車入庫系統(tǒng)設計畢業(yè)設計說明書1》由會員分享,可在線閱讀,更多相關《小車自動停車入庫系統(tǒng)設計畢業(yè)設計說明書1(57頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 內(nèi)蒙古科技大學 本科生畢業(yè)設計說明書(畢業(yè)論文) 題 目:小車自動停車入庫系統(tǒng)設計 專 業(yè):測控技術與儀器 班 級:測控2009-2班 摘要 本設計在信息工程學院智能停車場實驗平臺上,以飛思卡爾智能車為模型設計并實現(xiàn)了小車自動停車入庫系統(tǒng)。該系統(tǒng)將Freescale16位單片機MC9S12XS128作為系統(tǒng)微控制器,設計了單片機最小系統(tǒng)、電源管理模塊、電機驅(qū)動電路、舵機驅(qū)動電路、路徑識別電路及對管定位電路,并介紹了電路相關參數(shù)的計算方法。 在小車自動停車入庫系統(tǒng)中,小車通過采集道路信息、交通燈信息以及車庫信息,自動從車場入口行駛
2、至指定空車位,并準確停車入庫。通過CCD攝像頭采集道路信息并對其處理,提取出路中央黑線與小車位置的偏差,從而控制舵機動作來矯正行駛中小車的狀態(tài);通過安裝在車頭的紅外線對管來確定空車位及信號燈的位置;同樣采用CCD攝像頭來提取信號燈的指向,進而指引小車正確駛向車庫。 關鍵詞:自動入庫;智能車系統(tǒng);圖像采樣;Freescale16位單片機 Abstract On the experimental platform of the smart parking garage in School of Information
3、Engineering, the automatic car parking storage system is designed on the basis of the Freescale intelligent car. Including the minimum system circuit, power management part, motor drive circuit, servo drive circuit, path recognition circuit and the geminate transistors circuit, the system takes the
4、MC9S12XS128 SCM as its microcontroller. Besides, relative calculations of parameters are also given. In this automatic car parking garage system, the smart car is designed to drive to the assigned garage automatically from the entrance and to park in the storage accurately, though identifying info
5、rmation of roads, traffic lights and garages. Firstly, the system is used to deal with the information searched by CCD camera, then to find the deviation between the position of the car and the central black line, and correct the car through a steering gear. In addition, the infrared tubes can be in
6、stalled in front of the car to determine the locations of the empty parking spaces and the signal lights. Similarly, the directions of signal lights can be detected by CCD camera as well to make the car drive in the garage correctly. Key words: Automatic parking garage; Intelligent vehicle
7、 system; Image sampling; Freescale16-bit single-chip 52 目錄 摘要 I Abstract II 第一章 引言 1 1.1 設計背景及意義 1 1.2 設計目標 2 第二章 總體設計 3 2.1 系統(tǒng)硬件結構 3 2.2 設計方案分析 3 2.2.1 道路識別方案分析 4 2.2.2 交通燈識別方案分析 5 2.2.3 小車自動入庫方案分析 5 2.3 系統(tǒng)硬件安裝 6 2.3.1 智能車系統(tǒng)硬件安裝 6 2.3.2 車場硬件安裝 7 第三章 硬件設計 8 3.1 單片機最小系統(tǒng)電路 8
8、3.1.1 單片機MC9S12XS128簡介 8 3.1.2 單片機時鐘電路設計 9 3.1.3 復位電路設計 9 3.1.4 BDM接口電路設計 10 3.2 電源電路設計 11 3.2.1 5V電源電路設計 11 3.2.2 6V電源電路設計 12 3.2.3 12V電源電路設計 12 3.3 直流電機及電機驅(qū)動電路 14 3.3.1 電機RS-380簡介 14 3.3.2 電機驅(qū)動電路 14 3.4 視頻采集電路 16 3.4.1 CCD攝像頭的工作原理 16 3.4.2 視頻分離電路 17 3.5 舵機及舵機驅(qū)動電路 18 3.6 紅外對管電路 19 第
9、四章 軟件設計 21 4.1 主函數(shù) 21 4.2 初始化程序設計 22 4.2.1 鎖相環(huán)初始化設計 22 4.2.2 TIM模塊初始化設計 22 4.2.3 PIT模塊初始化設計 23 4.2.4 PWM模塊初始化設計 24 4.2.5 A-D轉(zhuǎn)換初始化設計 24 4.3 道路模塊程序設計 25 4.3.1 道路信息采集程序設計 25 4.3.2 引導線提取程序設計 27 4.4 交通燈模塊程序設計 28 4.5 小車自動入庫程序設計 29 第五章 總結 31 參考文獻 32 附錄A:系統(tǒng)硬件仿真原理圖 34 附錄B1:最小系統(tǒng)PCB原理圖 35 附錄B2
10、:電機驅(qū)動PCB原理圖 35 附錄B3:電源模塊PCB原理圖 36 附錄C:系統(tǒng)C語言源程序 37 第一章 引言 1.1 設計背景及意義 智能停車場實驗室是我校信息工程學院為本科研究生實踐訓練和課程研究搭建的模擬平臺,該實驗室可以為自動化和測控專業(yè)在數(shù)字電路實驗、模擬電路實驗和嵌入式實驗等方向上提供支持,為我院學生的學習生活又增添了一種新的方式。在此平臺上能夠?qū)崿F(xiàn)自動停車和車庫設計兩方面的功能,其中自動停車方面可以研究自動循跡、信號燈識別、圖像識別以及PWM控制等,車庫設計方面可以研究空位查詢、各種安全報警以及停車信息系統(tǒng)管理等。 測控技術與儀器專業(yè)是一個理論與實踐并重的專業(yè),
11、理論性與應用性都極強。除了要學習測控的理論知識外,還要進行相關實踐的訓練,以提高解決實際問題的能力,加深對知識的理解。為了培養(yǎng)學生的創(chuàng)新能力和開發(fā)能力,我校信息與工程學院先后創(chuàng)辦了創(chuàng)新基地與秋實工作室,智能停車場課題也是在此基礎上提出的。學院計劃設立智能停車場實驗室,用于研究其相關系統(tǒng),同時用于單片機嵌入式課程的教學。該項目為我們提供了一個學習的平臺,讓有興趣的同學參與開發(fā)研究,可以開闊大家的視野,激發(fā)學習基礎理論的熱情。對于大四的學生,可以將其作為畢業(yè)設計深入研究,更好的了解現(xiàn)在社會上嵌入式發(fā)展的形勢。此外,通過這個實驗室還可以增進與其他院校的交流,以達到相互學習共同進步的目的。 本設計是
12、在智能停車場的基礎上,對車輛自動進入車庫系統(tǒng)進行設計的,以便提高車庫的自動化程度。如果這項技術成熟并投入使用,不但可以改變現(xiàn)在車場管理效率低下的現(xiàn)狀,而且可以實現(xiàn)車場無人化管理,節(jié)省人力物力。因為車輛入庫是按照空余車位指定的路線自動行駛停放的,從而解決了車庫排隊擁擠和停車安全的問題,減少了車主停車的時間。此外,如果停車場內(nèi)有對外開放的臨時車位,自動停車系統(tǒng)更加有利于對這些車位的管理。隨著我國城市化進程的加速和人們經(jīng)濟生活水平的提高,擁有私家車的家庭越來越多,城市機動車輛迅速增加。車輛的高速增長導致城市交通擁堵,與此同時,停車入庫排隊時間長和尋找車位困難已經(jīng)成為十分嚴重的社會問題。城市交通需求量
13、不斷增大,城市人口又相對密集,無論是私家車還是公交車輛都很難滿足正常停放,一方面車主對停車的安全性和便利性都產(chǎn)生了新的需求,另一方面更加科學有效地管理車場,提高車場的使用率和安全性,已經(jīng)成為現(xiàn)在研究的熱門[1]。 1.2 設計目標 本設計是在飛思卡爾智能小車的基礎上進行的,首先要按照飛思卡爾大賽的標準設計出智能車系統(tǒng),其系統(tǒng)主要包括微控制器模塊、電源管理模塊、路徑識別模塊、電機驅(qū)動模塊及轉(zhuǎn)向舵機控制模塊等[2]。這部分要實現(xiàn)的主要功能是:智能車在攝像頭的配合下,能夠自動識別指定道路并沿著道路上的引導線行駛。在小車行駛的過程中,利用了攝像頭對道路進行感測,得到的數(shù)據(jù)送交單片機,單片機處理得到
14、的數(shù)據(jù),通過PWM波控制車頭舵機的轉(zhuǎn)動,從而調(diào)整小車的相對位置,以達到自動尋跡的目的。 在此基礎上設計智能車自動進入車庫并準確停入空余車位,這部分主要包括識別交通燈和定位空車位兩部分。通過攝像頭采集交通燈的信息,經(jīng)過程序算法提取出交通燈的指向,指引小車向空車位行駛。在小車和車位上安裝紅外線對管,當車位上沒有車時,車位上的紅外線對管發(fā)射信號,小車經(jīng)過時通過紅外接收器檢測到信號,從而實現(xiàn)定位車位的功能。本設計的具體任務如下: (1)、結合停車場模型,設計引導路線的識別方法; (2)、結合停車場模型,設計信號燈的識別方法; (3)、設計小車控制硬件電路原理圖、PCB; (4)、設計循跡、停
15、車入庫軟件。 第二章 總體設計 2.1 系統(tǒng)硬件結構 智能小車系統(tǒng)的功能模塊主要有:控制核心(MCU)模塊、電源管理模塊、交通燈檢測模塊、路徑檢測模塊、電機驅(qū)動模塊、舵機控制模塊以及輔助調(diào)試模塊,在這次自動入庫的設計中還有一個紅外傳感器模塊,用于準確尋找空余車位。每個模塊都包括硬件和軟件兩部分,硬件為系統(tǒng)工作提供硬件實體,軟件為系統(tǒng)提供各種算法。智能車系統(tǒng)的總體結構框圖如圖2-1所示。 圖2-1 智能車系統(tǒng)總體結構框圖 微控制器根據(jù)圖像采集傳感器采集的道路信息快速準確地對路徑進行判斷,對舵機和后輪直流電機PWM控制,從而保證智能車能夠快速穩(wěn)定地行駛。其中微控制器選
16、用Freescale公司的MC9S12XS128開發(fā)模塊;電源管理模塊為開發(fā)模塊、各傳感器、舵機以及直流電機提供電源;圖像采集模塊采用面陣CCD攝像頭;舵機控制模塊用來控制小車轉(zhuǎn)向的,模塊化舵機只要送入脈寬調(diào)制信號就可控制其轉(zhuǎn)向和轉(zhuǎn)角,控制主要是通過單片機片內(nèi)資源PWM配合編程實現(xiàn);直流電機驅(qū)動模塊為車后輪直流電機驅(qū)動。 2.2 設計方案分析 在設計小車自動停車入庫系統(tǒng)的過程中,通過對相關資料的查詢,可以發(fā)現(xiàn)系統(tǒng)的不同部分存在多種實現(xiàn)方案,各種方案都存在其利弊。系統(tǒng)的方案選擇主要存在道路識別、交通燈識別、自動倒庫三個模塊,下面將分析這三個模塊的方案,選擇出最利于我們實現(xiàn)的方法。 2.2.
17、1 道路識別方案分析 道路識別模塊要實現(xiàn)的功能是在白底黑線的車道上自動識別行駛的路線,檢測智能車相對于車道中央的偏移量、方向等信息使小車自主沿著車道運行。為了提高小車對車場環(huán)境的適應能力,實現(xiàn)其自主沿著車道快速而穩(wěn)定的行駛,要選擇合適的采集賽道信息傳感器,設計合理的路徑識別方,以確保獲取足夠多、足夠遠、足夠精確的車道信息來提高小車的運行速度。路徑識別的主要要求是準確、快速、盡量超前地采集路面信息,把它轉(zhuǎn)變成點信號,傳送到單片機中處理。現(xiàn)在做路徑識別的技術很多,方法也是千差萬別,但其目的都是為小車尋到前進的方向,現(xiàn)在分析下面三種方案的利弊。 (一)、基于光電傳感器的路徑識別方案 對
18、于飛思卡爾大賽來說,基于光電傳感器來進行路徑識別是完全可行的,因為賽道是在白色賽道上識別中間的黑色,可以在小車前面裝上光敏器件,光敏電阻或是光敏二極管,根據(jù)白色與黑色賽道對光的反射強度的不同,從而對光敏器件產(chǎn)生不同的電阻電壓,把這些數(shù)據(jù)送給單片機處理就可以讓小車識別具體的路線。這種方案的優(yōu)點是電路簡單,信號處理速度快。其弊端是感知前方賽道距離有限,受外界紅外頻段光線干擾,精度比較低[3]。 (二)、采用電磁傳感器的路徑識別方案 這種方案是在道路中央安裝電流約為20KHz、100mA的導線,采用電磁傳感器陣列來感應道路上的磁場信號,經(jīng)過放大電路放大后,可以得到正弦波,傳給單片機進行AD采樣,
19、得到正弦波的峰值,以判斷電磁傳感器距離導線的距離,從而定位智能車在路徑上所處位置。這種方案的特點是:磁場在空間的分布具有方向性,所以電磁傳感器采集的信息同樣具有特定的方向。其缺點是磁場受附近車道上磁場影響較大,而且不同傳感器對磁場感應的變化規(guī)律有很大的差距[4]。 (三)、采用攝像頭采集的路徑識別方案 使用攝像頭采集路徑信息的原理是通過調(diào)整攝像頭鏡頭的焦距,可以采集到小車前方不同范圍的道路圖像,得到智能車前方的道路信息,對圖像中的道路參數(shù)進行檢測。通過對檢測的圖像用適當?shù)膱D像處理方式進行處理后,可以獲得道路的中心位置、道路形狀、彎道曲率等信息。其優(yōu)點是可以獲得小車前方較遠路徑信息,不足是
20、對圖像處理的計算量大,單片機處理數(shù)據(jù)時間長,電路設計相對復雜。攝像頭的選擇也存在兩種方案,一種是采用CCD圖像傳感器,其是以PAL制式信號輸出到CCD信號處理模塊并進行同步信號分離,連續(xù)的圖像數(shù)據(jù)和同步信號同時輸入到S12單片機控制核心,進行進一步的圖像處理。其優(yōu)點是對比度高、動態(tài)特性好。缺點是工作電壓是12V,需要升壓模塊,耗電量較大,且圖像穩(wěn)定性不高。另一種方案是采用CMOS圖像傳感器,這種傳感器的原理與CCD圖像傳感器的原理大致相同。雖然CMOS傳感器具有電源功耗低、感光度高的特點,但其受環(huán)境影響較大,適應性較差[5]。 綜上所述,在這次設計中路徑識別模塊選用CCD圖像傳感器的攝像頭方
21、案。 2.2.2 交通燈識別方案分析 現(xiàn)在各學科對識別交通燈的研究很多,依據(jù)的理論也各不相同。例如上海交通大學研究的基于級聯(lián)濾波交通燈識別方法,其是通過對已有的交通燈圖像進行訓練及采用色彩分割的方法而提取候選區(qū)域,并將候選區(qū)域作為輸入[6];同濟大學研究的方向是在HIS顏色空間進行交通燈的顏色分割,利用交通燈被黑色矩形框包圍這一典型特征進行形狀分割,根據(jù)形狀分割所得位置對顏色分割候選區(qū)進行確認,從而精確定位交通燈位置以及亮燈在交通燈中的位置[7]。但總的來說,各種方案都是使用攝像頭來對交通燈進行信息采集的。因為在路徑采集模塊選用的是CCD攝像頭,為了減少智能車的硬件組成以及減少費用預算,所
22、以在這里使用同樣的攝像頭,但對信息的處理算法卻迥然不同,在后續(xù)的論文中將會詳細介紹。 2.2.3 小車自動入庫方案分析 這一部分要實現(xiàn)的主要功能是小車行駛的過程中能夠準確定位到空余車位。能夠?qū)崿F(xiàn)定位的傳感器數(shù)不勝數(shù),最初試想的方案是利用光敏電阻來測量小車與車位的距離,具體做法是在車庫中央安裝發(fā)光二極管,車庫空著時二極管被點亮,在小車四周安裝八個光敏電阻,利用光敏電阻距離光源位置不同產(chǎn)生不同電阻的原理,進而產(chǎn)生電壓差,從而測出小車距離光源的位置。實際證明這種方案并不合理,首先在小車上安裝光敏電阻相對麻煩,而且電路連接較為混亂。最嚴重的問題是光敏電阻受環(huán)境影響很大,遠遠不能實現(xiàn)車庫的精確定位。
23、最終確定的方案是使用紅外線對射管,這種對管的原理是點對點的發(fā)射接收,車庫空著時對管發(fā)射信號,車輛行駛至車庫時接收紅外信號。紅外對射管的接收范圍相對較小,所以并不受相鄰車庫對管的影響,精確度高,能夠?qū)崿F(xiàn)小車對車庫的精確定位[8]。 2.3 系統(tǒng)硬件安裝 2.3.1 智能車系統(tǒng)硬件安裝 智能車上的硬件有:車輪、舵機、路徑采集攝像頭、交通燈采集攝像頭、電機、主控芯片、電源驅(qū)動一體化電路、紅外接收管、視頻分離電路。其中車輪、舵機和電機已經(jīng)安裝在車上,不需要進行調(diào)節(jié)機械結構。車體本身機械參數(shù)如下:車長27.5cm;車寬17cm;車輪直徑5cm;軸寬12cm[9]。智能車硬件安裝如圖2-2所示。
24、 圖2-2 智能車硬件安裝示意圖 其中最關鍵的部分是攝像頭的安裝,出于對車身重心位置以及探測前瞻量的考慮,攝像頭最好裝在車體前部,以平衡重心并獲得較大的前瞻量。攝像頭安裝位置的高低對智能車行駛過程中路徑識別的范圍,以及路徑識別的準確性和實時性具有直接的影響。安裝位置過低,會導致視野不夠開闊,使得有效的路徑識別范圍縮小;安裝位置過高,又會導致黑色引導線變得過窄而無法被檢測到,而且會使智能車系統(tǒng)重心抬高,從而降低了其穩(wěn)定性。攝像頭又受到單片機采樣速率的影響,根據(jù)實驗發(fā)現(xiàn)用于路徑采集攝像頭的高度為10厘米、向下傾角30度為宜,用于交通燈信息采集攝像頭的高度為12厘米、向上傾角30度為宜。 其次
25、便是紅外對射管的安裝,智能車在兩處需要用紅外對管定位,一處是車庫門前,另一處是在路口。車庫有左右之分,所以在小車的左右兩側(cè)各需要一個對管,用以區(qū)分空余車位在車的左側(cè)還是右側(cè)。車庫中道路是按照雙車道設計的,所以檢測路口的紅外對管需要安裝在車的右側(cè),又因為采用的對管是同一個型號,為了避免出現(xiàn)錯誤判斷,檢測路口的傳感器安裝位置要高于其余兩個對管。 2.3.2 車場硬件安裝 智能車場的設計是獨立于自動入庫系統(tǒng)的,但本次設計需要車場相關硬件配合,所以這里對車場的硬件安裝提出簡單要求,其主要部分有:紅外對管、交通燈以及用于空位查詢的光電管。交通燈需要安裝十字路口,受到CCD攝像頭采集有效距離的影響,攝
26、像頭要安裝在靠近車的路口,同時位置要高于攝像頭支桿。安裝在車庫門口的紅外對管,其裝在右側(cè)還是左側(cè)取決于該車庫相對于主干道的位置。用于定位路口的紅外對管需要安裝距離路口11cm的地方,這是由裝在車上對管的位置決定[10]??瘴徊樵兊膫鞲衅靼惭b在車庫正中即可,車場系統(tǒng)硬件安裝如圖2-3所示。 圖2-3 車場系統(tǒng)安裝示意圖 第三章 硬件設計 3.1 單片機最小系統(tǒng)電路 3.1.1 單片機MC9S12XS128簡介 我們選用飛思卡爾公司的MC9S12XS128作為系統(tǒng)的主控芯片,其隸屬于MC9S12X系列。MC9S12X系列是HCS12系列的增強產(chǎn)品,其基于S12CPU內(nèi)核,可以達到之前
27、產(chǎn)品2到5倍的性能。S12X系列單片機增加了172條指令,可以執(zhí)行32位計算,總線頻率最高可達40MHz,并完全具備了CAN功能,改進了中斷處理能力。S12X單片機的CPU以復雜指令集CISC為架構,集成了中斷控制器,有豐富的尋址方式。其系列單片機最大的優(yōu)點是添加了一個平行處理的外圍處理器XGATE模塊,該模塊是一個可編程的16位RISC核心,設計的最高運行速率可達100MHz。此模塊是一個可編程的、智能的直接內(nèi)存存取模塊,可以進行通信處理、中斷處理和數(shù)據(jù)預處理。MC9S12X系列單片機目前有一下幾個子系列:MC9S12XA系列、MC9S12XB系列、MC9S12XD系列、MC9S12XE系列
28、、MC9S12XS系列[11]。 MC9S12XS128單片機存在三種不同的引腳封裝:112引腳LQFP封裝、80引腳QFP封裝、64引腳LQFP封裝,他們的功能基本相同。因為本次設計需要的引腳較多,所以選用的是112引腳的封裝。其主要功能如下:中央處理器是高速的16位處理單元,數(shù)據(jù)總線也是16位,由算數(shù)邏輯單元(ALU)、核心寄存器組以及控制單元三部分組成;因為單片機的地址總線是16位的,所以基本存儲器的尋址范圍是0x0000~0xFFFF,尋址空間為64KB。這些地址空間分給了數(shù)據(jù)存儲器RAM、程序存儲器EPROM、數(shù)據(jù)閃存器EEPROM和I/O口寄存器;共有十一個并行I/O口,分別是:
29、A、B、E、K、T、S、M、P、H、J和AD,其中除了A、B和H作為通用I/O口,其他端口都存在復用功能;中斷模塊實現(xiàn)了7級嵌套,每個中斷源靈活分配中斷級別,中斷源又分為可屏蔽中斷和不可屏蔽中斷;串行通信SCI模塊由13位的波特率選擇,同時支持LIN總線協(xié)議;16通道的A-D轉(zhuǎn)換位數(shù)有8位/10位/12位可選,轉(zhuǎn)換數(shù)據(jù)左對齊或右對齊,存在單次或連續(xù)轉(zhuǎn)換兩種方式;8通道8位的脈沖寬度調(diào)制器PWM可轉(zhuǎn)換成4通道16位;定時器/計數(shù)器模塊分為輸入捕捉/輸出比較模塊和周期中斷定時模塊;內(nèi)部集成了系統(tǒng)運行監(jiān)視功能,即看門狗功能,用硬件監(jiān)視軟件是否正常運行,從而可以保證出錯后系統(tǒng)快速恢復;工作環(huán)境溫度范圍
30、寬等[12]。 3.1.2 單片機時鐘電路設計 時鐘電路是單片機最小系統(tǒng)設計中的關鍵環(huán)節(jié),由于使用的晶振體工作頻率很高,如果電路設計不合理會使其工作時產(chǎn)生的高頻信號對其他電路造成干擾,特別對模擬部分的干擾較大,甚至會致使單片機系統(tǒng)無法正常工作。通常時鐘電路的連接方法有三種:串聯(lián)型、并聯(lián)型和使用外部有源振蕩器[13]。并聯(lián)型電路連接如圖3-1所示。 圖3-1 時鐘電路 圖中晶振的大小選用16MHz,電容C1、C2稱為負載電容,將它們分別與晶振連接后接地,作用是消減諧波對電路穩(wěn)定性的影響,其典型值為22pF。R3的作用是保證晶體正常起振,它的大小一般為10MΩ。在設計時鐘電路PCB
31、時要注意下面三點: (1) 晶振體的周圍盡量不要有線路,特別是對信號質(zhì)量要求高的器件連線; (2) 為了保證單片機的穩(wěn)定性和避免晶振對周圍電路造成干擾,它們之間的連線要盡量短,盡量寬; (3) 為了阻擋晶振體的噪聲,可以將地線包圍和覆蓋在其周圍,這樣也可以避免其他信號的干擾。 3.1.3 復位電路設計 單片機要正常工作需要在上電的時候給它一個復位信號,使CPU和其他部件都置為一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。此外,在調(diào)試程序的時候經(jīng)常需要手動對單片機復位,所以復位電路的設計必不可少。S12單片機的復位引腳是低電平有效,即在正常狀態(tài)時要求該引腳被上拉至高電平,在對單片機進行復位
32、時其要保持一定時間的低電平[14]。復位電路如圖3-2所示。 圖3-2 單片機復位電路 系統(tǒng)上電時,復位按鈕處于松開狀態(tài),由于電容C1要進行充電,所以電壓不會突然變化而只能緩慢上升,這樣就可以在復位引腳上保持一段時間的低電平。當按鈕被按下時,復位引腳被拉到低電平,單片機進入復位狀態(tài)。但是該電路不具備低壓復位保護功能,而且在對系統(tǒng)的穩(wěn)定性要求較高的場所,需要在R1兩端并聯(lián)反向保護二極管[15]。 3.1.4 BDM接口電路設計 BDM模塊可以實現(xiàn)程序下載、讀寫存儲器/寄存器、硬件斷點、條件斷點、單步運行、連續(xù)運行等全部在線調(diào)試功能,而只需要簡單的外部接口電路。此部分電路設計就是為了連
33、接BDM調(diào)試器的,BDM調(diào)試器的功能是將程序從微機上下載到單片機里,并可實現(xiàn)在線調(diào)試,同時它還可以給單片機供電[16]。BDM接頭存在兩種定義方式,一是飛思卡爾的方式,方法是將通訊口BKGD設置在第一腳,VDD在第六腳,若BDM插反,VDD將直接與BKGD短接,很可能引起芯片BDM模塊故障,甚至燒毀芯片。第二種方法是清華大學提出的,該方式將BKGD設置到第三腳,這樣即使BDM頭插反,也不會引起任何嚴重的后果。按照第二種方式設計的BDM接口電路如圖3-3所示。 圖3-3 BDM接口電路 為了充分保護單片機的引腳,通常串聯(lián)如圖所示的電阻R13,其典型阻值為51歐姆,此外單片機的工作模式?jīng)Q定
34、了要在MODC引腳與電源之間串聯(lián)一個3.3K的電阻。當使用BDM下載程序時,單片機需要處于調(diào)試模式,即要求MODC引腳處于低電平,實現(xiàn)過程是BDM調(diào)試器的對應引腳自動將其拉低。當單片機與調(diào)試器分離時,由于MODC上存在3.3K的上拉電阻,單片機就會自動回到普通模式。 3.2 電源電路設計 電源模塊的設計是為整個系統(tǒng)提供所需的電源,所以首先需要設計出滿足要求的電壓電流,其次需要考慮電源轉(zhuǎn)換率和噪聲等方面,穩(wěn)定可靠的電源是整個硬件電路穩(wěn)定運行的基礎。電源管理模塊主要包括:主電源、舵機電源、攝像頭電源、電機驅(qū)動電源以及各芯片供電電源[17]。其中主電源需要一塊充電電池,現(xiàn)在市場上常見的充電電池有
35、鎳鎘電池、鎳氫電池、鋰離子電池、堿性電池和封閉式鉛酸電池等幾類,其中鎳氫電池電路簡單、技術成熟而且價格便宜,所以這里選用一塊由6節(jié)型號相同1.2V電池串聯(lián)的7.2V電池,其額定容量為1300mAh。 3.2.1 5V電源電路設計 5V電源模塊是對7.2V電池進行電壓調(diào)節(jié),主要為單片機、視頻分離電路以及輔助電路提供穩(wěn)定電壓,所以要求電壓穩(wěn)定、噪聲小、電流容量大?,F(xiàn)在常用的5V穩(wěn)壓芯片有LM7805、LM2940等,其中LM7805內(nèi)部功率損耗大,全部壓降均轉(zhuǎn)換成熱量損失了,電源效率比較低,因此選用LM2940作為5V穩(wěn)壓芯片。LM2940穩(wěn)壓芯片的典型壓降只有0.5V,其最大輸出輸出電流可達
36、1A,并且具有短路保護的特點。5V穩(wěn)壓電路原理圖如圖3-4所示。 圖3-4 5V穩(wěn)壓電路圖 3.2.2 6V電源電路設計 6V電源只給前輪舵機提供工作電壓。舵機工作時需要的工作電流一般在幾十毫安左右,且電壓無需十分穩(wěn)定,所以這里選用LM2941作為穩(wěn)壓芯片。LM2941是一種可調(diào)式低壓穩(wěn)壓器,其優(yōu)勢主要在于:典型壓降為0.5V;最大輸出電流為1.0A;輸出電壓范圍為0~20V,最大輸出電壓可達26V;具有短路保護、熱過載保護和自我保護功能。此外當輸入輸出壓差超過3V 時, 芯片內(nèi)部有專門的電路將引腳地的靜態(tài)電流減小。當輸出電流為1A 并且輸入輸出壓差為5V 時,靜態(tài)電流僅為3
37、0mA。6V穩(wěn)壓電路原理圖如圖3-5所示。 圖3-5 6V穩(wěn)壓電路圖 當引腳ON/OFF為高電平時,芯片被關閉,引腳OUTPUT輸出電壓為0V,反之當其接低電平時, 芯片被開啟,有電壓輸出。輸出電壓的計算方法如式3-1所示。 (3-1) 從上式可以看出LM2941輸出電壓的大小取決于R2與R1比值的大小,其中它的基準電壓VREF的大小為1.275V,實際電路中R1通常取1K,根據(jù)輸出電壓為6V計算出R2的大小為3.7K[18]。此外輸出電壓的穩(wěn)定性;也取決于R1和R2的穩(wěn)定性;即電阻穩(wěn)定性好,則電路就不會因溫度等因素而引起輸出電壓的不穩(wěn)定,所以這兩個
38、電阻不能太小或者不接。需要注意的是電路中的電源濾波電容在布線時要原理調(diào)節(jié)端。 3.2.3 12V電源電路設計 CCD攝像頭的額定工作電壓是12V,所以需要使用升壓電路將7.2V電源升壓至12V,在這里我們使用MC34063構成直流升壓電路,這款芯片使用不同的外圍電路可產(chǎn)生不同的電壓值。MC34063是一塊高效的開關型DC/DC變換控制電路,內(nèi)部含有直流到直流變換器所要求的主要功能,即具有溫度補償?shù)幕鶞孰妷涸春捅容^器、具有激勵電流限制的占空比可控的振蕩器和驅(qū)動器以及大電流輸出開關等。其輸入的工作電壓為3~40V,工作頻率為100KHz,基準度為2%,控制的開關電流達到1.5A。 MC340
39、63片內(nèi)的恒流源不斷對接在CT引腳上的定時電容進行充電和放電,從而使振蕩器產(chǎn)生震蕩波。因為充電和放電的電流都是恒定的,所以振蕩器的振蕩頻率完全取決于定時電容的容量。當振蕩器對外充電時,片內(nèi)與門的C輸入端呈現(xiàn)為高電平,反之,則呈現(xiàn)出低電平。當比較器的輸入電平低于閥值電平時,與門的D輸入端表現(xiàn)為高電平,反之,則表現(xiàn)為低電平。當C端和D端都為高電平時,片內(nèi)觸發(fā)器被置為高電平,從而使輸出開關管導通。當C端和D端有一端為低電平時,觸發(fā)器被置為低電平,輸出開關管就被關閉。 通過判斷連接在5V電源與SI檢測口的電阻上的壓降來完成電流限制的功能。當該電阻上的壓降接近于300mV時,電流限制功能便被啟用,主要
40、是通過對CT引腳上定時電容進行快速充電,從而減少充電時間和輸出開關管的導通時間,其結果是輸出開關的關閉時間減少,電路中的電流大小下降,達到電流限制功能[19]。12V穩(wěn)壓電路如圖3-6所示。 圖3-6 12V穩(wěn)壓電路圖 所設計的電路是將7.2V升壓至12V,根據(jù)MC34063的工作原理可知,電路輸出電壓的大小只與電阻R1和R2有關,但R1R2的阻值不能過小,否則支路的分流電流將會變大,導致輸出端的負載能力下降。這里選用電阻R1R2的大小分別為2K和18K,具體計算方法按式3-2所示。 (3-2) 根據(jù)MC34063工作頻率等特性,可以計
41、算出定時電容CT的大小為470pF,濾波電容C和C0的大小都為100uF。電路中選用0.3歐姆的電阻作為檢測電阻RSC,將電感L的大小設置為100uH。 3.3 直流電機及電機驅(qū)動電路 3.3.1 電機RS-380簡介 直流電機的結構可以分為定子和轉(zhuǎn)子兩大部分組成。直流電機運行時靜止不動的部分稱為定子,定子的主要作用是產(chǎn)生磁場,組成部分有機座、主磁極、換向極、端蓋、軸承和電刷裝置等。運行時轉(zhuǎn)動的部分稱為轉(zhuǎn)子,其主要作用是產(chǎn)生電磁轉(zhuǎn)矩和感應電動勢,是直流電機進行能量轉(zhuǎn)換的樞紐,所以通常又稱為電樞,組成部分有轉(zhuǎn)軸、電樞鐵心、電樞繞組、換向器等。 電機是小車動作的主要執(zhí)行機構,在這我
42、們選用RS-380直流電機作為驅(qū)動電機。因為直流電機速度控制性能優(yōu)良,其輸出轉(zhuǎn)矩較大,可直接拖動后輪負載,重要的是可通過調(diào)節(jié)控制脈沖直接控制轉(zhuǎn)速和方向。電機RS-380的額定電壓為7.2V,工作電壓范圍3~8V,空載轉(zhuǎn)速在7.2V時可達30000轉(zhuǎn)。工作電流的范圍為0.75~1.30,堵轉(zhuǎn)電流可達24A。其在很多方面有優(yōu)越性,具體如下: (1)較大的轉(zhuǎn)矩能夠克服傳動裝置的摩擦和負載轉(zhuǎn)矩; (2)電機速度調(diào)整范圍寬且精度高,機械特性及調(diào)節(jié)特性線性好,且速度平穩(wěn); (3)電機有很硬的負載特性且過載能力較大,可保證速度不受負載沖擊的影響; (4)響應速度快,可滿足復雜變化速度的情況;
43、 (5)可以長時間的處于停轉(zhuǎn)狀態(tài)而不會燒毀電機。 3.3.2 電機驅(qū)動電路 電機驅(qū)動電路要求不僅能夠使電機在所需轉(zhuǎn)速轉(zhuǎn)動,而且要求能夠?qū)崿F(xiàn)反轉(zhuǎn)的功能,所以需要使用H橋?qū)﹄姍C驅(qū)動。H橋驅(qū)動電路因其形狀酷似英文字母H而得名,其電路包含4個三極管和一個電機,三極管位于H的4個垂直腿,電機則位于H的橫杠上。如要使電機轉(zhuǎn)動,就要使位于對角上的三極管導通,根據(jù)導通情況不同,電流會從左至右或從右至左的流過電機,從而達到對單片機的正反控制。通過調(diào)節(jié)電機導通的時間,達到控制電機轉(zhuǎn)速的目的,當無需電機轉(zhuǎn)動時,讓四個三極管都不導通即可。但需要注意的是同側(cè)三極管不能一起導通,否則會導致短路。4個三極管的安排應該
44、是上面兩個位同種,下面兩個位另一種[20]。H橋示意圖如圖3-7所示。 圖3-7 H橋驅(qū)動電路示意圖 現(xiàn)在市場集成H橋電機驅(qū)動芯片有33886、BTS7960等,因為小車電機內(nèi)阻大約為430毫歐,而飛思卡爾公司的33886內(nèi)部的每個MOSET導通電阻都在120毫歐以上,會大大增加電樞回路總電阻,導致直流電機轉(zhuǎn)速下降,驅(qū)動電路的效率也隨著降低,所以在本次設計中不采用33886芯片。選用BTS7960作為主控芯片。BTS7960是Novalithic系列的三個獨立芯片的一部分,它是一般用于電機驅(qū)動的大電流半橋集成芯片。其內(nèi)部含有一個N溝道的低邊MOSFET、一個P溝道的高邊MOSFET
45、和一個驅(qū)動IC,驅(qū)動IC具有電流診斷、邏輯電平輸入、斜率調(diào)節(jié)和過溫、過壓、欠壓、過流及短路保護等功能。BTS7960電源輸入為5~25V,通態(tài)電阻典型值為16mΩ,驅(qū)動電流可達43A。 使用兩片BTS7960構成電機全橋驅(qū)動,一片就相當于一側(cè)的半橋。當INH引腳為高電平時,便可使能BTS7960,反之,芯片邊進入睡眠狀態(tài),所以設計中將兩芯片的這一引腳連接在一起。將IN腳與單片機的PWM輸出口連接,當IN為高電平且INH為高電平時,高邊MOSET三極管導通,OUT引腳輸出高電平;當IN為低電平且INH為高電平時,低邊MOSET三極管導通,OUT引腳輸出為低電平。SR引腳外接電阻的大小,可以調(diào)節(jié)
46、MOS管導通和關斷的時間,具有防電磁干擾的功能,該電阻越大則三極管延遲時間就越大,但開關變化率就會越小,綜合考慮開關變化率和死區(qū)時間,選取該電阻阻值為10K。由于電機在進行PWM調(diào)制時三極管開關速率較快,導致電路產(chǎn)生較大的紋波電壓,所以在電源與地之間連接一個470uF的電容。電機驅(qū)動電路如圖3-8所示。 圖3-8 電機驅(qū)動電路 圖中R1、R2、R5和R6為電路的限流電阻,起保護電路的作用,防止過大的感應電壓對芯片內(nèi)部邏輯電路造成傷害,根據(jù)實驗選用阻值10K比較理想。IS引腳是電流檢測輸出引腳,正常情況下片內(nèi)電流源與該引腳直接相連,根據(jù)計算可得該電阻阻值為2.2K。 3.4 視頻采集電
47、路 視頻采集模塊主要有攝像頭、視頻分離電路以及單片機AD模塊組成,攝像頭輸出的視頻信號,一路傳給分離電路,分離出相應的場行同步信號;一路傳給單片機AD口,便于有用信號的采集,即視頻信號是AD采集的基礎。 3.4.1 CCD攝像頭的工作原理 攝像頭有彩色和黑白之分,因為本次設計利用攝像頭的目的是采集道路中心線和信號燈方向,所以只需提取畫面的灰度信息即可,而不需要知道其色彩信息,也就是說黑白攝像頭就可以滿足設計要求。攝像頭的主要組成部分有鏡頭、圖像傳感芯片和外圍電路。其最重要的部分是圖像傳感芯片,該芯片需要與外圍電路配合才能正常工作,單板就是圖像傳感芯片與外圍電路的總稱,單板上通常的
48、三個端子是電源端、地端和視頻信號端,部分板子上還有一個音頻信號端。通常我們所見的攝像頭就是單板與鏡頭、外殼、引線和接頭組裝在一起而成的。 攝像頭的主要工作原理是:按一定的分辨率,以隔行掃描的方式采樣圖像上的點,當掃描到某點時,就通過圖像傳感芯片將該點處圖像的灰度轉(zhuǎn)換成與灰度成一一對應關系的電壓值,然后將此電壓值通過視頻信號端輸出。具體過程是攝像頭連續(xù)地掃描圖像上的一行,就輸出一段連續(xù)的電壓視頻信號,該電壓信號的高低起伏正反映了該行圖像的灰度變化情況。當掃描完一行,視頻信號端就輸出一低于最低視頻信號電壓的電平,并保持一段時間,即緊接著每行圖像對應的電壓信號之后都會有一個電壓凹槽,此凹槽叫做行同
49、步脈沖,它是掃描換行的標志。因為攝像頭是隔行掃描的方式,所以攝像頭跳過一行后,就開始掃描新的一行,如此下去直到掃描完該場的視頻信號。之后就會出現(xiàn)一段場消隱區(qū),此區(qū)中有若干個復合消隱脈沖,在這些消隱脈沖中,有個脈沖遠寬于其他的消隱脈沖,該消隱脈沖又稱為場同步脈沖,它是掃描換場的標志。場同步脈沖標志著新的一場的到來,但是場消隱區(qū)恰好跨在下一場的開始部分和上一場的結尾部分,只有等場消隱區(qū)過去,下一場的視頻信號才真正到來[21]。攝像頭輸出信號如圖3-9所示。 圖3-9 攝像頭視頻信號 我國的電視標準為PAL制式,黑白視頻信號規(guī)定每幀圖像共625行,每場為312.5行,在每場的312.5行中,
50、有一些行要用作場消隱,是不包含視頻信號的,按照CCIR656標準規(guī)定的行編號方法,奇場的行號為第1至312.5行,偶場的行號為第312.5至625行[22]。 攝像頭每秒掃描25 幅圖像,每幅又分奇、偶兩場,先奇場后偶場,奇場時只掃描圖像中的奇數(shù)行,偶場時則只掃描偶數(shù)行,故每秒掃描50 場圖像,即每場需要0.02秒,每行需要64微妙,但在實際測量中每行的時間為40微妙。經(jīng)示波器測試有效視頻信號的電壓范圍為2~3V。 3.4.2 視頻分離電路 為了提取出視頻電壓中的有用信號,首先要分離出信號中的行同步脈沖,消隱脈沖和場同步脈沖。現(xiàn)在進行分離的方法可以分為硬件和軟件兩種:軟件方法是直接
51、通過單片機AD提取,因為行同步脈沖、消隱脈沖或場同步脈沖信號的電平低于視頻信號電壓,可以在軟件上設置一個電壓閥值,通過對采集信號判斷出各種同步信號;硬件方法是利用外部芯片提取出攝像頭信號的行同步脈沖、消隱脈沖和場同步脈沖以供單片機作控制之用。因為單片機的速度有限,而一些脈沖的間隔時間又較短,為了減輕其處理負擔,這里采用了硬件的方法進行信號的處理,選用芯片LM1881作為電路核心,其和外圍電路構成的攝像頭圖像采集電路如圖3-10所示。 圖3-10 攝像頭圖像采集電路 如上圖所示CVBS引腳(即2腳)為視頻信號輸入端,在其之前接一個電容濾除雜波,與此同時視頻信號也接入單片機的AD0口;VS
52、YNC引腳(即3腳)為場同步信號輸出端,與單片機輸入捕捉端口PT1連接,當攝像頭信號的場同步脈沖到來時,該端將變?yōu)榈碗娖?,一般維持230us,然后重新變回高電平;CSYN引腳(即2腳)為行同步信號輸出端,與單片機輸入捕捉端口PT0連接,當信號中的行同步脈沖到來時,該端將變?yōu)榈碗娖剑籓DD引腳為奇偶同步信號輸出端,當攝像頭信號處于奇場時,該端為高電平,當處于偶場時,為低電平。由此可知,不僅場同步信號可以作為換場的標志,ODD引腳也可作為信號與單片機PT1腳相連[23]。 3.5 舵機及舵機驅(qū)動電路 本設計中使用舵機對小車前進方向控制,舵機是一種位置伺服的驅(qū)動器,可以用于那些需要角度不斷變化并
53、可以保持的控制系統(tǒng),舵機是一種學名,它其實是一種伺服馬達。通常舵機有紅色、黑色和白色三個引出線,其中紅色引線是舵機的電源線,為電機提供工作電壓;黑線是地線;白色引線是舵機控制信號的輸入端。舵機的控制是智能車尋跡行走的關鍵,要求舵機驅(qū)動的轉(zhuǎn)向機構具有準確的角度控制和快速響應的能力。所用舵機接線如圖3-11所示。 圖3-11 舵機接線圖 單片機的PWM控制信號傳給舵機的紅色端口,通過占空比的不同來控制舵機的位置??刂菩盘栍啥鏅C內(nèi)部接收機的通道進入信號調(diào)制芯片,經(jīng)比較獲得直流偏置電壓。舵機內(nèi)部含有一個基準電路,它可以產(chǎn)生周期為20ms,寬度為1.5ms的基準信號,將電位器電壓與直流偏置電壓進
54、行比較獲得電壓差輸出,最后電壓差的正負輸出到電機驅(qū)動芯片決定電機的正反轉(zhuǎn)。當電機轉(zhuǎn)速一定時,通過級聯(lián)減速齒輪帶動電位器旋轉(zhuǎn),使得電壓差為0,電機停止轉(zhuǎn)動[24]。 在這選用的舵機型號是S3010,其在6V電壓時轉(zhuǎn)動速度可達0.16s每60度。由舵機的特性可知,在實際中PWM的周期也為20ms,當脈沖高電平的時間為1.5ms時,舵機轉(zhuǎn)動的角度為0;當脈沖高電平時間為0.5ms時,舵機向右打輪90度;當脈沖高電平時間為2.5ms時,舵機向左打輪90度。由此可推導出舵機轉(zhuǎn)動角度與脈沖寬度的計算公式,如果要求舵機轉(zhuǎn)動X度,則脈沖高電平時間T的計算如式3-3所示。
55、 (3-3) 由上式可知舵機轉(zhuǎn)動1度時,所需脈沖高電平時間為0.011ms。一般舵機的位置等級有1024個,由此可計算出舵機角度精度等級為0.18度,脈沖控制精度為2us(2ms/1024),即脈沖每改變2us舵機就轉(zhuǎn)動0.18度。但在實際小車安裝硬件中,舵機的轉(zhuǎn)動范圍只有左右30度。 3.6 紅外對管電路 紅外線是光譜中波長從760至400微米的電磁波,其是不可見光線,人眼無法識別,紅外線可用于檢測的優(yōu)點是受其他光線影響較小。紅外對管是紅外線發(fā)射管和紅外線接受管或紅外線接收頭的總稱,其中紅外線接收管又可分為光電二極管和光電三極管,光電二極管是將光信號轉(zhuǎn)換為電信號
56、,而光電三極管不僅將光信號轉(zhuǎn)換為電信號,又將其電流進行放大了。紅外接收管的工作原理是:紅外線接收管核心部件是一個特殊材料的PN結,在結構上與普通二極管相比有很大的改變,為了能夠更多更大面積的接受入射光線,紅外線接收管PN結面積盡量做的比較大,電極面積盡量減小,而且PN結的結深很淺,一般小于1微米。紅外線接收二極管是在反向電壓作用之下工作的。在沒有光照時,反向電流很?。ㄒ话阈∮?.1微安),稱為暗電流。在有紅外線光照時,攜帶能量的紅外線光子進入PN結后,把能量傳給共價鍵上的束縛電子,使部分電子掙脫共價鍵,從而產(chǎn)生電子空穴對。它們在反向電壓作用下參加漂移運動,使反向電流明顯變大,光的強度越大,反向
57、電流也越大,這種特性稱為光電導。紅外線接收二極管在一般照度的光線照射下,所產(chǎn)生的電流叫光電流[25]。如果外電路上存在負載,負載上的電壓信號就會隨之光強度的變化而變化。 在本次實驗中選用的3個是NPN常開型紅外接收三極管,發(fā)射管是紅外發(fā)射二極管,其有效距離是50厘米。右側(cè)車庫接受管的信號引腳與單片機PT2口連接,左側(cè)車庫接受管的信號引腳與單片機PT3口連接,十字路口接收管的信號引線與單片機PT4口連接。紅外接受與單片機的連接如圖3-12所示。 圖3-12 紅外接受管電路 由紅外接受管的特性可知,在輸出和正極之間串連一個1K左右的上拉電阻可直接接單片機的IO口,當紅外接收管沒有檢測到信
58、號時,其信號輸出端在上拉電阻的作用下呈現(xiàn)高電平;當有紅外信號射向接收管時,其輸出端呈現(xiàn)為低電平。 第四章 軟件設計 4.1 主函數(shù) 主函數(shù)是整個程序的入口,實現(xiàn)軟件功能的主體,這里主要完成的任務是對系統(tǒng)進行初始化及在不同條件下調(diào)用各種函數(shù)[26]。初始化程序包括參數(shù)初始化、鎖相環(huán)初始化、輸入捕捉初始化、定時初始化、PWM初始化以及AD初始化。通過輸入捕捉功能檢測單片機PT2口、PT3口和PT4口電平的高低變化,從而改變程序調(diào)用參數(shù)cx的數(shù)值,根據(jù)cx的大小決定主函數(shù)調(diào)用各子函數(shù)。當cx的值為0時,執(zhí)行自動循跡子程序,通過單片機內(nèi)部AD對CCD攝像頭的數(shù)據(jù)采集,判斷出小車與中心黑線的偏
59、差,將偏差送給舵機1子程序,調(diào)整小車的狀態(tài);當cx的值為1時,說明小車已經(jīng)行駛到十字路口,同樣用AD將信號燈的數(shù)據(jù)采集出來,通過辨別信號燈的指向,確定小車的轉(zhuǎn)向。當cx的值為2時,說明智能車已經(jīng)行至車庫,則執(zhí)行入庫程序,這里主要利用單片機的定時器功能,通過定時來控制電機方向和舵機轉(zhuǎn)角,至此整個程序運行結束。主程序流程如圖4-1所示。 圖4-1 主程序流程圖 4.2 初始化程序設計 4.2.1 鎖相環(huán)初始化設計 單片機一般采用內(nèi)部振蕩的方式為其提供時鐘源,振蕩器時鐘二分頻后作為MCU內(nèi)部總線時鐘。如果想要系統(tǒng)有更加快速的運行速率,那么可以通過提高內(nèi)部總線時鐘頻率的方法實現(xiàn),但過高
60、的外部時鐘容易受到干擾,同時其也會影響其他器件的正常工作。MC9S12XS128單片機內(nèi)部集成了時鐘產(chǎn)生模塊,可利用外部穩(wěn)定的振蕩器頻率,鎖定內(nèi)部更高的壓控振蕩器頻率作為系統(tǒng)時鐘,其鎖相環(huán)時鐘可達80MHz,即使內(nèi)部總線時鐘達到40MHz[27]。 與鎖相環(huán)相關的寄存器有時鐘分頻寄存器(REFDV)、時鐘合成寄存器(SYNR)、鎖相環(huán)控制寄存器、時鐘產(chǎn)生標志寄存器、時鐘后分頻寄存器以及時鐘選擇寄存器。其中后分頻寄存器用于設定?VCOCLK與?PLLCLK之間的頻率比例,一般比例為1,?VCOCLK為內(nèi)部壓控振蕩器頻率,?PLLCLK為鎖相環(huán)時鐘頻率;時鐘選擇寄存器用于控制總線時鐘的選擇,這里
61、選擇鎖相環(huán)時鐘頻率的二分頻作為內(nèi)部總線的時鐘;鎖相環(huán)控制寄存器用于確定鎖相環(huán)的功能;時鐘分頻寄存器和時鐘合成寄存器用于確定鎖相環(huán)與內(nèi)部總線的時鐘頻率,內(nèi)部總線時鐘頻率?BUSCLK的計算方法入式4-1所示。 ?BUSCLK=?PLLCLK/2=?VCOCLK/2=?OSCCLK?(SYNR+1)/(REFDV+1) (4-1) 上式中?OSCCLK為外部振蕩器的頻率,即?OSCCLK等于16MHz;REFDV的值由時鐘分頻寄存器的后5位確定,為了使鎖相環(huán)穩(wěn)定,應該選擇盡可能大的REFDV,綜合考慮到其他因素,程序中設置其值為1;SYNR的值由時鐘合成寄存器的后5位決定,設計中要求內(nèi)
62、部總線的時鐘頻率達到40MHz,所以這里設置時鐘合成寄存器的值為0x44,即SYNR的值為4。 4.2.2 TIM模塊初始化設計 MC9S12XS128單片機內(nèi)部設置有定時器TIM模塊,其全稱是Timer Module,這部分可以完成輸入捕捉、輸出比較和脈沖累加等功能,可用于測量輸入波形、產(chǎn)生輸出波形、統(tǒng)計脈沖或邊沿個數(shù),還可用于作為時間基準使用。TIM模塊的主要組成部分有1個16位自由運行計數(shù)器、1個16位脈沖累加器和8個16位輸入捕捉/輸出比較通道,通過可編程預分頻器為其提供時鐘源[28]。這里使用的是TIM模塊的輸入捕捉功能,輸入捕捉功能是通過捕捉16位自由運行計數(shù)器的計算值來檢測外
63、部事件和輸入變化的。捕捉端口PTO用于檢測視頻的行同步信號,捕捉端口PT1用于檢測視頻的場同步信號,捕捉端口PT2用于檢測交叉口的對管信息,捕捉端口PT3用于檢測右車庫信息,捕捉端口PT4用于檢測左車庫信息。 與輸入捕捉功能相關的寄存器有定時器系統(tǒng)控制寄存器1(TSCR1)、定時器輸入捕捉/輸出比較選擇寄存器(TIOS)、定時器控制寄存器3(TCTL3)、定時器控制寄存器4(TCTL4)及定時器中斷使能寄存器(TIE)等。其中TSCR1寄存器控制定時器的使能位;TIOS寄存器用于選擇定時器的具體功能,清零時相應通道起輸入捕捉的作用,置一時相應通道起輸出比較的作用,硬件上需要5個輸入捕捉端口,
64、因此TIOS的值為0xe0,即通道0、1、2、3和4作為輸入捕捉端口;TCTL3和TCTL4是輸入捕捉邊沿控制位,程序上將其分別設置為0x01和0x55,也就是說5個端口都是上升沿捕捉;TIM寄存器控制定時器的中斷使能位。 4.2.3 PIT模塊初始化設計 周期中斷定時器PIT模塊的全稱是Periodic Interrupt Timer,其主要作用是周期性產(chǎn)生中斷和外設模塊觸發(fā),其包含4路24位定時器,程序中利用PIT模塊實現(xiàn)定時功能。PIT模塊的工作原理是:通過片內(nèi)總線時鐘的8位微計數(shù)器減一操作完成,當此微計數(shù)器的數(shù)值減到0時,就會觸發(fā)高16位計數(shù)器做一次減一操作,如此循環(huán)計數(shù)直到這兩個
65、計數(shù)器的數(shù)值都減到0,則就會產(chǎn)生定時器溢出中斷,從而完成計時功能。XS128單片機的這部分有運行、等待、停止和凍結四種工作模式[29]。 設計中決定PIT模塊定時時間的寄存器是微定時器加載寄存器和加載寄存器,其中微定時器加載寄存器是給微定時器0和1裝載數(shù)據(jù)的,加載寄存器為16為計數(shù)器裝載計數(shù)初值。如果16位計數(shù)器和8位微計數(shù)器對應的加載寄存器的值分別是A和B,則定時器定時時間的計算如式4-2所示。 T =(A+1)?(B+1)/?BUSCLK (4-2) 在上面已經(jīng)設計了系統(tǒng)內(nèi)部總線的時鐘頻率為40MHz,這部分設計要求定時
66、最小時間為100ms,再通過這個時間進行更大時間的計時,則A的值為19999,B的值為199。此外,其他的寄存器決定了PIT的主要工作功能,定時器的定時通道選擇0,多路選擇寄存器的值設置為0x00,即設定通道0連接的微定時基準計數(shù)器也是0,同時要開啟定時器中斷使能。 4.2.4 PWM模塊初始化設計 脈沖寬度調(diào)制PWM是嵌入式應用系統(tǒng)的常用功能之一,即產(chǎn)生一個在低電平和高電平之間交替重復的方波輸出信號,通過軟件編程可以調(diào)節(jié)方波信號波形的占空比、周期以及相位。S12XS系列單片機可以通過兩種方式產(chǎn)生PWM信號,一種是利用TIM模塊的比較功能,另一種是采用MCU內(nèi)置的PWM模塊實現(xiàn),前者可通過軟件編程設定輸出任意脈沖信號,但其不易產(chǎn)生精確的脈沖序列,后者專門用于輸出PWM信號,而且占用的CPU資源極少。MCS12XS128內(nèi)置的PWM模塊包括8路具有可編程周期和占空比的PWM通道,亦可通過設置變?yōu)?個16位的PWM通道,每個通道由獨立運行的8位通道計數(shù)器、通道周期寄存器和占空比寄存器等組成[30]。 設計中用到3路PWM控制,即舵機控制和電機控制,其中電機要實現(xiàn)正反轉(zhuǎn),所以電機需
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。