




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 本科畢業設計(論文)基于單片機的智能小車控制專 業: 測控技術與儀器 姓 名: 咸蛋小超人 2013年 6 月基于單片機的智能小車控制 摘要:智能化作為現代電子產品的新趨勢,是今后的電子產業的發展方向。智能化設計的電子產品可以按照預先設定的模式在一個環境里自動運作,不需要人為的管理,可應用于科學勘探、環境監測、智能家居等方面。基于單片機的智能小車控制就是其中的一個體現。本設計實現了一種基于51單片機的自動避障智能模型車系統,通過紅外傳感器采集路況信息,通過對檢測信息的分析,自動控制轉向電機轉向,改變行駛路徑,繞過障礙物,從而實現車穩定避障。本課題設計的智能小車,具有自動避障功能,超聲波測距報
2、警,無線電遙控等功能。 關鍵詞:智能車;51單片機;避障;紅外線Smart car based on SCM control Abstract:As a new trend of modern electronic products, intelligent is the developmental direction of electronic industry after then. Electronic products, which are intelligently designed, can automatically operate following the mode that
3、 is pre-set. Without the management of human beings, it can be used for scientific exploring, environmental monitoring, intelligent home furnishing, etc. One of the embodiments is the intelligent control car which is based on single chip microcomputer. In the design, an intelligent model car system
4、based on MCU 51 has been realized. It can collect traffic information with infrared sensors. Meanwhile, by the analysis of information examined, it can transfer from automatic control to motor steering in order to change the route and dodge the obstacles so that the steady avoidance of the barrier c
5、an come true.In this paper, a car with the ability of intelligent judgment has been designed and made. It functions as the device which can dodge obstacles automatically, alarm with ultrasonic distance examination, and remote control by radio. Key words: Smart Cart;Single-chip 51;Obstacle Avoidance;
6、Infrared目 錄序 言3第1章 總體設計方案4 1.1課題任務分析4 1.2 方案論證41.2.1小車遙控部分51.2.2小車驅動部分6第2章 系統硬件構成72.1系統設計原理72.2主要元器件簡介72.2.1 STC89C52RC簡介72.2.2 NRF24L01無線收發芯片簡介82.2.3 L298N芯片直流電機驅動模塊92.2.4 紅外避障模塊92.2.5 HC-SR04超聲波測距模塊112.2.6 蜂鳴器驅動電路132.2.7 液晶顯示電路132.2.8遙控部分獨立按鍵電路14第3章 軟件的設計與說明153.1軟件設計153.2軟件的說明163.2.1 遙控部分主程序流程163.
7、2.2 24L01子程序流程圖173.2.3 小車部分主程序流程圖18第4章 調試與總結204.1硬件部分204.1.1硬件的焊接204.1.2 24L01無線電模塊204.1.3 外接電源模塊204.2 軟件部分214.2.1 超聲波模塊214.3 小車聯調214.4 調試的總結23參考文獻24致 謝26附錄27附件1 L298N電機驅動模塊27附件2 小車側視圖28附件3 小車俯視圖29附件4 小車的遙控部分30附件5 小車最終硬件圖31附件6 程序清單321.遙控部分程序322.小車部分程序41附件7 元器件清單50 附件8 英文資料及中文翻譯51序 言隨著我國科學技術的進步,智能化和自
8、動化技術越來越普及,各種高科技也廣泛應用于智能小車和機器人玩具制造領域,使智能機器人越來越多樣化。智能小車是一個多種高新技術的集成體,它融合了機械、電子、傳感器、計算機硬件、軟件、人工智能等許多學科的知識,涉及到當今許多前沿領域的技術1。而智能電動車正是智能機器人的一種,具有不可估量的實際意義。智能車輛是一個運用計算機、傳感、信息、通信、導航、人工智能及自動控制等技術來實現環境感知、規劃決策和自動行駛為一體的高新技術綜合體。它在軍事、民用和科學研究等方面已獲得了應用,對解決道路交通安全提供了一種新的途徑。隨著汽車工業的迅速發展,關于汽車的研究也就越來越受人關注。全國電子大賽和省內電子大賽幾乎每
9、次都有智能小車這方面的題目,全國各高校也都很重視該題目的研究,許多國家已經把電子設計比賽作為創新教育的戰略性手段。電子設計涉及到多個學科,機械電子、傳感器技術、自動控制技術、人工智能控制、計算機與通信技術等等,是眾多領域的高科技2。電子設計技術,它是一個國家高科技實例的一個重要標準,可見其研究意義很大。第1章 總體設計方案 1.1課題任務分析 當前的電動小汽車基本上采取的是基于純硬件電路的一種開環控制方法, 或者是直線行使, 或者是在遙控下作出前進、后退、轉彎、停車等基本功能。但是這不能滿足某些特殊場合下的要求。基于此,本文設計了智能小車控制系統。智能小車是一個運用傳感器、單片機、信號處理、電
10、機驅動及自動控制等技術來實現環境感和自動行駛為一體的高新技術綜合體,它在軍事、民用和科學研究等方面已獲得了應用。 通過各種選題之后,我們發現制作智能小車非常有意思,它喚起我們對玩具的革新思想,智能小車制作的興趣。自己遇到過的汽車的功能是怎樣的,想通過自己的手創作出屬于自己的智能汽車。也夾雜一種童年時對玩具智能化的假想。所以我選定制作單片機智能小車。 通過這次設計,掌握51單片機的原理,了解簡單傳感器組成原理,初步掌握傳感器的調整及測試方法,提高動手能力和排除故障的能力。同時通過本課題設計與裝配、調試,提高自己的動手能力,鞏固已學的理論知識,建立單片機理論和實踐的結合,了解傳感器各單元電路之間的
11、關系及相互影響,從而能正確設計、計算定時計數的各個單元電路。初步掌握傳感器的調整及測試方法。提高動手能力和排除故障的能力。本設計采用直流減速電機,電機專用驅動芯片L298N進行電機驅動控制,主控芯片為STC89C52,測距部分采用超聲波模塊,控制器采用24L01無線電通信模塊,自動避障部分采用紅外收發模塊。本次設計雖然只是一個演示模型,但是具有充分的科學性和實用性。首先我們根據交通路面的復雜情況,按照適當的比例制作出一個路況模型,包括彎道、直道以及路面上設置的障礙物等。在彎、直道上,小車沿著預定軌道自由行使,當小車遇到障礙物時,脈沖調制的紅外線傳感器將檢測到的信號發送給單片機,單片機根據程序發
12、出相應的控制信號控制小車自動避開障礙物。由無線模塊控制小車進行倒車、前進、左轉、右轉等動作。 1.2 方案論證 1.2.1小車遙控部分方案一:小車的無線通信模塊采用紅外遙控,紅外收發遙控是目前大部份遙控小車采用的遙控手段,紅外遙控具有代碼簡單,操作性強的特點。如圖1-1為紅外遙控模塊實物圖。圖1-1 紅外遙控模塊實物圖 方案二:小車的通信模塊采用無線電NRF24L01模塊,NRF24L01是一款工作在2.42.5GHz,世界通用ISM頻段的單片無線收發器芯片。無線收發器包括:頻率發生器、增強型SchockburstTM模式控制器、功率放大器、晶體振蕩器、調制器、解調器。輸出功率、頻道選擇和協議
13、的設置可以通過SPI接口進行設置。如1-2為NRF24L01無線模塊實物圖。圖1-2 NRF24L01無線模塊實物圖 方案論證:方案一中的紅外遙控模塊的信號傳送距離有限,并且發送和接收的紅外信號容易受到干擾。NRF20L01發射頻率高,所受到的干擾影響較小,無線通信的距離比紅外的要長許多。小車的遙控是小車的最主要的部分之一,所以選擇NRF24L01無線通信模塊,故選擇方案一。 1.2.2小車驅動部分方案一:小車的電機驅動部分采用自己搭建的9012三極管電路來實行小車的驅動,9012三極管電路具有電路簡單,操作方便的等特點。方案二:小車的電機驅動部分采用L298N芯片直流電機驅動模塊,該模塊具有
14、較大的驅動帶載能力,驅動部分端子供電范圍Vs:+5V+35V,并且另外自帶了5V、3V的輸出端口。方案論證:本設計為4輪驅動的小車,對于小車驅動部分要求能夠有較大的帯載能力,并且在小車的實際設計過程中,需要不同的輸出電壓來提供給小車的各個模塊。因此綜上所述采用方案二,小車的電機驅動部分使用L298N芯片直流電機驅動模塊。第2章 系統硬件構成 2.1系統設計原理 本設計主要分為兩部分:遙控部分和小車部分。遙控部分主要由電源電路,單片機最小系統,無線電模塊組成,遙控部分的系統框圖如圖2-1所示。圖2-1 遙控系統框圖 小車部分由電源電路,單片機最小系統,顯示電路,無線電木塊,報警電路,超聲波電路等
15、電路模塊組成,小車部分的系統框圖如圖2-2所示。圖2-2 小車的系統框圖 2.2主要元器件簡介 2.2.1 STC89C52RC簡介 常用的單片機有很多種:Intel8051系列、Motorola和M68HC系列、Atmel的AT89系列、臺灣華邦(Winbond)W78系列、荷蘭PiliPs的PCF80C51系列、MicrochiP公司系列4位單片機、臺灣義隆的EM-78系列等1。本次設計最終選用了STC89C52單片機。本系統采用最常用的STC89C52單片機,它是一種帶4K字節閃爍可編程可擦除只讀存儲器(FPEROMFalsh Programmable and Erasable Read
16、 Only Memory)的低電壓,高性能CMOS 8位微處理器。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的STC89C52是一種高效微控制器。STC89C52單片機為很多嵌入式系統提供了一種靈活性高且價廉的方案。6引腳排列如圖2-3所示。圖2-3 STC89系列引腳排列 2.2.2 NRF24L01無線收發芯片簡介 NRF24L01是一款工作在2.4-2.5GHz,世界通用ISM頻段的單片無線收發器芯片。無線收發器包括:頻率發生器、增強型SchockburstTM模式控制
17、器、功率放大器、晶體振蕩器、調制器、解調器。輸出功率、頻道選擇和協議的設置可通過SPI接口進行設置。極低的電流消耗:當工作在發射模式下發射功率為-6dBm時電流消耗為9mA,接收模式時為12.3mA。掉電模式和待機模式下電流消耗更低。NRF24L01引腳排列如圖2-4所示。圖2-4 NRF24L01引腳排列 2.2.3 L298N芯片直流電機驅動模塊該模塊由L298N作為雙H橋直流電機驅動芯片,驅動部分端子供電范圍Vs:+5V+35V。如果在模塊上取電壓供電,則模塊供電范圍為Vs:+7V+35V。模塊的驅動不封峰值電流Io為2A。其他相關參數見表2-1。模塊的實物圖見附錄附件1(注:紅色線框部
18、分為電源接口)。表2-1 L298N芯片直流電機驅動模塊產品參數邏輯部分端子供電范圍Vss 5V7V(可板內取電5V) 邏輯部分工作電流范圍 036mA 控制信號輸入電壓范圍 低電平:0.3VVin1.5V 高電平:2.3VVinVss 使能信號輸入電壓范圍 低電平:0.3Vin1.5V(控制信號無效) 高電平:2.3VVinVss(控制信號有效) 最大功耗 20W(溫度T75時) 存儲溫度 25130 驅動板尺寸 82mm*57mm*33mm (帶固定銅柱,散熱片高度) 驅動板重量 60g 其他擴展 控制方向指示燈、 邏輯部分板內取電接口 2.2.4 紅外避障模塊紅外避障的原理:用紅外線傳感
19、器進行避障。紅外線發射頭與接收頭于一體的檢測開關,其工作原理是根據發射頭發出的光束,被物體反射,接收頭據此做出判斷是否有障礙物。當有光線反射回來時,輸出低電平。當沒有光線反射回來時,輸出高電平。單片機根據接收頭電平的高低做出相應控制,避免小車碰到障礙物。由于接收管輸出TTL電平,有利于單片機對信號的處理。紅外接收二極管又叫紅外光電二極管,也可稱紅外光敏二極管。它廣泛用于各種家用電器的遙控接收器中,如音響、彩色電視機、空調器、VCD視盤機、DVD視盤機以及錄像機等。紅外接收二極管能很好地接收紅外發光二極管發射的波長為94Onm的紅外光信號,而對于其他波長的光線則不能接收。因而保證了接收的準確性和
20、靈敏度。 小車采用紅外線傳感器進行避障的電路原理圖如下圖2-5所示,實物圖如圖2-6所示。紅外模塊的功能指標如表2-2所示。表2-2 紅外模塊的功能指標使用芯片 NE555 工作電壓 3.3V - 5V 輸出模式 數字信號 測量距離 1CM - 200CM 探測距離是否可以調節 是 檢測信號 探測到障礙物為高電平,無障礙物或超出探測范圍輸出低電平 LED 紅色為Power指示燈,綠色為Status指示燈 圖2-5 紅外線傳感器進行避障的電路原理圖圖2-6 紅外線傳感器進行避障的實物圖 2.2.5 HC-SR04超聲波測距模塊HC-SR04 超聲波測距模塊可提供 2cm-400cm 的非接觸式距
21、離感測功能,測距精度可達高到 3mm;模塊包括超聲波發射器、接收器與控制電路。基本工作原理:(1)采用IO口TRIG觸發測距,給至少10us的高電平信號;(2)模塊自動發送8個40khz的方波,自動檢測是否有信號返回;(3)有信號返回,通過IO口ECHO 輸出一個高電平,高電平持續的時間就是超聲波從發射到返回的時間。測試距離=(高電平時間*聲速(340M/S)/2。 HC-SR04超聲波測距模塊的時序圖如圖2-7所示。圖2-7 超聲波模塊時序圖以上時序圖表明你只需要提供一個 10uS 以上脈沖觸發信號,該模塊內部將發出 8 個 40kHz 周期電平并檢測回波。一旦檢測到有回波信號則輸出回響信號
22、。回響信號的脈沖寬度與所測的距離成正比。由此通過發射信號到收到的回響信號時間間隔可以計算得到距離。公式:uS/58=厘米或者 uS/148=英寸;或是:距離=高電平時間*聲速(340M/S)/2;建議測量周期為 60ms 以上,以防止發射信號對回響信號的影響。 HC-SR04超聲波測距模塊的電路圖如圖2-8所示,實物圖如圖2-9所示。圖2-8 超聲波模塊的電路圖圖2-9 超聲波模塊實物圖 2.2.6 蜂鳴器驅動電路 蜂鳴器是一種一體化結構的電子訊響器,采用直流電壓供電,廣泛應用于計算機、打印機、復印機、報警器、電子玩具、汽車電子設備、電話機、定時器等電子產品中作發聲器件。蜂鳴器主要分為壓電式蜂
23、鳴器和電磁式蜂鳴器兩種類型。蜂鳴器在電路中用字母“H”或“HA”(舊標準用“FM”、“LB”、“JD”等)表示。由于自激蜂鳴器是直流電壓驅動的,不需要利用交流信號進行驅動,只需對驅動口輸出驅動電平并通過三極管放大驅動電流就能使蜂鳴器發出聲音(其驅動電路如圖2-10所示),利用定時器來做定時,通過定時翻轉電平產生符合蜂鳴器要求的頻率的波形,這個波形就可以用來驅動蜂鳴器了。圖2-10 蜂鳴器驅動電路 2.2.7 液晶顯示電路 該設計的顯示部分采用LCD1602來顯示超聲波測距模塊測得的距離。對于現實電路我們可以采用數碼管,也可以采用液晶顯示。液晶顯示相對于數碼管顯示電路更簡潔,顯示更明了,故我們采
24、用液晶顯示電路。液晶又分字符型和點陣型,我們使用的液晶是字符型液晶。LCD1602自帶字符庫,不需要查找代碼,英文字符可直接使用。液晶電路使用時,如果發現液晶不亮可以調節連接液晶的電位器,調節液晶的亮度。液晶顯示電路如圖2-11所示。圖2-11 液晶顯示電路 2.2.8遙控部分獨立按鍵電路 遙控部分的獨立按鍵與單片機的接口設置為P2.0、P2.1、P2.2、P2.3、P2.4,分別控制小車的前進、后退、左轉彎、右轉彎、以及功能切換。獨立按鍵采用低電平觸發,即當按下按鍵時給單片機一個低電平信號,單片機隨后做出相應的處理,當按鍵松開時,單片機接收到一個高電平信號,單片機隨后繼續做出相應處理。遙控部
25、分的獨立按鍵電路如圖2-12所示。圖2-12 遙控部分獨立按鍵電路第3章 軟件的設計與說明 3.1軟件設計系統功能的實現依賴于軟、硬件的協同工作。主控芯片為STC89C52RC單片機。單片機控制軟件實現遙控和小車的各項功能。程序編譯采用Keil uVision4編程軟件,Keil uVision4程序編譯界面如圖3-1所示。程序部分采用目前單片機最通用的C語言進行編程。程序的燒錄軟件采用STC_ISP_V479軟件燒寫編譯好的HEX文件,STC_ISP_V479軟件程序燒寫界面如圖3-2所示。圖3-1 Keil uVision4編程軟件界面圖3-2 STC_ISP_V479軟件程序燒寫界面 3
26、.2軟件的說明 3.2.1 遙控部分主程序流程遙控部分主程序流程圖如圖3-3所示。程序從主函數開始執行,24L01無線模塊初始化,同時在主函數中定義單片機口對應的按鍵按下時所發出的函數值。接下來判斷是否有按鍵按下,如果有按鍵按下,則發送相應的按鍵對應的函數值,接著判斷是否又有按鍵按下。如果未發現按鍵按下則在主函數中循環判斷是否有按鍵按下。圖3-3 遙控主程序流程圖 3.2.2 24L01子程序流程圖 24L01子程序流程圖如圖3-4所示,本模塊子程序采用收發一體的驅動程序,即使該模塊既可以在需要時發送信號,又可以在需要時接收信號。24L01子程序模塊先初始化,初始化的同時在設置的寫入reg函數
27、中寫入本地地址,寫入接收端地址,并且設置頻道0自動ACK應答允許。設置24L01的允許接收地址只有頻道0,并且是信道工作在2.4GHz,以及設置數據長度為32字節,發射速率為1MHz。圖3-4 24L01子程序流程圖 3.2.3 小車部分主程序流程圖 小車部分主程序流程圖如圖3-5所示。程序從主函數開始執行,24L01無線模塊初始化,液晶顯示模塊初始化,24L01無線電模塊初始化,超聲波模塊初始化。各個模塊初始化完畢后,單片機判斷是否接受到了信號,如果接收到信號,則判斷相應的按鍵值,如果沒有接收到按鍵值則返回繼續判斷是否接受到信號。接收到信號后,小車開始執行鍵值對應的相應的命令。而超聲波測距,
28、并在液晶上顯示相應距離,危險距離報警都是貫穿在整個while(1)的語句中的。圖3-5 小車部分主程序流程圖第4章 調試與總結 基于單片機的智能小車控制有許多的模塊,在做整體設計之前首先是對每個模塊的調試。只有在確保每個模塊都正常的情況下才能進行總體的設計和總體的調試。每個模塊都需要軟硬件的調試才能確保模塊的正常。 4.1硬件部分 4.1.1硬件的焊接 單片機的電路系統相對于簡單一些,對于焊接只要多練習就不會出現問題,但是,單片機的電路系統中只要出于一處的錯誤,則會對檢測造成很大的不便,而且電路的交叉線較多,對于各種鋒利的引腳都要注意處理,否則會刺破帶有包皮的導線,則會對電路造成短路現象。 在
29、本次單片機的設計調試中遇到了很多的問題。回想這些問題只要認真多思考都是可以避免的,主要問題在于單片機上的測試用燈不亮,原因出于焊接時間過長導致電路板上的金屬片脫落,造成斷路。解決方案:重新引線使電路重新導通。 4.1.2 24L01無線電模塊24L01模塊是直接購買的模塊,在調試的時候按照商家提供的時序圖,編寫程序后卻一直無法通信,既不接受信號也不發送信號。首先排除了程序上的錯誤,然后對硬件各部分電壓進行測量并無發現異常,最后詳細的閱讀了說明書,發現24L01是3.3V3.6V電壓供電,而自己設計的電源部分缺少了去耦電容導致了硬件的無法正常工作。解決方案:在3.3V電源處并入1個104瓷片電容
30、,1個100uF電解電容,減少電源的波動對模塊帶來的影響。 4.1.3 外接電源模塊在剛剛接觸小車的時候,本設計的小車應為是4輪驅動的,所以比一般的小車更加吃電流,剛剛開始使用的普通的電池僅僅調試幾次就沒電了,而使用的兩節3.7V的充電電池串聯效果也不盡理想,該小車使用的減速電機對電流的要求非常大,故購買了SONY的電腦適配器,該適配器可以提供19.5V的輸出電壓,以及高達4.5A的直流電流。所以設計了采用7805,與7809并聯的方式作為SONY適配器下級穩壓輸出,成為了小車的外部供電電源。由于小車的電流需求非常大,小車在該電源的供電下只能維持10s的行駛時間。在接下來的檢查中發現,由于夏天
31、天氣熱,7809散熱比較慢,而單個7809的最高輸出電流在1.5A。7809由于溫度過高進入了掉電保護模式。解決方案:在7809旁邊并入一個7809,相當于加大了7809的輸出電流。在此同時,在7809的片子上加上散熱片,使7809及時散熱。該方案的實施使得小車的續航能力大大提高。4.2 軟件部分 4.2.1 超聲波模塊超聲波模塊是直接購買的模塊,在調試的時候按照商家提供的時序圖,編寫程序。但是編寫后超聲波測量時值測量一次,不能一直保持測量狀態。經檢查后發現,電路焊接正常,接口正常,所以排除了硬件問題的可能性。在接下來程序的檢查中發現了超聲波中count()計算函數放在了while(1)函數外
32、面。 解決方案:超聲波中count()計算函數放在while(1)函數的循環內,并且根據時序圖加上1ms的延時。該方案的實施,使得小車能夠一直保持測距的狀態,并且在LCM1602上一直持續顯示正確的數值。 4.3 小車聯調 小車的聯調是一個非常復雜的過程,在此過程中,不僅僅是對平時的專業知識的考驗,更是對自己的耐心的考驗。小車聯調的時候遇到了很多問題:(1) 在無線電模塊調試的時候,小車執行的動作與發射的信號的所需要執行的動作不一致,要求小車往左的時候小車并沒有往左轉彎,要求小車前進的時候小車也并沒有前進。 解決方案:對小車的控制電機轉動的IO口進行逐一排查,找出問題為小車的IO口與程序定義的
33、有所不同。重新再程序中定義IO口后,小車就能按照無線信號發射的要求做出相應的動作。(2) 當無線電模塊發射了相應的信號后,小車執行的動作正確,但是有時候并沒有執行相應的動作,如同“聾啞”一般不接收信號。當按鍵多次按下后,小車才執行相應的動作。解決方案:小車的“聾啞”并不是真正的“聾啞”,無線電模塊在發射信號的時候并不是每次都能發射出去,發射出去的信號小車的接收部分的無線模塊不一定能夠接收。而且,按鍵的抖動也會對無線的發射信號產生影響。故在程序中有按鍵按下時,發射5次信號信號,提高無線模塊的信號發射次數,并且在按鍵程序中加入10ms的去抖程序。實施該方案后小車對信號的接受靈敏度大幅度提高,能夠準
34、確快速的做出相應的信號所要求的動作。 4.4 調試的總結通過這次設計,掌握51單片機的原理,了解簡單傳感器組成原理,初步掌握傳感器的調整及測試方法,提高動手能力和排除故障的能力。同時通過本課題設計與裝配、調試,提高自己的動手能力,鞏固已學的理論知識,建立單片機理論和實踐的結合,了解傳感器各單元電路之間的關系及相互影響,從而能正確設計、計算定時計數的各個單元電路。初步掌握傳感器的調整及測試方法。提高動手能力和排除故障的能力。調試期間要多向同學老師請教,有問題就該虛心請教。 經過多次的反復測試與分析,可以對電路的原理及功能更加熟悉,同時提高了設計能力與對電路的分析能力,同時在軟件的編程方面得到更高
35、的提高,對編程能力得到加強,同時對所學的知識得到很大的提高與鞏固。參考文獻1 徐國華.移動機器人的發展現狀及其趨勢J.機器人技術與應用,2001,(03):1102-1103,1150.2 彭宏業,段哲民編著.小型舞蹈機器人的驅動系統設計J.國外電子元器件.2005,(04):56-65.3 陳南主編.定位控制器的設計與實現J.西安科技大學學報. 2003.4譚浩強C語言程序設計M北京:清華大學出版社,19985蘇衛東,任思聰等溫控箱數學模型的建立及其自適應PID控制J中國慣性技術學報,1995年,(3):4.6萬福君. MCS-51單片機原理、系統設計與應用M. 北京:清華大學出版社,200
36、8.7 彭宏業,段哲民編著.小型舞蹈機器人的驅動系統設計J.國外電子元器件.2005,(4).8 劉甘娜等編著.IBM-PC微機原理及接口技術J.西安:西安電子科技大學出版社,1998.9孫廣清便攜式溫度傳感標定裝置D西北工業大學碩士學位論文,2007.10 鮑麗星,陳曉爭一種高精度信號源的設計J南京航空航天大學,2008,16(4):588-59011 黨宏社.智能車輛系統發展及其關鍵技術概述J公路交通科技,2002.(4)12 林敏.簡易數字化語音存儲與回放系統J.儀表技術,2008,28(9):13-18.13 余祖俊.微機監測與控制應用系統設計, 北方交通大學出版社,2001.1214
37、 溫志明.運動控制系統分析與應用J,國防工業出版社,2008.215 WANG SH X,WU G N,JIANG W,et al.The principle and illumination applies of light emitting diodeJ.Light and Lighting, 2006,14(5):21-23.16I.M Filanvsky,H.Baltes.CMOS Schmit Trigger DesignJ.IEEE Transactioms on Circuits and System-Fundamental Theory andApplications.1994
38、,41(1):46-49.致 謝 在作品完成之際,我們要特別感謝XXX老師的熱情關懷和悉心指導。在我們作品制作的過程中,老師們給了我們很多耐心的指導和啟發,不僅讓我學到了專業知識,還讓我學到了很多做人的道理。特別是他們廣博的學識、深厚的學術素養、嚴謹的治學精神和一絲不茍的工作作風使我們終生受益,在此表示真誠地感謝。 在作品的制作過程中,也得到了許多同學的寶貴建議,在此一并致以誠摯的謝意。感謝所有關心、支持、幫助過我們的朋友。 最后,向在百忙中抽出時間對本文進行評審并提出寶貴意見的各位領導老師表示衷心地感謝!由于自身水平有限,設計中一定存在很多不足之處,敬請各位老師批評指正。附錄附件1 L298
39、N電機驅動模塊附件2 小車側視圖附件3 小車俯視圖附件4 小車的遙控部分附件5 小車最終硬件圖附件6 程序清單1.遙控部分程序#include <reg52.h>#include <intrins.h>typedef unsigned char uchar;typedef unsigned char uint;/*NRF24L01端口定義*sbit MISO=P10;sbit MOSI=P11;sbitSCK =P12;sbitCE =P13;sbitCSN=P14;sbitIRQ=P15;/*按鍵*sbitKEY1=P20;sbitKEY2=P21;sbitKEY3=
40、P22;sbitKEY4=P23;sbitKEY5=P24;/*NRF24L01*#define TX_ADR_WIDTH 5 / 5 uints TX address width#define RX_ADR_WIDTH 5 / 5 uints RX address width#define TX_PLOAD_WIDTH 20 / 20 uints TX payload#define RX_PLOAD_WIDTH 20 / 20 uints TX payloaduint const TX_ADDRESSTX_ADR_WIDTH= 0x34,0x43,0x10,0x10,0x01;/本地地址ui
41、nt const RX_ADDRESSRX_ADR_WIDTH= 0x34,0x43,0x10,0x10,0x01;/接收地址uchar TxBuf20; / /*NRF24L01寄存器指令*#define READ_REG 0x00 / 讀寄存器指令#define WRITE_REG 0x20 / 寫寄存器指令#define RD_RX_PLOAD 0x61 / 讀取接收數據指令#define WR_TX_PLOAD 0xA0 / 寫待發數據指令#define FLUSH_TX 0xE1 / 沖洗發送 FIFO指令#define FLUSH_RX 0xE2 / 沖洗接收 FIFO指令#def
42、ine REUSE_TX_PL 0xE3 / 定義重復裝載數據指令#define NOP 0xFF / 保留/*SPI(nRF24L01)寄存器地址*#define CONFIG 0x00 / 配置收發狀態,CRC校驗模式以及收發狀態響應方式#define EN_AA 0x01 / 自動應答功能設置#define EN_RXADDR 0x02 / 可用信道設置#define SETUP_AW 0x03 / 收發地址寬度設置#define SETUP_RETR 0x04 / 自動重發功能設置#define RF_CH 0x05 / 工作頻率設置#define RF_SETUP 0x06 / 發射
43、速率、功耗功能設置#define STATUS 0x07 / 狀態寄存器#define OBSERVE_TX 0x08 / 發送監測功能#define CD 0x09 / 地址檢測 #define RX_ADDR_P0 0x0A / 頻道0接收數據地址#define RX_ADDR_P1 0x0B / 頻道1接收數據地址#define RX_ADDR_P2 0x0C / 頻道2接收數據地址#define RX_ADDR_P3 0x0D / 頻道3接收數據地址#define RX_ADDR_P4 0x0E / 頻道4接收數據地址#define RX_ADDR_P5 0x0F / 頻道5接收數據地
44、址#define TX_ADDR 0x10 / 發送地址寄存器#define RX_PW_P0 0x11 / 接收頻道0接收數據長度#define RX_PW_P1 0x12 / 接收頻道0接收數據長度#define RX_PW_P2 0x13 / 接收頻道0接收數據長度#define RX_PW_P3 0x14 / 接收頻道0接收數據長度#define RX_PW_P4 0x15 / 接收頻道0接收數據長度#define RX_PW_P5 0x16 / 接收頻道0接收數據長度#define FIFO_STATUS 0x17 / FIFO棧入棧出狀態寄存器設置/*void Delay(unsi
45、gned int s);void inerDelay_us(unsigned char n);void init_NRF24L01(void);uint SPI_RW(uint uchar);uchar SPI_Read(uchar reg);void SetRX_Mode(void);uint SPI_RW_Reg(uchar reg, uchar value);uint SPI_Read_Buf(uchar reg, uchar *pBuf, uchar uchars);uint SPI_Write_Buf(uchar reg, uchar *pBuf, uchar uchars);uns
46、igned char nRF24L01_RxPacket(unsigned char* rx_buf);void nRF24L01_TxPacket(unsigned char * tx_buf);/*長延時*void Delay(unsigned int s)unsigned int i;for(i=0; i<s; i+);for(i=0; i<s; i+);/*uint bdata sta; /狀態標志sbitRX_DR=sta6;sbitTX_DS=sta5;sbitMAX_RT=sta4;/*/*延時函數/*/void inerDelay_us(unsigned char
47、n)for(;n>0;n-)_nop_();/*/*NRF24L01初始化/*/void init_NRF24L01(void) inerDelay_us(100); CE=0; / chip enable CSN=1; / Spi disable SCK=0; / Spi clock line init highSPI_Write_Buf(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH); / 寫本地地址SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, RX_ADDRESS, RX_ADR_WIDTH); / 寫接收端地址SPI_RW_Reg(WRITE_REG + EN_AA, 0x01); / 頻道0自動ACK應答允許SPI_RW_Reg(WRITE_REG + EN_RXADDR, 0x01);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園特殊兒童進餐安全與風險控制
- 高質量發展背景下心理專科醫院成本精細化管理研究
- 學生心理健康問題的網絡表現與應對策略
- 針織與鉤針編織物風格化設計-洞察闡釋
- 云存儲解決方案-洞察闡釋
- 2025年中國激光模切身板數據監測研究報告
- 2025年中國清渣劑市場調查研究報告
- 宮頸癌HPV疫苗研究-洞察及研究
- 2025年中國流量比便閥市場調查研究報告
- 拼多多大數據在營銷策略中的應用
- 【課件】科技創新與研發管理培訓研討會
- 2024年地理中考模擬考試地理(貴州貴陽卷)(A4考試版)
- 2025年人力資源管理期末考試試卷及答案
- 2025年不動產登記代理人(地籍調查)考試真題卷(帶答案)
- 銀行安全用卡培訓課件
- 改善患者就醫體驗服務課件
- (高清版)DB50∕T 689-2016 合成鉆石鑒定技術規范
- 2025-2030中國智慧社區行業市場深度調研及前景趨勢與投資研究報告
- 初中生安全用電課件
- 2025年廣東省地理初中學業水平模擬練習卷(含答案)
- 心率測定-教學設計-八年級體育健康教育
評論
0/150
提交評論