基于MC9S12XSl28單片機的智能循跡小車的硬件設(shè)計
摘要:給出了一種基于MC9S12XSl28單片機的智能模型車硬件系統(tǒng)的設(shè)計方法,該系統(tǒng)的核心控制器采用MC9S12XSl28芯片,并采用數(shù)字攝像頭0V6620采集路面信息,電機驅(qū)動模塊則采用MC33886 H橋芯片。整個系統(tǒng)根據(jù)對所采集圖像信息的分析和處理來控制舵機轉(zhuǎn)向并調(diào)整后輪驅(qū)動電機的速度,從而實現(xiàn)小車自動循跡的功能。
關(guān)鍵詞:智能車;MC9S12XSl28單片機;自動循跡;攝像頭;OV6620
O 引言
智能車輛作為智能交通系統(tǒng)的關(guān)鍵技術(shù)之一,是許多高新技術(shù)綜合集成的載體。它體現(xiàn)了車輛工程、人工智能、自動控制及計算機技術(shù)于一體的綜合技術(shù),是未來汽車發(fā)展的趨勢。本自動循跡小車系統(tǒng)采用數(shù)字攝像頭0V6620來采集路面信息,核心控制器MC9S12XSl28則可分析和處理圖像數(shù)據(jù),識別道路中央黑色引導(dǎo)線。另外,控制器還可根據(jù)道路前方黑色引導(dǎo)線距車體中心線之間的偏差送出控制信號給轉(zhuǎn)向舵機和電機驅(qū)動模塊MC33886,進而控制小車,以實現(xiàn)快速穩(wěn)定的循跡行駛。
1 系統(tǒng)硬件總體架構(gòu)
整個系統(tǒng)可以構(gòu)成一速度閉環(huán)控制系統(tǒng),其總體框圖如圖1所示。
圖中,RS232模塊用于向PC機上傳圖像采集數(shù)據(jù),車速檢測采用歐姆龍公司的E6A2CS3C旋轉(zhuǎn)編碼器來檢測后輪驅(qū)動電機速度。
2 核心控制板設(shè)計
本系統(tǒng)的核心控制板實質(zhì)上是MC9S12XSl28的最小硬件系統(tǒng)。它由時鐘晶振電路、BDM接口電路、復(fù)位電路、MC9S12XSl28芯片、濾波電感、電容及接插件等構(gòu)成。
另外,可用BDM(背景調(diào)試模塊)來向目標板下載程序。以將MC9S12XSl28內(nèi)部128KBFLASH中的程序擦除,這是BDM的編程功能。通過單片機只需用一個6針插頭將信息引出并和BDM調(diào)試器連接。其中BKGD是背景調(diào)試引腳。它可采用自定義協(xié)議并通過BDM調(diào)試工具進行單線雙向通信,從而進行實時在線調(diào)試。
3 外圍接口和驅(qū)動電路板設(shè)計
3.1 電源管理模塊
整個系統(tǒng)中各模塊的電壓分配如圖2所示。其中充電電池的7.2 V電壓經(jīng)LM2940-5.0模塊轉(zhuǎn)換后,可產(chǎn)生5 V電壓分別供給MC9S12XSl28單片機和RS232電平轉(zhuǎn)換芯片、OV6620攝像頭模塊和光電耦合器件6N137,同時給核心控制器的MC9S12XSl28單片機單獨進行5 V供電以防干擾。單片機和MC33886電機驅(qū)動模塊之間則通過光電耦合器件進行連接。電池的7.2 V電壓則直接供給E6A2CS3C光電編碼器、舵機和MC33886驅(qū)動模塊。其電源管理模塊電路如圖3所示。
3.2 OV6620圖像采集模塊
OV6620攝像頭模塊采用OV6620彩色數(shù)字CMOS圖像傳感器,其圖像是NAL制,一幀圖像為356x292像素,數(shù)據(jù)格式為YCrCb4:2:2,GRB4:2:2和raw GRB。內(nèi)部的I2C可編程用來調(diào)整攝像頭的參數(shù)(如最大灰度、對比度、曝光率控制等),其本質(zhì)是SCCB協(xié)議的寄存器寫入。本設(shè)計采用默認模式,OV6620攝像頭模塊和MC9S12XSl28單片機的引腳連接圖如圖4所示。其中:Y0-Y7為灰度信號輸出引腳。由于本系統(tǒng)只需識別道路中黑線,故只需提取數(shù)據(jù)格式為YCrCb4:2:2中的亮度信號Y?;叶刃盘朰0-Y7則可送給MC9S12XSl28單片機的B口。
SCCB協(xié)議寫入的數(shù)據(jù)信號引腳SDA和數(shù)據(jù)時鐘引腳SCL分別連接MC9S12XSl28單片機的SCI接口的PS0、PSl引腳。
采集圖像數(shù)據(jù)的時鐘控制信號FODD(奇偶場同步信號)、HREF(行中斷信號)、VSYN(場中斷信號)分別接單片機中ECT。(增強型捕捉定時器)模塊中的PTl、PT2、PT6引腳。利用增強型捕捉定時器模塊的輸入捕捉功能,每個通道可以擁有單獨的中斷向量,各通道分別設(shè)置成不同的觸發(fā)極性,以滿足HREF(行中斷信號)要通過下降沿捕捉及VSYN(場中斷信號)要通過上升沿捕捉的要求。像素同步信號PCLK被忽略的原因是因為MC9S12XSl28單片機采集圖像的速度比CMOS的圖像輸出慢。
通過VTO模擬圖像輸出引腳可以外接監(jiān)視器來查看采集圖像的質(zhì)量。
3.3 電機驅(qū)動模塊
驅(qū)動電機控制選用MC33886 H橋電機驅(qū)動芯片,其整個驅(qū)動電路如圖5所示。在此應(yīng)用中,MC33886的作用是將恒定的直流電源電壓(電池電壓)調(diào)制成頻率一定、寬度可變的PWM脈沖電壓序列,從而改變輸出平均電壓的大小。為了增強驅(qū)動電機的能力,可將兩片MC33886并聯(lián)。而為了提高控制精度,則可將MC9S12XSl28單片機內(nèi)部的PWM2和PWM3兩個通道8位寄存器級聯(lián)成16位寄存器,并從PWM3通道輸出脈沖。同理。可將PWM4和PWM5兩個通道8位寄存器也級聯(lián)成16位寄存器,也從PWM5通道輸出脈沖,PWM2和PWM3通道與引腳PP3和PP5復(fù)用,MC9S12XSl28單片機的PP3和PP5引腳輸出的PWM脈沖經(jīng)器件6N137光耦隔離后,通過信號INl和IN2進入MC33886 H橋輸入端,MC33886 H橋輸出端OUTl和OUT2分別接電機電樞兩端,從而控制電機的四象限運行。
3.4 車速檢測模塊
為了構(gòu)成閉環(huán)系統(tǒng),需要檢測小車速度。本系統(tǒng)中的反饋通道中采用了歐姆龍公司的增量型旋轉(zhuǎn)編碼器E6A2CS3C,并采用五線制(三根脈沖線,2根電源線),分辨率為200P/R。由于只測量車速,故只需3線,即棕色線(7.2 V電壓)、黑色線(A相輸出脈沖)和藍色線(接地),其中黑色線(A相輸出脈沖)引入單片機PT0引腳,以統(tǒng)計脈沖個數(shù),獲取電機速度。車速檢測模塊的接線如圖6所示。
3.5 舵機模塊
本設(shè)計采用的是Futaba S3010型號的舵機,其接線如圖7所示。該舵機實質(zhì)上是一個位置隨動系統(tǒng),它由舵盤、減速齒輪組、位置反饋電位計、直流電機和控制電路組成,通過內(nèi)部位置反饋,可使它的舵盤輸出轉(zhuǎn)角正比于給定控制信號,這樣,在負載力矩小于其最大輸出力矩的情況下,它的輸出轉(zhuǎn)角就會正比于給定的脈沖寬度。Futaba S3010型號舵機的接口是三根線,黑線(接地)、紅線(電源線)和白色線(控制信號線)。為了提高舵機的響應(yīng)速度,一般選擇最大的工作電壓7.2 V,并將單片機內(nèi)部PWM0和PWMl兩路8位輸出級聯(lián)成一個16位PWM輸出,然后從PWMl通道輸出脈沖。同時由于PWMl通道和引腳PPl復(fù)用,因此,引腳PPl便可輸出控制脈沖給舵機。
4 結(jié)束語
本文介紹了黑線循跡智能車的硬件系統(tǒng)實現(xiàn)方法,實踐證明,該車自動循跡效果好,響應(yīng)速度快,在規(guī)定的賽道上能跑出20秒的好成績,從而證明了該系統(tǒng)硬件設(shè)計的正確性。