肖玉笛
(西北民族大學(xué),甘肅蘭州,730106)
本設(shè)計(jì)主要用于機(jī)器人智能探測與采集大型塑膠管道內(nèi)的數(shù)據(jù),用戶可以通過WiFi操控機(jī)器人或者可以機(jī)器人智能離線運(yùn)行。在機(jī)器人運(yùn)行圖中若發(fā)現(xiàn)管道存在破損或堵塞會(huì)將此時(shí)的管道圖像拍攝想來通過WiFi模塊傳遞給上位機(jī)等待人工處理。機(jī)器人也可進(jìn)行智能離線運(yùn)行,運(yùn)行圖中使用圖像采集模塊對(duì)環(huán)境進(jìn)行拍攝,并將圖像信息傳遞給MSP430進(jìn)行處理從而判斷機(jī)器人接下來的運(yùn)行情況,當(dāng)檢測出圖像中有破損或很多雜質(zhì)黏合的時(shí)候,即管道出現(xiàn)破損或者堵塞,此時(shí)機(jī)器人會(huì)將圖像信息拍攝下來儲(chǔ)存在TF卡中,并且在MSP430通過GPS模塊建立的管道平面圖中將該點(diǎn)標(biāo)記為損壞或者堵塞,機(jī)器人返回后,用戶可以根據(jù)采集回來的數(shù)據(jù)進(jìn)行進(jìn)一步的分析,從而了解到管道里的情況,編導(dǎo)管道維修人員對(duì)管道進(jìn)行維修與清理工作。
管道檢測機(jī)器人由上位機(jī)和下位機(jī)兩部分組成。系統(tǒng)的框圖如圖1所示,其中上位機(jī)與下位機(jī)通過WiFi模塊相連接,通過自己編寫的軟件,實(shí)時(shí)顯示機(jī)器人的控制界面,主要包括環(huán)境圖像信息、環(huán)境溫濕度信息、照明系統(tǒng)工作信息、機(jī)器人行走速度、轉(zhuǎn)彎顯示等功能。而下位機(jī)是由以下重要幾部分組成:(1)電源模塊:由于各個(gè)模塊的標(biāo)準(zhǔn)工作電壓的不同,所以需要一個(gè)電源模塊來將輸入的15V的直流電轉(zhuǎn)化為各個(gè)模塊的工作電壓。(2)驅(qū)動(dòng)模塊:使用L298N電機(jī)驅(qū)動(dòng)模塊,這是一款經(jīng)典且兼顧性價(jià)比的驅(qū)動(dòng)模塊。(3)圖像采集模塊:使用OPEN MV4可編程攝像頭。可以通過MicroPython語言,對(duì)攝像頭編程從而實(shí)現(xiàn)需要的邏輯。攝像頭還內(nèi)置了部分圖像處理的算法,使用起來較為容易。(4)GPS模 塊:通 過HT1612Z3M3LD模塊將管道機(jī)器人的實(shí)時(shí)位置經(jīng)MSP430處理后通過WiFi模塊傳遞給上位機(jī)。(5)LCD顯示模塊:將環(huán)境圖像信息、管道機(jī)器人的運(yùn)行狀態(tài)信息、環(huán)境溫濕度、有害氣體含量等信息顯示在LCD顯示屏上便于人工對(duì)管道機(jī)器人的控制。(6)環(huán)境檢測模塊:通過溫濕度傳感器與有害氣體檢測傳感器檢測出的數(shù)據(jù)傳入MSP430等待處理。(7)WiFi模塊:將環(huán)境檢測模塊檢測的數(shù)據(jù)與圖像采集模塊采集的環(huán)境數(shù)據(jù)等通過ATK-ESP8266模塊傳遞給上位機(jī)。
圖1 系統(tǒng)框架圖
控制模塊采用的主控芯片為美國TI公司推出的超低功耗微處理器MSP430。它的主要資源有:60KB+256B的FLASH閃存、2KB的RAM、帶有PWM輸出功能及3個(gè)捕獲/比較寄存器的16位定時(shí)器、2個(gè)串行通信接口、2個(gè)8位的并行口并且?guī)в型庵袛喙δ堋?個(gè)8位并行端口、一個(gè)12位AD轉(zhuǎn)換器等模塊。MSP430及部分周邊電路示意圖如圖2所示。最小系統(tǒng)是由保證處理器可靠工作所必需的基本電路組成的,主要包括電源電路、時(shí)鐘電路、復(fù)位電路等。本系統(tǒng)需要使用+5V和+3.3V的直流穩(wěn)壓電源,其中MSP430及部分外圍器件需要+3.3V電源,另外部分需要+5V電源。在本系統(tǒng)中,以+5V直流電壓為輸入電壓,+3.3V由+5V直接線性降壓。采用電源模塊輸出的+3.3V與+5V為系統(tǒng)供電。
圖2 MSP430及部分周邊電路示意圖
MSP430的所有外圍模塊的控制都可通過特殊寄存器來實(shí)現(xiàn),故其程序的編寫較為簡單。編程開發(fā)時(shí)通過專用的編程器CCS或者通用編輯器Keil4即可,編程語言可以選擇匯編語言或者C語言。本設(shè)計(jì)中采用的是C語言來編程。
MSP430主要功能為:對(duì)圖像采集模塊的圖像信息進(jìn)行處理讓其顯示在LCD顯示模塊中、為驅(qū)動(dòng)模塊提供電機(jī)運(yùn)作的PWM信號(hào)、對(duì)GPS模塊的信息進(jìn)行處理與回應(yīng)、對(duì)環(huán)境采集模塊的傳感器傳輸來的信息進(jìn)行處理并讓其顯示在LCD模塊中方便人工進(jìn)行控制。將LCD顯示的圖像數(shù)據(jù)、溫濕度傳感器檢測的數(shù)據(jù)、電機(jī)的轉(zhuǎn)速等數(shù)據(jù)通過WiFi模塊傳給上位機(jī)讓人工了解管道的情況。
電源可為管道機(jī)器人提供動(dòng)力,并且為控制系統(tǒng)及傳感器供電,本系統(tǒng)采用的是由15V直流電池經(jīng)過穩(wěn)壓后進(jìn)行升壓降壓從而達(dá)到各個(gè)模塊的標(biāo)準(zhǔn)工作電壓的需要。本模塊采用Buck-Boost變換器即升降壓斬波電路來實(shí)現(xiàn)。該電路由一個(gè)IGBT、一個(gè)大電感、一個(gè)二極管、一個(gè)濾波電容構(gòu)成。電路極為簡單,只需要調(diào)節(jié)給IGBT的PWM信號(hào)波即可實(shí)現(xiàn)升壓與降壓的功能。值得注意的是,由于電路的構(gòu)造,使負(fù)載電壓的極性為上負(fù)下正與電源電壓極性正好相反,因此該電路也叫做反極性斬波電路,使用時(shí)為了保證輸出電壓極性與其他模塊一致,接入時(shí)將電源線與地線反接即可。
驅(qū)動(dòng)模塊采用的是L298N直流電機(jī)驅(qū)動(dòng)模塊。此電機(jī)驅(qū)動(dòng)模塊性價(jià)比極高,最大功率為20W,足夠驅(qū)動(dòng)兩個(gè)電機(jī)使用,并且還有多種供電模式,可選擇版內(nèi)供電或者外接電池供電,可用供電范圍為5~35V,完全滿足本管道機(jī)器人的使用,通過的邏輯電流僅0~36mA,而MSP430的I/O輸出電流約為0~32mA完全滿足需要。L298N使用極為簡單只需給模塊供電后,將MSP430與L298N共地,使用杜邦線傳輸PWM信號(hào)即可驅(qū)動(dòng)電機(jī)運(yùn)作。缺點(diǎn)是體積較大,功耗優(yōu)化不好。L298N采用的是H橋雙路驅(qū)動(dòng),可以同時(shí)驅(qū)動(dòng)兩個(gè)電機(jī)運(yùn)作,本管道機(jī)器人只需要兩個(gè)L298N即可實(shí)現(xiàn)。
圖像采集模塊使用的是OPEN MV4可編程攝像頭,OPEN MV4內(nèi)置了STM32H743VI處理器,它具有400 MHz的頻率,有1MB的RAM,有2MB的FLASH閃存。因此可以在模塊內(nèi)就內(nèi)置攝像頭的驅(qū)動(dòng)程序和一部分的功能程序,這就極大地簡化了主控芯片的負(fù)荷,只需要給STM32H743VI一段可執(zhí)行的程序即可。而OPEN MV4內(nèi)置有SD卡,SD卡又可以看作一個(gè)文件系統(tǒng),當(dāng)給模塊上電時(shí),SD卡的文件系統(tǒng)就會(huì)自動(dòng)取代STM32H743V中內(nèi)置的Flash文件系統(tǒng),每次上電,就會(huì)運(yùn)行SD卡中的main.py文件,即給OPEN MV4內(nèi)置的功能主函數(shù)。此攝像頭模塊使用的是Python編程,Python作為一門擴(kuò)展性極強(qiáng)的語言應(yīng)用于嵌入式是毫無問題的,而對(duì)于OPEN MV4的編程由于官方提供了大部分的攝像頭基礎(chǔ)功能的函數(shù),如圖像數(shù)據(jù)的采集處理、圖像的識(shí)別處理,圖像文件的傳輸?shù)?,這就讓其使用起來簡化的很多。
GPS模塊采用的是HT1612Z3M3LD模塊,具有北斗與GPS雙模定位功能,它的體積極小,定位精度高,由于此模塊采用了AT6558R低功耗芯片,所以其功耗低,靈敏度高,由于模塊使用了0.5PRM的高精度TCXO來完成正交誤差等誤差補(bǔ)償,使其定位的精度變得很高,就算在信號(hào)很差的管道中也能保持良好的定位功能。內(nèi)置有LNA低噪聲信號(hào)放大器,使得其抗干擾性與定位的精準(zhǔn)度進(jìn)一步提高。GPS模塊通過實(shí)時(shí)定位將位置信息傳遞給MSP430處理后可以顯示在LCD模塊中或者用于構(gòu)建管道的平面圖等,也可以將位置信息通過WiFi模塊發(fā)送給上位機(jī),方便人工操控管道機(jī)器人的。
本模塊采用的是由ALIENTEK公司推出7寸RGB接口電容觸摸屏模塊ATK-7016。該模塊分辨率為1024×600,且最高支持24位真彩顯示。由于該模塊沒有內(nèi)置顯存,因此在使用時(shí)需提供給它外部RAM來作為模塊的顯存使用。該模塊具有觸摸功能,最多可支持5點(diǎn)同時(shí)觸摸,因此具有較好的操控效果。該模塊尺寸為100mm×180mm,正好可以放置在管道機(jī)器人的上部當(dāng)作人工操作顯示屏來使用,主要用來顯示環(huán)境圖像、環(huán)境數(shù)據(jù)、管道機(jī)器人運(yùn)行數(shù)據(jù)等。
環(huán)境檢測模塊主要有溫度、濕度、有害氣體檢測等。本模塊中溫濕度的測量使用的是數(shù)字溫濕度傳感器DHT11,它是由一個(gè)電阻式感濕元件、一個(gè)NTC測溫元件和一個(gè)用于計(jì)算與校驗(yàn)溫濕度數(shù)值的八位的單片機(jī)組成,因此它具有很高的抗干擾性,既有較高的精度。測量的濕度范圍為:20%~90%RH溫度范圍為:0℃~50℃,完全滿足本管道機(jī)器人的使用。它的體積極小,功耗極低。每個(gè)傳感器都內(nèi)置有標(biāo)準(zhǔn)校準(zhǔn)系數(shù),在測量結(jié)果送入八位單片機(jī)后進(jìn)行校準(zhǔn)數(shù)據(jù)計(jì)算,再通過串口傳入MSP430中處理即可。本模塊中有害氣體的檢測使用的是MQ135空氣質(zhì)量檢測傳感器,它使用二氧化錫作為氣敏材料,由于二氧化錫在清潔空氣中電導(dǎo)率低,而空氣被污染時(shí),二氧化錫的電導(dǎo)率會(huì)上升,所以可以將電導(dǎo)率與空氣中有害物質(zhì)的含量成一個(gè)函數(shù)關(guān)系而計(jì)算出有害氣體的濃度。通過一個(gè)簡單的外圍電路即可實(shí)現(xiàn)。它可以用于檢測氨氣、硫化物、苯系蒸汽、煙霧等有害氣體,檢測的濃度范圍為:10~1000ppm。溫濕度與有害氣體的濃度檢測數(shù)據(jù)均被MSP430處理后直接顯示在LCD顯示屏上,并通過WiFi模塊將數(shù)據(jù)傳輸給上位機(jī)讓人工對(duì)數(shù)據(jù)進(jìn)行記錄,從而可以避免人工進(jìn)入不利于人類進(jìn)去的管道中。
WiFi模塊的是ATK-ESP8266,它是由ALIENTEK公司開發(fā)的一款UART-WiFi模塊, 該模塊采用串口與其他設(shè)備進(jìn)行通信,內(nèi)置有TCP/IP協(xié)議棧,實(shí)現(xiàn)了串口數(shù)據(jù)與WiFi之間的轉(zhuǎn)換。使用該模塊,將傳統(tǒng)的串口數(shù)據(jù)通過WIFI來進(jìn)行傳輸,本管道機(jī)器人中主要使用WIFI來傳輸圖像信息與人工發(fā)出的控制信息等。該模塊兼容了3.3V與5V的系統(tǒng),可以非常方便地連接上管道機(jī)器人。該模塊的工作頻率為2.4GHz,發(fā)射功率約為11~18dbm,板載有PCB天線,因此體積較小約為29mm×19mm,該尺寸放置在管道機(jī)器人的右后方剛剛好。主要使用的無線標(biāo)準(zhǔn)為IEEE 802.11b,最高支持54Mbps的無線傳輸速率,完全可以滿足本管道機(jī)器人的數(shù)據(jù)傳輸要求,該模塊的WiFi工作模式有:WiFi STA、WiFi AP、WiFi STA+WiFi AP三種工作模式,從而使得模塊可以快速構(gòu)建WiFi數(shù)據(jù)傳輸?shù)姆桨福奖愎艿罊C(jī)器人與上位機(jī)之間的連接。本模塊作用主要是通過WiFi模塊將LCD顯示的信息與環(huán)境信息傳遞到上位機(jī),從而通過人工判斷小車接下來的運(yùn)行情況與記錄環(huán)境的數(shù)據(jù)等。
系統(tǒng)的程序框圖如圖3所示,首先管道機(jī)器人進(jìn)行初始化,初始化完畢后等待人工通過上位機(jī)發(fā)送運(yùn)行信息,若為人工控制,則管道機(jī)器人完全由人工通過WIFI來控制其運(yùn)行。此時(shí)只需如果能夠通過同步來的圖像與環(huán)境的各種信息來進(jìn)行遙控機(jī)器人運(yùn)行即可。若十秒內(nèi)沒有收到上位機(jī)發(fā)來的運(yùn)行信息或者運(yùn)行信息為機(jī)器人智能控制,則機(jī)器人會(huì)根據(jù)圖像信息判斷前方是否堵塞而選擇繼續(xù)運(yùn)行或者將堵塞的圖片信息發(fā)送給上位機(jī)等待人工處理的結(jié)果,若此時(shí)存在第二個(gè)通道,則機(jī)器人會(huì)直接進(jìn)入第二通道繼續(xù)進(jìn)行管道的勘探與測量工作。若此時(shí)沒有發(fā)生堵塞,機(jī)器人會(huì)檢測環(huán)境空氣有害氣體含量,若有害氣體含量超過整定值,機(jī)器人會(huì)通過WiFi發(fā)送警報(bào)信息給上位機(jī)等待人工處理。機(jī)器人運(yùn)行過程中的所有圖像信息、環(huán)境溫濕度信息、機(jī)器人運(yùn)行狀態(tài)信息等都會(huì)在LCD顯示屏中顯示出來。并且WiFi模塊會(huì)實(shí)時(shí)將LCD顯示屏上的信息傳遞給上位機(jī)。由于WiFi存在極限控制距離,當(dāng)機(jī)器人即將超出控制距離時(shí),會(huì)等待人工信號(hào),若需要傳遞來運(yùn)行信號(hào)為撤退,則機(jī)器人會(huì)通過由GPS模塊得到位置信息通過MSP430構(gòu)建管道平面圖并撤離。若傳遞來運(yùn)行信號(hào)為離線智能運(yùn)行,則機(jī)器人會(huì)啟動(dòng)離線智能運(yùn)行模式,會(huì)自動(dòng)判斷是否有路線通過,并且將所拍攝的圖像信息與環(huán)境數(shù)據(jù)儲(chǔ)存在TF儲(chǔ)存卡中,等待返回后人工處理。
圖3 系統(tǒng)程序框圖
如圖4所示為部分主程序,程序中展現(xiàn)了LCD的顯示程序與WiFi的接收與傳遞信息的程序,在一個(gè)正常運(yùn)行的死循環(huán)內(nèi),會(huì)將溫濕度傳感器傳遞來的信息分別儲(chǔ)存到兩個(gè)字符數(shù)組WenDu_Str與ShiDu_Str中,有害氣體檢測模塊傳遞來的信息經(jīng)MSP430處理后變成字符數(shù)據(jù)儲(chǔ)存在YouHaiQiTi_Str中,之后通過LCD顯示函數(shù)LCD_ShowString將其顯示在LCD顯示屏上。由于圖像信息較為復(fù)雜,并不是單獨(dú)的字符數(shù)據(jù),所以在此編寫了一個(gè)子程序Tu_LCD()來進(jìn)行將圖像信息顯示在LCD顯示屏上的功能。WIFI()函數(shù)的功能是主動(dòng)將數(shù)據(jù)發(fā)送給上位機(jī)。并且在程序運(yùn)行狀態(tài)中,接收WIFI信號(hào)與接收環(huán)境檢測模塊傳遞來的溫濕度等信息都是通過中斷函數(shù)來接收的,在此處不過多展示。
圖4 部分程序示意圖
本設(shè)計(jì)中的管道機(jī)器人功能尤為強(qiáng)大,不僅實(shí)現(xiàn)了自動(dòng)智能運(yùn)行,又實(shí)現(xiàn)了復(fù)雜情況人工控制。兩種運(yùn)行方式足以適應(yīng)絕大部分管道地形,而有害氣體的檢測功能極大地保障了管道維修人員的人身安全,通過小車的運(yùn)行軌跡構(gòu)建的管道平面數(shù)據(jù)極大地方便了管道維修人員對(duì)管道進(jìn)行保養(yǎng)與維護(hù)。因此,在不久的將來管道檢測機(jī)器人將會(huì)完全代替人工進(jìn)行管道的檢測,甚至可能還會(huì)出現(xiàn)管道維修機(jī)器人,可完全代替人工進(jìn)行這項(xiàng)成本高危險(xiǎn)系數(shù)大的工作。