基于Arduino單片機避障小車機器人畢業(yè)論文.docx
《基于Arduino單片機避障小車機器人畢業(yè)論文.docx》由會員分享,可在線閱讀,更多相關(guān)《基于Arduino單片機避障小車機器人畢業(yè)論文.docx(45頁珍藏版)》請在裝配圖網(wǎng)上搜索。
. —-可編輯修改,可打印—— 別找了你想要的都有! 精品教育資料 ——全冊教案,,試卷,教學(xué)課件,教學(xué)設(shè)計等一站式服務(wù)—— 全力滿足教學(xué)需求,真實規(guī)劃教學(xué)環(huán)節(jié) 最新全面教學(xué)資源,打造完美教學(xué)模式 論文編碼:TP39 首都師范大學(xué)本科畢業(yè)設(shè)計論文 基于行為設(shè)計的移動機器人設(shè)計與實現(xiàn) ——機器人機械設(shè)計模塊 Design?and?Implementation?of?Mobile?Robot? Based?on?Behavior?Design ——?Robot?Mechanical?Solutions 論文作者: 張倩穎 院 系: 信息工程學(xué)院 專 業(yè): 計算機科學(xué)與技術(shù) 學(xué) 號: 1111000055 指導(dǎo)老師: 徐敏 完成日期: 2015年 4月 25日 1 . 摘要 本文簡要介紹了基于行為設(shè)計的移動機器人設(shè)計與實現(xiàn)----一種基于Arduino新型集成開發(fā)環(huán)境的超聲波避障小車的工作原理。其中包括對小車的執(zhí)行組件、搭建結(jié)構(gòu)、傳感器、Arduino單片機軟件編程及試驗結(jié)果的介紹。 本方案以Arduino單片機為控制核心,基于蝙蝠超聲波測距的原理,利用超聲波傳感器,檢測小車前方障礙物的距離,然后把數(shù)據(jù)傳送給單片機。當超聲波檢測到距離小車前方25CM有障礙物時單片機就發(fā)出指令讓小車左轉(zhuǎn)一定角度,然后停止行進繼續(xù)探測.如果前方25CM沒有障礙物則直行,否則繼續(xù)左轉(zhuǎn)一定角度。如此通過超聲波不斷的循環(huán)檢測周邊環(huán)境的情況進行自動避障。 本系統(tǒng)在硬件設(shè)計方面,以Arduino單片機為控制核心,以超聲波傳感器檢測前方障礙物,從而自動避障。在軟件方面,利用Arduino語言進行編程,通過軟件編程來控制小車運轉(zhuǎn)。該系統(tǒng)在驅(qū)動方面采用L298N驅(qū)動2個直流電機帶動小車運行。并且,用PWM系統(tǒng)調(diào)速,控制小車前進的速度。實現(xiàn)小車根據(jù)外部環(huán)境,做出前進、后退和轉(zhuǎn)向等動作,從而完成避障的功能,本設(shè)計具有有一定的實用價值。 關(guān)鍵詞:Arduino單片機;超聲波傳感器;避障 ABSTRACT This paper describes the design of mobile robot behavior-based design and implement ---- A new ultrasound-based integrated development environment Arduino obstacle avoidance car works. These include the implementation of car components, building structures, sensors, Arduino microcontroller software programming and test results presentation. The program to Arduino microcontroller core, based on the principle of ultrasonic distance measurement bats using ultrasonic sensors to detect obstacles in front from the car, and then transmits the data to the microcontroller. When the ultrasonic distance in front of the car detects obstacles 25CM SCM issued a directive to make the car turn left on an angle, then continue probing stop traveling. If there is no obstacle in front of the 25CM straight, turn left or continue certain angle. So the case of the ultrasonic continuous loop through the surrounding environment to automatically detect avoidance. The system hardware design to Arduino microcontroller core, with ultrasonic sensors detect obstacles in front, so that automatic obstacle avoidance. On the software side, the use of Arduino programming language to control the car running through software programming. The system uses the driver side L298N drive two DC motors drive the car running. And, with the PWM system speed, speed control car forward. Realize the car according to the external environment, made forward, backward, and steering movements, thus completing the obstacle avoidance function, the design has a certain practical value. Key words: Arduino; ultrasonic sensors;obstacle avoidance 第一章 緒論 1 1.1 論文的選題背景 1 1.2 Arduino單片機概述 2 1.3 Arduino機器人發(fā)展現(xiàn)狀 3 1.4 Arduino智能避障機器人研究意義和目的 4 1.5項目主要研究內(nèi)容 5 第二章?避障小車機器人的總體設(shè)計 6 2.1設(shè)計原理與方法 6 2.2硬件設(shè)計 6 2.3 軟件設(shè)計 7 2.3.1 Arduino語言 7 2.3.2 Arduino IDE 8 2.4 實驗前期準備 10 第三章 硬件模塊 12 3.1 各模塊的的基本性能 12 3.1.1 單片機模塊 12 3.1.2 電機、電機驅(qū)動模塊 12 3.1.3避障模塊 14 3.1.4電源模塊 15 3.2 小車的基本搭建 15 3.3連線 17 3.3.1電機的連線 17 3.3.2舵機的連線 18 3.3.3超聲波的連線 19 3.3.4 Arduino超聲波小車總體連線圖: 20 第四章 軟件模塊 21 4.1 軟件設(shè)計思路 21 4.2 電機前進模塊 22 4.2 電機后退模塊 22 4.3 電機停止工作模塊 23 4.4 電機左轉(zhuǎn)模塊 23 4.5 電機右轉(zhuǎn)模塊 24 4.6 防卡死模塊 25 第五章 實驗及結(jié)果分析 26 5.1預(yù)期目標 26 5.2遇到的問題和解決方法 26 5.3 硬件的調(diào)試與整合 27 5.3.1調(diào)試思路 27 5.3.2調(diào)試超聲波模塊 27 5.3.3電機調(diào)試 28 5.4 心得體會 28 第六章 設(shè)想與展望 30 參考文獻 31 致謝 32 附錄 33 超聲波智能避障車程序(ARDUINO) 33 39 . 第一章 緒論 1.1 論文的選題背景 隨著現(xiàn)代計算機技術(shù)的不斷發(fā)展和普及,機器人的發(fā)展已經(jīng)遍及近年來機器人的智能水平不斷提高,并且迅速地改變著人們的生活方式。小到智能玩具,大到機械、電子、冶金、交通、宇航、國防等各個領(lǐng)域。人們將計算機技術(shù)更加廣闊的運用的人類生活中,制造能替代人勞動的機器一直是人類的夢想,并一直在為之努力。 在我們的生活里,有很多的機器人,如圖1.1所示,這兩種機器人分別是掃地機器人和滅火機器人。他們在我們的生活中非常常見也很實用,他們的特點就是無需人們的控制,能夠自行運動完成他們的任務(wù)。那么這就需要一個非常必要的基礎(chǔ)功能,那就是能夠感知并躲避前方的障礙物。 因此,在本次的設(shè)計中,我們將設(shè)計出一個能夠避障機器人,在具有這個基本功能的基礎(chǔ)上,我們就可以為他附加更多的功能,賦予它更多的實用價值。選用Arduino單片機作為控制核心,使用仿生超聲波技術(shù)傳感器進行避障的實現(xiàn)?!爸悄鼙苷蠙C器人”作為現(xiàn)代社會的新產(chǎn)物,也是以后的發(fā)展方向,他可以按照預(yù)先設(shè)定的模式在一個特定的環(huán)境里自動的運作,無需人為管理,便可以完成預(yù)期所要達到的或是更高的目標。 圖1.1 1.2 Arduino單片機概述 Arduino,是一個基于開放原始碼的軟硬件平臺,構(gòu)建于開放原始碼simple I/O介面版,并且具有使用類似Java,C語言的Processing/Wiring開發(fā)環(huán)境。它包含兩個主要的部分:硬件部分是可以用來做電路連接和Arduino電路板;另外一個則是Arduino IDE,你的計算機中的程序開發(fā)環(huán)境。你只要在IDE中編寫程序代碼,將程序上傳到Arduino電路板后,程序便會告訴Arduino電路板要做些什么了。? Arduino能通過各種各樣的傳感器來感知環(huán)境,通過控制燈光、馬達和其他的裝置來反饋、影響環(huán)境。板子上的微控制器可以通過Arduino的編程語言來編寫程序,編譯成二進制文件,收錄進微控制器。對Arduino的編程是利用Arduino編程語言 (基于 Wiring)和Arduino開發(fā)環(huán)境(based on Processing)來實現(xiàn)的?;贏rduino的項目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上運行的軟件,他們之間進行通信 (比如 Flash, Processing, MaxMSP)來實現(xiàn)??梢宰约簞邮种谱?,也可以購買成品套裝;Arduino所使用到的軟件都可以免費下載. 硬件參考設(shè)計 (CAD 文件)也是遵循availableopen-source協(xié)議, 你可以非常自由地根據(jù)你自己的要求去修改他們. Arduino可以使用開發(fā)完成的電子元件例如Switch或sensors或其他控制器、LED、步進馬達或其他輸出裝置。Arduino也可以獨立運作成為一個可以跟軟件溝通的接口,例如說:flash、processing、Max/MSP、VVVV或其他互動軟件…。Arduino開發(fā)IDE接口基于開放源代碼原,可以讓您免費下載使用開發(fā)出更多令人驚艷的互動作品。 其主要特點如下: 1)開放源代碼的電路圖設(shè)計,程序開發(fā)接口免費下載,也可依個人需求自己修改。 2)使用低價格的微處理控制器(AVR系列控制器),可以采用USB接口供電,不需外接電源,也可以使用外部9VDC輸入。 3)Arduino支持ISP在線燒,可以將新的“bootloader”固件燒入AVR芯片。有了bootloader之后,可以通過串口或者USB to Rs232線更新固件。 4)可依據(jù)官方提供的Eagle格式PCB和SCH電路圖簡化Arduino模組,完成獨立運作的微處理控制;可簡單地與傳感器,各式各樣的電子元件連接(例如:紅外線,超音波,熱敏電阻,光敏電阻,伺服馬達,…等) 5)支持多種互動程序,如:Flash、Max/Msp、VVVV、PD、C、Processing等。 6)應(yīng)用方面,利用Arduino,突破以往只能使用鼠標、鍵盤、CCD等輸入的裝置的互動內(nèi)容,可以更簡單地達成單人或多人游戲互動。 我們?yōu)槭裁匆褂肁rduino?有很多的單片機和單片機平臺都適合用做交互式系統(tǒng)的設(shè)計。例如:Parallax Basic Stamp,Netmedia’s BX-24,Phidgets,MIT’s Handyboard和其它等等提供類似功能的。所有這些工具,你都不需要去關(guān)心單片機編程繁瑣的細節(jié),提供給你的是一套容易使用的工具包。Arduino同樣也簡化了同單片機工作的流程,但同其它系統(tǒng)相比Arduino在很多地方更具有優(yōu)越性,特別適合老師,學(xué)生和一些業(yè)余愛好者們使用:和其它平臺相比,Arduino板算是相當便宜了。最便宜的Arduino版本可以自己動手制作,即使是組裝好的成品,其價格也不會超過200元。而且Arduino軟件可以跨平臺運行在Windows,Macintosh OSX,和Linux操作系統(tǒng)。而大部分其它的單片機系統(tǒng)都只能運行在Windows上。另外,它具有簡易的編程環(huán)境。初學(xué)者很容易就能學(xué)會使用Arduino編程環(huán)境,同時它又能為高級用戶提供足夠多的高級應(yīng)用。對于老師們來說,一般都能很方便的使用Processing 編程環(huán)境,所以如果學(xué)生學(xué)習(xí)過使用Processing 編程環(huán)境的話,那他們在使用Arduino開發(fā)環(huán)境的時候就會覺得很相似很熟悉。 軟件開源并可擴展-Arduino軟件是開源的,對于有經(jīng)驗的程序員可以對其進行擴展。Arduino編程語言可以通過C++庫進行擴展,如果有人想去了解技術(shù)上的細節(jié),可以跳過Arduino語言而直接使用AVR C 編程語言(因為Arduino語言實際上是基于AVR C的)。類似的,如果你需要的話,你也可以直接往你的Arduino程序中添加AVR-C 代碼。 Arduino基于AVR平臺,對AVR庫進行了二次編譯封裝,把端口都打包好了,寄存器啦、地址指針之類的基本不用管。大大降低了軟件開發(fā)難度,適宜非專業(yè)愛好者使用。優(yōu)點和缺點并存,因為是二次編譯封裝,代碼不如直接使用AVR代碼編寫精練,代碼執(zhí)行效率與代碼體積都弱于AVR直接編譯。 1.3 Arduino機器人發(fā)展現(xiàn)狀 我國目前的發(fā)展現(xiàn)狀是研制中的智能移動機器人智能水平并不高,只能說是智能移動機器人的初級階段。智能移動機器人研究中當前的核心問題有兩方面:一方面是,提高智能移動機器人的自主性,這是就智能移動機器人與人的關(guān)系而言,即希望智能移動機器人進一步獨立于人,具有更為友善的人機界面。從長遠來說,希望操作人員只要給出要完成的任務(wù),而機器能自動形成完成該任務(wù)的步驟,并自動完成它。另一方面是,提高智能移動機器人的適應(yīng)性,提高智能移動機器人適應(yīng)環(huán)境變化的能力,這是就智能移動機器人與環(huán)境的關(guān)系而言,希望加強它們之間的交互關(guān)系。 智能移動機器人涉及到許多關(guān)鍵技術(shù),這些技術(shù)關(guān)系到智能移動機器人的智能性的高低。這些關(guān)鍵技術(shù)主要有以下幾個方面:多傳感信息耦合技術(shù),多傳感器信息融合就是指綜合來自多個傳感器的感知數(shù)據(jù),以產(chǎn)生更可靠、更準確或更全面的信息,經(jīng)過融合的多傳感器系統(tǒng)能夠更加完善、精確地反映檢測對象的特性,消除信息的不確定性,提高信息的可靠性;導(dǎo)航和定位技術(shù),在自主移動機器人導(dǎo)航中,無論是局部實時避障還是全局規(guī)劃,都需要精確知道機器人或障礙物的當前狀態(tài)及位置,以完成導(dǎo)航、避障及路徑規(guī)劃等任務(wù);路徑規(guī)劃技術(shù),最優(yōu)路徑規(guī)劃就是依據(jù)某個或某些優(yōu)化準則,在機器人工作空間中找到一條從起始狀態(tài)到目標狀態(tài)、可以避開障礙物的最優(yōu)路徑;機器人視覺技術(shù),機器人視覺系統(tǒng)的工作包括圖像的獲取、圖像的處理和分析、輸出和顯示,核心任務(wù)是特征提取、圖像分割和圖像辨識;智能控制技術(shù),智能控制方法提高了機器人的速度及精度;人機接口技術(shù),人機接口技術(shù)是研究如何使人方便自然地與計算機交流。 在各國的智能移動機器人發(fā)展中,美國的智能移動機器人技術(shù)在國際上一直處于領(lǐng)先地位,其技術(shù)全面、先進,適應(yīng)性也很強,性能可靠、功能全面、精確度高,其視覺、觸覺等人工智能技術(shù)已在航天、汽車工業(yè)中廣泛應(yīng)用。日本由于一系列扶植政策,各類機器人包括智能移動機器人的發(fā)展迅速。歐洲各國在智能移動機器人的研究和應(yīng)用方面在世界上處于公認的領(lǐng)先地位。中國起步較晚,而后進入了大力發(fā)展的時期,以期以機器人為媒介物推動整個制造業(yè)的改變,推動整個高技術(shù)產(chǎn)業(yè)的壯大 1.4 Arduino智能避障機器人研究意義和目的 機器人的感覺傳感器種類非常多,其中視覺傳感器成為研制自動行走和駕駛機器人的重要部件。機器人要實現(xiàn)自動導(dǎo)引功能和避障功能就必須要感知導(dǎo)引線和障礙物,感知導(dǎo)引線相當給機器人一個視覺功能。本設(shè)計以超聲波作為智能車避障的一種重要手段,以其避障實現(xiàn)方便,計算簡單,易于做到實時控制,測量精度也能達到實用的要求,在未來汽車智能化進程中必將得到廣泛應(yīng)用。我國作為一個世界大國,在高科技領(lǐng)域也必須占據(jù)一席之地,未來汽車的智能化是汽車產(chǎn)業(yè)發(fā)展必然的,在這種情況下研究超聲波在智能車避障上的應(yīng)用具有深遠意義,這將對我國未來智能汽車的研究在世界高科技領(lǐng)域占據(jù)領(lǐng)先地位具有重要作用。 本設(shè)計主要體現(xiàn)多功能小車的智能避障功能,本設(shè)計中的理論方案、分析方法及特色與創(chuàng)新點等可以為自動運輸機器人、采礦勘探機器人、家用自動清潔機器人等自動半自動機器人的設(shè)計與普及有一定的參考意義。同時小車可以作為玩具的發(fā)展對象,為中國玩具市場技術(shù)含量的缺乏進行一定的彌補,實現(xiàn)經(jīng)濟收益,形成商業(yè)價值。我們所設(shè)計的智能移動機器人利用超聲波能夠在路面上順利躲避障礙物,從而在導(dǎo)盲和輔助人類行動方面也有著重要意義。 1.5項目主要研究內(nèi)容 本設(shè)計題目為《基于行為設(shè)計的移動機器人設(shè)計與實現(xiàn)》是以Arduino單片機為控制核心,主要研究小車的避障功能。利用超聲波傳感器檢測道路上的障礙,然后把數(shù)據(jù)傳送給單片機,當超聲波檢測到距離小車前方有障礙物時單片機就發(fā)出指令讓小車左轉(zhuǎn)一定角度,然后停止運行繼續(xù)探測.如果前方?jīng)]有障礙物就直走,否則繼續(xù)左轉(zhuǎn)一定角度。如此通過超聲波不斷的循環(huán)檢測周邊環(huán)境的情況進行自動避障。該功能的小車能夠?qū)崿F(xiàn)在無人操作的情況下在比較寬闊平坦的環(huán)境中避開障礙物。當機器人在行走過程中遇到前方障礙時,能夠根據(jù)有效范圍內(nèi)的距離作出相應(yīng)處理,由單片機軟件發(fā)出轉(zhuǎn)彎、直行、后退指令,避免機器與障礙物相撞。 第二章?避障小車機器人的總體設(shè)計 2.1設(shè)計原理與方法 本設(shè)計中直流電機PWM控制系統(tǒng)的主要功能包括實現(xiàn)對直流電機的加速、減速,并且可以調(diào)整電機的轉(zhuǎn)速,能夠很方便的實現(xiàn)電機的智能控制。主體電路:即直流電機PWM 控制模塊。這部分電路主要由AT89S52 單片機的 I/O 端口、定時計數(shù)器、外部中斷擴展等控制直流電機的加速、減速以及電機的正轉(zhuǎn)和反轉(zhuǎn),并且可以調(diào)整電機的轉(zhuǎn)速,能夠很方便的實現(xiàn)電機的智能控制。其間是通過 AT89S52 單片機產(chǎn)生脈寬可調(diào)的脈沖信號并輸入到L298 驅(qū)動芯片來控制直流電機工作的。該直流電機PWM 控制系統(tǒng)由以下電路模塊組成:設(shè)計控制部分:主要由AT89S52 單片機的外部中斷擴展電路組成。直流電機PWM控制實現(xiàn)部分主要由一些二極管、電機和L298 直流電機驅(qū)動模塊組成。智能小車采用后輪驅(qū)動,兩個后輪各用一個電機,前輪是萬象輪,起到支撐和轉(zhuǎn)向的作用。 2.2硬件設(shè)計 本小車的硬件部分分為幾個模塊:超聲波傳感器、Arduino單片機、電源、兩個直流電動機、電機驅(qū)動板、車身。電源連接在Arduino單片機上給整個小車供電。小車以Arduino單片機為核心,連接電機驅(qū)動板控制兩個直流電動機的運轉(zhuǎn),從而實現(xiàn)小車的前進。將超聲波傳感器安置在車身的最前端,用于探測前方是否有障礙物。當超聲波傳感器遇到障礙物,將反饋提供到單片機里從而做出向左旋轉(zhuǎn)的反應(yīng),再次檢測前方是否有障礙物,若有障礙物則繼續(xù)旋轉(zhuǎn),沒有障礙物則電機驅(qū)動器驅(qū)動電機前進,從而實現(xiàn)整個小車的避障功能。硬件框架圖如圖2.1。 圖2.1 硬件設(shè)計框架 2.3 軟件設(shè)計 2.3.1 Arduino語言 Arduino語言具有如下特點: 1、開放源代碼的電路圖設(shè)計,程序開發(fā)接口免費下載,也可依需求自己修改。 2、使用低價格的微處理控制器(AVR系列控制器),可以采用USB接口供電,不需外接電源,也可以使用外部9VDC輸入。 3、Arduino支持ISP在線燒,可以將新的“bootloader”固件燒入AVR芯片。有了bootloader之后,可以通過串口或者USB to Rs232線更新固件。 4、可依據(jù)官方提供的Eagle格式PCB和SCH電路圖簡化Arduino模組,完成獨立運作的微處理控制;可簡單地與傳感器,各式各樣的電子元件連接(例如:紅外線,超音波,熱敏電阻,光敏電阻,伺服馬達,…等) 5、支持多種互動程序,如:Flash、Max/Msp、VVVV、PD、C、Processing等。 6、應(yīng)用方面,利用Arduino,突破以往只能使用鼠標、鍵盤、CCD等輸入的裝置的互動內(nèi)容,可以更簡單地達成單人或多人游戲互動。 Arduino的功能: Arduino可以讓我們快速使用與Macromedia Flash, Processing, Max/MSP, Pure Data, SuperCollider等軟件結(jié)合,作出互動作品。Arduino可以使用現(xiàn)有的電子元件例如開關(guān)或者傳感器或者其他控制器件、LED、步進馬達或其他輸出裝置。Arduino也可以獨立運行,并與軟件進行交互,例如:Macromedia Flash, Processing,Max/MSP, Pure Data,VVVV或其他互動軟件,Arduino的IDE界面基于開放源代碼,可以讓我們免費下載使用,開發(fā)出更多令人驚艷的互動作品。 Arduino可使用ICSP線上燒入器,將「bootloader」燒入新的IC晶片;可依據(jù)官方電路圖,簡化Arduino模組,完成獨立運作的微處理控制;可簡單地與傳感器,各式各樣的電子元件連接(例如:紅外線,超聲波,熱敏電阻,光敏電阻,伺服馬達等);支援多樣的互動程序例如: Macromedia Flash、Max/Msp、VVVV、PD、C、Processing等;使用低價格的微處理控制器(ATMEGA 8-168);USB接口,不需外接電源。另外有提供9V直流電源輸入;在應(yīng)用方面,利用Arduino,突破以往只能使用鼠標,鍵盤,CCD等輸入的裝置進行互動內(nèi)容的設(shè)計,可以更簡單地達成單人或多人游戲互動。 2.3.2 Arduino IDE 如圖2.3這是運行界面。Arduino語言是一種類c的語言。在這個界面里有我們編程時最常用的東西。當我們把鼠標放在上面就會在右側(cè)出現(xiàn)按鍵的功能。 圖2.3 Arduino IDE運行界面 圖2.4就是upload上傳功能。最右邊的圖標是我們需要熟知的串口監(jiān)視器,快捷鍵是:Ctrl+Shift+M。點這個圖標有用的前提是插上了串口設(shè)備,當然Arduino插在USB上也可以,因為板上的Atmega16U2就是USB轉(zhuǎn)串口的功能。 圖2.4 upload上傳功能 如圖2.5這就是串口監(jiān)視器的運行畫面相對于網(wǎng)上流傳的眾多串口調(diào)試軟件,它的功能可以說較為簡單。右下角是波特率,波特率接收端和發(fā)射端要相同,要不然收到的會是亂碼。 圖2.5 串口監(jiān)視器 如果電腦沒找到串口或者驅(qū)動沒裝好,就會有如圖2.6的提示。serial port的意思是串行通訊接口。 圖2.6 Arduino IDE的菜單欄中有很多選項,例如“文件”“編輯”等英文界面。其中Sketch是草圖的意思,在Arduino IDE中,每個Arduino程序都稱為sketch,他是一個可以上傳進Arduino Board中的程序包,當然經(jīng)過編譯以后他就不是代碼包了。Tools里面第一項,自動格式,當你把一段從網(wǎng)上下載的源代碼放到sketch里面,會有一些縮進的亂碼,這時,Auto Format就起到了很好的作用。 當我們編寫好程序后,點擊Update, IDE會自動編譯,上傳。如果程序有錯誤,就會有如圖2.7的顯示,標出了行號。修改程序后就可以繼續(xù)編譯上傳了。 圖2.7 2.4 實驗前期準備 搭建小車的零件清單如下: 1.減速電機 2個 2.優(yōu)質(zhì)輪胎2個 3.電機固定件2個 4.萬向輪1個 5.100*150*2.6MM有機玻璃板 2片 6.L298N電機驅(qū)動板1個 7.ARDUINO 328給力板 1個 8.云臺 1個 9.舵機 1個 10.超聲波模塊1個 11.迷你面包板1個 12.6節(jié)5號電池盒一個 13.杜邦線 12條 14.1米長USB線1條 15.銅柱 35MM長 3個 12MM 4個 16.3MM螺絲螺母若干 第三章 硬件模塊 3.1 各模塊的的基本性能 3.1.1 單片機模塊 本設(shè)計采用Atmel Atmega328微處理控制器。其性能為:Digital I/O 數(shù)字輸入/輸出端共 0~13。Analog I/O 模擬輸入/輸出端共 0~5。支持ISP下載功能。輸入電壓:接上電腦USB時無須外部供電,外部供電7V~12V 直流電壓輸入。輸出電壓:5V 直流電壓輸出和3.3V 直流電壓輸出。 圖3.1 Arduino單片機實物圖 3.1.2 電機、電機驅(qū)動模塊 本設(shè)計采用由雙極性管組成的H橋電路(L298N)。用單片機控制晶體管使之工作在占空比可調(diào)的開關(guān)狀態(tài),精確調(diào)整電機轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,則效率非常高;H橋電路保證了可以簡單地實現(xiàn)轉(zhuǎn)速和方向的控制,電子開關(guān)的速度很快,穩(wěn)定性也很高。而且它有更強的驅(qū)動能力。而且L298N有過電流保護功能,當出現(xiàn)電機卡死時,可以保護電路和電機。這種調(diào)速方式有調(diào)速特性優(yōu)良、調(diào)整平滑、調(diào)速范圍廣、過載能力大,能承受頻繁的負載沖擊,還可以實現(xiàn)頻繁的無級快速啟動、制動和反轉(zhuǎn)等優(yōu)點。因此決定采用使用功率三極管作為功率放大器的輸出控制直流電機。 圖 3.2 L298N引腳圖 圖3.3 L298N電路原理圖 圖3.4 L298N實物圖 3.1.3避障模塊 本設(shè)計采用HC-SR04超聲波測距模塊,該原件可提供2CM-400CM的非接觸式距離感測功能,測距精度可達高到3mm;模塊包括超聲波發(fā)射器,接收器和控制電路。 基本工作原理:(1)采用IO口TRIG觸發(fā)測距,給至少10us的高電平信號;(2)模塊自動發(fā)送8個40khz的方波,自動檢測是否有信號返回;(3)有信號返回,通過IO口ECHO輸出一個高電平,高電平持續(xù)的時間就是超聲波從發(fā)射到返回的時間。測試距離=(高電平時間*聲速(340M/S))/2; 圖3.5避障模塊實物圖 3.1.4電源模塊 本設(shè)計采用的電源為車載電源。為保證電源工作可靠,單片機系統(tǒng)與動力伺服系統(tǒng)的電源采用了大功率、大容量的蓄電池;而傳感器的工作電源則采用了小巧輕便的干電池。 圖3.6 電源模塊實物圖 3.2 小車的基本搭建 舵機,云臺和超聲波的連接步驟如下圖: 1.如圖3.7準備好云臺舵機超聲波安裝所需配件。 圖3.7 2.圖3.8取出舵機配件之一“十字膠體”將十字剪成四邊對等的長度,打磨成寬度一樣。 圖3.8 3.將2*8mm的和1.2*5mm的螺絲安裝到十字的第二個孔,裝到云臺底座上。在云臺底部的螺絲位套上螺母,并用熱熔膠固定如圖3.9。 圖3.9 4.將舵機裝上云臺的兩個邊翼,并用螺絲緊固如圖3.10。 圖3.10 5.將裝好的舵機放進固定好的十字膠體調(diào)整好方向后,從舵機組件包里取出2*6mm的螺絲安裝到舵機固定孔中。完成云臺安裝后用扎帶將超聲波模塊固定在云臺前端如圖3.11。 圖3.11 6.將6mm銅柱裝在云臺底座安裝孔并將裝好的云臺組件直接安裝到小車底盤上,小車搭建成品如圖3.12。 圖3.12 小車搭建成品 3.3連線 3.3.1電機的連線 L298N的供電處理: 用6節(jié)5號電池盒取一路電源給L298N電機驅(qū)動模塊供電,另一路給ARDUINO主板供電給L298N電機驅(qū)動模塊供電的電源+極接L298N的VMS接口,電源的-接L298N的GND接口,L298N板上的+5V接口放空不接。電機一接L298N的MOTOA,電機二接L298N的MOTOB。 圖3.13 電機的連線 3.3.2舵機的連線 首先設(shè)置函數(shù):myservo.attach(5); // 定義伺服馬達輸出第5腳位。 舵機需要連接的有三條線,分別是+,-,信號。三條線均直接連接到Arduino板上。 接線方法:將+5V接到J5位,-位接到J6位,信號位接到J4位PWM口的第五腳。 連線方式如圖3.14所示: 圖3.14舵機的連線 3.3.3超聲波的連線 超聲波傳感器有四個腳,如圖3.15所示: 四個引腳的功能分別是: 1:VCC 接+5V。 2:TRIQ 信號輸入。 3:ECHO信號輸出。 4:GND 接地。 圖3.15超聲波的引腳示意圖 超聲波模塊四個引腳直接與Arduino單片機連接,接線方法如圖3.16所示: 圖3.16超聲波與Arduino單片機接線 3.3.4 Arduino超聲波小車總體連線圖: 電機A和電機B將正負兩端接在L298N電機驅(qū)動板上,若正負兩級接反則車輪反轉(zhuǎn)。電機驅(qū)動板、舵機、超聲波模塊直接與Arduino核心控制板相連,電源模塊分別給電機驅(qū)動板和Arduino板供電。 圖3.17 Arduino超聲波小車總體連線圖 第四章 軟件模塊 4.1 軟件設(shè)計思路 在軟件設(shè)計方面,采用Arduino語言編程,編寫程序流程圖4.1 圖4.1 軟件編譯流程圖 4.2 電機前進模塊 在定義好各個引腳之后,進入主程序的編寫部分。我在程序控制模塊里主要編寫的是電機的控制函數(shù)。本程序中提及的digitalWrite函數(shù)的作用是設(shè)置引腳的輸出的電壓為高電平或低電平。該函數(shù)也是一個無返回值的函數(shù),函數(shù)有兩個參數(shù)pin和value,pin參數(shù)表示所要設(shè)置的引腳,value參數(shù)表示輸出的電壓HIGH(高電平)或LOW(低電平)。 首先定義為advance前進函數(shù): void advance(int a) { 編寫模擬信號,定義馬達右后動作為低電平,即不給電: digitalWrite(pinRB,LOW); 編寫模擬信號,定義馬達右前動作為高電平: digitalWrite(pinRF,HIGH); 編寫模擬信號,定義馬達左后動作為低電平: digitalWrite(pinLB,LOW); 編寫模擬信號,定義馬達左前動作為高電平: digitalWrite(pinLF,HIGH); 定義延時,即將前進動作保持一段時間,直到開始執(zhí)行下一程序。 delay(a * 100); 延時 } 4.2 電機后退模塊 將函數(shù)定義為back后退函數(shù) void back(int g) //后退 { 編寫模擬信號,定義馬達右后動作為高電平: digitalWrite(pinRB,HIGH); 編寫模擬信號,定義馬達右前動作為低電平: digitalWrite(pinRF,LOW); 編寫模擬信號,定義馬達左后動作為高電平: digitalWrite(pinLB,HIGH); 編寫模擬信號,定義馬達左前動作為低電平: digitalWrite(pinLF,LOW); 定義延時,即將電機的后退動作保持一段時間,直到開始執(zhí)行下一程序。 delay(g * 100); } 4.3 電機停止工作模塊 將函數(shù)定義為stopp停止函數(shù) void stopp(int f) { 編寫模擬信號,定義馬達右后動作為高電平: digitalWrite(pinRB,HIGH); 編寫模擬信號,定義馬達右前動作為高電平 digitalWrite(pinRF,HIGH); 編寫模擬信號,定義馬達左后動作為高電平 digitalWrite(pinLB,HIGH); 編寫模擬信號,定義馬達左前動作為高電平 digitalWrite(pinLF,HIGH); 定義延時,即將電機的停止動作保持一段時間,直到開始執(zhí)行下一程序。 delay(f * 100); } 4.4 電機左轉(zhuǎn)模塊 將函數(shù)定義為left左轉(zhuǎn)函數(shù) void left(int c) { 編寫模擬信號,定義馬達右后動作為高電平 digitalWrite(pinRB,HIGH); 編寫模擬信號,定義馬達右前動作為高電平 digitalWrite(pinRF,HIGH); 編寫模擬信號,定義馬達左后動作為低電平 digitalWrite(pinLB,LOW); 編寫模擬信號,定義馬達左前動作為高電平 digitalWrite(pinLF,HIGH); 定義延時,即將電機的左轉(zhuǎn)動作保持一段時間,直到開始執(zhí)行下一程序。 delay(c * 100); } 4.5 電機右轉(zhuǎn)模塊 將函數(shù)定義為right右轉(zhuǎn)函數(shù) void right(int b) { 編寫模擬信號,定義馬達右后動作為低電平 digitalWrite(pinRB,LOW); 編寫模擬信號,定義馬達右前動作為高電平 digitalWrite(pinRF,HIGH); 編寫模擬信號,定義馬達左后動作為高電平 digitalWrite(pinLB,HIGH); 編寫模擬信號,定義馬達左前動作為高電平 digitalWrite(pinLF,HIGH); 定義延時,即將電機的右轉(zhuǎn)動作保持一段時間,直到開始執(zhí)行下一程序。 delay(b * 100); } 4.6 防卡死模塊 該模塊為防止避障小車卡死的編譯,即當小車發(fā)生與障礙物距離過近的情況而無法轉(zhuǎn)彎時,該程序會指引小車向后倒退,倒退一定距離后左轉(zhuǎn)前進,若仍有障礙物則繼續(xù)倒退,若無障礙物則左轉(zhuǎn)后直行。即可防止車在行進途中卡在死巷里。 if(directionn == 2) //假如directionn(方向) = 2(倒車) { back(8); // 倒退(車) turnL(2); //些微向左方移動(防止卡在死巷里) Serial.print(" Reverse "); //顯示方向(倒退) } 第五章 實驗及結(jié)果分析 5.1預(yù)期目標 總體來說本次試驗達到預(yù)期目標。 (1)在車前方?jīng)]有障礙物時,小車沿直線向前走。 (2)在車前方有障礙物時,小車能避開障礙物,避障方法如下:超聲波檢測到障礙物后,先向左邊旋轉(zhuǎn),檢測。如果旋轉(zhuǎn)后前面沒有檢測障礙物,則沿直線向前走;如果旋轉(zhuǎn)后檢測到前方仍有障礙物,則繼續(xù)旋轉(zhuǎn),如果前面沒有障礙物,則沿直線向前行走; 但是該超聲波避障小車還存在著許多的不足,比如說只能對正前方一定角度內(nèi)進行探測,使用的是一路超聲波而不是多路超聲波探測,并且為了簡化,默認的只是向同一個方向轉(zhuǎn)彎等,這些都是有待進一步發(fā)展和提高的。 5.2遇到的問題和解決方法 在此之前我們并沒有制作過任何智能的機器人。初定避障小車這個題目時,最初我們采用樂高機器人搭建了一個循跡避障的機器人,由于操作較為簡單,后來我們決定嘗試采用Arduino芯片,利用超聲波傳感器搭建出一臺智能的避障小車。最初我們對硬件的原理不夠明白,不知道采用哪些原件,課程設(shè)計指導(dǎo)書上介紹的也并不詳細,因此我們利用大量時間去圖書館查閱了許多資料,對其電機驅(qū)動、Arduino控制板以及超聲波傳感器的引腳、電路設(shè)計等各方面都做了近一步的了解之后才開始進行小車的搭建。 在選擇硬件設(shè)施上,我們也花了很大功夫。在最初我們設(shè)計了兩個驅(qū)動方案的選擇。一個是采用ULN2003驅(qū)動,它是由7組達林頓晶體管陣列和相應(yīng)的電阻網(wǎng)絡(luò)以及鉗位二極管網(wǎng)絡(luò)構(gòu)成,具有同時驅(qū)動7組負載的能力,一般用于高速大功率驅(qū)動電路。另個一就是采用由雙極性管組成的H橋電路(L298N)。用單片機控制晶體管使之工作在占空比可調(diào)的開關(guān)狀態(tài),精確調(diào)整電機轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,則效率非常高;H橋電路保證了可以簡單地實現(xiàn)轉(zhuǎn)速和方向的控制,電子開關(guān)的速度很快,穩(wěn)定性也很高。而且它有更強的驅(qū)動能力。此驅(qū)動板體積小,重量輕,而且它有一個外加的續(xù)流二極管,可以防止電機線圈在斷電時的方向電勢損壞芯片,同時也也安裝有散熱片能使芯片溫度降低,盡量防止他自動斷電,讓驅(qū)動性能更加穩(wěn)定。板子設(shè)有兩個電流反饋檢測接口、內(nèi)邏輯取電選擇端、4個上拉電阻選擇端、2路直流電機接口、控制電機方向指向燈等等。這個板子不僅適用于智能程控小車、輪式機器人等,還可以配合各種控制器使用。因此經(jīng)過一番對比和考慮,最終我們選擇了L298N電機驅(qū)動板。在超聲波的選擇上我們也出現(xiàn)了分期,本設(shè)計最終采用的是HC-SR04超聲波測距模塊。而最初我們選擇的事紅外傳感裝置。之所以最終沒有選擇紅外線傳感,是因為紅外線對使用環(huán)境有較高的要求,當遇上淺色或是深色的家居物品它無法反射回來,會造成機器人無法正常避障。而這款HC-SR04則采用仿生超聲波技術(shù),類似鯨魚,蝙蝠采用聲波來偵測判斷障礙物以及及空間方位,該超聲波避障模塊包括超聲波發(fā)射器,接收器和控制電路,靈敏度較高,但技術(shù)成本也較高。 在搭建方面,我們完成程序的編譯通電之后,小車發(fā)生了原地旋轉(zhuǎn)的現(xiàn)象,經(jīng)過觀察,我們發(fā)現(xiàn)小車在感應(yīng)障礙物方面并沒有問題。問題出現(xiàn)在左側(cè)輪前轉(zhuǎn),而右側(cè)輪后轉(zhuǎn)。所以我們將控制右側(cè)車輪的電機的接線進行改接,這個問題便得以解決。 在軟硬件調(diào)試方面,我們也遇到了一些問題。首先是避障小車的旋轉(zhuǎn)角度不夠,也許是因為地面摩擦力的關(guān)系,小車的旋轉(zhuǎn)角度并達不到我們所設(shè)定的左轉(zhuǎn)九十度。后來我們又將程序進行改進,設(shè)置的旋轉(zhuǎn)角度比九十度多一些,小車就可正常避障了。還有一個問題就是小車在遇到障礙物之后的反應(yīng)速度并不是很快,需要障礙物在前面平行持續(xù)1,2秒才可以做出轉(zhuǎn)向的判斷,這個延遲反應(yīng)也經(jīng)常造成小車和障礙物發(fā)生碰撞,這也是我們遇到的最大問題,在這個問題上我們做了很多程序上的調(diào)試,但終究達不到很理想的效果,在后續(xù)的試驗中,我們準備嘗試換一個感測避障模塊進行嘗試改進。 5.3 硬件的調(diào)試與整合 5.3.1調(diào)試思路 本設(shè)計的智能避障小車,難點重點有兩大模塊。分別是:L298驅(qū)動模塊和超聲波測距模塊。我們在調(diào)試的時候我們把兩大模塊分別調(diào)試,最后再把所有模塊和硬件組合起來再進行最后的整機調(diào)試這樣一個調(diào)試的思路。 5.3.2調(diào)試超聲波模塊 超聲波模塊一共有四個腳,一個是VCC,一個是GND,還有兩個分別是超聲波的發(fā)射和接收引腳。連接電路時候只需引出四根插線,分別連接到89S52的對應(yīng)引腳,燒制好測試程序,測試結(jié)果圖如5.2.2。本設(shè)計四根插線分別連接到VCC,GND,還有發(fā)射和接收引腳分別為:P3.0和P3.2。 5.3.3電機調(diào)試 在電機驅(qū)動板上。有EA,I1,I2,EB,I3,I4六個端子用于控制電機。EA,EB為兩路電機的控制使能,通過PWM可以控制電機轉(zhuǎn)速,高電平有效。我們完成程序的編譯通電之后,小車發(fā)生了不停地旋轉(zhuǎn)的現(xiàn)象,我們觀察到小車在感應(yīng)障礙物方面并沒有問題。問題出現(xiàn)在左側(cè)輪前轉(zhuǎn),而右側(cè)輪后轉(zhuǎn)。所以我們將控制右側(cè)車輪的電機的接線進行修改,這個問題便得以解決。 圖5.1電機驅(qū)動板的引腳及其功能 5.4 心得體會 通過這次的項目實訓(xùn),我學(xué)習(xí)到了很多的電子知識,提高了我對于陌生硬件的學(xué)習(xí)能力。超聲波傳感器在此之前我沒有接觸過,對我來說非常的陌生,從一無所知慢慢查資料到能夠熟練應(yīng)用,讓我知道了面對新的硬件應(yīng)該怎么學(xué)習(xí),在以后的工作學(xué)習(xí)中,我一定會遇到非常多的不熟悉的硬件,我相信,通過不斷地鍛煉積累,學(xué)習(xí)能力會進一步提高。這次實訓(xùn)同時還加強了我實踐動手能力,特別培養(yǎng)了出現(xiàn)問題、分析問題、解決問題的能力,我相信這些能力的提高對我以后在從事任何工作都將會有極大的幫助。 這次的項目實訓(xùn)讓我感觸最深的是:作為電子愛好者,電子制作中不管遇到什么問題和困境都要有一顆平靜的心和堅持不懈的精神,一顆浮躁的心是不會到達成功的彼岸。這次課程設(shè)計,給我更多的是一種模塊化的思想,將系統(tǒng)按我們所需的功能和系統(tǒng)所能提供的功能進行模塊化的分類,將會使我們的工作變得一目了然,非常清晰。比如說這次我選的避障小車,可以分成超聲波測速模塊,電機驅(qū)動模塊,單片機核心模塊三個,三個部分各司其職,無論從硬件上還是軟件上,都能夠比較清晰地將他們的功能區(qū)分開,從而有利于硬件的連接和程序的編寫。 從以后工作來看,這種模塊化處理問題的方式將會更加的有用,在公司和以后得科研項目中,系統(tǒng)一定是越來越復(fù)雜,不可能一個人完成所有的任務(wù),一定是一個團隊來做這些系統(tǒng)的設(shè)計,所以模塊化之后,能夠?qū)⑷蝿?wù)分配給每個人,最后大家還能夠很好的綜合到一起,大大的縮短了開發(fā)周期。這次的畢設(shè)實踐學(xué)習(xí)讓我受益匪淺。 第六章 設(shè)想與展望 隨著科技的迅猛發(fā)展,智能已經(jīng)成為了現(xiàn)在的高科技的熱詞,智能機器人可以解決無數(shù)人類無法或者是很難解決的難題。本智能小車系統(tǒng)最誘人的前景就是可用于未來的智能汽車上了,當駕駛員因疏忽或打瞌睡時這樣的智能汽車的設(shè)計就能體現(xiàn)出它的作用。如果汽車偏離車道或距障礙物小于安全距離時,汽車就會發(fā)出警報,提醒駕駛員注意,如果駕駛員沒有及時作出反應(yīng),汽車就會自動減速或??坑诼愤?,這樣就大大增大了駕車的安全系數(shù),想的再長遠一點,這個避障功能可以作為無人駕駛機動的一個基本功能。無人駕駛的機動車行駛在路上,擁有定位和導(dǎo)航的功能后就可以將人或物品送到我們所需要送到的位置。這樣智能機器人的應(yīng)用,就大大的減少了人力和物力,并且方便了更多不會駕駛機動車的市民。 這樣的避障小車還可以用于月球探測等的無人探月車,幫助我們傳達月球上更多的信息,讓我們更加的了解月球,為將來登月做好充分準備。這樣的小車在科學(xué)考察探測車上也有廣闊的應(yīng)用前景,在科學(xué)考察中,有很多危險且人們無法涉足的地方,這時,智能科學(xué)考察車就能夠派上用場,在它上面裝上攝像機,代替人們進行許多無法進行的工作。智能車的應(yīng)用減少了人們的工作危險系數(shù),解決了惡劣環(huán)境下勘探的需求,實現(xiàn)了即是沒有人操作應(yīng)用機器也能很好的完成工作,這項研發(fā)可謂是一舉多得。 在未來的社會中智能也是大勢所趨,而智能車作為智能機器人中一類必不可少的組成部分。最近幾年發(fā)展更是迅速,各個國家更是投入大量資金。它廣泛涉及人工智能、計算機視覺、自動控制、精密儀器、傳感和信息等一系列學(xué)科的創(chuàng)新研究,其研究成果可廣泛應(yīng)用于工業(yè)、農(nóng)業(yè)、醫(yī)藥、軍事、航空、信息技術(shù)等實際領(lǐng)域,智能機器人的發(fā)展水平可反映出一個國家的高科技水平和綜合國力,是國家綜合國力強大的標志,也是人類文明進步的標志。在我們未來的工作與生活中,會越來越多的需要機器人代替人力來工作和完成一些難度較大或較為費力的任務(wù),對這些實用的機器人的需求也會越來越大。因此,機器人研發(fā)的前景是不可估量的。 參考文獻 [1] 袁新娜,與紅英編著.超聲波傳感器在智能小車避障系統(tǒng)中的應(yīng)用.[A]中北大學(xué) (2009)08-0085-04 [2] 邵貝貝. 單片機嵌入式應(yīng)用的在線開發(fā)方法[M].北京.清華大學(xué)出社.2004 [3] 王曉明. 電動機的單片機控制[M].北京. 北京航空航天大學(xué)出版社.2002 [4] 臧杰,閻巖. 汽車構(gòu)造[M]. 北京. 機械工業(yè)出版社.2005 哈爾濱工業(yè)大學(xué)課程設(shè)計說明書 [5] 安鵬,馬偉.S12單片機模塊應(yīng)用及程序調(diào)試[J]. 電子產(chǎn)品世界. 2006.第211期. 162-163 [6] 童詩白,華成英.模擬電子技術(shù)基礎(chǔ)[M].北京. 高等教育出版社.2000 [7] 沈長生.常用電子元器件使用一讀通[M].北京. 人民郵電出版社.2004 [8] 宗光華.機器人的創(chuàng)意設(shè)計與實踐[M].北京. 北京航空航天大學(xué)出社.2004 [9] 張偉等.Protel DXP高級應(yīng)用[M].北京. 人民郵電出版社.2002 [10] 張文春. 汽車理論[M].北京.機械工業(yè)出版社.2005 [11] 江海波,王卓然,耿德根編著.深入淺出AVR單片機.中國電力出版社,2008. 致謝 歷時三個月的畢業(yè)設(shè)計已經(jīng)告一段落。在我和我組成員張碩的共同努力下,本避障小車的任務(wù)已經(jīng)基本完成。在這段時間里,非常感謝在遇到困難時我的同學(xué)們所給予的支持和鼓勵,給我提供專業(yè)的意見和建議。還有和我同組的同學(xué)張碩,我們共同查閱資料,克服許多在選擇小車部件、小車搭建和編程上的種種困難。也正是這次畢業(yè)設(shè)計使我深刻地認識到學(xué)好專業(yè)知識的重要性,也理解了理論聯(lián)系實際的含義,并且檢驗了大學(xué)四年的學(xué)習(xí)成果。我更明白了團隊合作的重要性。兩個人不僅有兩個大腦和更多的主意和知識,最重要的事能夠在遇到困難時可以相互鼓勵學(xué)習(xí),互相分擔(dān)。也正是這種團結(jié)合作的精神促使了我們這次畢設(shè)任務(wù)的圓滿成功。 這三個月的設(shè)計是對過去所學(xué)知識的系統(tǒng)提高和擴充的過程,為今后的發(fā)展打下了良好的基礎(chǔ)。也非常感謝指導(dǎo)老師徐老師的支持和指導(dǎo),每次我給徐老師發(fā)郵件她都會認真的給我批改,指出我的不足。也正是因為在老師的指導(dǎo)下我的論文進行不斷的改正,才有機會變得越來越好。 由于自身水平有限,設(shè)計中一定存在很多不足之處。雖然這次的畢業(yè)設(shè)計對于知識的運用和銜接還不夠熟練,但是我將在以后的工作和學(xué)習(xí)中繼續(xù)努力、不斷完善。敬請各位老師批評指正。 附錄 超聲波智能避障車程序(ARDUINO) L = 左 R = 右 F = 前 B = 后 */ #include- 1.請仔細閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
32 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 基于 Arduino 單片機 小車 機器人 畢業(yè)論文
鏈接地址:http://appdesigncorp.com/p-1171757.html