《基于單片機MSP430F149微處理器的坡道行駛小車設計》10000字【論文】_第1頁
《基于單片機MSP430F149微處理器的坡道行駛小車設計》10000字【論文】_第2頁
《基于單片機MSP430F149微處理器的坡道行駛小車設計》10000字【論文】_第3頁
《基于單片機MSP430F149微處理器的坡道行駛小車設計》10000字【論文】_第4頁
《基于單片機MSP430F149微處理器的坡道行駛小車設計》10000字【論文】_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第頁基于單片機MSP430F149微處理器的坡道行駛小車設計第一章引言 11.1 課題的來源及研究意義 11.2 國內外小車研究與應用概況 11.3 設計的主要內容和功能 2第二章設計方案 32.1系統(tǒng)構成 32.2設計思路及程序流程圖 4第三章硬件電路設計 63.1系統(tǒng)硬件原理圖 63.2MSP430概述 63.2.1MSP430引腳 83.2.2MSP430內部原理 93.3電源電路 93.4循跡探測模塊 103.5顯示屏電路 103.6按鍵電路 103.7蜂鳴器電路 113.8LED電路模塊 113.09復位按鍵 123.10傳感器原理 133.11紅外檢測電路 143.12路面探測子程序 153.13PID調速程序設計 15第四章軟件系統(tǒng)設計 174.1軟件主程序架構 174.2oled12864顯示 184.3串口通信的流程圖 184.4紅外對射傳感器檢測流程圖 194.5按鍵子程序 20第五章測試方案與測試結果 21第六章總結 23參考文獻 25附錄 26第一章引言課題的來源及研究意義智能小車又稱全自動輪式機器人,近年來越來越受到國內外的關注,智能小車可以按照預設的模式在一定的環(huán)境下自動行駛,不需要人工干預,目前已廣泛應用于線路巡檢、科學勘測、安全監(jiān)測、現(xiàn)代物流等多個方面。但是由于目前國內對其研究還處于起步階段,因此對于它的相關技術還沒有成熟完善的方法可以參考借鑒。隨著社會經濟的不斷發(fā)展,科技水平也得到了快速提高。在此背景下,結合全國大學生智能汽車競賽及科研應用,設計了以MSP430單片機作為核心控制單元的小車系統(tǒng),通過紅外傳感器信息采集,采用增量式PID算法對電機進行控制,實現(xiàn)汽車循跡、車速控制和停車功能。國內外小車研究與應用概況隨著國內快科技飛速發(fā)展,對于這種智能小車的研究也越來越深入,對小車的細節(jié),性能,實用性等等要求也越來越高,小車能夠按照人們的意愿想法要求,給予小車的指令做出相應的動作,甚至可以代替人類在惡劣,極端的環(huán)境中起到勘察等作用,這就對小車的硬件,軟件要求甚高,給予小車的指令必須要準確,萬無一失,正是由于小車的這種巨大作用,在國內外,小車熱度愈發(fā)提高,人們對小車的研究也會越來越深入,智能小車將越來越頻繁地出現(xiàn)在人們的日常生活環(huán)境中,甚至成為人們生活不可或缺的一部分。而對于小車單片機的選擇,將會選擇傳統(tǒng)的MSP430芯片,MSP430芯片簡單微型計算機具有更高的集成度、更低的價格、更強大的功能[1]。設計的主要內容和功能本設計使用的是單片機MSP430F149微處理器[2],是一種較為可靠的簡單微型計算機,MSP430F149將用作本計劃中的處理器。完整功能包括爬坡、顯示部分、蜂鳴器提示部分和循跡部分。單擊按鍵開始爬坡,小車從起點開始啟動時按下按鍵開始爬坡,紅外將使得小車按照軌跡爬坡。各參數(shù)顯示在OLED12864上,通過按鍵可以更改參數(shù)[3]。以下主要功能是:1.最小系統(tǒng)的布局[4](1)自動重置和手動重置系統(tǒng)。(2)晶體振蕩器和被動晶體振蕩器。(3)MCU電源。2.電機驅動模塊(1)TB6612FNG模塊(2)大電流驅動,爬坡動力足3.按鍵設置(1)通過按鍵一鍵開始爬坡(2)按鍵更改pid參數(shù)等4.紅外對管傳感器(1)紅外探頭電路(2)可見光發(fā)光二極管和光敏二極管發(fā)射-接收電路5.顯示(1)OLED12864顯示當前的各種信息(2)按鍵交互更改參數(shù)6.蜂鳴器配置(1)到達終點時蜂鳴器進行提示7.硬件功能測試程序(1)調試每個模塊的硬件(2)調試整個軟件功能。第二章設計方案2.1系統(tǒng)構成基于MSP430的坡道行駛小車的設計從功能開始。首先,循跡是最重要的職能。在下坡時需要保持一定距離才能避免追尾和碰撞等事故發(fā)生;其次,轉彎也非常關鍵。小車必須沿著斜坡上的黑線行駛。這個特性使用紅外激光對射傳感器來檢測是否沿著黑線[5]。與傳統(tǒng)的單片機系統(tǒng)一樣,配置數(shù)據(jù)庫OLED12864屏,用于顯示,可以顯示各種數(shù)據(jù).單擊按鍵設置起跑時間。當?shù)竭_終點時,蜂鳴器將發(fā)出提示。結束后可以使用復位按鍵對數(shù)據(jù)進行清除。同時,將使用晶振進行時間刷新,對于單片微系統(tǒng)來說,最重要的是時鐘信號。通過數(shù)據(jù)訪問、選擇和比較,使功能正確。價格合適的微處理器msp430f149和紅外對射傳感器[6]、蜂鳴器、OLED12864屏幕、電機驅動以及按鍵[7],構成本設計的硬件系統(tǒng)。以下是小車的系統(tǒng)部分:該系統(tǒng)功能將分為三個部分:爬坡、循跡和復位。這臺單芯片微型計算機使用MSP430微型計算機作為CPU,檢測部分紅外對射傳感器。單片機能夠控制OLED12864顯示器顯示,從而便于更改當前各項參數(shù)。用于指定LED燈和蜂鳴器提示車輛到達終點。該系統(tǒng)設計使用單芯片微處理器的模塊化分布。模塊被編寫在各個文件之中最后在主函數(shù)調用。如果要添加或刪除函數(shù)[8],只需增加或減少模塊,而無需更改整個結構。這種結構對于創(chuàng)建一個擴展模塊非常重要。圖2.1是整體工作原理圖:圖2.1工作原理圖2.2設計思路及程序流程圖圖2.2程序流程圖第三章硬件電路設計3.1系統(tǒng)硬件原理圖圖3.1系統(tǒng)硬件原理圖3.2MSP430概述MSP430單片機是一種16位的\t"/item/MSP430%E5%8D%95%E7%89%87%E6%9C%BA/_blank"單片機,具有\(zhòng)t"/item/MSP430%E5%8D%95%E7%89%87%E6%9C%BA/_blank"精簡指令集(RISC)的一種混合信號的處理器,有豐富的尋址方式(7個源操作數(shù)尋址,4個項目程序地址),簡單簡潔的27內核指令,可以自行設置晶振頻率;大量的寄存器和片內數(shù)據(jù)存儲器可以參與各種操作;以及高效的查表處理指令。此外,在軟件編程過程中還具有良好的可移植性和可擴展性。最后,本文提出了一個基于Linux平臺的高性能嵌入式系統(tǒng)的設計方案。這些特性確保了高效率源程序的開發(fā)。運算速度快:MSP430單片機通過25MHz晶體驅動,實現(xiàn)了40ns的指令周期.其內部集成了許多功能單元,例如:時鐘模塊、存儲器、定時器以及中斷服務等,這些功能單元都是由不同型號的集成電路構成。16位數(shù)據(jù)寬度可以與多功能硬件乘法器配對,使一些數(shù)字信號處理算法(如FFT)成為可能。超低功耗:MSP430的功耗極低,主要原因如下:MSP430的電源電壓為1.8-3.6V。因此,當單片機在1MHz時,芯片上的電流至少達到165μA,而RAM保持模式的最低功耗僅為0.1μA。此外,單片機還具有獨特的時鐘設計。MSP430單片機上有三種不同的時鐘系統(tǒng):基本時鐘系統(tǒng)、鎖頻環(huán)時鐘系統(tǒng)和DCO數(shù)字振蕩器鐘系統(tǒng)。在MSP430中,只能使用一種晶體振蕩器,如DT-26ORDT-38,以及兩種晶體振蕩器。時鐘的CPU和各種功能是由系統(tǒng)的時鐘系統(tǒng)產生的.其中,基本時鐘系統(tǒng)為整個系統(tǒng)提供唯一時間基準,而鎖頻環(huán)則用于保證頻率同步。此外,DSP內部還集成了許多功能電路來完成上述任務,如定時器、計數(shù)器等。這些時鐘可以在系統(tǒng)指令的控制下打開和關閉,從而控制整個單片機的功耗。由于系統(tǒng)在運行時打開的模塊不同,也就是說,在不同的工作模式下,單片機的功耗會有很大的不同。其中,DCO數(shù)字振蕩器可以實現(xiàn)高精度時鐘信號輸出,并且其性能要比其他兩種時鐘精度高很多。此外,MSP430F149還支持各種中斷服務,包括數(shù)據(jù)存儲等功能。系統(tǒng)有多種功耗模式,一種是活動模式,五種是低功耗模式(LPM0到LPM4)。在實時時鐘模式,MCU可以消耗2.5μA,而在RAM保持模式下,最低功耗僅為0.1μA。片內資源豐富:MSP430系列單片機的各種系列都具有極為豐富的片內資源。如\t"/item/MSP430%E5%8D%95%E7%89%87%E6%9C%BA/_blank"看門狗電路(WDT)、\t"/item/MSP430%E5%8D%95%E7%89%87%E6%9C%BA/_blank"模擬比較器、定時器A0(Timer_A0)與定時器A1(Timer_A1)、\t"/item/MSP430%E5%8D%95%E7%89%87%E6%9C%BA/_blank"實時時鐘(\t"/item/MSP430%E5%8D%95%E7%89%87%E6%9C%BA/_blank"RTC)和USB控制器等若干外圍模塊的不同組合。由于單片機工作室極易受到外界電磁場的干擾,造成各種數(shù)據(jù)混亂,所以看門狗系統(tǒng)可以檢測單片機運行狀態(tài),并且能夠在單片機失控產生混亂時及時使單片機復位,減小損失;模擬比較器是模擬電壓與一標準值比較,有定時器,使其在一定范圍內保持數(shù)值不變??梢栽O計模數(shù)A/D轉換器;16位定時器中最主要的是TACTL,它決定Timer_A的時鐘信號和工作方式,并具有捕捉/比較功能。因此在電路設計時必須加以重視;其特點是:電路結構簡單、易于集成;功耗低、成本低、可靠性好;對內部元件要求不高??梢圆蹲?比較寄存器;它可以用于事件計數(shù)、時序發(fā)生、PWM等,還具有異步、同步、多址串行通信接口在多機通信的應用。例如,P0、P1和P2端口,這些端口可接收來自外部升邊或下降沿的中斷輸入;10/12位的硬件A/D轉換器具有很高的轉換速率,最多200kbps,可滿足大多數(shù)數(shù)據(jù)采集應用;最多160段液晶直接驅動;12位D/A跨兩個通道轉換;通過硬件I2C串行總線接口進行串行擴展;以及DMA模塊,以提高數(shù)據(jù)傳輸速度。這些MSP430系列單片機的片內外設為該系統(tǒng)的單片解決方案提供了極大的便利。此外,MSP430系列單片機中斷源更多,可隨意嵌套,使用靈活方便。本文通過實驗證明了在不同工作模式下采用中斷方式啟動設備的可行性和優(yōu)越性。與傳統(tǒng)方法相比,本設計具有很好的可靠性;同時還可實現(xiàn)對硬件電路的優(yōu)化配置。當系統(tǒng)處于低功耗時,只需5μs即可中斷喚醒。具有便捷高效的開發(fā)環(huán)境MSP430系列有三種設備,OTP、FLASH型和ROM型,它們有不同的開發(fā)手段。其中,OTP型和FLASH型用硬件描述語言開發(fā)軟件;而ROM型則是利用專用集成電路(ASIC)來完成設計任務的。對于OTP型和ROM型設備,在使用仿真器成功開發(fā)后,芯片可以燒毀、寫入或隱藏;而對于FLASH型設備,由于其JTAG調試接口,芯片是一個非常便利的開發(fā)和調試的環(huán)境。此外,F(xiàn)lash還具有可電擦寫內存,因此,開發(fā)Flash的方法是將程序下載到FLASH中,并通過設備中的軟件控制程序進行運行,JTAG接口可讀取芯片內的信息,供設計者進行調試。這種方法只需要一臺PC機和一個JTAG調試器,而不是仿真器和編程器。最后對所設計的系統(tǒng)做了測試,結果表明該系統(tǒng)能滿足實際應用的要求;并已將此技術運用于實際項目中去。開發(fā)語言是匯編語言和C語言。

