李沛遠(yuǎn) 張犇 陳德欣 趙春鋒
摘? 要 以第六屆全國大學(xué)生工程訓(xùn)練綜合能力智能物流車組別的競賽命題為背景,設(shè)計開發(fā)符合競賽要求的智能物流車。通過機(jī)械手和物流車底盤機(jī)械設(shè)計、執(zhí)行機(jī)構(gòu)控制電路設(shè)計、AGV導(dǎo)航算法規(guī)劃程序設(shè)計等,設(shè)計的智能物流車具有自主移動、定位、二維碼讀取抓取任務(wù)順序、顏色識別、物料抓取與搬運(yùn)、路徑規(guī)劃等功能。經(jīng)過競賽實踐,取得不錯的成績,提供了一種有效的智能物流車設(shè)計方案。
關(guān)鍵詞 工程訓(xùn)練;綜合能力競賽;智能物流車;二維碼;機(jī)械手
中圖分類號:G642? ? 文獻(xiàn)標(biāo)識碼:B
文章編號:1671-489X(2020)14-0025-03
1 引言
全國大學(xué)生工程訓(xùn)練綜合能力競賽是教育部高等教育司發(fā)文舉辦的全國性大學(xué)生科技創(chuàng)新實踐競賽活動,競賽過程包括理論設(shè)計、實際制作、整車調(diào)試、現(xiàn)場比賽等環(huán)節(jié),要求學(xué)生組成團(tuán)隊、協(xié)同工作,初步體會一個工程性的研究開發(fā)項目從設(shè)計到實現(xiàn)的全過程。本文以第六屆全國大學(xué)生工程訓(xùn)練綜合能力智能物流車組別的競賽命題為背景,通過機(jī)械手和物流車底盤機(jī)械、執(zhí)行機(jī)構(gòu)控制電路、AGV導(dǎo)航算法規(guī)劃程序等設(shè)計,開發(fā)符合競賽要求的智能物流車。
比賽場地三維示意如圖1所示,結(jié)合企業(yè)的現(xiàn)場環(huán)境,設(shè)置原料區(qū)、加工區(qū)和成品區(qū)。初賽時,以擋板將場地一分為二,給定原料區(qū)、加工區(qū)和成品區(qū)的具體位置,物流車只能在擋板所圍區(qū)域內(nèi)活動。決賽時,場地中的擋板去掉,兩個參賽物流車在場地整個區(qū)域內(nèi)活動,原料區(qū)、加工區(qū)、成品區(qū)的位置可以在整個場地范圍內(nèi)設(shè)置。物料有三種顏色,分別是紅、綠、藍(lán),三種不同顏色隨機(jī)放置在物料區(qū)。任務(wù)編碼被設(shè)置為1、2、3三個數(shù)字的組合,如123、321等,采用二維碼圖片展示。其中,1表示紅色,2表示綠色,3表示藍(lán)色,數(shù)字組合表明物料搬運(yùn)過程中不同顏色物料的搬運(yùn)順序。加工區(qū)和成品區(qū)均由三種顏色的同心圓和十字線構(gòu)成,物料需要準(zhǔn)確搬運(yùn)到加工區(qū)或成品區(qū)對應(yīng)的顏色區(qū)域內(nèi)。
2 系統(tǒng)組成方案
智能物流車的整個系統(tǒng)分為機(jī)械結(jié)構(gòu)、控制電路系統(tǒng)、AGV導(dǎo)航算法程序等三部分。系統(tǒng)結(jié)構(gòu)組成示意圖如圖2所示。單片機(jī)控制器是整個智能物流車的控制核心,負(fù)責(zé)各傳感器數(shù)據(jù)獲取以及人機(jī)接口設(shè)置與顯示,同時控制機(jī)械臂的抓取與放置操作,最重要的是根據(jù)場地黑色方格線進(jìn)行路徑導(dǎo)航與行走控制。
物流車行走機(jī)構(gòu)方案? 物流車在場地行走過程中需要進(jìn)行機(jī)械臂抓取和放置操作。比賽中,抓取和放置位于物流車的兩個側(cè)面,也就是機(jī)械臂的操作半徑要大于180°。此時,物流車底盤不需要旋轉(zhuǎn)90°,也就是說,在整個物料抓取和放置過程中,物流車始終保持一個方向即可。若機(jī)械臂操作旋轉(zhuǎn)半徑小于180°,則小車需要旋轉(zhuǎn)90°,實現(xiàn)抓取、行走和放置操作。而且場地循跡為黑色方格線,因此,物流車不適合做成兩輪差速結(jié)構(gòu)和普通的舵機(jī)轉(zhuǎn)向控制的兩驅(qū)車模結(jié)構(gòu)。根據(jù)場地特點(diǎn)和運(yùn)行要求,采用四全向輪結(jié)構(gòu)或四麥克納姆輪結(jié)構(gòu)的物流車底盤(如圖3、圖4所示),車輪部分或全部采用螺旋彈簧安裝在車架下面,當(dāng)車輪發(fā)生跳動時,其他車輪不受影響,可有效防止輪胎防滑。對于新購得的輪胎橡膠,表皮應(yīng)用砂紙摩擦以增加表面粗糙度,進(jìn)行防滑處理。
機(jī)械手設(shè)計方案? 機(jī)械手采用關(guān)節(jié)坐標(biāo)型機(jī)械臂,示意圖如圖5所示,可有3~4個關(guān)節(jié)動作和一個手抓動作,均使用舵機(jī)進(jìn)行控制。機(jī)械手整機(jī)分為臂座、大臂、小臂和手抓,以保證到達(dá)工作空間的任意位置,手抓以實現(xiàn)末端操作的任意空間姿態(tài)。臂部的運(yùn)動使得臂座的結(jié)構(gòu)和受力較復(fù)雜,臂座采用大滾動軸承固定于物流車底盤,示意圖如圖6所示。本設(shè)計中,為滿足機(jī)械臂大于180°轉(zhuǎn)動范圍,臂座回轉(zhuǎn)運(yùn)動采用270°20 kg舵機(jī)控制。關(guān)節(jié)坐標(biāo)結(jié)構(gòu)簡單,采用鋁合金和亞克力板制作,密度小、重量輕,能夠滿足整個機(jī)械手的回轉(zhuǎn)的靈活性和定位的準(zhǔn)確性。肘關(guān)節(jié)和手抓主要考慮通用性與互換性,由于決賽時抓取物料形狀有改變,手抓結(jié)構(gòu)要在短時間內(nèi)重新設(shè)計以達(dá)到快速適應(yīng)新物料的需要。
3 物料顏色與任務(wù)二維碼識別
智能物流搬運(yùn)車首先采集搬運(yùn)任務(wù)編碼,初賽時為尺寸80 mm×80 mm的二維碼,決賽時通過Wi-Fi網(wǎng)絡(luò)通信獲?。ㄈ蝿?wù)編碼均通過現(xiàn)場抽簽確定)。同時,需要采集賽場上原料區(qū)物料顏色,確定需要搬運(yùn)的物料位置和搬運(yùn)順序。加工區(qū)和成品區(qū)均由不同顏色的同心圓和十字線構(gòu)成,每組同心圓和十字線為同一種顏色,加工區(qū)和成品區(qū)的同心圓顏色需要智能物流車自行甄別。
整個過程中,需要對原料區(qū)物料、加工區(qū)和成品區(qū)的同心圓進(jìn)行顏色識別。電磁類傳感不可取,灰度攝像頭可作物體形狀判斷,但不能識別物體顏色。因此,選用彩色攝像頭進(jìn)行顏色識別,方便二次開發(fā)的平臺有可安裝彩色鏡頭的嵌入式模塊OpenMV(圖7)、彩色USB攝像頭結(jié)合樹莓派核心板。而開源視覺傳感器pixy2基于色度的顏色濾波算法(hue-based color filtering algorithm)來檢測物體,但是不開放二次開發(fā)環(huán)境,對于本競賽場合不適合。TCS3200、TCS34725顏色感應(yīng)芯片采用多個顏色感應(yīng)光電二極管組成,感應(yīng)距離在1 cm以內(nèi),且易受環(huán)境光線干擾,因此對此競賽中物料與放置靶紙同心圓顏色識別效果不佳。
OpenMV采用STM32H7處理器,主頻400 MHz,是一個開源、低成本、功能強(qiáng)大的機(jī)器視覺模塊。采用Python語言對OpenMV進(jìn)行二次開發(fā),達(dá)到機(jī)器視覺功能,以此來實現(xiàn)檢測、產(chǎn)品篩選、跟蹤固定標(biāo)記物等。對二維碼識別除了可以使用二維碼識別模塊(圖8)外,也可使用OpenMV進(jìn)行二維碼識別。
OpenMV中,顏色識別時采用尋找色塊函數(shù)image.find_
blobs(),該返回一個包含多個blob對象的列表blobs,每個blobs對象包含一個色塊的信息,再通過查找顏色代碼與顏色做比較,獲得物料顏色和同心圓顏色。使用img.find_
qrcodes()函數(shù)對采集圖像進(jìn)行二維碼識別,查找ROI(region
of interest)內(nèi)的所有二維碼并返回一個image.qrcode對象的列表。為使二維碼一次識別成功,若二維碼圖像存在畸變,可以更換為無畸變鏡頭消除畸變,或使用sensor.set_
windowing函數(shù)在鏡頭中心放大,使用image.lens_corr函數(shù)消除鏡頭的桶形畸變等。使用code.payload()返回二維碼字符串,并將二維碼數(shù)據(jù)發(fā)送至主控單片機(jī)。
4 物流車AGV導(dǎo)航算法
智能物流車的整個活動區(qū)域場地地面為淺黃色亞光人造板或合成革鋪就而成,上面有間隔為300 mm的黑色方格線,經(jīng)線為線寬20 mm的單線,緯線線寬為15 mm+10 mm(間隔)+15 mm的雙線(如圖1所示),用于機(jī)器人行走的地面坐標(biāo)位置判斷。智能物流機(jī)器人從出發(fā)區(qū)移動到二維碼顯示板前讀取二維碼,然后判別原料區(qū)物料的顏色順序;再移動到原料區(qū),按任務(wù)碼順序依次將物料準(zhǔn)確搬運(yùn)到加工區(qū)對應(yīng)的顏色區(qū)域內(nèi)(一次只能搬運(yùn)一個物料到加工區(qū),不允許將物料存放在機(jī)器人上)。將物料搬運(yùn)至加工區(qū)后,第二次識別二維碼任務(wù)碼,再按照任務(wù)碼順序再次將物料從加工區(qū)依次搬運(yùn)到成品區(qū)對應(yīng)顏色的位置上。完成任務(wù)后,物流機(jī)器人返回出發(fā)區(qū)。
智能物流機(jī)器人執(zhí)行任務(wù)過程中需要到達(dá)指定的地點(diǎn)執(zhí)行掃碼、顏色識別、抓取、放置等不同任務(wù)。這些地點(diǎn)也就是智能物流車相對于出發(fā)區(qū)的全局坐標(biāo)Pi(xi,yi),存儲于主控單片機(jī)程序中。在物流機(jī)器人底盤上安裝橫向和縱向的灰度傳感器(如圖9所示),獲得物流機(jī)器人行走的方向和位置判斷。同時,在小車底盤安裝橫向和縱向測距傳感器,實時測量物流車相對于活動區(qū)域外圍擋板距離,對黑色循跡結(jié)果進(jìn)行修正。灰度傳感和測距修正在實際比賽中獲得較好的效果。
5 結(jié)語
本文以第六屆全國大學(xué)生工程訓(xùn)練綜合能力智能物流車組別的競賽命題為背景,通過機(jī)械手和物流車底盤機(jī)械設(shè)計、執(zhí)行機(jī)構(gòu)控制電路設(shè)計、AGV導(dǎo)航算法規(guī)劃程序設(shè)計等,設(shè)計的智能物流車具有自主移動定位、識別二維碼任務(wù)順序、物料顏色識別、機(jī)械手抓取與搬運(yùn)、路徑規(guī)劃等功能。本文所述的整體方案,經(jīng)過競賽實踐驗證,取得較好的成績,為一套合理完整的硬件選擇方案?!?/p>
參考文獻(xiàn)
[1]關(guān)于發(fā)布第六屆全國大學(xué)生工程訓(xùn)練綜合能力競賽命題的通知[DB/OL].[2018-07-13].http://www.gcxl.edu.cn/info/1049/1541.htm.
[2]崔辰鵬,金鈺飛,錢曉明,等.AGV視覺導(dǎo)向Hough變換算法的FPGA硬件實現(xiàn)[J].工業(yè)控制計算機(jī),2010(6):41-42.
[3]朱春偉,劉倫乾,甘海云,等.基于AGV的工藝裝備集成開發(fā)與研究[J].內(nèi)燃機(jī)與配件,2018(6),13-14.
[4]劉偉,彭琛.基于超聲波測距的智能小車研究[J].自動化應(yīng)用,2016(11):19-21.