周明龍 程晶晶
摘要:該文主要是設(shè)計(jì)了一種可擴(kuò)展式移動(dòng)機(jī)器人,提出了基于Levenberg-Marquardt方法優(yōu)化的 EKF-SLAM算法、基于勢場蟻群算法的移動(dòng)機(jī)器人全局路徑規(guī)劃,并探索了一種新的最優(yōu)路徑搜索方法,即有機(jī)地將移動(dòng)機(jī)器人局部路徑規(guī)劃融入全局路徑規(guī)劃中,并且通過機(jī)器人仿真實(shí)驗(yàn)完成室內(nèi)移動(dòng)機(jī)器人的自主導(dǎo)航,相比傳統(tǒng)方法能夠提高KEF算法的定位精度以及穩(wěn)定性,并結(jié)合仿真實(shí)驗(yàn)驗(yàn)證改進(jìn)后的有效性,得出了位置預(yù)測結(jié)果更加準(zhǔn)確,從而得到更優(yōu)的路徑規(guī)劃。
關(guān)鍵詞:移動(dòng)機(jī)器人;路徑規(guī)劃;自主導(dǎo)航
中圖分類號:F270 ? ? ? ?文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2022)02-0010-03
近年來,科學(xué)技術(shù)的進(jìn)步促使機(jī)器人在人民生活中應(yīng)用越來越廣泛。作為機(jī)器人為人類提供高質(zhì)量服務(wù)的基礎(chǔ),面向機(jī)器人的定位正逐漸成為該領(lǐng)域的研究熱點(diǎn)。近十幾年來,機(jī)器人學(xué)界涌現(xiàn)出了各種各樣的針對SLAM問題的解決方案。其中,基于擴(kuò)展卡爾曼濾波器(EKF)的EKF-SLAM方法獲得了廣泛的認(rèn)可并被普遍應(yīng)用,這種方法是通過測量含噪聲的變量的形式獲得運(yùn)動(dòng)過程中某一時(shí)刻的狀態(tài)得出估計(jì)值,最后根據(jù)反饋修正估計(jì)值。這樣,EKF-SLAM就能在不須了解機(jī)器人詳細(xì)性質(zhì)的前提下,高效地對運(yùn)動(dòng)的過去、當(dāng)前、甚至將來的狀態(tài)進(jìn)行估計(jì),但該方法的穩(wěn)定性和定位精度仍有不足。
1 移動(dòng)機(jī)器人硬件結(jié)構(gòu)的技術(shù)方案
一種可擴(kuò)展式移動(dòng)機(jī)器人的硬件設(shè)計(jì)如圖1、圖2所示,其中,1-移動(dòng)底座;2-操控凹槽腔;3-轉(zhuǎn)動(dòng)臺;4-轉(zhuǎn)動(dòng)基板;5-旋轉(zhuǎn)軸;6-軸套;7-直齒輪一;8-直齒輪二;9-旋轉(zhuǎn)電機(jī)一;10-主體管;11-L形滑桿;12-工具支板;13-電動(dòng)推桿;14-輪軸;15-移動(dòng)輪;16-缺口槽;17-錐齒輪一;18-錐齒輪二;19-旋轉(zhuǎn)電機(jī)二。一種可擴(kuò)展式移動(dòng)機(jī)器人包括移動(dòng)底座,移動(dòng)底座上開設(shè)有操控凹槽腔,所開設(shè)的操控凹槽腔的開口端轉(zhuǎn)動(dòng)配合安裝設(shè)有轉(zhuǎn)動(dòng)臺,轉(zhuǎn)動(dòng)臺的底端面中間位置處固定連接旋轉(zhuǎn)軸的頂端,旋轉(zhuǎn)軸的底端通過軸套一體轉(zhuǎn)動(dòng)配合安裝設(shè)置在操控凹槽腔內(nèi),旋轉(zhuǎn)軸上固定套設(shè)安裝有直齒輪一,直齒輪一嚙合傳動(dòng)連接直齒輪二,直齒輪二固定套設(shè)安裝在旋轉(zhuǎn)電機(jī)一的輸出端,轉(zhuǎn)動(dòng)臺的頂端面上設(shè)有一體結(jié)構(gòu)的轉(zhuǎn)動(dòng)基板,轉(zhuǎn)動(dòng)基板的中間位置處垂直固定安裝設(shè)有主體管,主體管的內(nèi)腔底部設(shè)置有電動(dòng)推桿,主體管的內(nèi)腔頂部滑動(dòng)配合安裝有L形滑桿,電動(dòng)推桿的伸縮桿端與L形滑桿之間相固定連接,L形滑桿的尾端固接設(shè)有工具支板。
使用時(shí),通過移動(dòng)底座1上所開設(shè)的操控凹槽腔2內(nèi)安裝設(shè)置的旋轉(zhuǎn)電機(jī)一9轉(zhuǎn)動(dòng),從而帶動(dòng)直齒輪二8嚙合傳動(dòng)直齒輪一7旋轉(zhuǎn),從而使得旋轉(zhuǎn)軸5帶動(dòng)轉(zhuǎn)動(dòng)臺3以及轉(zhuǎn)動(dòng)基板4進(jìn)行轉(zhuǎn)動(dòng),轉(zhuǎn)動(dòng)臺3與操控凹槽腔2的開口端之間相轉(zhuǎn)動(dòng)配合安裝設(shè)置,使得轉(zhuǎn)動(dòng)臺3旋轉(zhuǎn)穩(wěn)定,從而便于旋轉(zhuǎn)調(diào)節(jié)轉(zhuǎn)動(dòng)基板4所需的應(yīng)用的加工角度位置,操作便捷且方便;通過電動(dòng)推桿13便于推送L形滑桿11沿主體管10進(jìn)行滑移穩(wěn)定,從而便于上下伸縮滑移L形滑桿11的支撐高度位置,其尾端固接的工具支板12的高度便于相對應(yīng)調(diào)整使用,滿足所需加工高度位置,操作應(yīng)用方便;通過旋轉(zhuǎn)電機(jī)二19帶動(dòng)錐齒輪一17旋轉(zhuǎn),從而嚙合傳動(dòng)錐齒輪二18旋轉(zhuǎn),使得輪軸14帶動(dòng)移動(dòng)輪15進(jìn)行旋轉(zhuǎn)移送,使得移動(dòng)底座1整體移動(dòng)穩(wěn)定且便捷。本技術(shù)方案結(jié)構(gòu)簡單,裝配安裝方便,通過旋轉(zhuǎn)電機(jī)一經(jīng)直齒輪二、直齒輪一依次傳動(dòng)至旋轉(zhuǎn)軸進(jìn)行轉(zhuǎn)動(dòng),使得轉(zhuǎn)動(dòng)臺以及轉(zhuǎn)動(dòng)基板旋轉(zhuǎn)穩(wěn)定,便于旋轉(zhuǎn)調(diào)節(jié)轉(zhuǎn)動(dòng)基板所需的應(yīng)用的加工角度位置,操作便捷且方便;通過主體管內(nèi)腔底部設(shè)置的電動(dòng)推桿便于帶動(dòng)L形滑桿進(jìn)行穩(wěn)定滑移,L形滑桿及尾端固接的工具支板的高度便于相對應(yīng)調(diào)整使用,滿足所需加工高度位置,操作應(yīng)用方便。
2 移動(dòng)機(jī)器人路徑規(guī)劃方法的技術(shù)方案[1-2]
移動(dòng)機(jī)器人路徑規(guī)劃方法可以用來解決穩(wěn)定性和定位精度的問題。一種移動(dòng)機(jī)器人路徑規(guī)劃方法的技術(shù)方案具體步驟如下:
①構(gòu)建移動(dòng)機(jī)器人的預(yù)測模型;
②獲取移動(dòng)機(jī)器人觀測到的環(huán)境數(shù)據(jù),從環(huán)境數(shù)據(jù)中進(jìn)行地標(biāo)提取,得到地標(biāo)信息;
③判斷地標(biāo)信息是否是已經(jīng)記錄過的地標(biāo)信息,若不是則將地標(biāo)信息進(jìn)行記錄;
④根據(jù)移動(dòng)機(jī)器人控制里程估計(jì)移動(dòng)機(jī)器人的位置;
⑤根據(jù)重復(fù)觀測到的地標(biāo)信息更新機(jī)器人位置估計(jì),對預(yù)測模型進(jìn)行迭代;
⑥使用列文伯格-馬夸爾特法對預(yù)測模型迭代過程進(jìn)行優(yōu)化;
⑦將當(dāng)前時(shí)刻的環(huán)境數(shù)據(jù)和移動(dòng)機(jī)器人當(dāng)前位置帶入移動(dòng)機(jī)器人運(yùn)動(dòng)模型,預(yù)測下一時(shí)刻移動(dòng)機(jī)器人位置;
⑧利用蟻群算法計(jì)算移動(dòng)機(jī)器人預(yù)測位置和設(shè)定目標(biāo)點(diǎn)位置之間的最優(yōu)路徑。
獲取移動(dòng)機(jī)器人環(huán)境數(shù)據(jù)后,去除環(huán)境數(shù)據(jù)中的高斯噪聲,判斷地標(biāo)信息是否是已經(jīng)記錄過的地標(biāo)信息,預(yù)測移動(dòng)機(jī)器人當(dāng)前位置能夠觀測到的地標(biāo)信息;度量預(yù)測的地標(biāo)信息與實(shí)際觀測的地標(biāo)信息的馬氏距離,與設(shè)定閾值進(jìn)行比較;若馬氏距離不超過設(shè)定閾值,則將兩個(gè)地標(biāo)視為同一地標(biāo);協(xié)方差矩陣主要是通過移動(dòng)機(jī)器人與地標(biāo)之間的協(xié)方差以及移動(dòng)機(jī)器人位置、地標(biāo)的協(xié)方差組成的;根據(jù)移動(dòng)機(jī)器人的控制里程、預(yù)測模型的雅克比矩陣對協(xié)方差矩陣進(jìn)行更新,預(yù)測移動(dòng)機(jī)器人當(dāng)前位置;估計(jì)出機(jī)器人當(dāng)前位置值和地標(biāo)信息,從而預(yù)測出地表角度以及位置;計(jì)算測量模型的雅克比矩陣;計(jì)算雅克比矩陣的卡爾曼增益;利用卡爾曼增益計(jì)算新的狀態(tài)向量,得出當(dāng)前機(jī)器人位置和各地標(biāo)的位置;將新觀測到的地標(biāo)信息加入預(yù)測模型中,更新預(yù)測模型;為達(dá)到降低算法的深度以及復(fù)雜度的目的,從而將人工勢場局部搜索優(yōu)化算法融入計(jì)算過程中;為了提高隱含全局最優(yōu)空間的信息素濃度,可以將信息素?cái)U(kuò)散柵格表和信息素?cái)U(kuò)散模型融入勢場蟻群算法中[3];計(jì)算完整路徑;通過幾何優(yōu)化策略優(yōu)化局部路徑獲得另一條完整路徑,并完成此相鄰路徑的信息素更新;比較各完整路徑,得出最優(yōu)路徑。
3 移動(dòng)機(jī)器人路徑規(guī)劃方法實(shí)施說明
本方法通過提出基于Levenberg-Marquardt 方法優(yōu)化的 EKF-SLAM算法、基于勢場蟻群算法的移動(dòng)機(jī)器人全局路徑規(guī)劃,探索一種新的最優(yōu)路徑搜索方法,即有機(jī)地將移動(dòng)機(jī)器人局部路徑規(guī)劃融入全局路徑規(guī)劃中,并且通過機(jī)器人仿真實(shí)驗(yàn)完成室內(nèi)移動(dòng)機(jī)器人的自主導(dǎo)航,相比傳統(tǒng)方法能夠增加擴(kuò)展卡爾曼算法的穩(wěn)定性和定位精度。移動(dòng)機(jī)器人路徑規(guī)劃方法具體實(shí)施步驟分為六步,具體如下[3-5]:
第一步:獲取移動(dòng)機(jī)器人環(huán)境數(shù)據(jù)后,去除環(huán)境數(shù)據(jù)中的高斯噪聲,提高環(huán)境數(shù)據(jù)的可靠性。
第二步:判斷地標(biāo)信息是否是已經(jīng)記錄過的地標(biāo)信息。預(yù)測移動(dòng)機(jī)器人當(dāng)前位置能夠觀測到的地標(biāo)信息;度量預(yù)測的地標(biāo)信息與實(shí)際觀測的地標(biāo)信息的馬氏距離,與設(shè)定閾值進(jìn)行比較;若所述馬氏距離不超過設(shè)定閾值,則將兩個(gè)地標(biāo)視為同一地標(biāo)。馬氏距離也稱為歸一化平方新息,是新息向量的加權(quán)范數(shù)。
第三步:根據(jù)移動(dòng)機(jī)器人當(dāng)前里程估計(jì)移動(dòng)機(jī)器人的位置。協(xié)方差矩陣主要是通過移動(dòng)機(jī)器人與地標(biāo)之間的協(xié)方差(Covariance)以及移動(dòng)機(jī)器人位置、地標(biāo)的協(xié)方差組成的[1-2];預(yù)測移動(dòng)機(jī)器人預(yù)測模型的雅克比矩陣;根據(jù)移動(dòng)機(jī)器人的控制里程、預(yù)測模型的雅克比矩陣對協(xié)方差矩陣進(jìn)行更新,預(yù)測移動(dòng)機(jī)器人當(dāng)前位置。在概率論和統(tǒng)計(jì)學(xué)中通常是通過協(xié)方差衡量兩個(gè)變量的總體誤差。兩個(gè)變量的協(xié)方差提供了這兩個(gè)變量相關(guān)程度的度量。多維隨機(jī)變量的研究主要是通過協(xié)方差矩陣來實(shí)現(xiàn)的。
第四步:根據(jù)重復(fù)觀測到的地標(biāo)信息,更新機(jī)器人位置估計(jì),對預(yù)測模型進(jìn)行迭代。根據(jù)機(jī)器人當(dāng)前位置的估計(jì)值以及記錄的地標(biāo)信息計(jì)算地標(biāo)位置和角度的預(yù)測值;計(jì)算測量模型的雅克比矩陣;計(jì)算雅克比矩陣的卡爾曼增益;利用卡爾曼增益計(jì)算新的狀態(tài)向量,得出當(dāng)前機(jī)器人位置和各地標(biāo)的位置;將新觀測到的地標(biāo)信息加入預(yù)測模型中,更新預(yù)測模型。
第五步:利用蟻群算法計(jì)算移動(dòng)機(jī)器人預(yù)測位置和設(shè)定目標(biāo)點(diǎn)位置之間的最優(yōu)路徑。將人工勢場局部搜索優(yōu)化算法融入計(jì)算過程中;為了提高隱含全局最優(yōu)空間的信息素濃度,可以將信息素?cái)U(kuò)散柵格表和信息素?cái)U(kuò)散模型融入勢場蟻群算法中;以當(dāng)前路徑點(diǎn)的信息素為擴(kuò)散源,引入擴(kuò)散因子;計(jì)算完整路徑;通過幾何優(yōu)化策略優(yōu)化局部路徑獲得另一條完整路徑,并完成此相鄰路徑的信息素更新;
第六步:比較各完整路徑,得出最優(yōu)路徑。
4 移動(dòng)機(jī)器人路徑規(guī)劃方法的驗(yàn)證實(shí)施路徑
4.1 移動(dòng)機(jī)器人路徑規(guī)劃方法的驗(yàn)證實(shí)施路線
以自主移動(dòng)車輛作為移動(dòng)機(jī)器人的模型,建立移動(dòng)機(jī)器人系統(tǒng)模型,通過對移動(dòng)機(jī)器人的同時(shí)定位與地圖構(gòu)建、路徑規(guī)劃等方面進(jìn)行深入的研究工作,提出了基于Levenberg-Marquardt 方法優(yōu)化的 EKF-SLAM算法、基于勢場蟻群算法的移動(dòng)機(jī)器人全局路徑規(guī)劃、融合移動(dòng)機(jī)器人全局路徑規(guī)劃與局部路徑規(guī)劃的最優(yōu)路徑搜索方法,并且通過機(jī)器人仿真實(shí)驗(yàn),完成室內(nèi)移動(dòng)機(jī)器人的自主導(dǎo)航。
4.2 移動(dòng)機(jī)器人路徑規(guī)劃方法的算法原理[6-7]
為了蟻群算法的深度以及復(fù)雜程度,將人工勢場局部搜索尋優(yōu)算法融入其中;為了提高隱含全局最優(yōu)空間的信息素濃度,將信息素?cái)U(kuò)散柵格表和信息素?cái)U(kuò)散模型融入勢場蟻群算法中,以當(dāng)前路徑點(diǎn)的信息素為擴(kuò)散源,引入擴(kuò)散因子。
仿真結(jié)果主要是比較不同方法以及最佳參數(shù)匹配和參數(shù)不同組合,從最優(yōu)路徑的搜索以及算法時(shí)間、迭代深度等方面得出基于勢場蟻群算法的優(yōu)勢。蟻群算法中螞蟻個(gè)體的搜索效率可以通過局部路徑的優(yōu)化獲取其他完整的路徑,及時(shí)更新相鄰路徑的信息素,螞蟻個(gè)體具備對兩條完整路徑進(jìn)行搜索的能力,蟻群算法的復(fù)雜度和深度得到了有效降低。
5 結(jié)束語
研究的移動(dòng)機(jī)器人的路徑規(guī)劃方法主要是通過設(shè)計(jì)了一種可擴(kuò)展式移動(dòng)機(jī)器人,提出了基于Levenberg-Marquardt 方法優(yōu)化的 EKF-SLAM算法、基于勢場蟻群算法的移動(dòng)機(jī)器人全局路徑規(guī)劃以及探索了一種新的最優(yōu)路徑搜索方法,即有機(jī)地將移動(dòng)機(jī)器人局部路徑規(guī)劃融入全局路徑規(guī)劃中,并且通過機(jī)器人仿真實(shí)驗(yàn)完成室內(nèi)移動(dòng)機(jī)器人的自主導(dǎo)航,相比傳統(tǒng)方法能夠提高KEF算法的定位精度以及穩(wěn)定性,并結(jié)合仿真實(shí)驗(yàn)驗(yàn)證改進(jìn)后的有效性,得出了位置預(yù)測結(jié)果更加準(zhǔn)確,從而得到更優(yōu)的路徑規(guī)劃。
參考文獻(xiàn):
[1] 巨江.基于激光雷達(dá)的室內(nèi)移動(dòng)機(jī)器人SLAM研究[D].西安:西安電子科技大學(xué),2019.
[2] 陳強(qiáng)龍.室內(nèi)移動(dòng)機(jī)器人路徑規(guī)劃方法研究[D].北京:北京工業(yè)大學(xué),2019.
[3] 周明龍,程晶晶等.一種移動(dòng)機(jī)器人路徑規(guī)劃方法[P].中國專利:CN201911312815.2.2020-05-08.
[4] 劉建華.基于智能優(yōu)化算法的機(jī)器人路徑規(guī)劃與目標(biāo)跟蹤方法研究[D].上海:東華大學(xué),2017.
[5] 彭湘,向鳳紅,毛劍琳.一種未知環(huán)境下的移動(dòng)機(jī)器人路徑規(guī)劃方法[J].小型微型計(jì)算機(jī)系統(tǒng),2021,42(5):961-966.
[6] 唐嘉寧,潘蓉,周思達(dá),等.融合模擬電勢場的改進(jìn)人工勢場法研究[J].電光與控制,2020,27(12):69-73.
[7] 于振中,李強(qiáng),樊啟高.智能仿生算法在移動(dòng)機(jī)器人路徑規(guī)劃優(yōu)化中的應(yīng)用綜述[J].計(jì)算機(jī)應(yīng)用研究,2019,36(11):3210-3219.
【通聯(lián)編輯:代影】