基于單片機(jī)智能遙控小車的設(shè)計

上傳人:文*** 文檔編號:52651288 上傳時間:2022-02-08 格式:DOCX 頁數(shù):26 大小:469.02KB
收藏 版權(quán)申訴 舉報 下載
基于單片機(jī)智能遙控小車的設(shè)計_第1頁
第1頁 / 共26頁
基于單片機(jī)智能遙控小車的設(shè)計_第2頁
第2頁 / 共26頁
基于單片機(jī)智能遙控小車的設(shè)計_第3頁
第3頁 / 共26頁

下載文檔到電腦,查找使用更方便

20 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《基于單片機(jī)智能遙控小車的設(shè)計》由會員分享,可在線閱讀,更多相關(guān)《基于單片機(jī)智能遙控小車的設(shè)計(26頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、編號 單片機(jī)課程設(shè)計 ( 級) 題 目:基于單片機(jī)智能紅外遙控小車的設(shè)計 學(xué) 院: 物理與機(jī)電工程學(xué)院 專 業(yè): 電子信息科學(xué)與技術(shù) 作者姓名: 指導(dǎo)教師: 職稱: 副教授 完成日期: 20 年 1 月 6 日 二〇一七 年 一月 基于單片機(jī)智能紅外遙控小車的設(shè)計 摘?????要 本

2、次設(shè)計的簡易智能小車,采用STC89C52RC單片機(jī)作為小車的檢測和控制核心;采用紅外線遙控遠(yuǎn)程人為控制小車行駛狀態(tài);采用SM4105W80U3顯示小車處于自動行駛還是遙控行駛;可以實現(xiàn)小車的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停止運動。? 關(guān)鍵詞:STC89C52RC;紅外遙控 1 ?前?言?? 本設(shè)計能實現(xiàn)對小車的運動狀態(tài)進(jìn)行實時控制,控制靈活、可靠,精度高,可滿足對系統(tǒng)的各項要求。本設(shè)計采用MCS-51系列中的STC89C52RC單片機(jī)。以STC89C52RC為控制核心,使用紅外遙控對小車的

3、前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停止運動進(jìn)行實時的控制。?? 本次設(shè)計主要內(nèi)容是基于STC89C52RC設(shè)計一部智能小車,小車能夠?qū)崿F(xiàn)自動前進(jìn),和紅外遙控的智能小車控制系統(tǒng),包括了對驅(qū)動電路,紅外通訊等的探索和研究。? 2? 方案設(shè)計與論證? 2.1 ?遙控方案的選擇?? 由于屬于小范圍內(nèi)遙控,小車在小范圍內(nèi)行駛,為了減少設(shè)計成本,增加便利性,所以采用常用的家用電視紅外遙控器作為紅外遙控發(fā)射部分,只需在小車上加裝紅外接收裝置即可。定義遙控器的上一曲鍵為左轉(zhuǎn)鍵,暫停鍵為右轉(zhuǎn)鍵,下一曲鍵為停止鍵,CH健為前進(jìn)鍵,音量增大鍵為后退鍵,實現(xiàn)小車行駛的基本控制。? 紅外遙控系統(tǒng)的組成如圖2.1所示。發(fā)

4、射部分包括鍵盤矩陣、編碼調(diào)制、LED紅外發(fā)送器;接收部分包括光、電轉(zhuǎn)換放大器、解調(diào)、解碼電路。 圖2.1 紅外流程圖? 2.2 ?遙控對小車的控制? 切換到紅外遙控功能,對小車的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停止運動實現(xiàn)實時控制,具體如下所述: (1)前進(jìn)是左右兩個電機(jī)同時順時針旋轉(zhuǎn),實現(xiàn)小車的前進(jìn); (2)后退是左右兩個電機(jī)同時逆時針旋轉(zhuǎn),實現(xiàn)小車的后退; (3)停止是左右兩個電機(jī)同時停止旋轉(zhuǎn),實現(xiàn)小車的停止; (4)右轉(zhuǎn)是右電機(jī)逆時針旋轉(zhuǎn)和左電機(jī)順時針旋轉(zhuǎn)同時工作,實現(xiàn)小車的右轉(zhuǎn); (5)左轉(zhuǎn)是左電機(jī)逆時針旋轉(zhuǎn)和右電機(jī)順時針旋轉(zhuǎn)同時工作,實現(xiàn)小車的左轉(zhuǎn);? 實現(xiàn)不同的運動

