馮少源,周章金,馬 璿
(西藏民族大學(xué)信息工程學(xué)院,陜西 咸陽 712000)
AGV是一種能夠沿規(guī)定導(dǎo)引路徑行駛的移動(dòng)搬運(yùn)機(jī)器人,廣泛應(yīng)用于物流,電子,汽車,航天,家電等產(chǎn)業(yè)[1]。在移動(dòng)機(jī)器人領(lǐng)域中,六輪AGV小車屬于重要領(lǐng)域,將導(dǎo)航傳感器安裝到六輪AGV小車上,可以控制小車按照設(shè)定的路線行駛,與傳統(tǒng)物料搬運(yùn)工具的性質(zhì)相同,六輪AGV小車主要用于搬運(yùn)物料,但其性能優(yōu)于傳統(tǒng)物料搬運(yùn)工具。六輪AGV在工作過程中通常采用攝像機(jī)獲取工作環(huán)境內(nèi)的路況信息,根據(jù)路徑軌跡與車輛之間的相對(duì)位置向指定方向行駛。在六輪AGV自動(dòng)引導(dǎo)控制中,線路偏差控制屬于重要研究?jī)?nèi)容。
針對(duì)此問題,當(dāng)前已經(jīng)有相關(guān)學(xué)者給出了一些較好的研究成果,例如:蘭培真[2]等人通過螞蟻智能體表示AGV小車,通過Ant-agent控制算法完成AGV小車路線偏差控制,該方法控制路徑與設(shè)定路徑之間的偏差較大,存在導(dǎo)航精度低的問題。郭興海[3]等人將最大平滑度和最短路徑作為目標(biāo),構(gòu)建目標(biāo)函數(shù),利用量子粒子群優(yōu)化算法獲取函數(shù)最優(yōu)值,得到AGV小車的初始路徑,將平滑度約束引入Bezier曲線中,擬合修正初始路徑,完成AGV小車路線的偏差控制,該方法在直段路線和彎段路線的測(cè)試過程中存在較大的角度偏差,降低了方法的控制性能。范厚明[4]等人將能耗最小作為目標(biāo),在支架容量和平臺(tái)容量的約束下構(gòu)建雙層AGV小車路線偏差控制模型,結(jié)合遺傳算法和枚舉法對(duì)模型求解,完成路線偏差控制,該方法控制小車運(yùn)動(dòng)所用的時(shí)間較長,存在控制效率低的問題。
AGV在危險(xiǎn)環(huán)境、倉儲(chǔ)業(yè)、煙草和制造業(yè)中六輪AGV具有良好的自動(dòng)化程度和柔性,得到了廣泛的應(yīng)用。為了進(jìn)一步解決當(dāng)前小車路徑控制方法中存在的問題,提出新的基于磁導(dǎo)航的六輪AGV小車路線偏差控制方法。
1)磁釘坐標(biāo)標(biāo)定
AGV小車運(yùn)動(dòng)的基礎(chǔ)是初始姿態(tài)和位姿,因此在路線偏差控制之前需要確定小車的初始姿態(tài)和初始位姿。
以起始磁釘為依據(jù),測(cè)量和標(biāo)定磁釘A0和磁釘B0[5],設(shè)置位姿向量OA0=[0,0,0]和OB0=[xB0,yB0,?A0],其中,(xB0,yB0)表示絕對(duì)坐標(biāo)系中磁釘B0對(duì)應(yīng)的坐標(biāo),夾角?A0=arctan(yB0/xB0)。六輪AGV小車在運(yùn)動(dòng)過程中經(jīng)過第一對(duì)磁釘時(shí),通過下式計(jì)算小車的初始姿態(tài)?j和初始位置(xj,yj)
(1)
式中,Δ?j代表夾角變化率;b代表磁釘Aj與六輪AGV小車中心之間的距離。
通過示教方法驅(qū)動(dòng)六輪AGV小車,掃描磁釘坐標(biāo)。
六輪AGV小車在運(yùn)動(dòng)過程中經(jīng)過磁釘Cj時(shí),可通過定位系統(tǒng)采集六輪AGV小車的位姿Oi=[xi,yi,?i]T,磁釘Cj的坐標(biāo)(xCj,yCj)可通過下式計(jì)算得到
(2)
式中,c代表磁釘與六輪AGV小車中心之間存在的距離,可通過磁柵測(cè)量得到。
2)磁釘規(guī)劃
保持六輪AGV小車在磁釘間運(yùn)動(dòng)時(shí)的軌跡為直線,設(shè)定磁釘Aj和磁釘Bj之間的距離小于六輪AGV小車直線運(yùn)動(dòng)距離。設(shè)置姿態(tài)角,確保六輪AGV小車沿規(guī)劃路徑段運(yùn)動(dòng)到目標(biāo)磁釘,在此基礎(chǔ)上,通過直線運(yùn)動(dòng)六輪AGV小車可以掃描到磁釘對(duì)。用密切差值多項(xiàng)式描述從起始點(diǎn)處六輪AGV小車到目標(biāo)點(diǎn)的軌跡Mi(x)
Mi(x)=yi+(x-xi)tan ?i[(yi+1-yi)/
(xi+1-xi)3-tan ?i/(xi+1-xi)2](x-xi)3
+[-3(yi+1-yi)/(xi+1-xi)4+(tan ?i+1+
2tan ?i)/(xi+1-xi)3](x-xi)3°(x-xi+1)
+[6(yi+1-yi)/(xi+1-xi)5-(3tan ?i+1+
3tan ?i)/(xi+1-xi)4]°(x-xi)3(x-xi+1)2
(3)
3)迭代學(xué)習(xí)
磁柵尺精度、路面平整度、車輪打滑和定位系統(tǒng)誤差等因素都會(huì)降低磁釘標(biāo)定的精度。通過迭代學(xué)習(xí)方法[6,7]在路徑上控制六輪AGV小車重復(fù)運(yùn)動(dòng),修正規(guī)劃路徑段中六輪AGV小車的目標(biāo)點(diǎn),利用磁釘完成小車的位姿校正。
(4)
式中,l在區(qū)間[0,1]內(nèi)取值,代表學(xué)習(xí)效率因子。
在模糊控制原理的基礎(chǔ)上控制六輪AGV小車路線的偏差。
1)模糊控制原理
在多變量的復(fù)雜系統(tǒng)中,模糊控制技術(shù)可根據(jù)不同變量之間存在的關(guān)系實(shí)現(xiàn)精準(zhǔn)控制[8,9]。
建立模糊控制器是六輪AGV小車路線偏差控制中的關(guān)鍵環(huán)節(jié),模糊控制的原理如圖1所示。
圖1 模糊控制原理
2)六輪AGV小車模糊控制
將多組傳感器安裝到六輪AGV車體上,用于檢測(cè)磁道線,根據(jù)采集的數(shù)據(jù)得到六輪AGV小車的運(yùn)行狀態(tài)。在傳感器數(shù)據(jù)的基礎(chǔ)上,模糊控制器可以計(jì)算得到運(yùn)行過程中六輪AGV小車的位置偏差量ΔD和方向偏差角β,利用模糊控制器糾正上述偏差[10,11]。
位置偏差量ΔD和方向偏差角β從理論上在區(qū)間[-∞,+∞]、[-90°,+90°]內(nèi)取值,但在實(shí)際控制過程中,檢測(cè)元件在位置偏差量ΔD過大的情況下無法獲取六輪AGV小車的運(yùn)行狀態(tài),因此將位置偏差量ΔD、方向偏差角β的取值范圍設(shè)置在區(qū)間[-240mm,+240mm],[-45°,+45°]內(nèi)。
六輪AGV小車兩側(cè)車輪轉(zhuǎn)速vr、vL,ΔD、β之間存在的關(guān)系可通過下式描述
(5)
式中,Δt代表六輪AGV小車的運(yùn)動(dòng)時(shí)間;L代表六輪AGV小車的寬度。
當(dāng)Δt的值接近于零時(shí),可將上式轉(zhuǎn)變?yōu)橄率?/p>
(6)
采用拉式變換將上式轉(zhuǎn)變?yōu)橄率?/p>
(7)
式中,s代表掃描周期內(nèi)六輪AGV小車運(yùn)行的距離。
3)模糊控制器設(shè)計(jì)
模糊化處理輸入控制器的六輪AGV小車運(yùn)動(dòng)數(shù)據(jù),將其轉(zhuǎn)變?yōu)槟:?在模糊規(guī)則的基礎(chǔ)上設(shè)置模糊推理機(jī)[12,13],在推理機(jī)中輸入小車運(yùn)動(dòng)數(shù)據(jù),獲得模糊規(guī)則與數(shù)據(jù)之間的關(guān)系,執(zhí)行元件根據(jù)上述關(guān)系獲得小車路線偏差,將其輸入模糊控制器中,輸出六輪AGV小車主動(dòng)輪的角速度差,通過調(diào)整主動(dòng)輪的角速度差,實(shí)現(xiàn)六輪AGV小車路線偏差的控制。
為了提高控制精度,采用粒子群算法優(yōu)化模糊控制器[14-,15],將ITAE準(zhǔn)則引入模糊控制器優(yōu)化目標(biāo)函數(shù)K中
(8)
式中,w1、w2、w3分別代表誤差、輸出以及ITAE準(zhǔn)則對(duì)應(yīng)的權(quán)值;e(t)表示六輪AGV小車的系統(tǒng)誤差;tu代表ITAE準(zhǔn)則;u(t)表示模糊控制器的輸出。
采用粒子群算法對(duì)上述模糊控制器優(yōu)化目標(biāo)函數(shù)求解,具體過程如下:
1)對(duì)粒子在群體中的位置和速度展開更新;
2)構(gòu)建適應(yīng)度函數(shù),計(jì)算粒子群全局極值和粒子個(gè)體極值;
3)粒子通過下式完成進(jìn)化,獲得最優(yōu)值P
(9)
式中,pi代表搜索空間中第i個(gè)粒子對(duì)應(yīng)的最優(yōu)解;a、b屬于隨機(jī)數(shù),在區(qū)間[0,1]內(nèi)取值;pg代表搜索空間中所有粒子通過尋優(yōu)獲取的全局最優(yōu)解。
設(shè)置粒子群優(yōu)化算法的迭代步長L
(10)
式中,xid代表搜索空間中第i個(gè)粒子在種群中所處的位置;g代表步長因子。
4)選取隨機(jī)數(shù)u更新粒子在尋優(yōu)過程中的位置方程,u在區(qū)間[0,1]內(nèi)取值;
5)通過下式對(duì)粒子在種群中的位置展開更新
(11)
(12)
式中,?代表慣性權(quán)重;c1、c2代表學(xué)習(xí)因子;rand代表隨機(jī)函數(shù)。
7)設(shè)置粒子群優(yōu)化算法的終止條件,滿足條件時(shí),輸出模糊控制器的優(yōu)化結(jié)果,提高六輪AGV小車路線偏差控制的精度。
為了證明所提出方法具有可應(yīng)用性能,設(shè)計(jì)以下實(shí)驗(yàn)完成相關(guān)測(cè)試。選定六輪AGV小車的行駛區(qū)域,并在小車前方安裝攝像頭,以實(shí)時(shí)獲取小車位置,并將小車實(shí)際路線在計(jì)算機(jī)界面,具體顯示,具體界面如圖2所示。
圖2 六輪AGV小車實(shí)際路線
本次實(shí)驗(yàn)測(cè)試包括兩個(gè)階段,第一階段為六輪AGV小車的直段路線測(cè)試,第二階段為六輪AGV小車的彎段路線測(cè)試。
1)直段路線測(cè)試
設(shè)定直線軌跡,將六輪AGV小車的速度設(shè)定為0.35m/s,采用提出的基于磁導(dǎo)航的六輪AGV小車路線偏差控制方法、基于Ant-agent的AGV路線控制方法和融合多目標(biāo)與能耗控制的AGV路線控制方法展開直段路線測(cè)試,三種方法的軌跡跟蹤圖如圖3所示。
圖3 三種方法的直段路線跟蹤結(jié)果
由圖3可知,所提方法的跟蹤結(jié)果與設(shè)定軌跡基本相符,其它兩種方法的跟蹤結(jié)果存在偏差,三種方法的角度偏差如圖4所示。
圖4 直段路線的角度偏差
分析圖4可知,所提方法在六輪AGV小車運(yùn)動(dòng)過程中的角度偏差控制在±2°之內(nèi),與所提方法的測(cè)試結(jié)果相比,基于Ant-agent的AGV路線控制方法和融合多目標(biāo)與能耗控制的AGV路線控制方法的角度偏差較大。
在圖2所示的測(cè)試環(huán)境中,對(duì)三種方法展開多次控制測(cè)試,測(cè)試控制六輪AGV小車從起點(diǎn)運(yùn)動(dòng)到終點(diǎn)所用的時(shí)間,結(jié)果如圖5所示。
圖5 直段路線的控制時(shí)間
根據(jù)圖5可知,所提方法的控制時(shí)間均低于10s,基于Ant-agent的AGV路線控制方法和融合多目標(biāo)與能耗控制的AGV路線控制方法的控制時(shí)間在多次測(cè)試過程中分別在30s和40s附近波動(dòng)。
2)彎段路線測(cè)試
設(shè)定彎段軌跡,將六輪AGV小車的速度設(shè)定為0.35m/s,采用上述方法展開彎段路線測(cè)試,路段跟蹤結(jié)果如圖6所示。
圖6 三種方法的彎段路線跟蹤結(jié)果
通過上述測(cè)試可知,與基于Ant-agent的AGV路線控制方法和融合多目標(biāo)與能耗控制的AGV路線控制方法相比,所提方法具有較高的跟蹤精度,三種方法的角度偏差如圖7所示。
圖7 彎段路線的角度偏差
由圖7可知,與直段路線的角度偏差相比,三種方法在彎段路線測(cè)試中的角度偏差均有所增大,但所提方法的角度偏差仍然是最小的。
在圖2所示的測(cè)試環(huán)境中,對(duì)三種方法展開多次控制測(cè)試,測(cè)試控制六輪AGV小車從起點(diǎn)運(yùn)動(dòng)到終點(diǎn)所用的時(shí)間,結(jié)果如圖8所示。
圖8 彎段路線的控制時(shí)間
根據(jù)圖8測(cè)試結(jié)果可知,三種方法的彎段路線控制時(shí)間也有所增加,但所提方法的控制時(shí)間仍控制在10s以內(nèi),其它兩種方法的控制時(shí)間增幅較大。
目前AGV小車路線控制方法存在導(dǎo)航精度低、角度偏差大和控制效率低的問題,提出基于磁導(dǎo)航的六輪AGV小車路線偏差控制方法。在磁釘校正的基礎(chǔ)上利用粒子群算法優(yōu)化模糊控制器,提高了方法的導(dǎo)航精度和控制效率,降低了角度偏差,具有良好的控制性能。