版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 單片機原理及</b></p><p><b> 應用課程設計</b></p><p> 班 級: </p><p> 姓 名: </p><p> 學 號: <
2、;/p><p> 指導教師: </p><p> 撰寫日期: </p><p><b> 目錄</b></p><p> 第一章 課程設計內容與要求分析…………………………2</p><p> 1.1課程設計內容……………………………
3、…………………………2</p><p> 1.2課程設計要求分析…………………………………………………2</p><p> 1.2.1各模塊設計…………………………………………………………4</p><p> 1.2.2循跡小車原理圖……………………………………………………5</p><p> 第二章 控制系統(tǒng)程序設計……………………
4、……………6</p><p> 第三章 總結 ………………………………………………12</p><p> 參考文獻……………………………………………………13</p><p> 附錄Ⅰ………………………………………………………14</p><p> 附錄Ⅱ………………………………………………………15</p><p
5、> 第一章 課程設計內容與要求分析</p><p><b> 1.1課程設計內容</b></p><p> 設計一臺自動尋電動小車。</p><p> 電動車能自動尋跡,按設定好的軌跡前進。</p><p> 尋跡由小車前端左右兩個光電開關完成,通過調整RW2和RW4可以改變光電開關的靈敏度。</p
6、><p> 1.2課程設計要求分析</p><p> 目前 ,在企業(yè)生產技術不斷提高、對自動化技術要求不斷加深的環(huán)境下,智能車輛以及在智能車輛基礎上開發(fā)出來的產品已成為自動化物流運輸、柔性生產組織等系統(tǒng)的關鍵設備。世界上許多國家都在積極進行智能車輛的研究和開發(fā)設計。移動機器人是機器人學中的一個重要分支,出現于20世紀06年代。當時斯坦福研究院(SRI)的Nils Nilssen和charl
7、es Rosen等人,在1966年至1972年中研制出了取名shakey的自主式移動機器人,目的是將人工智能技術應用在復雜環(huán)境下,完成機器人系統(tǒng)的自主推理、規(guī)劃和控制。從此,移動機器人從無到有,數量不斷增多,智能車輛作為移動機器人的一個重要分支也得到越來越多的關注。</p><p> 智能小車,是一個集環(huán)境感知、規(guī)劃決策,自動行駛等功能于一體的綜合系統(tǒng),它集中地運用了計算機、傳感、信息、通信、導航及白動控制等技
8、術,是典型的高新技術綜合體。它具有道路障礙自動識別、自動報警、自動制動、自動保持安全距離、車速和巡航控制等功能。智能車輛的主要特點是在復雜的道路情況下,能自動地操縱和駕駛車輛繞開障礙物并沿著預定的道路(軌跡)行進。智能車輛在原有車輛系統(tǒng)的基礎上增加了一些智能化技術設備:</p><p> (1)計算機處理系統(tǒng),主要完成對來自攝像機所獲取的圖像的預處理、增強、分析、識別等工作;</p><p&
9、gt; (2)攝像機,用來獲得道路圖像信息;</p><p> (3)傳感器設備,車速傳感器用來獲得當前車速,障礙物傳感器用來獲得前方、側方、后方障礙物等信息。</p><p> 智能車輛技術按功能可分為三層,即智能感知/預警系統(tǒng)、車輛駕駛系統(tǒng)和全自動操作系統(tǒng)團。上一層技術是下一層技術的基礎。三個層次具體如下:</p><p> (1)智能感知系統(tǒng),利用各種
10、傳感器來獲得車輛自身、車輛行駛的周圍環(huán)境及駕駛員本身的狀態(tài)信息,必要時發(fā)出預警信息。主要包括碰撞預警系統(tǒng)和駕駛員狀態(tài)監(jiān)控系統(tǒng)。碰撞預警系統(tǒng)可以給出前方碰撞警告、盲點警告、車道偏離警告、換道/并道警告、十字路口警告、行人檢測與警告、后方碰撞警告等.駕駛員狀態(tài)監(jiān)控系統(tǒng)包括駕駛員打噸警告系統(tǒng)、駕駛員位置占有狀態(tài)監(jiān)測系統(tǒng)等。</p><p> (2)輔助駕駛系統(tǒng),利用智能感知系統(tǒng)的信息進行決策規(guī)劃,給駕駛員提出駕駛建議
11、或部分地代替駕駛員進行車輛控制操作。主要包括:巡航控制、車輛跟蹤系統(tǒng)、準確泊車系統(tǒng)及精確機動系統(tǒng)。</p><p> (3)車輛自動駕駛系統(tǒng),這是智能車輛技術的最高層次,它由車載計算機全部自動地實現車輛操作功能。目前,主要發(fā)展用于擁擠交通時低速自動駕駛系統(tǒng)、近距離車輛排隊駕駛系統(tǒng)等。</p><p> 這種智能小車的主要應用領域包括以下幾個方面:</p><p>
12、; (1)軍事偵察與環(huán)境探測</p><p> 現代戰(zhàn)爭對軍事偵察提出了更高的要求,世界各國普遍重視對軍事偵察的建設,采取各種有效措施預防敵方的突然襲擊,并廣泛應用先進科學技術,不斷研制多用途的偵察器材和探測設備,在車上裝備攝像機、安全激光測距儀、夜視裝置和衛(wèi)星全球定位儀等設備,通過光纜操縱,完成偵察和監(jiān)視敵情、情報收集、目標搜索和自主巡邏等任務,進一步擴大偵察的范圍,提高偵察的時效性和準確性。</p&
13、gt;<p> (2)探測危險與排除險情</p><p> 在戰(zhàn)場上或工程中,常常會遇到各種各樣的意外。這時,智能化探測小車就會發(fā)揮很好的作用。戰(zhàn)場上,可以使用智能車輛掃除路邊炸彈、尋找和銷毀地雷。民用方面,可以探測化學泄漏物質,可以進行地鐵滅火,以及在強烈地震發(fā)生后到廢墟中尋找被埋人員等。</p><p> (3)安全檢測受損評估</p><p&g
14、t; 在工程建設領域,可對高速公路自動巡跡,進行道路質量檢測和破壞分析檢測;對水庫堤壩、海岸護岸堤、江河大壩進行質量和安全性檢測。在制造領域,可用于工業(yè)管道中機械損傷,裂紋等缺陷的探尋,對輸油和輸氣管線的泄漏和破損點的查找和定位等。</p><p><b> (4)智能家居</b></p><p> 在家庭中,可以用智能小車進行家具、遠程控制家中的家用電器,控制
15、室溫等等。對這種小車的研究,將為未來環(huán)境探測術上的有力支持。</p><p> 本尋跡小車采用鋁合金為車架,STC89C52單片機為控制核心,加以直流電機、光電傳感器和電源電路以及其他電路的設計思路。系統(tǒng)由STC89C52通過I/O口控制小車的前進后退以及轉向。</p><p> 為了適應機電一體化的發(fā)展在汽車智能化方向的發(fā)展要求,提出簡易智能小車的構想,目的在于:通過獨立設計并制作一
16、輛具有簡單智能化的簡易小車,獲得項目整體設計的能力,并掌握多通道多樣化傳感器綜合控制的方法。</p><p> 根據題目要求,確定如下方案:在現有的玩具電動車的基礎上,加裝光電對管、傳感器,實現對電動車位置、運行狀況的實時測量,并將測量數據傳送至單片機進行處理,然后由單片機根據所檢測的各種數據實現對電動車的智能控制。</p><p> 這種方案能實現對電動車的運動狀態(tài)進行實時控制,控制
17、靈活、可靠、精度高,可以滿足對系統(tǒng)的各項要求。</p><p> 整個系統(tǒng)基于普通玩具小車的機械結構,并利用了小車的底盤、前后輪電機及其自動復原裝置,能夠平穩(wěn)跟蹤路面黑色軌跡運行</p><p> 該智能小車在畫有黑線的白紙 “路面”上行駛,由于黑線和白紙對光線的反射系數不同,可根據接收到的反射光的強弱來判斷“道路”—黑線。利用了簡單、應用比較普遍的檢測方法—發(fā)光二極管+光敏電阻。&l
18、t;/p><p> 發(fā)光二極管+光敏電阻,即利用光線在不同顏色的物理表面具有不同的反射性質的特點。在小車行駛過程中不斷地向地面發(fā)射白光,當白光遇到白色地面時發(fā)生漫發(fā)射,反射光被裝在小車上的接收管接收;如果遇到黑線則紅外光被吸收,則小車上的接收管接收不到信號。</p><p> 整個電路系統(tǒng)分為檢測、控制、顯示、驅動四個模塊。首先利用光電對管對路面信號進行檢測,經過比較器處理之后,送給軟件控
19、制模塊進行實時控制,然后顯示小車的運行狀態(tài),輸出相應的信號給驅動芯片驅動電機轉動,從而控制整個小車的運動。系統(tǒng)方案方框圖如圖所示。</p><p> 圖1-1 智能小車尋跡系統(tǒng)框圖</p><p> 1.2.1各模塊設計</p><p><b> 1、循跡模塊設計</b></p><p> 發(fā)光二極管+光敏電阻組
20、成光敏探測器,光敏電阻的阻值可以根跟隨周圍環(huán)境光線的變化而變化。當光線照射到白線上面時,光線發(fā)射強烈,光線照射到黑線上面時,光線發(fā)射較弱 。因此光敏電阻在白線和黑線上方時,阻值會發(fā)生明顯的變化。將阻值的變化值經過比較器就可以輸出高低電平。</p><p><b> 2、控制模塊設計</b></p><p> 此部分是整個小車運行的核心部件,起著控制小車所有的運行狀
21、態(tài)作用。控制方法很多,大部分都采用單片機控制。這里選擇了ATMEL公司的AT89C52作為控制芯片,在芯片體積小、集成度高、可靠性好、容量足夠、驅動能力強、運用方便、經濟廉價。</p><p><b> 3、電機驅動模塊</b></p><p> 從單片機輸出信號功率很弱,即使在沒有其它外在負載是也無法帶動電機,所以在實際電路中我們加入了電機驅動芯片提高輸入電機信
22、號的功率,從而能夠根據需要控制電機轉動。</p><p> 1.2.2循跡小車原理圖</p><p> 圖1-2 循跡小車原理圖</p><p> 第二章 控制系統(tǒng)程序設計</p><p> #include<reg51.h></p><p> #include<intrins.h>
23、</p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> sbit IN1=P1^2;</p><p> sbit IN2=P1^3;</p><p> sbit IN3=P1^5;</p>
24、<p> sbit IN4=P1^4;</p><p> sbit en1=P1^1;</p><p> sbit en2=P1^6;</p><p> sbit S1=P1^0;</p><p> sbit S2=P1^7;</p><p> void go();</p><
25、;p> void left();</p><p> void right();</p><p> void stop();</p><p> void delay_ms(uint t); </p><p> void pwm_init();</p><p> void qidong();</p&
26、gt;<p><b> uchar h;</b></p><p> uint flag1,flag2,pwm1,pwm2;</p><p> void disp(uint disp_value);</p><p> void Bcd(uint bcd_value);</p><p> uchar
27、data led_point[4]={0xef,0xdf,0xbf,0x7f};</p><p> uchar code LED_Val[] = {0xC0,0xF9,0xA4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x98};</p><p> uchar data num[4];</p><p><b> /////////
28、</b></p><p> void go() //前進</p><p><b> {</b></p><p> IN1=0; </p><p><b> IN2=1;</b></p><p><b> IN3
29、=0;</b></p><p><b> IN4=1;</b></p><p><b> }</b></p><p> ///////////////</p><p> void left() //向左</p><p><b> {&l
30、t;/b></p><p><b> IN1=0;</b></p><p><b> IN2=1;</b></p><p><b> IN3=0;</b></p><p><b> IN4=0;</b></p><p>
31、;<b> }</b></p><p> //////////////</p><p> void right() //向右</p><p><b> { </b></p><p><b> IN1=0;</b></p><p><
32、;b> IN2=0;</b></p><p><b> IN3=0;</b></p><p><b> IN4=1;</b></p><p><b> }</b></p><p> ///////////////</p><p&g
33、t; void stop() //停止
34、 </p><p><b> {</b></p><p>
35、;<b> IN1=0;</b></p><p><b> IN2=0;</b></p><p><b> IN3=0;</b></p><p><b> IN4=0;</b></p><p><b> }</b></
36、p><p> ///////////////////延時函數///////////////</p><p> void delay_ms(uint t)</p><p><b> {</b></p><p><b> uchar i;</b></p><p> whil
37、e(t--)</p><p><b> {</b></p><p> for(i=1;i<125;i++);</p><p><b> }</b></p><p><b> } </b></p><p> ////////////////
38、/////定時器0方式1//////////////</p><p> void pwm_init()</p><p><b> {</b></p><p> TMOD=0x01;</p><p> TH0=(65526-200)/256;</p><p> TL0=(65536-200
39、)%256;</p><p><b> EA=1; </b></p><p><b> ET0=1;</b></p><p><b> TR0=1;</b></p><p><b> en1=1;</b></p><p>&
40、lt;b> en2=1;</b></p><p><b> }</b></p><p> //////////////</p><p> void T0_Ser() interrupt 1 using 1</p><p><b> {</b></p><
41、;p> TH1=(65536-200)/256;</p><p> TL1=(65536-200)%256; </p><p><b> flag1++;</b></p><p><b> flag2++;</b></p><p> if(flag1<=pwm1)
42、</p><p><b> {</b></p><p><b> en1=1;</b></p><p><b> }</b></p><p> if(flag1>pwm1)</p><p><b> {</b><
43、;/p><p><b> en1=0;</b></p><p><b> }</b></p><p> if(flag1==100) </p><p><b> {</b></p><p><b> flag1=0;
44、</b></p><p><b> }</b></p><p> if(flag2<=pwm2) </p><p><b> {</b></p><p><b> en2=1;</b></p><p><b>
45、 } </b></p><p> if(flag2>pwm2) </p><p><b> {</b></p><p><b> en2=0;</b></p><p><b> }</b></p><p> if(fl
46、ag2==100) </p><p><b> {</b></p><p><b> flag2=0;</b></p><p><b> }</b></p><p><b> }</b></p><p> //
47、//// 主函數///////////////</p><p> void main()</p><p><b> {</b></p><p> // pwm_init();</p><p> // en1=1;</p><p> // en2=1;</p><
48、p> // while(1)</p><p><b> // {</b></p><p> // disp(h);</p><p> // delay_ms(500);</p><p> // qidong();</p><p><b> // }<
49、;/b></p><p><b> while(1)</b></p><p><b> {</b></p><p> disp(200);</p><p><b> }</b></p><p><b> } </b>
50、;</p><p> //////////////啟動程序//////////////// </p><p> void qidong()</p><p><b> {</b></p><p> if((S1==0)&&(S2==0))</p><p><b>
51、 {</b></p><p> while(S1==0&&S2==0);</p><p><b> {</b></p><p><b> go(); </b></p><p><b> }</b></p><p>
52、 delay_ms(700);</p><p><b> h++;</b></p><p><b> go();</b></p><p><b> } </b></p><p> if((S1==1)&&(S2==1))</p><
53、p><b> {</b></p><p><b> go();</b></p><p><b> if(h==0)</b></p><p><b> { </b></p><p><b> go();</b></
54、p><p><b> pwm1=20;</b></p><p><b> pwm2=20;</b></p><p><b> }</b></p><p><b> if(h==1)</b></p><p><b>
55、{ </b></p><p><b> go();</b></p><p><b> pwm1=90;</b></p><p><b> pwm2=90;</b></p><p><b> } </b></p><
56、p><b> if(h==2)</b></p><p><b> { </b></p><p><b> go();</b></p><p><b> pwm1=20;</b></p><p><b> pwm2=20;<
57、/b></p><p><b> }</b></p><p><b> }</b></p><p> if(S1==1&&S2==0)</p><p><b> { </b></p><p><b> left(
58、);</b></p><p><b> }</b></p><p> if(S1==0&&S2==1)</p><p><b> {</b></p><p><b> right();</b></p><p><
59、b> }</b></p><p><b> if(h==3)</b></p><p><b> { </b></p><p><b> stop();</b></p><p><b> }</b></p>
60、<p><b> }</b></p><p> /////////////數據分離////////////////////</p><p> void Bcd(uint bcd_value)</p><p><b> {</b></p><p><b> num[0]=
61、0;</b></p><p> num[1]=(bcd_value%1000)/100;</p><p> num[2]=((bcd_value%1000)%100)/10;</p><p> num[3]=((bcd_value%1000)%100)%10;</p><p><b> }</b>&l
62、t;/p><p> ////////////////顯示函數//////////////////</p><p> void disp(uint disp_value)</p><p><b> {</b></p><p><b> uchar i;</b></p><p&g
63、t; Bcd(disp_value);</p><p> for(i=0;i<4;i++)</p><p><b> {</b></p><p> P1=led_point[i];</p><p> SBUF=LED_Val[num[i]];</p><p> delay_ms(
64、5);</p><p><b> P1=0XFF;</b></p><p><b> }</b></p><p><b> 第三章 總結</b></p><p> 小車能夠較好的完成實驗的基本要求,尋跡誤差較小。通過這次設計,我們熟練掌握了DXP、KeiL51等軟件的使
65、用方法,并了解了更多關于單片機的知識。</p><p> 本系統(tǒng)基本能夠滿足設計要求,能夠較快較平穩(wěn)的使小車沿引導線行駛,但由于經驗能力有限,該系統(tǒng)還存在著許多不盡人意的地方有待于進一步的完善與改進。</p><p> 此方案選擇的器件比較簡單,實際中也很容易實現。經過多次測試,結果表明在一定的弧度范圍內,小車能夠沿著黑線軌跡行進,達到了預期的目標。不足之處,由于小車采用直流電機,其速
66、度控制不夠精確和穩(wěn)定,導致小車循跡時行走不是很流暢;其次,由于車身比較重,導致小車拐彎時候比較吃力,有時候會卡死不動。</p><p> 通過兩周的努力,即將完成設計,當然由于本組精力和時間有限,本設計中或多或少會存在一些缺點,所設計的軟硬件難免會存在一些不足,剛開始選擇這個項目的時候其實是抱著好奇的心里,真的開始做了才發(fā)現困難重重。首先是DXP畫圖軟件不熟悉,接下來是小車硬件的連接,最后是編程。雖然整個過程很
67、堅辛,但我收獲了更多。我學會了使用DXP繪圖軟件,學會了再難也要做下去,學會了向周圍優(yōu)秀的同學積極地學習。</p><p><b> 總結人: </b></p><p><b> 2015.6.14</b></p><p><b> 參考文獻</b></p><p>
68、[1]李廣弟,朱月秀,王秀山編著.單片機基礎. 北京:北京航空航天大學出版社,2001</p><p> [2] 何立民編著.MCS-51系列單片機應用系統(tǒng)設計系統(tǒng)配置與接口技術.北京:北京航空航天大學出版社,1999</p><p> [3] 蔡美琴等編著.MCS-51 單片機系統(tǒng)及應用.北京:高等教育出版社.1992</p><p> 附錄Ⅰ DXP練習圖
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機原理及應用課程設計--自動尋電動小車
- 單片機課程設計---電動智能小車
- 單片機課程設計---單片機原理及應用
- 單片機課程設計-- 單片機原理及應用
- 單片機課程設計-自動循跡小車
- 單片機原理及應用課程設計
- 單片機原理及應用課程設計
- 單片機循跡小車課程設計
- 單片機手機鍵盤-單片機原理及應用課程設計
- 單片機原理及應用課程設計(溫度測量)
- 課程設計----基于單片機的自動避障小車
- 《單片機原理及應用》課程設計—單片機電子琴設計
- 單片機原理及系統(tǒng)課程設計
- 單片機原理及系統(tǒng)課程設計
- 單片機課程設計--智能小車—硬件設計
- 單片機原理及應用課程設計(電子時鐘)
- 單片機原理及應用課程設計--基于單片機的電子時鐘設計
- 《單片機原理及應用》課程設計--智能小汽車
- 單片機自動打鈴課程設計
- lcd單片機原理課程設計
評論
0/150
提交評論