徐文麗,劉 丹,黨 興,劉偉靜,李 鵬
(天津航天機(jī)電設(shè)備研究所,天津 300458)
隨著工業(yè)機(jī)器人技術(shù)的高速發(fā)展與制造加工業(yè)的迫切需求,工業(yè)移動(dòng)機(jī)器人技術(shù)越來越受到社會(huì)的關(guān)注。由傳感器、遙控操作器和自動(dòng)控制移動(dòng)載體組成的機(jī)器人系統(tǒng),得到了迅速的發(fā)展[1-3]。全向移動(dòng)平臺能夠原地橫移、原地零半徑回轉(zhuǎn),非常適用于工作環(huán)境狹窄、對準(zhǔn)確定位和位置調(diào)整能力要求較高的場合。由于這些場合通常不適合人為操作,因此,迫切需要研制一種擁有自動(dòng)導(dǎo)引和軌跡跟蹤功能的全向移動(dòng)平臺[4-5]。基于嵌入式系統(tǒng)設(shè)計(jì)的移動(dòng)平臺,以其強(qiáng)大而靈活的可應(yīng)用性、高度的可靠性以及低成本等優(yōu)點(diǎn),得到了廣泛應(yīng)用[6]。本文以麥克納姆輪式全向移動(dòng)機(jī)器人為研究對象。其控制系統(tǒng)使用進(jìn)階精簡指令集處理器(advanced RISC machine,ARM)作為主控制器。該系統(tǒng)利用視覺傳感器,對前方道路環(huán)境進(jìn)行圖像捕捉,通過計(jì)算提取圖像中的道路邊緣信息提供給道路識別程序,判斷自身位置和外部環(huán)境,并根據(jù)識別結(jié)果制定系統(tǒng)的行進(jìn)規(guī)劃,實(shí)現(xiàn)自主、智能導(dǎo)航[7-9]。
全向移動(dòng)平臺循跡系統(tǒng)主要由ARM控制器、視覺傳感器、避障傳感器、驅(qū)動(dòng)器、電機(jī)、無線遙控器、無線接收模塊、供電單元以及軌跡等組成,其系統(tǒng)結(jié)構(gòu)如圖1所示。首先,通過無線遙控器向全向移動(dòng)平臺發(fā)送循跡命令;然后,ARM控制系統(tǒng)進(jìn)行相關(guān)信息的初始化,完成循跡控制的準(zhǔn)備工作。視覺傳感器將實(shí)時(shí)采集的路徑信息輸入ARM控制系統(tǒng)。系統(tǒng)根據(jù)循跡控制算法處理結(jié)果得出電機(jī)的轉(zhuǎn)向與速度,進(jìn)而實(shí)時(shí)控制全向移動(dòng)平臺的運(yùn)行[10]。在運(yùn)行過程中,若遇到障礙,移動(dòng)平臺依據(jù)避障傳感器檢測到的障礙物距離信息作出相應(yīng)處理。

