版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于飛思卡爾單片機(jī)自動(dòng)循跡小車(chē)控制的設(shè)計(jì)摘 要隨著我國(guó)的電子科技的不斷發(fā)展,我們生活中的自動(dòng)化設(shè)備越來(lái)越多,也為嵌入式在智能化上的研究提供了一個(gè)廣闊的平臺(tái)。本系統(tǒng)以MK60DN512VMD100微控制器為核心控制單元,選用OV7620 CMOS模擬攝像頭檢測(cè)賽道信息, 高速AD轉(zhuǎn)換芯片選用 TCL5510,將提取后的灰度圖像進(jìn)行軟件二值化,進(jìn)而提取賽道信息;用光電編碼器實(shí)時(shí)檢測(cè)小車(chē)的實(shí)時(shí)速度,采用PID控制算法調(diào)節(jié)電機(jī)的速度以及舵機(jī)轉(zhuǎn)向,從而實(shí)現(xiàn)速度和方向的閉環(huán)控制。關(guān)鍵字:MK60DN512VMD100,OV7620 CMOS,軟件二值化,PIDAbstract With the conti
2、nuous development of electronic technology, more and more automation equipment into the production life of the people, the rapid development of embedded intelligent study provides a broader platform.In this paper, the design of intelligent vehicle system MK60DN512VMD100 microcontroller as the core c
3、ontrol unit, the selection of OV7620 CMOSanalog cameras to detect the track information, to using TCL5510 high-speed AD converter chip, software binarization image, extract the white guide line for identification of the track information; optical encoder to detect the real-time speed of the model ca
4、r, using the PID control algorithm to adjust the speed of the drive motor and steering the angle of the steering gear, in order to achieve closed-loop control of velocity and direction of the model car.Keywords: MK60DN512VMD100,OV7620 CMOS,software binarization, PID目 錄摘 要IAbstractII1前言11.1 設(shè)計(jì)的背景以及意義
5、11.2 智能小車(chē)國(guó)內(nèi)外概況11.2.1國(guó)內(nèi)研究的概況11.2.2 國(guó)外研究概況21.3智能小車(chē)的發(fā)展前景22 飛思卡爾單片機(jī)自動(dòng)循跡小車(chē)系統(tǒng)設(shè)計(jì)總方案32.1 系統(tǒng)硬件部分32.2 系統(tǒng)軟件部分43 智能車(chē)硬件系統(tǒng)53.1 單片機(jī)最小系統(tǒng)53.1.1 PIT定時(shí)器模塊63.1.2 PWM 模塊63.1.3 I/O模塊73.1.4 時(shí)鐘電路73.1.5 復(fù)位電路73.1.6 JTAG接口電路83.2 電機(jī)驅(qū)動(dòng)模塊83.3路徑識(shí)別攝像頭檢測(cè)模塊93.3.1 攝像頭的選擇93.3.2 攝像頭簡(jiǎn)介103.4 速度檢測(cè)模塊103.5 舵機(jī)模塊103.6電源管理模塊103.6.1 3.3V電源113.6
6、.2 5V電源114 軟件系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)124.1賽道信息的提取124.2 PID算法介紹124.2.1 位置式 PID134.2.2 增量式 PID144.2.3 PID 參數(shù)整定144.3轉(zhuǎn)向舵機(jī)的控制方法154.3.1 舵機(jī)的工作原理154.3.2 舵機(jī)的 PID 控制155 開(kāi)發(fā)平臺(tái)介紹195.1 IAR Embedded Workbench IDE簡(jiǎn)介195.2 IAR Embedded Workbench的功能及特點(diǎn)195.3 硬件開(kāi)發(fā)平臺(tái)Altium Designer226結(jié) 論23參 考 文 獻(xiàn)24致 謝25附錄1電路原理圖26附錄2 PCB圖27附錄3 元件清單28附錄5
7、部分程序源代碼29- III -1前言1.1 設(shè)計(jì)的背景以及意義 在現(xiàn)代社會(huì),汽車(chē)逐漸走進(jìn)每個(gè)平民的家庭生活中,汽車(chē)行業(yè)發(fā)展迅速,同時(shí)交通事故也大大增多,每一分鐘都有人死于車(chē)禍。近幾年智能系統(tǒng)的發(fā)展迅速,智能車(chē)的研究成為了當(dāng)下的研究熱點(diǎn)。智能汽車(chē)研究涉及了很多領(lǐng)域,最直接的表現(xiàn)是要實(shí)現(xiàn)汽車(chē)的自動(dòng)駕駛。要實(shí)現(xiàn)自動(dòng)駕駛就離不開(kāi)智能化系統(tǒng)的設(shè)計(jì),同時(shí)要求智能車(chē)能感知周?chē)沫h(huán)境。一旦智能車(chē)投入使用,就會(huì)降低當(dāng)前社會(huì)交通事故的發(fā)生率,同時(shí)能夠大大提高現(xiàn)有交通道路的使用效率,并且能在一定程度上緩解能源危機(jī)的到來(lái),降低廣大人民的勞動(dòng)強(qiáng)度,給人們一個(gè)更好的未來(lái)。1.2 智能小車(chē)國(guó)內(nèi)外概況1.2.1國(guó)內(nèi)研究的概
8、況我國(guó)在智能車(chē)的研究中投入了大量的資金和精力,為了能夠培養(yǎng)出自己的研究骨干,在教育部的牽頭下,我國(guó)組織了智能小車(chē)的高校比賽,以此來(lái)培養(yǎng)最基本的研究人才,這也符合我國(guó)的人才強(qiáng)國(guó)戰(zhàn)略。這項(xiàng)比賽用的是飛思卡爾公司產(chǎn)的芯片,第一屆比賽在清華大學(xué)舉辦,得到了各大高校的積極響應(yīng),取得了良好的效果。該項(xiàng)比賽,韓國(guó)有豐富的經(jīng)驗(yàn),他們已舉辦多屆此類(lèi)比賽。因?yàn)榇隧?xiàng)比賽涉及到了很多專(zhuān)業(yè)知識(shí),尤其是必須要掌握自動(dòng)控制、電子、計(jì)算機(jī)等多個(gè)領(lǐng)域的知識(shí),所以能夠提高大學(xué)生的知識(shí)水平。另外,比賽還可以提高學(xué)生的動(dòng)手能力,彌補(bǔ)現(xiàn)在教育的弊端。 前兩屆比賽中組委會(huì)統(tǒng)一規(guī)定了賽車(chē)的模型,微型控制器選用當(dāng)時(shí)最流行的16位微型控制器M
9、C9S12DG128,該控制器為飛思卡爾公司生產(chǎn),性能優(yōu)良,功能可靠?,F(xiàn)在比賽最常用的是32位的Kinetis系列,主要包括Kinetis E,EA,M,L等系列、32位的MPC56xx系列、32位的Kinetis(ARM® CortexTM-M4),主要包括Kinetis W,K等系列、16位的9S12系列、32位的DSC系列、ColdFire系列和8位的單片機(jī)系列(可使用兩片)。飛思卡爾賽車(chē)比賽規(guī)定各隊(duì)在符合條件規(guī)定的情況下,賽車(chē)跑完全程時(shí)間最短者獲勝,我國(guó)在2007年的比賽中首次打敗了韓國(guó)隊(duì),終止了其七連冠的記錄。我國(guó)已經(jīng)成功的舉辦了10次該項(xiàng)比賽,參加比賽的學(xué)校大概已經(jīng)有30
10、0所,它們來(lái)自全國(guó)各地,分布在30個(gè)省市、自治區(qū)。飛思卡爾比賽在我國(guó)已經(jīng)辦了多年,參賽隊(duì)伍逐年增加,技術(shù)也相當(dāng)成熟,學(xué)生們發(fā)揮自己的想象力,在原有技術(shù)上進(jìn)行了大膽創(chuàng)新,取得了不錯(cuò)的效果。現(xiàn)在一些早期的學(xué)生已經(jīng)投入到實(shí)際的智能汽車(chē)的研究之中。1.2.2 國(guó)外研究概況在飛思卡爾半導(dǎo)體公司的資助下,韓國(guó)在全球第一次舉辦了全國(guó)性質(zhì)的高校智能小車(chē)比賽,并且取得了非常好的效果。第一屆比賽要求參賽隊(duì)選用大賽方指定的HCS12單片機(jī)、車(chē)模以及電動(dòng)機(jī)。大賽規(guī)定,跑完全程用時(shí)最短的隊(duì)伍獲勝。參賽隊(duì)伍需要自己學(xué)習(xí)并且應(yīng)用嵌入式軟件開(kāi)發(fā)工具Codewarrior和在線(xiàn)開(kāi)發(fā)發(fā)技術(shù),自主開(kāi)發(fā)識(shí)別最佳的行進(jìn)路線(xiàn),自行設(shè)計(jì)電
11、機(jī)的驅(qū)動(dòng)電路、檢測(cè)電路、舵機(jī)電路,以及相應(yīng)的程序編寫(xiě)。此項(xiàng)比賽舉辦以來(lái),已經(jīng)得到了廣大企業(yè)的認(rèn)可,他們認(rèn)為這項(xiàng)比賽提高了學(xué)生們的創(chuàng)新能力。這也是參賽隊(duì)員在設(shè)計(jì)小車(chē)時(shí)不斷積累經(jīng)驗(yàn),不斷推陳出新,敢于創(chuàng)新的得結(jié)果。 韓國(guó)于2000年舉辦了第一屆該類(lèi)比賽的,由漢陽(yáng)大學(xué)承辦。在韓國(guó)每年的參賽隊(duì)達(dá)到100多支,很多學(xué)校都會(huì)派出自己的隊(duì)伍。韓國(guó)的企業(yè)也非常重視這項(xiàng)比賽,每年企業(yè)都會(huì)拿出非常豐厚的獎(jiǎng)品,比如特等獎(jiǎng)就獎(jiǎng)給隊(duì)員一輛現(xiàn)代汽車(chē)。甚至獲獎(jiǎng)選手可以有機(jī)會(huì)到德國(guó)寶馬的總部研究學(xué)習(xí)。這些獎(jiǎng)勵(lì)不僅體現(xiàn)了企業(yè)對(duì)人才的重視,而且促進(jìn)了學(xué)生的積極性。 如今的比賽不僅僅限于一國(guó)之內(nèi),高校的參賽隊(duì)伍已經(jīng)走出了國(guó)門(mén),形成
12、國(guó)際比賽機(jī)制。2013年舉辦的國(guó)際賽當(dāng)中,中國(guó)隊(duì)以絕對(duì)的優(yōu)勢(shì)擊敗了美國(guó)隊(duì)、日本隊(duì)、巴西隊(duì)、印度隊(duì)、中國(guó)臺(tái)灣隊(duì)、墨西哥隊(duì)、馬來(lái)西亞隊(duì)以及捷克與斯洛伐克隊(duì)。國(guó)際賽的舉辦增進(jìn)了各國(guó)的技術(shù)交流,對(duì)智能車(chē)的比賽以及技術(shù)的創(chuàng)新起到了積極的作用。1.3智能小車(chē)的發(fā)展前景 在智能車(chē)的研發(fā)方面,我國(guó)與歐洲、美國(guó)、日本等國(guó)家還有一些差距。智能車(chē)的開(kāi)發(fā)需要很多領(lǐng)域的結(jié)合,如信息技術(shù)、計(jì)算機(jī)技術(shù)、電子技術(shù)等多個(gè)領(lǐng)域1,在這些領(lǐng)域我國(guó)也有了很高的發(fā)展。面對(duì)這個(gè)集汽車(chē)制造行業(yè)、信息與通信產(chǎn)業(yè)和交通系統(tǒng)復(fù)合的全新領(lǐng)域,我國(guó)有能力搶占這個(gè)高新技術(shù)的制高點(diǎn),在未來(lái)的國(guó)際競(jìng)爭(zhēng)中取得有利位置。我國(guó)必須把握這次機(jī)遇,制定好相應(yīng)的計(jì)劃
13、、戰(zhàn)略方針以及落實(shí)到實(shí)處的措施,統(tǒng)籌管理,逐漸縮小與發(fā)達(dá)國(guó)家在智能車(chē)領(lǐng)域的差距并且超過(guò)他們。2 飛思卡爾單片機(jī)自動(dòng)循跡小車(chē)系統(tǒng)設(shè)計(jì)總方案本設(shè)計(jì)的核心是基于K60的主控模塊,車(chē)速由電機(jī)驅(qū)動(dòng)模塊控制、轉(zhuǎn)向問(wèn)題由舵機(jī)模塊來(lái)控制、小車(chē)速度的檢測(cè)交由測(cè)速傳感器模塊的檢測(cè),預(yù)判行進(jìn)的路線(xiàn)由路徑識(shí)別模塊來(lái)決定。本設(shè)計(jì)實(shí)現(xiàn)的功能是在特定的跑道上小車(chē)自動(dòng)行駛,完成在轉(zhuǎn)彎處減速、在直道上加速行駛。本系統(tǒng)由兩部分組成即硬件部分和軟件部分。2.1 系統(tǒng)硬件部分本畢業(yè)設(shè)計(jì)選用飛思卡爾公司推出的32位K60微控器作為小車(chē)的核心控制單元。路徑識(shí)別模塊采用攝像頭檢測(cè)技術(shù),將采集到的圖像信息轉(zhuǎn)化成電平信號(hào)送給微控單元K60。同
14、時(shí)速度檢測(cè)模塊收集到的信息同樣轉(zhuǎn)換成電平信號(hào)送給微控單元K60。微控單元經(jīng)過(guò)內(nèi)部的處理,輸出PWM信號(hào),控制電機(jī)轉(zhuǎn)速以及舵機(jī)轉(zhuǎn)向,達(dá)到控制速度和自動(dòng)行駛的目的。要使智能小車(chē)又快又穩(wěn)的行駛,不僅要控制好舵機(jī)的轉(zhuǎn)向還要控制好車(chē)速。這樣才能使小車(chē)在轉(zhuǎn)彎的時(shí)候不會(huì)因?yàn)樗俣忍於x跑道,因此我們需要檢測(cè)小車(chē)的速度,并且采取閉環(huán)的反饋機(jī)制。同時(shí)要求我們要將路徑檢測(cè)、車(chē)速控制以及控制轉(zhuǎn)向的各個(gè)單元精密結(jié)合起來(lái)。如果傳感器采集到了錯(cuò)誤的信息,或者伺服電動(dòng)機(jī)的控制出現(xiàn)偏差,就可能使小車(chē)出現(xiàn)嚴(yán)重的抖動(dòng),常出現(xiàn)的問(wèn)題是小車(chē)偏離跑道;如果直流電動(dòng)機(jī)的控制效果不理想,還會(huì)造成小車(chē)速度過(guò)慢等問(wèn)題。本部小車(chē)的系統(tǒng)總體結(jié)構(gòu)
15、如圖2.1所示:圖2.1 系統(tǒng)總體結(jié)構(gòu)圖由圖可知,小車(chē)的系統(tǒng)是由以下幾個(gè)模塊組成的: (1)中央處理器單元中央處理器采用飛思卡爾MK60DN512VMD100芯片,以32位的ARM Crotex-M為內(nèi)核,運(yùn)算速度快,內(nèi)核提供了1.25DMIPS/MHz的DSP指令。具有8位PWM輸出8路和16位增強(qiáng)型定時(shí)器8路。CPU的主頻頻率為100MHz。內(nèi)部Flash高至512KB,模數(shù)轉(zhuǎn)換(A/D)共8路各2組,單片機(jī)功能強(qiáng)大,可以有效地控制小車(chē)的運(yùn)行以及檢測(cè)。(2)電源管理模塊電源模塊的作用是給各個(gè)模塊提供穩(wěn)定的電壓,保證系統(tǒng)的正常運(yùn)行,也是系統(tǒng)運(yùn)行最基本的要成。電源模塊要有穩(wěn)壓電路,因?yàn)楦鱾€(gè)模塊
16、所需要的電壓不同,我們還需要將電源的電壓轉(zhuǎn)換成所各模塊所需要的電壓。(3)舵機(jī)模塊對(duì)模型車(chē)上的舵機(jī)進(jìn)行驅(qū)動(dòng),快速并準(zhǔn)確控制賽車(chē)的行駛方向。 (4)電機(jī)驅(qū)動(dòng)模塊電機(jī)模塊的作用是控制小車(chē)的速度,它是通過(guò)控制電機(jī)的電壓來(lái)達(dá)到控制車(chē)速的目的,當(dāng)然也可以通過(guò)電機(jī)實(shí)行制動(dòng)。(5)速度檢測(cè)模塊速度檢測(cè)模塊主要是用于小車(chē)速度的采集,將采集到的速度反饋給系統(tǒng),系統(tǒng)做出反應(yīng),來(lái)調(diào)節(jié)速度,使小車(chē)以最快的平均速度平穩(wěn)的跑完全程。 (6)路徑識(shí)別攝像頭檢測(cè)模塊該模塊的作用是采集圖像信息,并將其轉(zhuǎn)換為數(shù)字信息傳送給控制器,經(jīng)過(guò)處理后控制舵機(jī)對(duì)小車(chē)的行進(jìn)方向進(jìn)行導(dǎo)航,同時(shí)控制車(chē)速。2.2 系統(tǒng)軟件部分軟件部分由這幾個(gè)部分組
17、成:小車(chē)的主程序、尋跡程序、PWM程序、PID控制程序等組成2。采用動(dòng)態(tài)閾值和邊沿檢測(cè)法提取黑線(xiàn),保證提取黑線(xiàn)的穩(wěn)定可靠;采用閉環(huán)PID和前瞻相結(jié)合的控制策略,并且基本上不對(duì)路型作判斷,來(lái)提高賽車(chē)對(duì)賽道適應(yīng)性。我們可以通過(guò)程序來(lái)處理無(wú)法檢測(cè)起跑線(xiàn)的問(wèn)題,所以不用安裝紅外傳感器。3 智能車(chē)硬件系統(tǒng)3.1 單片機(jī)最小系統(tǒng)MC9S12XS128型開(kāi)發(fā)板是一個(gè)16位的微控芯片,而MK60DN512型開(kāi)發(fā)板是一個(gè)32位的微控芯片,這兩款芯片都是專(zhuān)門(mén)用于智能小車(chē)的控制,選用這兩款芯片可以縮短我們的設(shè)計(jì)時(shí)間,同時(shí)在二次開(kāi)發(fā)方面也有很大的空間。MK60DN512與MC9S12XS128的比較:用MK60DN5
18、12替代傳統(tǒng)的MC9S12XS128,會(huì)大大提高計(jì)算性能;增加了RAM空間,適合更加復(fù)雜的算法;外部IO中斷使用起來(lái)比S12更加的自由;提高了PWM和脈沖計(jì)數(shù)功能,使用上更加方便、更加好用;提供了更多的SPI(串行外設(shè)接口)、UART(通用異步收發(fā)傳輸器)、IIC通信接口(集成電路總線(xiàn)),增加了外設(shè)的掛載數(shù)量,調(diào)試更加方便;因此本設(shè)計(jì)最終選定了MK60DN512型開(kāi)發(fā)板。最小系統(tǒng)板如圖3.1所示。單片機(jī)是整個(gè)智能車(chē)系統(tǒng)的核心部分。我們所采用的單片機(jī)為飛思卡爾公司的Kinetis ARM Cortex-M4 32位系列的單片機(jī)K60DN512,共計(jì)有144個(gè)引腳封裝。 K60DN512 芯片是
19、Kinetis系列K60子系列的典型芯片,是 Kineits 系列中集成度最高的芯片。K60DN512的特性如下:(1) ARM Cortex- M4 內(nèi)核的頻率為100MHz;(2) 32路DMA, 供存儲(chǔ)器以及外設(shè)使用,CPU的利用率得到了提高;(3) 10種低功耗模式,包括運(yùn)行,等待,停止和斷電;(4) 具有512K的Flash以及128K的SRAM; (5) 具有高度集成的硬件;(6) 2路16位AD轉(zhuǎn)換; (7) 4 路可編程定時(shí)器; (8) SD卡主機(jī)控制器,6路SPI,IIS,UART,IIC,CAN; (9) USB2.0接口,支持OTG; (10) IEEE1588以太網(wǎng)接口
20、,支持MII通訊; (11) 工作電壓1.71V3.6V,工作溫度- 40°105°; (12) GPIO引腳有100多個(gè),引腳可兼容5V電壓。圖3.1 最小系統(tǒng)板程序方面,主要涉及到到MK60DN512芯片中的PIT模塊、PWM模塊以及I/O模塊等3。PIT模塊主要負(fù)責(zé)采集定時(shí)數(shù)據(jù)和讀取定時(shí)速度;PWM模塊的作用是控制直流電動(dòng)機(jī)的轉(zhuǎn)速以及舵機(jī)的轉(zhuǎn)向,光電編碼器將收集到的信號(hào)轉(zhuǎn)化為脈沖信號(hào),我們通過(guò)計(jì)算脈沖信號(hào)來(lái)計(jì)算小車(chē)的瞬時(shí)速度;I/O模塊的主要作用是分配指示燈。本次設(shè)計(jì),主控芯片中所用到的模塊主要有PIT定時(shí)器模塊、PWM 模塊、I/O模塊等。3.1.1 PIT定時(shí)器模
21、塊PIT定時(shí)器模塊本質(zhì)上就是一個(gè)定時(shí)器陣列,可用于中斷和觸發(fā)DMA。在使用中,它的所有中斷都是可進(jìn)行屏蔽的,PIT定時(shí)器能夠單獨(dú)設(shè)置自己的超時(shí)時(shí)期。產(chǎn)生中斷標(biāo)志位的原理:首先,定時(shí)器獲取一個(gè)加載初值,這個(gè)初值一般要從PIT寄存器中獲取,然后對(duì)獲取的初值進(jìn)行等差減數(shù)運(yùn)算,當(dāng)該數(shù)變?yōu)?時(shí),定時(shí)器就會(huì)產(chǎn)生一個(gè)觸發(fā)脈沖,該觸發(fā)脈沖就會(huì)傳送到中斷標(biāo)志位。K60的定時(shí)器模塊在以往標(biāo)準(zhǔn)定時(shí)器的基礎(chǔ)上添加了一些新的特點(diǎn),其應(yīng)用范圍更加廣,用32位的可編程計(jì)時(shí)器作為基準(zhǔn)計(jì)時(shí)器的核心,時(shí)鐘源用預(yù)分頻器來(lái)控制。3個(gè)獨(dú)立的定時(shí)器模塊可以使用戶(hù)方便的設(shè)置優(yōu)先級(jí)。3.1.2 PWM 模塊PWM模塊共有3個(gè)調(diào)制波模塊,每個(gè)
22、模塊都有8個(gè)通道,每個(gè)通道都可獨(dú)立輸出,因?yàn)槊總€(gè)通道都是8位的,所以還可以將兩個(gè)通道組成16位輸出4。每個(gè)模塊都可以進(jìn)行計(jì)數(shù)且精度非常的高,可設(shè)置時(shí)鐘周期,共有4個(gè)時(shí)鐘源可供選擇。時(shí)鐘周期可以通過(guò)程序來(lái)設(shè)定,協(xié)議通道可設(shè)定為8字節(jié)或者16字節(jié)。PWM通道調(diào)制出的波形占空比為0100%。通過(guò)編程可以實(shí)現(xiàn)居中對(duì)齊輸出或者左對(duì)齊輸出。3.1.3 I/O模塊K60擁有100個(gè)I/O引腳,很多引腳具有復(fù)用功能。當(dāng)引腳復(fù)位以后,它會(huì)自動(dòng)配置成高阻的狀態(tài)。因?yàn)樗峭ㄓ玫妮斎胍_,所以?xún)?nèi)部沒(méi)有上拉電阻。為避免浮空輸入腳出現(xiàn)漏電流,復(fù)位初始化盡量使用上拉或者下拉,另外可使不常用引腳的方向?yàn)檩敵?,以使該引腳不再浮
23、空。3.1.4 時(shí)鐘電路 時(shí)鐘電路主要由RTC和主晶振組成,主晶振的作用是產(chǎn)生芯片和外設(shè)所需要的工作時(shí)鐘。RTC的作用是當(dāng)系統(tǒng)上電和關(guān)閉時(shí)對(duì)時(shí)間進(jìn)行測(cè)量,另外RTC消耗的功率非常低。K60系統(tǒng)板上的晶振為50MHz,如圖 3.2 所示。圖3.2 50MHz 有源晶振時(shí)鐘電路我們選用32.768KHz 的振蕩器提供時(shí)鐘,如下圖3.3所示。實(shí)時(shí)時(shí)鐘RTC有專(zhuān)用的電源引腳 VBAT,它可以連接到具有3.3V的電池或者其它可以供給3.3V的電源。當(dāng)CPU掉電時(shí),要用外部時(shí)鐘源來(lái)上電。圖3.3 RTC 時(shí)鐘電路3.1.5 復(fù)位電路K60 的復(fù)位電路如圖3.4 所示,由圖可知電路中的RESET連接到K60
24、芯片上的復(fù)位引腳,復(fù)位引腳RESET連接的電阻為4.7k,電阻的作用是提供3.3V的電壓。低電平時(shí)芯片復(fù)位,高電平時(shí)則不會(huì)做出反應(yīng)。按下復(fù)位鍵S1,RESET引腳接地,輸出低電平,芯片復(fù)位。圖3.4 復(fù)位電路3.1.6 JTAG接口電路K60系列芯片使用的是ARM Cortex-M4內(nèi)核,本內(nèi)核里面有一個(gè)JTAG接口,我們可以通過(guò)這個(gè)接口來(lái)下載程序或者調(diào)試程序。JTAG的接口電路如圖3.5所示。JTAG 的對(duì)外引腳2接TMS,引腳4接TCK、引腳6接TDO、引腳8接TDI,這幾個(gè)引腳和K60的PTA0PTA3四個(gè)引腳相對(duì)應(yīng)。圖3.5 K60的JTAG接口電路3.2 電機(jī)驅(qū)動(dòng)模塊電機(jī)驅(qū)動(dòng)選用雙電
25、機(jī)驅(qū)動(dòng)BTS79602S,它的優(yōu)點(diǎn)是性能穩(wěn)定、電機(jī)能夠提供足夠的動(dòng)力。BTS79602S是一個(gè)高度集成的芯片,是半橋型的,可以通過(guò)大電流。它的內(nèi)部有兩個(gè)MOSFET,分別是N溝道和P溝道,N溝道的是低邊的,P溝道的是高邊的。其主要功能有電流診斷,邏輯電平輸入以及斜率調(diào)節(jié)。另外它還具有過(guò)壓保護(hù)的作用。BTS79602S的芯片內(nèi)部是一個(gè)半橋型裝置。當(dāng)IN=1并且INH=1時(shí),可以使高邊MOSFET導(dǎo)通,這個(gè)時(shí)候OUT引腳輸出的是高電平;當(dāng)IN=0并且INH=1時(shí),可以使低邊MOSFET導(dǎo)通,這個(gè)時(shí)候OUT引腳輸出的是低電平。要控制MOS管的導(dǎo)通以及關(guān)斷,我們可以通過(guò)改變連接在SR引腳的電阻來(lái)進(jìn)行5
26、。IS引腳的具有檢測(cè)輸出電流的作用。BTS79602S賽車(chē)運(yùn)行過(guò)程中是通過(guò)PWM波來(lái)控制的。當(dāng)只需要單電機(jī)運(yùn)行時(shí),控制芯片的第二個(gè)引腳輸入PWM波,電機(jī)一端接地,另一端接BTS79602S的輸出引腳。如果是雙電機(jī)運(yùn)行時(shí)就要和另外一片BTS79602S芯片組成全橋控制。此外為了隔離驅(qū)動(dòng)芯片并且達(dá)到保護(hù)單片機(jī)的目的,我們采用了74HC245DW芯片進(jìn)行隔離保護(hù)。具體的電路如圖3.6所示。圖3.6 BTS7960原理圖3.3路徑識(shí)別攝像頭檢測(cè)模塊3.3.1 攝像頭的選擇 用攝像頭來(lái)識(shí)別小車(chē)的路徑,也可以用紅外傳感器進(jìn)行輔佐,因此我們有兩種方案可供選擇。 方案一:只用攝像頭對(duì)路徑進(jìn)行檢測(cè)。攝像頭將采集
27、到的畫(huà)面經(jīng)過(guò)處理以后交給處理器,能夠提前對(duì)小車(chē)前方的賽道進(jìn)行分析,從而選擇最佳的路徑,及時(shí)調(diào)整小車(chē)的運(yùn)行狀態(tài)。這種方法在小車(chē)高速轉(zhuǎn)彎時(shí)的優(yōu)點(diǎn)更加的突出,因?yàn)樘崆邦A(yù)算了行進(jìn)的路線(xiàn),轉(zhuǎn)彎時(shí)就計(jì)算好了控制的方法,彌補(bǔ)了舵機(jī)滯后的弱點(diǎn)。但是單獨(dú)采用攝像頭時(shí),采集信息的頻率低,而且容易受到光線(xiàn)以及場(chǎng)地的干擾。另外無(wú)法對(duì)起始位置進(jìn)行采集。方案二:用攝像頭和紅外傳感器相結(jié)合的方法對(duì)路徑進(jìn)行檢測(cè)。加入紅外傳感器后,路徑的選擇受光線(xiàn)和場(chǎng)地的干擾大大降低,彌補(bǔ)了攝像頭檢測(cè)頻率不足的缺點(diǎn),同時(shí)紅外傳感器的電路設(shè)計(jì)以及軟件編寫(xiě)都比較簡(jiǎn)單。但是紅外傳感器檢測(cè)黑線(xiàn)的精度不高,而且檢測(cè)的距離有限,功耗較大。加重了車(chē)身的重量
28、,影響到了小車(chē)的啟動(dòng)能力和行進(jìn)速度。通過(guò)理論上的分析以及現(xiàn)場(chǎng)測(cè)試,單獨(dú)使用攝像頭完全滿(mǎn)足要求,沒(méi)有必要非得加上紅外傳感器。最終我們采用方案一。 攝像頭方案的選擇:1. 選用CCD 攝像頭。采用CCD 攝像頭時(shí),采集到的圖像的質(zhì)量比較高。其采集到的動(dòng)態(tài)效果和CMOS 攝像頭采集到的動(dòng)態(tài)效果相比效果也很突出。但是比較兩者的功耗,CCD攝像頭要高的多,電流為100mA。2.選用CMOS數(shù)字?jǐn)z像頭。CMOS 攝像頭和CCD相比,其功耗較低,工作電流只有10mA 左右。而且CMOS攝像頭采集出來(lái)的圖像直接轉(zhuǎn)化為數(shù)字信號(hào),提高了單片機(jī)的處理速度。綜上所述,我們決定選用CMOS數(shù)字?jǐn)z像頭。3.3.2 攝像頭
29、簡(jiǎn)介攝像頭有彩色和黑白兩類(lèi),我們尋找路徑時(shí),是提取的圖像的灰度信息,彩色圖像完全用不到,因此圖片的信息輸出為黑白的。我們選用的攝像頭芯片為OV7620,內(nèi)部有一個(gè)雙通道的A/D轉(zhuǎn)換器,A/D轉(zhuǎn)換器是10位的,它的輸出是8位的圖像數(shù)據(jù);能夠自動(dòng)調(diào)節(jié)白平衡,能夠?qū)︼柡投取?duì)比度、亮度以及校正進(jìn)行調(diào)節(jié)6,可以產(chǎn)生場(chǎng)同步信號(hào)7。接5V的電源,最大功耗為120mW,最小功耗為10W。這款攝像頭在電腦、手機(jī)等很多產(chǎn)品上都可以使用8。3.4 速度檢測(cè)模塊 小車(chē)在運(yùn)行中要保證又快又穩(wěn),這不僅要求舵機(jī)控制行進(jìn)的方向,還需要將車(chē)速精確的控制在合理的范圍之內(nèi),這樣當(dāng)小車(chē)在轉(zhuǎn)彎時(shí)不至于因車(chē)速太快而沖出設(shè)定的跑道。根據(jù)
30、所學(xué)的自動(dòng)控制原理,閉環(huán)反饋系統(tǒng)比較穩(wěn)定,將測(cè)得的車(chē)速反饋給系統(tǒng),形成一個(gè)閉環(huán)系統(tǒng),從而達(dá)到控制車(chē)速的目的。測(cè)量小車(chē)速度一般有以下幾種方法:方案一:霍爾傳感器測(cè)速。本方法主要是通過(guò)安裝的霍爾傳感器接收脈沖信號(hào)來(lái)計(jì)算實(shí)時(shí)速度。具體做法是在后輪的軸上安裝小型磁鐵,小車(chē)行駛時(shí),磁鐵會(huì)產(chǎn)生脈沖。霍爾傳感器安裝在后輪的附近,行駛時(shí)它就會(huì)接收磁鐵產(chǎn)生的脈沖。方案二:投射式光電管測(cè)速。它的原理是通過(guò)采集單位時(shí)間內(nèi)小車(chē)后輪上的齒槽數(shù),來(lái)計(jì)算小車(chē)的實(shí)時(shí)速度,要用到紅外光線(xiàn)。但是安裝不方便,可靠性不高。方案三:光電編碼器測(cè)速。常用的是增量式光電編碼器,將編碼器的齒輪和小車(chē)后軸上的齒輪咬合在一起,小車(chē)行駛時(shí)帶動(dòng)編碼
31、器旋轉(zhuǎn),編碼器就會(huì)產(chǎn)生脈沖信號(hào),通過(guò)計(jì)算單位時(shí)間內(nèi)的脈沖數(shù)計(jì)算小車(chē)行駛速度。應(yīng)用光電編碼器測(cè)量速度不僅安裝簡(jiǎn)單而且輸出的信號(hào)波形規(guī)則,因此本設(shè)計(jì)方案采用光電編碼器測(cè)速。在本系統(tǒng)中必須要保證編碼器和后輪軸上的齒輪數(shù)成正。3.5 舵機(jī)模塊舵機(jī)又稱(chēng)伺服電機(jī)。它的結(jié)構(gòu)包括電位器、減數(shù)器以及電機(jī)。減數(shù)器的作用是把電機(jī)的速度減下來(lái),同時(shí)改變電位器的位置,當(dāng)電位器的電壓變?yōu)榱悖姍C(jī)停止轉(zhuǎn)動(dòng),舵機(jī)轉(zhuǎn)動(dòng)的角度是通過(guò)電位器來(lái)改變的。舵機(jī)的信號(hào)是系統(tǒng)提供的PWM信號(hào),通過(guò)改變占空比來(lái)改變舵機(jī)的轉(zhuǎn)向。3.6電源管理模塊電源模塊是最基本的模塊同時(shí)也是電路的最基本部分。本設(shè)計(jì)選用智能車(chē)競(jìng)賽專(zhuān)用多路電源模塊,該產(chǎn)品為單路電
32、池輸入,多路常用電壓輸出,可以完全滿(mǎn)足智能車(chē)各個(gè)模塊的用電需求。電源性能穩(wěn)定、結(jié)構(gòu)緊促、尺寸小巧,模塊化的設(shè)計(jì)對(duì)于安裝方面來(lái)說(shuō)十分靈活。 該車(chē)的電池參數(shù)為7.2V、2000mAh,可以多次充放電,穩(wěn)定性好。它的電壓不能直接供給各個(gè)模塊使用,要轉(zhuǎn)換為各模塊需要的電壓。轉(zhuǎn)換好的電壓要進(jìn)行穩(wěn)壓,這樣才能使整個(gè)系統(tǒng)穩(wěn)定,不會(huì)因?yàn)殡妷和蛔冇绊懶Ч?.6.1 3.3V電源 3.3V 主要用于單片機(jī)的供電。在實(shí)際的應(yīng)用中,電機(jī)和舵機(jī)在剛開(kāi)始啟動(dòng)或者突然停止時(shí),有時(shí)會(huì)造成電壓突變,給硬件帶來(lái)?yè)p傷,也會(huì)影響小車(chē)的正常行駛。要使電源穩(wěn)定,就要安裝穩(wěn)壓裝置。本設(shè)計(jì)選用線(xiàn)性穩(wěn)壓裝置,因?yàn)樗碾娫醇y較小,符
33、合要求。具體選用 AMS1117線(xiàn)性穩(wěn)壓芯片。具體電路如圖3.7所示。圖3.7 3.3V電源3.6.2 5V電源本設(shè)計(jì)方案中的編碼器和攝像頭所需的電壓相同,都為5V的電源。我們經(jīng)常使用的穩(wěn)壓芯片有兩種,分別是線(xiàn)性和開(kāi)關(guān)穩(wěn)壓芯片。本設(shè)計(jì)對(duì)攝像頭的電源要求比較高,輸入的電源紋波必須很小才能符合條件。鑒于開(kāi)關(guān)電源紋波比較大,而線(xiàn)性穩(wěn)壓電源紋波較小,故我們選擇使用線(xiàn)性穩(wěn)壓芯片。實(shí)際使用中本設(shè)計(jì)選用 LM2940CT-5 線(xiàn)性穩(wěn)壓芯片。具體電路如圖3.8所示。圖3.8 5V電源4 軟件系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)4.1賽道信息的提取 CMOS攝像頭采集的賽道信息輸出時(shí)是黑白圖像,圖像信息通過(guò)8位高速AD轉(zhuǎn)換器TL5
34、510轉(zhuǎn)化為灰度圖像,灰度值范圍為0255,灰度圖像通過(guò)軟件構(gòu)建的二維數(shù)組儲(chǔ)存起來(lái)。一般情況下賽道的顏色和賽道的背景顏色差別很明顯,背景顏色一般為藍(lán)色,經(jīng)過(guò)測(cè)試,賽道的顏色為白色時(shí)其灰度值在110左右,黑色時(shí)灰度值在55左右,而藍(lán)色的背景灰度值在75左右。因此,提取賽道左右邊沿有兩種比較好的方法:一種稱(chēng)為邊沿跳變檢測(cè)法,另一種稱(chēng)為二值化法。 (1) 邊沿跳變檢測(cè)法的基本原理是取兩個(gè)灰度值的差,然后判斷差值是不是在給定的值域范圍內(nèi)。舉例:白色賽道的灰度值減去黑線(xiàn)的灰度值之差為55左右(灰度值跳變較大),藍(lán)色背景的灰度值減去黑線(xiàn)的灰度值之差為20左右(灰度值跳變較小),就可以把值域范圍定在5060
35、,通過(guò)判斷灰度值跳變的大小程度即可確定左右邊沿的位置。(2) 二值化法 二值化法有兩種,一種是固定閾值法和另一種是動(dòng)態(tài)閾值法。固定閾值法:設(shè)定固定的閾值(灰度值),當(dāng)采集到的灰度信息大于閾值時(shí)設(shè)定為1,小于設(shè)定的閾值時(shí)設(shè)定為0.這樣灰度圖像就轉(zhuǎn)化為二值化圖像了。 動(dòng)態(tài)閾值法:取二維數(shù)組每行的最大和最小值,計(jì)算平均值,將平均值設(shè)定為這一行的閾值。理論上動(dòng)態(tài)閾值可隨光線(xiàn)的明暗變化自動(dòng)調(diào)整閾值大小,但是在實(shí)際操作中只有在直道和彎道上的成像效果好,而在十字路口的成像效果就差強(qiáng)人意了。經(jīng)過(guò)比較,固定閾值二值化更好,它不受賽道光線(xiàn)變化的影響,而且計(jì)算簡(jiǎn)單,占用單片機(jī)的資源少,所以最終選擇固定閾值二值化法。
36、4.2 PID算法介紹在實(shí)際的工程中,應(yīng)用最為廣泛的是PID 控制,也可稱(chēng)為PID調(diào)節(jié)。它是通過(guò)控制器進(jìn)行比例、積分和微分控制。它的算法是閉環(huán)控制算法,P為比例控制算法,I為積分控制算法,D為微分控制算法,閉環(huán)控制中最基本的算法是比例控制算法,實(shí)際運(yùn)用中可以根據(jù)情況分別采用PI、PD和PID算法13。PID控制器發(fā)明于上世紀(jì)40年代,人們即使不知道被控對(duì)象的參數(shù)和結(jié)構(gòu)也可根據(jù)經(jīng)驗(yàn)進(jìn)行調(diào)整。本設(shè)計(jì)選用PID 控制,大大節(jié)約了設(shè)計(jì)的周期,省去了很多復(fù)雜的計(jì)算,同時(shí)也使小車(chē)的結(jié)構(gòu)更加的簡(jiǎn)化,提高了小車(chē)的可靠性和穩(wěn)定性。原理框圖如圖 4.1 所示。4.1 PID 控制器原理計(jì)算機(jī)控制系統(tǒng)中我們要用到數(shù)
37、字PID控制器,它的控制規(guī)律公式為: (4.1) (4.2)式中: k為采樣的序號(hào);k=0,1,2;r(k)-第k次給定值;c(k)-第k次的實(shí)際輸出值;u(k)-第k次輸出的控制量;e(k)-第k次的偏差;e(k-1)-第k-1次的偏差;TI-積分時(shí)間常數(shù);KP-比例系數(shù);T-采樣周期;TD-微分時(shí)間常數(shù)。下面我們介紹的是各個(gè)校正環(huán)節(jié)的作用:(1) 比例環(huán)節(jié):當(dāng)系統(tǒng)產(chǎn)生偏差時(shí),比例環(huán)節(jié)會(huì)立即做出反應(yīng),通過(guò)控制比例加快相應(yīng)速度,降低穩(wěn)態(tài)誤差。但是比例不能過(guò)大,因?yàn)檫^(guò)大時(shí)會(huì)使系統(tǒng)產(chǎn)生振蕩,影響系統(tǒng)的穩(wěn)定性。選擇恰當(dāng)?shù)谋壤瑢?duì)PID 控制非常重要。 (2) 積分環(huán)節(jié):要提高系統(tǒng)控制的精度,就要加入
38、積分環(huán)節(jié),積分控制能夠消除系統(tǒng)的偏差。積分作用強(qiáng)弱取決于積分常數(shù)的選定,積分常數(shù)越大,積分的作用就越弱,積分常數(shù)越小,積分作用越強(qiáng)。 (3) 微分環(huán)節(jié):它的作用是通過(guò)計(jì)算偏差信號(hào)的變化率,不使偏差信號(hào)變的太大。在系統(tǒng)調(diào)節(jié)的早期加入偏差修正信號(hào),使系統(tǒng)不會(huì)出現(xiàn)偏差信號(hào)變大的趨勢(shì),從而加快系統(tǒng)的動(dòng)作速度進(jìn),達(dá)到減小調(diào)節(jié)時(shí)間的目的。 數(shù)字PID控制算法分為位置式和增量式兩種。4.2.1 位置式 PID位置式 PID的控制方式中,執(zhí)行控制機(jī)構(gòu)是由計(jì)算機(jī)輸出的u(k)直接控制,u(k)的值與執(zhí)行機(jī)構(gòu)的位置要相互對(duì)應(yīng),我們一般選用公式(4.2)作為位置式 PID 控制算法。位置式 PID 控制算法是全量輸
39、出,每次計(jì)算都需要用到以前的數(shù)據(jù),需要對(duì)過(guò)去的e(k)進(jìn)行累加,這樣就加大了計(jì)算機(jī)的工作量9。執(zhí)行機(jī)構(gòu)與輸出u(k)對(duì)應(yīng),如果計(jì)算的數(shù)據(jù)出現(xiàn)了問(wèn)題就會(huì)導(dǎo)致執(zhí)行機(jī)構(gòu)位置發(fā)生較大變化,這種問(wèn)題在實(shí)踐中是不允許出現(xiàn)的,在一些特殊的場(chǎng)合,甚至?xí)a(chǎn)生較為嚴(yán)重的事件。為了避免出現(xiàn)不必要的問(wèn)題,將算法改進(jìn)為增量式PID 控制算法。增量式PID 控制算法和位置式PID 控制算法的區(qū)別是它們的輸出不同,增量式PID 控制算法的輸出是u(k)。4.2.2 增量式 PID 控制量的增量可由式(4.2)推導(dǎo)出來(lái),先由式(4.2)推導(dǎo)出式(4.3),再用式(4.2)減去式(4.3)便可得出式(4.4),公式如下:(4.
40、3) (4.4)式中增量式PID控制算法的形式如公式(4.4),在計(jì)算機(jī)控制系統(tǒng)中它的采樣周期T是恒定的,通過(guò)確定KP 、TI 、TD和偏差(使用前后三次的測(cè)量值),便可通過(guò)(4.4)求出控制增量。增量式 PID的優(yōu)點(diǎn):(1)切換時(shí)的沖擊力小(切換方式包括手動(dòng)/自動(dòng)切換),可以實(shí)現(xiàn)無(wú)憂(yōu)擾動(dòng)切換。因?yàn)檩敵鐾ǖ篮拖到y(tǒng)的執(zhí)行裝置可以把信號(hào)進(jìn)行鎖存,所以當(dāng)計(jì)算機(jī)出現(xiàn)問(wèn)題時(shí),能夠保持原有的值。(2)因?yàn)橛?jì)算機(jī)輸出的是增量,當(dāng)出現(xiàn)誤動(dòng)作時(shí)對(duì)系統(tǒng)的影響較小,可通過(guò)邏輯判斷法關(guān)掉。(3)算式中的量不需要累加處理。第k次的采樣值決定控制增量u(k)的大小,要獲得比較好的效果時(shí),可以通過(guò)加權(quán)處理得到。 4.2.3
41、 PID 參數(shù)整定PID 控制的關(guān)鍵技術(shù)是對(duì)KP、KI、KD 這幾個(gè)參數(shù)進(jìn)行調(diào)整10,也就是所謂的參數(shù)整定。PID參數(shù)整定的方法有兩類(lèi)。一種稱(chēng)為理論計(jì)算整定法,它的原理是根據(jù)給定的系統(tǒng)數(shù)學(xué)模型,通過(guò)理論上的計(jì)算來(lái)確定控制器的參數(shù)。另一種稱(chēng)為工程整定方法,它的原理比較簡(jiǎn)單,主要是根據(jù)工程的經(jīng)驗(yàn),在實(shí)驗(yàn)中操作中進(jìn)行調(diào)整,此類(lèi)方法簡(jiǎn)單并且易于掌握,在實(shí)際工程中被廣泛應(yīng)用。智能車(chē)系統(tǒng)不僅是機(jī)電高耦合的分布式系統(tǒng),而且受賽道具體環(huán)境的影響大,在實(shí)際操作時(shí)很難建立一個(gè)高精密的數(shù)學(xué)模型,同時(shí)小車(chē)的機(jī)械結(jié)構(gòu)需要不時(shí)的修正,模型的參數(shù)也需要相應(yīng)的改變,理論計(jì)算整定法不切合實(shí)際,故選用工程整定法。4.3轉(zhuǎn)向舵機(jī)的
42、控制方法4.3.1 舵機(jī)的工作原理PWM信號(hào)通過(guò)接收通道,傳入到解調(diào)電路,解調(diào)電路對(duì)其進(jìn)行解調(diào),從而獲得直流偏置電壓。將電位器的電壓和直流偏置電壓相比較,兩者得出一個(gè)電壓差,將這個(gè)電壓差交給電機(jī)驅(qū)動(dòng)集成電路,用它來(lái)控制電動(dòng)機(jī)的正反轉(zhuǎn)11。電動(dòng)機(jī)的轉(zhuǎn)速是一定的,電位器是靠級(jí)聯(lián)減速齒輪進(jìn)行調(diào)整,當(dāng)電壓差調(diào)整成0時(shí),電動(dòng)機(jī)便停止轉(zhuǎn)動(dòng)12。PWM信號(hào)是舵機(jī)的控制信號(hào),舵機(jī)位置的改變是通過(guò)占空比的變化而變化。舵機(jī)的直流電動(dòng)機(jī)和控制線(xiàn)路由電源線(xiàn)和地線(xiàn)來(lái)提供電源。這里需要的電源是3.3V14。控制線(xiàn)的作用是提供一個(gè)方波脈沖信號(hào),該脈沖信號(hào)的寬度可調(diào)且是周期性方波,方波信號(hào)的頻率為50Hz。舵機(jī)轉(zhuǎn)軸的角度隨著
43、方波脈沖寬度改變而改變,它們倆成正比例關(guān)系。4.3.2 舵機(jī)的 PID 控制 對(duì)于舵機(jī)的控制,我們采用PID閉環(huán)控制,提取圖像黑線(xiàn)然后求得平均值,平均值和舵機(jī) PID的參考角度值形成一次線(xiàn)性關(guān)系15。當(dāng)偏離中心線(xiàn)很小時(shí),可以將Kp的值設(shè)置的小一些,幾乎接近0,為了使賽車(chē)行駛時(shí)更加的穩(wěn)定,在直道上時(shí)可以有一定的修正功能,所以沒(méi)有直接設(shè)置成0。車(chē)子在直道上行駛時(shí)基本上是直線(xiàn)加速狀態(tài),車(chē)身左右抖動(dòng)比較小。155 開(kāi)發(fā)平臺(tái)介紹5.1 IAR Embedded Workbench IDE簡(jiǎn)介IAR Systems 公司為ARM微處理器專(zhuān)門(mén)研發(fā)了IAR Embedded Workbench for ARM
44、集成開(kāi)發(fā)環(huán)境。和其它開(kāi)發(fā)環(huán)境相比較,IAR Embedded Workbench for ARM入門(mén)更加容易、使用更加方便、代碼也更加緊湊。在嵌入式 IAR Embedded Workbench IDE的框架里,它能夠允許任何可用的工具完美的嵌入其中,以下為嵌入的工具: 1.AVR IAR匯編器; 2.IAR XAR庫(kù)創(chuàng)建器和IAR XLIB Librarian; 3.高度優(yōu)化的IAR AVR C/C+編譯器; 4.一個(gè)工程管理器; 5.一個(gè)強(qiáng)大的編輯器; 6.一個(gè)具有世界先進(jìn)水平的高級(jí)語(yǔ)言調(diào)試器; 7.高度優(yōu)化的IAR AVR C/C+編譯器; 8.通用IAR XLINK Linker;5.
45、2 IAR Embedded Workbench的功能及特點(diǎn) 嵌入式IAR Embedded Workbench適用的微控制器和微處理器有8 位、16 位以及32 位,因此,用戶(hù)即使是開(kāi)發(fā)新的項(xiàng)目,開(kāi)發(fā)環(huán)境也是以前熟悉的環(huán)境。它的開(kāi)發(fā)環(huán)境用戶(hù)學(xué)起來(lái)比較容易上手,具有最大量的代碼繼承能力,可以支持大多數(shù)甚至一些特殊的目標(biāo)。嵌入式IAR Embedded Workbench不僅有效提高了用戶(hù)的工作效率,而且通過(guò)使用IAR工具,大大節(jié)省了用戶(hù)的工作時(shí)間。我們稱(chēng)這種理念為不同構(gòu)架下的同一解決方案。 IAR Embedded Workbench 操作界面不僅非常簡(jiǎn)潔而且工具欄的布局也非常合理清晰,運(yùn)用不
46、同的功能也非常的方便。IAR Embedded Workbench開(kāi)發(fā)環(huán)境可以很好的兼容Freescale公司生產(chǎn)的K60系列處理器。具體的操作界面如下圖5.1 所示。圖 5.1 IAR Embedded Workbench 運(yùn)行界面IAR Embedded Workbench for ARM version 4.30專(zhuān)門(mén)用于ARM處理器的集成開(kāi)發(fā)環(huán)境,它包含有編輯器、項(xiàng)目管理器、RTOS的測(cè)試工具以及編譯連接工具。我們?cè)谶@種環(huán)境下運(yùn)用C/C+和匯編語(yǔ)言來(lái)開(kāi)發(fā)嵌入式應(yīng)用程序。以下為嵌入式應(yīng)用的一些特點(diǎn): 1.提供了一個(gè)輕量的運(yùn)行庫(kù),使用戶(hù)可以根據(jù)自己的需要自行進(jìn)行配置,它還提供了所有的源代碼;
47、 2.對(duì)特定處理器的速度進(jìn)行了優(yōu)化,通用編譯器的功能進(jìn)行了優(yōu)化,存儲(chǔ)器的功能進(jìn)行了優(yōu)化;3.對(duì)一些不需要的變量和函數(shù)進(jìn)行了刪減;4.存儲(chǔ)器控制靈活,可以很詳細(xì)的為數(shù)據(jù)和代碼分配地址;5.校驗(yàn)和生成功能是可選的,它主要在運(yùn)行時(shí)進(jìn)行映像校驗(yàn);6.C/C+變M和函數(shù)連接時(shí)的全局類(lèi)型需要檢查;7.可重定位宏匯編器功能強(qiáng)大,能支持的命令集和操作符豐富;8.代碼和數(shù)據(jù)可以自動(dòng)的放置到不連續(xù)的存儲(chǔ)區(qū)域;9.代碼覆蓋率高,具有強(qiáng)大的執(zhí)行時(shí)間分析工具。在 IAR Embedded Workbench for ARM version 4.30 開(kāi)發(fā)環(huán)境下,可以很方便將程序燒錄大單片機(jī)系統(tǒng)中。燒錄時(shí)要將燒錄器連接到
48、單片機(jī)的最小系統(tǒng)和上位機(jī),然后選擇芯片燒錄,很快程序就能燒錄到單片機(jī)最小系統(tǒng)中了。燒錄過(guò)程中要注意必須保持燒錄器連接的穩(wěn)定,不能使其斷開(kāi),另外一定要安裝好相應(yīng)的驅(qū)動(dòng)程序。燒錄界面如圖 5.2 所示。圖5.2 IAR Embedded Workbench 程序燒寫(xiě)界面圖 5.2 燒錄界面嵌入式調(diào)試的一些特點(diǎn):1.執(zhí)行控制非常的細(xì)化;2.源代碼集成度高;3.有反匯編程序調(diào)試器;4.代碼和數(shù)據(jù)斷點(diǎn)比較復(fù)雜;5.數(shù)據(jù)監(jiān)視功能很豐富;6.支持STL容器;7.Watch, Locals, Quick Watch, Auto, Live Watch和Watch 等變量查看窗口;8.當(dāng)雙擊位于調(diào)用鏈上的任何函
49、數(shù)時(shí),都會(huì)更新局部變量、編輯器、寄存器、反匯編窗口和變量查看;9. 控制臺(tái)I/O仿真;10.具有跟蹤功能,可以檢查執(zhí)行過(guò)的歷史記錄。在跟蹤窗口里面,當(dāng)移動(dòng)鼠標(biāo)時(shí),編輯器和反匯編窗口會(huì)自動(dòng)更新用來(lái)顯示合適的位置;11.中斷和I/O模擬仿真;12.主機(jī)執(zhí)行的應(yīng)用系統(tǒng)程序能夠調(diào)用仿真;13.具有和C語(yǔ)言類(lèi)似的宏系統(tǒng),擴(kuò)大了調(diào)試器的功能。5.3 硬件開(kāi)發(fā)平臺(tái)Altium Designer硬件的設(shè)計(jì)制作選用Altium公司開(kāi)發(fā)的Altium Designer 09。Altium Designer是一個(gè)電子產(chǎn)品開(kāi)發(fā)系統(tǒng),是一個(gè)軟件集成平臺(tái),能夠把電子開(kāi)發(fā)所需要的工具整合到一個(gè)軟件中。Altium Desi
50、gner包含的工具有:原理圖設(shè)計(jì)、PCB繪制編輯、電路的仿真、設(shè)計(jì)輸出、拓?fù)溥壿嬜詣?dòng)布線(xiàn)以及信號(hào)完整分析等。除此之外,Altium Designer的工作環(huán)境還可以人為定制,大大滿(mǎn)足了用戶(hù)的不等需求。 Altium Designer 09版本改善了以前版本留下來(lái)的很多工具問(wèn)題。機(jī)械層設(shè)置上增加了更多的機(jī)械層,加強(qiáng)了原理圖網(wǎng)絡(luò)類(lèi)的定義。這個(gè)版本更加的關(guān)注于提高測(cè)試點(diǎn)的管理與分配、嵌入式軟件的精簡(jiǎn)、流暢的License管理以及軟件設(shè)計(jì)過(guò)程中的智能化調(diào)試等功能。Altium Designer09 運(yùn)行界面如圖5.3 所示。圖 5.3 Altium Designer09 運(yùn)行界面目前此款軟件的最新版本
51、是Altium Designer 16。在此次更新中對(duì)Altium Designer 16的平臺(tái)進(jìn)行了擴(kuò)展,包括多個(gè)增強(qiáng)PCB設(shè)計(jì)生產(chǎn)效率與設(shè)計(jì)自動(dòng)化的全新特性,從而使工程師能夠在更短的時(shí)間內(nèi)零差錯(cuò)地實(shí)現(xiàn)更復(fù)雜的PCB設(shè)計(jì)。全新的備選元器件選擇系統(tǒng)為設(shè)計(jì)者提供備選元器件選擇,幫助設(shè)計(jì)者全面控制元器件的選擇過(guò)程。可視化間距邊界為設(shè)計(jì)者提供了電路板上不同對(duì)象間的可視化間距邊界,幫助設(shè)計(jì)者實(shí)時(shí)了解其布線(xiàn)決策對(duì)整體設(shè)計(jì)的影響。全新的元器件布局系統(tǒng)為設(shè)計(jì)者提供全新的元器件布局選項(xiàng),幫助設(shè)計(jì)者實(shí)現(xiàn)最條例高效的電路板布局。6結(jié) 論 本文分別從智能車(chē)的電路設(shè)計(jì)、程序控制以及調(diào)試過(guò)程來(lái)講了這個(gè)基于CMOS 攝像
52、頭智能車(chē)的整體方案。在智能車(chē)的設(shè)計(jì)過(guò)程中,我不僅查閱了大量的資料并對(duì)其進(jìn)行研究,而且對(duì)特定的設(shè)計(jì)和原理進(jìn)行了實(shí)驗(yàn),如對(duì)車(chē)前輪的機(jī)械調(diào)整在智能車(chē)的制作過(guò)程中。這次的畢業(yè)設(shè)計(jì)遇到了很多困難,一開(kāi)始做的時(shí)候不知道從哪里下手,于是乎就開(kāi)始讀資料,一點(diǎn)點(diǎn)分析原理,這樣就有了一個(gè)大體的設(shè)計(jì)思路。但當(dāng)實(shí)際去操作時(shí),問(wèn)題又出現(xiàn)了,很多東西在以前的學(xué)習(xí)中并沒(méi)有遇見(jiàn)過(guò)。為了解決動(dòng)手能力的不足,特別向?qū)W校里的實(shí)驗(yàn)室的同學(xué)請(qǐng)教,他們幫助解決了很多問(wèn)題。當(dāng)某個(gè)困難解決時(shí),思路就馬上變的清晰了很多。設(shè)計(jì)方案的書(shū)寫(xiě)也遇到很多困難,一些專(zhuān)業(yè)解釋不能準(zhǔn)確地表達(dá),經(jīng)過(guò)反復(fù)修改,才能達(dá)到要求。這次設(shè)計(jì),我將學(xué)到的知識(shí)和實(shí)踐相結(jié)合,
53、不僅提升了自己的知識(shí)水平,而且補(bǔ)足了原來(lái)動(dòng)手能力不足的問(wèn)題。將學(xué)到的知識(shí)進(jìn)行了系統(tǒng)的整理,同時(shí)也提高了對(duì)專(zhuān)業(yè)知識(shí)的興趣。參 考 文 獻(xiàn)1 于豐華,雷宇橋. 基于OV7620的智能車(chē)算法研究J. 電子技術(shù)應(yīng)用,2013,17:69-762 王曉翔,孫濤. 基于Freescale Kinetis EA系列MCU的CAN Bootloader設(shè)計(jì)J.電子產(chǎn)品世界,2012,07:79-833 趙一夔. 基于ARM Cortex-M3的嵌入式系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)J.中電網(wǎng),2010,01:11-134 李偉龍.智能循跡小車(chē)設(shè)計(jì)J.甘肅科技,2013,15:15-175 林文建. 兩輪自平衡機(jī)器人控制系統(tǒng)設(shè)計(jì)
54、與實(shí)現(xiàn)J.電子測(cè)量與儀器學(xué)報(bào),2013,08:750-7596 喬永征. 基于OV7620和FPGA的圖像采集系統(tǒng)設(shè)計(jì)J.計(jì)算機(jī)測(cè)量與控制,2009,17:1857-18597 周鑫. 第二代基于ARM Cortex-M4的飛思卡爾MCU的電源效率達(dá)到新水平J.單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2014,02:76-778 孫延明,曹軍,劉亞秋. PID控制在中密度纖維板施膠中的應(yīng)用J. 木材加工機(jī)械,2007,01:26-299 曾偉欽,徐東升. .基于光電導(dǎo)航的自主循跡智能車(chē)系統(tǒng)設(shè)計(jì)J. 電子世界,2012,08:128-13010 張晴,袁曉梅. 基于PWM信號(hào)遙控機(jī)器人的設(shè)計(jì)與制作J. 數(shù)字技術(shù)與應(yīng)用,2010,11:8011 邵秋萍.控制技術(shù)在機(jī)電類(lèi)專(zhuān)業(yè)建設(shè)中的整合與實(shí)踐J. 中國(guó)電力教育,2009,135:108-10912 吳峰,張河新. 單片機(jī)控制脈寬調(diào)制在氣動(dòng)調(diào)壓閥中的應(yīng)用J. 閥門(mén),2011,06:30-3313 陳玉,王靜平,奚琳. 智能PID控制器控制算法及其仿真研究J.工程與試驗(yàn),2011,03:66-6914 吳華波,錢(qián)春來(lái).基于AT89C2051的多路舵機(jī)控制器設(shè)計(jì)J.單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2013,08,55:5815 馬
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東省德州市第二中學(xué)2024-2025學(xué)年高三上學(xué)期第三次學(xué)情檢測(cè)歷史試題(含答案)
- 廣東省肇慶市2025屆高中畢業(yè)班第二次模擬考試生物學(xué)試題(含答案)
- 重大版小學(xué)英語(yǔ)四年級(jí)上冊(cè)期末試卷(含答案含聽(tīng)力原文無(wú)音頻)
- 2025年度大型儲(chǔ)藏室購(gòu)置與倉(cāng)儲(chǔ)運(yùn)營(yíng)管理合同3篇
- 2024設(shè)計(jì)圖紙合同-智能家居系統(tǒng)設(shè)計(jì)3篇
- 2024版基礎(chǔ)設(shè)施施工協(xié)議
- 2024年游覽的景物作文300字
- 2024版電商園區(qū)供應(yīng)鏈合同
- 2024潤(rùn)滑油品牌授權(quán)合作合同樣本3篇
- 2024版海洋運(yùn)輸貨物保險(xiǎn)合同范本下載
- 教育管理學(xué)課件-管理、教育管理和教育管理學(xué)之概述
- 2025年廣西事業(yè)單位聯(lián)考招聘高頻重點(diǎn)提升(共500題)附帶答案詳解
- 真需求-打開(kāi)商業(yè)世界的萬(wàn)能鑰匙
- 2025五金配件購(gòu)銷(xiāo)合同范本
- 2025年中儲(chǔ)糧儲(chǔ)運(yùn)限公司公開(kāi)招聘高頻重點(diǎn)提升(共500題)附帶答案詳解
- AS16571992固定平臺(tái)走道樓梯與梯子的設(shè)計(jì)施工與安裝
- 《鋰離子電池用二氟草酸硼酸鋰》
- 【MOOC】《形勢(shì)與政策》(北京科技大學(xué))中國(guó)大學(xué)MOOC慕課答案
- 中學(xué)生心理健康教育主題班會(huì)課件
- 稅務(wù)新政策培訓(xùn)
- 2024-2030年中國(guó)第三方檢測(cè)認(rèn)證行業(yè)發(fā)展創(chuàng)新模式及投資規(guī)劃分析報(bào)告版
評(píng)論
0/150
提交評(píng)論