




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、基于無線控制的智能小車摘 要:本文針對基于無線控制的智能小車的設計和研究,首先對系統(tǒng)的總體設計加以介紹,概括了智能小車的主要作用及其工作模式,并介紹了智能小車的主要元器件;然后詳細介紹了系統(tǒng)的硬件以及軟件設計,硬件方面,重點研究了溫度采集模塊、紅外避障模塊和無線收發(fā)模塊,軟件方面詳細講解了上位機人機交互界面的設計、避障設計以及無線通信的數(shù)據(jù)處理;最后,總結了系統(tǒng)測試結果并對本設計的發(fā)展前景做了概述。關鍵詞:單片機;上位機;紅外線;避障;溫度檢測;無線通信The intelligent car Based on wireless controlAbstract: In this paper, t
2、he overall description of the smart car, which is base on the wireless control, is introduced its design and research. First introduced is the overall design of the system, and describes the major function, operating mode and the main components of the smart car; then analyses the system's hardw
3、are and software design in detail. Hardware side, the focus is on the temperature acquisition module, infrared obstacle avoidance module and wireless transceiver module; The software has a detailed account of the host-computer interactive interface design, the design of the obstacle avoidance and wi
4、reless communication's data processing; Finally summaries up the test results of this system and has an overview of the prospects for the development of this design.Keywords: MCU; upper computer; Infrared ray; Obstacle avoidance; Temperature detection; Wireless communication1. 緒論1.1課題的背景及意義1.1.1
5、課題背景未來是充滿科學技術的新時代,而智能化1正是科學技術的重要體現(xiàn)。在一定程度上,智能化的發(fā)展能夠帶動一些相關領域的發(fā)展。因此,智能化將是新世紀的一個重要前進方向。隨著科學技術的不斷發(fā)展,應運而生的是各種機器人的更新?lián)Q代。至今,機器人從示教型機器人,發(fā)展到可離線編程的工業(yè)機器人,再到如今的智能機器人。機器人的發(fā)展步伐不斷加快。從上個世紀六十年代起,關于機器人的移動問題,人類做了很多研究設計。主要有以下幾方面:1) 機器人移動方式;2) 機器人驅動控制方式;3) 機器人行走的路徑規(guī)劃。從機器人移動方式方面來分類,主要有模擬人類行走的腿式機器人、有模擬坦克的履式機器人、以及模擬汽車行駛的輪式機器
6、人。作為輪式機器人,智能小車是智能系統(tǒng)23的一個典型代表,它綜合了自動控制技術、驅動技術、傳感器技術和信息處理技術等多學科知識,具有實用性強和應用范圍廣的特點。隨著技術的發(fā)展,智能小車4的應用范圍在不斷擴大,遍及工業(yè)、搶險救災、海洋開發(fā)、宇宙空間以及人類生活的各個方面,對人類生活產(chǎn)生巨大影響。1.1.2研究意義智能技術改變了人類的社會生活,對人類生活生產(chǎn)方式產(chǎn)生了巨大影響。近年來,隨著人類社會現(xiàn)代化的步伐不斷加快,人類迫切需求更多智能化產(chǎn)品的出現(xiàn),以改善人類現(xiàn)有的生活和生產(chǎn)方式。進一步提高生活質量,提升生產(chǎn)效率。智能小車的出現(xiàn)從實際上改變了工業(yè)生產(chǎn)面貌,使人類生產(chǎn)從手工化逐步過渡到機械化、智能
7、化。智能小車,能夠適應各種惡劣環(huán)境,通過遠程控制的方式,可以在完全不需要人類實際參與的情況下,安裝預期目標完成作業(yè)。本課題所研究的智能小車,可以應用到多個領域如糧庫檢測,礦下探測,危險未知區(qū)域的信息采集等。這里以信息采集為例,主要采集溫度信息。運用智能小車,可以減少勞動力、提高工作效率并避免一些安全事故。1.2 基于無線控制的智能小車系統(tǒng)概述1.2.1基于無線控制的智能小車系統(tǒng)組成本系統(tǒng)主要組成部分包括:上位機、單片機、電機驅動、溫度采集、紅外避障等部分。其總體框架見圖1。圖1 系統(tǒng)總體框架圖1) 電機驅動模塊該模塊主要完成小車驅動功能。根據(jù)接受到的單片機控制信號,變動輸出電平,控制電機轉向,
8、從而實現(xiàn)對小車運動的控制。2) 溫度采集模塊該模塊主要負責采集溫度,并將轉換后的溫度信息傳給單片機,進行溫度顯示和傳輸。3) 紅外避障模塊此模塊主要功能是是小車在行駛過程中避開障礙物。通過檢測小車前方的障礙物,并將檢測信息發(fā)送給單片機,從而控制小車轉向,達到避障效果。4) 單片機模塊這是系統(tǒng)下位機的核心模塊。它能接受上位機的信息,控制小車的行駛。同時,將檢測到的信息反饋給上位機,進行實時顯示。5) 上位機模塊此模塊是主要功能是對小車進行遠程控制,并接受小車反饋的信息,進行實時顯示。1.2.2基于無線控制的智能小車系統(tǒng)特點本系統(tǒng)融合了信息采集、無線傳輸、遠程控制等技術,設計出了無線控制的智能小車
9、。該系統(tǒng)成本低,實用性強,具有廣泛的應用前景。1.3本課題主要研究內(nèi)容本課題的主要研究內(nèi)容包括: (1)小車的硬件設計。主要介紹小車所選取的硬件及其功能和詳細參數(shù)。在下位機控制方面,以STC89C52單片機作為控制中心。此外,還介紹了避障模塊、信息采集模塊、小車驅動模塊的硬件設計。(2)避障設計。采用紅外傳感器5來識別障礙物。利用紅外避障,對近距離障礙物反應靈敏,障礙物感應距離可以調(diào)節(jié),而且不會有造成信號干擾。當遇到障礙物時,能夠很快發(fā)出低電平信號,傳送給單片機,控制小車轉向,到達避障目的。(3)無線通信67。整個系統(tǒng)由上位機和下位機組成,上位機和下位機的信息交流是通過無線形式的方式進行的。上
10、位機要控制小車,必須通過無線形式發(fā)送控制命令,小車要發(fā)送溫度信息到上位機也必須通過無線信息。因此,實現(xiàn)無線通信時系統(tǒng)控制實現(xiàn)的關鍵。通過無線收發(fā)模塊,可以實現(xiàn)信息的無線發(fā)送和接受,只要按照預先設定好的通信協(xié)議進行數(shù)據(jù)傳輸,就能實現(xiàn)上位機和下位機的信息交換。(4)人機交互界面。小車是通過PC終端來控制的,要想讓小車按照人的意愿進行運行,就要設置好人與計算機的信息交流。通過LabVIEW8編程環(huán)境,建立人機交互界面,實現(xiàn)這一功能。(5)進行實車實驗,對小車進行調(diào)試。2系統(tǒng)硬件電路的設計2.1系統(tǒng)總體設計本系統(tǒng)以小車模型為平臺,通過控制小車的運動,讓小車到達預期的目的地,從而對該地區(qū)進行信息采集,并
11、將采集到的信息以無線傳輸?shù)姆绞剑l(fā)送到PC終端。小車可四輪獨立驅動,車體上搭載有51單片機最小系統(tǒng)910、溫度傳感器、紅外避障模塊、電機驅動模塊以及無線收發(fā)模塊。系統(tǒng)可分為兩種工作模式:(1)遠程控制模式該模式下,PC終端通過無線發(fā)送模塊,將對小車的控制信息發(fā)送給小車,小車通過無線接受模塊接受到信息后,按照收到的運動信號運動到目的地,小車行駛的同時,進行采集信息,并通過無線發(fā)送模塊將信息回發(fā)給PC終端。 (2)自動模式選擇自動模式后,小車的運動將不會受到PC終端的控制,小車將以51單片機最小系統(tǒng)為“大腦”,進行自行運動。在該模式下,小車能夠自行的向前運動,由于車體上搭載有紅外避障模塊,小車可以
12、隨時檢測障礙物。當遇到障礙物時,紅外避障傳感器能夠檢測到障礙物具體位置,并將障礙物位置信息傳送給小車“大腦”,單片機按照給定程序進行分析判斷,控制小車轉向,從而避開障礙物。與此同時,小車不斷采集信息,并將采集到得信息通過無線發(fā)送模塊,發(fā)給PC終端。總體方案設計如圖2圖2 系統(tǒng)總體方案圖本課題采用ZK-4WD小車模型,為競技比賽常用車型。該模型主要包括四個輪子、四個電機、一個底盤。小車模型如圖3圖3 ZK-4WD小車模型圖ZK-4WD小車模型有以下幾個優(yōu)點:1) 機械結構簡單,非常方便安裝。2) 采用四個減速直流電機轉彎靈活,方向性好。四輪電機驅動,馬力實足,使在斜坡、凹凸不平的路面上也能夠行駛
13、。3) 小車自帶測速碼盤,可以迅速組成一套測速系統(tǒng)。可以測速,測距。4) 底盤大而穩(wěn),并且有很多小孔,可直接安裝其他模塊,非常容易擴展。5) 車體幾乎全為塑料,質量很輕,而且車體較小。整體輕便小巧,運動靈活,方便控制,對電量損耗小,能夠持久工作。2.2電源模塊本系統(tǒng)采用可充電電池為電源,保證系統(tǒng)正常工作。小車模型系統(tǒng)中,需要供電的模塊有:電機及其驅動模塊、溫度傳感器模塊、單片機最小系統(tǒng)模塊、紅外避障模塊、無線收發(fā)模塊。整個系統(tǒng)由全部硬件電路的電源由6V、1300mA的可充電鎳鎘電池提供。各個硬件所需電源最終都由電池供電,其中由于各個硬件所需電源參數(shù)不同,所以需要經(jīng)過電機驅動模塊進行轉換后才能使
14、用。在本系統(tǒng)中,電機驅動模塊的電源是直接取自電池,而電機模塊,溫度傳感器模塊,紅外避障模塊,以及單片機都是經(jīng)過電機驅動模塊將電壓轉換才能供電。整個電源模塊的電路結構如圖4所示圖4 電源模塊的電路結構2.3 電機及其驅動模塊2.3.1電機模塊小車的運動時靠直流電機11來實現(xiàn)的,通過控制直流電機的轉動方向來控制小車的運動方向。直流電機的工作原理是直流電機里邊固定有環(huán)狀永磁體,電流通過轉子上的線圈產(chǎn)生洛倫茲力,當轉子上的線圈與磁場平行時,再繼續(xù)轉受到的磁場方向將改變,因此此時轉子末端的電刷跟轉換片交替接觸,從而線圈上的電流方向也改變,產(chǎn)生的洛倫茲力方向不變,所以電機能保持一個方向轉動。當流入電機的直
15、流電流方向改變時,相應地電機轉向也改變。本課題采用的是小型直流電機,其額定電壓為3V6V,空載時轉速為100240轉/分,額定電流100120mA。電機的具體參數(shù)如表1。表1 電機參數(shù)屬性參數(shù)工作電壓DC 3VDC 5VDC 6V工作電流100mA100mA120mA空載100轉/分190轉/分240轉/分空載速度20轉/分39轉/分48轉/分輪胎直徑6.6cm重量50kg外形尺寸70mm*22mm*18mm噪聲<65db2.3.2電機驅動模塊L293D電機驅動模塊使用L293D 電機驅動芯片。該模塊可以直接驅動4路3-16V直流電機,輸入接口為6V15V,并提供了5V輸出接口,可以給
16、5V 單片機電路系統(tǒng)供電,可以方便的控制直流電機速度和方向,也可以控制2相步進電機,5線4相步進電機。電機驅動模塊L293D如圖5圖5 電機驅動模塊L293D實物圖產(chǎn)品參數(shù):1).驅動芯片:L293D 雙 H 橋直流電機驅動芯片(兩片)2).驅動部分端子供電范圍 Vs:5V16V ; 如需要板內(nèi)取電,則供電范圍 Vs:+6V+16V3).驅動部分峰值電流 Io:1A4).邏輯部分工作電流范圍:036mA5).控制信號輸入(IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8)電壓范圍:低電平:0.3VVin1.5V;高電平:2.3VVinVss6).使能信號輸入(EN1 EN2 EN
17、3 EN4)電壓范圍:低電平:0.3Vin1.5V(控制信號無效);高電平:2.3VVinVss(控制信號有效)7).存儲溫度:25130其電路原理圖如圖6圖6 電機驅動模塊電路原理圖其驅動電路的設計如圖7所示圖7 L298電機驅動電路圖管腳接口說明如表2表2 管腳接口電機驅動L298電 機IN1 IN2電機1 的控制端IN3 IN4電機2 的控制端EN1電機1 的使能端EN2電機2 的使能端控制端的使用說明如表3表3 控制端的使用說明IN 1IN 2EN 1電機*0不轉011正轉101反轉111不轉001不轉本系統(tǒng)將電機驅動模塊IN 端與單片機的P1口相連接,實現(xiàn)對電機的控制,具體連接方法如
18、表4表4 電機驅動與單片機的接口單片機引腳電機引腳P10 P11控制左后方電機P12 P13控制左前方電機P14 P15控制右前方電機P16 P17控制右后方電機2.4溫度傳感器模塊本系統(tǒng)選用DS18B20溫度傳感器1214,為“一線總線”接口的傳感器。測量溫度范圍為-55°C+125°C,在-10+85°C范圍內(nèi),分辨率可達到0.0625。溫度信息以“一線總線”的數(shù)字信號進行傳輸,系統(tǒng)抗干擾性得以提高。適用于大多數(shù)環(huán)境的溫度測量。2.4.1“一線總線”特征:1) 獨特的電源和信號復合在一起2) 僅使用一條口線3) 每個芯片唯一編碼,支持聯(lián)網(wǎng)尋址4) 簡單的網(wǎng)絡化
19、的溫度感知5) 零功耗等待2.4.2 DS18B20 的特點:1) 獨特的單線接口僅需一個端口引腳進行通訊 。2) 簡單的多點分布應用 。3) 無需外部器件 。4) 可通過數(shù)據(jù)線供電 。5) 零待機功耗 。6) 適用電壓為 3V5V。7) 測溫范圍-55+125,以 0.5遞增。華氏器件-67+2570F,以 0.90F 遞增 。8) 溫度以9位數(shù)字量讀出。9) 溫度數(shù)字量轉換時間 200ms(典型值) 。10) 應用包括溫度控制、工業(yè)系統(tǒng)、消費品、溫度計或任何熱感測系統(tǒng)。引腳排列如圖8圖8 引腳排列硬件設計中,DQ腳與單片機的P2.2口相連,進行數(shù)據(jù)傳輸。GND和VDD連接到電機驅動模塊相應
20、管腳。DS18B20方框圖如圖9。圖9 DS18B20方框圖2.5單片機模塊系統(tǒng)選用STC89C52單片機1517作為下位機的控制核心。STC89C52是一個低電壓,高性能CMOS 8位單片機,片內(nèi)含8k bytes的可反復擦寫的Flash只讀程序存儲器(ROM)和256 bytes的隨機存取數(shù)據(jù)存儲器(RAM)。STC 89C52單片機在電子行業(yè)中有著廣泛的應用。且該單片機可以不用專門的燒寫器而直接使用串口或并口就可以向單片機中下載程序,非常方便。其總體機構包括:1) 8位CPU2) 4K字節(jié)內(nèi)部程序存儲器3) 128字節(jié)內(nèi)部數(shù)據(jù)存儲器4) 2個16位定時器/計數(shù)器5) 1個全雙工
21、的異步串行口6) 4個8位的I/O口(P0,P1,P2,P3)單片機管腳如圖10圖10 STC89C52單片機管腳圖主要引腳介紹: 1) 主電源引腳 VCC(40腳):接+5 V電源正端。 GND(20腳):接+5 V電源地端。2) 外接晶體引腳 XTAL1(19腳):接外部石英晶體的一端。在單片機內(nèi)部,它是一個反相放大器的輸入端,這個放大器構成了片內(nèi)振蕩器。XTAL2(18腳):接外部石英晶體的另一端。在單片機內(nèi)部,它是一個反相放大器的輸出端。當采用外部振蕩器時,接收振蕩器信號。3) 輸入/輸出引腳: P0口(3932腳):P0.0
22、P0.7統(tǒng)稱為P0口。在不接片外存儲器與不擴展I/O口時,可作為準雙向輸入/輸出口。在接有片外存儲器或擴展I/O口時,P0口分時復用為低8位地址總線和雙向數(shù)據(jù)總線。P1口(18腳):P1.0P1.7統(tǒng)稱為P1口,可作為準雙向I/O口使用。P2口(2128腳):P2.0P2.7統(tǒng)稱為P2口,一般可作為準雙向I/O口使用;在接有片外存儲器或擴展I/O口且尋址范圍超過256字節(jié)時,P2口用作高8位地址總線。P3口(1017腳):P3.0P3.7統(tǒng)稱為P3口。除作為準雙向I/O口使用外,還可以將每一位用于第二功能,而且P3口的每一條引腳均可獨立定義為第一功能的輸入輸出或第二功能。4) 控制線ALE/P
23、ROG(30腳):運行方式時,ALE為外部存儲器低8位地址鎖存信號;FLASH編程方式時,該引腳用作編程脈沖輸入端。RST (9腳):該引腳為單片機的上電復位端。當單片機振蕩器工作時,該引腳上出現(xiàn)持續(xù)兩個機器周期的高電平,就可實現(xiàn)復位操作,使單片機回復到初始狀態(tài)。PSEN(29腳):片外程序存儲器讀選通信號輸出端,低電平有效。當從外部程序存儲器讀取指令或常數(shù)期間,每個機器周期該信號兩次有效,以通過數(shù)據(jù)總線P0口讀回指令或常數(shù)。在訪問片外數(shù)據(jù)存儲器期間,PSEN信號將不出現(xiàn)。EA/VPP(31腳):EA為片外程序存儲器選用端。該引腳有效(低電平)時,只選用片外程序存儲器,否則單片機上電或復位后選
24、用片內(nèi)程序存儲器;FLASH編程方式時,為編程電源輸入端VPP。2.6紅外避障模塊18該紅外傳感器可以檢測前方0-80CM(可以調(diào)節(jié))障礙物,三線NPN輸出型。前方無障礙輸出高電平,有障礙輸出口(黃色)電平會從高電平變成低電平。檢測距離可以根據(jù)要求進行調(diào)節(jié),通過電位器可以調(diào)節(jié)障礙的檢測距離。該傳感器具有探測距離遠、受可見光干擾小、反應靈敏等特點。系統(tǒng)使用三個紅外傳感器,分別按照與小車車身的前、左、右三個位置,可以分別檢測前、左、右三個方向的障礙物。紅外傳感器實物如圖11圖11 紅外傳感器實物圖紅外傳感器原理圖如圖12圖12 紅外傳感器原理圖紅外傳感器管腳定義如表5表5 紅外傳感器管腳定義管腳接
25、法紅色接4.5-5V電源高電平黃色接單片機,輸出TTL電平給單片機黑色接GND 0V電源低電平2.7無線收發(fā)模塊系統(tǒng)選用APC220-43無線收發(fā)19模塊。APC220是一塊低功率無線模塊,其特點如下:1) 1200米傳感距離;2) 工作頻率418-455MHz;3) 靈活的軟件編程選項設置;4) 內(nèi)置看門狗,保證長期可靠運行;5) 適合大數(shù)據(jù)量傳輸。APC220-43實物圖如圖13 圖13 APC220-43實物圖 圖14 串口助手軟件圖APC220模塊操作簡單,使用時將其視為一個串口設備,幾乎不對其編程,只需要將兩個APC220模塊的參數(shù)設置成一樣即可。設置參數(shù)可以在程序中完成,也可以通過
26、串口助手軟件完成。通過串口助手軟件可以設置模塊的通信頻段和波特率等參數(shù)。串口助手軟件如圖14所示。APC220的技術指標如表6表6 APC220的技術指標屬性參數(shù)工作頻率418MHz to 455MHz (1KHz步進)調(diào)制方式GFSK頻率間隔200KHz發(fā)射功率20mw (10級可調(diào))接收靈敏度-118dBm1200bps空中傳輸速率 24009600bps接口速率 120057600bps接口效驗方式8E1/8N1/8O1接口緩沖空間256bytes工作濕度10%90%(無冷凝)工作溫度-30 85電源3.4 5.5V (±50mV 紋波)發(fā)射電流35mA10mW接收電流28mA
27、休眠電流5uA傳輸距離1200米傳輸距離 (1200bps開闊地可視距離)尺寸37.5mm x 18.3mm x 7.0mmAPC220-43模塊共有 9 個接腳,具體定義如表7:表7 APC220-43接腳定義引腳定義說明1GND接地2VCC3.4V5.5V3EN電源使能端,1.6V或懸空使能,0.5V休眠。4RXDURAT輸入口,TTL電平。5TXDURAT輸出口,TTL電平。6AUXUART口的收發(fā)指示輸出,低接收,高輸出。77SET參數(shù)設置,低有效。8NC空腳。9NC空腳。模塊與終端設備的連接如圖15圖15 APC220-43與終端設備的連接APC220-43與單片機的管腳連接如表8表
28、8 APC220-43與單片機的管腳連接APC220-43模塊單片機TXDP3.0RXDP3.1VCCVCCGNDGND3 系統(tǒng)的軟件設計與系統(tǒng)硬件相對應,系統(tǒng)的軟件是整個系統(tǒng)的靈魂。整個系統(tǒng)在軟件的作用下才能開始運行。系統(tǒng)軟件通過對各種機械動作的運算、加工、處理,轉換成命令信號,發(fā)送到系統(tǒng)各個部分,從而對整個系統(tǒng)進行控制。系統(tǒng)軟件設計的好壞,直接關系到系統(tǒng)運行的效率、精確性、穩(wěn)定度。本系統(tǒng)的軟件設計采用模塊化機構,對各個功能部件實行分塊設計。整個軟件系統(tǒng)包括小車運動模塊、避障模塊、LED顯示模塊、溫度采集模塊、中斷模塊、串口通信模塊、無線通信模塊、上位機處理模塊。軟件系統(tǒng)整體結構如圖16圖1
29、6 軟件系統(tǒng)整體結構3.1上位機主程序上位機是整個系統(tǒng)最高指揮官,由上位機發(fā)送各種指令到下位機,下位機進行運算處理,并給出相應回應,從而控制整個系統(tǒng)工作。上位機通過PC終端設備來實現(xiàn),PC終端設備上建立人機交互界面,通過人機交互界面,可以實現(xiàn)人與計算機的交流,并將人的命令通過人機交互界面發(fā)送給整個系統(tǒng)。人機交互界面如圖17圖17 人機交互界面如圖17,上位機的人機交互界面有控制部分和顯示部分界面,顯示部分包括溫度的波形顯示、溫度計顯示、串口資源顯示,當前溫度值數(shù)字顯示;控制部分包括小車的遠程控制和小車的自動控制。3.1.1上位機開發(fā)環(huán)境介紹LabVIEW本系統(tǒng)的上位機通過LabVIEW來實現(xiàn)編
30、程控制。LabVIEW20 是美國國家儀器(NI)公司所研制開發(fā)的,作為一種程序開發(fā)環(huán)境,與C和BASIC開發(fā)環(huán)境相類似,但是LabVIEW有不同于其他開發(fā)環(huán)境的部分: LabVIEW的編程語言是G語言,一種圖形化編輯語言,其程序的形式是框圖。“G”語言21 作為一種圖形化的程序語言,使用時,只需要編輯程序框圖,不用寫程序代碼,能很大程度上提升工作效率。LabVIEW編譯平臺包括前面板(如圖18)和程序框圖(如圖19)兩部分組成 如圖18 前面板圖 如圖19 程序框圖圖前面板中有豐富的輸入控件(如圖20),和顯示控件(如圖21),能模仿實際儀器,非常方便地對數(shù)據(jù)信號進行顯示和控制。 輸入控件(
31、如圖20) 顯示控件(如圖21)程序框圖中,通過G語言,實現(xiàn)對數(shù)據(jù)信息的處理和控制,并能對串口工作方式進行設置,如圖22。圖22 串口設置圖上位機G語言總程序框圖如圖23圖23 上位機G語言總程序框圖3.1.2上位機主要功能1) 發(fā)送小車運行模式的控制命令。2) 在遠程控制模式下,發(fā)送小車運動指令,控制小車運動方向。3) 無線發(fā)送數(shù)據(jù)。4) 無線接收溫度信息。5) 實時顯示溫度信息。上位機進入運行狀態(tài)后,等待控制命令。當發(fā)出控制命令后,首先判斷運動模式,若為自動模式,則小車自行運動,并發(fā)出溫度信息到上位機處,上位機接受到溫度信息后,進行實時顯示;若為遠程控制模式,則小車按照接受到的運動命令進行
32、行駛,并發(fā)出溫度信息到上位機處,上位機接受到溫度信息后,進行實時顯示。上位機主程序流程框圖如圖24圖24 上位機主程序流程框圖3.2下位機主程序3.2.1單片機控制下位機用單片機STC89C52為核心控制系統(tǒng),以C語言為開發(fā)環(huán)境。下位機結構如圖25。圖25 下位機程序結構圖3.2.2溫度采集子程序本系統(tǒng)使用DS18B20溫度傳感器,溫度數(shù)據(jù)關系如表9所示。表9 DS18b20溫度數(shù)據(jù)關系溫度數(shù)據(jù)輸出(二進制)數(shù)據(jù)輸出(十六進制)+1250000000011111010+250000000000110010+1/2000000000000000100000000000000000-1/21111
33、1111 11111111 FFFF-2511111111 11001110 FFCE-5511111111 10010010FF92溫度采集子程序包括:初始化,讀一個字節(jié),寫一個字節(jié),讀取溫度。當需要讀取溫度信息時,首先向溫度傳感器寫入數(shù)據(jù)信息,完成初始化命令,再次寫入數(shù)據(jù),使其開始轉換溫度信息,最后再發(fā)出命令,完成溫度讀取。子程序如下:void Init_DS18B20(void)/初始化ds1820unsigned char x=0;DQ = 1; /DQ復位Delay(8); /稍做延時DQ = 0; Delay(80); /精確延時 大于 480usDQ = 1; /拉高總線Dela
34、y(14);x=DQ; Delay(20);unsigned char ReadOneChar(void) /讀取一個字節(jié)數(shù)據(jù)unsigned char i=0;unsigned char dat = 0;for (i=8;i>0;i-)DQ = 0; dat>>=1;DQ = 1; if(DQ)dat|=0x80;Delay(4);return(dat);void WriteOneChar(unsigned char dat)/寫一個字節(jié)unsigned char i=0;for (i=8; i>0; i-)DQ = 0;DQ = dat&0x01;Delay
35、(5);DQ = 1;dat>>=1;unsigned int ReadTemperature(void)/讀取溫度unsigned char a=0;unsigned char b=0;unsigned int t=0;float tt=0;Init_DS18B20();WriteOneChar(0xCC); / 跳過讀序號列號的操作WriteOneChar(0x44); / 啟動溫度轉換Init_DS18B20();WriteOneChar(0xCC); /跳過讀序號列號的操作WriteOneChar(0xBE); /讀取溫度寄存器a=ReadOneChar(); /讀低8位b
36、=ReadOneChar(); /讀高8位t=b;t<<=8;t=t|a;tt=t*0.0625;t= tt*10+0.5; /放大10倍輸出并四舍五入return(t);3.2.3電機子程序小車采用四輪驅動,使小車驅動力增強,并可以原地360度轉彎。電機驅動模塊接口連接在單片機P1口。通過改變P1口的管腳的電平信號,來改變電機轉動方向,從而改變小車運動。部分子程序如下:#define Left_moto_go P1_0=0,P1_1=1,P1_2=0,P1_3=1; /左邊兩個電機向前走#define Left_moto_back P1_0=1,P1_1=0,P1_2=1,P1_
37、3=0;/左邊兩個電機向后轉#define Left_moto_Stop P1_0=0,P1_1=0,P1_2=0,P1_3=0; /左邊兩個電機停轉 #define Right_moto_go P1_4=0,P1_5=1,P1_6=0,P1_7=1;/右邊兩個電機向前走#define Right_moto_back P1_4=1,P1_5=0,P1_6=1,P1_7=0;/右邊兩個電機向前走#define Right_moto_Stop P1_4=0,P1_5=0,P1_6=0,P1_7=0;/右邊兩個電機停轉 void run(void) /前進 Left_moto_go ; /左電機往前
38、走 Right_moto_go ; /右電機往前走 void backrun(void) /后退 Left_moto_back ; /左電機往前走 Right_moto_back ; /右電機往前走 void leftrun(void) /左轉 Left_moto_go ; /左電機往前走 Right_moto_back ; /右電機往前走 void rightrun(void) /右轉 Left_moto_back ; /左電機往前走 Right_moto_go ; /右電機往前走 void stoprun(void) /停止 Left_moto_Stop ; /左電機停止 Right_mo
39、to_Stop ; /右電機停止3.2.4避障子程序小車避障通過紅外傳感器來實現(xiàn),小車的右、前、左三個方向分別安裝了三個紅外傳感器,檢測到障礙物時,就返回低電平到P3.5 ,P3.6, P3.7,通過單片機進行判斷,改變小車運動方向,從而達到避障效果。void fun()if(P3_5=0&&P3_7=0) / 左(中)右測 后退 backrun(); else if(P3_5=0) / 右中測 左轉 leftrun(); else if(P3_7=0) / 左中測 右轉 rightrun(); else if(P3_6=0) / 中測 左轉 if(flag=1)rightru
40、n();flag=0;if(flag=0)leftrun();flag=1; else run();3.2.5串口通信子程序22通過串口方式23,實現(xiàn)數(shù)據(jù)的發(fā)送與接收。下位機處,單片機通過串口通信,與無線模塊交互數(shù)據(jù)信息,上位機處,PC終端通過串口通信,與無線模塊交互數(shù)據(jù)信息。/*串口中斷接受一個字符*/void INT_Uart_Transmit() interrupt 4 /全雙工uart接收 uchar receive_temp; if (RI=1) /處理接收中斷 RI=0; /清除中斷標志位 receive_temp=SBUF; /接收串口數(shù)據(jù) if (point=0) if(rec
41、eive_temp='') /判斷是否起始位 point+; else point=0; else if (point>0 && point<=3) /判斷是否接收夠4bit receive_bufferpoint+=receive_temp; else if (point=4) /判斷是否接收夠4bit if(receive_temp='#') receive_data0=receive_buffer3; if(receive_buffer1='y' && receive_buffer2='c
42、') Car_mode='1' /遠程控制模式 if(receive_buffer1='z' && receive_buffer2='d') Car_mode='2' /自動滅火模式 point=0; else point=0; else point=0; /緩沖區(qū)已滿,清除緩沖區(qū)內(nèi)數(shù)據(jù),重新接收 /*串口發(fā)送一個數(shù)字*/void send_int(int txd) SBUF = txd;while(!TI);/ 等特數(shù)據(jù)傳送TI = 0;/ 清除數(shù)據(jù)傳送標志/*串口發(fā)送一個字符*/void send_ch
43、ar(unsigned char txd) SBUF = txd;while(!TI);/ 等特數(shù)據(jù)傳送TI = 0;/ 清除數(shù)據(jù)傳送標志/*串口發(fā)送字符串*/void send_str(unsigned char str)unsigned char i = 0;while(stri != '0')SBUF = stri;while(!TI);/ 等特數(shù)據(jù)傳送TI = 0;/ 清除數(shù)據(jù)傳送標志i+;/ 下一個字符3.3通信及其協(xié)議24作為無線通信,需要其自己的通信協(xié)議,只有收發(fā)雙方都遵循同樣的通信協(xié)議,彼此才能進行交換信息。本系統(tǒng)采用的通信協(xié)議為“一位起始符+N位傳輸數(shù)據(jù)+一位
44、終止符”模式。數(shù)據(jù)格式如表9。表9 數(shù)據(jù)格式起始符(一位)傳輸數(shù)據(jù)(n位)終止符(一位).#數(shù)據(jù)傳輸時,接受到數(shù)據(jù)的設備先進行判斷,若第一位數(shù)據(jù)位“”符號,則認定為有效數(shù)據(jù),并接受其后面的數(shù)據(jù),直到收到“#”后,在認定為數(shù)有效據(jù)接受已經(jīng)結束,設備停止接受數(shù)據(jù)。4 系統(tǒng)測試4.1 系統(tǒng)難點與創(chuàng)新在整個系統(tǒng)設計中,存在一些難點。主要有溫度信息無線傳送的實現(xiàn)、串口通信協(xié)議的制定、上位機的實現(xiàn)。溫度測量的傳統(tǒng)方法采集的溫度范圍小,并且遠距離傳輸時會有較大的誤差。所以,本系統(tǒng)采用數(shù)字式溫度傳感器DSl8820,通過無線發(fā)送接收模塊將采集到的溫度信息傳輸?shù)絇C終端,進行實時顯示,減小了溫度的誤差率。在通信
45、協(xié)議方面,如果沒有預先規(guī)定協(xié)議標準,則上下位機的數(shù)據(jù)將無法進行識別和交換。本課題制定了完整的通信協(xié)議,對每一個數(shù)據(jù)都加上起始字符和終止字符,使上下位機能夠準確識別并接受有用數(shù)據(jù),成功解決了通信協(xié)議問題。在上位機方面,本課題使用LabVIEW開發(fā)平臺,運用其獨有的“G”語言(圖形化語言)編輯程序,實現(xiàn)人機交互界面的制作,完成溫度信息的上位機顯示和上位機對小車的控制。在創(chuàng)新方面,主要包括以下幾點:1) 將信息采集、無線傳輸、遠程控制等多種信息技術相互融合,使小車實用性更強,應用范圍更廣。2) 利用紅外線的反射性質,檢測障礙物,具有靈敏度高、反應快等優(yōu)點。3) 上位機使用LabVIEW編程環(huán)境,實現(xiàn)
46、人機交互界面的制作。其的圖形化編譯語言方便簡單,易于操作。4.2測試結果討論針對智能小車的功能,本文做了如下幾方面的調(diào)試:1) 小車避障調(diào)試利用紅外傳感器,在遇到障礙物時,小車能調(diào)轉方向,避開障礙物。避障功能正常。2) 遠程控制調(diào)試使用APC220-43無線收發(fā)模塊,當按下控制按鈕后,小車能根據(jù)接收到的信號,進行行駛。遠程控制功能正常。3) 溫度實時顯示調(diào)試最后溫度顯示方面,在自動模式和遠程模式下,小車均能將采集到的溫度信息發(fā)送到上位機處并顯示出來,至此,整個系統(tǒng)功能正常。結論與展望本文設計出一種基于無線傳輸技術的溫度數(shù)據(jù)采集系統(tǒng)和控制系統(tǒng)25,通過無線發(fā)送接收模塊將采集到的溫度數(shù)據(jù)傳輸?shù)缴衔?/p>
47、機處進行顯示。應用傳感技術、控制技術以及無線收發(fā)技術,實現(xiàn)溫度數(shù)據(jù)的采集和無線傳輸。本系統(tǒng)性能穩(wěn)定,可靠性高,抗干擾能力強,實用性強。但是,對該系統(tǒng)的任然存在問題。比如無線信號傳輸距離短,容易受干擾,穿越障礙物能力低。溫度傳感器的測溫范圍無法進一步提高。因此,本系統(tǒng)還處在實驗階段。隨著智能化技術的不斷發(fā)展,智能小車的涉及領域將不斷擴大,智能小車也將在多方面影響人類的生活。參考文獻1 蔡自興,徐光偌人工智能及其應用北京:清華大學出版社,20032 陳懂,劉蓉,金世俊智能小車的多傳感器數(shù)據(jù)融合現(xiàn)代電子技術(電子元器件),2005,(6):23-253 卓晴、黃開勝、邵貝貝等學做智能車M.北京:北京
48、航空航天出版社,20074 高月華基于紅外光電傳感器的智能車自動尋跡系統(tǒng)設計光電技術應用,2009,30(1):134-137.5 王航宇基于紅外傳感器路徑識別的小車設計研究與開發(fā),2008,27(8):28-31.6 蔡型,張思全短距離無線通信技術綜述J現(xiàn)代電子技術,2004,(3):65-67,767 王英洲,方旭明短距離無線通信主要技術與應用J數(shù)據(jù)通信,2004,(4):53-568 尹綁政基于LabVIEW的USB實時數(shù)據(jù)采集處理系統(tǒng)的燕現(xiàn)J計算機應用,2003(7):22-249 王幸之,鐘愛琴,王雷,王閃編著:AT89系列單片機原理與接口技術,北京航空航天大學出版社,2004年5月
49、10 劉守義,楊宏麗,王靜霞編著:單片機應用技術,西安電子科技大學出版社,2002年8月11 王曉明電動機的單片機控制北京:航空航天大學出版社,200312 魏永廣現(xiàn)代傳感技術東北大學出版社,2001,4:12-22.13 方佩敏新編傳感器原理、應用、電路詳解M北京:高等教育出版社,199414 黃建梅,楊學友現(xiàn)場智能傳感器電子測量技術2006,29(3):171-173.15 江力單片機原理與應用技術北京:清華大學出版社,200616 胡漢才單片機原理及其接口技術北京:清華大學出版社,200417 李哲英,駱麗SOC與單片機應用技術的發(fā)展單片機與嵌入式系統(tǒng)應用,2001,3.18 呂惠智紅外
50、技術哈爾濱:哈爾濱工程大學出版社,199819 張海濱,鄭維智短距離無線通信在控制中的應用J微計算機信息,2004,(11):129-130,3820 王莉,陳虹基于LabVIEW的通信原理試驗研究與實現(xiàn)J儀表技術,2007,(10):26-3021 王建群,基于LabVIEW的數(shù)搬采集系統(tǒng)的實現(xiàn)J。計算機工程與應用,2003(21):122-125.22 譚浩強C程序設計北京:清華大學出版社,198823 焯華等一個單片機串行數(shù)據(jù)采集及傳輸模塊的設計J微計算機信息,2006,10-2:229-2 3124 樊昌信.通信原理(第五版)M.北京:國防工業(yè)出版社,2001:23-4525 沙占友集成化智能傳感器原理與應用M北京:電子工業(yè)出版社,2004致 謝光陰似箭、歲月如梭,轉眼間,大學的美好時光即將結束。回首往事,四年間點點滴滴已經(jīng)在我的腦海留下深深的烙印。首先我要感謝我的陳曉燕導師,正是由于陳老師的默默關心和無私幫助,本論文才能得以順利完成。從畢業(yè)設計的選題、制作,資料的收集,以及論文的修改,陳老師都給了我無私的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 夫妻保姆合同協(xié)議書范本
- 白酒合同轉讓協(xié)議
- 土地借用合同協(xié)議
- 離婚協(xié)議的合同生效時間
- 充電樁安裝租賃合同協(xié)議
- 工程聯(lián)營協(xié)議合同
- 金蝶公司合同協(xié)議
- 承包協(xié)議書合同格式要求
- 醫(yī)美合伙人協(xié)議合同
- 車位購買合同協(xié)議
- 腱鞘炎康復治療
- 中考物理復習《浮力液面高度變化量計算方法與技巧》
- 2024年同等學力申碩英語考試真題
- 電子商域視覺設計應用規(guī)范手冊
- 品牌經(jīng)理招聘筆試題及解答(某大型國企)2025年
- 四年級語文下冊 第26課《寶葫蘆的秘密》同步訓練題(含答案)(部編版)
- 幼兒園大班班本課程繩彩飛揚
- GB/T 44625-2024動態(tài)響應同步調(diào)相機技術要求
- 大學物理:電磁感應與電磁場
- 2024年青島中小學教師招聘真題
- 2024年四川省眉山市中考地理+生物試卷(含答案解析)
評論
0/150
提交評論