圖1 循跡系統(tǒng)結(jié)構(gòu)圖Fig.1 Structure of tracking system
控制系統(tǒng)性能的優(yōu)劣,直接決定了整個(gè)移動(dòng)平臺控制系統(tǒng)性能的好壞以及控制系統(tǒng)性能的穩(wěn)定性。主控制器作為循跡系統(tǒng)的核心部分,負(fù)責(zé)完成視覺傳感器輸出信號的采集、路徑信息與當(dāng)前環(huán)境的判斷、移動(dòng)平臺運(yùn)行速度與方向的控制等功能[11]。本設(shè)計(jì)選用ARM系列芯片LM3S9B96作為系統(tǒng)的控制核心,其集成了脈沖寬度調(diào)制(pulse width modulation,PWM)、通用輸入/輸出(general-purpose input/output,GPIO)端口、控制器局域網(wǎng)總線(controller area network,CAN)、模擬數(shù)字轉(zhuǎn)換器(analog-to-digital converter,ADC)、通用異步收發(fā)傳輸器(universal asynchronous receiver/transmitter,UART)等模塊,具有豐富的I/O接口及寄存器等資源,可進(jìn)行二次開發(fā),使用方便[6]。
該系統(tǒng)通過無線遙控器向全向移動(dòng)平臺發(fā)送循跡控制命令。無線遙控模塊采用CC430F6137控制器,其內(nèi)部集成了CC1101射頻收發(fā)模塊,采用通用的ISM頻段(433 MHz)實(shí)現(xiàn)數(shù)據(jù)的無線傳輸[12]。
該系統(tǒng)采用自主研發(fā)的視覺傳感器作為路徑信息采集傳感器。該傳感器輸出采用RS-485接口,采用“一問一答”的通信方式,可識別二維碼與色帶,并通過對接口發(fā)送選擇命令識別色帶的顏色。該系統(tǒng)軌跡可選用綠色、紅色、藍(lán)色3種顏色的色帶,并將其粘貼在地面上。通過定時(shí)發(fā)送詢問命令,視覺傳感器輸出接口將輸出移動(dòng)平臺相對于色帶的橫向與縱向位置,以及角度的偏差值。
傳動(dòng)模塊包括電機(jī)驅(qū)動(dòng)器和電機(jī)。電機(jī)驅(qū)動(dòng)模塊在單片機(jī)控制系統(tǒng)中是必不可少的,它和電機(jī)共同組成移動(dòng)平臺的運(yùn)動(dòng)控制系統(tǒng)[13]。該系統(tǒng)的驅(qū)動(dòng)電機(jī)選用雷賽ACM低壓交流伺服電機(jī),適配ACS系列交流伺服驅(qū)動(dòng)器。
避障模塊采用“西克”公司的激光掃描器TIM310。其可掃描270°的范圍,最多可設(shè)置16個(gè)保護(hù)區(qū)域,掃描距離可達(dá)到4 m。設(shè)置掃描器的正常、報(bào)警、急停3個(gè)區(qū)域,并通過3個(gè)開關(guān)量輸出來實(shí)現(xiàn),使得全向移動(dòng)平臺在不同情況下對檢測到的障礙物進(jìn)行不同的反應(yīng)。
電源模塊采用靈活、方便的單電源供電模式為所有模塊供電??刂颇K采用5~30 V寬電壓供電。電機(jī)采用60 V磷酸鐵鋰電池供電。各模塊采用36~72 V轉(zhuǎn)24 V DC/DC穩(wěn)壓電源模塊供電。
軟件系統(tǒng)主要實(shí)現(xiàn)決策與導(dǎo)向的功能。該系統(tǒng)軟件采用C語言編寫,以Keil uVision4軟件作為開發(fā)環(huán)境。根據(jù)系統(tǒng)硬件設(shè)計(jì),軟件系統(tǒng)使用模塊化的軟件,可以大致分為主程序、循跡模塊程序、電機(jī)的PWM轉(zhuǎn)速與方向控制模塊以及安全防護(hù)模塊。軟件控制系統(tǒng)主程序流程如圖2所示。

圖2 軟件控制系統(tǒng)主程序流程圖Fig.2 Flowchart of main program of software control system
當(dāng)操作人員通過無線遙控器發(fā)送循跡指令時(shí),全向移動(dòng)平臺控制系統(tǒng)進(jìn)入循跡模式,主程序?qū)σ曈X傳感器、GPIO與PWM口、定時(shí)器以及中斷程序等進(jìn)行初始化。在運(yùn)行過程中,程序?qū)⒉粩嗟貟呙枰曈X傳感器輸出信號與激光掃描器連接的I/O口,對路徑信息進(jìn)行判斷,并進(jìn)入相應(yīng)的處理程序。
循跡控制算法以視覺傳感器輸出的橫向與縱向位置、角度的偏差作為輸入,計(jì)算出移動(dòng)平臺的預(yù)定行車速度,并完成轉(zhuǎn)向和速度控制。
全向移動(dòng)平臺循跡控制算法流程如圖3所示。