3.2.1MSP430引腳這個微型處理器有64顆引腳。處理器的引腳連接外圍設備,例如屏幕、按鍵和傳感器,并創(chuàng)建通信通道。通過引腳,微處理器可以使用外圍設備,例如傳感器、繼電器等。單片機的引腳數(shù)量是有限的,如何發(fā)揮整個芯片的性能是一大問題。目前,可以改進引腳的體積和設計,使用兩個或更多引腳的,擴展MCU的功能[9]。圖3.2是一臺簡單的微型計算機MSP430的引腳[10]示意圖,引腳示意圖對此進行了詳細說明??偟膩碚fMSP430具有如下優(yōu)勢:1、經濟:16位MSP430微控制器(MCU)經濟實惠。2.功耗:MSP430單片機可作為低功耗\o"嵌入式系統(tǒng)"嵌入式設備使用,其靜態(tài)電流可小于1微安。MSP430系列單片機的

\o"中央處理器"CPU

的最高頻率為25MHz,但也可以降低頻率以降低功耗。MSP430了六種不同的低功耗模式,可以禁用不想要的時鐘和CPU。這些模式都是根據(jù)系統(tǒng)中的硬件結構來確定的,并不會對軟件和程序造成影響。因此,MSP430只需使用一種簡單的指令就能完成所有功能。而且無需額外增加成本。另外,MSP430可以在1微秒內被喚醒,這使得它在睡眠模式下可以持續(xù)更長的時間,并平均功耗最小化。3.外設:內部\o"振蕩器"振蕩器、\o"定時器"定時器、\o"脈沖寬度調變"PWM、\o"看門狗計時器"看門狗、\o"UART"UART、\o"SPI"SPI、\o"I2C"I2C、10/12/14/16/24位