5、方式,是通過PWM信號對L293D芯片中的H橋進(jìn)行控制。電橋一端接電源,另一端接了一個三極管。三極管導(dǎo)通時,電橋通過三極管接地,電機(jī)電樞中有電流通過;三極管截止時,電橋浮空,電機(jī)電樞中沒有電流通過。系統(tǒng)通過電橋的輸出端為轉(zhuǎn)向電機(jī)供電。通過對繼電器開閉的控制即可控制電機(jī)的開斷和轉(zhuǎn)速方向進(jìn)而達(dá)到控制玩具車前行與倒車的目的。 2.3 系統(tǒng)原理圖 系統(tǒng)原理圖如圖2.2所示:LED顯示模塊接P1.1-1.7口;紅外遙控接P3.2口;看門狗定時器接2.7口:電機(jī)控制接P0.0-0.3口;蜂鳴器接P0.7口;功能切換鍵接P3.4口。 起停運動 L293D驅(qū)動 STC89C52RC

6、LED顯示 紅外遙控 復(fù)位電路 光電隔離 圖2.2 系統(tǒng)框圖 3?硬件設(shè)計? 3.1 89C52單片機(jī)硬件結(jié)構(gòu)? 89C52單片機(jī)是把那些作為控制應(yīng)用所必需的基本內(nèi)容都集成在一個尺寸有限的集成電路芯片上。如果按功能劃分,它由如下功能部件組成,即微處理器、數(shù)據(jù)存儲器、程序存儲器、并行I/O口、串行口、定時器/計數(shù)器、中斷系統(tǒng)及特殊功能寄存器。它們都是通過片內(nèi)單一總線連接而成,其基本結(jié)構(gòu)依舊是CPU加上外圍芯片的傳統(tǒng)結(jié)構(gòu)模式。但對各種功能部件的控制是采用特殊功能寄存器的集中控制方式。? 3.2?最小應(yīng)用系統(tǒng)設(shè)計? 3.2.1 最小系統(tǒng) 用89C5

7、2單片機(jī)進(jìn)行構(gòu)成最小應(yīng)用系統(tǒng)時,只要將單片機(jī)接上時鐘電路和復(fù)位電路即可,如圖3.1所示。由于集成度的限制,最小系統(tǒng)只能用作一些最小的控制單元。但也擁有一些有點:? (1)?有可供用戶使用的大量I/O口線。? (2)?內(nèi)部存儲器容量有限。? (3)?應(yīng)用系統(tǒng)開發(fā)具有特殊性。 圖3.1 最小系統(tǒng)電路圖 3.2.2 燒寫接口電路? RST置高電平,然后向單片機(jī)串行發(fā)送編程命令。P1.7(SCK)輸入移位脈沖,P1.6(MISO)串行輸出,P1.5(MOSI)串行輸入。被燒寫的單片機(jī)一定是最小系統(tǒng)(單片機(jī)已經(jīng)接好電源,晶振,可以運行)。如圖3.2燒寫接口電路。 圖3.2

8、燒錄程序電路圖 3.2.3?PWM脈寬調(diào)速? 本設(shè)計調(diào)速采用PWM控制,選用了常用的雙極式H型變換器,它是由4個三極電力晶體管和四個續(xù)流二極管組成的橋式電路。圖3.3為雙極式H型可逆PWM變換器的電路原理圖。? 4個電力晶體管的基極驅(qū)動電壓分為兩組。VT1和VT4同時導(dǎo)通和關(guān)斷,其驅(qū)動電路中Ub1=Ub4;VT2和VT3同時動作,其驅(qū)動電壓Ub2=Ub3=-Ub1。? 雙極式PWM變換器的優(yōu)點如下: (1)電流一定連續(xù);? (2)可使電動機(jī)在四象限中運行;? (3)電機(jī)停止時有微振電流,能消除靜摩擦死區(qū);? (4)低速時,每個晶體管的驅(qū)動脈沖仍較寬,有利于保證晶體管可靠導(dǎo)通;?

9、(5)低速平穩(wěn)性好,調(diào)速范圍可達(dá)20000左右。 圖3.3 PWM驅(qū)動電路圖 3.2.4 電源的設(shè)計? 本設(shè)計的電源為車載電源。為保證電源工作可靠,單片機(jī)系統(tǒng)與動力伺服系統(tǒng)的電源采用了大功率、大容量的蓄電池;而傳感器的工作電源則采用了小巧輕便的干電池。 3.3 ?紅外線遙控電路? 方便起見,本設(shè)計直接采用電視遙控器作為紅外遙控的發(fā)射器,只需在小車上加裝紅外接收裝置即可? 紅外接收器的電路圖如圖3.4所示: 圖3.4 紅外線遙控電路 3.4 ?顯示電路設(shè)計 本設(shè)計中用一片1位七段數(shù)碼管SM4105W80U3作顯示器,顯示數(shù)字。?? 七段數(shù)碼管SM4105W80U3

