基于at89s52單片機及pid算法實現(xiàn)循跡避障功能的智能小車畢業(yè)論文,絕對精品_第1頁
已閱讀1頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  本科畢業(yè)論文(設計)</p><p>  基于AT89S52單片機的多功能智能小車設計論文 </p><p>  2012年4年28月</p><p><b>  摘 要</b></p><p>  本文介紹了一種利用AT89S52單片機為控制核心,結合多種傳感器以及PID算法實現(xiàn)循跡避障功能的

2、智能小車。利用反射式光電傳感器檢測黑線實現(xiàn)小車循跡,利用超聲波傳感器檢測道路上的障礙,控制電動小汽車的自動避障,整個系統(tǒng)具有自動尋跡、尋光和速度測試功能。其中,控制部分采用AT89S52,AT89S52是一款8位單片機,它的易用性和多功能性受到了廣大使用者的好評。電機驅動采用常用的PWM方式進行電機的調速控制,小車的速度通過液晶屏來顯示。整個系統(tǒng)的電路結構較簡單,可靠性能高,能滿足各種設計的要求。隨著我國高科技水平的不斷提高和工業(yè)自動化

3、進程的不斷推進,智能小車被廣泛應用于各種玩具和其他產(chǎn)品的設計中,極大地豐富了人們的生活。</p><p>  關鍵詞:單片機;傳感器;PWM調速;循跡避障;pid控制算法</p><p><b>  Abstract</b></p><p>  This paper introduced an kind of intelligent car t

4、hat use AT89S52 SCM as control core , combine with multiple sensors and PID control algorithm to achieve the function that find track and avoid obstacles. the electrical car uses reflective photoelectric sensor to detect

5、 black line to achieve track-finding, uses ultrasonic sensors to detect obstacles on the road to avoid obstacles automatically.The entire system has the function that trace route automatically,find light and test speed .

6、Among them</p><p>  KEY WORDS: SCM; Sensor; PWM speed adjusting; Track finding and obstacle avoidance; PID control algorithm</p><p><b>  目 錄</b></p><p><b>  1 緒

7、論1</b></p><p>  1.1 研究背景和發(fā)展現(xiàn)狀1</p><p>  1.2 研究目的和意義1</p><p>  1.3 研究內容1</p><p>  2 系統(tǒng)總體方案設計與論證3</p><p>  2.1 總體方案設計3</p><p>  2.2

8、方案選擇論證3</p><p>  2.2.1 循跡檢測系統(tǒng)4</p><p>  2.2.2 障礙物檢測系統(tǒng)4</p><p>  2.2.3 光源檢測系統(tǒng)5</p><p>  2.2.4 速度檢測系統(tǒng)5</p><p>  2.3 電機驅動系統(tǒng)5</p><p>  2.4 單

9、片機控制電路系統(tǒng)6</p><p>  2.5 顯示模塊6</p><p><b>  3 硬件設計7</b></p><p>  3.1 總體設計方案7</p><p>  3.2 單片機控制電路8</p><p>  3.3電機驅動電路10</p><p>

10、  3.3.1驅動電路10</p><p>  3.3.2 PWM調速原理11</p><p>  3.4 循跡檢測電路12</p><p>  3.5 障礙物檢測電路13</p><p>  3.6光源檢測電路14</p><p>  3.7 速度檢測電路15</p><p>  

11、3.8 液晶顯示電路16</p><p><b>  4 軟件設計18</b></p><p>  4.1 系統(tǒng)控制流程18</p><p>  4.2 算法設計18</p><p>  4.2.1循跡算法設計18</p><p>  4.2.2 避障算法設計19</p>

12、<p>  4.4.2 測速算法設計19</p><p>  4.3.3 PID控制算法20</p><p><b>  5調試21</b></p><p>  5.1 調試方法21</p><p>  5.2 測試結果與分析21</p><p>  6 結論與展望23&l

13、t;/p><p><b>  致 謝24</b></p><p><b>  參考文獻25</b></p><p><b>  附 錄26</b></p><p><b>  1 緒 論</b></p><p>  1.1

14、研究背景和發(fā)展現(xiàn)狀</p><p>  隨著電子技術、計算機技術、智能控制技術的飛速發(fā)展,產(chǎn)品的智能化和小型化越來越成為人們關注的熱點。各種智能小車在智能化玩具中占了很大的比例。近年來,傳統(tǒng)玩具的市場逐步縮水,高科技智能化的電子類玩具則逐步成為市場的主流。因此,可遙控的智能化小車的研究是非常有意義的,具有很大潛在市場價值的。</p><p>  智能小車,也被稱之為輪式機器人。我們知道,機

15、器人技術的發(fā)展是一個國家高科技水平和工業(yè)自動化程度的重要標志和體現(xiàn)。機器人由于具有高度的靈活性、可以幫助人們提高生產(chǎn)率、改進產(chǎn)品質量和改善勞動條件等優(yōu)點,在世界各地的生產(chǎn)生活領域得到了廣泛的應用[5]。智能小車正是模仿機器人的一種嘗試。它是一種以汽車電子為背景,涵蓋控制,模式識別,電子、電氣、單片機、機械等多學科的科技創(chuàng)新性設計,一般主要由路徑識別、速度采集、角度控制以及車速控制等模塊組成。這種智能小車能夠自動搜尋前進路線,還能爬坡;感

16、知前方的障礙物,并自動尋找前進方向,避開障礙物;加入相關聲光訊號后,更能體現(xiàn)出智能化和人性化的一面。</p><p>  1.2 研究目的和意義</p><p>  隨著人們物質文化生活水平的不斷提高,智能化的電子玩具深受人們的喜愛,尤其是各種智能小車,由于這類玩具具有較好的交互性,可控性,能夠給人們帶來很好的娛樂以及參與其中的體驗,高科技智能化的電子類玩具逐漸成為市場的主流。與此同時,智

