自行車防盜器設(shè)計報告.doc
《自行車防盜器設(shè)計報告.doc》由會員分享,可在線閱讀,更多相關(guān)《自行車防盜器設(shè)計報告.doc(11頁珍藏版)》請在裝配圖網(wǎng)上搜索。
大學(xué)生電子設(shè)計競賽設(shè)計報告題目:自行車防盜器 作者:H摘要由于近日來校園內(nèi)連續(xù)出現(xiàn)自行車被盜現(xiàn)象,為了增加同學(xué)們的自行車防盜能力,減少同學(xué)們的損失,本設(shè)計給同學(xué)們提供了一個防盜報警器,使同學(xué)們的自行車更加安全。本設(shè)計主要使用單片機芯片作為控制系統(tǒng),利用無線遙控控制繼電器來實現(xiàn)警報器電路的開與關(guān)。當(dāng)用戶不用自行車時,打開電路,當(dāng)自行車被騎走時,將受到震動,受震的彈簧觸片即與地瞬間接觸,彈簧觸片所連接的IO口此時將收到一個低電平信號,系統(tǒng)在收到信號后,將立刻給蜂鳴器傳輸一個低電平信號,使其鳴叫,發(fā)生警報。此外,本設(shè)計設(shè)有按鍵C,當(dāng)同學(xué)們按下C鍵時,車子將發(fā)生鳴叫,此功能方便同學(xué)們在車子附近時,可以檢查自己的車子是否還在?;蛘哂袝r因停放車子太多,找不到車子,可以使用此功能,即可循聲找到自己的車子。 本設(shè)計構(gòu)造簡單,制作費用低,是同學(xué)們車子防盜的廉價好管家。關(guān)鍵字:自行車 防盜 遙控 單片機 設(shè)計與總結(jié)報告 1設(shè)計任務(wù)與要求1.1任務(wù)制作一個自行車的防盜產(chǎn)品。1.2要求基本要求l 系統(tǒng)正常工作后,能禁止他人非法移動車子,或當(dāng)車子被非法移動時,能夠起到警報作用;l 可以準(zhǔn)確判斷車子是否被非法移動;l 報警觸發(fā)后,不會被停止;2.理論分析與方案論證當(dāng)前校園中,經(jīng)常出現(xiàn)自行車被盜,僅有一把鐵鎖的自行車在小偷面前簡直有鎖如同沒有鎖,主要是小偷開鎖技巧高超,各種鎖難以支架。在21世紀(jì),這個電子技術(shù)高速發(fā)展的時代,利用電子技術(shù)來制作一個廉價防盜器非常具有應(yīng)用價值與必要。假若使用蜂鳴器作為一個警報器則可防止小偷盜走車輛。然而,這個警報器必須能辨別車輛是否被移動,此問題可以用加速感應(yīng)器或震動感應(yīng)器來辨別。而同時警報器要能辨別出此移動是否合法的,這個可以考慮用電路的開與關(guān)來辨別,當(dāng)車主使用車輛時,可以關(guān)掉警報器電源,車主需要采取防盜功能時,則把電源接上。若果使用普通開關(guān)控制,則雖然車主能使用此開關(guān)來控制電路,但小偷亦能使用此開關(guān)。然而若果換成遙控開關(guān)的話,則遙控器只在車主的手上,也就只有車主能夠控制警報器的電源開關(guān)了。同時,為防止防盜器被小偷毀壞,可以把警報器裝在自行車內(nèi)部。2.1 各模塊選擇與論證2.1.1芯片的選擇考慮到本設(shè)計需要對信號進(jìn)行分析處理,而儲存信息不多,考慮使用256 Byte On-chip RAM的STC89C52單片機芯片。2.1.2遙控模塊的選擇有無線遙控或紅外遙控的選擇,若果選擇紅外遙控,則外露的接收頭易被他人損壞,且接收不方便。故選擇無線遙控,無線遙控傳輸信號方便,任何方向皆可。同時,接收模塊可以裝在自行車內(nèi),不易于被損壞??紤]到本設(shè)計所需按鍵不多,故在淘寶瀏覽后,選擇了只有四位按鍵的小七遙控器。3.1.3移動感應(yīng)模塊的選擇自行車移動時必須能被感應(yīng)。此感應(yīng)模塊可以考慮加速感應(yīng)器,加速感應(yīng)器如右圖。感應(yīng)器易于制作,然而,由于材料有限,找不到足夠質(zhì)量的小導(dǎo)體b或彈性系數(shù)足夠小的彈簧,故本設(shè)計采用了震動感應(yīng)器,當(dāng)發(fā)生震動時,a將會左右搖擺,與導(dǎo)體b接觸。制作更為方便,且對材料要求較低,易于制作。3.1.4警報模塊的選擇作為警報器,必須聲音銳利,然而,材料有限,暫用普通的蜂鳴器代替。3.2 結(jié)論通過對各類型元器件的對比,考慮到設(shè)計成本和設(shè)計精度的要求,在充分保障系統(tǒng)可靠性的前提下,我們選擇了成本低廉的元器件,降低了系統(tǒng)硬件投資并減少了軟件開發(fā)周期,具有可行性。同時,在模塊的選擇時,考慮了系統(tǒng)升級或者功能的改變帶來的資源消耗,我們考慮了冗余部分資源,提高了系統(tǒng)的適應(yīng)能力。4.系統(tǒng)硬件設(shè)計4.1系統(tǒng)總體設(shè)計材料:繼電器、蜂鳴器、12M晶振、USB接口母座、二極管、40口插座、STC89C52單片機、萬用板、小彈環(huán)、螺絲各一個,22P電容2個,S9012三極管2個,無線發(fā)射接收模塊1對,漆包線若干。5系統(tǒng)軟件設(shè)計本系統(tǒng)采用了STC89C52單片機芯片作為系統(tǒng)控制中心,在軟件設(shè)計中利用了該單片機控制蜂鳴器與繼電器的開與關(guān)。整個程序的編寫均由C語言完成,在程序設(shè)計中,采用了結(jié)構(gòu)化程序設(shè)計方法,使各個模塊程序相對獨立開來,便于程序代碼的維護(hù)、移植和升級。同時,這樣分離式程序設(shè)計,降低了代碼的調(diào)試難度,縮短了調(diào)試周期。在程序設(shè)計中,大量使用了宏代換語句,為程序的修改提供了簡易的接口,消除了修改中重復(fù)查找相同代碼的繁瑣,提高了效率。51 主程序流程圖蜂鳴器、繼電器定時器初始化初始遙控接收模塊是否收到有效信號識別信號辨別按下的是哪個鍵關(guān)閉繼電器開始開啟繼電器蜂鳴器鳴叫一段時間YABCN震動感應(yīng)器是否接通蜂鳴器響6秒Y N521遙控接收模塊信號程序在本設(shè)計中,遙控接收模塊信號的辨別主要通過啟動單片機定時器0,以8位重裝工作方式每100us掃描一次所收到信號,由于發(fā)射模塊所發(fā)射的信號高低電平的長度是固定的且只有兩種。這里選擇以低電平時間的長度來確定是1還是0,若果是按鍵的信號,則必先接收到同位碼(即一段固定的長時間的低電平),先辨別是否已接受到同位碼,若果是,則記錄信號,否的話,則說明不是有效的信號,不作記錄。信號一共24位,記錄好24位信號后與ABC鍵的信號作比較,若是A,作執(zhí)行A鍵的功能,若是B,作執(zhí)行B鍵的功能,若是C,作執(zhí)行C鍵的功能。同時,由于遙控繁多,故每個遙控有自己的地址碼(可由用戶自調(diào)),故在收到信號后,還應(yīng)與地址碼對比,以辨別此信號是不是車主遙控所發(fā)出的信號。信號的前16位就是地址碼,對比信號的地址碼與遙控的地址碼,若果兩者相同,則信用有效;若果不相同,則說明此信號不是車主遙控所發(fā)出的信號,此時信號無效。522 蜂鳴器程序蜂鳴器響有兩種情況,一,按了C鍵;二振動感應(yīng)器接通。蜂鳴器所接的是S9012三極管,屬于PNP型,低電平有效。當(dāng)遙控接收模塊接收到C鍵信號時,則在蜂鳴器IO口輸出低電平,調(diào)用延遲子程序,讓蜂鳴器鳴叫2秒。同樣,在振動感應(yīng)器接通時,感應(yīng)器IO口則輸入低電平,此時也在蜂鳴器IO口輸出低電平,調(diào)用延遲子程序,讓蜂鳴器鳴叫6秒。之所以延長鳴叫時間,是因為振動導(dǎo)致的感應(yīng)器接通可能僅僅是瞬間的,若不延長鳴叫時間,則鳴叫將會極短,無法起到警報效果。程序編程見附錄16. 功能操作演示部分接通電源后,按A鍵,則防盜系統(tǒng)開啟,當(dāng)防盜器振動時,警報器發(fā)出警報聲音。按下B鍵,防盜系統(tǒng)關(guān)閉,防盜器振動時警報電路不工作。在工作狀態(tài)下按下C鍵,則警報器鳴叫,車主可根據(jù)聲音找到自行車的停放位置。附錄1:/*蜂鳴器接1.5 遙控接P2.6 指示燈發(fā)光二極管接P3.6 繼電器接P0.2 */#include #define uchar unsigned char/*IO引腳定義*/sbit ykjs=P11; /遙控接收器口sbit fmk=P24; /蜂鳴器sbit jdq=P00;/繼電器sbit zsd=P31; /指示燈,繼電器打開時,燈亮。這樣可以知道機器是否處于工作狀態(tài)sbit jsk=P34;/接收口 即看加速度感應(yīng)器是否接通。 接通時為0void sm();/*變量聲明*/code uchar dzm1=0xaa; /地址碼1 ;code uchar dzm2=0xaa;/地址碼2 用來驗證信號是否從指定遙控器發(fā)出uchar ddsj=0; /低電平時間計數(shù) 用來計算低電平的時間uchar i=0;/每個信號有三個字節(jié),i區(qū)分這三個字節(jié)。uchar ab=0; /按鍵 若接收到的是a鍵,則ab=1,若是b鍵則=2,從而通過ab的值反應(yīng)到繼電器的開關(guān)上。uchar xh3;/信號 用來存信號,共三個字節(jié)uchar jsgs=0; /計算個數(shù) 計算收到的信號位的個數(shù)。滿8個則存到下個字節(jié)。uchar js=0;bit ok=0;/標(biāo)志是否完成接受信息。 若ok=1,則說明接受到了一個信號 則主函數(shù)執(zhí)行動作,辨別是按了哪個鍵。bit twm=0; /同位碼 若接受到同位碼 則說明很可能接受到信號。即信號的開始bit qjs=0; /前一時期的接受口狀態(tài) 用來辨別是否從低電平變?yōu)楦唠娖交驈母咦兊?,或一?/*初始化*/ void csh(void) /用來初始化一些值,比如計時器的工作方式 中斷等TH0=0x9c; / 100us中斷一次 即掃描一次有沒有收到信號 8位重裝,每次256,故設(shè)初始值156=10011100=0x9,這樣每次運行100次,即100usTMOD|=0x02;/0010 0為gate 0為C/T,0時為定時功能 10 為8位自動重裝定時方式 設(shè)置T0為自動裝入的8位定時器ET0=1; /開T0中斷EA=1; /開總中斷TR0=1; /啟動T0/*延遲函數(shù)*/void delay (unsigned int t) /0.001秒unsigned int x;while(t)t-;x=10;while(x-);/*timer0中斷掃描 每100us中斷一次*/void timer0() interrupt 1 /timer0的中斷 interrupt 1的1指的是IE的位數(shù) 0為外部中斷0 1為timer0 2為外部中斷1 3為time1sm(); /每100us掃描一次是否有信號,信號為哪個鍵/*主程序*/void main()csh();/初始化while(1)/進(jìn)入大循環(huán)if(ok)/如果完成了一次掃描switch(ab) /看看掃描到的是哪個鍵case 1:jdq=0;zsd=1;break;/掃描到鍵A則開蜂鳴器,由于是PNP,故蜂鳴器低電時,三極管通,同時指示燈亮case 2:jdq=1;zsd=0;break;/鍵B則關(guān)蜂鳴器 同時關(guān)閉指示燈case 3:fmk=0;delay(3000);fmk=1;break;delay(1000);/關(guān)或開繼電器后延遲一會 為什么呢?我也不知道ok=0;/*把ok關(guān)掉(即設(shè)為0)這樣說明本次按鍵執(zhí)行結(jié)束, 主函數(shù)回到if語句,等等ok變1,即等待下次按鍵掃描。*/fmk=1;/先關(guān)蜂鳴器js=0;/標(biāo)志jsk=1;/接受口先為1,即不接負(fù)極if(!jsk)/當(dāng)它接負(fù)極時,即為0js=1;/標(biāo)志改為1,讓蜂鳴器叫if (js)fmk=0;delay(15000);/叫的時間延遲 讓它叫久些/*按鍵掃描*/void sm()if(ykjs)/遙控接收口為高電平時if(!qjs) /如果前一時期接收到的是低電平,說明高電平現(xiàn)在才開始qjs=1;/標(biāo)志這一時期(即下一時期的前一時期)的電平為高電平67692if(twm)/如果前面一段低電平不是同位碼,則執(zhí)行如下xhi=xhi1;/令信號記錄的第i個字節(jié)右移,移出一個0位,如本來11010010,則移后得01101001,這樣最高一位為零,可以記錄新數(shù)字if(1ddsj)&(ddsj5) /低電平時間在100us到500us之間,則記為1 按理說 低電應(yīng)該記為零,但由于數(shù)字是從右記到左的,為了與地址碼相符故記為零,仔細(xì)想一下會明白的,因為地址碼是10101010,從右記左為01010101,故換一下01位置,就成為了10101010 xhi|=0x80; /和10000000或,這樣之前空出來的最高一位0位將記為1else if(8ddsj)&(ddsj13) /低電平時間在800us到1.3ms之間,記為0(原本應(yīng)該為1)xhi&=0x7f; /則和01111111與,這樣原本為0的最高位現(xiàn)在還是0,其余的是1的還是1,零的還是0 else /若果低電平時間不在兩個范圍內(nèi),則為干擾碼,則退出twm=0; /退出前先清零同位碼 ,由于記錄信號的三個字節(jié)記錄的方式與先前數(shù)值無關(guān),故可不清零 return;jsgs+;if(jsgs%8=0)i+;if(jsgs=24)twm=0;if(xh0=dzm1&xh1=dzm2)ok=1;switch(xh2)case 0x03:ab=1;break;case 0xc0:ab=2;break;case 0x30:ab=3;break;case 0x0c:ab=4;break; else /未檢測到同位碼,則檢測之前那次低電平是否同位碼if(100ddsj)&(ddsj140) /檢測到是同位碼則下面復(fù)位一些值twm=1; /將同位碼置1,說明接收到了同位碼i=0;/將i置0,下次接收時將從第一個字節(jié)開始記怒江jsgs=0;/計數(shù)個數(shù)也置0,下次接收將從第1個計起ddsj=0;/低電時間清零。elsereturn;else/接收口為低電平時if(qjs)/如果前一時期接收到的是高電平,則說明低電平現(xiàn)在才開始qjs=0;/標(biāo)志這一時期(即下一時期的前一時期)的電平為低電平ddsj=0;/清零低電平計數(shù)(ddjs低電計數(shù))else/如果之前也是低電平ddsj+;/低電平時間+1- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 自行車 防盜器 設(shè)計 報告
鏈接地址:http://italysoccerbets.com/p-9549377.html