一款基于STM32的智能滅火機器人設計
要:設計了一種能順利完成在模擬房間內自動(dòng)滅火任務(wù)的智能滅火機器人。方案以STM32F103嵌入式芯片為控制核心,采用傳感器組采集環(huán)境信號,控制機器人行動(dòng)。該智能機器人能完成自動(dòng)循跡、自動(dòng)避障、自動(dòng)尋找火源并迅速準確滅火、回家的功能。實(shí)驗結果表明:該機器人行動(dòng)靈活快速,具有很高的準確性和穩定性。
本文引用地址:http://dyxdggzs.com/article/246312.htm引言
隨著(zhù)人工智能和計算機技術(shù)研究的深入,智能機器人也成為科學(xué)愛(ài)好者和高校學(xué)子研究的熱點(diǎn),具有很大的發(fā)展空間。智能機器人技術(shù)涉及自動(dòng)控制原理、傳感器技術(shù)、信息處理、人工智能等學(xué)科,具有很強的綜合性,是一個(gè)國家發(fā)展水平的重要標志。
本設計的研究初衷來(lái)源于滅火機器人比賽,比賽場(chǎng)地將采用國際標準比賽場(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寬的白線(xiàn)。根據要求,該機器人要在模擬的四室一廳房間內完成發(fā)現并確認火源、滅火和回家(回到出發(fā)點(diǎn)H)等功能。

本文以STM32F103嵌入式芯片為核心,完成滅火機器人的軟、硬件設計。當機器人啟動(dòng)后,前部和左右的紅外測距傳感器為機器人的避障功能和沿墻走方式提供參考信號。機器人的運動(dòng)速度以及運動(dòng)方向由處理器輸出的PWM信號來(lái)控制?;鹧鎮鞲衅鳈z測房間內火源,發(fā)現火源后機器人朝向火源方向行走,底部的灰度傳感器檢測地面白線(xiàn)判斷機器人是否靠近火源,控制機器人暫停,啟動(dòng)風(fēng)扇滅火,滅火后回家。
1 系統硬件設計
根據設計要求,本系統主要由STM32F103、傳感器模塊、直流電機驅動(dòng)模塊、風(fēng)扇模塊、電源模塊等構成。系統框圖如圖2所示。

1.1 機器人整體布局
機器人左右兩輪分別用兩個(gè)轉速和力矩完全相同的直流電機進(jìn)行驅動(dòng),機器人前部裝一個(gè)萬(wàn)向輪,這樣,可以輕松地使機器人改變運行方向和運動(dòng)速度。機器人前面裝有風(fēng)扇、火焰傳感器和紅外傳感器,頭部底側裝有灰度傳感器,左右兩側各有3個(gè)紅外測距傳感器,兩側的傳感器可以分別測量不同范圍內的障礙物距離。
1.2 微控制器模塊
系統傳感器模塊要不斷采集環(huán)境信息,要求控制芯片有較高的實(shí)時(shí)處理能力和較高的處理速度,因此,系統選用嵌入式芯片STM32F103該芯片使用ARM先進(jìn)架構的Cortex—M3內核,CPU頻率可達72 MHz,具有兩個(gè)16位ADC用于高速采集數據采集,15個(gè)I/O端口用于連接外部設備。I/O端口作為輸入口讀取檢測端口和傳感器組的數據,作為輸出端口用于驅動(dòng)電機和風(fēng)扇。4個(gè)PWM定時(shí)器用于驅動(dòng)大功率直流電機。芯片具有速度快、功耗低、可靠性高、實(shí)時(shí)性強等優(yōu)點(diǎn)。
1.3 傳感器模塊
傳感器模塊主要由紅外測距傳感器、火焰傳感器和灰度傳感器三類(lèi)組成。
紅外測距傳感器主要檢測障礙物(墻壁),防止機器人撞墻。本設計采用光電式紅外傳感器E18-D80NK,它是集紅外發(fā)射模塊和紅外接收模塊于一體的數字傳感器,有效檢測范圍為3~80 cm可調,指向角≤15°。根據比賽場(chǎng)地特點(diǎn),本設計采用7個(gè)此類(lèi)傳感器,這樣的傳感器布局可以采集所需的各種信號,準確測障,靈活調整運行方向,保證機器人運動(dòng)過(guò)程中不碰壁。傳感器的分布如圖3所示。

火焰傳感器用來(lái)檢測火源,尋找火源位置。采用5路火焰傳感器組成火焰傳感器組,傳感器組的設計如圖4所示,這種結構可以探測180°范圍內火焰信號源。機器人在房間門(mén)口就可檢測房間內是否有火源,若無(wú)火源則直接退出該房間循跡下一個(gè)房間,大量節省了時(shí)間。

地面灰度傳感器安裝于機器人前部的底座上,用于檢測地面反射光線(xiàn)的強度。本設計選用QTI灰度傳感器,該器件可作為紅外接收器和發(fā)射器,內嵌日光過(guò)濾器,可防止日光的干擾。其數字信號輸出主要用來(lái)檢測比賽場(chǎng)地中火源周?chē)陌拙€(xiàn),控制機器人在有火源的白色圓弧處暫停。
1.4 電機驅動(dòng)模塊
為了控制機器人的運動(dòng)速度和方向,設計了一種H橋驅動(dòng)電路。該電路以IRF4905和IRF3205 MOS管為開(kāi)關(guān)元件,以IRF1210為柵極驅動(dòng)芯片。主控芯片產(chǎn)生的PWM信號控制驅動(dòng)芯片,進(jìn)而控制機器人左右輪的轉速和萬(wàn)向輪的轉向。驅動(dòng)電路的電路圖如圖5所示。滅火風(fēng)扇的電機采用大功率MOs驅動(dòng)器,由伺服電機輸出端的信號驅動(dòng)。

