湖南大學工程訓練項目報告-藍牙小車設計報告_第1頁
湖南大學工程訓練項目報告-藍牙小車設計報告_第2頁
湖南大學工程訓練項目報告-藍牙小車設計報告_第3頁
湖南大學工程訓練項目報告-藍牙小車設計報告_第4頁
湖南大學工程訓練項目報告-藍牙小車設計報告_第5頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

湖南大學工程訓練項目報告藍牙小車報告小組成員:班級:聯系方式:目錄引言1總體方案1電路與程序設計3調試方案和調試結果7遇到的問題和解決方案7工程管理方案8總結和體會8實物圖9源程序10第頁一、引言藍牙作為一種無線技術標準,可實現固定設備、移動設備和樓宇個人域網之間的短距離數據交換(使用2.4—2.485GHz的ISM波段的UHF無線電波)。藍牙自從被創制以來就得到了廣泛的關注與應用,現代許多移動設備和固定設備上都安裝了藍牙,進行文件傳輸、無線控制等。藍牙傳輸范圍大,可穿透不同物質以及在物質間擴散;采用跳頻展頻技術,抗干擾性強;功耗小,成本低等等。藍牙的這些優勢使得它在控制技術領域備受青睞。本小組的選題是藍牙控制小車,意思就是以藍牙作為無線控制的載體,通過手機上的藍牙APP對藍牙芯片發出控制命令,通過串口傳輸指令給小車的核心STC89C51單片機,51單片機再通過對藍牙傳送的信息進行處理,控制小車各元件,LED燈、靜態數碼管、蜂鳴器、電機,來指導小車完成指定動作。二、總體方案本小組設計的藍牙小車的控制機制是:以STC89C51單片機作為控制核心,通過手機上的藍牙APP對小車發出控制命令,小車上的藍牙芯片接收到APP發出的指令后通過串口傳輸給STC89C51單片機,單片機通過對指令的一系列處理,控制小車上相關元件,LED燈、靜態數碼管、蜂鳴器、電機,來指導小車完成指定動作。框圖:LED燈蜂鳴器靜態數碼管電機STC89C51藍牙芯片藍牙APP

原理圖:LED燈蜂鳴器靜態數碼管電機STC89C51藍牙芯片藍牙APP

