所屬的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的存儲裝置、處理裝置的具體工作過程及有關(guān)說明,可以參考前述方法實施例中的對應過程,在此不再贅述。本領(lǐng)域技術(shù)人員應該能夠意識到,結(jié)合本文中所公開的實施例描述的各示例的模塊、方法步驟,能夠以電子硬件、計算機軟件或者二者的結(jié)合來實現(xiàn),軟件模塊、方法步驟對應的程序可以置于隨機存儲器(ram)、內(nèi)存、只讀存儲器(rom)、電可編程rom、電可擦除可編程rom、寄存器、硬盤、可移動磁盤、cd-rom、或內(nèi)所公知的任意其它形式的存儲介質(zhì)中。為了清楚地說明電子硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以電子硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應用和設計約束條件。本領(lǐng)域技術(shù)人員可以對每個特定的應用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應認為超出本發(fā)明的范圍。下面參考圖7,其示出了用于實現(xiàn)本技術(shù)方法、系統(tǒng)、設備實施例的服務器的計算機系統(tǒng)的結(jié)構(gòu)示意圖。圖7示出的服務器僅僅是一個示例,不應對本技術(shù)實施例的功能和使用范圍帶來任何限制。如圖7所示,計算機系統(tǒng)包括中央處理單元(cpu,central?processing?unit)601,其可以根據(jù)存儲在只讀存儲器(rom,read?only?memory)602中的程序或者從存儲部分608加載到隨機訪問存儲器(ram,random?access?memory)603中的程序而執(zhí)行各種適當?shù)膭幼骱吞幚?。在ram?603中,還存儲有系統(tǒng)操作所需的各種程序和數(shù)據(jù)。cpu?601、rom?602以及ram?603通過總線604彼此相連。輸入/輸出(i/o,input/output)接口605也連接至總線604。以下部件連接至i/o接口605:包括鍵盤、鼠標等的輸入部分606;包括諸如陰極射線管(crt,cathode?ray?tube)、液晶顯示器(lcd,liquid?crystal?display)等以及揚聲器等的輸出部分607;包括硬盤等的存儲部分608;以及包括諸如lan(局域網(wǎng),local?areanetwork)卡、調(diào)制解調(diào)器等的網(wǎng)絡接口卡的通信部分609。通信部分609經(jīng)由諸如因特網(wǎng)的網(wǎng)絡執(zhí)行通信處理。驅(qū)動器610也根據(jù)需要連接至i/o接口605。可拆卸介質(zhì)611,諸如磁盤、光盤、磁光盤、半導體存儲器等等,根據(jù)需要安裝在驅(qū)動器610上,以便于從其上讀出的計算機程序根據(jù)需要被安裝入存儲部分608。特別地,根據(jù)本公開的實施例,上文參考流程圖描述的過程可以被實現(xiàn)為計算機軟件程序。例如,本公開的實施例包括一種計算機程序產(chǎn)品,其包括承載在計算機可讀介質(zhì)上的計算機程序,該計算機程序包含用于執(zhí)行流程圖所示的方法的程序代碼。在這樣的實施例中,該計算機程序可以通過通信部分609從網(wǎng)絡上被下載和安裝,和/或從可拆卸介質(zhì)611被安裝。在該計算機程序被中央處理單元(cpu)601執(zhí)行時,執(zhí)行本技術(shù)的方法中限定的上述功能。需要說明的是,本技術(shù)上述的計算機可讀介質(zhì)可以是計算機可讀信號介質(zhì)或者計算機可讀存儲介質(zhì)或者是上述兩者的任意組合。計算機可讀存儲介質(zhì)例如可以是——但不限于——電、磁、光、電磁、紅外線、或半導體的系統(tǒng)、裝置或器件,或者任意以上的組合。計算機可讀存儲介質(zhì)的更具體的例子可以包括但不限于:具有一個或多個導線的電連接、便攜式計算機磁盤、硬盤、隨機訪問存儲器(ram)、只讀存儲器(rom)、可擦式可編程只讀存儲器(eprom或閃存)、光纖、便攜式緊湊磁盤只讀存儲器(cd-rom)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本技術(shù)中,計算機可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。而在本技術(shù)中,計算機可讀的信號介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計算機可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括但不限于電磁信號、光信號或上述的任意合適的組合。計算機可讀的信號介質(zhì)還可以是計算機可讀存儲介質(zhì)以外的任何計算機可讀介質(zhì),該計算機可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。計算機可讀介質(zhì)上包含的程序代碼可以用任何適當?shù)慕橘|(zhì)傳輸,包括但不限于:無線、電線、光纜、rf等等,或者上述的任意合適的組合??梢砸砸环N或多種程序設計語言或其組合來編寫用于執(zhí)行本技術(shù)的操作的計算機程序代碼,上述程序設計語言包括面向?qū)ο蟮某绦蛟O計語言—諸如java、smalltalk、c++,還包括常規(guī)的過程式程序設計語言—諸如“c”語言或類似的程序設計語言。程序代碼可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為一個獨立的軟件包執(zhí)行、部分在用戶計算機上部分在遠程計算機上執(zhí)行、或者完全在遠程計算機或服務器上執(zhí)行。在涉及遠程計算機的情形中,遠程計算機可以通過任意種類的網(wǎng)絡——包括局域網(wǎng)(lan)或廣域網(wǎng)(wan)—連接到用戶計算機,或者,可以連接到外部計算機(例如利用因特網(wǎng)服務提供商來通過因特網(wǎng)連接)。附圖中的流程圖和框圖,圖示了按照本技術(shù)各種實施例的系統(tǒng)、方法和計算機程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段、或代碼的一部分,該模塊、程序段、或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應當注意,在有些作為替換的實現(xiàn)中,方框中所標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,兩個接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不是用于描述或表示特定的順序或先后次序。術(shù)語“包括”或者任何其它類似用語旨在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備/裝置不僅包括那些要素,而且還包括沒有明確列出的其它要素,或者還包括這些過程、方法、物品或者設備/裝置所固有的要素。至此,已經(jīng)結(jié)合附圖所示的優(yōu)選實施方式描述了本發(fā)明的技術(shù)方案,但是,本領(lǐng)域技術(shù)人員容易理解的是,本發(fā)明的保護范圍顯然不局限于這些具體實施方式。在不偏離本發(fā)明的原理的前提下,本領(lǐng)域技術(shù)人員可以對相關(guān)技術(shù)特征做出等同的更改或替換,這些更改或替換之后的技術(shù)方案都將落入本發(fā)明的保護范圍之內(nèi)。
背景技術(shù):
1、目前機器人姿態(tài)糾偏系統(tǒng)多數(shù)應用于平面或水下環(huán)境,針對圓形管道內(nèi)機器人姿態(tài)糾偏控制或行走糾偏控制研究較少。另外,管道機器人糾偏控制方法大多考慮在單一方向?qū)崿F(xiàn)控制,在多方向糾偏控制中并不適用,并且多數(shù)機器人糾偏控制方法需要建立機器人的動態(tài)模型,由于動態(tài)模型在理想條件下建立,無法滿足實際生產(chǎn)使用需求。
2、因此現(xiàn)有技術(shù)中很難實現(xiàn)對機器人的多方向控制。
技術(shù)實現(xiàn)思路
1、為了解決現(xiàn)有技術(shù)中的上述問題,即現(xiàn)有技術(shù)中很難實現(xiàn)對機器人的多方向控制的問題,本發(fā)明提供了一種適用于圓形管道的巡檢機器人姿態(tài)糾偏控制方法,所述方法包括:
2、獲取巡檢機器人的運動參數(shù);所述運動參數(shù)包括航向角、橫滾角、左側(cè)輪轂線速度、右側(cè)輪轂線速度、中心線速度;基于所述航向角和目標航向角計算航向角偏差;基于所述橫滾角和目標橫滾角計算橫滾角偏差;
3、基于所述左側(cè)輪轂線速度、所述右側(cè)輪轂線速度和輪轂半徑計算所述巡檢機器人的左側(cè)輪轂角速度和右側(cè)輪轂角速度;基于所述巡檢機器人的兩側(cè)驅(qū)動輪距離、輪轂半徑、中心線速度和當前行走管道半徑構(gòu)建自適應函數(shù);
4、將第一參數(shù)集合中的參數(shù)輸入到模糊關(guān)系矩陣控制系統(tǒng),所述模糊關(guān)系矩陣控制系統(tǒng)分別對所述第一參數(shù)集合中的各參數(shù)定義模糊集,并對各模糊集分別進行模糊集運算得到各模糊集的運算結(jié)果;所述第一參數(shù)集合中的參數(shù)包括所述左側(cè)輪轂線速度、所述右側(cè)輪轂線速度、所述航向角偏差、所述橫滾角偏差;
5、基于各模糊集的運算結(jié)果構(gòu)建模糊if-then規(guī)則;結(jié)合所述模糊if-then規(guī)則,所述模糊關(guān)系矩陣控制系統(tǒng)使用最大最小模糊推理機和中心平均解模糊器處理所述各模糊集的運算結(jié)果,然后輸出變量;
6、基于所述輸出變量與所述自適應函數(shù),建立自適應模糊控制體系結(jié)構(gòu),所述模糊關(guān)系矩陣控制系統(tǒng)基于所述自適應模糊控制體系結(jié)構(gòu)對所述巡檢機器人進行控制。
7、計算所述航向角偏差和所述橫滾角偏差的方法為:
8、
9、δθ(t)=θ(t)-θ0;
10、其中,為當前時刻航向角偏差,δθ(t)為當前時刻橫滾角偏差,為當前時刻巡檢機器人的航向角,θ(t)為當前時刻巡檢機器人的橫滾角,為目標航向角,θ0為目標橫滾角。
11、在一種優(yōu)選的實施方式中,計算所述巡檢機器人的左側(cè)輪轂角速度和右側(cè)輪轂角速度的方法為:
12、
13、
14、其中,ωl(t)為當前時刻巡檢機器人的左側(cè)輪轂角速度,ωr(t)為當前時刻巡檢機器人的右側(cè)輪轂角速度;vl(t)為當前時刻巡檢機器人的左側(cè)輪轂線速度,vr(t)為當前時刻巡檢機器人的右側(cè)輪轂線速度,rw為巡檢機器人的輪轂半徑。
15、在一種優(yōu)選的實施方式中,,所述自適應函數(shù)包括左自適應函數(shù)和右自適應函數(shù);
16、計算所述左自適應函數(shù)的方法為:
17、
18、計算所述右自適應函數(shù)的方法為:
19、
20、
21、其中,為左自適應函數(shù),為右自適應函數(shù),ωc(t)為巡檢機器人幾何中心角速度的時變函數(shù);rw為巡檢機器人輪轂半徑,vc(t)為巡檢機器人幾何中心線速度;dwb為巡檢機器人兩側(cè)驅(qū)動輪距離;rp為當前行走管道半徑。
22、在一種優(yōu)選的實施方式中,對各模糊集進行模糊集運算得到各模糊集的運算結(jié)果包括:
23、對所述巡檢機器人的任意時刻的航向角偏差定義n1個模糊集:
24、對所述航向角偏差的n1個模糊集進行模糊化計算:
25、
26、其中,航向角偏差的模糊集計算結(jié)果,分別為航向角偏差對應的第1個、第2個和第n1個線性隸屬度函數(shù)值;
27、對所述巡檢機器人的任意時刻的橫滾角偏差δθ定義n2個模糊集:
28、對所述橫滾角偏差的n2個模糊集進行模糊化計算:
29、
30、其中,為橫滾角偏差的模糊集計算結(jié)果,分別為橫滾角偏差對應的第1個、第2個和第n2個線性隸屬度函數(shù)值;
31、對所述巡檢機器人在任意時刻的左側(cè)輪轂角速度ωl定義n3個模糊集:
32、對所述左側(cè)輪轂角速度ωl的n3個模糊集進行模糊化計算:
33、
34、對所述巡檢機器人在任意時刻的右側(cè)輪轂角速度ωr(t)定義n4個模糊集:
35、其中,為左側(cè)輪轂角速度的模糊集計算結(jié)果,和分別為左側(cè)輪轂角速度對應的第1個、第2個和第n3個線性隸屬度函數(shù)值;
36、對所述右側(cè)輪轂角速度ωr的n4個模糊集進行模糊化計算:
37、
38、其中,為右側(cè)輪轂角速度的模糊集計算結(jié)果,和分別為左側(cè)輪轂角速度對應的第1個、第2個和第n4個線性隸屬度函數(shù)值。
39、在一種優(yōu)選的實施方式中,構(gòu)建模糊if-then規(guī)則為:
40、為且δθ為則ωl為且ωr為
41、為任意時刻的航向角偏差,δθ為任意時刻的橫滾角偏差,ωl為所述巡檢機器人在任意時刻的左側(cè)輪轂角速度,ωr為所述巡檢機器人在任意時刻的右側(cè)輪轂角速度;為在其n1模糊集中的第i個模糊集;為δθ在其n2模糊集中的第i個模糊集,為ωl在其n3個模糊集中的第i個模糊集;為ωr在其n4個模糊集中的第i個模糊集。
42、在一種優(yōu)選的實施方式中,所述輸出變量包括第一左側(cè)輪轂角速度和第一右側(cè)輪轂角速度;
43、所述輸出變量為
44、
45、所述第一左側(cè)輪轂角速度為:
46、
47、所述第一右側(cè)輪轂角速度:
48、
49、其中,為半張量積計算符號,分別表示航向角偏差的n1個模糊集中的第1個模糊集的中心、第2個模糊集得中心、第n1的模糊集的中心;分別表示橫滾角偏差的n3個模糊集中的第1個模糊集的中心、第2個模糊集得中心、第n2的模糊集的中心,表示當巡檢機器人航向角為時,左側(cè)輪轂角速度ωl對應的第i個線性隸屬度函數(shù)值;表示當巡檢機器人橫滾角為θ(t)時,左側(cè)輪轂角速度ωl對應的第j個線性隸屬度函數(shù)值;表示巡檢機器人航向角為時,右側(cè)輪轂角速度ωr對應的第i個線性隸屬度函數(shù)值;表示當巡檢機器人橫滾角為θ(t)時,右側(cè)輪轂角速度ωr對應的第j個線性隸屬度函數(shù)值。
50、在一種優(yōu)選的實施方式中,所述自適應模糊控制體系結(jié)構(gòu)基于所述輸出變量與所述自適應函數(shù)計算第二左側(cè)輪轂角速度和第二右側(cè)輪轂角速度來建立自適應模糊控制體系結(jié)構(gòu),然后對所述巡檢機器人的左側(cè)輪轂角速度、右側(cè)輪轂角速度進行控制;
51、所述第二左側(cè)輪轂角速度為:
52、所述第二右側(cè)輪轂角速度為:
53、在一種優(yōu)選的實施方式中,對所述巡檢機器人進行控制的方法具體包括:
54、控制所述巡檢機器人的左側(cè)輪轂角速度為第二左側(cè)輪轂角速度ω′l,控制所述巡檢機器人的右側(cè)輪轂角速度為第二右側(cè)輪轂角速度ω′r;
55、判斷當前時刻的航向角偏差和橫滾角偏差是否滿足控制要求;所述控制要求為:且|θ(t)|≤|δθ|;
56、若不滿足所述控制要求,獲取所述巡檢機器人下一時刻的航向角橫滾角θ(t+1)作為輸入變量代入包括模糊關(guān)系矩陣的控制系統(tǒng)進行計算;
57、若滿足所述控制要求,則所述控制系統(tǒng)暫停決策,并實時監(jiān)測巡檢機器人航向角和橫滾角;
58、其中,δθ分別代表巡檢機器人航向角和橫滾角的最大允許誤差;為當前時刻的巡檢機器人的航向角,θ(t)為當前時刻的巡檢機器人的橫滾角;為目標航向角、θ0為目標橫滾角。
59、本發(fā)明的第二方面,提出了一種適用于圓形管道的巡檢機器人姿態(tài)糾偏控制系統(tǒng),所述系統(tǒng)包括:
60、參數(shù)獲取模塊,用于獲取巡檢機器人的運動參數(shù);所述運動參數(shù)包括航向角、橫滾角、左側(cè)輪轂線速度、右側(cè)輪轂線速度、中心線速度;基于所述航向角和目標航向角計算航向角偏差;基于所述橫滾角和目標橫滾角計算橫滾角偏差;
61、函數(shù)構(gòu)建模塊,用于基于所述左側(cè)輪轂線速度、所述右側(cè)輪轂線速度和輪轂半徑計算所述巡檢機器人的左側(cè)輪轂角速度和右側(cè)輪轂角速度;基于所述巡檢機器人的兩側(cè)驅(qū)動輪距離、輪轂半徑、中心線速度和當前行走管道半徑構(gòu)建自適應函數(shù);
62、模糊集運算模塊,用于將第一參數(shù)集合中的參數(shù)輸入到模糊關(guān)系矩陣控制系統(tǒng),所述模糊關(guān)系矩陣控制系統(tǒng)分別對所述第一參數(shù)集合中的各參數(shù)定義模糊集,并對各模糊集分別進行模糊集運算得到各模糊集的運算結(jié)果;所述第一參數(shù)集合中的參數(shù)包括所述左側(cè)輪轂線速度、所述右側(cè)輪轂線速度、所述航向角偏差、所述橫滾角偏差;
63、變量輸出模塊,用于基于各模糊集的運算結(jié)果構(gòu)建模糊if-then規(guī)則;結(jié)合所述模糊if-then規(guī)則,所述模糊關(guān)系矩陣控制系統(tǒng)使用最大最小模糊推理機和中心平均解模糊器處理所述各模糊集的運算結(jié)果,然后輸出變量;
64、機器人控制模塊,用于基于所述輸出變量與所述自適應函數(shù),建立自適應模糊控制體系結(jié)構(gòu),所述模糊關(guān)系矩陣控制系統(tǒng)基于所述自適應模糊控制體系結(jié)構(gòu)對所述巡檢機器人進行控制。
65、本發(fā)明的第三方面,提出了一種電子設備,包括:至少一個處理器;以及與至少一個所述處理器通信連接的存儲器;其中,所述存儲器存儲有可被所述處理器執(zhí)行的指令,所述指令用于被所述處理器執(zhí)行以實現(xiàn)上述的適用于圓形管道的巡檢機器人姿態(tài)糾偏控制方法。
66、本發(fā)明的第四方面,提出了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)存儲有計算機指令,所述計算機指令用于被所述計算機執(zhí)行以實現(xiàn)上述的適用于圓形管道的巡檢機器人姿態(tài)糾偏控制方法。
67、本發(fā)明的有益效果:
68、(1)本發(fā)明實現(xiàn)機器人在運動過程中車體中心線與圓形管道中心線保持高度重合性,即實現(xiàn)機器人在缺乏道路信息的圓形管道中沿管道行走。
69、(2)本發(fā)明使用用自適應模糊控制技術(shù),在機器人動態(tài)模型未知的條件下實現(xiàn)多方向的機器人姿態(tài)糾偏控制,具有較強的魯棒性和較快的響應速度;
70、(3)本發(fā)明滿足實際生產(chǎn)使用需求,在單一方向的機器人姿態(tài)糾偏控制中同樣適用。