一款基于STM32的智能滅火機(jī)器人設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
本設(shè)計(jì)的研究初衷來(lái)源于滅火機(jī)器人比賽,比賽場(chǎng)地將采用國(guó)際標(biāo)準(zhǔn)比賽場(chǎng)地,比賽場(chǎng)地平面圖如圖1所示。比賽場(chǎng)地的墻壁高為33cm,厚為2 cm,由木頭做成。墻壁刷成白色。比賽場(chǎng)地的地板是被漆成黑色的光滑木制板。場(chǎng)地中所有的走廊和門(mén)口都是46 cm的開(kāi)口,一個(gè)白色的2.5 cm寬的白色帶子或白漆印跡表示房間人口,在距離火焰30 cm的圓上有一條2.5 cm寬的白線。根據(jù)要求,該機(jī)器人要在模擬的四室一廳房間內(nèi)完成發(fā)現(xiàn)并確認(rèn)火源、滅火和回家(回到出發(fā)點(diǎn)H)等功能。
本文以STM32F103嵌入式芯片為核心,完成滅火機(jī)器人的軟、硬件設(shè)計(jì)。當(dāng)機(jī)器人啟動(dòng)后,前部和左右的紅外測(cè)距傳感器為機(jī)器人的避障功能和沿墻走方式 提供參考信號(hào)。機(jī)器人的運(yùn)動(dòng)速度以及運(yùn)動(dòng)方向由處理器輸出的PWM信號(hào)來(lái)控制。火焰?zhèn)鞲衅?/strong>檢測(cè)房間內(nèi)火源,發(fā)現(xiàn)火源后機(jī)器人朝向火源方向行走,底部的灰度 傳感器檢測(cè)地面白線判斷機(jī)器人是否靠近火源,控制機(jī)器人暫停,啟動(dòng)風(fēng)扇滅火,滅火后回家。
1 系統(tǒng)硬件設(shè)計(jì)
根據(jù)設(shè)計(jì)要求,本系統(tǒng)主要由STM32F103、傳感器模塊、直流電機(jī)驅(qū)動(dòng)模塊、風(fēng)扇模塊、電源模塊等構(gòu)成。系統(tǒng)框圖如圖2所示。
1.1 機(jī)器人整體布局
機(jī)器人左右兩輪分別用兩個(gè)轉(zhuǎn)速和力矩完全相同的直流電機(jī)進(jìn)行驅(qū)動(dòng),機(jī)器人前部裝一個(gè)萬(wàn)向輪,這樣,可以輕松地使機(jī)器人改變運(yùn)行方向和運(yùn)動(dòng)速度。機(jī)器人前面裝有風(fēng)扇、火焰?zhèn)鞲衅骱图t外傳感器,頭部底側(cè)裝有灰度傳感器,左右兩側(cè)各有3個(gè)紅外測(cè)距傳感器,兩側(cè)的傳感器可以分別測(cè)量不同范圍內(nèi)的障礙物距離。
1.2 微控制器模塊
系統(tǒng)傳感器模塊要不斷采集環(huán)境信息,要求控制芯片有較高的實(shí)時(shí)處理能力和較高的處理速度,因此,系統(tǒng)選用嵌入式芯片STM32F103該芯片使用ARM先進(jìn)架構(gòu)的Cortex—M3內(nèi)核,CPU頻率可達(dá) 72 MHz,具有兩個(gè)16位ADC用于高速采集數(shù)據(jù)采集,15個(gè)I/O端口用于連接外部設(shè)備。I/O端口作為輸入口讀取檢測(cè)端口和傳感器組的數(shù)據(jù),作為輸出端口用于驅(qū)動(dòng)電機(jī)和風(fēng)扇。4個(gè)PWM定時(shí)器用于驅(qū)動(dòng)大功率直流電機(jī)。芯片具有速度快、功耗低、可靠性高、實(shí)時(shí)性強(qiáng)等優(yōu)點(diǎn)。
1.3 傳感器模塊
傳感器模塊主要由紅外測(cè)距傳感器、火焰?zhèn)鞲衅骱突叶葌鞲衅魅?lèi)組成。
紅外測(cè)距傳感器主要檢測(cè)障礙物(墻壁),防止機(jī)器人撞墻。本設(shè)計(jì)采用光電式紅外傳感器E18-D80NK,它是集紅外發(fā)射模塊和紅外接收模塊于一體的數(shù)字傳感器,有效檢測(cè)范圍為3~80 cm可調(diào),指向角≤15°。根據(jù)比賽場(chǎng)地特點(diǎn),本設(shè)計(jì)采用7個(gè)此類(lèi)傳感器,這樣的傳感器布局可以采集所需的各種信號(hào),準(zhǔn)確測(cè)障,靈活調(diào)整運(yùn)行方向,保證機(jī)器人運(yùn)動(dòng)過(guò)程中不碰壁。傳感器的分布如圖3所示。
火焰?zhèn)鞲衅饔脕?lái)檢測(cè)火源,尋找火源位置。采用5路火焰?zhèn)鞲衅鹘M成火焰?zhèn)鞲衅鹘M,傳感器組的設(shè)計(jì)如圖4所示,這種結(jié)構(gòu)可以探測(cè)180°范圍內(nèi)火焰信號(hào)源。機(jī)器人在房間門(mén)口就可檢測(cè)房間內(nèi)是否有火源,若無(wú)火源則直接退出該房間循跡下一個(gè)房間,大量節(jié)省了時(shí)間。
地面灰度傳感器安裝于機(jī)器人前部的底座上,用于檢測(cè)地面反射光線的強(qiáng)度。本設(shè)計(jì)選用QTI灰度傳感器,該器件可作為紅外接收器和發(fā)射器,內(nèi)嵌日光過(guò)濾器,可防止日光的干擾。其數(shù)字信號(hào)輸出主要用來(lái)檢測(cè)比賽場(chǎng)地中火源周?chē)陌拙€,控制機(jī)器人在有火源的白色圓弧處暫停。
1.4 電機(jī)驅(qū)動(dòng)模塊
為了控制機(jī)器人的運(yùn)動(dòng)速度和方向,設(shè)計(jì)了一種H橋驅(qū)動(dòng)電路。該電路以IRF4905和IRF3205 MOS管為開(kāi)關(guān)元件,以IRF1210為柵極驅(qū)動(dòng)芯片。主控芯片產(chǎn)生的PWM信號(hào)控制驅(qū)動(dòng)芯片,進(jìn)而控制機(jī)器人左右輪的轉(zhuǎn)速和萬(wàn)向輪的轉(zhuǎn)向。驅(qū)動(dòng)電路的電路圖如圖5所示。滅火風(fēng)扇的電機(jī)采用大功率MOs驅(qū)動(dòng)器,由伺服電機(jī)輸出端的信號(hào)驅(qū)動(dòng)。
1.5 其他模塊
為保證系統(tǒng)正常工作和順利滅火,系統(tǒng)還包括電源模塊、時(shí)鐘模塊和風(fēng)扇模塊。以電源模塊為例,電源模塊通過(guò)專用的電源轉(zhuǎn)換芯片7805產(chǎn)生傳感器所需的5 V電源,通過(guò)LM1117產(chǎn)生主控制器所需的3.3 V電源。電源模塊如圖6所示。
2 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件采用C語(yǔ)言編程,主要包括主程序、運(yùn)動(dòng)控制程序、滅火程序和回家程序等部分,主要用到的算法有沿墻走算法和趨光走算法。在程序設(shè)計(jì)中,通過(guò)傳感器采集信息,按照沿墻走算法控制機(jī)器人的行動(dòng),當(dāng)發(fā)現(xiàn)火源后按照趨光走算法迅速、準(zhǔn)確地靠近火源、滅火并回家。程序運(yùn)行中應(yīng)避免機(jī)器人碰撞障礙物(墻壁)。主程序控制流程圖如圖7所示。
機(jī)器人運(yùn)動(dòng)控制程序采用沿墻走算法,由ADC采樣程序、電機(jī)開(kāi)啟、電機(jī)停止、電機(jī)速度和方向控制程序、延時(shí)程序等部分構(gòu)成。通過(guò)紅外測(cè)距傳感器采集的信息,全方位地判斷障礙物的情況,控制機(jī)器人的下一步運(yùn)動(dòng)方式,主要有直走、后退、左微調(diào)、右微調(diào)、左轉(zhuǎn)彎、右轉(zhuǎn)彎等。
機(jī)器人滅火程序主要完成火源的尋找、確認(rèn)以及滅火任務(wù)并回家。在機(jī)器人檢測(cè)到房間內(nèi)有火源時(shí),采用趨光走算法,根據(jù)火焰?zhèn)鞲衅?/strong>組的狀態(tài),調(diào)整機(jī)器人運(yùn)動(dòng)角度,使其直面火源方向前進(jìn)。當(dāng)檢測(cè)到房間內(nèi)火源周?chē)拙€時(shí),停止運(yùn)動(dòng),開(kāi)啟風(fēng)扇滅火;當(dāng)檢測(cè)不到火源時(shí),滅火成功。最后,啟動(dòng)回家模式,該模式采用沿墻走避障算法。[!--empirenews.page--]
該軟件系統(tǒng)具有很大的靈活性,因?yàn)楦鞒绦蚴欠帜K設(shè)計(jì)的,當(dāng)比賽規(guī)則改變時(shí),只需通過(guò)主程序調(diào)用不同的模塊即可完成新的任務(wù)。
3 結(jié)果與分析
對(duì)本系統(tǒng)進(jìn)行性能測(cè)試,測(cè)試中首先對(duì)電機(jī)進(jìn)行測(cè)試,電機(jī)在正常工作電壓下,調(diào)整軟件系統(tǒng)的PWM控制值,可以實(shí)現(xiàn)電機(jī)的調(diào)速、直行前進(jìn)、后退、左微轉(zhuǎn)、右微轉(zhuǎn)、左轉(zhuǎn)90°和右轉(zhuǎn)90°等功能。然后對(duì)機(jī)器人在比賽場(chǎng)地進(jìn)行滅火實(shí)驗(yàn),共進(jìn)行30次實(shí)驗(yàn),隨機(jī)地把點(diǎn)燃的蠟燭放在各個(gè)房間的指定位置。機(jī)器人都能順利地找到火源,滅火回家且所用時(shí)間均在1 min之內(nèi),試驗(yàn)中沒(méi)有出現(xiàn)碰壁現(xiàn)象。此數(shù)據(jù)表明機(jī)器人能平穩(wěn)地按照靠墻走原則完成任務(wù)。整個(gè)系統(tǒng)具有很快的響應(yīng)速度、較高的穩(wěn)定性和較強(qiáng)的抗干擾能力。