簡(jiǎn)易紅外線遙控系統(tǒng)的設(shè)計(jì)與制作_第1頁(yè)
簡(jiǎn)易紅外線遙控系統(tǒng)的設(shè)計(jì)與制作_第2頁(yè)
簡(jiǎn)易紅外線遙控系統(tǒng)的設(shè)計(jì)與制作_第3頁(yè)
簡(jiǎn)易紅外線遙控系統(tǒng)的設(shè)計(jì)與制作_第4頁(yè)
簡(jiǎn)易紅外線遙控系統(tǒng)的設(shè)計(jì)與制作_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

簡(jiǎn)易紅外線遙控系統(tǒng)的設(shè)計(jì)與制作分享一個(gè)比較好玩的電路,前段時(shí)間也提到過,那就是無(wú)編碼紅外遙控器的制作方法,聽起來(lái)高大上吧,其實(shí)做起來(lái)并沒有那么難,下面這個(gè)就是紅外接收電路的原理圖,元件也沒有幾個(gè),發(fā)射電路就更簡(jiǎn)單了,這次還是以接收電路為主。紅外接收管就是下面黑色的這個(gè),長(zhǎng)得很像LED燈,白的是紅外發(fā)射管,他也發(fā)光只不過是發(fā)出的紅外光,人眼看不到。回到原理圖上,當(dāng)接收管接收到紅外光后就會(huì)導(dǎo)通,此時(shí)電源正極會(huì)連到MOS管柵極(G)上,MOS管導(dǎo)通,進(jìn)而LED燈會(huì)發(fā)光。如果接收管沒有接收到紅外光,紅外接收管就會(huì)截止,這樣也不能滿足MOS管的導(dǎo)通條件,進(jìn)而LED燈也不發(fā)光,這就是這個(gè)紅外接收電路的原理,很簡(jiǎn)單,如果手里沒有MOS管可用NPN型三極管來(lái)代替。這個(gè)電路有一個(gè)比較容易錯(cuò)的地方就是紅外接收管接的順序問題,原理圖上已經(jīng)標(biāo)明了出來(lái),如果接反了這個(gè)電路是不能夠正常工作的,除此之外還可以用萬(wàn)用表電阻檔來(lái)判斷長(zhǎng)腳和短腳對(duì)應(yīng)原理圖上的管腳,主要是由于在紅外光下接收管的正向?qū)娮钑?huì)變小,而太陽(yáng)光中含有紅外光,可在光下測(cè)一遍,室內(nèi)測(cè)一遍,根據(jù)阻值變化判斷管腳。上圖這個(gè)是紅外發(fā)射電路,其實(shí)也沒啥和普通驅(qū)動(dòng)LED燈發(fā)光的電路沒啥區(qū)別,只不過這個(gè)發(fā)出的是紅外光而已,這里不要忘了加限流電阻,沒有這個(gè)電阻有可能把紅外發(fā)射管給燒掉。上面這個(gè)圖片就是實(shí)際檢測(cè)的效果圖,如果大家做出來(lái)不要讓太陽(yáng)直射,由于太陽(yáng)光中也含有紅外線,所以陽(yáng)光直射會(huì)對(duì)這個(gè)電路造成干擾,很明顯的看到,當(dāng)發(fā)射電路打開開關(guān)后,接收電路中的LED燈就會(huì)發(fā)光,關(guān)掉開關(guān)燈就會(huì)滅,下圖這個(gè)就是實(shí)際檢測(cè)的效果。這個(gè)電路我們還可以再改改創(chuàng)新一下,比如把LED燈換成繼電器,還可以控制家里的220V燈泡,也可以自己做個(gè)紅外遙控車等等,就看你怎么用了。