17、能小車可以應用于考古、機器人、醫(yī)療器械等許多方面,尤其在足球機器人研究方面具有很好的發(fā)展前景。因此,智能化小車的研究不僅具有很大的現(xiàn)實意義,還具有極為廣闊的應用前景和市場價值。</p><p><b>  1.3 研究內容</b></p><p>  本設計的智能電動小車具有自動尋跡、尋光、避障、速度檢測功能,可程控行駛速度、準確定位停車。</p>&l

18、t;p>  整體設計可以分為如下幾個模塊,控制核心采用MCS-51系列中的AT89S52單片機,循跡避障是通過傳感器實現(xiàn)的,利用超聲波傳感器檢測道路上的障礙,控制小車的自動避障,從而發(fā)出避障信號。整個系統(tǒng)具有自動尋跡、尋光和速度測試功能。電機驅動采用常用的PWM方式進行電機的降壓調速控制,小車的速度通過液晶屏來顯示。軟件中主要用到工業(yè)中常用的PID控制算法。整個系統(tǒng)的電路結構較簡單,可靠性能高。實驗測試結果滿足要求。</p&

19、gt;<p>  2 系統(tǒng)總體方案設計與論證</p><p>  2.1 總體方案設計</p><p>  根據(jù)題目的要求,確定如下方案:在現(xiàn)有玩具電動車的基礎上,加裝反射式紅外光電傳感器、超聲波傳感器、速度檢測傳感器以及光敏二極管陣列,實現(xiàn)對電動車的速度、位置、運行狀況的實時測量,并將測量數(shù)據(jù)傳送至單片機進行處理,然后由單片機根據(jù)所檢測的各種數(shù)據(jù)實現(xiàn)對電動車的智能控制。&l

20、t;/p><p>  本方案能實現(xiàn)對電動車的運動狀態(tài)進行實時控制,控制靈活、可靠,精度高,可滿足對系統(tǒng)的各項要求。系統(tǒng)整體方框圖如圖2-1所示。</p><p>  圖2-1 系統(tǒng)總體設計框圖</p><p>  2.2 方案選擇論證</p><p>  檢測系統(tǒng)主要運用傳感器作為外部敏感元件,進行外部信號的檢測。</p><

21、;p>  傳感器是一種檢測裝置,能感受到被測量的信息,并能將檢測感受到的信息,按一定規(guī)律變換成為電信號或其他所需形式的信息輸出,以滿足信息的傳輸、處理、存儲、顯示、記錄和控制等要求[7]。它是實現(xiàn)自動檢測和自動控制的首要環(huán)節(jié)。選擇合適的傳感器可以使設計簡便,還可以簡化硬件電路。</p><p>  2.2.1 循跡檢測系統(tǒng)</p><p>  循跡檢測常用到傳感器。根據(jù)小車功能的要求

22、有兩種方案,一種是使用紅外光電傳感器,另一種是使用CCD傳感器。這兩種方案都可以達到小車循跡要求,目前使用最為普遍的循跡檢測方法是紅外探測法。兩種方案的主要區(qū)別是使用的傳感器不同。具體區(qū)別見表2-1。</p><p>  表2-1 循跡檢測方案對比</p><p>  從上表中可以很明顯的看出,紅外傳感器相對于DDC傳感器來說,在實時性和對主控芯片的要求方面都比CCD傳感器要好?;谶@些

23、優(yōu)勢以及處于成本的考慮,本設計采用小車底部,距地面高度合適,可以達到很好的檢測效果。</p><p>  2.2.2 障礙物檢測系統(tǒng)</p><p>  根據(jù)題目功能的要求,小車在循跡行駛過程中要能準確的避開途中遇到的障礙物,因此對檢測距離有一定要求。又考慮到在測障過程中小車車速及避障反應堆小車速度的限制,小車應在距障礙物10CM的范圍內做出反應,這樣才能在順利繞過障礙物的同時還為下一步駛

24、入車庫尋找到最佳的位置和方向。否則,如果范圍太大,則可能產(chǎn)生障礙物的判斷失誤;范圍過小又很容易造成車身撞上障礙物或雖繞過障礙物卻無法實現(xiàn)理想定向方案。 障礙物檢測可以有多種方法:紅外光檢測、超聲波檢測、甚至機械接觸。這些方法都有各自的優(yōu)缺點。常用的有紅外檢測和超聲波檢測,兩種方案的區(qū)別見表2-2。</p><p>  表2-2 障礙檢測系統(tǒng)方案對比</p><p>  從上表可以看出,相

25、對紅外檢測,超聲波檢測距離遠,不易受外界環(huán)境干擾,由于小車需要在行駛過程中檢測障礙物,顛簸,光照方面可能會對檢測產(chǎn)生影響。所以需要選擇穩(wěn)定性較好的,故本設計選擇超聲波檢測。</p><p>  2.2.3 光源檢測系統(tǒng)</p><p>  光源檢測使用常見的光敏器件,光敏二極管。光敏電阻器(photovaristor)又叫光感電阻,是利用半導體的光電效應制成的一種電阻值隨入射光的強弱而改變

26、的電阻器;入射光強,電阻減小,入射光弱,電阻增大。光敏電阻器一般用于光的測量、光的控制和光電轉換(將光的變化轉換為電的變化)。這里我們就可以利用光敏二極管對光源變換的敏感反映,檢測外部光源。當有光照射時,光敏二極管呈強電阻,經(jīng)比較器輸出一個高電平,反之則輸出低電平。我們可以再外接一個LED作為檢測指示燈,則可以明顯觀察到這個變化。即有光照時LED亮,無時則滅。</p><p>  2.2.4 速度檢測系統(tǒng)<