10、中的a﹑b﹑c﹑d﹑e﹑f﹑g﹑dp分別連接在單片機(jī)的P2.1—P2.7,分別控制各段碼,與單片機(jī)的連接如圖3.5所示。 圖3.5 顯示電路圖 4?軟件設(shè)計? 4.1?設(shè)計流程? 一個智能化的系統(tǒng),軟件設(shè)計必不可少,軟件設(shè)計是更具系統(tǒng)需求,通過編程語言控制單片機(jī)的行為,實現(xiàn)智能控制。? 模塊化的程序設(shè)計有以下有點: (1) 單個模塊比起一個完整的程序易編寫及調(diào)試;? (2)模塊可以共存,一個模塊可以被多個任務(wù)在不同條件下調(diào)用; (3) 模塊程序允許設(shè)計者分割任務(wù)和利用已有程序,為設(shè)計者提供方便。? 本系統(tǒng)軟件采用模塊化結(jié)構(gòu),由主程序﹑中斷子程序顯示子程序﹑算法子程序、遙

11、控子程序構(gòu)成。? 本次設(shè)計采用的即是模塊化的軟件編程,各程序功能清晰、明確。軟件流程圖如圖4.1所示: N Y 結(jié)束 自動行駛 遙控行駛 遙控 功能選擇 開始 開始 圖4.1 流程圖 4.2? 軟件抗干擾技術(shù) 提高小車智能控制的可靠性,僅靠硬件抗干擾是不夠的,需要進(jìn)一步借助于軟件抗干擾技術(shù)來克服某些干擾。在單片機(jī)控制系統(tǒng)中,如能正確的采用軟件抗干擾技術(shù),與硬件干擾措施構(gòu)成雙道抗干擾防線,無疑為了將大大提高控制系統(tǒng)的可靠性。經(jīng)常采用的軟件抗干擾技術(shù)是數(shù)字濾波技術(shù)、指令冗余技術(shù)、軟件陷阱技

12、術(shù)等。 4.3?程序設(shè)計? 軟件設(shè)計采用模塊化設(shè)計,思路清晰,也便于查找問題。紅外遙控鍵位對應(yīng)子程序流程圖如圖4.2所示 開始 開始 采集紅外遙控數(shù)據(jù) N Y 延時等待 判地址碼是否相同 進(jìn)行鍵位對應(yīng) 結(jié)束 圖4.2 紅外遙控流程圖 5 不足與展望 本次設(shè)計的總體效果不是很好,控制靈敏性較差,尋跡和避障功能沒有很好的實現(xiàn)。因此要設(shè)計具有優(yōu)良的調(diào)速特性,調(diào)速平滑,方便使用,控制精確,轉(zhuǎn)動靈敏,可實現(xiàn)頻繁的無極快速起動、制動和轉(zhuǎn)動,需要

13、滿足生產(chǎn)過程自動化系統(tǒng)各種不同的特殊要求。為此,設(shè)計制造高性能、高可靠性的智能小車控制系統(tǒng)有著十分重要的現(xiàn)實意義。 6 設(shè)計心得 經(jīng)過這次課程設(shè)計我感受頗多,在正式進(jìn)行設(shè)計之前,我參考了一些網(wǎng)上的資料,通過對這些設(shè)計方案來開拓自己的思路,最后終于有了自己的思路。 此次課程設(shè)計不僅是對前面所學(xué)單片機(jī)技術(shù)和運動控制理論的一種檢驗,更是對所學(xué)知識大融合,站在新的高度看待新的問題,而且也是對自己運用所學(xué)知識的能力的一種提高。通過這次課程設(shè)計使我明白了自己原來知識還比較欠缺,自己要學(xué)習(xí)的東西還太多。以前老是覺得自己什么東西都會,什么東西都懂,有點眼高手低。通過這次課程設(shè)計,我才明白學(xué)習(xí)是一個長期積

14、累的過程。 參考文獻(xiàn) [1] 張毅剛,喜元.原理與應(yīng)用設(shè)計[M]. 北京:北京市海淀區(qū)四季青印刷廠,2010. [2] 張毅剛.新編MCS-51單片機(jī)運用設(shè)計[M]. 哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2003. [3] 張義和,敏男,宏昌,長春.例說51單片機(jī)(c語言版)[M]. 北京:人民郵電出版社,2009. [4] 馬忠梅 籍順心 張 凱 馬 巖.單片機(jī)的C語言應(yīng)用程序設(shè)計[M]. 北京:北京航空航天大學(xué),2010. [5] Samsung Electronics. S3C44BOX Risc microcontroll