軟件流程圖:三、電路與程序設計(1)電路設計(各單元模塊功能):1、控制器模塊采用STC89C51單片機,可完全實現ISP在線編程,直接通過USB線為小車燒錄程序做開發,不用購買轉換器。作用:藍牙小車的控制核心,通過對單片機燒錄藍牙控制程序,檢測藍牙信號,對接收到的藍牙信號進行處理,對小車發出控制命令,從而完成無線控制。2.電機驅動模塊運用兩塊LG9110驅動芯片來分別控制左前輪和右前輪。作用:用驅動芯片做單片機與馬達的橋梁,當芯片接收到來自單片機的命令信號時,芯片會做出相應的命令來使馬達運作,當LG9110的7腳輸入為高電壓6腳輸入為低電壓時馬達正轉,當其6腳輸入為高電壓7腳輸入為低電壓時馬達反轉,從而實現控制左轉與右轉的功能;通過延時函數調節馬達電壓的占空比,實現小車的加速減速功能。 3、藍牙模塊 由手機上的藍牙APP、安裝在小車上的藍牙接收芯片以及4條給STC89C51單片機傳送命令的數據線組成。 作用:通過手機上的藍牙APP對小車發出控制命令,小車上的藍牙接收器接收到APP發出的命令后傳輸給STC89C51單片機,單片機命令進行處理,指導小車完成指定的動作。藍牙模塊是溝通用戶與設備的橋梁。4.電源模塊采用4節1.5V干電池供電,電壓達到6V,給單片機、電機和其他芯片供電。作用:給小車提供能源。5.發光二極管和蜂鳴器采用普通發光二極管和蜂鳴器分別發出光聲進行提示。作用:兩個發光二極管一直亮著表示小車處于前進狀態;發光二極管閃爍和蜂鳴器鳴叫表示小車后退;左邊的發光二極管亮而右邊的發光二極管滅表示小車左轉;右邊的發光二極管亮而左邊的發光二極管滅表示小車右轉。6.靜態數碼管靜態數碼管用來顯示小車的速度。(2)程序設計:1、軟件設計原理:藍牙芯片檢測藍牙信號,通過串口將藍牙信號傳遞給STC89C51單片機。51單片機接收到藍牙信號后,經過一定的處理計算,控制小車各部分元件。借助設定全局變量s,并通過改變占空比來模擬PWM控制小車行駛速度借助計時器中斷,配合速度變量s來實現流水燈及流水燈速度變化利用延時函數實現LED燈閃爍及蜂鳴器蜂鳴2、設計所用工具:KeiluVision43、主程序流程框圖:開始開始初始化設置初始化設置判斷是否接到指令?判斷是否接到指令? N Y執行指令執行指令4、中斷服務子程序://串口中斷用于接收藍牙信號voidUsart()interrupt4{ switch(SBUF){ case0x40: //前進 case0x41: //后退 case0x42: //左轉 case0x43: //右轉 dat=SBUF;break; case0x46: if(s>1)s--; LED=date[s];break; //減速 case0x45: if(s<3)s++; LED=date[s];break; //加速 default:dat=0x00; } RI=0;//清除接收中斷標志位}//定時器中斷用于流水燈voidTimer0()interrupt1{ TH0=0x3C; //設置初始值TL0=0xB0; Time++; if((Time==(4-s))||(Time>3)){ //滿足條件時移動流水燈 WATER=_crol_(WATER,1); Time=0; }}5、通信協議1)主從關系:藍牙技術規定每一對設備之間進行藍牙通訊時,必須一個為主角色,另一為從角色,才能進行通信,通信時,必須由主端進行查找,發起配對,建鏈成功后,雙方即可收發數據。理論上,一個藍牙主端設備,可同時與7個藍牙從端設備進行通訊。一個具備藍牙通訊功能的設備,可以在兩個角色間切換,平時工作在從模式,等待其它主設備來連接,需要時,轉換為主模式,向其它設備發起呼叫。一個藍牙設備以主模式發起呼叫時,需要知道對方的藍牙地址,配對密碼等信息,配對完成后,可直接發起呼叫。2)呼叫過程:藍牙主端設備發起呼叫,首先是查找,找出周圍處于可被查找的藍牙設備。主端設備找到從端藍牙設備后,與從端藍牙設備進行配對,此時需要輸入從端設備的PIN碼,也有設備不需要輸入PIN碼。配對完成后,從端藍牙設備會記錄主端設備的信任信息,此時主端即可向從端設備發起呼叫,已配對的設備在下次呼叫時,不再需要重新配對。已配對的設備,做為從端的藍牙耳機也可以發起建鏈請求,但做數據通訊的藍牙模塊一般不發起呼叫。鏈路建立成功后,主從兩端之間即可進行雙向的數據或語音通訊。在通信狀態下,主端和從端設備都可以發起斷鏈,斷開藍牙鏈路。3)數據傳輸:藍牙數據傳輸應用中,一對一串口數據通訊是最常見的應用之一,藍牙設備在出廠前即提前設好兩個藍牙設備之間的配對信息,主端預存有從端設備的PIN碼、地址等,兩端設備加電即自動建鏈,透明串口傳輸,無需外圍電路干預。一對一應用中從端設備可以設為兩種類型,一是靜默狀態,即只能與指定的主端通信,不被別的藍牙設備查找;二是開發狀態,既可被指定主端查找,也可以被別的藍牙設備查找建鏈。四.小車的調試方案和調試結果(1)各模塊調試方案和結果:1、控制器模塊:打開小車開關,觀察小車在初始程序下是否工作正常。通過測試,控制器模塊工作正常。2、電機驅動模塊:燒錄電機控制程序,觀察兩個電機正反轉是否正常。通過測試,電機驅動模塊工作正常。3、藍牙模塊:下載手機藍牙APP,并給單片機燒錄藍牙控制程序,通過APP發送命令,若小車做出指定動作,則藍牙模塊正常工作。通過測試,藍牙模塊工作正常。4、電源模塊:安裝電池,打開小車開關,觀察小車電源燈是否亮。電源燈亮,電源模塊工作正常。5、發光二極管、蜂鳴器和靜態數碼管:打開小車開關,觀察發光二極管和蜂鳴器在初始程序下是否工作正常。通過測試,控制器模塊工作正常。(2)系統功能調試方案和結果:在keil軟件上編寫程序之后,生成.hex文件,并將它燒錄到單片機內,通過手機藍牙APP給小車發送命令,觀察小車是否完成了指定的命令動作,如不能則再次修改程序、檢查電路,直至發現錯誤或測試成功。五.遇到的問題和解決方案(1)硬件制作:1、由于初步接觸三極管,不能清楚分辨引腳,未能直接進行焊接,通過詢問老師,上網查找資料等方法,順利焊接成功;2、實際焊接元器件與電路圖有些許出入,通過參照模板及詢問老師,將所有的元器件都焊接正確;3、組員對各類元器件焊接經驗不足,焊接時經常出現各類細節問題處理不當,有時需拆下并重裝相關部件。(2)程序編寫:由于小組選定的課題是紅外遙控小車,但在紅外遙控小車的實現過程中遇到了無法解決的問題。當小車的電機工作時,小車的紅外模塊就不能正常工作,即當電機工作時,紅外接收始終輸出高電平,在更換紅外接收及多次修改程序后,斷定為小車電路結構問題,向老師反應這個問題后得到相同的答復。于是在老師的同意之后改為藍牙控制小車;由于有了紅外遙控的調試歷練,再加上藍牙遙控與紅外遙控在原理上并無太大區別,所以很快便實現了藍牙控制小車的所有功能。(3)功能調試:功能調試中共遇到兩個問題。一個是電機調速問題,在通過查閱資料和詢問老師之后,確定了利用延時函數改變占空比來模擬PWM控制小車行駛速度的方案。第二個問題是流水燈問題,在實現過程中發現用延時函數實現效果不佳,后經過多次試驗,改為利用計時器實現流水燈,效果良好。六、工程管理方案(1)人力資源配置:組長黃金朋:主要負責小車各部分電路焊接與調整,以及MV拍攝及后期加工。組員李曉宇:主要負責小車軟件部分,負責編程以實現小車各項功能。組員許煒嫻:主要負責撰寫終期檢查報告,以及協助小車MV拍攝。(2)項目進度計劃:首先完成了主板和各部件的焊接以及機械組裝;接著,小組成員先通過圖書館借閱相關圖書及網絡查找相關資料等方式,了解并學習單片機編程及藍牙遙控、電動機、LED燈、蜂鳴器等部分的工作原理;在充分學習之后,制定實現藍牙遙控小車相關功能的方案,并進行編程,實現各項功能;最后對小車進行一定的調試,完善方案,并最終完成藍牙小車的制作。七、總結與體會通過藍牙小車設計與制作,小組成員都受益匪淺,得到了很大的鍛煉,無論是在理論知識方面,還是動手能力方面,都得到了極大的提高,所以,總體上來說本次電子實習任務還是具有很大的意義的。首先,在藍牙小車硬件部分的制作中,小組成員通過合理的分工合作,互相幫助,更加扎實了焊接的基本功,此外也掌握了P型三極管和N型三極管的判別方法等等電子元件知識。然后在軟件制作部分,根據本次設計要求,本小組系統地閱讀了大量的資料,并認真分析了設計課題的需求,還系統學習了51系列單片機的工作原理及其使用方法,并獨立設計藍牙小車的整個項目。但是由于原本小組的課題是紅外遙控,卻因為小車的設計有問題,導致紅外遙控無法實現,所以在編程過程中小組成員遇到的失敗是很多的,但失敗是成功之母,失敗也是一種寶貴的財富,所以在失敗中,小組成員學會了如何面對,如何尋找失敗的原因。通過本次課題設計,加強了小組成員對專業知識的運用能力,同時也增強了自學能力、收集資料能力、動手能力以及分析解決問題的能力。當然,最重要的就是小組成員掌握了一種新的工具——keil,通過keil對單片機進行編程可以實現很多的控制功能。總之,在課題設計的過程中,無論是對于學習方法還是理論知識,我們都有了新的認識,受益匪淺,這將激勵我們在今后再接再厲,不斷完善自己的理論知識,提高實踐運作能力。八、實物圖九、源程序#include<reg51.h>#include<intrins.h>#defineLEDP2//靜態數碼管#defineWATERP1 //流水燈sbitIB1=P0^0; //LG9110引腳sbitIA1=P0^1;sbitIB2=P0^2;sbitIA2=P0^3;sbitLEDR=P2^0; //D11sbitLEDL=P0^7; //D10sbitBeep=P0^6; //蜂鳴器sbithit=P3^5; //V3voidIrInit(); //初始化函數voidConfiguration(); //初始化中斷voidbeep(unsignedcharc);//蜂鳴函數voiddelay(unsignedchari);//延時函數voidadvance(); //前進函數voidback(); //后退函數voidleft(); //左轉函數voidright(); //右轉函數unsignedchars=3,dat=0x00,Time=0; //s用于調節速度,dat用于存儲接收到的藍牙信號,Time用于流水燈計時unsignedcharcodedate[4]={0x00,0x9f,0x25,0x0d}; //存儲靜態數碼管輸出voidmain(){ //主函數 IrInit(); Configuration(); while(1){ switch(dat){ case0x00:LEDL=LEDR=1;break; //停車 case0x40:advance();break; //前進 case0x41:back();break; //后退 case0x42:left();break; //左轉 case0x43:right();break; //右轉 } }}//初始化函數voidIrInit(){ P1=0xff; //熄滅靜態數碼管 LED=date[s]; //顯示當前速度 IA1=IA2=IB1=IB2=0; //停止電機 LEDL=LEDR=1; //熄滅前燈 WATER=0Xfe; //流水燈初始 Beep=1; //初始化蜂鳴器}//初始化中斷voidConfiguration(){TMOD=0x21; //選擇計時器工作方式TH0=0x3C; //設置初始值,定時50MSTL0=0xB0;ET0=1; //打開定時器0中斷TR0=1; //啟動定時器0 SCON=0X50; //設置為工作方式1 TH1=0XFD; //計數器初始值設置,注意波特率是9600的 TL1=0XFD; ES=1; //打開接收中斷 EA=1; //打開總中斷 TR1=1; //打開計數器}//串口中斷用于接收藍牙信號voidUsart()interrupt4{ switch(SBUF){ case0x40: //前進 case0x41: //后退 case0x42: //左轉 case0x43: //右轉 dat=SBUF;break; case0x46: if(s>1)s--; LED=date[s];break; //減速 case0x45: if(s<3)s++; LED=date[s];break; //加速 default:dat=0x00; } RI=0;//清除接收中斷標志位}//定時器中斷用于流水燈voidTimer0()interrupt1{ TH0=0x3C; //設置初始值TL0=0xB0; Time++; if((Time==(4-s))||(Time>3)){ //滿足條件時移動流水燈 WATER=_crol_(WATER,1); Time=0; }}//延時函數voiddelay(unsignedchari){unsignedchara,b;for(;i>0;i--)for(b=38;b>0;b--)for(a=130;a>0;a--);}//前進函數voidadvance(){ LEDL=LEDR=0; if(hit==0)return;//防碰撞 IA1=IA2=1,IB1=IB2=0; delay(s+1); IA1=IA2=IB1=IB2=0; delay(3-s);}//后退函數voidback(){ unsignedchari,j; for(i=0;i<2;i++){ for(j=0;j<6;j++){ IA1=IA2=0,IB1=IB2=1; beep(s+1); IA1=IA2=IB1=IB2=0; beep(3-s); } LEDL=!LEDL,LEDR=!LEDR; //使前燈閃爍 }}//左轉函數voidleft(){ LEDL=0,LEDR=1; IB1=IA2=1,IA1=IB2=0; beep(s+1); IA1=IA2=IB1=IB2=0; beep(3-s);}//右轉函數voidright(){ LEDL=1,LEDR=0; IA1=IB2=1,IB1=IA2=0; beep(s+1); IA1=IA2=IB1=IB2=0; beep(3-s);}//蜂鳴函數voidbeep(unsignedcharc){ unsignedchara,b; for(c=c*10;c;c--){ Beep=!Beep; for(a=10;a;a--) for(b=45;b;b--); }}目錄第一章總論11、項目名稱及承辦單位12、編制依據43、編制原則54、項目概況65、結論6第二章項目提出的背景及必要性81、項目提出的背景82、項目建設的必要性9第三章項目性質及建設規模131、項目性質132、建設規模13第四章項目建設地點及建設條件171、項目建設地點172、項目建設條件17第五章項目建設方案251、建設原則252、建設內容253、工程項目實施33第六章節水與節能措施371、節水措施372、節能措施38第七章環境影響評價391、項目所在地環境現狀392、項目建設和生產對環境的影響分析393、環境保護措施……404、環境影響評價結論……………..……………42第八章勞動安全保護與消防441、危害因素和危害程度442、安全措施方案443、消防設施…………...45第九章組織機構與人力資源配置461、組織機構462、組織機構圖46第十章項目實施進度481、建設工期482、項目實施進度安排483、項目實施進度表48第十一章投資估算及資金籌措491、投資估算依據492、建設投資估算49目錄TOC\o"1-2"\h\z\u第一章總論 11.1項目概況 11.2可行性研究報告編制依據及原則 11.3可行性研究報告的內容 3第二章項目背景與建設的必要性 42.1項目建設的背景 42.2項目建設的必要性 52.3結論 5第三章效益分析 73.1社會效益 73.2經濟效益 83.3環境效益 83.4評價結論 9第四章項目選址及建設條件 104.1項目選址 104.2項目建設地點 104.3項目建設條件 10第五章項目建設方案 175.1方案設計原則 175.2總體方案設計 17HYPERLINK\l"_Toc

溫馨提示

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

評論

0/150

提交評論