27、/p><p>  在電機測速中,考慮了兩種方案:一種是使用光電碼盤,即透射式光電傳感器(凹槽型,類似老式鼠標),另一種是霍爾傳感器(適合較高速度)。兩種方案的主要區(qū)別如表2-3。</p><p>  表2-3 速度檢測系統(tǒng)方案對比</p><p>  由上表可以看出光電碼盤在各方面都具有一定的優(yōu)勢,因此本設計采用關電碼盤測速。</p><p>

28、  2.3 電機驅動系統(tǒng)</p><p>  直流電機和步進電機都可以用于小車驅動。故有兩種方案。</p><p>  方案一:使用直流電機,加上適當減速比的減速器。直流電機具有良好的調速性能,控制起來也比較簡單。直流電機只要通上直流電源就可連續(xù)不斷的轉動,調節(jié)電壓的大小就可以改變電機的速度。直流電機的驅動電路實際上就是一個功率放大器。常用的驅動方式是PWM方式,即脈沖寬度調制方式。此方法

29、性能較好,電路和控制都比較簡單。</p><p>  方案二:使用步進電機。步進電機具有良好的控制性能。當給步進電機輸入一個電脈沖信號時,步進電機的輸出軸就轉動一個角度,因此可以實現(xiàn)精確的位置控制。與直流電機不同,要使步進電機連續(xù)的轉動,需要連續(xù)不斷的輸入點脈沖信號,轉速的大小由外加的脈沖頻率決定。去而且其轉動不受電壓波動和負載變化的影響,也不受溫度、氣壓等環(huán)境因素的影響,僅與控制脈沖有關[8]。但步進電機的驅動

30、相對較復雜,要由控制器和功率放大器組成。具體差別見下表2-4。</p><p>  表2-4 電機控制方式對比</p><p>  由上表可以看出步進電機和直流電機都有各自的優(yōu)點。步進電機能進行精確的位置控制,但驅動電路麻煩,鑒于本設計中小車的位置控制不要求十分精確,直流電機即可滿足小車要求的精度。且直流電機易于控制,驅動電路十分簡單。</p><p>  2.4

31、 單片機控制電路系統(tǒng)</p><p>  此部分是整個小車運行的核心部分,起著控制小車所有運行狀態(tài)的作用??刂频姆椒ㄓ泻芏啵蟛糠侄疾捎脝纹瑱C控制。單片機要完成電機控制、循線控制、避障控制金屬檢測控制和光源檢測控制等工作。本設計中小車的主控采用我們最為熟悉的AT89S52單片機。雖然這款單片機本身沒有PWM模塊,但若采用本身有PWM模塊的單片機就會產(chǎn)生資源浪費。我們可以通過軟件編程產(chǎn)生PWM,既能充分利用可用資源

32、,又不浪費。且能很好的滿足題目要求。</p><p><b>  2.5 顯示模塊</b></p><p>  由于小車要顯示速度和行駛距離,內容較多。數(shù)碼管使用簡單,價格低廉,但一個數(shù)碼管只能顯示一個數(shù)字,要顯示多位數(shù)據(jù)時要使用多個數(shù)碼管,這就增加了硬件電路的復雜度和額外功耗。故不予考慮。液晶顯示電路簡單,使用方便,一個液晶顯示器就可以同時滿足此處同時顯示速度和距離

33、的要求,且更加直觀明了。</p><p><b>  3 硬件設計</b></p><p>  3.1 總體設計方案</p><p>  智能小車采用后輪驅動,后輪左右兩邊各用一個電機驅動,調制兩個后面兩個輪子的轉速從而達到控制轉向的目的,前輪是萬象輪,起支撐的作用。將四個紅外線光電傳感器裝在車體的底盤前端,小車根據(jù)傳感器檢測到的情況執(zhí)行。&l

34、t;/p><p>  避障的原理和循跡一樣,在車頭裝了一個傳感器,傳感器檢測到障礙物時,小車減速,車體做出相應的反應。</p><p>  小車速度的檢測也是靠的紅外線,只不過是器件的型號不同,速度檢測的傳感器用的是對射式,避障用的是直射式。把碼盤裝在電機的軸上,碼盤隨電機一起轉動,這里使用的是改進過的的碼盤,把圓形硬紙片切制成直徑為25mm的圓,再把圓周用鋸條均勻切12條縫,縫的寬度約為1m

35、m??梢院芎玫臐M足小車所需的精度。</p><p>  考慮到電機控制要使用PWM波形,而AT89S52單片機本身不能產(chǎn)生PWM,需要外加電路或使用軟件的方式實現(xiàn),為減少硬件電路,這里選用軟件產(chǎn)生PWM方式。</p><p>  整體原理電路圖如圖3-1所示。</p><p>  圖3-1 整體原理電路圖</p><p>  3.2 單片機

36、控制電路</p><p>  單片機是控制單元的核心。起著控制小車所有運行狀態(tài)的作用。單片機控制模塊使用的是ATMEL公司生產(chǎn)的AT89S52,使用該芯片很容易實現(xiàn)對其他模塊的控制。通過對單片機AT89S52寫入程序,可以方便的用軟件來控制整個過程.控制部分如圖3-2所示。 </p><p>  圖3-2 單片機最小系統(tǒng)</p><p>  AT89S52單片機最

37、小系統(tǒng)包括了一路復位開關,用于小車復位。P1.0輸出PWM信號,P1.1~P1.5分別控制電機驅動。其他P口用外接控制小車的各種控制開關,P0口外接10K的上拉電阻,可用于外接LCD1602。</p><p>  AT89S52 單片機介紹:</p><p>  AT89S52 是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器。使用Atmel公司高密度非易失性

38、存儲器技術制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng) 可編程Flash,使得AT89S52為眾多嵌入式控制應用系統(tǒng)提 供高靈活、超有效的解決方案。AT89S52具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,32 位I/O 口線,看門狗定時器,2個數(shù)據(jù)指針,三個16 位 定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,片

