蘇 晨,周 璇
(湖北工業(yè)大學(xué)工業(yè)設(shè)計(jì)學(xué)院,湖北武漢 430064)
工業(yè)機(jī)器人是指在工業(yè)領(lǐng)域被廣泛使用的多關(guān)節(jié)機(jī)械手或者多自由度的機(jī)器裝置,其具備一定程度的自動(dòng)性,可根據(jù)自身的動(dòng)力能源和控制能力,完成工業(yè)作業(yè)[1]。通常情況下工業(yè)機(jī)器人由機(jī)械部分、傳感部分以及控制部分組成。并且,可分為六個(gè)子系統(tǒng),分別為機(jī)械結(jié)構(gòu)系統(tǒng)、驅(qū)動(dòng)系統(tǒng)、感知系統(tǒng)、機(jī)器人-環(huán)境交互系統(tǒng)、人機(jī)交互系統(tǒng)和控制系統(tǒng)[2]。智能終端在互聯(lián)網(wǎng)的蓬勃發(fā)展的推進(jìn)下,成為機(jī)器人控制系統(tǒng)完成導(dǎo)航、定位的主要設(shè)備?;谥悄芙K端的導(dǎo)航控制過(guò)程中,定位系統(tǒng)分為相對(duì)定位傳感器和絕對(duì)定位傳感器,前者通過(guò)慣性導(dǎo)航單元(IMU)提供相對(duì)初始狀態(tài)的位姿完成導(dǎo)航定位;后者則是以GPS為主的定位系統(tǒng)。工業(yè)機(jī)器人在實(shí)際應(yīng)用過(guò)程中,導(dǎo)航定位采用兩者結(jié)合,并且聯(lián)合數(shù)個(gè)異構(gòu)網(wǎng)絡(luò)完成[3],因此,存在網(wǎng)絡(luò)分布不均,覆蓋不完全的情況,使機(jī)器人很難實(shí)現(xiàn)準(zhǔn)確的導(dǎo)航控制,無(wú)法定位??琢钗牡热搜芯炕谀:窠?jīng)網(wǎng)絡(luò)的機(jī)器人自主導(dǎo)航閉環(huán)控制方法[4],該方法采用閉環(huán)控制方法優(yōu)化模糊控制的邏輯推理能力和神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)能力的結(jié)合算法,實(shí)現(xiàn)導(dǎo)航控制,該方法在導(dǎo)航控制過(guò)程中,位置對(duì)準(zhǔn)性能較差,存在機(jī)器人定位偏差現(xiàn)象;季宇寒等人研究基于激光雷達(dá)的機(jī)器人導(dǎo)航控制方法[5],該方法采用激光雷達(dá)完成導(dǎo)航控制,并通過(guò)無(wú)線網(wǎng)絡(luò)完成數(shù)據(jù)交互,但是當(dāng)網(wǎng)絡(luò)存在盲區(qū)時(shí),則會(huì)影響導(dǎo)航結(jié)果。
因此,本文提出基于智能終端的工業(yè)機(jī)器人導(dǎo)航交互控制,實(shí)現(xiàn)工業(yè)機(jī)器人在網(wǎng)絡(luò)存在盲區(qū)時(shí),依舊可以完成導(dǎo)航交互控制。
工業(yè)機(jī)器人的導(dǎo)航交互控制目的是實(shí)現(xiàn)機(jī)器人在多源異構(gòu)網(wǎng)絡(luò)以及復(fù)雜環(huán)境下位置以及最佳規(guī)劃路線的獲取,其控制系統(tǒng)原理結(jié)構(gòu)如圖1所示。
圖1 工業(yè)機(jī)器人導(dǎo)航交互控制系統(tǒng)原理
為獲取工業(yè)機(jī)器人在移動(dòng)時(shí)的動(dòng)力學(xué)模型,針對(duì)基于智能終端的工業(yè)機(jī)器人導(dǎo)航交互控制的應(yīng)用,終端相對(duì)機(jī)器人和機(jī)器人相對(duì)于世界的位姿確定是基礎(chǔ)[6]。因此,設(shè)置S、V、W分別表示智能終端坐標(biāo)系、工業(yè)機(jī)器人坐標(biāo)系以及世界坐標(biāo)系。
由于慣性傳感器在基于智能終端的工業(yè)機(jī)器人在導(dǎo)航交互控制過(guò)程中,不確定相對(duì)工業(yè)機(jī)器人的方向,因此,需采用對(duì)準(zhǔn)手段對(duì)智能終端的慣性傳感器實(shí)行處理,包含智能終端陀螺儀相對(duì)終端位置的偏航角測(cè)量、基于重力加速度相對(duì)世界的俯仰角和翻滾角的測(cè)量[7]。由于不確定智能終端在工業(yè)機(jī)器人上的位置,因此,需獲取智能終端相對(duì)于機(jī)器人的偏航角,其通過(guò)自動(dòng)對(duì)準(zhǔn)法完成。則單次采樣的偏航角γS-V計(jì)算公式為
(1)
式中:ezV和eyzV分別表示z軸加速度、其與y軸合成加速度;y軸經(jīng)過(guò)卡爾曼濾波后的加速度用eyKF表示,其中
向世界坐標(biāo)系中投射終端坐標(biāo)系和機(jī)器人坐標(biāo)系,完成工業(yè)機(jī)器人在世界坐標(biāo)下的動(dòng)力學(xué)模型。
將低功耗藍(lán)牙無(wú)線網(wǎng)絡(luò)部署在工業(yè)機(jī)器人移動(dòng)環(huán)境內(nèi),以此獲取其位置。在復(fù)雜環(huán)境中低功耗藍(lán)牙無(wú)線網(wǎng)絡(luò)存在很大的時(shí)變性,導(dǎo)致無(wú)線信號(hào)減弱,使模型無(wú)法準(zhǔn)確完成定位。因此,通過(guò)基于指紋數(shù)據(jù)庫(kù)的匹配定位方法完成定位,其定位過(guò)程包含離線采樣和在線定位[8];前者將低功耗藍(lán)牙無(wú)線網(wǎng)絡(luò)獲取的主要和次要數(shù)據(jù)存儲(chǔ)到指紋數(shù)據(jù)庫(kù)中,同時(shí)也完成經(jīng)度和緯度的存儲(chǔ);后者為獲取最接近數(shù)據(jù),則通過(guò)數(shù)據(jù)匹配,結(jié)合基于工業(yè)機(jī)器人運(yùn)動(dòng)模型獲取的系統(tǒng)狀態(tài)方程和觀測(cè)方程,完成機(jī)器人目標(biāo)位置獲取,其中所匹配的數(shù)據(jù)包含低功耗藍(lán)牙無(wú)線網(wǎng)絡(luò)接收的信號(hào)強(qiáng)度向量以及指紋庫(kù)中的數(shù)據(jù)[9]。
2.2.1 狀態(tài)方程
控制系統(tǒng)狀態(tài)方程建立的依據(jù)是工業(yè)機(jī)器人運(yùn)動(dòng)模型,系統(tǒng)在k時(shí)刻的運(yùn)動(dòng)狀態(tài)向量為
(2)
Xk+1=AXk+Wk
(3)
式中:k時(shí)刻的噪聲向量、k+1時(shí)刻狀態(tài)方程的狀態(tài)向量以及狀態(tài)轉(zhuǎn)移矩陣分別用Wk、Xk+1以及A表示。其中
(4)
式中:T表示傳感器采樣的時(shí)間間隔。
2.2.2 觀測(cè)方程
為獲取系統(tǒng)的觀測(cè)方程,將低功耗藍(lán)牙無(wú)線網(wǎng)絡(luò)以及GPS(Global Positioning System,全球定位系統(tǒng))獲得的初步位置信息作為兩組不同的觀測(cè)量[10]。該方程為
Zk=HkXk+Gk
(5)
(6)
其中
(7)
式中:k時(shí)刻加速度傳感器在智能終端坐標(biāo)系下積分所得速度、智能終端羅盤輸出的磁航角、k時(shí)刻的觀測(cè)白噪聲以及k時(shí)刻觀測(cè)方程的轉(zhuǎn)移矩陣分別用uk、φ、Gk以及Hk表示。且
(8)
結(jié)合工業(yè)機(jī)器人在導(dǎo)航過(guò)程中,低功耗藍(lán)牙無(wú)線網(wǎng)絡(luò)以及全球定位系統(tǒng)觀測(cè)噪聲存在的差異[11],將2組觀測(cè)白噪聲融入后獲取模型集,其公式為
(9)
2.3.1A*算法
路徑規(guī)劃主要目的為完成工業(yè)機(jī)器人運(yùn)動(dòng)模型從起點(diǎn)至終點(diǎn)路徑序列,并有效避免碰撞[12]。以定位結(jié)果為基礎(chǔ),采用A*算法完成工業(yè)機(jī)器人導(dǎo)航交互控制的路徑規(guī)劃,路徑規(guī)劃流程如圖2所示。
圖2 路徑規(guī)劃流程
該方法在柵格地圖上實(shí)行路徑規(guī)劃過(guò)程中,需通過(guò)OPEN表和CLOSE表完成節(jié)點(diǎn)的擴(kuò)展和最優(yōu)節(jié)點(diǎn)的選取。
設(shè)置h(n)、(xn,yn)以及(xT,yT)分別表示啟發(fā)式信息、當(dāng)前節(jié)點(diǎn)以及目標(biāo)節(jié)點(diǎn),且(xn,yn)和(xT,yT)之間的直線距離可用h(n)表示,因此
(10)
A*算法的工業(yè)機(jī)器人路徑規(guī)劃步驟如下所述:
1)向OPEN表和CLOSE表中分別引入起點(diǎn)和障礙點(diǎn)。
2)向CLOSE表中引入具有最小f值的節(jié)點(diǎn)n,并且其屬于OPEN表中。
3)對(duì)n實(shí)行判斷,分析其是否為目標(biāo)節(jié)點(diǎn),如果是,最優(yōu)路徑的生成則以其前向指針為依據(jù);反之,需生成后續(xù)節(jié)點(diǎn)m,其通過(guò)實(shí)行擴(kuò)展完成。
4)將后繼節(jié)點(diǎn)m返回至n的指針建立在OPEN表中,并對(duì)f(m)=g(m)+h(m)求解。
5)為確定后繼節(jié)點(diǎn)m是否存在OPEN表中,通過(guò)增加判斷語(yǔ)句完成。m在判斷失敗時(shí),融入
OPEN表中;在判斷成功時(shí),對(duì)較擁有不同前向指針的f(m)實(shí)行比較,將最小f(m)值保留。
6)對(duì)g(m)、f(m)和m定位前向指針實(shí)行更新。
7)根據(jù)數(shù)值的大小正序排列,并在OPEN表中重新完成f值排序,并返回步驟2)。
2.3.2 基于24鄰域擴(kuò)展優(yōu)化
由于A*算法在自動(dòng)完成路徑規(guī)劃過(guò)程中,會(huì)存在路徑轉(zhuǎn)折現(xiàn)象,為獲取最佳的規(guī)劃路徑,采用24鄰域擴(kuò)展對(duì)其實(shí)行優(yōu)化。將A*算法原有各節(jié)點(diǎn)的鄰域進(jìn)行擴(kuò)展,使其由8個(gè)增加到24個(gè),擴(kuò)展過(guò)程為:
1)對(duì)每個(gè)輸入點(diǎn)的擴(kuò)展點(diǎn)四周的24個(gè)鄰接點(diǎn)實(shí)行檢查,并判斷其是否可接入擴(kuò)展列表以及是否在網(wǎng)格圖范圍內(nèi)。
2)當(dāng)鄰接點(diǎn)為內(nèi)圈點(diǎn),僅判斷其是否為障礙點(diǎn)即可,如果不是,將其加入擴(kuò)展列表;如果是,則對(duì)該鄰接點(diǎn)與輸入點(diǎn)路徑中的1~2個(gè)點(diǎn)實(shí)行檢查,判斷是否在CLOSE表中,以及途經(jīng)點(diǎn)是否在CLOSE表中。
選取Microsoft Visual C++6.0軟件平臺(tái)仿真某包裝工廠的環(huán)境完成本文方法的仿真。該包裝工廠仿真環(huán)境(如圖3所示)的坐標(biāo)系中隨機(jī)分布多種障礙物,工業(yè)機(jī)器人的起點(diǎn)和終點(diǎn)分別為環(huán)境中的A點(diǎn)和B點(diǎn)。
圖3 仿真界面
測(cè)試本文方法在網(wǎng)絡(luò)存在覆蓋盲區(qū)情況下,是否可有效完成工業(yè)機(jī)器人導(dǎo)航交互控制,結(jié)果如圖4所示。
圖4 控制結(jié)果
根據(jù)圖4的測(cè)試可知:仿真場(chǎng)景中存在一個(gè)面積為15m2的圓形區(qū)域的網(wǎng)絡(luò)覆蓋盲區(qū),本文方法控制下,工業(yè)機(jī)器人可順利由A點(diǎn)到達(dá)B點(diǎn),實(shí)現(xiàn)正確導(dǎo)航控制,是由于本文方法是通過(guò)低功耗藍(lán)牙無(wú)線網(wǎng)絡(luò)、GPS以及慣性傳感器多種方式結(jié)合完成工業(yè)機(jī)器人導(dǎo)航交互控制,因此,在出現(xiàn)網(wǎng)絡(luò)盲區(qū)時(shí),依舊可完成導(dǎo)航交互控制,說(shuō)明本文方法的導(dǎo)航交互控制性能較好。
工業(yè)機(jī)器人在導(dǎo)航交互控制過(guò)程中路徑規(guī)劃性能決定導(dǎo)航交互的結(jié)果,測(cè)試本文方法在不同障礙物數(shù)量情況下路徑規(guī)劃所需時(shí)間的結(jié)果和三種故障數(shù)量在不同地圖大小情況下路徑規(guī)劃結(jié)果,如圖5、圖6所示。
圖6 不同地圖大小下控制耗時(shí)測(cè)試結(jié)果
根據(jù)圖5和圖6的測(cè)試結(jié)果可知:環(huán)境中障礙物數(shù)量越多,路徑規(guī)劃所需時(shí)間則越多;在相同故障條件下,地圖大小的增加,則對(duì)規(guī)劃時(shí)間不造成影響。該結(jié)果表明,地圖的大小對(duì)于工業(yè)機(jī)器人導(dǎo)航交互控制過(guò)程中的路徑規(guī)劃所需時(shí)間不存在影響,障礙物的數(shù)量則是影響路徑規(guī)劃所需時(shí)間的原因。
在仿真環(huán)境中,針對(duì)優(yōu)化前和優(yōu)化后的路徑規(guī)劃結(jié)果進(jìn)行對(duì)比,對(duì)比本文方法優(yōu)化后的路徑規(guī)劃性能,結(jié)果如表1所示。
表1 優(yōu)化前后各指標(biāo)對(duì)比結(jié)果
根據(jù)表1測(cè)試結(jié)果可知:優(yōu)化后,擴(kuò)展節(jié)點(diǎn)數(shù)量的增加,會(huì)使搜索時(shí)間小幅度增加,但是僅增加0.37s,影響可忽略不計(jì),規(guī)劃的路徑距離結(jié)果則明顯優(yōu)于優(yōu)化前的路徑規(guī)劃距離結(jié)果。說(shuō)明本文方法優(yōu)化后,可明顯提升路徑規(guī)劃效果。
智能終端的慣性傳感器的對(duì)準(zhǔn)性能與導(dǎo)航交互控制存在較大關(guān)聯(lián)性,為分析本文方法慣性傳感器的對(duì)準(zhǔn)性能,仿真設(shè)置智能終端陀螺儀零偏穩(wěn)定性約為79(°)/h(1σ)、加速度計(jì)偏置穩(wěn)定性約為1.1mg(1σ)、磁強(qiáng)計(jì)磁場(chǎng)強(qiáng)度測(cè)量誤差約為79nT(1σ),選取基于模糊神經(jīng)網(wǎng)絡(luò)的機(jī)器人自主導(dǎo)航閉環(huán)控制方法(文獻(xiàn)[4]方法)和基于激光雷達(dá)的巡檢機(jī)器人導(dǎo)航控制方法(文獻(xiàn)[5]方法),作為本文方法的對(duì)比方法,統(tǒng)計(jì)三種方法對(duì)于智能終端工業(yè)機(jī)器人導(dǎo)航交互控制的偏航角、俯仰角和翻滾角的計(jì)算結(jié)果,如表2所示。
表2 不同方法的指標(biāo)對(duì)比
根據(jù)表2的測(cè)試結(jié)果可知:偏航角、俯仰角和翻滾角的計(jì)算結(jié)果中,本文方法的均值和方差均為最佳,明顯優(yōu)于兩種對(duì)比方法。說(shuō)明本文方法的慣性傳感器的對(duì)準(zhǔn)性能優(yōu)于兩種對(duì)比方法。
本文研究基于智能終端的工業(yè)機(jī)器人導(dǎo)航交互控制方法,用于完成工業(yè)機(jī)器人的導(dǎo)航交互控制。經(jīng)多方面測(cè)試得出:本文方法可在障礙物數(shù)量較多的作業(yè)環(huán)境中有效完成導(dǎo)航交互控制,并且對(duì)路徑規(guī)劃優(yōu)化后,可有效縮短路徑路程,具備智能終端慣性傳感器的對(duì)準(zhǔn)性能,說(shuō)明本文方法適用于工業(yè)機(jī)器人導(dǎo)航交互控制。
本文方法在具備上述方面的創(chuàng)新和優(yōu)勢(shì)的同時(shí),也存在一些不足,下一步的工作將針對(duì)以下幾方面進(jìn)行深入研究:
1)在導(dǎo)航交互過(guò)程中,將針對(duì)工業(yè)機(jī)器人在移動(dòng)過(guò)程中的最佳位姿展開研究,增強(qiáng)機(jī)器人的控制效果。
2)將預(yù)測(cè)系統(tǒng)引入導(dǎo)航控制中,實(shí)現(xiàn)規(guī)劃路徑的到達(dá)時(shí)間預(yù)測(cè),制定最佳路程方案。
3)針對(duì)不同噪聲環(huán)境下導(dǎo)航交互控制結(jié)果進(jìn)行測(cè)試,提升本文方法的多環(huán)境應(yīng)用性能。