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