39、內晶振及時鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內容被保存,振蕩器被凍結, 單片機一切工作停止,直到下一個中斷或硬件復位為止。8位微控制器 8K 字節(jié)在系統(tǒng)可編程[16]。其引腳排列如圖3-3所示。</p><p>  圖3-3 AT89S52引腳排列圖</p

40、><p><b>  1.主要性能</b></p><p>  ● 與MCS-51單片機產(chǎn)品兼容;</p><p>  ● 8K字節(jié)在系統(tǒng)可編程Flash存儲器;</p><p>  ● 1000次擦寫周期;</p><p>  ●全靜態(tài)操作:0Hz~33Hz;</p><p>

41、;  ●三級加密程序存儲器;</p><p>  ● 32個可編程I/O口線;</p><p>  ●三個16位定時器/計數(shù)器;</p><p><b>  ●八個中斷源;</b></p><p>  ●全雙工UART串行通道;</p><p>  ●低功耗空閑和掉電模式;</p>

42、<p>  ●掉電后中斷可喚醒;</p><p><b>  ●看門狗定時器;</b></p><p><b>  ●雙數(shù)據(jù)指針;</b></p><p><b>  ●掉電標識符。</b></p><p>  4個P口在一般情況下都是是一個8位雙向I/O口。不過P0

43、口是漏極開路的8位雙向I/O口,而其他P口都是具有內部上拉電阻的8作為輸出口要外部上拉電阻。且P1口部分引腳和P3口具有第二功能。具體見表3-1和表3-2。</p><p>  表3-1 P1口引腳第二功能</p><p>  表3-2 P3口引腳第二功能</p><p>  另外還有第九引腳RST為復位引腳。地十八引腳和第十九引腳分別為振蕩器反相放大器的輸入端

44、和輸出端。</p><p><b>  3.3電機驅動電路</b></p><p><b>  3.3.1驅動電路</b></p><p>  小車使用的是直流電機。從單片機輸出的信號功率很弱,即使在沒有其它外在負載時也無法帶動電機,所以在實際電路中我們加入了電機驅動芯片提高輸入電機信號的功率,從而能夠根據(jù)需要控制電機轉動

45、。直流電機常用的PWM,及脈寬調制方式驅動。本設計中電機驅動采用L298集成H橋芯片。L298中有兩套H橋電路,剛好可以控制兩個電機。它的使能端可以外接高低電平,也可以利用單片機進行軟件控制,極大地滿足各種復雜電路需要。</p><p>  另外,L298的驅動功率較大,在6~46V的電壓下,可以提供2A的額定電流,并且具有過熱自動關斷和電流反饋檢測功能,安全可靠;為了保證L298正常工作,我們另外安裝了續(xù)流二極

46、管。電路如圖3-4所示。能根據(jù)輸入電壓的大小輸出不同的電壓和功率,解決了負載能力不夠這個問題。利用單片機調整出PWM脈沖和高低電平對直流電機進行驅動和控制。</p><p>  圖3-4 電機驅動電路</p><p>  L298集成H橋芯片。其外形、管腳分布如圖3-5所示。</p><p>  圖3-5 L298管腳分布圖</p><p&g

47、t;  3.3.2 PWM調速原理</p><p>  脈沖寬度調制(Pulse Width Modulation),簡稱PWM。脈沖周期不變,只改變晶閘管的導通時間,即通過改變脈沖寬度來進行直流調速。PWM的理論基礎是:沖量相等而形狀不同的的窄脈沖加在具有慣性的環(huán)節(jié)上,其效果基本相同。采用PWM進行電機的調速控制,實際是保持加在電機電機電樞上的脈沖電壓頻率不變,調節(jié)其脈沖寬度。電機是一個慣性環(huán)節(jié),它的電樞電流餓

48、轉速均不能突變,很高的頻率的PWM加在電機上,效果相當于施加一個恒定電壓的直流電。如圖3-6所示。這個電壓可以由脈沖的寬度調節(jié)。</p><p>  圖3-6 PWM等效圖示意圖</p><p>  使用PWM方式可以很容易的實現(xiàn)調速。PWM信號由單片機軟件產(chǎn)生,使用非常方便。由于電路總體上并不復雜,驅動電路的控制輸入端也可以不用經(jīng)光耦合隔離,直接與單片機引腳相連。</p>

49、<p>  前進時,驅動兩個直流電機都正轉,后退時,則兩電機都反轉。左轉時前進時,左電機不轉而右電機正轉,右轉前進時,則右電機不轉而左電機正轉。進入減速區(qū)時,由單片機控制進行PWM變頻調速,通過軟件改變脈沖調寬波形的占空比,實現(xiàn)調速。所有這些都是通過軟件編程實現(xiàn)控制。</p><p>  3.4 循跡檢測電路</p><p>  該智能小車在鋪有約兩厘米寬黑紙的路面行駛,路面可

50、以近似看為白色。由于黑紙和白色路面對光線的反射系數(shù)不同,可以根據(jù)接收的反射光的強弱來判斷道路——黑紙軌跡。本設計采用簡單易用,應用也較為普遍的紅外探測法。</p><p>  紅外探測法,即用紅外線在不同顏色的物表面具有不同的反射性質的特點。在小車行駛過程中不斷地向地面發(fā)射紅外光,當紅外線遇到白色地面時發(fā)生漫反射,反射光被裝在小車上的接收管接收;如果遇到黑紙則紅外光被吸收,小車上的接收管接收不到信號。</p