簡(jiǎn)易紅外遙控小車設(shè)計(jì)1.總體設(shè)計(jì)主要設(shè)計(jì)思想:本設(shè)計(jì)利用通用紅外遙控器控制小車后輪兩個(gè)電機(jī)的動(dòng)作來(lái)實(shí)現(xiàn)小車走、停、轉(zhuǎn)彎等功能。并通過軟件控制小車方向和PWM調(diào)速小車的轉(zhuǎn)速。具體思想如下:通過外部中斷1接收紅外信息,并通過軟件解碼,根據(jù)接收信息的不同通過PWM和控制函數(shù)做出響應(yīng),并且在二極管上面反映出來(lái),所以說二極管充當(dāng)車燈和檔位指示燈的作用,且每次接收信號(hào),蜂鳴器鳴叫用來(lái)顯示有信號(hào)的傳入。主要設(shè)計(jì)任務(wù):紅外遙控小車的設(shè)計(jì)主要分兩大步,第一是硬件實(shí)現(xiàn)的設(shè)計(jì),第二是單片機(jī)軟件實(shí)現(xiàn)的設(shè)計(jì)。(1)其中硬件又分幾塊:51單片機(jī)最小系統(tǒng)板,小型直流電機(jī)(3~9V)驅(qū)動(dòng)電路模塊,紅外接收模塊(已集成在最小系統(tǒng)板),蜂鳴器和二極管顯示模塊,車體。(2)軟件比較簡(jiǎn)單,但也分了幾塊:外部中斷紅外接收解碼模塊,PWM電機(jī)調(diào)速模塊,主程序。2.設(shè)計(jì)任務(wù)與要求(1)主要完成的性能指標(biāo)本小車設(shè)計(jì)完成后能夠?qū)崿F(xiàn)如下功能:前進(jìn)、后退、左前傳(以做輪胎為軸轉(zhuǎn)彎)、右前轉(zhuǎn)、左圓轉(zhuǎn)(以車體為軸進(jìn)行轉(zhuǎn)彎)、右圓轉(zhuǎn)、左倒轉(zhuǎn)、右倒轉(zhuǎn)、緊急暫停、123級(jí)加減速。(2)器件選擇本設(shè)計(jì)主要用到以下材料:51單片機(jī)一個(gè)、通用遙控器一個(gè)、紅外接收頭一個(gè)、5號(hào)電池7節(jié)、車體(雙電機(jī)+萬(wàn)向輪)一套、蜂鳴器一個(gè)、杜邦線若干、二極管9個(gè)、L9110S電機(jī)驅(qū)動(dòng)芯片2個(gè)、其他電阻電容若干(3)單片機(jī)選擇本設(shè)計(jì)用到宏晶公司的STC——125A32Ad單片機(jī)(4)說明總體框圖(可選)(5)畫出總線路圖(硬件)51單片機(jī)最小系統(tǒng)如右:紅外電路圖如下:L9110S電機(jī)驅(qū)動(dòng)電路如下:L9110S電氣特性如下:完成后的驅(qū)動(dòng):實(shí)現(xiàn)后的實(shí)物圖如下:(6)流程圖及程序清單//*******************************************************************************//***************簡(jiǎn)易紅外小車完全調(diào)試程序//***************版本V0.2//***************2012年5月13日10:49:26//***************修改優(yōu)化時(shí)間2012年5月14日0:02:21//***************再次修改時(shí)間2012年5月18日20:49:28//***************Madeby**************#include<reg52.h>#include"intrins.h"#defineuintunsignedint#defineucharunsignedcharsbitM11=P1^0;//電機(jī)1接口sbitM12=P1^1;sbitM21=P1^2;//電機(jī)2接口sbitM22=P1^3;sbitLED0=P0^0;//左前燈sbitLED1=P0^1;//

檔1燈sbitLED2=P0^2;//檔2燈sbitLED3=P0^3;//檔3燈sbitLED4=P0^4;//緊急燈sbitLED5=P0^5;//右前燈sbitLED6=P0^6;//左后燈sbitLED7=P0^7;//右后燈sbitF=P1^4;//蜂鳴器接口ucharTEMP1=0;//全局變量,用于存放紅外返回值

-用于PWM占空比的控制ucharTEMP2=10;//用于方向的控制sbitInt0=P3^3;//

紅外接收采用外部中斷1uchardatabus[7];//用于紅外接收存放數(shù)據(jù)//************************************************************//延時(shí)函數(shù)voiddelay1(uintxms)//delay0.1ms{uinti,j;for(i=xms;i>0;i--)for(j=13;j>0;j--);}//************************************************************//********************接受解碼函數(shù)ucharRec(){uchartemp=0;//函數(shù)內(nèi)部臨時(shí)變量,用于返回函數(shù)值uinti=0;//

