

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 目錄</b></p><p><b> 緒論2</b></p><p><b> 1.硬件設計3</b></p><p><b> 1.1方案選擇3</b></p><p> ?。?)主控芯片的選擇3</p
2、><p> (2)驅動電路的選擇3</p><p> ?。?)傳感器的選擇4</p><p> ?。?)電機的選擇4</p><p> (5)電機控制方式的選擇4</p><p> ?。?)循跡方案的選擇4</p><p> 1.2硬件原理圖5</p><p&g
3、t;<b> 2.軟件設計6</b></p><p> 2.1軟件流程圖6</p><p> 2.2軟件工作原理介紹6</p><p><b> 3.調試8</b></p><p> 3.1 硬件調試8</p><p> 3.2 軟件調試8</p
4、><p><b> 4.總結9</b></p><p><b> 附錄10</b></p><p><b> 緒論</b></p><p> 本設計是一種基于單片機控制的簡易自動尋跡小車系統(tǒng),其研究意義涵蓋了工業(yè)、生活、勘探以及人類關注的探月工程。設計旨在設計出一款可以
5、自主按照人類預設的軌跡行走(或者完全自主行走)并完成指定任務的小車。從設計的功能要求出發(fā),設計包括小車機械構成設計和控制系統(tǒng)的軟硬件設計。我采用簡易三輪構架式,用前輪驅動及換向的控制模式??刂葡到y(tǒng)以STC89C52為控制核心, 用單片機產生PWM波,控制小車速度。利用紅外光電傳感器對路面黑色軌跡進行檢測,并確定小車當前的位置狀態(tài),再將路面檢測信號反饋給單片機。單片機對采集到的信號予以分析判斷,及時控制驅動電機以調整小車轉向,從而使小車能
6、夠沿著黑色軌跡自動行駛,實現(xiàn)小車自動尋跡的目的。</p><p> 關鍵詞 : 循跡小車,單片機,紅外傳感器</p><p><b> 1.硬件設計</b></p><p><b> 1.1方案選擇</b></p><p> ?。?)主控芯片的選擇</p><p>
7、圖 1 AT89C51最小系統(tǒng)</p><p> 小車采用STC89C52單片機作為控制芯片,圖1是其最小系統(tǒng)電路。主要包括:時鐘電路、電源電路、復位電路。其中各個部分的功能如下: </p><p> 1、時鐘電路:給單片機提供一個外接的12MHz的石英晶振。</p><p> 2、電源電路:給單片機提供5V電源。 </p>
8、<p> 3、復位電路:在電壓達到正常值時給單片機一個復位信號。</p><p> ?。?)驅動電路的選擇</p><p> 采用L298N直流電機驅動芯片驅動直流電機轉動,通過PWM脈寬平滑調速控制直流電機運轉。工作電壓高,其最高工作電壓可達46V,輸出電流大,其瞬間峰值電流可達3A,持續(xù)工作電流為2A;額定功率25W。內含兩個H橋的高電壓大電流全橋式驅動器,可以用來驅動直
9、流電動機和步進電動機、繼電器線圈等感性負載。</p><p><b> ?。?)傳感器的選擇</b></p><p> 本題目中循跡小車需要在跑道上尋找到由黑色膠帶形成的路徑,根據(jù)紅外線在白色環(huán)境中可反射被接收管接收,而在黑色環(huán)境中紅外線被吸收無法反射因此接收管無法接收到紅外線信號的特性選擇紅外對管為本題目傳感器。</p><p><b
10、> ?。?)電機的選擇</b></p><p> 采用直流減速電機。直流減速電機轉動力矩大,體積小,重量輕,裝配簡單,使用方便。由于其內部由高速電動機提供原始動力,帶動變速(減速)齒輪組,可以產生較大扭力。</p><p> (5)電機控制方式的選擇</p><p> 采用H型橋式驅動電路。直流電機驅動電路使用最廣泛的就是H型全橋式電路,這種
11、驅動電路可以很方便實現(xiàn)直流電機的四象限運行,分別對應正轉、正轉制動、反轉、反轉制動。</p><p> ?。?)循跡方案的選擇</p><p> 在車模前方正中間位置的左右兩側各安裝一個紅外對管集成模塊,當在直道上時兩個對管均可接收到。</p><p><b> 1.2硬件原理圖</b></p><p><b&
12、gt; 2.軟件設計</b></p><p><b> 2.1軟件流程圖</b></p><p> 圖 2 小車軟件流程圖</p><p> 2.2軟件工作原理介紹</p><p> #include <reg51.h></p><p> #define uin
13、t unsigned int</p><p> #define uchar unsigned char</p><p> sbit ENA=P2^7; /*左電機驅動使能*/</p><p> sbit ENB=P2^6; /*右電機驅動使能*/</p><
14、p> sbit in1=P2^5; /*左電機前進*/</p><p> sbit in2=P2^4; /*左電機后退*/</p><p> sbit in3=P2^3; /*右電機前進*/</p><p> sbit in4=
15、P2^2; /*右電機后退*/</p><p> sbit senle=P1^4; /*左傳感器*/</p><p> sbit senri=P1^5; /*右傳感器*/</p><p> void delay_50us(uint t)
16、/*延時函數(shù),大約50us的延時*/</p><p><b> {</b></p><p><b> uchar j;</b></p><p> for(;t>0;t--)</p><p> for(j=19;j>0;j--);</p><p><b
17、> }</b></p><p> void straight() /*小車直線行走函數(shù)*/</p><p><b> {</b></p><p> in1=1;in2=0;</p><p> delay_50us(50);</p><p> in1=1;in
18、2=1;</p><p> delay_50us(20);</p><p> in3=1;in4=0;</p><p> delay_50us(50);</p><p> in3=1;in4=1;</p><p> delay_50us(20); </p><p><b>
19、 }</b></p><p> void turnleft() /*小車左轉函數(shù)*/</p><p><b> {</b></p><p> in1=1;in2=0;</p><p> delay_50us(10);</p><p> in1=1;in2=1;&l
20、t;/p><p> delay_50us(20);</p><p> in3=1;in4=0;</p><p> delay_50us(50);</p><p> in3=1;in4=1;</p><p> delay_50us(20);</p><p><b> }</
21、b></p><p> void turnright() /*小車右轉函數(shù)*/</p><p><b> {</b></p><p> in1=1;in2=0;</p><p> delay_50us(50);</p><p> in1=1;in2=1;</
22、p><p> delay_50us(20);</p><p> in3=1;in4=0;</p><p> delay_50us(10);</p><p> in3=1;in4=1;</p><p> delay_50us(20);</p><p><b> }</b&g
23、t;</p><p> void main(void) /*主函數(shù)*/</p><p><b> {</b></p><p> ENA=1;ENB=1;</p><p><b> while(1)</b></p><p> if((senle==1&a
24、mp;&senri==1)||(senle==0&&senri==0))</p><p> straight();</p><p> else if(senle==0&&senri==1)</p><p> turnleft();</p><p> else if(senle==1&&a
25、mp;senri==0)</p><p> turnright();</p><p><b> } </b></p><p><b> 3.調試</b></p><p> 在硬件電路搭建與軟件設計完成之后對其分別進行調試,調試過程與結果如下:</p><p><
26、b> 3.1 硬件調試</b></p><p> 第一步,對單片機最小系統(tǒng)進行調試,燒錄一個簡單程序到單片機,上電后檢測對應引腳電平,若與程序一致則沒有問題,否則最小系統(tǒng)存在問題(P0口需上拉電阻);第二步,對L298N驅動模塊進行調試,將兩個直流電機接入驅動電路燒錄測試程序(正轉、反轉、停止)通電后觀察電機運行情況,若與程序不符檢查L298N各引腳電平并與理論值比較至電機正常運轉;第三步,
27、對傳感器進行調試,分別將對管放在白色與黑色環(huán)境下檢測輸出端電壓,若正常則只需調節(jié)電位器改變其靈敏度至當前傳感器離地面高度下最佳狀態(tài)。</p><p> 進過調試后,小車硬件各模塊均能正常工作。</p><p><b> 3.2 軟件調試</b></p><p> 按循跡原理編寫程序,燒錄至單片機進行軟件調試,觀察調試結果,若出現(xiàn)彎道沖出跑
28、道或轉彎不流暢情況需減小直道時左右電機輸入的PWM,增大轉彎時左右電機輸入PWM的差值。</p><p><b> 4.總結</b></p><p> 這次循跡小車課程設計不得不說是個大工程,讓我們從中學會了許多東西,特別是分工與合作。從最開始的買元器件,到焊接、調試循跡板,再到FGPA的VHDL程序和C語言程序的編寫,都不簡單。我們的循跡板在第一次焊接完畢,經(jīng)過
29、調試后,能正常工作。但是,當我們把它裝在小車上讓它去跑時,問題就來了,有個燈就不亮了。后來經(jīng)過檢測后,終于又弄好了。然后在寫C語言時,主要就是調節(jié)小車的速度和轉彎時的角度。而最難的是FPGA程序的編寫,特別是音樂的編程,真的很復雜,花了我們很多時間才把它寫好。而1602液晶的編寫,用到了我們沒有學過的狀態(tài)機,經(jīng)過查找資料后,才弄清楚狀態(tài)機到底是什么回事。</p><p> 由于這次課程設計的工作量很大,所以我們
溫馨提示
- 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
提交評論