51、><p>  市面上用于紅外探測法的器件較多,可以利用反射式傳感器外接簡單電路自制探頭,也可以使用結構簡單、工作性能可靠的集成式紅外探測頭。ST系列集成紅外探測頭價格便宜。體積小。簡便易用,性能可靠。所以本設計選擇了ST178反射式紅外線光電傳感器作為紅外光的發(fā)射和接受器件,其內部結構和外接電路均較為簡單.</p><p>  本系統(tǒng)采用反射式紅外線光電傳感器ST178進行軌跡檢測(約3cm寬

52、的黑線),反射式紅外光電傳感器ST178由一個高發(fā)射功率紅外發(fā)光管和一個高度靈敏光晶體管封裝在一個塑料外殼里組成,一般檢測距離可達4~10cm,鑒于小車底部聚地面的距離不超過五厘米,故用紅外光電傳感器足以滿足地面黑線的檢測。且安裝電路簡單。檢測電路如圖3-7所示。</p><p>  圖3-7 ST168檢測電路</p><p>  正確選擇檢測方法和傳感器是決定循跡效果的重要因素,而正

53、確的器件安裝方法也是影響循跡電路好壞的一個重要因素。從簡單。方便??煽康冉嵌瘸霭l(fā),設計裝設四個紅外傳感器,及采用四套上面的電路。具體位置分布如圖3-8所示。此套紅外光電傳感器固定在底盤前沿,貼近地面。正常行駛時,發(fā)射管發(fā)射紅外光照射地面,光線經(jīng)白紙反射后被接收管接收,輸出高電平信號;電動車經(jīng)過黑線時,發(fā)射端發(fā)射的光線被黑線吸收,接收端接收不到反射光線,傳感器輸出低電平信號后送80C51單片機處理,判斷執(zhí)行哪一種預先編制的程序來控制玩具車

54、的行駛狀態(tài)。</p><p>  圖3-8 循線傳感器布局</p><p>  3.5 障礙物檢測電路</p><p>  本設計中小車采用超聲波檢測障礙物。超聲波檢測的原理是:超聲波發(fā)生器T發(fā)出超聲波信號,當這個信號遇到障礙物時反射回來,被接收器R收到。為使小車能準確避障,設計在小車的車體前端左右兩側分別各裝一個超聲波傳感器。小車則可以根據(jù)接收到的信號做出相應的

55、避障反應。超聲波發(fā)射和檢測接收電路如圖3-9,3-10所示。</p><p>  圖3-9 超聲波發(fā)射電路 圖3-10 超聲波接收電路</p><p>  設計中還加了一個聲光報警功能,當小車檢測到障礙物時,小車的報警系統(tǒng)中的蜂鳴器鳴叫,同時指示LED發(fā)光。直到小車避開障礙物,警報排除。</p><p><b&g

56、t;  超聲波傳感器簡介:</b></p><p>  超聲波是一種在彈性介質中的機械振蕩,有兩種形式:橫向振蕩(橫波)及縱向振蕩(縱波)。在工業(yè)中應用主要采用縱向振蕩。超聲波可以在氣體、液體及固體中傳播,其傳播速度不同。另外,它也有折射和反射現(xiàn)象,并且在傳播過程中有衰減。在空氣中傳播超聲波,其頻率較低,,一般為幾十KHZ,而在固體、液體中則頻率可用得較高。在空氣中衰減較快,而在液體及固體中傳播,衰減

57、較小,傳播較遠。利用超聲波的特性,可做成各種超聲傳感器,配上不同的電路,制成各種超聲測量儀器及裝置,并在通迅,醫(yī)療家電等各方面得到廣泛應用。</p><p>  超聲波傳感器主要材料有壓電晶體(電致伸縮)及鎳鐵鋁合金(磁致伸縮)兩類。電致伸縮的材料有鋯鈦酸鉛(PZT)等。壓電晶體組成的超聲波傳感器是一種可逆?zhèn)鞲衅鳎梢詫㈦娔苻D變成機械振蕩而產(chǎn)生超聲波,同時它接收到超聲波時,也能轉變成電能,所以它可以分成發(fā)送器或

58、接收器。有的超聲波傳感器既作發(fā)送,也能作接收。這里僅介紹小型超聲波傳感器,發(fā)送與接收略有差別,它適用于在空氣中傳播,工作頻率一般為23-25KHZ及40-45KHZ。這類傳感器適用于測距、遙控、防盜等用途。該種有T/R-40-60,T/R-40-12等(其中T表示發(fā)送,R表示接收,40表示頻率為40KHZ,16及12表示其外徑尺寸,以毫米計)。另有一種密封式超聲波傳感器(MA40EI型)。它的特點是具有防水作用(但不能放入水中),可以作

59、料位及接近開關用,它的性能較好。超聲波應用有三種基本類型,透射型用于遙控器,防盜報警器、自動門、接近開關等;分離式反射型用于測距、液位或料位;反射型用于材料探傷、測厚等[15]。這里我們只需要利用超聲波檢測到前方障礙物,返回信號即可。</p><p><b>  3.6光源檢測電路</b></p><p>  光敏電路如圖3-11所示。通過調節(jié)RP2可以改變電路檢測的

60、靈敏度。這里采用多個光敏陣列管。本設計使用六套下面的電路。按照一定的方式排列。為了達到較好的檢測,這里選擇將光敏陣列排成一個放射狀。本設計采用六個光敏管組成,為了使得一個光敏管只對一個小的角度內的強光遠敏感,考慮在光敏感外面加一個遮光罩。實物陣列排列方式如圖3-12??紤]到提高小車的光源搜索效率,將光敏陣列安裝在小車的頂部,靠車頭的位置。</p><p>  圖3-11 光源檢測電路

61、 圖3-12 光敏管陣列</p><p>  3.7 速度檢測電路</p><p>  本設計使用光電碼盤作為測量元件。光電碼盤是一種光電器件。分為絕對式和增量式兩種。這里采用增量式。他在現(xiàn)轉過程中可以輸出A、B兩相脈沖,每旋轉一周輸出一脈沖,通過對A、B兩相脈沖計數(shù)就可以確定光電碼盤旋轉的角度。其計數(shù)原理如圖3-13所示。.</p>

