基于AVR單片機(jī)的滅火機(jī)器人設(shè)計(jì)與實(shí)現(xiàn)
1 引言
本文引用地址:http://m.butianyuan.cn/article/273929.htm機(jī)器人競(jìng)賽是近年來(lái)迅速開(kāi)展起來(lái)的一種對(duì)抗活動(dòng),它涉及人工智能、機(jī)械、電子、傳感器、精密機(jī)械等諸多領(lǐng)域。通過(guò)競(jìng)賽可以培養(yǎng)學(xué)生的創(chuàng)新意識(shí)、動(dòng)手能力、團(tuán)隊(duì)寫(xiě)作能力等。其中滅火比賽是開(kāi)展范圍最廣、影響最大的機(jī)器人競(jìng)賽項(xiàng)目之一。
比賽規(guī)則為模仿生活中消防員滅火,機(jī)器人從H點(diǎn)出發(fā),在四個(gè)房間內(nèi)尋找任意擺放的蠟燭,并且設(shè)法將其滅掉。比賽場(chǎng)地的墻壁高33cm,材質(zhì)為木板,顏色為黑色。尺寸如圖1所示。對(duì)于比賽,得的分越低成績(jī)?cè)胶?。另外根?jù)選擇的模式不同,計(jì)分時(shí)要乘上相應(yīng)的系數(shù)。
2 系統(tǒng)硬件設(shè)計(jì)
2.1 系統(tǒng)總體設(shè)計(jì)
系統(tǒng)以ATmega32單片機(jī)為核心,它是一種基于增強(qiáng)RISC結(jié)構(gòu)的、低功耗的8位單片機(jī)。其特點(diǎn)為:①片內(nèi)具有32K字節(jié)的可編程Flash;2K字節(jié)的片內(nèi)SRAM數(shù)據(jù)存儲(chǔ)器;1024個(gè)字節(jié)片內(nèi)在線(xiàn)可編程EEPROM數(shù)據(jù)存儲(chǔ)器。②片內(nèi)含JTAG接口。③外圍接口。兩個(gè)帶有分別獨(dú)立、可設(shè)置預(yù)分頻器的8位定時(shí)器/計(jì)數(shù)器;一個(gè)16位定時(shí)器/計(jì)數(shù)器;四個(gè)通道的PWM輸出;8路10位ADC;32個(gè)可編程的I/O口。④低功耗,最高工作頻率為16MHz。
根據(jù)滅火比賽的規(guī)則要求,配以碰撞傳感器、灰度傳感器、火焰?zhèn)鞲衅骱图t外傳感器。通過(guò)兩路PWM控制兩只電機(jī)以驅(qū)動(dòng)滅火機(jī)器人,另外一路滅火電機(jī)由I/O口通過(guò)光電耦合器直接驅(qū)動(dòng)。
2.2 系統(tǒng)電源部分
系統(tǒng)采用單電源供電電路時(shí)比較簡(jiǎn)單,但是考慮到電動(dòng)機(jī)起動(dòng)瞬間電流很大,會(huì)造成電源電壓不穩(wěn),影響單片機(jī)和輸入電路工作的穩(wěn)定性和可靠性,因此采用雙電源供電方案。將電機(jī)電源和單片機(jī)電源完全隔離。單片機(jī)以及傳感器電路使用8V供電,電動(dòng)機(jī)使用12V供電。提高電動(dòng)機(jī)的供電電壓,可以提高機(jī)器人的運(yùn)行速度,從而可以提高滅火的成績(jī)。
2.3 電機(jī)驅(qū)動(dòng)部分
機(jī)器人需要控制在一個(gè)合適的速度行駛,在滅火的過(guò)程中既要以較快的速度找到火源,又要防止因?yàn)榕鲎捕绊懕荣惖某煽?jī)。小車(chē)的速度是由兩只直流電機(jī)控制。 L298驅(qū)動(dòng)芯片是性能優(yōu)越的小型直流電機(jī)驅(qū)動(dòng)芯片之一。它可被用來(lái)驅(qū)動(dòng)兩個(gè)直流電機(jī)或者是雙極性步進(jìn)電機(jī)。在6—46V的電壓下,可以提供2A的額定電流。L298還有過(guò)熱自動(dòng)關(guān)斷功能,并有反饋電流檢測(cè)功能。為保證L298正常工作,建議加裝片外續(xù)流二極管。由ATmega32單片機(jī)直接輸出兩路 PWM驅(qū)動(dòng)L298N。改變PWM調(diào)制脈沖占空比,可以實(shí)現(xiàn)精確調(diào)速。脈沖頻率對(duì)電機(jī)轉(zhuǎn)速有影響,脈沖頻率高連續(xù)性好,但帶負(fù)載能力差;脈沖頻率低則反之。通過(guò)PD2和PD3兩根I/O口線(xiàn)來(lái)控制電機(jī)的轉(zhuǎn)動(dòng)方向。
2.4 傳感器部分
滅火比賽需要機(jī)器人在盡量不碰撞墻壁的基礎(chǔ)上盡可能快地找到蠟燭并將火滅掉。在完成任務(wù)的過(guò)程中首先需要不碰撞墻壁,然后需要判斷前方是否有火焰。在找到火焰后需要判斷蠟燭旁邊的白線(xiàn)。如果碰撞墻壁的話(huà),需要機(jī)器人能檢測(cè)出來(lái)并進(jìn)行處理,不然就會(huì)發(fā)生機(jī)器人卡死的情況,那就不能完成任何任務(wù)。
圖5所示為紅外傳感器的發(fā)射和接收電路。紅外射管采用脈寬調(diào)制(PWM)驅(qū)動(dòng),工作在38KHz的頻率下,減少發(fā)射電路的功耗。脈沖發(fā)生器由NE555構(gòu)成,通過(guò)外部的電位器R1來(lái)調(diào)節(jié)占空比和脈沖頻率,由于紅外肉眼不可見(jiàn),所以電路中加入一個(gè)LED指示燈來(lái)指示紅外發(fā)射管是否在工作。該LED和紅外發(fā)射管串聯(lián),當(dāng)紅外發(fā)射管正常工作時(shí),該LED燈會(huì)點(diǎn)亮。接收電路采用西門(mén)子公司生產(chǎn)的紅外專(zhuān)用集成接收芯片SFH506-38,它只有接收到38KHZ的脈沖波時(shí)才會(huì)作用。它內(nèi)部集成了選項(xiàng)、濾波、放大電路,對(duì)外只有3個(gè)引腳:①腳為信號(hào)輸出端;②腳為接地端;③腳為電源端,所以使用起來(lái)非常方便,效果比較理想。
灰度傳感器是模擬傳感器,有一只發(fā)光二極管和一只光敏電阻,安裝在同一面上?;叶葌鞲衅骼貌煌伾臋z測(cè)面對(duì)光的反射程度不同,光敏電阻對(duì)不同檢測(cè)面返回的光其阻值也不同的原理進(jìn)行顏色深淺檢測(cè)。
火焰?zhèn)鞲衅魇悄M傳感器。它利用紅外敏感型元件對(duì)紅外信號(hào)強(qiáng)度的檢測(cè)并將其轉(zhuǎn)換為機(jī)器人可以識(shí)別的信號(hào),從而來(lái)檢測(cè)火焰信號(hào)?;鹧?zhèn)鞲衅骺梢杂脕?lái)探測(cè)波長(zhǎng)在700nm~1000nm范圍內(nèi)的紅外線(xiàn),探測(cè)角度為60º;,其中紅外線(xiàn)波長(zhǎng)在880nm附近時(shí),其靈敏度達(dá)到最大。
碰撞傳感器使用碰撞開(kāi)關(guān),通過(guò)I/O口可直接作為數(shù)字量輸入。
2.5 LCD顯示及其它電路
液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點(diǎn),在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中得到越來(lái)越廣泛的應(yīng)用。這里采用2行16個(gè)字的DM-162液晶模塊,通過(guò)與單片機(jī)連接、編程,完成顯示功能。
3 滅火機(jī)器人軟件設(shè)計(jì)
場(chǎng)地的四個(gè)房間內(nèi)的任何地方都有可能擺放蠟燭,所以機(jī)器人必須能夠?qū)崿F(xiàn)搜索所有的房間,而且在行走的過(guò)程中不允許碰撞墻壁。找到火源后,通過(guò)滅火裝置迅速將火滅掉。根據(jù)以上的要求設(shè)計(jì)機(jī)器人的滅火邏輯如圖8所示。
機(jī)器人采用左手走規(guī)則,左手走規(guī)則是指機(jī)器人始終沿著左面的墻壁行走,一直走完全程。在行走的過(guò)程中按照起點(diǎn)、一號(hào)房間、二號(hào)房間、三號(hào)房間、四號(hào)房間的順序搜索火源并滅火。機(jī)器人首先讀取傳感器信息,然后對(duì)傳感器的信息進(jìn)行判斷。如果發(fā)現(xiàn)火源,則進(jìn)入滅火子程序,該子程序完成趨光、滅火等功能。
4 結(jié)論
本文根據(jù)滅火比賽規(guī)則的要求,基于單片機(jī)及傳感器原理,以AVR單片機(jī)ATmega32為控制核心,小型直流電機(jī)作為驅(qū)動(dòng)元件,設(shè)計(jì)出一種價(jià)格低廉、簡(jiǎn)單實(shí)用的滅火機(jī)器人。通過(guò)簡(jiǎn)單的修改,可以將此機(jī)器人用于其它的競(jìng)賽項(xiàng)目。
pwm相關(guān)文章:pwm是什么
分頻器相關(guān)文章:分頻器原理 脈寬調(diào)制相關(guān)文章:脈寬調(diào)制原理
評(píng)論