一種管道巡檢機器人自主巡徑算法及具有該算法的機器人的製作方法
2023-04-25 23:44:11 1
專利名稱:一種管道巡檢機器人自主巡徑算法及具有該算法的機器人的製作方法
技術領域:
本發明屬於管道巡視監測領域,尤其涉及一種管道巡檢機器人自主巡徑算法及具有該算法的機器人。
背景技術:
管道是保障能源和信號線路與外界有效隔離,防止外力侵襲,保證安全傳輸的重要設施,隨著信息社會的發展以及能源需求的增加,智能電網已經開始進入人們的生活,除了在地面上進行電力架線和傳輸之外,在底下也開拓了智能電網的傳輸路徑,通過在地下設立各種電力傳輸管道,不但可以實現電力信號的傳輸,而且有效提高了資源的利用率。同時,將電力線放置到地下管道中,不會帶來視覺上的走線亂,使用中的危險性高的問題。隨著智能電網產業的發展,現代城市的管道網絡錯綜複雜,管道網絡近乎迷宮,不可能通過人 力完成對管道中電纜的巡檢,給維護帶來極大不便,因此利用管道機器人對通訊電纜、地下電纜進行巡檢維護已經成為一種共識。但如何使得機器人能夠實現自動巡徑,這就需要對迷宮算法進行研究。現有機器人迷宮控制策略主要為左手法則(Left Hand Rule)和右手法則(RightHand Rule)。左手法則的技術特點是1、機器人執行左轉的優先級高於直行或右轉;2、機器人執行直行的優先級高於右轉。機器人在迷宮管道中巡徑時,如果遇到「十字路口」(即有左轉、直行和右轉),機器人會左轉;如果遇到「直行或右轉路口」,機器人會直行;只有遇到「右轉路口」,機器人才右轉。一句話就是,執行左手法則的機器人永遠是沿著左側走。如果管道包括多條首尾依次相互連通的分支管道,該分支管道圍成一個多邊形結構,且管道的出口不是設置在多邊形結構圍成的空間內,機器人最終可以順利的從起點走到終點。同理,右手法則的技術特點是1、機器人執行右轉的優先級高於直行或左轉;2、機器人執行直行的優先級高於左轉。以上這兩種控制策略的執行效果如圖I所示。圖中所示細實線為縱橫交錯的管道,而且分別表明了管道的入口和出口位置,所示虛線即為左手法則控制的機器人在管道中的巡視或行進路線,所示雙點劃線為右手法則控制的機器人在管道中的巡視或者行進路線,但是當遇到管道包括多條首尾依次相互連通的分支管道,該分支管道圍成一個多邊形結構,且管道的出口設置在多邊形結構圍成的空間內時,如圖2所示,此時不論控制策略是左手法則還是右手法則,機器人最終還是會回到管道的入口,進而無法找到管道的出口,從而無法完成對管道內電纜的巡檢。
發明內容
本發明旨在解決現有技術中當所要巡檢的管道包括多條首尾依次相互連通的分支管道,該分支管道圍成一個多邊形結構,且管道的出口設置在多邊形結構圍成的空間內時,巡線機器人根據左手法則或右手法則控制策略無法完成對管道內電纜進行巡檢的技術問題,提供一種迷宮管道機器人自主巡徑算法,通過該算法可實現巡線機器人對該管道的巡檢。本發明提供一種管道巡檢機器人自主巡徑算法,所述管道包括多條首尾依次相互連通的分支管道,多條所述分支管道圍成一個多邊形結構,且管道的出口設置在多邊形結構圍成的空間內,其特徵在於,所述管道巡檢機器人自主巡徑算法包括以下步驟步驟一,記錄所述機器人經過每個路口時的行進方向並形成由字母組成的第一路徑數組,其中,如果所述機器人在路口左轉則記錄一個字母「L」,如果所述機器人在路口右轉則記錄一個字母「R」,如果所述機器人在路口直行則記錄一個字母「S」,如果所述機器人調頭時則記錄一個字母「U」,最後所記錄的字母按照機器人的行走順序形成所述第一路徑數組;步驟二,根據機器人巡徑控制策略簡化第一路徑數組並形成第二路徑數組,其中,當所述控制策略為左手法則時,將第一路徑數組中的字母組合「SUL」或「LUS」用字母「R」替代、字母組合「LUL」用「S」替代,形成所述第二路徑數組;當所述控制策略為右手法則時, 將第一路徑數組中的字母組合「SUR」或「RUS」用字母「L」替代、字母組合「RUR」用S替代,形成所述第二路徑數組;同時,存儲所述第二路徑數組;步驟三,控制所述機器人按照第二路徑數組對所述管道進行巡徑,並對第二路徑數組中的標示進行修改,按照修改後的標示行進直至走出所述出口,對所述整個行進線路進行記錄形成第三路徑數組;步驟四,存儲第三路徑數組,同時控制所述機器人按照所述第三路徑數組對所述管道進行下一次的巡徑。優選地,所述步驟三中,控制策略為左手法則時,步驟三具體包括以下步驟31、控制機器人按照原始的第二路徑數組對所述管道進行巡徑,當遇到所述第二路徑數組中第N個標為「L」或「S」的路口時,將所述標示「L」修改為「S」或「R」,或將標示「S」修改為「R」,並控制機器人在該修改標示的路口按照修改後的標示行進,並在所述修改標示的路口後面的管道路徑中控制機器人按照左手法則或右手法則繼續行進;32、若該次巡逕到達所述出口,則記錄該次巡徑中經過每個路口的行進方向,形成所述第三組路徑數組;若否,N累加1,並返回步驟31 ;其中所述N為整數,N的初始值為1,N的最大值為第二路徑數組中字母「L」與「S」的個數和。優選地,所述步驟三中,控制策略為右手法則時,步驟三具體包括以下步驟31』、控制所述機器人按照原始的第二路徑數組對所述管道進行巡徑,當遇到所述第二路徑數組中第M個標示為「R」或「S」的路口時,將所述標示R修改為「S」或「L」,或將標示「S」修改為「L」,控制機器人在該修改標識的路口按照修改後的標示行進,並在所述修改標示的路口後面的管道路徑中控制機器人按照左手法則或右手法則繼續行進;32』、若該次巡逕到達所述出口,則記錄該次巡徑中經過每個路口的行進方向,形成所述第三組路徑數組;若否,M累加1,並返回步驟31』 ;其中所述M為整數,M的初始值為1,M的最大值為第二路徑數組中字母「R」與「S」的個數和。優選地,所述步驟二中,當所述控制策略為左手法則時對第一路徑數組的具體簡化控制方法為步驟S100,在第一路徑數組中,從第一個字母開始依次查找字母組合「SUL」、「LUS」或「LUL」,當查找到第一個字母組合「SUL」、「LUS」或「LUL」時,停止繼續查找並將字母組合「SUL」或「LUS」替換為「R」,或將字母組合「LUL」替換為「S」 ;步驟S110,重新從第一個字母開始,再次查找字母組合「SUL」、「LUS」或「LUL」 ;當再次查找到第一個字母組合「 SUL」、「 LUS 」或「 LUL」時,停止繼續查找並將字母組合「 SUL」或「LUS」替換為「R」,或將字母組合「LUL」替換為「S」 ;步驟S120,重複步驟S110,直到所述第一路徑數組中無字母組合「SUL」、「LUS」或「LUL」時,結束查找,並將第一路徑數組簡化後最終形成的路徑數組作為第二路徑數組。優選地,所述步驟二中,當所述控制策略為右手法則時對第一路徑數組的具體簡化控制方法為
步驟S200,在第一路徑數組中,從第一個字母開始依次查找字母組合「SUR」、「RUS」或「RUR」,當查找到第一個字母組合「SUR」、「RUS」或「RUR」時,停止繼續查找並將字母組合「SUR」或「RUS」替換為「L」,或將字母組合「RUR」替換為「S」 ;步驟S210,重新從第一個字母開始,再次查找字母組合「SUR」、「RUS」或「RUR」 ;當再次查找到第一個字母組合「SUR」、「RUS」或「RUR」時,停止繼續查找並將字母組合「SUR」或「RUS」替換為「L」,或將字母組合「RUR」替換為「S」 ;步驟S220,重複步驟S210,直到所述第一路徑數組中無字母組合「SUR」、「RUS」或「RUR」時,結束查找,並將第一路徑數組簡化後最終形成的路徑數組作為第二路徑數組。優選地,在所述步驟二中,分析第一路徑數組中的字母組成,當第一路徑數組中包含字母「L」時,所述機器人的巡徑控制策略為左手法則。優選地,在所述步驟二中,分析第一路徑數組中的字母組成,當第一路徑數組中包含字母「R」時,所述機器人的巡徑控制策略為右手法則。優選地,所述機器人進入管道的入口後即開始記錄第一路徑數組,返回所述迷宮管道的入口時結束記錄第一路徑數組。優選地,所述控制器具有上述任意一項權利要求所述的管道巡檢機器人自主巡徑算法。優選地,所述控制器按照第三路徑數組控制所述機器人對所述管道進行巡徑。以上所述技術方案,機器人在第一次巡徑時按照左手法則或者右手法則的控制形成第一路徑數組,當控制策略為左手法則時,將第一路徑數組中的字母組合「SUL」或「LUS」用字母「R」替代、字母組合「LUL」用「S」替代;當控制策略為右手法則時,將第一路徑數組中的字母組合「 SUR」或「 RUS 」用字母「 L」替代、字母組合「 RUR」用S替代,最終形成簡化後的第二路徑數組;並將第二路徑數組中有多餘方向沒有經歷的路口進行標示變換,之後按照左手法則或右手法則重新控制機器人走出出口,並形成第三路徑數組,該第三路徑數組所指示的路線即為對該管道的巡徑路線,可控制機器人在下一次按照第三路徑數組對所述管道進行巡徑,實現了管道機器人對管道的巡徑。
圖I是現有技術一種實施例的管道機器人自主巡徑示意圖。
圖2是本發明一種實施例的管道機器人按照左手法則在路口直行示意圖。圖3是本發明一種實施例的管道機器人按照左手法則在管道盡頭調頭示意圖。圖4是本發明一種實施例的管道機器人按照左手法則在路口左轉示意圖。圖5是本發明一種實施例的管道機器人按照左手法則在下一個路口左轉示意圖。圖6是本發明一種實施例的管道機器人按照左手法則在該管道盡頭調頭示意圖。圖7是本發明一種實施例的管道機器人按照左手法則在圖5所示的路口左轉示意圖。圖8是本發明一種實施例的管道機器人按照左手法則調頭示意圖。
圖9是本發明一種實施例的管道機器人按照左手法則左轉示意圖。圖10是本發明一種實施例的管道機器人按照左手法則左轉並走到出口示意圖。圖11是本發明一種實施例的管道機器人最佳巡徑線路示意圖。圖12是本發明第二種實施例的管道機器人按照右手法則在路口右轉示意圖。圖13是本發明第二種實施例的管道機器人按照右手法則在下一路口右轉示意圖。圖14是本發明第二種實施例的管道機器人按照右手法則在圖13所示的路口右轉示意圖。圖15是本發明第二種實施例的管道機器人按照右手法則右轉示意圖。圖16是本發明第二種實施例的管道機器人按照右手法則在最後一個路口右轉示意圖。圖17是本發明第二種實施例的管道機器人按照右手法則直行示意圖。圖18是本發明第二種實施例的管道機器人最佳巡徑線路示意圖。圖19是現有技術中另一種實施例的管道機器人自主巡徑示意圖。圖20是圖19中按照左手法則簡化後的管道機器人巡徑線路示意圖。圖21是圖20中按照本發明控制的管道機器人的一種巡徑線路示意圖。圖22是圖20中按照本發明控制的管道機器人的另一種巡徑線路示意圖。圖23是圖20中按照本發明控制的管道機器人的第三種巡徑線路示意圖。圖24是圖19中按照右手法則簡化後的管道機器人巡徑線路示意圖。圖25是圖24中按照本發明控制的管道機器人的一種巡徑線路示意圖。
具體實施例方式為了使本發明所解決的技術問題、技術方案及有益效果更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。如圖I所示,現有機器人巡徑過程中採用的控制策略為左手法則或者右手法,該控制策略所控制的機器人行進路線並不是最優的路線,圖中所示的最優路線應為粗實線所示的路線,因此本發明將會對原有的控制策略進行優化,能夠實現管道機器人最優巡徑路線的優化和選擇。具體優化方法包括以下步驟第一,記錄機器人經過每個路口時的行進方向並形成由字母組成的第一路徑組數,其中,如果所述機器人在相應路口左轉則記錄一個字母「L」,如果所述機器人在相應路口右轉則記錄一個字母「R」,如果所述機器人在相應路口直行則記錄一個字母「S」,如果所述機器人調頭時則記錄一個字母「U」,最後所記錄的字母按照機器人的行走順序形成第一路徑數組;上面所述的「路口 」的概念是指排除迷宮管道的入口和出口,機器人在迷宮管道中可以有一個以上行進方向選擇的位置稱為路口,也包括管道死胡同處調頭的地方。第二,根據機器人巡徑控制策略簡化第一路徑數組並形成第二路徑數組,其中,這裡所說的控制策略是指在上述形成第一路徑數組時所採用的控制方式,可以分為左手法則和右手法則。當控制策略為左手法則時,將第一路徑數組中的字母組合「SUL」或「LUS」用字母「R」替代、字母組合「LUL」用「S」替代,並形成第二路徑數組;當控制策略為右手法則時,將第一路徑數組中的字母組合「 SUR」或「 RUS 」用字母「 L 」替代、字母組合「 RUR」用S替代並形成第二路徑數組;存儲所述第二路徑數組,並控制所述機器人按照所述第二路徑數組對該迷宮管道進行下一次的巡徑。結合圖2—圖10所示,圖中所示的迷宮管道機器人的控制策略為左手法則,機器人第一次穿越該迷宮時,即採用「左手法則」策略來控制其行進路線,在管道巡徑的過程中,沿途將碰到有一些路口,機器人內部的控制器每通過一個路口的方向進行記錄。 如果2所示,機器人沿圖示中迷宮管道的入口進入,然後遇到了第一個路口一直行或右轉路口。根據「左手法則」,機器人將直行。此時機器人將記錄字符「S」並按照先後順尋存儲在第一路徑數組中。如圖3所示,機器人繼續前進就會遇到第二個路口一死胡同或者非目的出口,這個時候,機器人必須調頭,即機器人從左到右旋轉並調頭,即按照逆時針方向進行調頭,同時及記錄字符「U」並將其按照先後順序送入第一路徑數組,此時第一路徑數組為「SU」。如圖3所示,我們可以看出機器人每記錄一個死胡同類型的路口,就意味著機器人走了錯誤路線,這就給我們下一步的優化提供了參考。如圖4所示,機器人調頭後,又回到了剛才經過的路口,此時根據左手法則,機器人將左轉,同時及記錄字符「L」並將其按照先後順序送入第一路徑數組,此時第一路徑數組為 「SUL,,。如圖5所示,機器人繼續沿著管道直行,就遇到了十字路。根據左手法則將進行左轉,同時及記錄字符「L」並將其按照先後順序送入第一路徑數組,此時第一路徑數組為「SUL」。如圖6所示,接下來機器人又遇到剛才所述的死胡同類型的路口,機器人仍舊做掉頭動作。同時記錄字符「U」並將其按照先後順序送入第一路徑數組,此時第一路徑數組為 「 SULLU」。如圖7所示,機器人掉頭回來再次遇到所述十字路,根據左手法則,機器人將做左轉。同時,機器人將在在第一路徑數組中記錄一個左轉字符「L」。這樣路徑數組中的字符就變成了 「SULLUL」。如圖8所示,機器人左轉後,第三次遇到了所述的死胡同類型的路口,機器人仍舊做掉頭動作。同時記錄字符「U」並將其按照先後順序送入第一路徑數組,此時第一路徑數組為 「 SULLULU」, 如圖9所示,機器人掉頭後再次遇到十字路口,根據左手法則將左轉。同樣機器人在第一路徑數組中記錄一個字符「L」。此時第一路徑數組中的字符就變為「SULLULUL」。
如圖10所示,機器人走出「十字路口」後,將遇到左轉或直行路口。根據左手法則,機器人將左轉。同時在路徑數組中記錄一個字符「L」。此時機器人已經走到了線迷宮的出口,完成對所述迷宮管道的巡徑。因此通過左手法則控制策略所形成的第一次巡徑路線的第一路徑數組為「SULLULULL」可以分析得到,當機器人第一次掉頭回到第一個路口(也是機器人行進過程中的第三個路口),根據左手法則,機器人將會左轉,如圖4所示。這時候,機器人將在路徑數組中記錄一個左轉的字符「L」。這樣路徑數組中的字符就變成了 「SUL」。而最優路徑應該是不包含死胡同或者錯誤出口的,因此在優化過程中應將「SUL」用「R」取代才能避免進入死胡同;同理,如果路徑數組中出現字母組合「LUS」,說明該路徑中包含了死胡同或者錯誤出口,也需要在優化過程中將「LUS」用「R」取代。機器人在第一次遇到十字路口時將左轉並記錄字符「L」,然後機器人進入死胡同需要進行第二次調頭並記錄字符「L」,調頭回來後又遇到十字路口並左轉同時記錄字符「L」,因此機器人在第一次遇到十字路口時不應該左轉,而是應該直行,這樣才可以避免死胡同。所以在第一路徑數組中的字母組合「LUL」就應該被直行字符「S,,所取代,這就代表 機器人再次穿越這個迷宮時,遇到第一個十字路口將直行。因此,當所述控制策略為左手法則時對第一路徑數組的具體簡化控制方法為在第一路徑數組中,從第一個字母開始依次查找字母組合「SUL」或「LUS」或「LUL」,當查找到第一個字母組合「SUL」、「LUS」或「LUL」時,停止繼續查找並將字母組合「SUL」或「LUS」替換為「R」,或將字母組合「LUL」替換為「S」。重新從第一個字母開始,再次查找字母組合「SUL」或「LUS」或「LUL」 ;當再次查找到第一個字母組合「SUL」或「LUS」或「LUL」,停止繼續查找並將字母組合「SUL」或「LUS」替換為「R」,或將字母組合「LUL」替換為「S」。重複以上查找方法,直到在上述路徑數組中查找不到字母組合「SUL」、「LUS」或「LUL」時,結束查找,並將最後形成的路徑數組作為第二路徑數組。即以上第一次巡徑過程中記錄的第一路徑數組為「SULLULULL」,首先從第一個字母開始依次查找字母組合「SUL」、「LUS」或「LUL」,當查找到第一個字母組合「SUL」時,停止繼續查找並將字母組合「SUL」替換為「R」,第一路徑數組變為「RLULULL」 ;重新從第一個字母開始,再次查找字母組合「SUL」、「LUS」或「LUL」;當再次查找到第一個字母組合「LUL」時,停止繼續查找並將字母組合「LUL」替換為「S」,此時第一路徑數組變為「RSULL」 ;繼續重複以上查找,又一次查找到字母組合「SUL」,此時停止查找,並將「SUL」替換為「R」,直到在所述第一路徑數組中查不到字母組合「SUL」、「LUS」或「LUL」時終止查找並最終簡化為第二路徑數組「 RRL 」。如圖11所示,當機器人再次穿越這個迷宮管道時,機器人就不再遵循左手法則,而且按照控制器計算的第二路徑數組中的字符的提示來完成對機器人的控制。這個路徑,也就是圖11中所示的實線路徑是整個迷宮中最短的路徑,也就是最佳路徑。結合圖12—圖18所示,本發明提供另一種實施例中迷宮管道機器人自主巡徑算法,圖12—圖18中所示的迷宮管道機器人的控制策略為右手法則,機器人第一次穿越該迷宮時,即採用「右手法則」策略來控制其行進路線,在管道巡徑的過程中,沿途將碰到有一些路口,機器人內部的控制器將每通過一個路口的方向進行記錄。
根據上述的左手法則的控制實施例,本實施例中機器人從迷宮管道入口到出口的控制路徑,即第一路徑數組為「RRURURRUS」。經過分析,本實施例中,機器人在第一次遇到十字路口時不應該右轉,而是應該直行,這樣才可以避免死胡同。所以在第一路徑數組中的字母組合「RUR」就應該被直行字符「S」所取代;機器人在第一次遇到右轉、調頭、直行或者直行、調頭、右轉的路段時,說明機器人遇到了調頭,走了錯誤的路線,因此即遇到「RUS」或者「SUR」路段時,應當在遇到該路段所處的路口時就左轉,即「RUS」或者「SUR」應當優化為「L」,用字符「L」取代字母組合「RUS」或「SUR」。本實施例中所述的調頭是指機器人按照順時針方向調頭。因此,當所述控制策略為右手法則時對第一路徑數組的具體簡化控制方法為在第一路徑數組中,從第一個字母開始依次查找字母組合「SUR」、「RUS」或「RUR」,當查找到第一個字母組合「SUR」、「RUS」或「RUR」時,停止繼續查找並將字母組合「SUR」或「RUS」替換為「L」,或將字母組合「RUR」替換為「S」 ;
重新從第一個字母開始,再次查找字母組合「SUR」、「RUS」或「RUR」;當再次查找到第一個字母組合「SUR」、「RUS」或「RUR」時,停止繼續查找並將字母組合「SUR」或「RUS」替換為「L」,或將字母組合「RUR」替換為「S」 ;重複上述查找方法,直到在上述路徑數組中查找不到字母組合「SUR」、「RUS」或「RUR」時,結束查找,並將最後形成的路徑數組作為第二路徑數組。上述實施例中,通過以上優化方法,所述的第一路徑數組「RRURURRUS」組中優化為「RLL」,如圖18所示,該路徑即為本實施中的機器人的最佳巡視路線。如圖18所示,當機器人再次穿越這個迷宮管道時,機器人就不再遵循右手法則,而且按照控制計算的第二路徑數組中的字符的提示來完成對機器人的控制。這個路徑,也就是圖18中所示的實線路徑是整個迷宮中最短的路徑,也就是最佳路徑。儘管通過以上方式可以現實對管道機器人巡徑路線的優化,但遇到所述管道包括多條首尾依次相互連通的分支管道,該分支管道圍成一個多邊形結構,且管道的出口設置在多邊形結構圍成的空間內時,不論對左手法則還是右手法則形成的線路進行優化,所述管道機器人結果都是回到原來的入口處,並不能找到管道的出口,因此即使通過以上控制方法對所述巡徑路線進行優化,也不能幫助機器人走出管道的出口,因此作為本發明的另一種實施例,本發明提供一種管道機器人自主巡徑算法,可實現管道機器人順利找到該管道的出口,完成對該種管道的巡徑。以下所述的管道是指包括多條首尾依次相互連通的分支管道,該分支管道圍成一個多邊形結構,且管道的出口設置在多邊形結構圍成的空間內。本發明提供的管道機器人的自主巡徑算法包括以下步驟,首先根據以上方法對所述管道機器人的第一次的巡徑路線進行優化,即步驟一,記錄機器人經過每個路口時的行進方向並形成由字母組成的第一路徑數組,其中,如果所述機器人在相應路口左轉則記錄一個字母「L」,如果所述機器人在相應路口右轉則記錄一個字母「R」,如果所述機器人在相應路口直行則記錄一個字母「S」,如果所述機器人調頭時則記錄一個字母「U」,最後所記錄的字母按照機器人的行走順序形成所述
第一路徑數組。步驟二,根據機器人巡徑控制策略簡化第一路徑數組並形成第二路徑數組,其中,當控制策略為左手法則時,將第一路徑數組中的字母組合「SUL」或「LUS」用字母「R」替代、字母組合「LUL」用「S」替代,並形成所述第二路徑數組;當控制策略為右手法則時,將第一路徑數組中的字母組合「SUR」或「RUS」用字母「L」替代、字母組合「RUR」用S替代並形成所述第二路徑數組;同時,存儲所述第二路徑數組。然後所述巡徑算法又包括以下步驟步驟三,控制所述機器人按照第二路徑數組對所述管道重新進行巡徑。若控制策略為左手法則,則按照第二路徑數組的指示行進到標示為L的路口時直行或右轉,或者行進到標示為S的路口時右轉,其後按照左手法則或右手法則控制機器人繼續行進直到走出所述出口並對所述整個行進線路進行記錄形成第三路徑數組;若控制策略為右手法則,則按照第二路徑數組的指示行進到標示為R的路口時直行或左轉,或者行進到標示為S的路口時左轉,其後按照左手法則或右手法則控制機器人繼續行進直到走出所述出口並對所述整個行進線路進行記錄形成第三路徑數組; 步驟四,存儲第三路徑數組,同時控制所述機器人按照所述第三路徑數組對該管道進行下一次的巡徑。作為本發明的一種優選實施例,所述步驟三中,控制策略為左手法則時,31,控制所述機器人第N次按照第二路徑數組對所述管道重新進行巡徑,在巡徑過程中,當遇到第N個標示為「L」或「S」的路口時,將所述標示「L」修改為「S」或「R」,或將標示「S」修改為「R」,控制機器人在該路口按照修改後的標示行進,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,同時記錄整個行進過程中每個路口的行進方向;,32,若到達所述出口則完成本次巡徑並記錄該次巡徑中經過每個路口的行進方向形成所述第三組路徑數組;若否,N累加1,並返回31 ;其中所述N為整數,N的初始值為1,N的最大值為第二路徑數組中字母「L」與「S」的個數和。控制策略為右手法則時,31』,控制所述機器人第M次按照第二路徑數組對所述管道重新進行巡徑,在巡徑過程中,當遇到第M個標示為「R」或「S」的路口時,將所述標示L修改為「S」或「L」,或將標示「S」修改為「L」,控制機器人在該路口按照修改後的標示行進,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,同時記錄整個行進過程中每個路口的行進方向;32』,若到達所述出口則完成本次巡徑並記錄該次巡徑中經過每個路口的行進方向形成所述第三組路徑數組;若否,M累加1,並返回31』,;其中所述M為整數,M的初始值為1,M的最大值為第二路徑數組中字母「R」與「S」的個數和。下面結合附圖,對本發明中的管道機器人巡徑算法作進一步的詳述。如圖19所示,圖示給出了一種管道,所述管道包括多條首尾依次相互連通的分支管道,該分支管道圍成一個多邊形結構,且管道的出口設置在多邊形結構圍成的空間內,所述管道機器人從入口進入,根據左手法則或者右手法則的控制策略對所述管道進行巡徑,圖中所示的虛線路徑即為機器人按照左手法則進行巡線的路徑,所示的雙點劃線即為機器人按照右手法則進行巡線的路徑,可以得到這兩種巡線路徑最終都會使得機器人重返所述管道的入口,無法尋找到管道的出口,因此無法完成對所述管道的巡徑。按照上述的控制算法,如圖20,根據左手法則的控制策略,機器人的巡警路線為「SLULULSLULULSLULULL」。該巡徑路線即為第一路徑數組,根據以上所述的優化方法對該路徑數組進行優化,優化後形成的第二路徑數組為「SRSRSRL」,因此機器人即使根據優化後的路徑數組再次對該管道進行巡徑仍然不能解決問題,還是會重返管道的入口處,因此這就需要對所述管道的每個路口進行分析,因為採用了左手法則控制策略,那麼在第二路徑數組中標示為「R」的路口已經沒有必要考慮,標示為「 S」的路口還有右向沒有走過,而標示為「L」的路口則需要遍歷剩餘兩個方向。當然如果該路口沒有剩餘方向,直接跳過。因此,控制所述機器人第一次按照第二路徑數組對所述管道重新進行巡徑,在巡徑過程中,當遇到第一個標示為「L」或「S」的路口時,將所述標示「L」修改為「S」或「R」,或將標示「S」修改為「R」,控制機器人在該路口按照修改後的標示行進,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,同時記錄整個行進過程中每個路口的 行進方向;如圖21所示,因為第二路徑數組為「SRSRSRL」,因此第一個標示為「L」或「S」的路口即為第一個字母「S」,將該標示修改為「R」,即管道機器人在該路口應右轉,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,需要說明的是,在修改標示路口之後的巡徑管道中行進可以採用左手或右手法則,這與最初的控制策略為左手或右手法則沒有關係。圖中所示的虛線巡線線路即為按照左手法則控制策略控制機器人行進的線路,該線路可以順利抵達出口並記錄在該線路中經過每個路口的行進方向形成第三路徑數組為「RLL」;圖中所示的雙點劃線巡線線路即為按照右手法則控制策略控制機器人行進的線路,可以看出該巡徑路線又會使得機器人重返所述管道的入口,無法走到該管道的出口。假如以上所述的控制算法都沒有順利控制機器人找到管道的出口,那麼將控制所述管道機器人第二次按照原始的第二路徑數組(即並非在第一次按第二路徑數組巡徑中經過修改的第二路徑數組)重新對所述管道進行巡徑,在巡徑過程中,當遇到第二個標示為「L」或「S」的路口時,將所述標示「L」修改為「S」或「R」,或將標示「S,,修改為「R」,控制機器人在該路口按照修改後的標示行進,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,同時記錄整個行進過程中每個路口的行進方向。結合圖22所示,此時第二路徑數組為「SRSRSRL」第二個標示為「L」或「S」的路口即為第二個字母「S」,將該標示修改為「R」,即管道機器人在該路口應右轉,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,圖中所示的虛線巡線線路即為按照左手法則控制策略控制機器人行進的線路;圖中所示的雙點劃線巡線線路即為按照右手法則控制策略控制機器人行進的線路,可以看出以上兩種控制策略下的巡徑線路都會使得機器人重返管道的入口處,無法控制所述管道機器人走到所述管道的出口,因此控制所述管道機器人再一次重新對所述管道進行巡徑。即控制所述機器人第三次按照第二路徑數組對所述管道重新進行巡徑,在巡徑過程中,當遇到第三個標示為「L」或「S」的路口時,將所述標示「L」修改為「S」或「R」,或將標示「S,,修改為「R」,控制機器人在該路口按照修改後的標示行進,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,同時記錄整個行進過程中每個路口的行進方向。
如圖23所示,第二路徑數組為「SRSRSRL」,因此第三個標示為「L」或「S」的路口即為第三個字母「S」,將該標示修改為「R」,即管道機器人在該路口應右轉,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,圖中所示的虛線巡線線路即為按照左手法則控制策略控制機器人行進的線路,該線路可以順利抵達出口並記錄在該線路中經過每個路口的行進方向形成第三路徑數組為「SRSRR」 ;圖中所示的雙點劃線巡線線路即為按照右手法則控制策略控制機器人行進的線路,可以看出該線路可以順利抵達出口並記錄在該線路中經過每個路口的行進方向形成第三路徑數組為「SRSRR」。若以上控制過程中還是無法控制所述管道機器人走到管道的出口,則控制所述機器人第N次按照第二路徑數組對所述管道重新進行巡徑,在巡徑過程中,當遇到第N個標示為「 L」或「 S 」的路口時,將所述標示「 L」修改為「 S 」或「 R」,或將標示「 S 」修改為「 R」,控制機器人在該路口按照修改後的標示行進,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,同時記錄整個行進過程中每個路口的行進方向,直到控制所述機器人走到管道的出口,並記錄該次巡徑中經過每個路口的行進方向形成所述第三組路徑數組。 以上實施例中,所述N為整數,N的初始值為1,N的最大值為第二路徑數組中字母「L」與「S」的個數和。結合圖24所示,給出了按照右手法則控制策略,控制機器人進行自主巡徑算法的實施例,本實施例中優化後的第二路徑數組為「RLSLSLS」。31』,控制所述機器人第M次按照第二路徑數組對所述管道重新進行巡徑,在巡徑過程中,當遇到第M個標示為「R」或「S」的路口時,將所述標示R修改為「S」或「L」,或將標示「S」修改為「L」,控制機器人在該路口按照修改後的標示行進,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,同時記錄整個行進過程中每個路口的行進方向;32』,若到達所述出口則完成本次巡徑並記錄該次巡徑中經過每個路口的行進方向形成所述第三組路徑數組;若否,M累加1,並返回31』 ;其中所述M為整數,M的初始值為1,M的最大值為第二路徑數組中字母「R」與「S」的個數和。因此,控制機器人第一次按照第二路徑數組巡徑時,將第一個標示為「R」的路口修改為「S」,即管道機器人在該路口應直行,同時在其後的控制過程中控制機器人按照左手法則或右手法則繼續行進,結合圖25所示,在右手法則的控制下機器人能夠順利走到管道的出口,此時所形成的第三路徑數組為「SRRRUSURRRR」。以上所述實施例中,判斷所述機器人的控制策略是左手法則還是右手法則,可根據控制器記錄的第一路徑數組進行判斷,分析第一路徑數組中的字母組成,當第一路徑數組中包含字母「L」時,所述機器人的巡徑控制策略為左手法則。同理,當第一路徑數組中包含字母「R」時,所述機器人的巡徑控制策略為右手法則。以上所述實施例中,對於所述管道,所述機器人進入管道的入口時開始記錄第一路徑數組,返回所述迷宮管道的出口時結束記錄第一路徑數組。本發明還提供一種機器人,所述機器人內部具有控制器,所述控制器具有以上所述的迷宮管道機器人自主巡徑算法;所述機器人在第一次對管道進行巡徑時按照現有的控制策略進行巡徑,通過上述的自主巡徑算法對所記錄的第一路徑數組進行優化並形成第二路徑數組,並對 所述第二路徑數組進行進一步修改形成所述第三路徑數組,所述控制器按照第三路徑數組控制所述機器人對所述管道進行以後的巡徑操作,有效提高了迷宮管道機器人巡徑的效率。以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種管道巡檢機器人自主巡徑算法,所述管道包括多條首尾依次相互連通的分支管道,多條所述分支管道圍成ー個多邊形結構,且管道的出口設置在多邊形結構圍成的空間內,其特徵在於,所述管道巡檢機器人自主巡徑算法包括以下步驟 步驟一,記錄所述機器人經過每個路ロ時的行進方向並形成由字母組成的第一路徑數組,其中,如果所述機器人在路ロ左轉則記錄ー個字母「L」,如果所述機器人在路ロ右轉則記錄ー個字母「R」,如果所述機器人在路ロ直行則記錄ー個字母「S」,如果所述機器人調頭時則記錄ー個字母「 U」,最後所記錄的字母按照機器人的行走順序形成所述第一路徑數組; 步驟ニ,根據機器人巡徑控制策略簡化第一路徑數組並形成第二路徑數組,其中,當所述控制策略為左手法則時,將第一路徑數組中的字母組合「SUL」或「LUS」用字母「R」替代、字母組合「LUL」用「 S」替代,形成所述第二路徑數組;當所述控制策略為右手法則時,將第一路徑數組中的字母組合「SUR」或「 RUS」用字母「 L」替代、字母組合「RUR」用S替代,形成所述第二路徑數組;同時,存儲所述第二路徑數組; 步驟三,控制所述機器人按照第二路徑數組對所述管道進行巡徑,並對第二路徑數組中的標示進行修改,按照修改後的標示行進直至走出所述出口,對所述整個行進線路進行記錄形成第三路徑數組; 步驟四,存儲第三路徑數組,同時控制所述機器人按照所述第三路徑數組對所述管道進行下一次的巡徑。
2.根據權利要求I所述的管道巡檢機器人自主巡徑算法,其特徵在於,所述步驟三中,控制策略為左手法則時,步驟三具體包括以下步驟 31、控制機器人按照原始的第二路徑數組對所述管道進行巡徑,當遇到所述第二路徑數組中第N個標為「L」或「 S」的路ロ時,將所述標示「L」修改為「S」或「R」,或將標示「 S」修改為「R」,並控制機器人在該修改標示的路ロ按照修改後的標示行迸,並在所述修改標示的路ロ後面的管道路徑中控制機器人按照左手法則或右手法則繼續行迸; 32、若該次巡逕到達所述出口,則記錄該次巡徑中經過每個路ロ的行進方向,形成所述第三組路徑數組;若否,N累加1,並返回步驟31 ; 其中所述N為整數,N的初始值為1,N的最大值為第二路徑數組中字母「L」與「S」的個數和。
3.根據權利要求I所述的管道巡檢機器人自主巡徑算法,其特徵在於,所述步驟三中,控制策略為右手法則時,步驟三具體包括以下步驟 31』、控制所述機器人按照原始的第二路徑數組對所述管道進行巡徑,當遇到所述第二路徑數組中第M個標示為「R」或「S」的路ロ時,將所述標示R修改為「S」或「L」,或將標示「S」修改為「L」,控制機器人在該修改標識的路ロ按照修改後的標示行進,並在所述修改標示的路ロ後面的管道路徑中控制機器人按照左手法則或右手法則繼續行迸; 32』、若該次巡逕到達所述出ロ,則記錄該次巡徑中經過每個路ロ的行進方向,形成所述第三組路徑數組;若否,M累加1,並返回步驟31』 ; 其中所述M為整數,M的初始值為1,M的最大值為第二路徑數組中字母「 R」與「 S」的個數和。
4.根據權利要求I所述的管道巡檢機器人自主巡徑算法,其特徵在於,所述步驟ニ中,當所述控制策略為左手法則時對第一路徑數組的具體簡化控制方法為 步驟S100,在第一路徑數組中,從第一個字母開始依次查找字母組合「SUL」、「LUS」或「LUL」,當查找到第一個字母組合「SUL」、「LUS」或「LUL」時,停止繼續查找並將字母組合「SUL」或「LUS」替換為「R」,或將字母組合「LUL」替換為「S」 ; 步驟S110,重新從第一個字母開始,再次查找字母組合「SUL」、「LUS」或「LUL」 ;當再次查找到第一個字母組合「SUL」、「LUS」或「LUL」時,停止繼續查找並將字母組合「SUL」或「LUS」替換為「R」,或將字母組合「LUL」替換為「S」 ; 步驟S120,重複步驟S110,直到所述第一路徑數組中無字母組合「SUL」、「LUS」或「LUL」吋,結束查找,並將第一路徑數組簡化後最終形成的路徑數組作為第二路徑數組。
5.根據權利要求I所述管道巡檢機器人自主巡徑算法,其特徵在於,所述步驟ニ中,當所述控制策略為右手法則時對第一路徑數組的具體簡化控制方法為 步驟S200,在第一路徑數組中,從第一個字母開始依次查找字母組合「SUR」、「RUS」或「RUR」,當查找到第一個字母組合「SUR」、「RUS」或「RUR」時,停止繼續查找並將字母組合「SUR」或「RUS」替換為「L」,或將字母組合「RUR」替換為「S,,; 步驟S210,重新從第一個字母開始,再次查找字母組合「SUR」、「RUS」或「 RUR」 ;當再次查找到第一個字母組合「SUR」、「RUS」或「RUR」時,停止繼續查找並將字母組合「SUR」或「RUS」替換為「L」,或將字母組合「RUR」替換為「S」 ; 步驟S220,重複步驟S210,直到所述第一路徑數組中無字母組合「SUR」、「RUS」或「RUR」吋,結束查找,並將第一路徑數組簡化後最終形成的路徑數組作為第二路徑數組。
6.根據權利要求I所述的管道巡檢機器人自主巡徑算法,其特徵在於,在所述步驟ニ中,分析第一路徑數組中的字母組成,當第一路徑數組中包含字母「 L」時,所述機器人的巡徑控制策略為左手法則。
7.根據權利要求I所述的管道巡檢機器人自主巡徑算法,其特徵在於,在所述步驟ニ中,分析第一路徑數組中的字母組成,當第一路徑數組中包含字母「R」時,所述機器人的巡徑控制策略為右手法則。
8.根據權利要求1-7所述的任意一項管道巡檢機器人自主巡徑算法,其特徵在於,所述機器人進入管道的入口後即開始記錄第一路徑數組,返回所述迷宮管道的入口時結束記錄第一路徑數組。
9.一種機器人,所述機器人內部具有控制器,其特徵在於,所述控制器具有上述任意一項權利要求所述的管道巡檢機器人自主巡徑算法。
10.根據權利要求9所述的機器人,其特徵在於,所述控制器按照第三路徑數組控制所述機器人對所述管道進行巡徑。
全文摘要
本發明提供一種管道巡檢機器人自主巡徑算法,所述管道包括多條首尾依次相互連通的分支管道,該分支管道圍成一個多邊形結構,且管道的出口設置在多邊形結構圍成的空間內,所述算法包括步驟一,記錄機器人經過每個路口時的行進方向形成第一路徑數組;步驟二,優化第一路徑數組並形成第二路徑數組;步驟三,控制所述機器人按照第二路徑數組對所述管道進行巡徑,並對第二路徑數組中的標示進行修改,按照修改後的標示行進直至走出所述出口,對所述整個行進線路進行記錄形成第三路徑數組;步驟四,存儲第三路徑數組,同時控制機器人按照第三路徑數組對該管道進行下一次的巡徑。
文檔編號G05D1/02GK102799178SQ201210226590
公開日2012年11月28日 申請日期2012年7月3日 優先權日2012年7月3日
發明者肖遠超, 徐素平 申請人:航天科工深圳(集團)有限公司