圖3 循跡控制算法流程圖Fig.3 Flowchart of tracking control algorithm
程序初始后啟動(dòng)定時(shí)器,定時(shí)向視覺傳感器發(fā)送命令,以詢問當(dāng)前的位置信息。當(dāng)視覺傳感器檢測到色帶時(shí),程序?qū)①x予移動(dòng)平臺前進(jìn)速度初值VY0,控制其開始向前移動(dòng)。若傳感器輸出的橫向距離偏差為負(fù)值,則色帶位于移動(dòng)平臺中心線右側(cè),需控制移動(dòng)平臺向右移動(dòng),即控制量VX為正值;反之,若傳感器輸出為正值,控制量VX為負(fù)值。傳感器檢測的角度偏差以傳感器Y軸方向?yàn)榱泓c(diǎn),逆時(shí)針方向角度增大。當(dāng)輸出角度偏差在0~90°時(shí),移動(dòng)平臺相對色帶右旋轉(zhuǎn)了一定角度,需控制移動(dòng)平臺向左旋轉(zhuǎn),即控制量W為負(fù)值;反之,若輸出角度偏差在270°~360°時(shí),需增加的控制量W為正值。
為使全向移動(dòng)平臺能夠沿色帶線快速而穩(wěn)定地運(yùn)行,除了合理地控制方向外,還要結(jié)合路徑的各種情況調(diào)整移動(dòng)平臺的前進(jìn)速度,使得移動(dòng)平臺在直道上能以較快速度行駛,在彎道上又不會(huì)因?yàn)樗俣冗^快而偏離色帶。因此,必須根據(jù)實(shí)時(shí)路徑彎曲程度,即偏角的大小,正確地調(diào)整移動(dòng)平臺的當(dāng)前前進(jìn)速度。該系統(tǒng)采用前進(jìn)速度與偏角成反比例的關(guān)系,實(shí)時(shí)調(diào)整前進(jìn)速度,實(shí)現(xiàn)入彎減速、出彎加速的控制方式。
當(dāng)視覺傳感器檢測到二維碼時(shí),可識別距離與角度偏差值以及二維碼編號。視覺傳感器依據(jù)偏差值進(jìn)行糾偏,依據(jù)二維碼編號來執(zhí)行相應(yīng)的動(dòng)作或命令。
該控制系統(tǒng)通過輸出不同頻率的PWM波與I/O電平,實(shí)現(xiàn)對電機(jī)的有效控制。頻率越大,電機(jī)轉(zhuǎn)速越快。電機(jī)額定轉(zhuǎn)速為3 000 r/min,采用0~500 kHz頻率PWM波,正比例控制電機(jī)轉(zhuǎn)速。
以循跡算法的輸出參數(shù)VX、VY、ω為輸入,根據(jù)全向移動(dòng)的數(shù)學(xué)模型計(jì)算公式,實(shí)時(shí)計(jì)算全向移動(dòng)平臺4個(gè)輪子的當(dāng)前速度與方向。數(shù)學(xué)模型公式如下[14]:
(1)
式中:V1、V2、V3、V4分別為4個(gè)輪子速度矢量;VX、VY、ω分別為全向移動(dòng)平臺在平面X、Y方向上的平移速度和繞Z軸的轉(zhuǎn)動(dòng)速度;W為移動(dòng)平臺輪距;L為移動(dòng)平臺軸距。本文設(shè)計(jì)的移動(dòng)平臺中:R=215 mm,W=804 mm,L=1 022 mm,電機(jī)0、3與電機(jī)1、2采用對稱裝配,V1、V3方向與電機(jī)轉(zhuǎn)動(dòng)方向一致,則V2、V4方向與電機(jī)轉(zhuǎn)動(dòng)方向相反。當(dāng)速度V>0時(shí),輪子正轉(zhuǎn);反之,則為反轉(zhuǎn)。
激光掃描器TIM310將距離信息轉(zhuǎn)換成開關(guān)量信息輸入到GPIO接口。應(yīng)用程序通過讀取開關(guān)量信號的數(shù)值,即可判斷前后方有無障礙物以及障礙物的距離信息。當(dāng)檢測到障礙物距離小于50 cm時(shí),移動(dòng)平臺減速;距離小于20 cm時(shí),移動(dòng)平臺將停止運(yùn)行。
當(dāng)全向移動(dòng)平臺未檢測到色帶與二維碼時(shí),進(jìn)行丟道處理,移動(dòng)平臺將停止運(yùn)行。此時(shí),可以通過無線遙控器來控制全向移動(dòng)平臺。若重新檢測到色帶(即回到軌道),可恢復(fù)正常循跡狀態(tài)。
試驗(yàn)場地選擇廠房內(nèi)干凈、平整的淺灰色地面,循跡軌道為1 cm寬的綠色與紅色膠帶。軌道分為圓弧形、矩形和S型。環(huán)境光線為一般強(qiáng)度的漫射自然光。視覺傳感器置于全向移動(dòng)平臺的底端,激光掃描器置于全向移動(dòng)平臺上端中央(相對于軌道中間)。
視覺傳感器識別的色帶顏色初始值設(shè)為“紅色”。在循跡過程中,此識別顏色可依據(jù)命令隨時(shí)更改,并經(jīng)反復(fù)調(diào)整視覺傳感器離地面的距離實(shí)現(xiàn)精準(zhǔn)檢測。通過無線遙控器向全向移動(dòng)平臺下達(dá)“前進(jìn)”“后退”“左移”“右移”“轉(zhuǎn)向”等命令,使全向移動(dòng)平臺處于紅色色帶軌道上。此時(shí),發(fā)送“循跡”命令,全向移動(dòng)平臺可自主循跡。在循跡過程中,全向移動(dòng)平臺可實(shí)時(shí)檢測周圍障礙物的情況。若檢測到全向移動(dòng)平臺與障礙物的距離小于20 cm,即刻停止運(yùn)行,以實(shí)現(xiàn)安全防護(hù)。
多次調(diào)整全向移動(dòng)平臺的前進(jìn)速度并進(jìn)行循跡試驗(yàn)測試。結(jié)果表明,影響全向移動(dòng)平臺循跡效果的關(guān)鍵因素有兩個(gè):一是視覺傳感器離地面的距離,二是全向移動(dòng)平臺行駛的速度。前者決定了視覺傳感器檢測軌跡的準(zhǔn)確性和靈敏度,后者與全向移動(dòng)平臺循跡的準(zhǔn)確性和成功率有關(guān)。該循跡系統(tǒng)入彎減速出彎加速的循跡方式,提高了轉(zhuǎn)向的靈敏度,同時(shí)有效控制了行駛速度,使全向移動(dòng)平臺在循跡過程中左右搖擺幅度較小、緊貼軌道行駛。該循跡系統(tǒng)經(jīng)過多次試驗(yàn)測試,循跡效果皆較為理想。
本文設(shè)計(jì)的基于ARM控制器的全向移動(dòng)平臺智能循跡系統(tǒng),具有一定的道路辨認(rèn)適應(yīng)能力和環(huán)境變化適應(yīng)能力。其可在狹小空間內(nèi)實(shí)現(xiàn)自主巡線、自動(dòng)調(diào)速、安全防護(hù),并能夠以較快的速度完成循跡運(yùn)動(dòng)。
該系統(tǒng)運(yùn)行穩(wěn)定、可靠,能滿足系統(tǒng)的實(shí)時(shí)性要求,達(dá)到了預(yù)期的目標(biāo)和要求,可以應(yīng)用到裝配生產(chǎn)、倉儲物流等領(lǐng)域,具有一定的實(shí)用性。
參考文獻(xiàn):
[1] 黎紅.自主移動(dòng)機(jī)器人路徑規(guī)劃中的主要方法[J].中國電力教育,2010(S1):814-816.
[2] 李波,楊衛(wèi),張文棟,等.一種智能小車自主尋/循跡系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測量與控制,2012,20(10):2798-2801.
[3] 侯華,馮波,宋彬.自適應(yīng)智能光電循跡系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].自動(dòng)化儀表,2014,35(3):77-81.
[4] 李磊,葉濤,譚民,等.移動(dòng)機(jī)器人技術(shù)研究現(xiàn)狀與未來[J].機(jī)器人,2003,24(5):475-480.
[5] 徐國華,譚民.移動(dòng)機(jī)器人的發(fā)展現(xiàn)狀及其趨勢[J].機(jī)器人技術(shù)與應(yīng)用,2001(3):1-3.
[6] 孫雪飛,胡巍.例說TI ARM Cortex-M3—基于LM3S9B96[M].北京:北京航空航天大學(xué)出版社,2013.
[7] KAHRAMAN A F,GOSAVI A,OTY K J.Stochastic modeling of an automated guided vehicle system with one vehicle and a closed-loop path [J].IEEE Transactions on Automation Science and Engineering,2008,5(3):504-518.
[8] 陳超,葉慶泰.基于圖像引導(dǎo)的自動(dòng)導(dǎo)引小車系統(tǒng)設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與研究,2004,20(1):65-67.
[9] OLMI R,SECCHI C,FANTUZZI C.Coordination of multiple AGVs in an industrial application[C]//IEEE International Conference on Robotics and Automation.IEEE,2008:1916-1921.
[10]庹朝永.基于單片機(jī)的直流電機(jī)PWM調(diào)速系統(tǒng)設(shè)計(jì)與開發(fā)[J].煤炭技術(shù),2011,30(6):62-63.
[11]宋永獻(xiàn),馬娟麗,賀乃寶,等.基于TMS320F2812 的智能循跡小車控制系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測量與控制,2011,19(9):2128-2130.
[12]林凡強(qiáng),馬曉茗,謝興紅.CC430無線傳感網(wǎng)絡(luò)平臺基礎(chǔ)與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2012.
[13]陳秀霞,盧剛,李聲晉,等.輪式機(jī)器人用無刷直流電機(jī)控制系統(tǒng)設(shè)計(jì)[J].測控技術(shù),2010,29(5):55-59.
[14]李洪振,侍才洪,康少華,等.全向移動(dòng)機(jī)器人行走機(jī)構(gòu)控制系統(tǒng)的設(shè)計(jì)與優(yōu)化[J].制造業(yè)自動(dòng)化,2013,35(9):34-37.