文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.182329
中文引用格式: 牛秦玉,,李珍惜,田海波. 基于RFID技術(shù)的叉車式AGV動作指令算法研究[J].電子技術(shù)應(yīng)用,,2018,,44(12):115-118,122.
英文引用格式: Niu Qinyu,,Li Zhenxi,,Tian Haibo. Research on forklift type AGV action command algorithm based on RFID[J]. Application of Electronic Technique,2018,,44(12):115-118,,122.
0 引言
對于物件搬運AGV(自動導(dǎo)引車),,導(dǎo)引和定位是其關(guān)鍵研究部分,。常用的導(dǎo)引方式有磁導(dǎo)引[1]、視覺導(dǎo)引[2],、激光導(dǎo)引[3]等,,定位方式有二維碼定位[4]、RFID射頻識別定位[5],、超聲波定位等,,其中磁導(dǎo)引磁條鋪設(shè)方便、路徑變更容易,,射頻識別不易污染,、對聲光無干擾,因此集成RFID技術(shù)的磁導(dǎo)引AGV在自動化生產(chǎn)運輸中的應(yīng)用廣泛,。
針對磁導(dǎo)引中的RFID技術(shù),,已有諸多學(xué)者進(jìn)行研究。顧佳煒等人[6]通過在電子標(biāo)簽中寫入標(biāo)簽編號和運動控制參數(shù)實現(xiàn)AGV導(dǎo)航,。李季[7]采用RFID輔助定位并借助橫向磁條的方式完成車輛轉(zhuǎn)彎,、停車等動作。羅雨佳[8]將AGV轉(zhuǎn)彎動作模式固定,,利用標(biāo)簽信息實現(xiàn)轉(zhuǎn)彎90°和180°,。
上述文獻(xiàn)大多是把動作指令寫在電子標(biāo)簽內(nèi),,由于保存的指令信息單一,標(biāo)簽利用率低,,當(dāng)實際路徑復(fù)雜時需布置更多標(biāo)簽,,不利于路徑規(guī)劃和導(dǎo)引。本文在前人研究基礎(chǔ)上,,以解決復(fù)雜路徑下AGV的導(dǎo)引問題為目標(biāo),,提出一種車輛動作指令算法,根據(jù)調(diào)度任務(wù)生成動作指令并保存在車載控制系統(tǒng),,標(biāo)簽僅作為位置識別以提高車輛行駛靈活性,。
1 行駛地圖建模
1.1 地圖組成
地圖由導(dǎo)引磁條、工位組成,,如圖1所示,,二者分別用線條和矩形表示。g表示工位,,數(shù)量為h,,按式(1)對其編號(圖中小矩形右側(cè)數(shù)字),則工位集合可以表示為G={g1,,g2,,g3,…,,gh},。l表示線路,數(shù)量為n,,規(guī)定橫向,、縱向線路編號分別用偶數(shù)、奇數(shù)表示并按式(2)對其編號(圖中圓圈內(nèi)的數(shù)字),,線路集合為L={l1,,l2,…,,ln},。
基于本文的應(yīng)用場景規(guī)定AGV除了進(jìn)入工位時貨叉朝前向前行駛外,其余情況下均后退行駛,,在線路交叉處,、進(jìn)工位時減速行駛。
1.2 電子標(biāo)簽布置方式
1.2.1 工位相關(guān)標(biāo)簽布置
圖2中pi1,,pi2,,…,pi7表示電子標(biāo)簽位置,。圖2(a)為AGV直行從左側(cè)進(jìn)入工位gi,,規(guī)定依次在pi3,、pi5、pi4,、pi7處分別減速,、由后退行駛變?yōu)榍斑M(jìn)、前進(jìn)右轉(zhuǎn),、停車,。圖2(b)為AGV后退左轉(zhuǎn)出工位,依次在pi7,、pi6,、pi1處分別后退直行、后退左轉(zhuǎn),、加速,。AGV從工位右側(cè)進(jìn)、出和其從左側(cè)進(jìn),、出相似,。定義pik是和工位gi相關(guān)的第k個標(biāo)簽(k∈{1,2,,…,,7}),按圖2布置,,其組成用矩陣S1表示為:
1.2.2 線路標(biāo)簽布置
在每條線路兩端各放置兩個電子標(biāo)簽。Sja表示線路lj上的第a個標(biāo)簽,,a={1,,2,3,,4},。規(guī)定Sj1、Sj2,、Sj3,、Sj4在lj上依次沿坐標(biāo)軸正方向布置,Sj1和Sj4之間的線段為線路lj的范圍,。車輛在Sj1,、Sj4處執(zhí)行轉(zhuǎn)彎指令以進(jìn)入其他線路,在Sj2,、Sj3處執(zhí)行加速或減速指令使其進(jìn)入lj時加速,,離開lj時減速。所有線路上的標(biāo)簽用式(4)所示矩陣S2表示,,最終地圖中所有標(biāo)簽的布置情況如圖3所示,。
2 動作指令算法
首先對標(biāo)簽編碼,,然后根據(jù)調(diào)度路徑確定經(jīng)過每個標(biāo)簽的順序,最后根據(jù)標(biāo)簽排序生成動作指令,。
2.1 電子標(biāo)簽編碼
電子標(biāo)簽編碼格式如圖4所示,,其中x、y表示標(biāo)簽在地圖中的坐標(biāo),,‘pro’表示屬性,,即車輛在標(biāo)簽處可執(zhí)行的動作指令種類,‘line’表示所在線路,,‘sit’表示相關(guān)工位號,。根據(jù)AGV在線路上的行駛方式規(guī)定Sj1、Sj4的‘pro’位為‘01’,,表示轉(zhuǎn)彎,,Sj2、Sj3的‘pro’位為‘02’表示加減速,。Sja的‘line’位為其所在線路編號j,,‘sit’位用零表示。標(biāo)簽pik的‘pro’位根據(jù)AGV進(jìn)出工位方式將其用表1表示,,‘line’位為pi1所在的線路編號,,‘sit’位為和其相關(guān)的工位編號i。
2.2 路徑建立與選擇
其中,,w表示路徑,,數(shù)量為m(m≥m0),則所有路徑組成的矩陣可表示為W=[w1,,w2,,…,wm]T,。ltx表示路徑wt的第x條線路,,其中wt={lt1,lt2,,…,,ltx,…},,t∈{1,,2,…,,m},,ltx∈L,設(shè)第t條路徑所包含的線路數(shù)量最大且為n1,則W為m×n1階矩陣,。對于線路數(shù)目不足n1的,,不足部分用0表示,路徑矩陣用式(6)表示:
2.3 調(diào)度路徑標(biāo)簽排序方式
對任意兩條相連接線路上標(biāo)簽,,第一條和第二條分別用lu,、lv表示。lu上的標(biāo)簽為Su1,、Su2,、Su3、Su4,,lv上的標(biāo)簽為Sv1,、Sv2、Sv3,、Sv4,。r0表示從lu到lv經(jīng)過的標(biāo)簽順序。設(shè)Su1坐標(biāo)為(x1,,y1),,Sv1坐標(biāo)為(x2,y2),,經(jīng)過二者坐標(biāo)比較可推斷出lu和lv的相對位置關(guān)系:
第一種情況:x1>x2,,y1>y2,如圖5(a),、圖5(b)所示,,r0={Su4,Su3,,Su2,,Su1,Sv4,,Sv3,Sv2,,Sv1},。
第二種情況:x1>x2,y1<y2,,如果lu為奇數(shù),,r0={Su1,Su2,,Su3,,Su4,Sv4,Sv3,,Sv2,,Sv1},對應(yīng)圖5(c);否則r0={Su4,,Su3,,Su2,Su1,,Sv1,,Sv2,Sv3,,Sv4},,對應(yīng)圖5(d)。同理可推斷出其余幾種情況下的r0元素排列情況,。
對于路徑wβ,,首先根據(jù)式(4)選出每段線路上的標(biāo)簽,然后按照車輛在該路徑上經(jīng)過每個標(biāo)簽的順序排列,,步驟如下:
(1)將lβ1,、lβ2分別視為第一條、第二條線路,,根據(jù)坐標(biāo)關(guān)系判斷出兩者位置關(guān)系,。按照兩條線路標(biāo)簽排序規(guī)則進(jìn)行排序,并將排序結(jié)果放在數(shù)組r1中,;
(2)將lβ2,、lβ3分別視為第一條、第二條線路進(jìn)行排序,,將lβ3標(biāo)簽的排序結(jié)果添加在數(shù)組r1中,;
(3)依次對線路lβ3、lβ4,,lβ4,、lβ5,…,,按照類似步驟(2)的方式排列標(biāo)簽,。
根據(jù)AGV進(jìn)出工位的方式刪除r1中未在lj1和lj2上經(jīng)過的標(biāo)簽,此時r1中元素個數(shù)用b1表示,。
2.4 動作指令
動作指令格式如圖6所示,,前5位為電子標(biāo)簽編碼,‘ins’位為AGV在前5位對應(yīng)的標(biāo)簽處執(zhí)行的動作指令,按其功能不同進(jìn)行編碼,,如表2所示,。AGV從起始工位gs到目標(biāo)工位ge過程中,按照出工位、路徑上行駛,、進(jìn)工位的順序行駛,,RFID閱讀器持續(xù)讀取地面標(biāo)簽信息并將其傳遞給車載控制系統(tǒng),通過依次按條件執(zhí)行指令完成調(diào)度任務(wù),,條件為當(dāng)前讀取的標(biāo)簽信息和要執(zhí)行指令的標(biāo)簽編碼位一致,。
2.4.1 出工位動作指令
R1表示出工位動作指令集合。如果AGV從左側(cè)出工位,,則在S1第S行‘pro’位為‘09’,、‘08’、‘03’的標(biāo)簽編碼后分別添加‘00’,、‘01’和‘05’,,否則在S1第S行‘pro’位為‘09’、‘08’,、‘07’的標(biāo)簽編碼后分別添加‘00’,、‘02’和‘05’,并依次作為R1中第1,、2,、3條動作指令。
2.4.2 路徑動作指令
分別對r1中b1個標(biāo)簽按‘pro’位確定動作指令,。R2表示路徑動作指令集合,,圖7為其判斷流程。
2.4.3 進(jìn)工位動作指令
R3表示出工位動作指令集合,。AGV從左側(cè)進(jìn)工位,,在S1第e行‘pro’位為‘05’、‘07’,、‘06’,、‘09’的標(biāo)簽編碼后分別添加‘06’、‘07’,、‘04’,、‘08’;否則在該行‘pro’位為‘05’,、‘03’,、‘04’、‘09’的標(biāo)簽編碼后分別添加‘06’,、 07’、‘03’,、‘08’,,并依次作為R3中第1、2、3,、4條指令,。
每次執(zhí)行任務(wù)的完整指令集合用R表示,則:
3 試驗結(jié)果及分析
在圖7中選擇工位12,、13,、17、18進(jìn)行試驗,。標(biāo)簽編碼如圖8所示,,前兩位為x坐標(biāo),第3~4位為y坐標(biāo),,第5~6位表示屬性,,第7~8位為其所在線路編號,最后兩位為和其相關(guān)工位編號,。
在VC++6.0中編寫車輛動作指令程序,,選取基于ARM架構(gòu)并集成了RC522射頻識別模塊的模型車作為試驗對象。圖9為鋪設(shè)導(dǎo)引線和放置標(biāo)簽后的實際車輛運行圖,。試驗表明,,車輛能夠按照預(yù)期的目的完成調(diào)度任務(wù)。圖10為將動作指令寫入標(biāo)簽內(nèi)的導(dǎo)引方式,,AGV通過執(zhí)行標(biāo)簽內(nèi)指令完成加減速等動作,。因地面標(biāo)簽布置結(jié)束后其內(nèi)部指令信息已確定,所以車輛經(jīng)過每個標(biāo)簽時僅能完成某個固定動作,,導(dǎo)引方式相對單一,靈活性差,。
選取不同的起始工位和目標(biāo)工位進(jìn)行組合,代表不同調(diào)度任務(wù),,在C++6.0中其每次運算結(jié)果如圖11所示,,每條動作指令前10位為電子標(biāo)簽編碼,最后兩位為AGV在該標(biāo)簽執(zhí)行的動作,。
由圖11(a),、11(b)可知任務(wù)1、2的行駛路線分別為20→22→24,,20→22→21→18,,AGV均經(jīng)過了標(biāo)簽4610012200,任務(wù)1中沒有該標(biāo)簽對應(yīng)的指令,,AGV在此處不執(zhí)行任何指令,,從線路22保持直行狀態(tài)進(jìn)入線路24;任務(wù)2中在該標(biāo)簽對應(yīng)的指令為461001220002,,最后兩位‘02’表示AGV在此處后退右轉(zhuǎn),,由線路22進(jìn)入線路21,。對比可得: AGV僅在滿足動作指令執(zhí)行條件的標(biāo)簽處執(zhí)行該指令。
由圖11(c),、11(d)可知任務(wù)3,、4的行駛路線分別為24→21→16→14,24→21→18,,AGV均經(jīng)過了標(biāo)簽4722012100,,任務(wù)3中AGV在該標(biāo)簽對應(yīng)的指令為472201210002,最后兩位‘02’表示AGV在此處后退右轉(zhuǎn),,由線路21進(jìn)入線路16,;任務(wù)4中在該標(biāo)簽對應(yīng)的指令為472201210001,最后兩位‘01’表示AGV在此處后退左轉(zhuǎn),,由線路21進(jìn)入線路18,。對比可得:AGV完成不同任務(wù)時在同一個標(biāo)簽處能夠執(zhí)行不同的指令,增加了行駛靈活性,。
4 總結(jié)
本文采取了電子標(biāo)簽作為位置識別,,且動作指令根據(jù)具體任務(wù)由算法生成并存儲在車載控制系統(tǒng)的方式,使得車輛在執(zhí)行不同任務(wù)過程中經(jīng)過同一電子標(biāo)簽時可執(zhí)行不同的動作指令,,彌補(bǔ)了傳統(tǒng)導(dǎo)航方式中行駛路線固定,、在標(biāo)簽處執(zhí)行指令單一的不足。該方法解決了復(fù)雜路徑下車輛的導(dǎo)引問題,,提高了行駛靈活性和標(biāo)簽利用率,,具有一定的應(yīng)用價值。
參考文獻(xiàn)
[1] 王惠嬌.AGV磁導(dǎo)航數(shù)據(jù)的高速獲取和偏差處理[J].工業(yè)控制計算機(jī),,2017,,30(9):91-92.
[2] 李照,舒志兵,,嚴(yán)亮.基于模糊路徑糾偏的AGV視覺精定位研究[J].電子技術(shù)應(yīng)用,,2018,44(4):81-85.
[3] 唐瑞,,顏文俊.激光導(dǎo)引AGV的轉(zhuǎn)彎算法研究[J].機(jī)電工程,,2015,32(10):1390-1394.
[4] 楊友良,,胡少輝,,趙麗宏,等.基于二維碼定位導(dǎo)航的兩輪差速轉(zhuǎn)向AGV設(shè)計[J].物流科技,,2017,,40(10):40-42.
[5] 張力,徐曄曄,,夏超.基于RFID定位的AGV導(dǎo)航系統(tǒng)設(shè)計[J].電子世界,,2017(5):67-69.
[6] 顧佳煒,,樓佩煌.基于無線射頻識別技術(shù)的自動導(dǎo)引車導(dǎo)航方法的研究[J].電工電氣,2009(12):22-24.
[7] 李季.磁導(dǎo)引AGV的設(shè)計[D].濟(jì)南:山東大學(xué),,2013.
[8] 羅雨佳.夾抱搬運型AGV的設(shè)計與可靠性分析[D].成都:電子科技大學(xué),2017.
作者信息:
牛秦玉,,李珍惜,,田海波
(西安科技大學(xué) 機(jī)械工程學(xué)院,陜西 西安710000)