62、<p>  圖3-13 碼盤計數(shù)原理</p><p>  從上圖可以看出,在光電碼盤器輸出脈沖的一個周期內最多可記四次數(shù)。而我們使用的是經(jīng)改進的光電碼盤,如圖3-14碼盤中的透射式光電開關的發(fā)射管和接收管經(jīng)過了對準,當光槽中無障礙時光路是通的,當有障礙物時光路斷開。如果發(fā)射管和接收管之間的障礙物時有時無,則接收管的狀態(tài)就呈現(xiàn)0和1的交替,形成脈沖信號。只要對這個脈沖信號計數(shù),就可以得到小車的行程。光電

63、開關的靈敏度很高,可以分辨出很小的間隙。車輪每轉動一圈,可以檢測到十二個信號。我們在車輪的軸上安裝的碼盤與車輪同軸同步旋轉,就可以得到車輪旋轉的脈沖信號。其優(yōu)點是工作穩(wěn)定,測量結果精度高。它常用的檢測電路與反射式光電傳感器一樣,這里就不再贅述。</p><p>  小車一周內可計數(shù)12次,小車的行駛一周的行程范圍約為11.9cm,因此可計算出行程的測量精度可以達到1cm,可以達到小車的精度要求。小車的速度v等于小

64、車行駛路程s除以小車行駛時間t。</p><p><b>  圖3-14 碼盤</b></p><p>  3.8 液晶顯示電路</p><p>  這里使用1602液晶顯示器。其連接電路如下圖3-15</p><p>  圖3-15 液晶顯示電路</p><p>  1602字符液晶如圖3-

65、16</p><p>  圖3-16 1602字符液晶顯示屏</p><p>  1602采用標準的16腳接口,引腳介紹見表3-3.</p><p>  表3-3 1602引腳介紹</p><p><b>  4 軟件設計</b></p><p>  4.1 系統(tǒng)控制流程</p>

66、<p>  圖4-1 控制系統(tǒng)的流程圖</p><p><b>  4.2 算法設計</b></p><p>  4.2.1循跡算法設計</p><p>  循跡控制算法的流程如4-2所示。</p><p>  圖4-2 循跡控制</p><p>  根據(jù)傳感器的布局,可以將傳感器位

67、置用數(shù)字標記,檢測到黑線用數(shù)字‘0’表示,沒有檢測到,也即檢測到白線用數(shù)字‘1’表示。為不漏掉狀態(tài),我們先考慮了四個傳感器的所有十六種狀態(tài),剛好可以用四位二進制數(shù)來表示。</p><p>  在初始狀態(tài)下,黑線應位于傳感器的中間,此時2、3傳感器檢測到黑線,即四個傳感器的狀態(tài)分別為1、0、0、1,表示為二進制數(shù)是1001,此時小車前進。</p><p>  當小車從中間逐漸往左偏離軌道黑線

68、時,即黑線在小車右邊,對應的狀態(tài)有1000、1100、1110、1101。此時小車應左轉。</p><p>  當小車往右偏離時,對應的狀態(tài)有0001、0011、0111、1011。此時小車應左轉。</p><p>  還有最后一種狀態(tài)就是四個傳感器都檢測不到黑線,此時說明小車已行駛到中點,或者可能完全脫離了軌到,說明此次循跡失敗,停車。</p><p>  在實際

69、行駛過程中,由于軌道設計了很多銳角,鈍角,小車需要轉彎的角度較大,為防止轉彎過程中小車擺動角度過大而沖出軌道,導致小車無法返回,先讓小車后退,再執(zhí)行轉彎。實踐證明這種算法可以實現(xiàn)小車靈敏的轉彎。</p><p>  4.2.2.避障算法設計</p><p>  避障的問題可以很復雜,為了簡化設計、編程及調試,宜使用一種比較簡單的解決方法??紤]到小車的速度和能檢測到障礙物的距離,為避免小車轉

70、彎時撞上障礙物,設計小車檢測到障礙物后先后退,然后左轉,再次檢測障礙物,繼續(xù)調整,直至繞過障礙物。</p><p>  這個避障的程序不能保證對所有的障礙物布局情況都能順利的避障,但對大多數(shù)的情況確實能有效地進行避障。障礙物的檢測距離和小車的轉彎半徑對避障的效果有較大的影響,根據(jù)實際情況,調整轉彎角度可以達到較好的避障效果。</p><p>  4.4.2測速算法設計</p>

71、<p>  對無刷直流電機轉速的控制既可采用開環(huán)控制,也可采用閉環(huán)控制。與開環(huán)控制相比,速度控制閉環(huán)系統(tǒng)的機械特性有以下優(yōu)越性:閉環(huán)系統(tǒng)的機械特性與開環(huán)系統(tǒng)機械特性相比,其性能大大提高;理想空載轉速相同時,閉環(huán)系統(tǒng)的靜差率(額定負載時電機轉速降落與理想空載轉速之比)要小得多;當要求的靜差率相同時,閉環(huán)調速系統(tǒng)的調速范圍可以大大提高。無刷直流電機的速度控制方案如圖4-3所示。</p><p>  圖4-

72、3 電機速度控制</p><p>  4.3.3 PID控制算法</p><p>  PID控制是最早發(fā)展起來的控制策略之一,由于其算法簡單、魯棒性好和可靠性高,被廣泛用于過程控制和運動控制中。數(shù)字PID控制算法是將模擬PID離散化得到,各參數(shù)有著明顯的物理意義,調整方便,所以PID控制器很受工程技術人員的喜愛。</p><p>  PID控制器各控制環(huán)節(jié)的作用是