1.5 其他模塊
為保證系統正常工作和順利滅火,系統還包括電源模塊、時(shí)鐘模塊和風(fēng)扇模塊。以電源模塊為例,電源模塊通過(guò)專(zhuān)用的電源轉換芯片7805產(chǎn)生傳感器所需的5 V電源,通過(guò)LM1117產(chǎn)生主控制器所需的3.3 V電源。電源模塊如圖6所示。

2 系統軟件設計
系統軟件采用C語(yǔ)言編程,主要包括主程序、運動(dòng)控制程序、滅火程序和回家程序等部分,主要用到的算法有沿墻走算法和趨光走算法。在程序設計中,通過(guò)傳感器采集信息,按照沿墻走算法控制機器人的行動(dòng),當發(fā)現火源后按照趨光走算法迅速、準確地靠近火源、滅火并回家。程序運行中應避免機器人碰撞障礙物(墻壁)。主程序控制流程圖如圖7所示。

機器人運動(dòng)控制程序采用沿墻走算法,由ADC采樣程序、電機開(kāi)啟、電機停止、電機速度和方向控制程序、延時(shí)程序等部分構成。通過(guò)紅外測距傳感器采集的信息,全方位地判斷障礙物的情況,控制機器人的下一步運動(dòng)方式,主要有直走、后退、左微調、右微調、左轉彎、右轉彎等。
機器人滅火程序主要完成火源的尋找、確認以及滅火任務(wù)并回家。在機器人檢測到房間內有火源時(shí),采用趨光走算法,根據火焰傳感器組的狀態(tài),調整機器人運動(dòng)角度,使其直面火源方向前進(jìn)。當檢測到房間內火源周?chē)拙€(xiàn)時(shí),停止運動(dòng),開(kāi)啟風(fēng)扇滅火;當檢測不到火源時(shí),滅火成功。最后,啟動(dòng)回家模式,該模式采用沿墻走避障算法。
該軟件系統具有很大的靈活性,因為各程序是分模塊設計的,當比賽規則改變時(shí),只需通過(guò)主程序調用不同的模塊即可完成新的任務(wù)。
3 結果與分析
對本系統進(jìn)行性能測試,測試中首先對電機進(jìn)行測試,電機在正常工作電壓下,調整軟件系統的PWM控制值,可以實(shí)現電機的調速、直行前進(jìn)、后退、左微轉、右微轉、左轉90°和右轉90°等功能。然后對機器人在比賽場(chǎng)地進(jìn)行滅火實(shí)驗,共進(jìn)行30次實(shí)驗,隨機地把點(diǎn)燃的蠟燭放在各個(gè)房間的指定位置。機器人都能順利地找到火源,滅火回家且所用時(shí)間均在1 min之內,試驗中沒(méi)有出現碰壁現象。此數據表明機器人能平穩地按照靠墻走原則完成任務(wù)。整個(gè)系統具有很快的響應速度、較高的穩定性和較強的抗干擾能力。
c語(yǔ)言相關(guān)文章:c語(yǔ)言教程
電路圖符號相關(guān)文章:電路圖符號大全
傳感器相關(guān)文章:傳感器工作原理
伺服電機相關(guān)文章:伺服電機工作原理
風(fēng)速傳感器相關(guān)文章:風(fēng)速傳感器原理
評論