freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)論文:基于arduino單片機(jī)避障小車機(jī)器人(編輯修改稿)

2024-12-22 18:08 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 機(jī)的轉(zhuǎn)速,能夠很方便的實(shí)現(xiàn)電機(jī)的智能控制。其間是通過(guò) AT89S52 單 片機(jī)產(chǎn)生脈寬可調(diào)的脈沖信號(hào)并輸入到 L298 驅(qū)動(dòng)芯片來(lái)控制直流電機(jī)工作的。該直流電機(jī) PWM 控制系統(tǒng)由以下電路模塊組成:設(shè)計(jì)控制部分:主要由 AT89S52 單片機(jī)的外部中斷擴(kuò)展電路組成。直流電機(jī) PWM 控制實(shí)現(xiàn)部分主要由一些二極管、電機(jī)和 L298 直流電機(jī)驅(qū)動(dòng)模塊組成。 智能小車采用后輪驅(qū)動(dòng),兩個(gè)后輪各用一個(gè)電機(jī),前輪是萬(wàn)象輪,起到支撐和轉(zhuǎn)向的作用。 硬件設(shè)計(jì) 本小車的硬件部分分為幾個(gè)模塊:超聲波傳感器、 Arduino 單片機(jī)、電源、兩個(gè)直流電動(dòng)機(jī)、電機(jī)驅(qū)動(dòng)板、車身。電源連接在 Arduino 單片機(jī)上給整個(gè)小 車供電。小車以Arduino 單片機(jī)為核心,連接電機(jī)驅(qū)動(dòng)板 控制兩個(gè)直流電動(dòng)機(jī)的運(yùn)轉(zhuǎn),從而實(shí)現(xiàn)小車的前進(jìn)。將超聲波傳感器安臵在車身的最前端,用于探測(cè)前方是否有障礙物。當(dāng)超聲波傳感器遇到障礙物,將反饋提供到單片機(jī)里從而做出向左旋轉(zhuǎn)的反應(yīng),再次檢測(cè)前方是否有障礙物,若有障礙物則繼續(xù)旋轉(zhuǎn),沒(méi)有障礙物則電 機(jī)驅(qū)動(dòng)器驅(qū)動(dòng)電機(jī)前進(jìn),從而實(shí)現(xiàn)整個(gè)小車的避障功能。硬件框架圖如圖 。 7 圖 硬件 設(shè)計(jì) 框架 軟件設(shè)計(jì) Arduino 語(yǔ)言 Arduino 語(yǔ)言具有如下特點(diǎn): 開(kāi)放源代碼的電路圖設(shè)計(jì),程序開(kāi)發(fā)接口免費(fèi)下載,也可依需求自己修改。 使用低價(jià)格的微處理控制器 (AVR 系列控制器 ),可以采用 USB 接口供電,不需外接電源,也可以使用外部 9VDC 輸入。 Arduino 支持 ISP 在線燒,可以將新的“ bootloader”固件燒入 AVR 芯片。有了bootloader 之后,可以通過(guò)串口或者 USB to Rs232 線更新固件。 可依據(jù)官方提供的 Eagle 格式 PCB 和 SCH 電路圖簡(jiǎn)化 Arduino 模組 ,完成獨(dú)立運(yùn)作的微處理控制;可簡(jiǎn)單地與傳感器,各式各樣的電子元件連接 (例如:紅外線 ,超音波 ,熱敏電阻 ,光敏電阻 ,伺服馬達(dá) ,…等 ) 支持多種互動(dòng)程序,如: Flash、 Max/Msp、 VVVV、 PD、 C、 Processing 等。 應(yīng)用方面,利用 Arduino,突破以往只能使用鼠標(biāo)、鍵盤、 CCD 等輸入的裝臵的互動(dòng)內(nèi)容,可以更簡(jiǎn)單地達(dá)成單人或多人游戲互動(dòng)。 Arduino 的 功能 : 基于行為設(shè)計(jì)的移動(dòng)機(jī)器人設(shè)計(jì)與實(shí)現(xiàn) 8 Arduino 可以 讓我們 快速使用與 Macromedia Flash, Processing, Max/MSP, Pure Data, SuperCollider 等軟件結(jié)合,作出互動(dòng)作品。 Arduino 可以使用現(xiàn)有的電子元件例如開(kāi)關(guān)或者傳感器或者其他控制器件、 LED、步進(jìn)馬達(dá)或其他輸出裝臵。 Arduino 也可以獨(dú)立運(yùn)行,并與軟件進(jìn)行交互,例如: Macromedia Flash, Processing,Max/MSP, Pure Data,VVVV 或其他互動(dòng)軟件, Arduino 的 IDE 界面基于開(kāi)放源代碼,可以讓我們 免費(fèi)下載使用,開(kāi)發(fā)出更多令人驚艷的互動(dòng)作品。 Arduino 可使用 ICSP 線上燒入器,將「 bootloader」燒入新的 IC 晶片 ; 可依據(jù)官方電路圖,簡(jiǎn)化 Arduino 模組,完成獨(dú)立運(yùn)作的微處理控制 ; 可簡(jiǎn)單地與傳感器,各式各樣的電子元件連接(例如:紅外線,超聲波,熱敏電阻,光敏電阻,伺服馬達(dá)等) ; 支援多樣的互動(dòng)程序例如 : Macromedia Flash、 Max/Msp、 VVVV、 PD、 C、 Processing 等 ; 使用低價(jià)格的微處理控制器 (ATMEGA 8168); USB 接口,不需外接電源。另外有提供 9V 直流電源輸入 ;在 應(yīng)用方面,利用 Arduino,突 破以往只能使用鼠標(biāo),鍵盤, CCD 等輸入的裝臵進(jìn)行互動(dòng)內(nèi)容的設(shè)計(jì),可以更簡(jiǎn)單地達(dá)成單人或多人游戲互動(dòng)。 Arduino IDE 如圖 這是運(yùn)行界面。 Arduino 語(yǔ)言是一種類 c 的語(yǔ)言。在這個(gè)界面里有我們編程時(shí)最常用的東西。當(dāng)我們把鼠標(biāo)放在上面就會(huì)在右側(cè)出現(xiàn)按鍵的功能。 圖 Arduino IDE 運(yùn)行界面 9 圖 就是 upload 上傳功能。最右邊的圖標(biāo)是我們需要熟知的串口監(jiān)視器,快捷鍵是: Ctrl+Shift+M。點(diǎn)這個(gè)圖標(biāo)有用的前提是插上了串口設(shè)備,當(dāng)然 Arduino 插在 USB上也可以,因?yàn)榘迳系?Atmega16U2 就是 USB 轉(zhuǎn)串口的功能。 圖 upload 上傳功能 如圖 這就是串口監(jiān)視器的運(yùn)行畫面相對(duì)于網(wǎng)上流傳的眾多串口調(diào)試軟件,它的功能可以說(shuō)較為簡(jiǎn)單。右下角是波特率,波特率接收端和發(fā)射端要相同,要不然收到的會(huì)是亂碼。 圖 串口監(jiān)視器 如果電腦沒(méi)找到串口或者驅(qū)動(dòng)沒(méi)裝好,就會(huì)有如圖 的提示。 serial port 的意思是串行通訊接口。 圖 Arduino IDE 的菜單欄中有很多選項(xiàng),例如“文件”“編輯”等英文界面。其中Sketch 是草圖的意思,在 Arduino IDE 中,每個(gè) Arduino 程序都稱為 sketch,他是一個(gè)可以基于行為設(shè)計(jì)的移動(dòng)機(jī)器人設(shè)計(jì)與實(shí)現(xiàn) 10 上傳進(jìn) Arduino Board 中的程序包,當(dāng)然經(jīng)過(guò)編譯以后他就不是代碼包了。 Tools 里面第一項(xiàng),自動(dòng)格式,當(dāng)你把一段從網(wǎng)上下載的源代碼放到 sketch 里面,會(huì)有一些縮進(jìn)的亂碼,這時(shí), Auto Format 就起到了很好的作用。 當(dāng)我們編寫好程序后,點(diǎn)擊 Update, IDE 會(huì)自動(dòng)編譯 ,上傳。如果程序有錯(cuò)誤,就會(huì)有如圖 的顯示,標(biāo)出了行號(hào)。修改程序后就可以繼續(xù)編譯上傳了。 圖 實(shí)驗(yàn)前期準(zhǔn)備 搭建小車的零件清單如下: 2 個(gè) 2 個(gè) 2 個(gè) 1 個(gè) *150* 有機(jī)玻璃板 2 片 電機(jī)驅(qū)動(dòng)板 1 個(gè) 328 給力板 1 個(gè) 1 個(gè) 1 個(gè) 1 個(gè) 1 個(gè) 節(jié) 5 號(hào)電池盒一個(gè) 12 條 米長(zhǎng) USB 線 1 條 35MM 長(zhǎng) 3 個(gè) 12MM 4 個(gè) 11 螺絲螺母若干 基于行為設(shè)計(jì)的移動(dòng)機(jī)器人設(shè)計(jì)與實(shí)現(xiàn) 12 第三章 硬件 模塊 各模塊的的基本性能 單片機(jī)模塊 本設(shè)計(jì)采用 Atmel Atmega328 微處理控制器。其性能為: Digital I/O 數(shù)字輸入 /輸出端共 0~13。 Analog I/O 模擬輸入 /輸出端共 0~5。支持 ISP 下載功能。輸入電壓:接上電腦USB 時(shí)無(wú)須外部供電,外部供電 7V~12V 直流電壓輸入。輸出電壓: 5V 直流電壓輸出和 直流電壓輸出 。 圖 Arduino 單片機(jī)實(shí)物圖 電機(jī)、電機(jī)驅(qū)動(dòng)模塊 本設(shè)計(jì)采用由雙極性管組成的 H 橋電路( L298N)。用單片機(jī)控制晶體管使之工作在占空比可調(diào)的開(kāi)關(guān)狀態(tài),精確調(diào)整電機(jī)轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,則效率非常高; H 橋電路保證了可以簡(jiǎn)單地實(shí)現(xiàn)轉(zhuǎn)速和方向的控制,電子開(kāi)關(guān)的速度很快,穩(wěn)定性也很高。而且它有更強(qiáng)的驅(qū)動(dòng)能力。而且 L298N 有過(guò)電流保護(hù) 13 功能,當(dāng)出現(xiàn)電機(jī)卡死時(shí),可以保護(hù)電路和電機(jī)。這種調(diào)速方式有調(diào)速特性優(yōu)良、調(diào)整平滑、調(diào)速范圍廣、過(guò)載能力大,能承受頻繁的負(fù)載沖擊,還可以實(shí)現(xiàn)頻繁的無(wú)級(jí)快速啟動(dòng)、制動(dòng)和反轉(zhuǎn)等優(yōu)點(diǎn)。因此決定采用使用功率三極管作為功率放大器的輸出控制直流電機(jī)。 圖 L298N 引腳圖 圖 L298N 電路原理圖 基于行為設(shè)計(jì)的移動(dòng)機(jī)器人設(shè)計(jì)與實(shí)現(xiàn) 14 圖 L298N 實(shí)物圖 避障模塊 本設(shè)計(jì)采用 HCSR04 超聲波測(cè)距模塊,該原件可提供 2CM400CM 的非接觸式距離感測(cè)功能,測(cè)距精度可達(dá)高到 3mm;模塊包括超聲波發(fā)射器,接收器和控制電路。 基本工作原理: (1)采用 IO 口 TRIG 觸發(fā)測(cè)距,給至少 10us 的高電平信號(hào) 。(2)模塊自動(dòng)發(fā)送 8 個(gè) 40khz 的方波,自動(dòng)檢測(cè)是否有信號(hào)返回; (3)有信號(hào)返回,通過(guò) IO口 ECHO輸出一個(gè)高電平,高電平持續(xù)的時(shí)間就是超聲波從發(fā)射到返回的時(shí)間。測(cè)試距離 =(高電平時(shí)間 *聲速 (340M/S))/2。 圖 避障模塊實(shí)物圖 15 電源模塊 本設(shè)計(jì)采用 的電源為車載電源。為保證電源工作可靠,單片機(jī)系統(tǒng)與動(dòng)力伺服系統(tǒng)的電源采用了大功率、大容量的蓄電池;而傳感器的工作電源則采用了小巧輕便的干電池。 圖 電源模塊實(shí)物圖 小車的基本搭建 舵機(jī) ,云臺(tái)和超聲波的連接步驟如下圖: 圖 準(zhǔn)備好云臺(tái)舵機(jī)超聲波安裝所需配件。 圖 取出舵機(jī)配件之一“十字膠體” 將十字剪成四邊對(duì)等的長(zhǎng)度,打磨成寬度一樣 。 基于行為設(shè)計(jì)的移動(dòng)機(jī)器人設(shè)計(jì)與實(shí)現(xiàn) 16 圖 2*8mm 的和 *5mm 的螺絲安裝到十字的第二個(gè)孔,裝到云臺(tái)底座上 。在云臺(tái)底部的螺絲位套上螺母,并用熱熔膠固定 如圖 。 圖 ,并用 螺絲緊固 如圖 。 圖 后, 從舵機(jī)組件包里取出 2*6mm的螺絲安裝到舵機(jī)固定孔中。 完成云臺(tái)安裝后用扎帶將超聲波模塊固定在云臺(tái)前端如圖 。 17 圖 6mm 銅柱裝在云臺(tái)底座安裝孔 并將裝好的云 臺(tái)組件直接安裝到小車底盤上,小車搭建成品如圖 。 圖 小車搭建成品 連線 電機(jī)的連線 L298N 的供電處理: 用 6 節(jié) 5 號(hào)電池盒取一路電源給 L298N 電機(jī)驅(qū)動(dòng)模塊供電,另一路給 ARDUINO 主板供電給 L298N 電機(jī)驅(qū)動(dòng)模塊供電的電源 +極接 L298N 的 VMS 接口,電源的 接 L298N的 GND 接口, L298N 板上的 +5V 接口放空不接。電機(jī)一接 L298N 的 MOTOA,電機(jī)二接L298N 的 MOTOB。 基于行為設(shè)計(jì)的移動(dòng)機(jī)器人設(shè)計(jì)與實(shí)現(xiàn) 18 圖 電機(jī)的連線 舵機(jī)的連線 首先設(shè)臵函數(shù): (5)。 // 定義伺服馬達(dá)輸出第 5 腳位 。 舵機(jī) 需要連接的 有三條線, 分別是 +, ,信號(hào) 。 三條線均直接連接到 Arduino 板上。 接線方法: 將 +5V 接到 J5 位 , 位接到 J6 位 , 信號(hào)位接到 J4 位 PWM 口的第五腳 。 連線方式如圖 所示: 圖 舵機(jī)的連線 19 超聲波的連線 超聲波傳感器有四個(gè)腳,如圖 所示: 四個(gè)引腳的功能分別是: 1: VCC 接 +5V。 2: TRIQ 信號(hào)輸入。 3: ECHO 信號(hào)輸出。 4: GND 接地。 圖 超聲波的引腳示意圖 超聲波 模塊四個(gè)引腳直接 與 Arduino 單片機(jī) 連接, 接線方法如圖 所示 : 圖 超聲波與 Arduino 單片機(jī)接線 基于行為設(shè)計(jì)的移動(dòng)機(jī)器人設(shè)計(jì)與實(shí)現(xiàn) 20 Arduino 超聲波小車總體連線圖: 電機(jī) A 和電機(jī) B 將正負(fù)兩端接在 L298N 電機(jī)驅(qū)動(dòng)板上,若正負(fù)兩級(jí)接反則車輪反轉(zhuǎn)。電機(jī)驅(qū)動(dòng)板、舵機(jī)、超聲波模塊直接與 Arduino 核心控制板相連,電源模塊分別給電機(jī)驅(qū)動(dòng)板和 Arduino 板供電。 圖 Arduino 超聲波小車總體 連線圖 21 第四章 軟件模塊 軟件設(shè)計(jì)思路 在軟件設(shè)計(jì)方面,采用 Arduino 語(yǔ)言編程,編寫程序流程圖 圖 軟件編譯流程圖 基于行為設(shè)計(jì)的移動(dòng)機(jī)器人設(shè)計(jì)與實(shí)現(xiàn) 22 電機(jī)前進(jìn) 模塊 在定義好各 個(gè)引腳之后,進(jìn)入主程序的編寫部分。我在程序控制模塊里主要 編寫的是電機(jī) 的控制函數(shù)。 本程序中提及的 digitalWrite 函數(shù)的作用是設(shè)臵引腳的輸出的電壓為高電平或低電平。該函數(shù)也是一個(gè)無(wú)返回值的函數(shù),函數(shù)有兩個(gè)參數(shù) pin 和 value, pin參數(shù)表示所要設(shè)臵的引腳, value 參數(shù)表示輸出的電壓 HIGH(高電平)或 LOW(低電平)。 首先定義為 advance 前進(jìn)函數(shù) : void advance(int a) { 編寫模擬信號(hào),定義馬達(dá)右后動(dòng)作為低電平,即不給電: digitalWrite(pinRB,LOW)。 編寫模擬信號(hào),定義馬達(dá)右前動(dòng)作為高電平: digitalWrite(pin
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1