15、er ARM instruction sheet .2002. [6] 郭天祥.《51單片機(jī)C語言教程》[M].子工業(yè)出版社,2005年7月. [7] 丁元杰.《單片微機(jī)原理及應(yīng)用》[M],械工業(yè)出版社,2005年7月. [8] 樓然苗,光.《單片機(jī)課程設(shè)計指導(dǎo)》[M].京: 北京航空航天大學(xué)出版社,2007. 附 錄 1 實物圖 24 2 源程序清單 #include #include sbit LeftLed=P

16、2^0; sbit RightLed=P0^7; sbit FontLled=P1^7; sbit LeftIR=P3^5; sbit RightIR=P3^6; sbit FontIR=P3^7; sbit M1A=P0^0; sbit M1B=P0^1;

17、 sbit M2A=P0^2; sbit M2B=P0^3; sbit B1=P0^4; sbit SB1=P0^6; sbit IRIN=P3^3; unsigned char code LedShowData[]={ 0x03,0x9F

18、,0x25,0x0D,0x99, 0x49,0x41,0x1F,0x01,0x19 }; unsigned char code RecvData[]={ 0x19,0x46,0x15,0x43,0x44, 0x40,0x0D,0x0E,0x00,0x0F }; unsigned char IRCOM[7]; static unsigned int LedFlash; bit EnableLight=0; #define Sh

19、owPort P2 unsigned char temp = 1; void tingzhi() { M1A=0; M1B=0; M2A=0; M2B=0; } void qianjin() { M1A=1;

20、 M1B=0; M2A=1; M2B=0; } void houtui() { M1A=0; M1B=1; M2A=0; M2B=1; } void zuozh

21、uan() { M1A=0; M1B=1; M2A=1; M2B=0; } void youzhuan() { M1A=1; M1B=0; M2A=0;

22、 M2B=1; } void Delay1ms(unsigned int i) { unsigned char j,k; do{ j = 10; do{ k = 50; do{ _nop_(); }while(--k); }while(--j); }while(--i); } void delay_nus(unsigned int i) { i=i/10; while(--i); } void delay

23、_nms(unsigned int n) { n=n+1; while(--n) delay_nus(900); } void delayms(unsigned char x) { unsigned char i; while(x--) { for (i = 0; i<13; i++) {}

24、 } } void Delay() { unsigned int DelayTime=30000; while(DelayTime--); return; } void ControlCar(unsigned char ConType

25、) tingzhi(); switch(ConType) { case 1: //前進(jìn) { LeftLed = 0 ; qianjin(); break; } case 2: //后退 { LeftLed = 1 ; houtui(); bre

26、ak; } case 3: //左轉(zhuǎn) { zuozhuan(); break; } case 4: //右轉(zhuǎn) { youzhuan(); break; } case 8: //停止 { tingzhi(); break;

27、 } } } void ControlCar_yaokong(unsigned char ConType) { tingzhi(); switch(ConType) { case 1: //前進(jìn) { tingzhi(); Delay1ms(150); LeftLed = 0 ; qianjin(); break; } ca

28、se 2: //后退 { tingzhi(); Delay1ms(150); LeftLed = 1 ; houtui(); break; } case 3: //左轉(zhuǎn) { tingzhi(); Delay1ms(150); zuozhuan();

29、 break; } case 4: //右轉(zhuǎn) { tingzhi(); Delay1ms(150); youzhuan(); break; } case 8: //停止 { tingzhi(); break; } } } void

30、 main() { bit RunFlag=0; LedFlash=3000; EX1=1; IT1=1; EA=1;

31、 ControlCar(8); while(1) { if(P3_2 == 0) { delay_nms(10); if(P3_2 == 0) { temp++; while(!P3_2); } } if(temp > 3) { temp = 1; } switch(temp) {

32、 case 1: ShowPort= LedShowData[1];Robot_Traction(); EX1 = 0;break; case 2: ShowPort= LedShowData[2];Robot_Avoidance(); EX1 = 0;break; case 3: ShowPort = LedShowData[3]; EX1 = 1;break; } } } void IR_IN() interrupt 2 using 0 { unsigned char j,k,N=0;

33、 EX1 = 0; delayms(15); if (IRIN==1) { EX1 =1; return;

34、 } while (!IRIN) { delayms(1); } for (j=0;j<4;j++) { for (k=0;k<8;k++) {

35、 while (IRIN) { delayms(1); } while (!IRIN) { delayms(1); } while (IRIN)

36、 { delayms(1); N++; if (N>=30) { EX1=1; return;

37、 } } IRCOM[j]=IRCOM[j] >> 1; if (N>=8) { IRCOM[j] = IRCOM[j] | 0x80;

38、 } N=0; } } if (IRCOM[2]!=~IRCOM[3]) { EX1=1; return; } for(j=0;j<10;j++) { if(IRCOM[2]==RecvData[j]) { ControlCar_yaokong(j); } } EX1 = 1; }

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!