版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第九屆“飛思卡爾”杯全國大學生智能汽車競賽技 術(shù) 報 告 學 校:唐山師范學院 隊伍名稱:飛揚隊 參賽隊員:蔡紅葉 楊飛 辛浩 帶隊教師:趙欣 李亞美 關(guān)于技術(shù)報告和研究論文使用授權(quán)的說明本人完全了解第九屆“飛思卡爾”杯全國大學生智能汽車競賽關(guān)保留、使用技術(shù)報告和研究論文的規(guī)定,即:參賽作品著作權(quán)歸參賽者本人,比賽組委會和飛思卡爾半導體公司可以在相關(guān)主頁上收錄并公開參賽作品的設(shè)計方案、技術(shù)報告以及參賽模型車的視頻、圖像資料,并將相關(guān)內(nèi)容編纂收錄在組委會出版論文集中。參賽隊員簽名: 帶隊教師簽名: 日 期: 摘 要本文設(shè)計的智能車系統(tǒng)以飛思卡爾公司生產(chǎn)的mc9s12XS128微控制器為核心控制單
2、元;利用線性CCD采集賽道信息,跟蹤法提取賽道兩邊的黑線信息,用于賽道識別和控制;利用編碼器反饋模型車的實際速度,使用PID+BANGBANG控制算法調(diào)節(jié)驅(qū)動電機的轉(zhuǎn)速;根據(jù)前方黑線的信息,進行圖像處理,用PD算法控制轉(zhuǎn)向舵機的角度,實現(xiàn)了對模型車運動速度和運動方向的閉環(huán)控制。為了提高模型車的速度和穩(wěn)定性,使用上位機、無線模塊、液晶模塊等調(diào)試工具,并進行了大量硬件與軟件測試。實驗結(jié)果表明,該系統(tǒng)設(shè)計方案確實可行。 關(guān)鍵字:mc9s12XS28,線性CCD,PD,PID+BANGBANG 目錄摘 要III第一章 引 言11.1 智能車研究背景11.1.1 發(fā)展歷史11.1.2 智能車的應用前景1
3、1.2 飛思卡爾智能汽車大賽介紹2第二章 系統(tǒng)總體設(shè)計42.1系統(tǒng)概述42.2整車布局4第三章 智能車機械設(shè)計及安裝63.1車體機械建模63.2底盤高度的調(diào)整與固定63.3前輪的調(diào)整73.3.1 主銷后傾73.3.2主銷內(nèi)傾73.3.3 前輪外傾83.3.4 前輪前束83.4編碼器的安裝93.5舵機安裝結(jié)構(gòu)的調(diào)整103.6后輪差速的調(diào)整103.7線性CCD的安裝113.8 小結(jié)11第四章 硬件系統(tǒng)設(shè)計及實現(xiàn)124.1硬件設(shè)計方案124.2傳感器的選擇124.2.1 線性CCD124.2.2 編碼器134.3電路設(shè)計方案134.3.1單片機最小系統(tǒng)板134.3.2電源穩(wěn)壓電路144.3.3電機驅(qū)
4、動電路164.3.4舵機接口電路164.3.5撥碼開關(guān)和無線串口電路174.4本章小結(jié)17第五章 軟件算法設(shè)計195.1概述195.2 xs128芯片各模塊初始化195.2.1普通IO口初始化195.2.2系統(tǒng)時鐘初始化205.2.3 PWM脈寬調(diào)制初始化215.2.4 定時器初始化215.2.5 AD模塊初始化215.3路徑識別算法225.4 PID算法概述235.5 速度控制策略245.5.1速度PID245.5.2 速度分檔策略255.5.3 棒棒控制算法255.6 舵機控制策略265.7坡道處理策略265.8路障處理策略265.9起始線處理策略26第六章 軟硬件工具的調(diào)試286.1開發(fā)
5、環(huán)境介紹286.2無線通信模塊29第七章 車模技術(shù)參數(shù)與總原理圖30第八章 總結(jié)328.1優(yōu)勢:328.2不足:328.3心得與致謝:32參 考 文 獻I附錄A:程序源代碼II第一章 引 言1.1 智能車研究背景 1.1.1發(fā)展歷史智能小車系統(tǒng)是迷你版的智能汽車,二者在信息提取,信息處理,控制策略及系統(tǒng)搭建上有很多相似之處,可以說智能小車系統(tǒng)將為智能汽車提供很好的試驗和技術(shù)平臺,從而推動智能汽車的發(fā)展。智能汽車是未來汽車的發(fā)展方向,將在減少交通事故、發(fā)展自動化技術(shù)、提高舒適性等許多方面發(fā)揮很重要的作用;同時智能汽車是一個集通信技術(shù),計算機技術(shù),自動控制,信息融合技術(shù),傳感器技術(shù)等于一身的行業(yè),
6、它的發(fā)展勢必促進其他行業(yè)的發(fā)展,在一定程度上代表一個國家在自動化智能方面的水平1。汽車在走過的100多年的歷史中,從沒停止過智能化的步伐,進入20世紀90年代以來,隨著汽車市場競爭激烈程度的日益加劇和智能運輸系統(tǒng)(ITS)的興起,國際上對于智能汽車及其相關(guān)技術(shù)的研究成為熱門,一大批有實力有遠見的大公司、大學和研究機構(gòu)開展了這方面的研究。很多美國、日本和歐洲等國家都十分重視并積極發(fā)展智能車系統(tǒng),并進行了相關(guān)實驗,取得了很多成就。我國的相關(guān)研究也已經(jīng)開展,清華大學成立了國內(nèi)最早的研究智能汽車和智能交通的汽車研究所,在汽車導航、主動避撞、車載微機等方面進行了廣泛而深入的研究,2000年上海智能交通系
7、統(tǒng)進入實質(zhì)性實施階段,國防科大研制出第四代無人駕駛汽車,西北工業(yè)大學、吉林交通大學、重慶大學等也展開了相關(guān)研究。這一新興學科正在吸引越來越多的研究機構(gòu)和學者投入其中。 1.1.2 智能車的應用前景 智能車系統(tǒng)有著極為廣泛的應用前景。結(jié)合傳感器技術(shù)和自動駕駛技術(shù)可以實現(xiàn)汽車的自適應巡航并把車開得又快又穩(wěn)、安全可靠;汽車夜間行駛時,如果裝上紅外攝像頭,就能實現(xiàn)夜晚汽車的安全輔助駕駛;此外,智能車系統(tǒng)還可以工作在倉庫、碼頭、工廠或危險、有毒、有害的工作環(huán)境里,并能擔當起無人值守的巡邏監(jiān)視、物料的運輸、消防滅火等任務(wù)。在普通家庭轎車消費中,智能車的研發(fā)也是很有價值的,比如霧天能見度差,人工駕駛經(jīng)常發(fā)生
8、碰撞,如果用上這種設(shè)備,激光雷達會自動探測前方的障礙物,電腦會控制車輛自動停下來,撞車就不會發(fā)生了。1.2 飛思卡爾智能汽車大賽介紹 飛思卡爾公司開發(fā)嵌入式解決方案的歷史可追溯到50多年前,現(xiàn)在,已發(fā)展成為在20多個國家設(shè)有業(yè)務(wù)機構(gòu),擁有 20,000多名員工的實力強大的獨立企業(yè)。飛思卡爾公司專門為汽車、消費電子、工業(yè)品、網(wǎng)絡(luò)和無線應用提供“大腦”。他們無比豐富的電源管理解決方案、微處理器、微控制器、傳感器、射頻半導體、模塊與混合信號電路及軟件技術(shù)已嵌入在全球使用的各種產(chǎn)品中。并擁有雄厚的知識產(chǎn)權(quán),其中包括6,200 多項專利。為加強大學生實踐、創(chuàng)新能力和團隊精神的培養(yǎng),促進高等教育
9、教學改革,受教育部高等教育司委托(教高司函2005201號文,附件1),由教育部高等自動化專業(yè)教學指導分委員會(以下簡稱自動化分教指委)主辦全國大學生智能汽車競賽。該競賽以智能汽車為研究對象的創(chuàng)意性科技競賽,是面向全國大學生的一種具有探索性工程實踐活動,是教育部倡導的大學生科技競賽之一。該競賽以“立足培養(yǎng),重在參與,鼓勵探索,追求卓越”為指導思想,旨在促進高等學校素質(zhì)教育,培養(yǎng)大學生 的綜合知識運用能力、基本工程實踐能力和創(chuàng)新意識,激發(fā)大學生從事科學研究與探索的興趣和潛能,倡導理論聯(lián)系實際、求真務(wù)實的學風和團隊協(xié)作的人文精神, 為優(yōu)秀人才的脫穎而出創(chuàng)造條件。該競賽由競賽秘書處為各參賽隊提供/購
10、置規(guī)定范圍內(nèi)的標準硬軟件技術(shù)平臺,競賽過程包括理論設(shè)計、實際制 作、整車調(diào)試、現(xiàn)場比賽等環(huán)節(jié),要求學生組成團隊,協(xié)同工作,初步體會一個工程性的研究開發(fā)項目從設(shè)計到實現(xiàn)的全過程。該競賽融科學性、趣味性和觀賞性為一體,是以迅猛發(fā)展、前景廣闊的汽車電子為背景,涵蓋自動控制、模式識別、傳感技術(shù)、電子、電氣、計算機、機械與汽車等多學科專業(yè)的創(chuàng)意性比賽。該競賽規(guī)則透明,評價標準客觀,堅持公開、公平、公正的原則,保證競賽向健康、普及,持續(xù)的方向發(fā)展。該競賽以飛思卡爾半導體公司為協(xié)辦方,得到了教育部相關(guān)領(lǐng)導、飛思卡爾公司領(lǐng)導與各高校師生的高度評價,已發(fā)展成全國30個省市自治區(qū)近300所高校廣泛參與的全國大學生
11、智能汽車競賽。2008年起被教育部批準列入國家教學質(zhì)量與教學改革工程資助項目中科技人文競賽之一(教高函200730號文)。 全國大學生智能汽車競賽原則上由全國有自動化專業(yè)的高等學校(包括港、澳地區(qū)的高校)參賽。競賽首先在各個分賽區(qū)進行報名、預賽,各分賽區(qū)的優(yōu)勝隊將參加全國總決賽。每屆比賽根據(jù)參賽隊伍和隊員情況,分別設(shè)立光電組、攝像頭組、電磁組等多個賽題組別。每個學??梢愿鶕?jù)競賽規(guī)則選報不同組別的參賽隊伍。全國大學生智能汽車競賽組織運行模式貫徹“政府倡導、專家主辦、學生主體、社會參與”的16字方針,充分調(diào)動各方面參與的積極性。 全國大學生智能汽車競賽一般在每年的10月份公布競
12、賽的題目和組織方式,并開始接受報名,次年的3月份進行相關(guān)技術(shù)培訓,7月份進行分賽區(qū)競賽,8月份進行全國總決賽。第二章 系統(tǒng)總體設(shè)計2.1系統(tǒng)概述 本智能車系統(tǒng)主要有幾大部分組成,包括電源模塊,驅(qū)動模塊,采集模塊,信息處理模塊,測速模塊等組成。利用線性CCD對賽道信息進行采集,通過飛思卡爾MX9S12XS128單片機進行處理使小車按照要求的路線行駛;編碼器采集當前速度,實現(xiàn)智能車的閉環(huán)控制;方向控制上我們采用PD控制算法,速度上采用PID和BANGBANG控制相結(jié)合的思想。根據(jù)智能車系統(tǒng)的基本要求,我們設(shè)計了系統(tǒng)結(jié)構(gòu)圖,如圖2.1所示。在滿足比賽要求的情況下,力求系統(tǒng)簡單高效,因而在設(shè)計過程中盡
13、量簡化硬件結(jié)構(gòu),減少硬件故障。Mc9s12xs128線性CCD舵機轉(zhuǎn)向液晶按鍵測速編碼器電機驅(qū)動模塊電源模塊圖21 系統(tǒng)結(jié)構(gòu)圖2.2整車布局(1)車模底盤降低,主板低放,以降低重心。(2)舵機放于車體前方,節(jié)省空間。(3)用輕便堅固的碳纖桿作為線性CCD桿的材料。(4)電池放于車體前方,使重心落在車體中心。如圖2.2圖22 智能車實物圖第三章 智能車機械設(shè)計及安裝 根據(jù)組委會的相關(guān)規(guī)定,今年光電組比賽車模更換為B型車模。針對不同的車模,必然會有不同的調(diào)整方案。在比賽備戰(zhàn)之初,我們就對該車模進行了詳細的系統(tǒng)分析。B型車模精度不是很高,因此在規(guī)則允許范圍內(nèi)盡量改造車模,提高車模整體精度是很必要的。
14、本章將介紹我們在由組委會提供的B 車模的基礎(chǔ)上對車模進行機械分析與改裝,以達到使智能車機械性能最佳的目的。3.1車體機械建模此次競賽的賽車車模選用由北京科宇通博科技有限公司提供的B型車模。車模外形如圖3.1所示。圖31 車模外形3.2底盤高度的調(diào)整與固定在保證順利通過坡道的前提下,底盤盡量降低,從整體上降低模型車的重心,使模型車轉(zhuǎn)彎時更加穩(wěn)定、高速。于是我們增加前輪墊片,協(xié)調(diào)后輪的墊片,使車模重心達到了允許范圍內(nèi)的最低,防止了允許過程中翻車的發(fā)生。使車模更加穩(wěn)定,有利于速度的提升 此外我們參照組委會的相關(guān)規(guī)定,用廢棄的PCB板對底盤與后輪電機連接部分進行了固定,這樣使底盤與后輪電機連接部分連接
15、成為一個鋼性結(jié)構(gòu),從而大大地減小了車模行駛過程中CCD的抖動,提高了車模的整體穩(wěn)定性。3.3前輪的調(diào)整根據(jù)汽車理論,對前輪的調(diào)整主要包括主銷后傾,主銷內(nèi)傾,前輪外傾,前輪前束幾個方面。 3.3.1 主銷后傾 從側(cè)面看車輪,轉(zhuǎn)向主銷(車輪轉(zhuǎn)向時的旋轉(zhuǎn)中心)向后傾倒,稱為主銷后傾角。設(shè)置主銷后傾角后,主銷中心線的接地點與車輪中心的地面投影點之間產(chǎn)生距離(稱作主銷縱傾移距,與自行車的前輪叉梁向后傾斜的原理相同),使車輪的接地點位于轉(zhuǎn)向主銷延長線的后端,車輪就靠行駛中的滾動阻力被向后拉,使車輪的方向自然朝向行駛方向。設(shè)定很大的主銷后傾角可提高直線行駛性能,同時主銷縱傾移距也增大。主銷縱傾移距過大,會使
16、舵機沉重,而且由于路面干擾而加劇車輪的前后顛簸。 圖32 主銷后傾示意圖3.3.2主銷內(nèi)傾 從車前后方向看輪胎時,主銷軸向車身內(nèi)側(cè)傾斜,該角度稱為主銷內(nèi)傾角。當車輪以主銷為中心回轉(zhuǎn)時,車輪的最低點將陷入路面以下,但實際上車輪下邊緣不可能陷入路面以下,而是將轉(zhuǎn)向車輪連同整個汽車前部向上抬起一個相應的高度,這樣汽車本身的重力有使轉(zhuǎn)向車輪回復到原來中間位置的效應,因而舵機復位容易。 此外,主銷內(nèi)傾角還使得主銷軸線與路面交點到車輪中心平面與地面交線的距離減小,從而減小轉(zhuǎn)向時舵機的拉力,使轉(zhuǎn)向操縱輕便,同時也可減少從轉(zhuǎn)向輪傳到舵機上的沖擊力。但主銷內(nèi)傾角也不宜過大,否則加速了輪胎的磨損。 3.3.3 前
17、輪外傾 前輪外傾角是指通過車輪中心的汽車橫向平面與車輪平面的交線與地面垂 線之間的夾角,對汽車的轉(zhuǎn)向性能有直接影響,它的作用是提高前輪的轉(zhuǎn)向安 全性和轉(zhuǎn)向操縱的輕便性。在汽車的橫向平面內(nèi),輪胎呈“八”字型時稱為“負外傾”,而呈現(xiàn)“V”字形張開時稱為正外傾。如果車輪垂直地面一旦滿載就易產(chǎn)生變形,可能引起車輪上部向內(nèi)傾側(cè),導致車輪聯(lián)接件損壞。所以事先將車輪校偏一個正外傾角度,一般這個角度約在 1° 左右,以減少承載軸承負荷,增加零件使用壽命,提高汽車的安全性能。模型車提供了專門的外傾角調(diào)整配件,近似調(diào)節(jié)其外傾角。由于競賽中模型主要用于競速,所以要求盡量減輕重量,其底盤和前橋上承受的載荷不
18、大,所以外傾角調(diào)整為 0° 即可,并且要與前輪前束匹配。3.3.4 前輪前束 所謂前束是指兩輪之間的后距離數(shù)值與前距離數(shù)值之差,也指前輪中心線與縱向中心線的夾角。前輪前束的作用是保證汽車的行駛性能,減少輪胎的磨 損。前輪在滾動時,其慣性力自然將輪胎向內(nèi)偏斜,如果前束適當,輪胎滾動 時的偏斜方向就會抵消,輪胎內(nèi)外側(cè)磨損的現(xiàn)象會減少。像內(nèi)八字那樣前端小 后端大的稱為“前束”,反之則稱為“后束”或“負前束”。在實際的汽車中,一般前束為 012mm 。 前束的調(diào)整總是依據(jù)主銷內(nèi)傾的調(diào)整。只有主銷內(nèi)傾確定后才能確定合適 的前輪前束與之配合。前輪前束的調(diào)整是方便的。主銷內(nèi)傾的調(diào)整由于要擰開 螺絲
19、釘,固定件又為塑料,所以頻繁的調(diào)整容易引發(fā)滑絲現(xiàn)象。而前束不會, 所以調(diào)整前束是最安全、方便的。 前束在摩擦大的時候有明顯的效果。但是一定不要太大,適當?shù)姆砰_一兩 圈就夠了。在模型車中,前輪前束是通過調(diào)整伺服電機帶動的左右橫拉桿實現(xiàn)的。主 銷在垂直方向的位置確定后,改變左右橫拉桿的長度即可以改變前輪前束的大 小。在實際的調(diào)整過程中,我們發(fā)現(xiàn)較小的前束,約束 02mm 可以減小轉(zhuǎn)向 阻力,使模型車轉(zhuǎn)向更為輕便,但實際效果不是十分明顯。調(diào)節(jié)合適的前輪前 束在轉(zhuǎn)向時有利過彎,還能提高減速性。將前輪前束調(diào)節(jié)成明顯的內(nèi)八字,運 動阻力加大,提高減速性能。由于阻力比不調(diào)節(jié)前束時增大。智能汽車采用穩(wěn)定速度策
20、略或者采用在直道高速彎道慢速的策略時, 應該調(diào)節(jié)不同的前束。后一種策略可以適當加大前束。 圖33 前輪前束示意圖3.4編碼器的安裝編碼器在智能車當中起到了測速的作用,通過編碼器對電機轉(zhuǎn)速的測定我們可以知道車模在某個時刻的速度,從而通過軟件調(diào)整差值,是車模的速度達到我們想要的效果,讓車模電機運轉(zhuǎn)處于我們所要求的理想狀態(tài),從而形成一個速度閉環(huán)控制系統(tǒng),我們使用了測速編碼器去測量脈沖數(shù),就可以得到當前電機的轉(zhuǎn)速。如圖3.4所示,圖34 編碼器安裝示意圖3.5舵機安裝結(jié)構(gòu)的調(diào)整 原裝車模的舵機安裝占用位置較多, 考慮到主板的安裝方便以及車模轉(zhuǎn)向性能,我們對舵機安裝結(jié)構(gòu)進行了較大的調(diào)整。比賽車模的轉(zhuǎn)向是
21、通過舵機帶動左右橫拉桿實現(xiàn)。舵機的轉(zhuǎn)動速度和功率是一定,要想加快轉(zhuǎn)向機構(gòu)的響應速度,唯一的辦法就是優(yōu)化舵機的安裝位置及其力矩延長桿的長度。 最終,我們選擇了一套舵機連片(轉(zhuǎn)向拉桿),綜合考慮了速度與力矩的關(guān)系,并根據(jù)模型車底盤的具體結(jié)構(gòu),簡化了安裝方式,實現(xiàn)了預期目標。關(guān)于舵機的安裝方式,我們的舵機安裝如圖3.5所示。圖35 舵機安裝示意圖3.6后輪差速的調(diào)整 后輪差速的調(diào)整對車模的性能也有著很重要的作用,差速過緊,有利于車模 在直道上的加速,但是不利于車模順利通過彎道;差速太松,有利于車模順利通過彎道,但是在直道上,這會導致車模速度加不起來,從而增加了車模的比賽時間,這也是不利的。因此,經(jīng)過
22、軟件和機械的不斷結(jié)合在一起調(diào)試,均衡直道和彎道的不同需求,我們選擇了較為合適的差速。使小車加速良好且過彎順暢。3.7線性CCD的安裝由于線性CCD 鏡頭視角的限制,只有將CCD架的比較高才能得到想要的賽道寬度,于是額外增加了 4根支架,保證CCD的穩(wěn)定。使用輕質(zhì)的纖維桿,盡量降低重心。見下圖圖36 CCD安裝示意圖3.8 小結(jié)本章通過對B型車模進行系統(tǒng)的建模分析,在比賽規(guī)則的允許范圍內(nèi),制定了整車機械系統(tǒng)的設(shè)計安裝和改進方案,使其能夠符合智能車的競技要求,主要包括模型車機械部分安裝及改造、傳感器的設(shè)計安裝、系統(tǒng)電路板的固定及連接等。車速較高時,小車的機械結(jié)構(gòu)顯得尤為重要,只有好的機械結(jié)構(gòu)才能提
23、高小車的最高速度。第四章 硬件系統(tǒng)設(shè)計及實現(xiàn)4.1硬件設(shè)計方案該硬件系統(tǒng)是以單片機為核心,故硬件設(shè)計時我們都是圍繞著單片機的相關(guān)功能及結(jié)構(gòu)進行的。為了保證硬件系統(tǒng)的安全、可靠和高效,我們采取以下措施:1、盡可能選擇典型電路,并符合單片機常規(guī)用法。為硬件系統(tǒng)的標準化、模塊化打下良好的基礎(chǔ)。 2、系統(tǒng)擴展與外圍設(shè)備的配置水平應充分滿足應用系統(tǒng)的功能要求,并留有適當余地,以便進行二次開發(fā)。3、硬件結(jié)構(gòu)應結(jié)合應用軟件方案一并考慮。硬件結(jié)構(gòu)與軟件方案會產(chǎn)生相互影響,考慮原則是:軟件能實現(xiàn)的功能盡可能由軟件實現(xiàn),以簡化硬件結(jié)構(gòu)。但必須注意,由軟件實現(xiàn)的硬件功能,一般響應時間比硬件實現(xiàn)長,且占用CPU時間。
24、4、系統(tǒng)中的相關(guān)器件要盡可能做到性能匹配。5、可靠性及抗干擾設(shè)計是硬件設(shè)計必不可少的一部分,它包括芯片、器件選擇、去耦濾波、印刷電路板布線、通道隔離等。4.2傳感器的選擇4.2.1 線性CCD線性CCD為光電平衡組獲取賽道信息的主要傳感器,根據(jù)競賽規(guī)則,線性CCD需選用TSL1401系列線性CCD傳感器。TSL1401在時序控制下,可以串行輸出內(nèi)部128個點的模擬數(shù)據(jù),由于輸出模擬信號幅值較小,需加一級運算放大器。根據(jù)競賽規(guī)定,我們選用了如下線性CCD模塊,其大體結(jié)構(gòu)如下:圖41線性CCD 其中,SI為曝光時間控制信號,CLK為串行時鐘信號,AO為放大后的像素模擬量輸出。其單片機的接口如下圖所
25、示:圖42 CCD接口圖4.2.2 編碼器 增量式光電編碼器的特點是每產(chǎn)生一個輸出脈沖信號就對應于一個增量位移,但是不能通過輸出脈沖區(qū)別出在哪個位置上的增量。它能夠產(chǎn)生與位移增量等值的脈沖信號,其作用是提供一種對連續(xù)位移量離散化或增量化以及位移變化(速度)的傳感方法,它是相對于某個基準點的相對位置增量,不能夠直接檢測出軸的絕對位置信息。一般來說,增量式光電編碼器輸出A、B 兩相互差90°電度角的脈沖信號(即所謂的兩組正交輸出信號),從而可方便地判斷出旋轉(zhuǎn)方向??紤]到編碼器的分辨率、精度、輸出信號的穩(wěn)定性、響應頻率、信號輸出方式等指標,最終我們選取512線的MINI編碼器。4.3電路設(shè)
26、計方案智能車控制系統(tǒng)電路有三部分組成:MC9S12XS128為核心的最小系統(tǒng)板、主控板、驅(qū)動模塊。最小系統(tǒng)板可以插在主板上,組成了信號采集、信號處理、電機控制、舵機控制單元。為了減小電機驅(qū)動電路帶來的電磁干擾,我們把控制單元部分和電機驅(qū)動部分分開來制作板子,防止驅(qū)動過熱對主板造成影響。主板上集成了本系統(tǒng)的主要電路,它包括如下部件:電源穩(wěn)壓電路、最小系統(tǒng)板插座、CCD接口、舵機接口、編碼器模塊、撥碼開關(guān)、無線串口、指示燈等。4.3.1單片機最小系統(tǒng)板MC9S12XS128是Freescale16位HCS12系列單片機,也稱MC9S12系列,簡稱S12系列。MC9S12X系列是HCS12系列的增強
27、型產(chǎn)品,基于S12 CPU內(nèi)核,可達到25MHz的HCS12的25倍的性能。單片機最小系統(tǒng)板使用MC9S12XS128單片機,112引腳封裝,為減少電路板空間,板上僅將本系統(tǒng)所用到的引腳引出,包括PWM接口、計數(shù)器接口、外部中斷接口、若干普通IO接口等。此外,還包括電源濾波電路、時鐘電路、復位電路、串行通訊接口等。圖43 單片機接口電路4.3.2電源穩(wěn)壓電路 本系統(tǒng)中電源穩(wěn)壓電路分別需要有5V,6V,3.3V,12V。5V為單片機、編碼器、撥碼開關(guān)、無線串口、線性CCD等供電。6V單獨給舵機提供穩(wěn)定電源。3.3V對液晶OLED供電。12V為電機驅(qū)動供電。5V電源模塊:5V幾乎成了本車的靈魂,此
28、模塊采用LM2940電壓轉(zhuǎn)換芯片將電池電壓7.2V轉(zhuǎn)換為5V,為單片機以及其他需5V電源的模塊供電,由于LM2940的穩(wěn)壓的線性度非常好且轉(zhuǎn)換壓差較大,所以選用LM2940進行供電。圖44 5V電源模塊 6V電源模塊:轉(zhuǎn)向舵機對于其他模塊干擾較大,于是單獨設(shè)計電路給舵機供電,此模塊采用LM2941電壓轉(zhuǎn)換芯片將7.2V轉(zhuǎn)換為6V,電壓比較穩(wěn)定,能滿足舵機轉(zhuǎn)向的需求。原理圖如下:圖45 6V電源模塊3.3V電源模塊:采用ASM117-3.3產(chǎn)生3.3V電壓,僅供給液晶使用。電路原理圖如下:圖46 3.3V電源模塊12V電源模塊:采用MC34063升壓。供給驅(qū)動,效果良好。圖47 12V電源模塊4
29、.3.3電機驅(qū)動電路 由于BTN7970驅(qū)動電路簡單使用方便,初期,我們采用4片BTN7970并聯(lián)使用,在速度小于2.5M/S時,并無嚴重發(fā)熱現(xiàn)象,后來發(fā)現(xiàn)當速度大于2.5M/S時,驅(qū)動會有明顯的發(fā)熱現(xiàn)象,甚至驅(qū)動芯片會進入過熱保護。如果再進行提速,需要強烈的加減速,這樣BTN無法勝任。于是我們選擇MOS管來設(shè)計驅(qū)動電路,發(fā)現(xiàn)使用MOS驅(qū)動后,車的性能得到很大提升,且加減速芯片幾乎不發(fā)熱。電路如下:圖48 電機驅(qū)動原理圖4.3.4舵機接口電路舵機接口電路包括,供電接口和PWM信號輸入接口。電路接口如下圖所示:圖49 舵機接口4.3.5撥碼開關(guān)和無線串口電路主板上還包括撥碼開關(guān)電路和無線串口電路
30、。圖410 撥碼開關(guān)、無線串口電路4.4本章小結(jié)前一章介紹了小車的機械結(jié)構(gòu),如果說機械結(jié)構(gòu)是小車的四肢的話,那么硬件電路的各個模塊就是小車的器官和各大系統(tǒng)。本章主要介紹硬件系統(tǒng)的各個模塊。而各個模塊都是我們自己精心設(shè)計的,自己認真的設(shè)計電路板的形狀,對電路板進行合理的布局、布線,最終制作出PCB板。然后我們又自己手工焊電路板,最終經(jīng)過調(diào)試后成功投入使用。達到了預期的效果。第五章 軟件算法設(shè)計5.1概述軟件算法是智能車設(shè)計的最核心部分,硬件是為軟件提供了平臺,而算法則是車模的靈魂,是他的駕駛員。本章將從各模塊的初始化,信息采集、舵機控制、電機控制 來著重介紹算法??刂瓶驁D圖像處理圖像采集速度采集
31、速度控制轉(zhuǎn)向控制 圖51 控制框圖5.2 xs128芯片各模塊初始化智能車軟件系統(tǒng)包括幾大模塊,包括普通IO口模塊、鎖相環(huán)、AD模塊、定時器模塊、中斷模塊和PWM脈寬調(diào)制模塊等。弄清這些模塊的初始化,將很快的入門智能車,下面詳細介紹各模塊的初始化。5.2.1普通IO口初始化包括設(shè)置液晶,藍牙,CCD等使用的IO口為輸入或輸出模式,并選擇是否使用內(nèi)部上拉電阻等。void IO_Init(void) DDRA=0XFF; /CCD 液晶 全a口為輸出口 PORTA_PA0 = 0; /配置IO的數(shù)據(jù)為0 PORTA_PA1 = 0; /配置IO的數(shù)據(jù)為0 PORTA_PA2 = 0; /配置IO的
32、數(shù)據(jù)為0 PORTA_PA3 = 0; /配置IO的數(shù)據(jù)為0 線性CCD DDRB=0x00; /全B口為輸入口 撥碼開關(guān) 低導通 DDRK=0x00; /全K口為輸入口 包括按鍵 編碼器方向 PUCR_PUPKE=1; PUCR_PUPBE=1;5.2.2系統(tǒng)時鐘初始化初始化后時鐘頻率為64 MHZ,使指令運算加快,能很好的滿足系統(tǒng)要求。void SetBus_64M(void) CLKSEL_PLLSEL=0; /禁止使能鎖相環(huán)時鐘 PLLCTL_PLLON=1; /鎖相環(huán)電路允許 SYNR=0xc0|0x07; /VCO_clock=2*osc_clock*(SYNR+1)/(REFDV
33、+1)=128MHz/VCOFRQ1:0=1:1,代表VCO_clock在80120MHz REFDV=0x80|0x01; /VCO_clock=2*osc_clock*(SYNR+1)/(REFDV+1)=128MHz /REF_clock=osc_clock/(REFDV+1) /REFFEQ1:0=1:0,代表參考時鐘在612MHz之間 POSTDIV=0x00; /PLL_clock=VCO_clock _asm(nop); _asm(nop); /短暫延時,等待時鐘頻率穩(wěn)定 while(!(CRGFLG_LOCK=1) ; CLKSEL_PLLSEL=1; 5.2.3 PWM脈寬調(diào)
34、制初始化PWM模塊為智能車最基礎(chǔ)最重要模塊,它控制了轉(zhuǎn)向系統(tǒng)里的舵機,和電機的轉(zhuǎn)速。void PWM_Init(void) PWMCTL_CON01=1; /0和1聯(lián)合成16位PWM PWMCAE_CAE1=0; /選擇輸出模式為左對齊輸出模式 PWMCNT01 = 0; /計數(shù)器清零 PWMPOL_PPOL1=1; /先輸出高電平,計數(shù)到DTY時,反轉(zhuǎn)電平 PWMPRCLK = 0; /clock A不分頻,即clock A=bustle PWMSCLA = 16; /對clock SA進行分頻,PWM clock=clock/(2*16)=2MHz PWMPER01 =6667; PWMC
35、LK_PCLK1 = 1; PWME_PWME1=1; /PWM1通道使能 PWMDTY01=3020;5.2.4 定時器初始化固定的中斷周期,定時采集賽道信息,采集小車運行速度等void init_PIT(void) PITMTLD0=249; /為0通道8位計數(shù)器賦值PITLD0=2559; /為0通道16位計數(shù)器賦值 PITMUX_PMUX0=0; /第0通道使用微計數(shù)器0 PITCE_PCE0=1; /第0通道計數(shù)器工作 PITCFLMT=0X80; /使能周期中斷定時器 PITINTE_PINTE0=1; /0通道定時器定時中斷被使能 5.2.5 AD模塊初始化AD模塊 實現(xiàn)了賽道信
36、息模擬與數(shù)字之間的轉(zhuǎn)換。void ADC_Init(void) ATD0CTL4 = 0x0F; ATD0CTL3 = 0x88; ATD0CTL1 = 0x0F; ATD0CTL2 = 0x40; ATD0DIEN = 0x00;5.3路徑識別算法路徑識別算法是智能車的眼睛,對智能車系統(tǒng)的穩(wěn)定起著很重要的作用,經(jīng)過藍牙將賽道信息反映到上位機上可以幫助很清晰的分析賽道。圖52 直道圖53彎道圖53 全白十字5.4 PID算法概述PID控制算法是應用最為廣泛的一種控制規(guī)律。它具有原理簡單、易于實現(xiàn)、魯棒性強和適用面廣等優(yōu)點。無論是過去還是現(xiàn)在,其應用都十分廣泛,近20年來相繼出現(xiàn)一批復雜的,只有
37、計算機才能實現(xiàn)的控制算法。然而,目前即使在過程計算機控制中,PID控制仍然是應用最廣泛的控制算法。PID控制器根據(jù)給定的理想值r(t)與實測值c(t)之間差值e(t)=r(t)-c(t);然后將誤差的比例P(比例)、I(積分)D(微分)比例相加計算得到控制量u(t)作用于被控制對象,控制框如圖5-1所示。其時域表達式為:其傳遞函數(shù)表達式為:圖54 PID框圖5.5 速度控制策略5.5.1速度PID在電機控制中,我們采用了PI控制,偏差為速度期望值motor_hope與實測值get_pluse之差作為偏差量motor_error=motor_hope-get_pluse,經(jīng)過運算得到控制量mot
38、or_out。為避免控制量過大或過小對系統(tǒng)穩(wěn)定性的影響,我們設(shè)置了上限控制量和下限控制量,此外,我們采用的是子函數(shù)調(diào)用的方法。void dianjipid(int K) pwm23=duty23; wucha=K-now_maichong; d_wucha=wucha-per_wucha; dd_wucha=d_wucha-dper_wucha; per_wucha=wucha; pwm23+=(kp*d_wucha+ki*wucha+kd*dd_wucha); if(pre_pwm23>2500)pre_pwm23=2500; /速度提升 需要增加 duty23=pre_pwm23;
39、if(pre_pwm23>0) PWMDTY67=0;PWMDTY23=pre_pwm23; if(pre_pwm23<=0) if(pre_pwm23<-300)pre_pwm23=-300; PWMDTY23=0;PWMDTY67=0-pre_pwm23; 5.5.2 速度分檔策略為了提高速度,我們給不同賽道設(shè)置了不同速度期望值,直道正常,入彎減速,出彎加速,這樣能是速度有很大提高。在不同賽道給定不同期望值YUSHE_MAICHONG和比例運算系數(shù)FENMU,這樣速度PI控制函數(shù)就會自動輸出不同賽道情況下的速度控制量MAICHONG.5.5.3 棒棒控制算法棒棒控制的基本
40、思路是當檢測到的輸出量大于理想輸入量時,就急劇將控制量增加到最大,讓輸出量以最快的速度減少,當檢測到的輸出量小于理想的輸入量時,就急劇將控制量降低到最小,讓輸出量以最快的速度減少。本賽車系統(tǒng)的速度控制采用了棒棒控制與PID控制相結(jié)合的方式。其基本思路為:智能車的理想速度由當前的道路信息決定。當光電編碼器檢測到的速度與理想速度相差較遠時,采用棒棒控制;當光電編碼器檢測到的速度與智能車的理想速度逐漸接近以后,就采用PID控制。對主電機的控制是通過一個H橋,將H橋的兩個口分別接單片機的兩個管腳,在本系統(tǒng)中,H橋的兩端分別接單片機口中的PTP3和PTP1,當PTP1為高電平,PTP3為高電平時,主電機
41、全速正轉(zhuǎn),當PTP1為低電平,PTP3為低電平時,主電機全速反轉(zhuǎn)。采用棒棒控制進行速度控制的原理就是檢測智能車的當前速度,如果當前速度低于理想的速度,就PTP3置為高電平,從PTP1口輸出一路占空比很高的PWM波,電機就能以最大的加速度升速。反之,就把PTP3置為高電平,從PTP1口輸出一路占空比很大的PWM波,從而讓電機以最大的加速度降速。棒棒控制算法由于其快速性非常好,而本賽車系統(tǒng)的速度調(diào)節(jié)也正好要求很好的快速性,因而在本智能車的調(diào)速過程中用到了棒棒控制算法也就理所當然,但是,棒棒控制算法在用于本賽車調(diào)速時也存在著一定的不足,由于主電機的數(shù)學模型為一個慣性環(huán)節(jié),存在著一定時間的延時,因此如
42、果僅僅使用棒棒控制一種算法可能導致超調(diào),也不可能達到穩(wěn)定,且在任何時刻通過主電機的電流都始終為最大,只是在不同的時刻可能會出現(xiàn)一正一反。正是出現(xiàn)一正一反的這種情況,對主電機以及主電機驅(qū)動電路的沖擊最大,既造成整個智能車功耗的增加,又可能導致主電機及主電機驅(qū)動芯片因電流沖擊過大而燒壞。因而在智能車的實際檢測速度與理想速度接近時,可以采用PID控制算法,這樣就既能實現(xiàn)調(diào)速的快速性,又能實現(xiàn)速度的平穩(wěn)性,降低智能車的整體功耗,達到很好的調(diào)速效果。5.6 舵機控制策略 速度慢的時候我們只采用了P控制轉(zhuǎn)向,發(fā)現(xiàn)車可以跑完全部賽道,隨著速度的提升,車出現(xiàn)抖動不穩(wěn),加入D項后,車變得更加穩(wěn)定,調(diào)節(jié)合適的PD
43、參數(shù),使小車跑的更加穩(wěn)定。后來發(fā)現(xiàn)車子在過一些急彎的時候反應不夠迅速,于是嘗試了二次P的思路,發(fā)現(xiàn)舵機反應更加迅速,更能適應賽道,于是選擇了二次P。5.7坡道處理策略車在到達坡道時,根據(jù)“近大遠小”的原則,此時的賽道寬度會明顯增大,利用這一特點進行坡道的識別和處理,進行速度和轉(zhuǎn)向的特殊控制,防止車速過快而從坡道摔下。5.8路障處理策略 前方遇到路障時,CCD反饋回來的賽道寬度會立刻減小,結(jié)合遠CCD輔助判斷可以很好的識別路障。識別出賽道寬度減小的那邊,判斷為左還是右路障。使小車安全通過路障。5.9起始線處理策略起初打算使用光電對管檢測起跑線,檢測精度高。由于臨近比賽,時間限制,于是選擇了直接用
44、線性CCD來識別起跑線,發(fā)現(xiàn)檢測成功率比較高。下面是CCD采集到起跑線時的圖像:圖56 起跑線第六章 軟硬件工具的調(diào)試6.1開發(fā)環(huán)境介紹在整個開發(fā)調(diào)試過程中,使用Metrowerks 公司為MC9S12 系列專門提供的全套開發(fā)工具(Freescale Codewarrior IDE)。這是一套用C 語言進行編程的集成開發(fā)環(huán)境本文智能車定位系統(tǒng)的軟件設(shè)計部分就是在此開發(fā)環(huán)境下完成的。其使用界面如下圖6-1:圖61編程與調(diào)試界面CodeWarrior IDE 是由Metrowerks 公司提供的專門面向Freescale 所有MCU與DSP 嵌入式應用開發(fā)的軟件工具。其中包括集成開發(fā)環(huán)境IDE、處
45、理器專家、全芯片仿真、可視化參數(shù)顯示工具、項目工程管理、C 交叉編譯器、匯編器、鏈接器以及調(diào)試器。CodeWarrior IDE 能夠自動地檢查代碼中的明顯錯誤,它通過一個集成的調(diào)試器和編輯器來掃描你的代碼,以找到并減少明顯的錯誤,然后編譯并鏈接程序以便計算機能夠理解并執(zhí)行你的程序。每個應用程序都經(jīng)過了使用像CodeWarrior IDE這樣的開發(fā)工具進行編碼、編譯、編輯、鏈接和調(diào)試的過程。CodeWarrior IDE中的mc9s12dg128.h 文件對所有寄存器對應的存儲映射地址都進行了宏定義,開發(fā)者在軟件開發(fā)時直接調(diào)用這些宏就可以了。CodeWarrior 的功能非常強大,可用于絕大部
46、分單片機、嵌入式系統(tǒng)的開發(fā)。用戶可在新建工程時將芯片的類庫添加到集成環(huán)境開發(fā)環(huán)境中,工程文件一旦生成就是一個最小系統(tǒng),用戶無需再進行繁瑣的初始化操作,就能直接在工程中添加所需的程序代碼。6.2無線通信模塊在調(diào)試過程中,為了能夠?qū)崟r獲取智能車在運動過程中的一些參數(shù),以及避免智能車在嘗試各種算法時沖出賽道而發(fā)生意外,我們使用了藍牙無線通信模塊傳輸數(shù)據(jù)。利用藍牙可以在遠程上顯示智能車的實時賽道信息,更加直觀方便地觀察智能車的狀態(tài),方便調(diào)試和程序分析。圖62無線模塊圖63上位機界面第七章 車模技術(shù)參數(shù)與總原理圖項目參數(shù)路經(jīng)檢測方法線性ccd采集車模幾何尺寸(長*寬*高)(厘米)30*18*45車模平均
47、電流(毫安)1000電容總?cè)萘浚ㄎ⒎ǎ?500傳感器種類及個數(shù)線性CCD 2個編碼器1個新增加伺服電機個數(shù)(個)0賽道信息檢測空間精度(毫米)20賽道信息檢測頻率(次 / 秒)100車模重量(帶電池)(kg)1.5車模最大前瞻(厘米)70主板總原理圖 nmos驅(qū)動實物圖第八章 總結(jié)8.1優(yōu)勢:采用帶運放的CCD,降低了曝光時間,采集精度得到明顯的提高。跟蹤法對ccd采集的賽道信息進行處理,抗干擾性增強。在接近比賽的一個月里我們意識到穩(wěn)定性比快速性更重要,只有穩(wěn)定性好了,才能在速度上有更高的突破,于是我們不再盲目追求速度而是不斷對各方面進行改進,提高小車的穩(wěn)定性,也正因如此,我們得以在比賽中穩(wěn)定
48、發(fā)揮。8.2不足:所采用的線性CCD的視角較小,不得不使得線性CCD被架的很高,這樣高的CCD支架又使得桿子穩(wěn)定性減小,使機械結(jié)構(gòu)顯得復雜。小車在速度控制上略顯不足。相信在速度控制算法上能再有改進,一定會有更多突破。8.3心得與致謝:智能車的制作對每一個人來說都是一個成長的過程,經(jīng)過將近一年的努力,從對智能車的一無所知,到現(xiàn)在沖進國賽,里面包含了太多的沮喪和開心。在這沮喪和開心中我們不斷學習與進步,成為大學里最精彩的回憶。記得車第一次跑完全程的時候,我們組每人的心情都是無比激動的,大家臉上都掛滿了笑容。當車會無緣無故的跑不好,或者單片機又燒了,亦或是舵機又壞了,等等問題又讓我們不斷地懊惱。那時
49、車的速度雖然很慢,很容易穿道,但是經(jīng)過我們一幀一幀的分析圖像,在摸索中不斷地改進和完善算法,使智能車最終能夠在賽道上穩(wěn)定行駛,跑出速度,賽出我們的成績。從中學習到的知識和經(jīng)歷也都是十分珍貴的,相信這些經(jīng)歷將成為我們一生銘記的歷史。是智能車讓我們的大學更加精彩,更加有意義。實驗室里我們無悔地付出,我們不再在意最后的成績,因為我們已經(jīng)得到了最大的收獲。同時感謝學校和物理系的老師們在此過程中對我們的毫無保留地指導,感謝他們的支持和鼓勵;還有我們可愛的同學們,感謝你們,是你們的陪伴和幫助,讓我取得更大的進步。最后感謝組委會提供了一個這樣的平臺,讓我們在探索中,不斷學習,不斷進步。參 考 文 獻(1)
50、卓晴,黃開勝.邵貝貝,學做智能車M.北京:北京航天航空出版社,2007(2) 童詩白.華成英模擬電子技術(shù)基礎(chǔ) M 北京: 高等教育出版社,2001.(3) 閻石數(shù)字電子技術(shù)基礎(chǔ) M 北京: 高等教育出版社,2000.(4) 譚浩強著C程序設(shè)計北京:清華大學出版社,2003(5) 蔡述庭 智能汽車競賽設(shè)計與實踐 北京航空航天大學出版社附錄A:程序源代碼void main(void) DisableInterrupts; SetBus_64M(); IO_Init(); PWM_Init();PWMdianji_Init();LCD_Init(); init_PIT();TimInit() ;AD
51、C_Init();UART0_Init(); EnableInterrupts; for(;) _FEED_COP(); /* feeds the dog */ keyscan(); yejing(); lanya(); int abs(int k) if(k>0) return k; else return -k;unsigned short CRC_CHECK(unsigned char *Buf, unsigned char CRC_CNT) unsigned short CRC_Temp; unsigned char i,j; CRC_Temp = 0xffff; for (i=0;i<CRC_CNT; i+) CRC_Temp = Bufi; for (j=0;j<8;j+) if (CRC_Temp & 0x01) CRC_Temp = (CRC_Temp >>1 ) 0xa001; else CRC_Temp = CRC_Temp >> 1; return(CRC_Temp);void OutPut_Data(void) int temp4 =
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建省南平市文昌學校2020-2021學年高一物理上學期期末試卷含解析
- 福建省南平市外屯中學2021-2022學年高一英語下學期期末試卷含解析
- 4 上學路上 第二課時 說課稿-2023-2024學年道德與法治一年級上冊統(tǒng)編版
- 雙十二消費者體驗解讀
- 12 故宮博物院 說課稿-2024-2025學年語文六年級上冊統(tǒng)編版
- 歷史巨人典故解讀
- 科研之路揭秘
- 科技驅(qū)動:未來掌控者
- 外包施工合同(2篇)
- 2024活動協(xié)作:權(quán)利與義務(wù)規(guī)定
- 跨高速橋梁施工保通專項方案
- 鐵路貨車主要輪對型式和基本尺寸
- 譯林版南京學校四年級英語上冊第一單元第1課時storytime導學單
- 理正深基坑之鋼板樁受力計算
- 員工入職培訓
- 鋪種草皮施工方案(推薦文檔)
- 10KV高壓環(huán)網(wǎng)柜(交接)試驗
- 綜合單價的確定
- 未來水電工程建設(shè)抽水蓄能電站BIM項目解決方案
- 張可填充顏色的中國地圖與世界地圖課件
- 9以內(nèi)除法口算(81題)
評論
0/150
提交評論