用于存放數(shù)據(jù)的臨時(shí)變量uintj=0;uintm=0;//

局部計(jì)數(shù)臨時(shí)變量uintn=0;//

局部計(jì)數(shù)臨時(shí)變量uintk=0;//

局部計(jì)數(shù)臨時(shí)變量EX1=0;//關(guān)外部中斷1

,以防再次外部1中斷的介入while(!Int0)//用于計(jì)時(shí)前9Ms低電平的引導(dǎo)碼{delay1(1);m++;//計(jì)數(shù)引導(dǎo)碼的長(zhǎng)度}if(m<=60)//50,可變,大概數(shù),m應(yīng)該在90左右,如果引導(dǎo)碼時(shí)間太?。ㄈ?lt;50),就表示//此次接收有誤,返回0return0;//while(Int0)//用于計(jì)時(shí)4.5ms高電平的引導(dǎo)碼{delay1(1);n++;//計(jì)時(shí)高電平}if(n<=30)//20大概值,應(yīng)該在45左右,如果太小或太大,都有問題return0;//當(dāng)上面的兩步都完成時(shí),表示9ms低電平,4.5ms高電平的引導(dǎo)碼驗(yàn)證完畢//可進(jìn)行下步接收數(shù)據(jù)工作。后面有32位高低電平組成的編碼分為:系統(tǒng)碼1,系統(tǒng)碼2,數(shù)據(jù)碼和數(shù)據(jù)反碼//其中前16位,為用戶識(shí)別碼(系統(tǒng)碼1和2)用于區(qū)別不同的電器,因?yàn)槭褂玫耐ㄓ眠b控器和接收器所以//不用關(guān)心前16位。M11=M12=M21=M22=0;//進(jìn)入中斷,停止電機(jī),防止電機(jī)顫抖for(i=0;i<4;i++)//4組接收for(j=0;j<8;j++)//每組8個(gè)高低信號(hào){//數(shù)據(jù)0由0.56ms低+0.56ms高組成即

1:1//數(shù)據(jù)1由0.56ms低+1.655ms高組成

1:3while(!Int0)//過濾數(shù)據(jù)的低位

0.56ms低電平{delay1(1);}while(Int0)//

進(jìn)入高電平計(jì)時(shí){delay1(1);k++;//k計(jì)時(shí)每次的高電平}databus[i]=databus[i]>>1;//

數(shù)據(jù)接收數(shù)組首先默認(rèn)接收為0信號(hào),即databus【i】第7位移入0if(k>=10)//而后,判斷剛才接收到的數(shù)據(jù)是否為1,因?yàn)?的高點(diǎn)平持續(xù)1.655ms//低電平持續(xù)0.56ms,所以只要k大于10,就能確定為1{databus[i]=databus[i]|0x80;//

若為1,把第8位置1}k=0;//把k的值重新置零};if(databus[2]!=~databus[3])//2和3組數(shù)據(jù)為反碼關(guān)系。所以判斷它們是否相反,來(lái)確定接收數(shù)據(jù)//是否正確return0;temp=databus[2];//

返回賦值returntemp;//}//****************************************************//**********紅外接受中斷服務(wù)函數(shù),+接受編碼TEMP1,TEMP2voidint0()interrupt2{uchartemp;//臨時(shí)存放紅外接收函數(shù)返回值uinti=0;//計(jì)數(shù)臨時(shí)變量LED4=1;//(因緊急燈是閃爍的每次中斷時(shí)結(jié)果不一樣,為保證效果)先滅緊急指示燈temp=Rec();//

