曾慶喜,歐邦俊,修巧艷,韓佳欣,任建利
(南京航空航天大學(xué)a.自動化學(xué)院;b.教師發(fā)展與教學(xué)評估中心/高等教育研究所,南京 211106)
隨著各行各業(yè)對自動化產(chǎn)品的需求的不斷提升,自動跟隨機器人逐步進(jìn)入大眾的視野,且應(yīng)用愈來愈廣泛。目前盡管已有多種多樣的定位跟隨技術(shù),但都有著明顯的缺陷。GPS易受建筑物的影響且在室內(nèi)無法使用,在近距離跟隨定位方面仍然存在定位精度差的問題[1];藍(lán)牙技術(shù)作用距離有限,通信能力差,整合到其他系統(tǒng)難度較大[2];超聲波技術(shù)會出現(xiàn)在傳輸過程中其信號不斷衰減的現(xiàn)象,將導(dǎo)致無法鎖定目標(biāo)從而產(chǎn)生偏離而失去定位[3-4],紅外技術(shù)受墻體或障礙物阻隔時信號強度低、實用性差[5];視覺圖像技術(shù)的計算量往往過于龐大且對于具有相似特征的圖像往往難以準(zhǔn)確判斷[6]。而超寬帶(Ultra Wide Band,UWB)技術(shù)占用從Hz到GHz 的較寬頻譜范圍,與上述定位跟隨技術(shù)相比有著更強的抗外界干擾能力,還保持著功耗低、成本低、精度高的優(yōu)勢,極具開發(fā)價值[7-9]。
本文設(shè)計了一種基于UWB 的無人車自動跟隨系統(tǒng)并進(jìn)行實驗研究。主要采用基于雙向飛行時間法進(jìn)行測距,使用到達(dá)時間法和位置式PID分別實現(xiàn)UWB定位和無人車的自動跟隨。
實驗選取UWB Mini 3 s Plus作為傳感器,該模塊采用STM32F103T8U6 單片機為主控芯片。外圍電路包括:DW1000 芯片、電源模塊、LED指示模塊等,既可以作為基站,也可以作為標(biāo)簽。該模塊使用雙向飛行時間原理進(jìn)行測距[10-11],用發(fā)送源與接收源在各自的時間軸上發(fā)出信號并接收對方信號所經(jīng)歷的時間來測量距離。
如圖1 所示,設(shè)發(fā)送機在自己的時間軸上發(fā)送信號的時間為t1,接收到信號的時間為;接收機在自己的時間軸上收到信號的時間為t2,回送信號的時間為;傳播速度為c,則信號在兩機之間傳播一次的時間T為
圖1 雙向飛行時間原理
則可以得到所測得距離為
關(guān)于UWB的定位方法,目前常用的有到達(dá)時間法(Time of Arrive,TOA)、到達(dá)角度法(Angle of Arrive,AOA)、到達(dá)時間差法(Time Difference of Arrival,TDOA)3 種定位方法[12-13]。AOA 算法往往需要布設(shè)多個傳感器保證精度,成本較高;TOA 與TDOA 兩種方法的原理類似,相較AOA 操作起來也更容易,考慮到算法實現(xiàn)的復(fù)雜程度問題,本文選擇TOA 作為UWB的定位方法。
在無人車上布置3 個基站,基站之間的距離已知,且在同一水平面上。如圖2 所示,基站0、基站1、基站2 的坐標(biāo)分別為(0,y0,0)、(x1,0,0)和(x2,0,0),標(biāo)簽P的坐標(biāo)為(x,y,z),投影Q為標(biāo)簽P的在基站構(gòu)成的坐標(biāo)系中的投影,θ 為投影Q與原點的連線與Y軸正方向的夾角。
圖2 基站布置圖
由于無人車跟隨對高度信息沒有具體要求,因此跟隨目標(biāo)的位置只需得知標(biāo)簽P在基站構(gòu)成坐標(biāo)系中的X和Y軸方向的坐標(biāo)即可,通過三邊定位算法[14-15]可得:
式中,d0、d1、d2分別為標(biāo)簽P到基站0、基站1 和基站2 的距離。由標(biāo)簽坐標(biāo)可以得到投影Q與原點的連線與Y軸正方向的夾角
本實驗不僅要做到無人車能夠跟隨目標(biāo),且能夠按照距離目標(biāo)的遠(yuǎn)近對車速進(jìn)行調(diào)控。因此為達(dá)到較為平穩(wěn)的控制效果,采用位置式PID控制無人車,并采用PWM波驅(qū)動電動機,如圖3 所示。
圖3 無人車跟隨原理
根據(jù)投影Q與原點的距離d以及與y軸正方向的夾角θ,之后即可確定目標(biāo)與無人車的相對位置。由θ控制無人車的轉(zhuǎn)向舵機,d與設(shè)定距離的差值作為位置PID式的輸入值,輸出的電壓控制驅(qū)動電動機實現(xiàn)特定距離的穩(wěn)定跟隨。
考慮到無人車跟隨過程中的安全問題,本文設(shè)定1.5 m為跟隨距離。本實驗的大致流程為:首先在無人車上布置3 個UWB 基站,跟隨目標(biāo)攜帶UWB 標(biāo)簽,UWB基站對UWB標(biāo)簽進(jìn)行測距,并將所得測距信息發(fā)給車端的單片機控制模塊,單片機對測距信息進(jìn)行處理后解算出標(biāo)簽的相對位置,通過相對位置可以解算出標(biāo)簽和無人車之間的距離與角度并給電動機發(fā)送相應(yīng)的控制命令,驅(qū)動無人車運動從而實現(xiàn)對目標(biāo)的跟隨,跟隨過程中使用位置式PID 對跟隨距離進(jìn)行控制,并調(diào)節(jié)不同PID 參數(shù)直至無人車能夠平穩(wěn)的跟隨目標(biāo)進(jìn)行運動。實驗總體流程如圖4 所示。
圖4 實驗總體方案
本實驗裝置主要由無人車、UWB定位基站與定位標(biāo)簽、單片機等組成,無人車實物圖如圖5 所示。
圖5 無人車實物圖
該無人車為阿克曼轉(zhuǎn)向結(jié)構(gòu),長1.4 m,寬0.8 m,采用DHLG-03X舵機來控制轉(zhuǎn)向。舵機是由直流電動機、減速齒輪組和控制電路等組成的一套自動控制系統(tǒng),通過發(fā)送信號,指定輸出軸旋轉(zhuǎn)角度[16]。舵機的轉(zhuǎn)動范圍為0~360°,驅(qū)動電源為48 V,最大扭矩為98 N·m,與其配套的控制器由3.3~5 V的電源供電,可接收頻率為50 Hz,脈寬為0.5~2.5 ms的PWM波來實現(xiàn)0~360°的轉(zhuǎn)向。
舵機與轉(zhuǎn)向輪相結(jié)合后測試得:當(dāng)脈寬為1.82 ms時,轉(zhuǎn)向輪回正;當(dāng)脈寬為1.94 ms時,轉(zhuǎn)向輪順時針轉(zhuǎn)至最大值約為30°;當(dāng)脈寬為1.70 ms 時,轉(zhuǎn)向輪逆時針轉(zhuǎn)至最大值約為30°。
無人車所使用的驅(qū)動電動機為阿克曼轉(zhuǎn)向機構(gòu)車輛自帶的電動機,經(jīng)研究發(fā)現(xiàn)該電動機為直流電壓驅(qū)動,驅(qū)動電動機的控制器可接收0~4.25 V 左右的電壓,并依據(jù)電壓的大小對車輪調(diào)速;當(dāng)接收電壓為0 V時,車輪不轉(zhuǎn)動且具有自剎車功能,因此可通過調(diào)節(jié)驅(qū)動電機接收電壓大小完成無人車的加速、減速與自剎車功能。設(shè)計一個RC 濾波電路并與PWM 波組合實現(xiàn)DAC功能完成模擬電壓的輸出,增強單片機IO 口的驅(qū)動能力,所設(shè)計的二階無源濾波電路如圖6 所示。
圖6 濾波電路圖
濾波電路圖中加入了運算放大器,其并不起放大作用僅起到跟隨作用,同時也起到了輸入電阻無窮大,輸出電阻為0 的功效可以避免負(fù)載對濾波電路的影響。
實驗場地設(shè)定在室外區(qū)域,為了使無人車能夠保持1.5 m的距離平穩(wěn)的跟隨目標(biāo),將實際測定距離與跟隨距離的差值作為位置PID 的輸入信號,實地測試如圖7 所示。
圖7 實地測試圖
將UWB測得的無人車和跟隨目標(biāo)間的距離作為評判標(biāo)準(zhǔn),選取不同的PID參數(shù)進(jìn)行實驗測試,實驗結(jié)果如圖8 所示。
圖8 調(diào)節(jié)PID參數(shù)時無人車跟隨距離圖
經(jīng)實驗當(dāng)比例系數(shù)kp取1.2,積分系數(shù)ki取0.03,微分系數(shù)kd取0.015 時,無人車可以在跟隨距離1.5 m所屬的較小范圍內(nèi)實現(xiàn)比較平穩(wěn)的跟隨。
跟隨過程可分為直線部分與曲線部分,選取兩組不同類型的跟隨路線進(jìn)行測試,即對直線與帶有轉(zhuǎn)向的路線。載波相位差分(Real-Time Kinematic,RTK)技術(shù)能夠達(dá)到cm級的定位精度,因此使用RTK 作為無人車真實軌跡。使用兩臺同采樣頻率的RTK設(shè)備,其中一臺由無人車攜帶,另一臺由目標(biāo)攜帶。目標(biāo)沿固定路線行走,無人車通過UWB 跟隨目標(biāo),實驗結(jié)果如圖9 所示。
圖9 跟隨過程實驗圖
圖9(a)所示為直線跟隨效果圖,兩次路線圖基本重合,表明直線情況下跟隨效果良好;圖9(b)所示為帶有轉(zhuǎn)彎情況下的跟隨效果圖,圖中兩曲線形狀大致相同然而部分彎道處存在曲線不重合的問題,表明無人車在拐彎情況下的跟隨效果不夠理想,但未出現(xiàn)較大的跟丟或者偏離較大的情況,因此基本上完成了自動跟隨的任務(wù)。
本文對基于UWB的無人車自動跟隨進(jìn)行實驗研究,采用基于雙向飛行時間的測距方法,并用UWB 實現(xiàn)定位和位置式PID進(jìn)行無人車的控制方法進(jìn)行了跟隨實驗。實驗表明無人車可以較好地實現(xiàn)固定距離的跟隨,在工業(yè)自動化以及日常生活中對于解放雙手、減輕人們的負(fù)擔(dān)方面具有重要的意義。