王超 霍艷艷 楊學(xué)斌 黃一洋 時博文 崔龍巖
摘要:在水中機器人協(xié)同競技項目中,為實現(xiàn)機器小車實現(xiàn)巡線,避障;機器魚實現(xiàn)巡線和檢測漏油點功能,本文提出機器小車和機器魚可實施的硬件組成和算法策略。結(jié)果表明,運用該硬件組成和策略后,機器魚和小車可以較好地完成各自功能并可以配合完成項目。
關(guān)鍵詞:機器人;協(xié)同競技;巡線
中圖分類號:TP391 文獻標識碼:A 文章編號:1009-3044(2019)07-0152-02
Design and Implementation of Robotic Cooperative Competition Based on Underwater
WANG Chao,HUO Yan-yan*, YANG Xue-bin, HUANG Yi-yang, SHI Bo-wen, CUI Long-yan
(Computer College, Beijing Information Science & Technology University, Beijing 100083, China)
Abstract: In the robot collaborative competition project in the water, in order to realize the function of the vehicle trolley to realize the inspection line, obstacle avoidance and so on, the machine fish realizes the inspection line and detects the oil leakage point function, this paper proposes the hardware composition and algorithm strategy that the machine car and the robot fish can implement. The results show that after using this hardware composition and strategy, the robot fish and the trolley can better complete their respective functions and can cooperate with the completion of the project.
Key words: robot;Synergistic competition; inspection
國際水中機器人大賽中,水中機器人協(xié)同競技項目是模擬南海石油開采平臺水下管道檢測維護,水下機器人與陸地機器人協(xié)同作業(yè),運用機械、電子、智能控制、傳感等多學(xué)科知識設(shè)計搭建水下機器人與陸地機器人。水中機器人協(xié)同競技的比賽場地分為陸地部分和水中部分。水中部分由分布著黑色漏油點的白色石油管道和礁石模型構(gòu)成,陸地部分由軌跡線、分布著漏油點的管道和障礙物構(gòu)成。比賽流程大致為水中機器人需從管道起點出發(fā),沿管道行走,遇到漏油點進行識別,并執(zhí)行修復(fù)動作,最終在水中管道末端觸碰到觸發(fā)機構(gòu);后陸地小車被觸發(fā),沿著管道巡檢,檢測到管道上的漏油點時執(zhí)行修復(fù)動作,沿途在小車行駛道路上會有障礙物,需要陸地小車清除障礙物,小車巡線完到達管道末端處,小車停止,并需要顯著的停止信號。全程需要機器人自動巡管道或巡線前進,且需在機器人前進過程中,檢測漏油點和掃除障礙物。
針對機器小車功能的實現(xiàn),文獻[1]研究了小車利用PID算法實現(xiàn)巡線行駛;文獻[2]研究了超聲波測距;文獻[3]研究了光電傳感器檢測障礙物,筆者將這些方法整合應(yīng)用到機器小車中,實現(xiàn)巡線,檢測障礙物功能,并且在此基礎(chǔ)上增加了排障,檢測漏油點功能。
1硬件實現(xiàn)
陸地機器人需自動開啟停止,巡線前進并在前進過程中檢測障礙物排障,檢測漏油點并執(zhí)行修復(fù)動作。筆者用KINTE紅外傳感器自動開啟關(guān)閉機器車。機器車用型號為TRCT5000的紅外傳感器實現(xiàn)機器車巡線功能,該紅外傳感器是通過一個紅外發(fā)射頭和一個紅外接收頭組成的傳感器,發(fā)射頭發(fā)出紅外線,接收頭接收物體反射回來的紅外光,接收到的紅外光越強,其電阻越小。白色對紅外光的反射最大,黑色對紅外光的吸收最大。使用四個傳感器等距排列于小車前方組成巡線陣列。機器車排障采用超聲波舵機組合裝置,超聲波一旦檢測到物體在某個距離范圍內(nèi),就啟動舵機來掃除障礙物。機器車用KINTE紅外傳感器和直插式LED燈來實現(xiàn)小車的檢測漏油點和執(zhí)行修復(fù)動作。圖1為機器車的基本構(gòu)造。
水中機器人需巡管道前進,檢測漏油點并執(zhí)行修復(fù)動作。所以需在頭部安裝攝像頭,進行圖像采集并進行二值化處理,將處理后的數(shù)據(jù)發(fā)送到魚身的控制主板,對數(shù)據(jù)進行處理,根據(jù)處理后的結(jié)果來控制機器魚尾部的動力系統(tǒng)從而實現(xiàn)對管道的自動巡檢和檢測漏油點。如圖2為機器魚的基本構(gòu)造。
2陸地機器人算法實現(xiàn)
陸地小車首先讀取三個紅外傳感器,超聲波和巡線陣列的值。紅外傳感器檢測到足夠的反射光時值為0,未檢測到足夠的反射光時值為1;如果控制小車啟動的紅外傳感器值為0,即檢測到白色物體時,將flag賦值為1,小車開始執(zhí)行巡線程序;如果控制小車停止的紅外傳感器值為0,即檢測到白色物體,小車停止。巡線采用pid算法實現(xiàn)。在巡線過程中,檢測黑色漏油點的紅外傳感器,若值為1,則小燈亮起,檢測到漏油點;若值為0,則小燈不亮,沒檢測到漏油點。如果超聲波檢測到與物體的距離小于5cm,小車停止,旋轉(zhuǎn)舵機,掃除障礙物。
2.1巡線功能的實現(xiàn)
為了使機器小車能夠適應(yīng)黑線的變化而靈活行駛,采用PID算法來控制機器小車。
在PID算法中,比例P:比例項部分其實就是對預(yù)設(shè)值和反饋值差值的發(fā)大倍數(shù)。比例P越大時,電機轉(zhuǎn)速回歸到輸入值的速度將更快,及調(diào)節(jié)靈敏度就越高。從而加大P值,可以減少從非穩(wěn)態(tài)到穩(wěn)態(tài)的時間。但是同時也可能造成電機轉(zhuǎn)速在預(yù)設(shè)值附近振蕩的情形。積分I:積分項部分其實就是對預(yù)設(shè)值和反饋值之間的差值在時間上進行累加。積分項的調(diào)節(jié)存在明顯的滯后。而且I值越大,滯后效果越明顯。微分D:微分項部分其實就是求電機轉(zhuǎn)速的變化率。微分項是根據(jù)差值變化的速率,提前給出一個相應(yīng)的調(diào)節(jié)動作。因此微分項的調(diào)節(jié)是超前的。并且D值越大,超前作用越明顯??梢栽谝欢ǔ潭壬暇彌_振蕩。
“比例項”(P)的作用僅是放大誤差的幅值,為了使小車靈活行駛,則需要增加的是“微分項”(D),它能預(yù)測誤差變化的趨勢,這樣,具有“比例+微分”(PD)的控制器,就能夠提前使抑制誤差的控制作用等于零,甚至為負值,從而避免了被控量的嚴重超調(diào)。
PID算法是基于反饋的。一般情況下,這個反饋就是速度傳感器返回給當前電機的轉(zhuǎn)速。即用這個反饋跟預(yù)設(shè)值進行比較,如果轉(zhuǎn)速偏大,就減小電機兩端的電壓;相反,則增加電機兩端的電壓。反復(fù)自動調(diào)節(jié)電壓,進而改變轉(zhuǎn)速,小車可靈活行駛于黑色軌跡線。
2.2排障功能的實現(xiàn)
排障功能需要使用超聲波和舵機組合裝置。利用超聲波進行測距,在一定距離范圍內(nèi),舵機下降,機器小車停止等待排障成功,舵機上升,機器小車正常巡線行駛。
超聲波發(fā)射器向某一方向發(fā)射超聲波,在發(fā)射時刻的同時開始計時,超聲波在空氣中傳播,途中碰到障礙物就立即返回來,超聲波接收器收到反射波就立即停止計時。超聲波在空氣中的傳播速度為340m/s,根據(jù)計時器記錄的時間t,就計算出發(fā)射點距障礙物的距離(s),即:s=340t/2 。
超聲波測距的原理是利用超聲波在空氣中的傳播速度為已知,測量聲波在發(fā)射后遇到障礙物反射回來的時間,根據(jù)發(fā)射和接收的時間差計算出發(fā)射點到障礙物的實際距離。測距的公式表示為:
L=C×T
式中L為測量的距離長度;C為超聲波在空氣中的傳播速度;T為測量距離傳播的時間差(T為發(fā)射到接收時間數(shù)值的一半)。
2.3檢漏和小車啟動停止功能的實現(xiàn)
檢漏實際為尋找白色管道上的黑色標記。漫反射式光電開關(guān)通過光反射的原理檢測障礙物,漫反射式光電開關(guān)是一種集發(fā)射和接收于一體的傳感器。當前面有障礙物的時候,將光電開關(guān)發(fā)射的足夠量的光線反射到接收器,光電開關(guān)產(chǎn)生開關(guān)信號。所以檢測白色管道上的黑色標記選擇使用漫反射式光電開關(guān)。當小車行駛至黑色標記上方時,接收端接收到足夠的反射光,則輸出端呈高電平即檢測到黑色漏油點時,紅外傳感器返回值為1,小燈置為高電平,小燈亮起。當遠離黑色標記時,則沒有反射光,那么輸出端呈低電平即沒檢測到漏油點,小燈不亮。
同樣,當控制小車啟動停止的紅外傳感器返回值為0時,即檢測到物體,就將小車開啟或停止。
3水中機器人算法實現(xiàn)
水中機器人巡線功能實現(xiàn)是利用機器人頭部的攝像頭采集圖像,將圖像中所拍攝的頭尾兩端的管道中點連線并計算斜率,根據(jù)斜率實時地改變機器魚的方向和速度。斜率是利用二值化攝像頭采集數(shù)據(jù),選出一個合適的數(shù)值,將小于該值的設(shè)為黑色,大于該值的設(shè)為白色,將圖像中的0,1數(shù)值的數(shù)組從上下兩頭同時遍歷,將畫面中上下兩面計算出白色像素點起始和結(jié)束的位置,得到中間點,將兩個中間點坐標放在笛卡爾坐標系連線,以Y軸作為基準計算連線相對于Y軸的斜率,該斜率就是所需的斜率。
4結(jié)束語
為了實現(xiàn)機器車的避障巡線和檢測漏油點功能,筆者給出具體方法,結(jié)果表明該方法行之有效,運用該方法北京信息科技大學(xué)在2018年國際水中機器人大賽水中機器人協(xié)同競技項目當中獲得一等獎,但是由于該方法受環(huán)境光照影響較為強烈并且超聲波對于物體感知過于靈敏導(dǎo)致誤差出現(xiàn),所以接下來如何減少光強對小車的影響和如何讓小車更好地識別障礙物將是我們的研究重點。
參考文獻:
[1] 任翠平,左毅鵬,盧軍.基于PID算法的巡線小車的設(shè)計與實現(xiàn)[J].電子技術(shù)與軟件工程,2016(6).
[2] 蘇琳.基于HC-SR04的超聲波測距器的設(shè)計[J].科技信息,2012(3).
[3] 邱國普,楊立,張立.各種障礙物的檢測[J].電子世界,2004(12):41-42.
【通聯(lián)編輯:唐一東】