\o"類比數(shù)位轉換器"ADC,以及掉電復位電路等,外設非常齊全。4.功能:MSP430系列單片機使用矢量中斷支持十幾個中斷源,可隨意嵌套。在該系列中,M是個非常重要的數(shù)字量,它對整個系統(tǒng)起著至關重要的作用。如果M設置不合理會影響整個系統(tǒng)的工作性能和可靠性。本文介紹一種新方法。用中斷請求喚CPU只需要6us,只要編程得當,可以降低系統(tǒng)功耗。圖3.2MSP430單片機封裝引腳圖3.2.2MSP430內部原理簡單MSP430的內部集合相對復雜[11]。如果這只是一個微處理器,那么這個過程的簡單集合已經編譯好了。包括時鐘芯片、時區(qū)、ROM、閃存、RAM閃存、48個I/O端口、串行通信[12]和CPU。圖3.3是單片機內部資源圖:圖3.3單片機內部資源圖3.3電源電路優(yōu)化方案使用12V聚合物鋰電池驅動兩個電機驅動(L298N),并將12V電源細分為降壓模塊上的減壓機(LM2596S),將降壓模塊的輸出電壓調整為5V。然后使用降壓模塊降下來的電壓給單片機、8路紅外、OLED等供電。經過反復測試,這樣的供電系統(tǒng)沒有任何問題。圖3.4電源電路3.4循跡探測模塊采用集成式紅外探頭和一體化間歇式光電開關檢測器,集成度程度高,工作性能可靠。該裝置具有檢測速度快、精度高、抗干擾能力強等特點。探頭的靈敏度可以通過調整探頭上的旋鈕來控制。這種探頭還可以有效地防止來自普通光源(如日光燈的干擾)。3.5顯示屏電路OLED屏幕作為一種新型的顯示技術,其自身可以發(fā)光,亮度,對比度高,功耗低,在當下備受追捧。而在我們正常的顯示調整參數(shù)過程中,我們越來越多的使用這種屏幕。我們使用的一般是分辨率為128×64,屏幕尺寸為0.96寸。由于其較小的尺寸和比較高的分辨率,讓它有著很好的顯示效果和便攜性。這個屏幕的像素矩陣的劃分是比較特殊的,整個屏幕水平方向劃分為8個page,垂直方向則是按像素劃分為128column.每個column包含8個像素,通過一個十六進制數(shù)(其實就是一個字節(jié),8個bit)來控制,每個bit控制一個像素。即儲存寄存器每個存儲點的0/1控制(映射)一個像素點的亮/滅。圖3.5LCD1602液晶顯示電路圖3.6按鍵電路單片機的按鍵電路與四個轉換平行的電路。關鍵檢測的重點是高電平和低電平的檢測??梢詫存I函數(shù)寫入不同的延時函數(shù),以提高識別精度。點擊按鍵設置開始跑步測速。鍵1是開始爬坡,鍵2是進入調參,鍵3是增大值,鍵4是減小值。圖3.6為按鍵控制電路原理圖:圖3.6按鍵控制電路3.7蜂鳴器電路當小車到達終點時,蜂鳴器將發(fā)出一聲提示音并且將成績顯示在屏幕上面。如圖3.6所示,一部分是1K電阻,另一部分是PNP三極管,最后一部分是蜂鳴器。使用PNP三極管來拉高蜂鳴器電平使開始報警。單片機的引腳輸出電流非常小,因此需要使用三極管充當開關給蜂鳴器低電平。蜂鳴器電路如圖3.7所示,蜂鳴器一端連接三極管的引腳,另一端接地。三極管采用PNP三極管,其主要功能是放大電流和電平特性,因為單片機電路的電路非常小,無法提供蜂鳴器所需的電流,經過三極管放大驅動電流后,電流放大200倍[13],驅動蜂鳴器報警。同時三極管的電阻起到限流的作用,因為單片機上電后引腳默認為高電平,所以為了防止三極管導通,只有我們想讓三極管進行操作的時候才會給蜂鳴器一個低電平這樣蜂鳴器才會進行報警。圖3.7蜂鳴器報警電路3.8LED電路模塊LED的工作是有方向性的,只有當正極接到LED陽極,負極接到LED陰極的時候才能工作,反接LED是不能正常工作的。LED陽極串聯(lián)一個電阻,然后連接電源VCC(高電平),而陰極則連接到單片機I/O口。當LED亮起來時,LED兩端產生電壓差。在單片機與燈座之間加上一電位器,使兩者間產生一定幅度的相位差。這樣單片機通過檢測這個相位差來控制驅動電路。如果你想點亮一個LED,給相應的單片機I/O口賦一個較低的級別。圖3.8LED報警指示燈電路圖3.09復位按鍵為了保證所設計的電路系統(tǒng)工作可靠,必須在電路中添加復位電路,將電路恢復到初始狀態(tài)。類似于我們使用的電腦,一旦我們電腦死機或發(fā)生其他問題,我們會利用重啟按鈕重啟我們的電腦。復位電路也是如此,一旦按下復位復位電路按鍵,系統(tǒng)就會恢復到初始狀態(tài)。復位電路的一般組成是電容和電阻組合形式,少部分會用到三極管。當電源電壓VCC低于上下掉電復位電路上電門檻電壓時,所有邏輯電路均復位。本文通過對VCC進行分析并設計出一種基于AT89C51單片機的低功耗延時控制電路。當VCC恢復到正常電壓時,單片機延遲了32768只時鐘,正常的操作/掉電復位結束。涉及的單片機系統(tǒng)在運行過程中,有時難免會遇到需要軟件復位的情況。有些古老的單片機在硬件上可能不支持軟件復位功能,所以我們就需要去模擬軟件復位的過程。比較常用的方法是跳轉到程序的入口地址,利用匯編LJMP、JMP等跳轉語句跳到程序的初始入口。但是現(xiàn)在常用的一些單片機(MSP432、STM32等)在硬件上都支持軟件復位,配置專門的寄存器就可以實現(xiàn)復位功能。這可以通過電容充電到外部復位電路來實現(xiàn),只要Vcc的功率不超過1ms,就可以達到自動復位,也就是連接電源來系統(tǒng)復位初始化。當復位時,VCC被壓到最低電壓(5V).如果復位過程中發(fā)生錯誤,則會導致程序中斷,從而使單片機無法正常工作。該方法分為手動和自動兩種方式。手動復位:按復位按鈕,復位腳達到VCC的高電平,單片機復位后,按鈕松開,系統(tǒng)復位完畢。3.10傳感器原理紅外激光對射傳感器工作原理:圖3.9顯示了金屬封裝的近紅外激光對射傳感器(NIRE)組成的外部結構圖,它包括一個近紅外線激光發(fā)射管、一個光電池以及一個轉換電路(如圖)。紅外線激光發(fā)射管也稱紅外激光發(fā)射二極管,它是可以將電能直接轉換成近紅外激光并能輻射出去的發(fā)光器件,其原理與普通發(fā)光二極管相近[3]。圖3.9所示為紅外激光發(fā)射管,紅外激光發(fā)射管在外部系統(tǒng)電路控制下打開直流電源時,直接向對面的光電池發(fā)射紅外激光束,根據(jù)光伏效應原理,光電池的光電動勢高于自然光的輸出。當光電池兩端有一定電流時,光電池兩端的電位差會發(fā)生變化,從而導致發(fā)射管工作于不同狀態(tài)。如果紅外激光發(fā)射管電源被切斷,那么發(fā)射管就不會發(fā)出紅外光,當自然光光照強度較低時,比如晚上,光電池兩端的電壓就幾乎為零。圖3.9外部結構圖自然光光照強度會因季節(jié)、天氣、照射的角度、室內或外等因素的改變而不同。比如在初夏晴天室內條件下實驗,隨光電池放置的角度不同,圖3.9中所示的光電池,經實測兩端電壓在0.2V~0.3V左右變化;若在室外實驗,實測兩端電壓在0.45V~0.52V左右變化。若紅外激光發(fā)射管電源接通,在夜晚(自然光照度極弱),發(fā)射管發(fā)射近紅外激光照射到光電池上,測得的光電池的雙端電壓約為0.5V[5]。當被測目標距離光電池較近時(小于1m),其光電轉換效率將受到很大影響,因此需要對測量結果進行校正處理。本文提出了一種基于光信號相位延遲補償技術的測量方法。根據(jù)上述原理,只要人或物體通過紅外激光區(qū),并且將紅外激光線隔離開來,光伏電池的光電池輸出電壓就會降低,通過對光電池電壓電壓變化的分析和檢測,就可以確定運動人或物體是否經過紅外激光傳感器。如圖3.10所示。圖3.10線性運動的物體隔斷紅外激光示意圖雙紅外激光對射傳感器識別人和物運動方向:如圖3.11所示,當兩個紅外激光對射傳感器相互間隔一定距離L并列平行布置時,就構成了雙紅外激光對射傳感器。距離L可根據(jù)物體線性運動的速度大小來決定,一般L可取20mm。本設計將使用單紅外激光檢測跑步速度。圖3.11雙紅外激光對射傳感器示意圖3.11紅外檢測電路圖3.12為紅外線發(fā)射管驅動電路圖。該電路中單根紅外管的驅動電流選值約為20毫安.由于NPN型三極管驅動電流小于20mA,所以在電路中增加了一個P-mos管,以提高驅動能力。需要對R18和R29的電阻值進行匹配,如果這兩個電阻不匹配,會導致驅動脈沖波形毛刺增加,導致二極管二極管導通能力下降,導電性導頻導通時間增加。R18最大限度地降低了電路功耗,無論是R18還是R29,都選擇了10k的歐米茄電阻。紅外線發(fā)射管驅動不穩(wěn)定,將導致接收判斷不良,根據(jù)實驗結果設置驅動電路。另外,在工作時產生大量熱量容易使芯片過熱而失效。因此,為了提高系統(tǒng)穩(wěn)定性,必須對驅動信號進行保護處理。圖3.12紅外發(fā)射電路圖紅外線接收二極管的內部電路在傳輸后對微弱脈沖信號進行放大和濾波,輸出可被單片機識別的方波脈沖信號。這種類型的紅外線接收管的波長范圍約為850nm至1050納米,紅外線發(fā)射管的波長約875nm。當紅外線接收管被阻擋在視野之外時,周圍的屏障反射紅外線發(fā)射管發(fā)出的紅外線信號。這時,紅外接收管中的弱信號將調整到自動增益控制最大值,并產生方波波形,從而干擾紅外線接收管。由于外界環(huán)境光線太暗,紅外光無法穿透,所以不可能探測到目標物。這時,如果有異物進入,就會發(fā)生雜波干擾。雜波干擾主要由噪聲引起。雜波干擾源包括:(1)發(fā)射端;(2)接收端,(3)接收機。其中,發(fā)送端與接收器都位于同一個平面上,并且相互之間具有一定距離。干擾使采集到的信號復雜化,需要對雜波干擾進行濾波處理。為了抑制雜波,需要進行降噪處理。本文采用了基于自適應濾波器(AdaptiveFilter)的方法。該濾波器能自動跟蹤不同頻段上的干擾源,具有良好的性能。通過分析和示波器觀測,發(fā)現(xiàn)雜波頻率大于1kHz,有源有源濾波電路紅外線接收管的輸出端,可以對1kHz以上的雜波進行濾波。產生的波形為紅外線接收管兩種狀態(tài)的信號,無信道,無干擾,易于識別。特征編寫算法可以用來確定一個物體是否通過紅外線接收管間的通道。圖3.13紅外收電路圖3.12路面探測子程序在這個小車運行軌跡模型中,軌跡上有黑線標記,小車可以通過從汽車前部向下的兩個紅外傳感器探測出黑線來確定自己的位置。并且將此信息傳送給控制器??刂破鞲鶕?jù)收到的數(shù)據(jù)對其進行分析處理并發(fā)出相應信號,然后由驅動輪帶動小車移動。如果小車的兩個紅外探測器都能探測到黑線,小車就會進入加速或限速區(qū)域,后輪的驅動電機就會改變速度,如果只有一個探測器探測到黑線,就意味著小車的一側將要出界,而前輪的轉向就會被調整來控制汽車的方向,程序流程圖如圖所示。圖3.14路面探測程序流程圖3.13PID調速程序設計PID控制車速技術已經在經典控制理論中非常完善,這種技術十分成熟可靠,而且相比于兩位式控制,控制小車速度的精度大大提高,如今,由于軟件系統(tǒng)的靈活性變得越來越強,PID控制也得到了修正且變得更加精準,用計算機算法代替PID調節(jié)器,從而能夠實現(xiàn)數(shù)字PID控制,使得對于小車的速度控制變得更加完善,PID控制圖如圖所示。圖3.15PID控制圖因為本設計中才用的是單片機,只能處理數(shù)字信號,隨意要將模擬PID轉換成數(shù)字PID,下圖是模擬PID的參數(shù)離散化。圖3.16模擬PID參數(shù)離散圖數(shù)字PID算法可分為位置式算法和增量式算法兩種形式,其中增量式算法優(yōu)于位置式算法,因此采用增量式PID來控制小車。增量式PID控制原理如圖:圖3.17增量式PID控制原理增量型PID算法流程圖如圖所示:圖3.18增量型PID算法程序流程圖第四章軟件系統(tǒng)設計4.1軟件主程序架構硬件和調試完成后,應針對單片機和設備傳感器執(zhí)行應用程序編寫。首先,應該對各個模塊進行初始化。首先編程主函數(shù),然后按照傳感器的順序編程各模塊。初始化每個硬件。初始步驟是:系統(tǒng)初始化,紅外傳感器和電機驅動開始工作,按下按鍵電路小車開始爬坡,如開始,紅外傳感器開始糾正小車路線跟隨黑線,到達終點時,蜂鳴器發(fā)出提示整個流程將顯示在圖4.1中。圖4.1系統(tǒng)流程圖4.2oled12864顯示本方案使用的屏幕的像素矩陣的劃分是比較特殊的,整個屏幕水平方向劃分為8個page,垂直方向則是按像素劃分為128column.每個column包含8個像素,通過一個十六進制數(shù)(其實就是一個字節(jié),8個bit)來控制,每個bit控制一個像素。即儲存寄存器每個存儲點的0/1控制(映射)一個像素點的亮/滅。4.3串口通信流程圖通用同步異步收發(fā)器是一種串行通信設備,可以靈活地與外部設備全雙工數(shù)據(jù)交換。與USART有區(qū)別,有UART,它切斷了基于USART的同步通信功能,只是異步通信。同步和異步的簡單區(qū)別在于是否需要外部時鐘輸出來查看通信,我們通常使用的串口通信基本上是UART。串口通信通常以幀幀格式傳輸數(shù)據(jù),即一幀接一幀,每幀包含起始信號、數(shù)據(jù)信息、停止和可能校驗信息。而UART不具備上述條件,所以不能作為串口通信的一種方式。本文介紹了UART系統(tǒng)設計及實現(xiàn)方法。該方案具有良好的擴展性和靈活性。適合于各種不同的場合。USART工業(yè)標準標準NRZNRZ異步串行數(shù)據(jù)格式的外部設備的要求,并使用能夠提供多個比特率的十進制波特率生成器,使其更廣泛地使用。USART支持同步單向通信和半雙工單線通信;它還支持局域互連網絡LIN、智能卡協(xié)議和lrDA(紅外線數(shù)據(jù)協(xié)會)SIRENDEC規(guī)范。USART使用DMA支持高速數(shù)據(jù)通信。圖4.2串口初始化流程圖4.4紅外對射傳感器檢測流程圖控制軟件要保證紅外線對射管的一對一工作,對信號的采集處理,對信號的采集算法程序,完成對目標是否阻塞紅外線對射管的判斷,即紅外線接收管是否有通道。脈沖數(shù)可由單片機內部計數(shù)器測量,該計數(shù)器可記錄物體阻塞紅外紅外線接收管時間脈沖個數(shù)。正如圖4.3所示,第一個紅外線接收管的輸出狀態(tài)需要不斷地確定。當確定一個物體是模糊的時,會標記位置1,然后單片機開始讀取其他接收管的狀態(tài)。同時,定時器被激活,下一對接收管管的紅外對被阻塞,以停止計時。當兩個紅外線對射管同時到達時,處理單元比較這兩個紅外線對,并將它們發(fā)送到中斷模式。當紅外線對不符合設置的條件時,該單元立即關閉,否則,工作繼續(xù)進行。在中斷服務端中設置斷點檢測電路,當斷點處發(fā)生故障后,會立即發(fā)出警報,提示工作人員及時處理問題,避免影響系統(tǒng)正常運行。(3)硬件設計與實現(xiàn)。紅外線發(fā)射管按順序發(fā)射紅外線,處理裝置按順序讀出紅外光接收管狀態(tài)。它可以防止由于鳥類或人類無意中掩蓋而造成的誤判現(xiàn)象。如果計數(shù)結

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論