紅外函數(shù)返回賦值switch(temp)//對(duì)返回的數(shù)據(jù)進(jìn)行編碼,方便后面的操作{case0x0d:{TEMP1=0;//TEMP1,編碼用作,PWM參數(shù),全局變量,LED1=LED2=LED3=1;//對(duì)應(yīng)的指示燈狀態(tài)break;}case0x0c:{TEMP1=1;LED1=0;LED2=LED3=1;break;}case0x18:{TEMP1=2;LED1=LED3=1;//2檔LED2=0;break;}case0x5e:{TEMP1=3;//TEMP1用于控制PWM占空比LED3=0;LED1=LED2=1;break;}case0x40:{TEMP2=0;//緊急狀態(tài)(暫停)。TEMP2用于控制電機(jī),暫停,前進(jìn),左右轉(zhuǎn),break;}case0x46:{TEMP2=1;//前進(jìn)LED0=LED5=0;//指示燈設(shè)置LED6=LED7=1;break;}case0x44:{TEMP2=2;//左前轉(zhuǎn)LED0=0;LED5=1;LED6=LED7=1;break;}case0x43:{TEMP2=3;//右前轉(zhuǎn)LED5=0;LED0=1;LED6=LED7=1;break;}case0x15:{TEMP2=4;//倒車狀態(tài)LED6=LED7=0;//67為倒車指示燈LED0=LED5=1;break;}case0x07:{TEMP2=5;//左后轉(zhuǎn)LED6=0;LED7=LED0=LED5=1;break;}case0x09:{TEMP2=6;//右后轉(zhuǎn)LED7=0;LED6=LED0=LED5=1;break;}case0x45:{TEMP2=7;//左園轉(zhuǎn)LED0=LED7=0;LED5=LED6=1;break;}case0x47:{TEMP2=8;//右園轉(zhuǎn)LED5=LED6=0;LED0=LED7=1;break;}}//每次接受紅外,蜂鳴器蜂鳴一次F=1;delay1(300);F=0;EA=1;//開總中斷EX1=1;//開外1中斷IT1=1;//下降沿觸發(fā)}//*****************************************//**********電機(jī)驅(qū)動(dòng)函數(shù)voidPWM_RUN(){uintm=0;//臨時(shí)計(jì)數(shù)變量ucharn=0;//uinti=0;//m=TEMP1*100;//m有0,1,2,3狀態(tài),PWM每小時(shí)間片為3*100,所以m*100n=TEMP2;//TEMP1用于控制轉(zhuǎn)速,TEMP2用于控制前后左右//對(duì)n(TEMP2)進(jìn)行解碼,設(shè)置不同的電機(jī)工作方式//注:暫定M*1=1,M*2=0正傳,M*1=0,M*2=1倒轉(zhuǎn),M*1=M*2=0,停止if(n==0)//緊急狀態(tài),{M11=M12=M21=M22=0;LED4=~LED4;//設(shè)置緊急燈動(dòng)作delay1(1000);}if(n==1)//m1和m2都前轉(zhuǎn),前進(jìn){M11=1;M12=0;M21=1;M22=0;}if(n==2)//m1停止,m2前轉(zhuǎn),實(shí)現(xiàn)左前轉(zhuǎn)彎{M11=0;M12=0;M21=1;M22=0;}if(n==3)//m1前轉(zhuǎn),m2停止,實(shí)現(xiàn)右前轉(zhuǎn){M11=1;M12=0;M21=0;M22=0;}if(n==4)//m1m2倒轉(zhuǎn),實(shí)現(xiàn)倒車{M11=0;M12=1;M21=0;M22=1;}if(n==5)//m1停止,m2倒轉(zhuǎn),實(shí)現(xiàn)左后轉(zhuǎn){M11=0;M12=0;M21=0;M22=1;}if(n==6)//m1倒轉(zhuǎn),m2停止,實(shí)現(xiàn)右后轉(zhuǎn){M11=0;M12=1;M21=0;M22=0;}if(n==7)//m1倒傳,m2前轉(zhuǎn),實(shí)現(xiàn)左方向,原地打轉(zhuǎn){M11=0;M12=1;M21=1;M22=0;}if(n==8)//m1前轉(zhuǎn),m2倒轉(zhuǎn),實(shí)現(xiàn)右方向,原地打轉(zhuǎn){M11=1;M12=0;M21=0;M22=1;}/*//PWM實(shí)現(xiàn)部分while(m--)_nop_();//電機(jī)動(dòng)作while(i<300-m)//

電機(jī)歇菜{(lán)M11=M12=0;M21=M22=0;_nop_();i++;}while(1);*/}//**

溫馨提示

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

評(píng)論

0/150

提交評(píng)論