73、這樣的,比例控制(P控制)即時成比例地反應控制系統(tǒng)的偏差信號e(t),積分控制(I控制)主要用于消除靜差,微分控制(D控制)反應偏差信號的變化趨勢(變化速率)。比例控制是對現(xiàn)在誤差的一種校正,積分控制是對過去誤差的校正,而微分控制是對將來可能的誤差的校正。數(shù)字PID控制算法如圖4-4所示.</p><p>  圖4-4 PID控制算法的簡化示意圖</p><p>  , ……式(4

74、-1)</p><p><b>  或者</b></p><p><b>  ……式(4-2) </b></p><p>  式中u0—控制量的基值,即k=0時的控制;</p><p>  u(k)—第k個采樣時刻的控制; KP——比例放大系數(shù); KI——積分放大系數(shù);</p>

75、<p><b>  ;</b></p><p>  KD——微分放大系數(shù);</p><p><b>  ;</b></p><p><b>  TS——采樣周期</b></p><p><b>  5調試</b></p><p

76、><b>  5.1調試方法</b></p><p>  由于本次實驗需要捍接的電路模塊較多,特別是直流電機驅動模塊,對于電源電流的需要極大,我們先以直插式12V電源開始調試,小車運轉正常。但直插式電源對于運動的小車是個很大的束縛,極為不方便。所以考慮采用電池供電。市面上常用的有干電池和蓄電池。由于小車相當耗電,9V的干電池用不了多久,就會出現(xiàn)開關器件很難穩(wěn)定地給單片機送正確值的情況。

77、只有當更換新電池或小車剛剛啟動時才會很準確,經(jīng)過思考,這都是開關元件消耗電量很大的原因,一旦電池電量不足其工作將會萎靡不振,于是我們可充電的蓄電池給小車供電,選擇合適的蓄電池可以很好的滿足小車耗電量大的情況。</p><p>  在前輪PWM驅動轉向電路運行中,我們發(fā)現(xiàn),電機只給一個轉向力,但保持長期轉向時,電機的轉動由于受到強行制動而處于一種相對靜止的狀態(tài),導致PWM驅動電路產(chǎn)生大量的熱量,我們既利用軟件使其盡

78、量減少長期單向轉動狀態(tài),又在硬件上,在PWM驅動板上涂上了一層散熱膠,即使發(fā)熱,也不會燒壞PWM驅動電路。</p><p>  在安裝上避障用光電開關之后,其與其它所有開關元件共用同一電源,在運行時發(fā)現(xiàn)三個用于尋跡用的開關元件不能全部正常工作了,據(jù)分析,避障用光電開關處接線不牢固,重新接線后工作正常。</p><p>  在電源開啟后,小車循跡過程中會出現(xiàn)原地打轉的情況。經(jīng)分析是由于軟件跑

79、飛。經(jīng)考慮后加了一個看門狗,可以很好的遏制程序跑飛的情況。</p><p>  5.2 測試結果與分析</p><p>  本次進行了兩次調試。兩次都是在鋪有黑色硬紙條的軌道上進行。不同的是第一次軌道上沒有設置障礙物,第二次放置了幾個紙箱作為障礙物。每組分別測試了三次。</p><p><b>  測試儀器:</b></p>&l

80、t;p>  12V直流電源 秒表</p><p>  測試記錄數(shù)據(jù)如下表5-1和5-2.</p><p>  表5-1 速度測試</p><p>  表5-2 循跡避障測試</p><p>  *注:小車在因速度過快而脫離軌道后仍能自行返回原軌道,無須人為搬回。</p><p>  根據(jù)測試結果,可以看出小

81、車循跡避障功能基本實現(xiàn)。結果表明,小車能很好的完成循跡,即使循跡軌道發(fā)生改變也不影響。但避障結果并不是很理想。小車在檢測到障礙物后要經(jīng)過較長時間的調整才能避開障礙物,這是由于采用的算法不夠理想。本設計采用的算法只適用于一般情況,特殊一些的情況就可能出現(xiàn)避障失敗。這也是本次設計的一個缺陷。在實際調試過程中小車發(fā)生過程序跑飛的情況,經(jīng)調整改進程序后,小車運行狀態(tài)穩(wěn)定。能很好的完成沿黑色軌道前進,改變軌道的形狀及轉彎角度,小車仍可以完成循跡任

82、務。并避開障礙物。液晶顯示速度正常。</p><p><b>  6 結論與展望</b></p><p>  本系統(tǒng)以設計采用AT89S52單片機為控制核心,根據(jù)所檢測的各種數(shù)據(jù)結合PID控制算法實現(xiàn)對電動車的智能控制。利用反射式光電傳感器檢測黑線實現(xiàn)小車循線,利用超聲波傳感器檢測道路上的障礙,控制電動小車的自動避障,光電碼盤實現(xiàn)小車的速度檢測,并通過液晶顯示。具有自

83、動尋跡和尋光功能。整個系統(tǒng)的電路結構較簡單,可靠性能高。實際測試效果較好。很好的滿足了題目的要求,并在題目的要求基礎上有一定發(fā)揮,增加了尋光和報警提示功能,以及增加速度檢測和顯示,使整個設計更人性化。</p><p><b>  致 謝</b></p><p><b> ??!</b></p><p><b> 

84、 參考文獻</b></p><p>  Zvi Shiller.Emergency Lane-change maneuvers of autonomous vehicles[J].ASME Journal of DynamicsSystems,Measurement and Contrd.2001. </p><p>  邵貝貝.單片機嵌入式應用的在線開發(fā)方法[M].北京:清華

85、大學出版社,2005.40-42. </p><p>  卓晴,黃開勝,邵貝貝.[M].北京:北京航空航天大學出版社,2007.140-141. </p><p>  高吉祥.全國大學生電子設計大賽培訓系列教程[M].電子工業(yè)出版社,2007.6.1.</p><p>  王志良.競賽機器人制作技術[M].機械工業(yè)出版社,2007.6.15.</p>

