• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      一種快速繪制AGV自動分揀系統(tǒng)地圖方法的研究

      2020-09-03 09:17:32章信華嵇建波
      科技和產(chǎn)業(yè) 2020年8期
      關鍵詞:定位點貨架瀏覽器

      章信華, 嵇建波

      (桂林航天工業(yè)學院 電子信息與自動化學院, 廣西 桂林 541004)

      隨著我國經(jīng)濟的發(fā)展,我國物流產(chǎn)業(yè)的發(fā)展成就矚目,物流經(jīng)濟在國民經(jīng)濟中的“先導性作用”更加重要[1]。AGV 由于具有靈活高效、安全可靠、及維修方便等諸多優(yōu)點,在物流自動化中受到了越來越多廠商的重視[2]。倉儲物流中最重要的系統(tǒng)就是AGV自動分揀系統(tǒng),而建立AGV自動分揀系統(tǒng)的第一步就是要繪制整個倉庫的地圖,只有把倉庫的地圖繪制好了,才能正常調(diào)度AGV執(zhí)行分揀任務。

      由于實際的地圖中包含大量的信息,即使繪制一張簡單的調(diào)度系統(tǒng)地圖也是非常困難的。通過搜索文獻,未找到任何關于繪制調(diào)度系統(tǒng)地圖的文獻,看得出來,這是一個新興的專業(yè)領域,還處于保密階段。一些公司繪制調(diào)度系統(tǒng)地圖的方法,是直接在調(diào)度系統(tǒng)服務器中編碼繪制地圖,該方法需要先在紙上將地圖繪制好,再將地圖上的點和線一一繪制出來,工作量非常大,即使是一張簡單的地圖,也要耗費1周甚至更長時間;另一方面,這種繪圖方法導致調(diào)度系統(tǒng)和地圖完全綁定,每次修改地圖,都需要在調(diào)度系統(tǒng)中重新編碼生成新的地圖;所以這是一種耗時長且十分笨拙的繪圖方法,有必要提出一種新的繪圖方法來解決這個問題。

      1 規(guī)劃地圖

      在實際的AGV倉儲物流系統(tǒng)中,通常有貨架、待命區(qū)、充電區(qū)和上貨區(qū),另外還有很多路徑上的引導定位點,這些引導定位點相當于實際交通中的十字路口,用于引導AVG左轉(zhuǎn)、右轉(zhuǎn)或者直行,以便執(zhí)行相應的任務。為了讓AGV能夠識別貨架、待命區(qū)、充電區(qū)、上貨區(qū)和引導定位點,要在這些定位點上放置無線射頻識別卡(RFID射頻卡),當AGV經(jīng)過這些定位點上的RFID射頻卡時,AGV上的RFID閱讀器將會讀取射頻卡的信息,從而讓AGV知道當前走到哪個位置了,以便執(zhí)行相應的動作,例如轉(zhuǎn)彎、卸貨、待命、充電和上貨。

      基于地圖的以上特點,故本文在建立地圖的時候,將地圖規(guī)劃為只由點和線段組成,點包括5種關鍵點,分別是:“貨架”、“待命區(qū)”、“充電區(qū)”、“上貨區(qū)”和“引導定位點”;線段是指任意2個關鍵點之間的連接,包含單向線段和雙向線段;即一張地圖是由若干個關鍵點和若干條線段組成。

      AGV調(diào)度系統(tǒng)中的AGV小車采用的是磁條導航方式,并在磁條上布置若干個RFID定位點。磁條導航方式和電磁導航方式的工作原理是相似的,差別在于磁條導航方式的導引線是磁條,并且電磁傳感器自帶激勵線圈[3]。無線射頻識別技術(Radio Frequency Identification,簡稱RFID)是一種非接觸式的自動識別技術,它通過射頻信號自動識別目標對象并獲取相關數(shù)據(jù),識別工作無須人工干預,可工作于各種惡劣環(huán)境[4]。

      2 在AutoCAD中繪制地圖

      作為一款功能強大的通用的繪圖平臺軟件,AutoCAD被廣泛使用于機械、電子、航天、建筑等領域,成為行業(yè)中被使用最為多的計算機輔助設計軟件之一[5]。正是因為AutoCAD具有繪制二維平面圖的諸多優(yōu)點,所以本文選擇用AutoCAD來設計倉庫中的地圖。

      正如上文所述,AGV倉儲物流系統(tǒng)中,包含有大量的貨架、待命區(qū)、充電區(qū)、上貨區(qū)和引導定位點。為了形象表示,在AutoCAD中將“引導定位點”畫成圓形,將“貨架”、“待命區(qū)”、“充電區(qū)”和“上貨區(qū)”畫成矩形;這些定位點的種類不同,其RFID號碼也不同,即它們具有不同的屬性。為了能夠快速完成地圖的繪制,通過在AutoCAD中定義“屬性塊”來繪制上述定位點。在AutoCAD中,若將圖形中每部分對象都定義成圖塊,需要時直接插入,這樣就可以避免重復性工作,同時還可提高繪圖的效率和精確度[6]。

      綜上,在AutoCAD中,定義2種屬性塊來表示上述定位點,即定義屬性塊“圓”表示引導定位點,包含的屬性有“種類”、“序號”;定義屬性塊“矩形”表示貨架、待命區(qū)、充電區(qū)和上貨區(qū),包含的屬性有“種類”、“地址”、“序號”?!胺N類”表示該定位點是哪一種類型,地址是貨架專有的,表示是第幾個貨架?!靶蛱枴北硎驹摱ㄎ稽c上的RFID號碼是多少,每個定位點上的RFID號碼是唯一的。2種屬性塊的具體信息如表1所示。

      表1 2種屬性塊的具體信息

      在AutoCAD中,屬性塊“圓”的定義如圖1所示,屬性塊“矩形”的定義如圖2所示。

      圖1 屬性塊“圓”的定義

      圖2 屬性塊“矩形”的定義

      定義完上述2種屬性塊后,接下來就可以根據(jù)倉庫的實際情況,來規(guī)劃整個地圖了,只需要將上述2種屬性塊,修改“種類”、“地址”、“序號”等屬性,并根據(jù)定位點的實際坐標,逐個地插入到地圖中,之后采用線段連接相鄰2個定位點即可完成整個地圖的繪制,非常方便和快捷。地圖上的定位點即是RFID點,線段則是2個RFID點之間的磁條。

      3 使用VBA腳本導出地圖數(shù)據(jù)

      在AutoCAD中繪制好地圖后,工人即可按照圖紙進行施工,例如,在路面上,貼上地圖中繪制的所有磁條等等。另外一方面,需要將該地圖導入到AGV調(diào)度系統(tǒng)中,AGV調(diào)度系統(tǒng)正是根據(jù)該地圖來調(diào)度AGV執(zhí)行任務的。為了能快速地將AutoCAD中繪制好地圖導入到AGV調(diào)度系統(tǒng)中,本文采用AutoCAD的二次開發(fā)方法,AutoCAD的二次開發(fā)方法包括VBA、AutoLisp 、VisualLisp和Objet ARX等4種[7],本文選擇使用VBA(Visual Basic for Applications)進行二次開發(fā),主要是因為 VBA具有簡單易學、良好的程序員基礎、速度快,以及與其他Windows應用程序交互好等優(yōu)點而得到了廣泛的應用[8]。

      上文已經(jīng)在AutoCAD中繪制好了地圖,接下來將通過VBA腳本程序,導出地圖中所有的關鍵數(shù)據(jù)。地圖中只包含2種圖元,一種是屬性塊,另一種是連接2個相鄰屬性塊的線段,只要將這2種圖元的數(shù)據(jù)導出到文本文檔即可,導出它們的方法是類似的。

      首先對于地圖中的每一個屬性塊,包含的關鍵數(shù)據(jù)包括:序號(唯一的RFID號碼)、X坐標、Y坐標、塊種類和貨架地址,只需要將這些數(shù)據(jù)從地圖中讀取即可。由于在定義屬性塊的時候,“種類”屬性使用的是文本類型,為了方便導出數(shù)據(jù),將其轉(zhuǎn)化為數(shù)值類型,具體對應關系,如表2所示。

      表2 “種類”屬性轉(zhuǎn)換表

      為了導出地圖中每一個屬性塊數(shù)據(jù),只需要在AutoCAD中,通過VBA中的For語句循環(huán)檢索圖形中的所有屬性塊,并將屬性塊的坐標、各個屬性值讀取出來,并保存到相應的數(shù)組中即可,相應的核心代碼如圖3所示。

      圖3 讀取屬性塊的核心代碼

      之后需要將該數(shù)組的內(nèi)容導出到文本文檔——RFID.txt中,其核心代碼如圖4示所示。

      圖4 導出數(shù)據(jù)的核心代碼

      其次對于地圖中連接2個相鄰屬性塊的線段,包含的關鍵數(shù)據(jù)包括:序號、起點序號、終點序號,同樣只需要將這些數(shù)據(jù)從地圖中讀取即可,采樣的方法和讀取屬性塊是類似的,也是通過For語句循環(huán)檢索圖形中的所有線段,并將每條線段的起點坐標和終點坐標讀取出來;由于地圖上每一個RFID點的坐標是唯一的,所以可以通過一個點的坐標來查找其相應的RFID號碼。讀取出每一條線段的起點序號和終點序號出來后,將其保存到相應的數(shù)組中。之后同樣將數(shù)據(jù)導出到文本文檔—RFIDLINE.txt。

      4 服務器讀取地圖數(shù)據(jù)

      調(diào)度系統(tǒng)采用的是瀏覽器/服務器架構(gòu)模式,該架構(gòu)是一種以HTTP為傳輸協(xié)議, 客戶端通過瀏覽器訪問Web服務器以及與之相連的后臺數(shù)據(jù)庫的體系結(jié)構(gòu)[9],用戶只需要通過瀏覽器即可訪問運行在服務器中的調(diào)度系統(tǒng)了。瀏覽器端采用JavaScript腳本繪制調(diào)度系統(tǒng)的地圖,服務器采用C#編程語言完成。

      將包含地圖數(shù)據(jù)的文件,放在固定的文件夾中,運行在服務器中的調(diào)度系統(tǒng)將讀取這2個文本中的地圖數(shù)據(jù),并在內(nèi)存中生成倉庫地圖,以便完成調(diào)度AGV的任務。由于服務器中的調(diào)度系統(tǒng)是采用C#編程語言編寫的,所以只需要使用C#讀取文本文件中地圖的數(shù)據(jù)即可,也是通過For語句循環(huán)讀取文本文檔中的每一行的數(shù)據(jù),并保存到相應的數(shù)組中。讀取RFID.txt的核心代碼如圖5所示,讀取RFIDLINE.txt的代碼是類似的。讀取完這2個文檔中的數(shù)據(jù)后,服務器將擁有了整個地圖所有的數(shù)據(jù)。

      圖5 C#讀取文本文檔的核心代碼

      5 瀏覽器中繪制地圖

      服務器讀取完地圖數(shù)據(jù)后,下一步的關鍵是如何將服務器中地圖的數(shù)據(jù)發(fā)送到瀏覽器端,以便在瀏覽器中繪制地圖;本文采用的方法是在瀏覽器中添加3個隱藏的文本控件,服務器向這3個文本控件發(fā)送2個文檔的地圖數(shù)據(jù)和多個AGV的坐標數(shù)據(jù)。瀏覽器獲得地圖數(shù)據(jù)后,即可繪制出整個地圖。由于地圖的數(shù)據(jù)是固定的,所以僅需發(fā)送一次數(shù)據(jù)即可,但由于AGV是一直處于工作狀態(tài),它們的坐標一直是變動的,所以AGV的坐標是需要周期性發(fā)送給瀏覽器的,從而可以在地圖上實時瀏覽AGV當前的位置。

      瀏覽器獲取服務器中的地圖數(shù)據(jù)后,接下來將采用JavaScript腳本來繪制地圖,以供用戶查看。JavaScript作為一種編程/腳本語言,已經(jīng)被廣泛用于web開發(fā),以增加更多的動態(tài)功能和效果,改善最終用戶體驗[10]。在瀏覽器中繪制的地圖和在AutoCAD中繪制的地圖是相同的,同樣是將“引導定位點”畫成圓形,將“貨架”、“充電區(qū)”和“上貨區(qū)”畫成矩形;JavaScript腳本語法比較簡單,有了地圖的數(shù)據(jù)后,繪制地圖的本質(zhì)只是繪制多個圓形、矩形和線段,JavaScript有專門繪制它們的函數(shù),繪制圓形和矩形的核心代碼如圖6所示,繪制線段的代碼是類似的。

      圖6 JavaScript繪制圓形和矩形的核心代碼

      6 測試結(jié)果

      為了驗證該方法的可靠性和快速性,本文參照某公司的物流倉儲系統(tǒng),采用該方法繪制該倉庫的地圖。首先使用AutoCAD繪制倉庫中的地圖,該地圖包含有4個上貨區(qū),16個貨架,8個充電區(qū),4條物流線,如圖7所示。

      圖7 物流倉儲地圖

      該圖上部RFID號為14、27、40、55的4個矩形框是4個“上貨區(qū)”,中下部的4行4列共16個矩形框是16個“貨架”,最左邊和最右邊的矩形框是8個“充電區(qū)”,圓形點是“引導定位點”。圖中最短的線段的長度是1米,其他線段的長度是1米的整數(shù)倍;線段包含雙向線段和單向線段,單向線段表示AGV只能朝1個方向移動,包括向左、向右和向下單向線段。

      接下來使用已經(jīng)編寫好的VBA腳本,導出地圖中的所有數(shù)據(jù),導出屬性塊的部分數(shù)據(jù)如圖8所示,導出的部分線段數(shù)據(jù)如圖9所示。

      圖8 屬性塊的部分數(shù)據(jù)

      圖9 線段的部分數(shù)據(jù)

      之后將這2個地圖數(shù)據(jù)放入調(diào)度系統(tǒng)中相應的文件夾中,調(diào)度系統(tǒng)運行時,會自動讀取它們,生成調(diào)度地圖;同時調(diào)度系統(tǒng)會自動將這2個地圖的數(shù)據(jù)發(fā)送到瀏覽器端,從而在瀏覽器中繪制出整個地圖;在瀏覽器中顯示的地圖如圖10所示,地圖中的“引導定位點”使用圓形繪制,“貨架”、“充電區(qū)”和“上貨區(qū)”使用矩形繪制,4臺AGV也使用矩形繪制,為了使地圖中的各個圖形更易分辨,這些圖形都采用不同的顏色繪制。用戶可以在這個瀏覽器界面中實時觀察所有AGV當前的工作狀態(tài),掌控整個調(diào)度系統(tǒng)的運行情況。AutoCAD繪制地圖的時間,占據(jù)了整個過程時間的絕大部分,其他過程都是自動化完成的,通過實際測試,全過程只花了2個小時。

      圖10 瀏覽器中的物流倉儲地圖

      7 結(jié)論

      從圖10可以看出,瀏覽器顯示的地圖和在AutoCAD繪制的地圖完全相同,這證明了這種繪制方法的可行性;另一方面,整個過程只需要在AutoCAD中繪制好相應的地圖,再將地圖數(shù)據(jù)導入調(diào)度系統(tǒng)即可,說明這種方法操作簡單;此外,這種繪圖方法使調(diào)度系統(tǒng)和地圖完全解綁,每次修改地圖,調(diào)度系統(tǒng)都無需重新編碼,只需導入新的地圖數(shù)據(jù)即可;最后,繪制一張地圖的時間由原來的1個星期,縮減到現(xiàn)在的2個小時,說明了這種方法的快速性。

      猜你喜歡
      定位點貨架瀏覽器
      時速160公里剛性接觸網(wǎng)定位點導高偏差研究
      電氣化鐵道(2023年6期)2024-01-08 07:45:48
      數(shù)獨小游戲
      反瀏覽器指紋追蹤
      電子制作(2019年10期)2019-06-17 11:45:14
      地鐵剛性接觸網(wǎng)定位點脫落狀態(tài)分析
      電氣化鐵道(2018年4期)2018-09-11 07:01:38
      邵國勝:實現(xiàn)從“書架”到“貨架”的跨越
      科學中國人(2018年1期)2018-06-08 05:42:58
      投資無人貨架適合嗎?
      中國儲運(2018年4期)2018-04-08 10:56:22
      我的結(jié)網(wǎng)秘籍
      環(huán)球瀏覽器
      再見,那些年我們嘲笑過的IE瀏覽器
      英語學習(2015年6期)2016-01-30 00:37:23
      電化學阻抗法預測油脂貨架期
      滦平县| 罗甸县| 南和县| 宽城| 丁青县| 阿尔山市| 西昌市| 昌都县| 醴陵市| 台州市| 临猗县| 黑河市| 邓州市| 吕梁市| 武城县| 乌鲁木齐市| 肥东县| 调兵山市| 卢湾区| 上虞市| 岳阳县| 潍坊市| 滦南县| 柳州市| 永德县| 闸北区| 梅州市| 固安县| 京山县| 隆林| 陵川县| 房产| 秦安县| 邓州市| 沛县| 广灵县| 焦作市| 大竹县| 嘉黎县| 阳泉市| 疏勒县|