




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、HarbinInstituteof Technology課程設計說明書(論文)設計題目: 超聲波避障小車院系:學院班級:設計 者:學號:指導教師:設計時間:哈爾濱工業(yè)大學哈爾濱工業(yè)大學課程設計任務書姓 名:專 業(yè):院 (系):任務起至日期:年 月 日至年月日班 號:課程設計題目: 超聲波避障小車已知技術參數和設計要求:已知技術參數:1. 工作電壓: 5v2. 工作電流: 30mA 典型, 50mA 最大3. 工作頻率: 38.5KHz4. 最大探測距離: 1.8 m5. 最小探測距離: 3 cm6. 輸入觸發(fā)器:上升沿觸發(fā)7. 回波脈沖:正 TTL 高電平脈沖寬度8. 下一次測量的延時: 20
2、 mS設計要求:實現小車自動避障任務,采用超聲波模塊實現小車避障功能。工作量:總工作時間為 10 天; 完成硬件電路的設計工作; 設計程序流程圖并編寫、調試程序; 硬件連接調試,完成設定的功能; 最后撰寫開題報告和結題報告各一份。工作計劃安排 :1) 2012.8.27 2012.8.28:任務布置、查閱資料,了解小車避障原理;2) 2012.8.29 2012.8.30:根據要實現的功能及采用的方法設計程序流程并編寫程序;3) 2012.8.31 2012.9.3:程序裝載、調試運行各種擬實現的功能;4) 2012.9.4 2012.9.5:完成設定要實現的功能,撰寫課程設計說明書;5) 2
3、012.9.6 2012.9.7:完成硬件調試、驗收。同組設計者及分工:指導教師簽字 教研室主任意見:年月日教研室主任簽字 年月日*注:此任務書由課程設計指導教師填哈爾濱工業(yè)大學課程設計說明書(論文)開題報告1 緒論1.1 課題目的通過上學期單片機課程的學習,我們基本掌握了 51 單片機的基本使用方法,本學期 開學初,單片機課程設計給了我們更大的挑戰(zhàn),課題的目的有以下幾點。進一步熟練掌握單片機的使用方法、提高程序的編寫能力掌握單片機系統外擴器件的連接與使用提高器件說明書以及時序過程的閱讀、理解能力掌握軟件和硬件調試的基本技巧與方法1.2 項目研究背景及意義在當今社會,汽車成為了越來越普遍,人們
4、不可缺少的交通工具。但汽車的不斷增 加,隨之而來就是越來越多的交通事故。交通事故成為了現在越來越嚴重的安全隱患。 所以隨著汽車工業(yè)的快速發(fā)展,我們必須加強對汽車安全性能的考慮。所以,智能汽車 概念應運而生,他既是汽車產業(yè)的機遇也是汽車產業(yè)的挑戰(zhàn)。汽車的智能化必將是未來 汽車產業(yè)發(fā)展的趨勢,在這樣的背景下,我們開展了基于超聲波的智能小車的避障研究。超聲波作為智能車避障的一種重要手段,以其避障實現方便,計算簡單,易于做到 實時控制,測量精度也能達到實用的要求,在未來汽車智能化進程中必將得到廣泛應用。 我國作為一個世界大國,在高科技領域也必須占據一席之地,未來汽車的智能化是汽車 產業(yè)發(fā)展必然的,在這
5、種情況下研究超聲波在智能車避障上的應用具有深遠意義,這將 對我國未來智能汽車的研究在世界高科技領域占據領先地位具有重要作用。哈爾濱工業(yè)大學課程設計說明書(論文)1.3 設計要求采用超聲波模塊實現小車避障功能,實現小車自動避障任務。2 主要設計內容及方案2.1 總體方案設計系統采用 51 單片機作為核心控制單元用于智能車系統的控制 , 在超聲波檢測到障礙 物之后, 主控芯片根據距離值控制直流電機的轉動 ,在與障礙物距離較大的情況下,快速 前進,在與障礙物距離較小但還未到達臨界轉彎方向值的時候,慢速前進。在與障礙物 距離很近需要轉向避障時,方案上將嘗試進行轉向,來進行避障。系統總體的設計方框 圖如
6、圖 2-1 所示。圖 錯誤!文檔中沒有指定樣式的文字。錯誤!未找到引用源。系統總體方案圖根據以上的總體方案設計, 我們進行了主程序流程圖的設計, 下面為所設計的主程序 的流程圖。其中 DIS 即為小車與障礙物的距離;哈爾濱工業(yè)大學課程設計說明書(論文)圖錯誤!文檔中沒有指定樣式的文字。2 主程序流程圖哈爾濱工業(yè)大學課程設計說明書(論文)2.2 主要模塊的基本原理2.2.1 超聲波探測模塊超聲波探測模塊的基本原理及使用方法如下:IO 口觸發(fā),給 Sin 口至少 510us 的高電平,啟動測量;模塊自動發(fā)送 8 個 40Khz 的方波,自動檢測是否有信號返回;有信號返回,通過 IO口Sin 輸出一
7、個高電平,高電平持續(xù)的時間就是超聲波從發(fā)射 到返回的時間,測試距離 =(高電平時間 *340 )/ 2 。圖 2- 3 超聲波探測模塊時序圖2.2.2 直流電機控制模塊機器人的動作由伺服電機控制。伺服電機與單片機接口的連接,圖電機連接原理圖和實際接線圖, P1_0 引腳的控制 輸出用來控制右的伺服電機,而 P1_1 則用來控制左邊的伺服電機。哈爾濱工業(yè)大學課程設計說明書(論文)圖 2- 4 左、右電機連接圖控制電機運動轉速的是高電平持續(xù)的時間, 當高電平持續(xù)時間為 1.3ms 時,電機順時 針全速旋轉,當高電平持續(xù)時間 1.7ms 時,電機逆時針速旋轉。圖 2- 5 電機順、逆時針旋轉控制脈沖
8、圖所以可知,若令左、右車輪電機高電平持續(xù)時間為 1.5ms 時,小車將處于靜止狀態(tài)。 若令左車輪電機高電平持續(xù)時間為 1.7ms,右車輪電機高電平持續(xù)時間為 1.3ms 時, 則左車輪電機逆時針,右車輪電機順時針,小車將會以最快的速度前進。此時,若想改 變小車的前進速度,則逐漸減小左電機的高電平時間,逐漸增加右電機的高電平時間, 則可以減小車速。同理可知,若令左車輪電機高電平持續(xù)時間為 1.3ms,右車輪電機高電平持續(xù)時間為 1.7ms 時,則左車輪電機順時針,右車輪電機逆時針,小車將會以最快的速度后退。當需要轉彎時, 通過分析和測試我們可以知道,當小車想左轉時,需令左右兩輪均順 時針旋轉,而
9、當小車想右轉時,需令左右兩輪均逆時針旋轉。通過對直流電機模塊的學習和了解,我已經了解了控制小車運動的方法。哈爾濱工業(yè)大學課程設計說明書(論文)2.3 需解決的關鍵問題關鍵問題首先是要學會使用超聲波測距器件, 根據老師所提供的知識, 利用圖像讀懂 超聲波器件的工作時序,根據時序以及超聲波測距器件的工作信號特點,并且結合單片 機的定時器 / 計數器等功能,來順利的完成小車對于前方障礙物距離的測量。另一個比較關鍵的問題就是確定小車的避障方案, 根據上方的主程序流程圖, 我們采 用一種避障方案,在接下的設計中,我們需要對于該方案能否正確躲避障礙進行驗證, 并且需要不斷思考,提出更多的更好的更有效的避障
10、方案。2.4 具體實施方案及程序2.4.1 程序初始化初始化函數中需要對定時器 / 計數器的模式進行設定,以及初始值的設定,流程圖如下程序如下:void IO_init(void)EA=1;ET0=1;TMOD=0x11;/將 T0定時器 /計數器設置為 16位計數模式TH0=0x00; / 初始值為 0 TL0=0x00;TR0=0; / 不開始計數哈爾濱工業(yè)大學課程設計說明書(論文)2.4.2 測距函數測距函數是本程序的比較關鍵的一個函數,需要根據儀器的本身特點來進行編程,流程圖如下void getx(unsigned char a) TH0=TL0=0; / if(a)Sin=0; /S
11、inSin=1; /Sin delay_5us(); Sin=0; /Sin/ 測距函數測距函數如下:初始值設置為 0置0置 1 ,并且延時一段時間,提供一個測距的觸發(fā)脈沖重新置 0 while(Sin); while(!Sin);/SIN 信號從低電平變?yōu)楦唠娖?,此時跳出該循環(huán) TR0置 1,開始計數 TR0=1;哈爾濱工業(yè)大學課程設計說明書(論文)while(Sin); /SIN 信號從高電平變?yōu)榈碗娖?,此時跳出該循環(huán) TR0置 0,停止計數TR0=0;LTime=TL0;HTime=TH0;Time=HTime*256+LTime; / 將高 8位乘以 256加上低 8 位得到總值Dis
12、=Time/(2*29); / 計算出所差距離2.4.3 主函數主函數的流程圖如下哈爾濱工業(yè)大學課程設計說明書(論文)主程序初始化測距如果距離大于 50/ 快速前進如果距離在 10 與 50 之內/ 慢速前進否則,小于 10,需轉向避障主函數如下:void main() /IO_init(); /while(1)getx(1);/if(Dis=50)/Forward_fast();else if(Dis=10&Dis=10) / 如果距離大于 10 Forward_slow(); / 慢速前進 else / 如果距離依舊小于 10Right_180(); / 右轉 180getx(1); /
13、測距if(Dis=10) / 如果此時距離小于 10 Forward_slow(); / 慢速前進else / 否則,繼續(xù)調試Right_90(); / 右轉 90 度2.4.4 完整程序代碼與注釋#include#include哈爾濱工業(yè)大學課程設計說明書(論文)sbit Sin=P15; /超聲波模塊控制端口sbit right=P10; /右輪控制信號sbit left=P11; /左輪控制信號unsigned int Dis,Time;unsigned char LTime,HTime;void IO_init(void)EA=1;ET0=1;TMOD=0x11;/將 T0定時器 /計
14、數器設置為 16位計數模式TH0=0x00; / 初始值為 0 TL0=0x00;TR0=0; / 不開始計數void delay_nus(unsigned int i) / 延時函數 i=i/10; while(-i);void delay_5us() / _nop_();短時間延時函數,為 SIN 高電平準備void getx(unsigned char a) TH0=TL0=0; / if(a)Sin=0; /SinSin=1; /Sin delay_5us(); Sin=0; /Sin/ 測距函數初始值設置為 0置0置 1 ,并且延時一段時間,提供一個測距的觸發(fā)脈沖重新置 0 whil
15、e(Sin); while(!Sin);/SIN 信號從低電平變?yōu)楦唠娖剑藭r跳出該循環(huán) TR0置 1,開始計數 TR0=1;while(Sin); /SIN 信號從高電平變?yōu)榈碗娖剑藭r跳出該循環(huán) TR0置 0,停止計數 TR0=0;LTime=TL0;HTime=TH0;Time=HTime*256+LTime; / 將高 8位乘以 256加上低 8 位得到總值哈爾濱工業(yè)大學課程設計說明書(論文)Dis=Time/(2*29);/計算出所差距離void Forward_fast(void) / left=1; delay_nus(1700);left=0; delay_nus(20000)
16、;right=1; delay_nus(1300);right=0; delay_nus(20000);快速前進void Forward_slow(void) /慢速前進left=1;delay_nus(1580); / 減小左電機的高電平時間,增加右電機的高電平時間 left=0;, 減小速度delay_nus(20000);right=1;delay_nus(1420);right=0;delay_nus(20000); void Left_90(void) / 左轉 90 度 unsigned int i=0;while(i20)i+;left=1; delay_nus(1300); /
17、left=0; delay_nus(20000);right=1; delay_nus(1300);right=0;delay_nus(20000);令左、右兩輪均順時針轉動哈爾濱工業(yè)大學課程設計說明書(論文)void Right_180()unsigned int i=0; while(i38)i+;left=1; / delay_nus(1700);left=0;delay_nus(20000);right=1; delay_nus(1700);right=0;delay_nus(20000);void Right_90() /unsigned int i=0;while(i=50)/令左
18、、右兩輪均逆時針轉動令左、右兩輪均逆時針轉動主程序初始化測距如果距離大于 50哈爾濱工業(yè)大學課程設計說明書(論文)Forward_fast(); / 快速前進else if(Dis=10&Dis=10) Forward_slow();else/先左轉 90 度測量距離如果距離大于 10/ 慢速前進如果距離依舊小于 10Right_180(); getx(1); if(Dis=10) Forward_slow();elseRight_90();/ 右轉 180測距 如果此時距離小于 10/ 慢速前進否則,繼續(xù)調試/右轉 90 度哈爾濱工業(yè)大學課程設計說明書(論文)結題報告1 課題完成情況本超聲波
19、避障小車的設計基于單片機原理和傳感器原理,以 51 單片機為主控芯片, 采用直流電機為驅動元件,通過軟件編程制作了一整套結構完整,功能模塊化,反應較 為靈敏的超聲波避障小車。經過對該避障小車的避障測試實驗,實驗結果證明該避障小 車能夠很好的按照預期完成避障動作,并且能夠快速運動靈敏避障,效果良好,運行穩(wěn) 定性較好。2 所遇問題及解決方案在進行小車調試時,我們遇到的一個最大困難就是當我們前期的程序燒入芯片后, 我們的小車運行的非常不平穩(wěn),前進運行的非常不連貫。小車前進一會,就會有一段比 較明顯的時段停止。當我遇到這個問題時,我沒有慌亂,我一步一步的進行了分析。首先,我懷疑了前 進函數 Forwa
20、rd()出現問題,檢查 Forward ()的后,發(fā)現提供給左右車輪的 PWM信號 正常,沒有出現異常,而且出于控制變量思想,為了準確的找到問題的癥結所在,我單 獨講 Forward()函數燒入小車中,運行后可以發(fā)現,小車的運行非常正常,不存在運行 不平穩(wěn)的現象。在排除了 Forward( )函數的問題后, 我開始懷疑是不是測速的函數 getx( )對 Forward ()函數造成了干擾。我們通過分析可以知道, forward ()函數提供了一個非常完美的 驅動電機的 PWM信號,但是一旦在程序中,存在著一些其他例如測距程序,判斷語句等 程序時,會對其 PWM信號產生一些干擾,應盡可能的減少這
21、些程序對于小車運行程序的 干擾。所以我將我之前使用的 delay ()函數用系統的庫函數 _nop()_ 來代替,再將更改 后的程序下載入小車后,驚奇的發(fā)現,小車能夠平穩(wěn)的運行了。我們再進一步的分析這個問題的原因,我們可以看到,在之前的 delay ()函數中, 我們使用了除法,除法在指令周期最長的一個指令,他會導致PWM信號在某一電平上停留的時間過長,影響信號的占空比與波形,而系統的庫函數運行的時間則比較短,對其 他函數的影響較小。以上就是我對這個問題的思考,可能我對這個問題的分析也存在一些不完善的地方, 比如說,我自己也會問自己,指令的運行周期長短,怎么會對毫秒級的PWM電機驅動信哈爾濱工
22、業(yè)大學課程設計說明書(論文)號造成如此大的影響等等,課程設計結束后,我也會繼續(xù)的查找一些資料,多問問師兄 和老師,爭取找到最完整,正確的答案。3 心得體會這次課程設計給我們提供了一個非常好的機會來提高我們實際的應用能力。從選題 開始老師就給予我們很大的自主性,讓我們大家自主選題,這種開放式教學方式也從另 一個方面激發(fā)起了我們去學習的欲望。這次課程設計,給我更多的是一種模塊化的思想,將系統按我們所需的功能和系統 所能提供的功能進行模塊化的分類,將會使我們的工作變得一目了然,非常清晰。比如 說這次我選的避障小車,可以分成超聲波測速模塊,電機驅動模塊,單片機核心模塊三 個,三個部分各司其職,無論從硬
23、件上還是軟件上,都能夠比較清晰地將他們的功能區(qū) 分開,從而有利于硬件的連接和程序的編寫。對于這次程序的編寫,我就是分塊編寫, 按模塊調試,從而避免了許多錯誤。從以后工作來看,這種模塊化處理問題的方式將會更加的有用,在公司和以后得科 研項目中,系統一定是越來越復雜,不可能一個人完成所有的任務,一定是一個團隊來 做這些系統的設計,所以模塊化之后,能夠將任務分配給每個人,最后大家還能夠很好 的綜合到一起,大大的縮短了開發(fā)周期。這次課程設計,提高了我對于陌生硬件的學習能力,超聲波儀器對我來說非常的陌 生,所以通過這次的學習,我感覺我學習硬件的能力有所提高,對于時序的理解能力也 有了進步。單片機主要的功能就是對各種各樣的外設進行控制,在以后的工作學習中, 我一定會遇到非常多的不熟悉的硬件,我相信,通過不斷地鍛煉積累,應該有比較強的 學習能力。但是該超聲波避障小車還存在著許多的不足,比如說只能對正前方一定角度內進行 探測,使用的是一路超聲波而不是多路超聲波探測,并且為了簡化,默認的只是向同一 個方向轉彎等,這些都是有待進一步發(fā)展和提高的,這與制作者自身的對與障礙檢測距 離分析、自動控制信號處理、圖像處理等諸多技術的有限性分不開的,還需要研究制作 者的學習和探索。本次項目共歷時兩周,有時間比較緊張,此外項目的進度控制
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教部編版三年級上冊期末模擬測試語文試卷
- 某年度高端氟產品類藥物市場分析及競爭策略分析報告
- 北京勞動保障職業(yè)學院《新能源發(fā)電技術》2023-2024學年第二學期期末試卷
- 嘉應學院《計算機網絡及安全》2023-2024學年第二學期期末試卷
- 南京理工大學泰州科技學院《嵌入式系統實驗》2023-2024學年第二學期期末試卷
- 浙江農林大學暨陽學院《無機化學(二)》2023-2024學年第二學期期末試卷
- 遼河石油職業(yè)技術學院《機械裝備及其零部件精度設計》2023-2024學年第二學期期末試卷
- 江西經濟管理職業(yè)學院《流體機械現代設計方法》2023-2024學年第二學期期末試卷
- 呂梁職業(yè)技術學院《經管跨專業(yè)虛擬仿真綜合實訓》2023-2024學年第二學期期末試卷
- 威海職業(yè)學院《醫(yī)學與法學》2023-2024學年第二學期期末試卷
- 機械傷害培訓試題(帶答案)
- 高中畢業(yè)生登記表填寫樣表(四川版)
- 新教科版六年級下冊科學全冊重點題型練習課件(含答案)
- 超敏反應及臨床檢驗(免疫學檢驗課件)
- 田野考古學-鄭州大學中國大學mooc課后章節(jié)答案期末考試題庫2023年
- 大數據與法律檢索-湖南師范大學中國大學mooc課后章節(jié)答案期末考試題庫2023年
- 應用文寫作基礎(中職 )PPT完整全套教學課件
- 記敘文閱讀之句子賞析復習市公開課金獎市賽課一等獎課件
- 鄭麗玲《彩墨游戲》說課x 課件
- 重點中成藥品種含瀕危野生動物藥材調查表
- 2016年社區(qū)獲得性肺炎(CAP)指南解讀與抗生素應用
評論
0/150
提交評論