水中管道智能巡檢機(jī)器人設(shè)計(jì)*
*基于項(xiàng)目:第七屆全國(guó)大學(xué)生工程實(shí)訓(xùn)大賽
本文引用地址:http://2s4d.com/article/202307/449028.htm作者簡(jiǎn)介:李澤科(1999—),男,漢族,甘肅天水,本科生,專(zhuān)業(yè),機(jī)械設(shè)計(jì)制造及其自動(dòng)化。
通訊作者簡(jiǎn)介:陳越超(1987—),男,漢族,吉林長(zhǎng)春,碩士,研究方向:檢測(cè)技術(shù)及儀器。
水下管道巡檢機(jī)器人是水下作業(yè)中必不可少的設(shè)備,它在很大程度上幫助人類(lèi)完成了一系列復(fù)雜的工作,提高了工作效率,解決了安全問(wèn)題。但是,目前水下管道巡檢機(jī)器人實(shí)現(xiàn)的功能并不完善,為了解決準(zhǔn)確循跡以及標(biāo)記管道泄露和腐蝕位置問(wèn)題,設(shè)計(jì)了一款用于水下管道智能巡檢機(jī)器人,它主要具有準(zhǔn)確循跡、識(shí)別與檢測(cè)功能,可以解決上述問(wèn)題。本設(shè)計(jì)能夠在水下完成操作,當(dāng)水下機(jī)器人船身出現(xiàn)傾斜,會(huì)通過(guò)姿態(tài)傳感器反饋到主控板,顯示當(dāng)前機(jī)器人的姿態(tài)狀況。在下潛和上升過(guò)程中,通過(guò)水壓傳感器進(jìn)行水壓檢測(cè),在此過(guò)程中感知被測(cè)量的信息,并根據(jù)一定的規(guī)律轉(zhuǎn)換成可用信號(hào);在水下管道檢測(cè)中,能夠發(fā)現(xiàn)管道表面腐蝕的地方并進(jìn)行標(biāo)記,以便修復(fù)管道;在行走過(guò)程中,可對(duì)水下垃圾進(jìn)行抓取回收,實(shí)現(xiàn)水下環(huán)境的清理與保護(hù)。
1 系統(tǒng)方案設(shè)計(jì)
本設(shè)計(jì)主要由2 塊ATMEGA2560 單片機(jī)作為主控板,分別接收OpenMV、水壓傳感器和姿態(tài)傳感器的數(shù)據(jù)和信息,以及控制電機(jī)的轉(zhuǎn)動(dòng)和標(biāo)志物的識(shí)別。啟動(dòng)電源之后,循跡模塊和識(shí)別模塊開(kāi)始工作,利用水壓傳感器與姿態(tài)傳感器實(shí)時(shí)檢測(cè)水壓和水下機(jī)器人的姿態(tài)狀況。本設(shè)計(jì)能夠更好地進(jìn)行水下管道檢測(cè),提高工作效率且便于操作。系統(tǒng)設(shè)計(jì)框圖如圖1所示。
圖1 系統(tǒng)設(shè)計(jì)
2 系統(tǒng)硬件設(shè)計(jì)分析
2.1 主控板的選用
本設(shè)計(jì)選用Arduino Mega2560 作為主控板;核心電路板設(shè)計(jì)采用USB 接口,操作簡(jiǎn)單。在燒制程序時(shí),可直接利用USB 接口下載程序。此外,主控板具有2 種供電模式:USB 直接供電或利用電池外部供電。與其他主控板不同,其I/O 接口較多,包括16 位PWM 輸入口在內(nèi)有54 位數(shù)字I/O 口,其處理器核心為ATmega2560。此外,Arduino Mega2560 已發(fā)展到最新版,在前2 版的基礎(chǔ)上又增加了SDA、SCL(位置在AREF 的左側(cè)),作用于接口I2C 處。而shield 可利用IOREF 接口提供一個(gè)電壓參考,在串口的設(shè)計(jì)上,ATmega2560 內(nèi)置的4 路UART 可以實(shí)現(xiàn)與外部的串口通信,并且USB 上的虛擬串口可以通過(guò) ATmega16U2去訪問(wèn)串口0 實(shí)現(xiàn)。
2.2 循跡以及識(shí)別模塊
在本設(shè)計(jì)中采用OpenMV 作為循跡和標(biāo)志物識(shí)別的主要模塊。其具有較強(qiáng)的處理功能,能在水中敏銳地識(shí)別出管道,通過(guò)PID 算法可以精準(zhǔn)的識(shí)別出管道路線,并識(shí)別標(biāo)志物所在的位置。其所有引腳均可承受5 V 電壓,輸出電壓為3.3 V,在運(yùn)行時(shí)可工作的范圍為-20~70 ℃。
2.3 水壓傳感器
在本系統(tǒng)中為了去實(shí)時(shí)的檢測(cè)水壓狀況而采用M10深度傳感器,此傳感器具有高分辨率,而且內(nèi)部設(shè)有高分辨率的I2C 接口MS5837 壓力傳感器;此傳感器設(shè)有VCC( 紅線)、SCL( 綠線)、SDA(白線)、GED(黑線)4 個(gè)引腳,用于連接深度傳感器解算板,讀取深度傳感器的測(cè)量信息及其修正系數(shù);并與主控板形成串口輸出。
2.4 姿態(tài)傳感器
本系統(tǒng)利用JY90X 傳感器檢測(cè)機(jī)器人在水下的姿態(tài)狀況。水下機(jī)器人通過(guò)讀取傳感器的三軸加速度、三軸角速度、三軸磁場(chǎng)的原始數(shù)據(jù),將數(shù)據(jù)實(shí)時(shí)反饋到主控板,然后使用自主研發(fā)的姿態(tài)動(dòng)力學(xué)核心算法,通過(guò)結(jié)合高動(dòng)態(tài)卡爾曼濾波融合算法表示機(jī)器人在水中行走時(shí)穩(wěn)定的三軸姿態(tài)角度。此外,傳感器采用高密度4 層板設(shè)計(jì),小巧方便;并且6 軸或9 軸算法可自由切換,同時(shí)可外接GPS 模塊,實(shí)時(shí)定位水下機(jī)器人的位置。
本設(shè)計(jì)采用L298N 作為電機(jī)驅(qū)動(dòng)模塊,如圖2 所示。該電機(jī)驅(qū)動(dòng)模塊內(nèi)部包含4 通道邏輯驅(qū)動(dòng)電路,它是一種兩相和四相電機(jī)的專(zhuān)用驅(qū)動(dòng)器。電機(jī)可由L298N 直接控制,而電機(jī)正反轉(zhuǎn)的驅(qū)動(dòng)可通過(guò)主控芯片I/O 輸入對(duì)其控制電平進(jìn)行設(shè)定,操作步驟簡(jiǎn)潔,穩(wěn)定性良好,可以滿(mǎn)足直流電機(jī)的大電流驅(qū)動(dòng)條件。1 個(gè)L298N 模塊可同時(shí)控制2 個(gè)直流減速電機(jī)的不同動(dòng)作,在6 ~ 46 V的電壓范圍內(nèi),提供2 A 的電流,且具有過(guò)熱自斷和反饋檢測(cè)功能。在本設(shè)計(jì)中主要利用L298N 控制6 個(gè)直流電動(dòng)機(jī)來(lái)實(shí)現(xiàn)巡檢機(jī)器人的前進(jìn)、轉(zhuǎn)彎及上下運(yùn)動(dòng),使巡檢機(jī)器人實(shí)現(xiàn)循跡及深水區(qū)淺水區(qū)檢測(cè)的功能。
圖2 L298N電路原理
3 軟件分析
3.1 PID算法及其控制
由于在水中要適應(yīng)多種復(fù)雜的環(huán)境,在本設(shè)計(jì)中,水下機(jī)器人要按照要求通過(guò)指定的線路,這就要求水下機(jī)器人具有精準(zhǔn)的前進(jìn)方向。所以通過(guò)PID 控制回路算法保證水下機(jī)器人在前進(jìn)過(guò)程中能夠沿著要求的線路航行,并完成任務(wù),以提高工作效率。主控板通過(guò)接受姿態(tài)傳感器的數(shù)據(jù)反饋,進(jìn)而控制電機(jī)速度。當(dāng)水下機(jī)器人偏離管道,控制器發(fā)出指令信息,調(diào)節(jié)前進(jìn)方向,使之回到主管道。
4 程序設(shè)計(jì)
本系統(tǒng)利用不同語(yǔ)言對(duì)不同模塊編程。主程序部分利用特有編程軟件Arduino 編程,使編譯環(huán)境更加簡(jiǎn)單、方便,各種功能的調(diào)用十分便捷,各種庫(kù)函數(shù)的調(diào)用也十分方便。OpenMV機(jī)器視覺(jué)模塊利用Python 編程軟件,通過(guò)程序控制OpenMV 機(jī)器視覺(jué)模塊將采集到的視覺(jué)信息顯示到電腦上。然后調(diào)節(jié)PID 算法使OpenMV 模塊傳回的信息更加精確。
本系統(tǒng)程序設(shè)計(jì)包含主程序部分、L298N 電機(jī)驅(qū)動(dòng)子程序和OpenMV 循跡物塊識(shí)別子程序。開(kāi)始先進(jìn)行系統(tǒng)初始化,然后按下開(kāi)始按鍵,整個(gè)系統(tǒng)進(jìn)入工作狀態(tài),接著調(diào)用OpenMV 子程序使水下機(jī)器人尋找到指定線路,然后開(kāi)始循跡。在前進(jìn)過(guò)程中,利用水壓傳感器檢測(cè)水壓,同時(shí)根據(jù)姿態(tài)傳感器檢測(cè)機(jī)器人的姿態(tài)狀況及時(shí)調(diào)整方向,通過(guò)PID 算法控制L298N 電機(jī)驅(qū)動(dòng)實(shí)現(xiàn)機(jī)器人的前進(jìn)、轉(zhuǎn)彎。在循跡行走中,OpenMV 子程序?qū)崟r(shí)將外界信息傳遞給主控板,巡檢機(jī)器人在檢測(cè)到不同標(biāo)志物時(shí)通過(guò)三色LED 小燈進(jìn)行不同顯示。當(dāng)識(shí)別的物體為正方形時(shí),LED 小燈顯示為綠色;當(dāng)物體為圓形時(shí)LED 小燈顯示為紅色。程序框圖如圖3 所示。
圖3 程序框圖
5 結(jié)束語(yǔ)
隨著社會(huì)的進(jìn)步與發(fā)展,水下巡檢機(jī)器人在未來(lái)應(yīng)用會(huì)非常廣泛,在水中作業(yè)方面將起到很大作用。本文主要研究水下機(jī)器人的控制系統(tǒng),獲取相應(yīng)的結(jié)論:水下機(jī)器人的行走及物塊識(shí)別都需要依靠智能控制進(jìn)行反饋;在很大程度上解決了水中作業(yè)的問(wèn)題,降低了工人巡檢的難度,提高了工作效率。
參考文獻(xiàn):
[1]史志晨.水下作業(yè)機(jī)器人聲吶圖像目標(biāo)跟蹤研究及水面監(jiān)控系統(tǒng)設(shè)計(jì)[D].鎮(zhèn)江:江蘇科技大學(xué),2020.
[2]徐敬成.無(wú)刷直流電機(jī)遠(yuǎn)距離調(diào)速控制系統(tǒng)研究[D].株洲:湖南工業(yè)大學(xué),2019.
[3]宋濱鵠.基于視頻的多目標(biāo)識(shí)別研究[D].天津:天津科技大學(xué),2017.
[4]趙開(kāi)理.基于單片機(jī)設(shè)計(jì)直流電機(jī)控制系統(tǒng)[D].南京:南京郵電大學(xué),2017.
[5]王蕭.基于嵌入式Linux的水中機(jī)器人設(shè)計(jì)[D].天津:天津大學(xué),2014.
[6]陳呂洲.Arduino程序設(shè)計(jì)基礎(chǔ)[M]北京:北京航空航天大學(xué)出版社,2014.
[7]趙加敏,徐玉如,雷磊.用于水下機(jī)器人智能路徑規(guī)劃的仿真器的建立[J].系統(tǒng)仿真學(xué)報(bào).2004(11):2448-2450.
[8]成巍,蘇玉民,秦再白,等.一種仿生水下機(jī)器人的研究進(jìn)展[J].船舶工程.2004(1):5-8.
[9]張露凝,于洋,張航,等.水下機(jī)器人檢測(cè)系統(tǒng)在北京市南水北調(diào)工程的應(yīng)用[J].北京水務(wù),2020(6):31-37.
[10]張興興,王偉,陳世明,等.基于人工側(cè)線的相鄰仿生機(jī)器魚(yú)感知研究[J].測(cè)控技術(shù),2016(10):33-37.
(本文來(lái)源于《電子產(chǎn)品世界》雜志2022年1月期)
評(píng)論