張 欽
(淮安生物工程高等職業(yè)學校,江蘇 淮安 223200)
消防機器人具有智能化、靈活性特點,尤其在火災撲救中采用智能化消防機器人技術,可有效消除安全隱患。結合消防滅火需求,設計了基于STM32單片機的智能消防機器人。
基于STM32單片機的智能化消防機器人主要由人機互動界面、感知平臺、運動平臺、傳感器檢測設備、車體組成,如圖1所示。
圖1 智能消防機器人的設計Fig.1 Design of intelligent fire fighting robot
將主芯片進行多種任務處理,在機器人外部設置溫度傳感器、氣體和水壓傳感器、超聲波傳感器、陀螺儀設備等,可準確采集火災現場與周圍的數據信息。同時設計了數字通信模塊,以提高數據傳輸效果。車體內部配置了前后攝像頭、高清攝像頭、熱成像攝像頭,可有效進行各類視頻的切換、傳輸處理,并利用高清高亮HDMI接口顯示出來,通過高清圖像模塊進行無線圖像傳輸,在后臺使用遙控器進行攝像頭控制,實時、清晰地將視頻和圖像顯示出來。車體外部設計了自動化火災噴淋系統(tǒng)進行車體的自主降溫,避免火災事故中車體零部件受到損害[1]。
1.2.1 硬件設計
系統(tǒng)硬件由以STM32單片機為核心的下位機和上位機組成,其中STM32單片機芯片是核心控制板,可確保所有功能的實現。
上位機設計。設計目的是準確進行霍爾手柄、操作臺中各個功能控制信號的讀取,利用A/D轉換模式對信號進行轉換,使用數據傳輸模塊將信息數據發(fā)送到下位機的主控制器內,獲取操作手柄在坐標系中的實際位置。
下位機設計。為有效進行車體控制需進行運動邏輯分析,如果左側與右側電機正轉速度相同,可控制車輛向前行駛;如果正轉速度不同,可控制車輛向左或向右轉動;如果左側與右側的電機轉速相同但處于反轉狀態(tài),可控制車輛向后行駛;左側與右側電機轉速不同且處于反轉狀態(tài),可使車輛左后倒車或右后倒車。
圖2 霍爾手柄坐標Fig.2 Hall handle coordinates
如圖2所示,將手柄設置為右側上方第一象限,推動到最遠的位置,使整個運動成為圓弧,設置半徑a,將其作為電機電壓最高的數據值,手柄移動位置b,將其作為實際電機電壓的數據值,單片機讀取數據值的過程中,讀取到推桿頂端坐標(x,y)的數據信息,按照下列公式進行b、m和α數據值的計算分析[2]。
m=b/a
表1 電機控制邏輯和計算Tab.1 Motor control logic and calculation
除了進行上述各類動作控制外,還能通過對左側與右側電機的相同轉速控制,進行相反轉向調控,使車輛在原地旋轉。
控制臺操作面板還能進行水炮上仰控制、向下操作控制、左側和右側擺動控制、水流噴射措施切換等,同時進行觀察云臺、蜂鳴器、剎車、照明系統(tǒng)控制等。
1.2.2 軟件設計
軟件設計思路。系統(tǒng)軟件設計要以KEIL環(huán)境為基礎進行控制板編程,采用C語言進行控制程序編寫,由于STM32單片機芯片具有單個周期DSP指令與FPU浮點單元,計算性能較高,因此可節(jié)約數據信息計算時間,還能為程序執(zhí)行、數據信息傳輸等提供支持,加快數據處理和傳輸速率,滿足系統(tǒng)設計標準要求[3]。
上位機控制軟件設計。應完善軟件的操作流程,如圖3所示。需完成系統(tǒng)和通信模塊的初始化操作,進入到主循環(huán)部分,如果由人工進行操作,可通過A/D轉換模式對控制信號轉換,進入單片機進行緩存處理,再輸送到數據傳輸模塊,發(fā)送到下位機設備中。在此期間,單片機能夠從數據傳輸模塊內進行傳感數據信息的讀取,而后發(fā)送給數字顯示屏,將相關信息全面顯示出來。
圖3 上位機控制程序的流程Fig.3 Flow of the upper computer control program
下位機控制軟件的設計。如圖4所示,需先進行初始化處理,讀取傳感器數據信息,將數據存儲到寄存器內,利用無線數據傳輸模塊定期將寄存器的數據信息發(fā)送到上位機系統(tǒng)中。如果接收到上位機系統(tǒng)發(fā)送的控制信號,先進行左側與右側電機控制量的計算分析,轉換成PWM控制信號,借助串口將信號傳送[4]。
圖4 下位機控制軟件操作流程Fig.4 Flow of lower computer control software operation
圖像處理白化算法軟件設計。機器人圖像處理技術具有多元化特點,本設計是將STM32單片機作為核心,主要使用白化算法技術方式有效解決機器人圖像成像問題[5]。消防機器人在進行火災撲救和搶險時可能會出現物體反射光亮、照明強度過高的問題,導致攝像拍攝受到不利影響,出現不確定性的風險,系統(tǒng)采集的圖像和視頻等清晰度難以符合標準。為有效防止此類不確定性因素帶來的影響,應合理設計圖像的白化算法軟件,收集圖像的像素數據值信息,將其轉變成平均數據值與單位方差數據值。軟件實際運行過程中,先進行原始灰度圖像P像素數據值的分析,按照下列公式進行像素方差數據值δ2和平均數據值μ的計算。
完成計算后,將δ2與μ的數據值轉化,根據公式計算分析:
將灰度圖像轉變成彩色圖像,需分別設置3個不同的通道,對δ2與μ數據值精準計算,結合公式進行像素轉化處理。同時在系統(tǒng)運行期間結合硬件平臺特點,合理進行白化算法軟件的應用,通過STM32單片機準確進行計算處理和濾波處理,利用圖像存儲器設備和系統(tǒng)進行畫面截取,使用MATLAB完成圖像效果的觀察[6]。
車體整體結構設計要在滿足平地行駛要求的基礎上能夠在斜坡區(qū)、樓梯區(qū)域和積水區(qū)域安全駕駛運行,具備一定的特殊功能,如可在洼區(qū)正常行駛,同時能爬坡、跨越障礙,可在原地自由旋轉。設計的履帶類型機械結構如圖5所示。
圖5 履帶類型行走機械結構Fig.5 Mechanical structure of track type walking
履帶類型結構和地面接觸面積很大,有很強的附著力和牽引能力,能夠在積水道路和泥濘道路行走,通過性很高。整體車體的架構設計采用鋁合金鑄造材料,輪系部分由驅動輪、拖鏈輪等組成。將精密行星減速無刷電機設備配置在驅動輪上,提升驅動力水平。導向輪按照地面摩擦系數的差異,對履帶松緊度進行調整,使履帶適應不同的環(huán)境。配置支撐輪用來支撐車體重量、水帶重量和水炮重量,減震器設備的應用則能防止車體顛簸,增強車體的穩(wěn)定性和平穩(wěn)性,支撐輪能夠跟隨履帶發(fā)生轉動,降低兩部分的摩擦。除此之外,結合車體的結構特點,設計了專用的消防水炮設施,在車體底部區(qū)域的中間位置配置水管,車體后下方位置將水管接入,利用前端水炮進行滅火劑的噴射,實際運行中整體結構重心很低,噴水過程中車體非常穩(wěn)定[7]。
A.速度試驗。將機器人設置在道路中行駛,進行運行速度測試,發(fā)現機器人運行速度為3 km/h左右,最高爬坡角度36°時,行走速度可達0.9 km/h,直線行走200 m的范圍內,雖然會出現方向誤差偏移,但能夠滿足具體的實踐應用標準要求[8]。B.圖像仿真試驗。仿真真實的火災現場圖像,發(fā)現屏幕中顯示的圖像沒有明顯的波紋和雪花,可滿足應用標準規(guī)范。C.水炮試驗。按照要求在機器人上設置水帶,將水的壓力調整為0.8 mpa,發(fā)現水炮的噴水長度為72 m左右,自動化噴淋系統(tǒng)能夠快速開啟,有效降溫。
下位機整體架構由控制板、圖片視頻傳輸模塊、傳感器、電機驅動和電源電壓檢測模塊組成,主要功能是進行上位機操作數據信息和信號的讀取,準確計算控制量數據,將PWM信號輸送到電機驅動器系統(tǒng),對水炮設備和云臺設備的工作進行控制。與此同時,進行不同傳感器數據信息的讀取,傳輸到上位機系統(tǒng),按照傳感器所檢測的水炮水壓數據、車輛前后障礙距離數據、車體傾斜角度數據、車體溫度數據等,合理進行各類數據的傳輸,同時下位機中的電壓模塊對電池電量進行動態(tài)化檢測,不同數據經過串口傳輸到下位機控制板內,利用數據模塊將數據發(fā)送到上位機,使各類數據都能在顯示屏中顯示出來。另外,車輛具備一定的緊急剎車性能,為防止云臺或水炮等設備操作過程中對機械系統(tǒng)造成損傷,應合理設置云臺機械限位,設置水炮的左側和右側限位,嚴格進行自動擺動功能設定,確保水炮開啟過程中擺動幅度能夠控制在一定的范圍內[9]。
基于STM32單片機的智能消防機器人設計,需完善和優(yōu)化整體架構設計模式和體系,確保軟件系統(tǒng)、硬件設備和整體車體機械結構設計的科學性與合理性,還需進行試驗測試,分析測試結果,確保后續(xù)的良好應用。