86、<p>  程鵬.自動控制原理[M].高等教育出版社. 2004.6.</p><p>  劉偉.傳感器原理及其適用技術[J].電子工業(yè)出版社,2006.3.</p><p>  張植寶.電機原理與應用[M].化學工業(yè)出版社,2006.10.1.</p><p>  許大中.電機控制[M].浙江大學出版社,2002</p><p>

87、  李華.MCS-51系列單片機實用接口技術[M].北京:北京航空航天大學出版社,1995.</p><p>  張義和.陳敵北.例說8051[M].人民郵電出版社,2006.1.1.</p><p>  羅志增.機器人感覺與多信息融合[M].機械工業(yè)出版社,2002.</p><p>  周堅.單片機C語言輕松入門[M].北京航空航天大學出版社,2006.7.1.

88、</p><p>  李剛.王艷林,孫江宏.Protel DXP電路設計[M].清華大學出版社,2006.1.</p><p>  魏永廣.現(xiàn)代傳感技術[J].東北大學出版社,2001.4.</p><p>  李廣弟,朱月秀.冷祖祁.單片機基礎[M].北京航空航天大學出版社,2007.1.</p><p>  高鵬.安濤.protel 99

89、入門與提高[M]人民郵電出版社,2000.2.1</p><p>  樓然苗.李光飛.單片機課程設計與指導[M].北京:北京航空航天大學出版社,2007.7.1</p><p><b>  附 錄</b></p><p>  #include <reg51.h></p><p>  #define char

90、 unsigned char</p><p>  #define hint unsigned ftp</p><p>  suit P1_0=P1^0;</p><p>  suit P1_1=P1^1;</p><p>  suit P1_2=P1^2;</p><p>  suit P1_3=P1^3;</p

91、><p>  suit P1_4=P1^4;</p><p>  suit P1_5=P1^5;</p><p>  char a,b,c;</p><p>  void delay_us(uint time)//微秒延時</p><p>  {for(;time>0;time--);}</p>&l

92、t;p>  void delay_ms(uint time)//毫秒延時</p><p>  { for(;time>0;time--)</p><p>  delay_us(1000);</p><p><b>  }</b></p><p>  void port_init()//I/O口初始化&l

93、t;/p><p>  {P1=0x00;</p><p><b>  P0=0x00;</b></p><p><b>  }</b></p><p>  void ex0_init() //中斷初始化</p><p><b>  {PX0=

94、1;</b></p><p><b>  EA=1;</b></p><p><b>  IT0=0;</b></p><p><b>  IT1=0;</b></p><p><b>  EX0=1;</b></p><p

95、><b>  EX1=1;</b></p><p><b>  } </b></p><p>  void pulse() //脈沖驅動</p><p><b>  {</b></p><p><b>  P1_0=1;</b>

96、;</p><p>  delay_us(800);</p><p><b>  P1_0=0;</b></p><p>  delay_us(2400);</p><p><b>  }</b></p><p>  void int0_init()</p>

97、<p><b>  {</b></p><p>  TMOD=0x01;</p><p>  TH0=-16000/256;</p><p>  TL0=-16000%256;</p><p><b>  ET0=0;</b></p><p><b> 

98、 TR0=0;</b></p><p><b>  }</b></p><p>  void forword() //前進</p><p>  {P1_1=1;P1_2=0;P1_3=1;P1_4=0;}</p><p>  void back()

99、 //后退</p><p>  {P1_1=0;P1_2=1;P1_3=0;P1_4=1;}</p><p>  void left() //原地左轉</p><p>  {P1_1=0;P1_2=0;P1_3=1;P1_4=0;}</p><p>  void right()

100、 //原地右//轉</p><p>  {P1_1=1;P1_2=0;P1_3=0;P1_4=0;}</p><p>  void stop() //剎車</p><p><b>  {P1_0=0;}</b></p><p>  void ex1() int

101、errupt 2 using 2{}</p><p>  void int0() interrupt 1 using 1</p><p><b>  {TR0=0;</b></p><p>  TH0=-16000/256;</p><p>  TL0=-16000%256;</p><p>&

102、lt;b>  TR0=1;</b></p><p><b>  }</b></p><p>  void main()</p><p>  { port_init();</p><p>  ex0_init();</p><p><b>  P1_5=1;<

103、/b></p><p>  while(1) </p><p>  {switch(P0&0x0f)</p><p>  {case 0x9: {forword(); </p><p>  pulse();} break;</p><p><b>  case 0x1:</b&g

104、t;</p><p><b>  case 0x3:</b></p><p><b>  case 0x7:</b></p><p><b>  case 0xb:</b></p><p>  {left(); pulse();} break;</p><

105、;p><b>  case 0x8:</b></p><p><b>  case 0xc:</b></p><p><b>  case 0xe:</b></p><p><b>  case 0xd:</b></p><p><b> 

106、 {right();</b></p><p>  pulse();} break;</p><p>  default:{back(); </p><p>  for(b=6;b>0;b--)</p><p>  pulse();} </p><p><b>  }</b

107、></p><p><b>  }</b></p><p><b>  }</b></p><p>  void ex0() interrupt 0 using 0</p><p><b>  {EA=0;</b></p><p><b&g

108、t;  P1_5=0;</b></p><p>  for(c=25;c>0;c--)</p><p><b>  { back();</b></p><p><b>  pulse();}</b></p><p>  for(b=35;b>0;b--)</p>

109、<p>  { left();</p><p><b>  pulse();</b></p><p><b>  }</b></p><p>  for(a=35;b>0;b--)</p><p>  {forword();</p><p><b&

溫馨提示

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

評論

0/150

提交評論