成文娟,陳銀樹,尹序臻,江永鑫
(廈門理工學(xué)院 電氣工程與自動(dòng)化學(xué)院,福建 廈門 361024)
制造業(yè)是衡量國家綜合實(shí)力的重要標(biāo)準(zhǔn),近年來隨著電子、汽車、快遞、電商等行業(yè)的發(fā)展,物流倉儲(chǔ)行業(yè)也得到了迅速發(fā)展。但是,由于訂單數(shù)量與種類激增使商品揀選任務(wù)繁重,從而導(dǎo)致出錯(cuò)率高、成本高,甚至在特殊情況下,已經(jīng)是人力所不及,可以說,傳統(tǒng)的倉儲(chǔ)系統(tǒng)面臨著諸多挑戰(zhàn)。
在“中國制造2025”的推動(dòng)下,柔性制造業(yè)迎來了重大的發(fā)展,這也是構(gòu)建未來智能工廠的基石[1]。對(duì)此,本文提出一種基于柔性制造系統(tǒng)的智能物料運(yùn)送機(jī)器人的設(shè)計(jì)與實(shí)現(xiàn),該機(jī)器人可自動(dòng)識(shí)別需要搬運(yùn)的物料并運(yùn)送至指定目標(biāo)區(qū)域。該機(jī)器人具有接受、規(guī)劃、協(xié)調(diào)和控制的功能,這對(duì)改進(jìn)生產(chǎn)過程和實(shí)現(xiàn)管理的自動(dòng)化,減少員工的工作量和失誤,提高勞動(dòng)生產(chǎn)率及降低生產(chǎn)成本有至關(guān)重要的意義[2]。
本設(shè)計(jì)以STM32F103C8T6作為控制核心,通過OpenMV機(jī)器視覺模塊掃描二維碼讀取工作地點(diǎn)的信息,利用STM32PWM設(shè)置定時(shí)器,控制PWM信號(hào)通過L298N驅(qū)動(dòng)底部直流電機(jī)和控制前部機(jī)械手舵機(jī),從而完成抓取、移動(dòng)、卸貨等操作。機(jī)器人整體系統(tǒng)結(jié)構(gòu)框圖如圖1所示。

圖1 智能運(yùn)送機(jī)器人系統(tǒng)結(jié)構(gòu)框圖
整體的技術(shù)路線具體如下:
⑴ OpenMV攝像頭實(shí)時(shí)捕捉二維碼的信息傳遞給單片機(jī);
⑵ STM32F103C8T6單片機(jī)控制小車底部電機(jī),到達(dá)抓取目標(biāo)物料的位置;
⑶ OpenMV識(shí)別物料;
⑷ STM32F103C8T6單片機(jī)控制舵機(jī),利用舵機(jī)的轉(zhuǎn)動(dòng)執(zhí)行帶動(dòng)機(jī)械爪進(jìn)行分離閉合,控制機(jī)械手抓取物品。
智能運(yùn)送機(jī)器人硬件模塊相關(guān)型號(hào)和參數(shù)具體見表1。
智能運(yùn)送機(jī)器人的主框架主要以亞克力板為材料,直流電機(jī)選用“Z”字形減速馬達(dá)(24 V/540轉(zhuǎn)),為機(jī)器人留有足夠的安全裕度容量的同時(shí)提高兼容性,內(nèi)置電壓轉(zhuǎn)換電路,即DC/DC模塊又充當(dāng)了電壓變化器的作用,可將12 V鋰電池電壓降成5 V為STM32單片機(jī)及直流電機(jī)供電[3]。
該機(jī)器人的硬件電路主要包括:STM32F103C8T6、OpenMV機(jī)器視覺模塊、電機(jī)驅(qū)動(dòng)模塊、基于LM2596S的DC-DC降壓模塊等硬件組成,硬件設(shè)計(jì)如圖2所示。

圖2 硬件電路圖

表1 智能運(yùn)送機(jī)器人各硬件模塊及其參數(shù)表
本設(shè)計(jì)的軟件采用模塊化程序的設(shè)計(jì)思路,整體程序主要包括利用OpenMV視覺庫用Python書寫視覺庫和控制機(jī)器人的程序。視覺子系統(tǒng)又分為圖像采集子模塊、圖像預(yù)處理子模塊、圖像分析子模塊3個(gè)子模塊組成[4]。軟件部分主要為機(jī)械手舵機(jī)控制、底部移動(dòng)小車電機(jī)控制以及圖像識(shí)別3部分。
在系統(tǒng)程序初始化階段,需要配置TIM4和TIM3為PWM輸出模式2,使所用通道的預(yù)裝載通過配置T_period和T_prescaler得到輸出的PWM信號(hào)頻率為50 kHz,頻率計(jì)算方法為:
取T_period為2000-1,即1999,取T_prescaler為720-1,即719。通過改變T_puls即可控制舵機(jī)轉(zhuǎn)角,T_puls變化范圍在50~250 之間,若超出,很可能會(huì)永久損傷舵機(jī),在調(diào)試時(shí)應(yīng)當(dāng)警惕。該智能物料運(yùn)送機(jī)器人舵機(jī)控制流程圖如圖3所示。
初始化4個(gè)引腳,每2個(gè)分別來控制其中的一個(gè)電機(jī)的方向,設(shè)置一個(gè)定時(shí)器來控制PWM信號(hào)占空比,tim=pyb.Timer(4,freq=1000),即通過定時(shí)器來控制電機(jī)的左右轉(zhuǎn)。該智能物料運(yùn)送機(jī)器人底部移動(dòng)小車電機(jī)控制流程圖,如圖4。
圖像識(shí)別以O(shè)penMV作為主體硬件識(shí)別。OpenMV搭載MicroPython解釋器,這允許在嵌入式上使用Python來編程(Python 3 to be precise)。Python是機(jī)器視覺算法的編程。
3.3.1 二維碼識(shí)別
二維碼識(shí)別采用軟件畸變矯正,對(duì)圖像進(jìn)行畸變矯正,調(diào)用函數(shù)find_qrcode進(jìn)行二維碼檢測(cè)。該智能物料運(yùn)送機(jī)器人二維碼識(shí)別流程圖如圖5所示。
3.3.2 顏色追蹤
一個(gè)顏色閾值的結(jié)構(gòu)是這樣的:red=(minL,maxL,minA,maxA,minB,maxB)。我們可以在閾值編輯器里將目標(biāo)顏色變成白色,其他顏色全變?yōu)楹谏V恍鑼⑺粉櫟念伾撝颠M(jìn)行設(shè)定,便可成功進(jìn)行識(shí)別所需色塊。該智能物料運(yùn)送機(jī)器人顏色追蹤的流程圖如圖6所示。

圖3 舵機(jī)控制圖

圖4 底部移動(dòng)小車電機(jī)控制

圖5 二維碼識(shí)別

圖6 顏色追蹤
將程序燒入單片機(jī)后完成該智能運(yùn)送物料機(jī)器人的組裝,作品如圖7所示。

圖7 智能運(yùn)送物料機(jī)器人整體結(jié)構(gòu)圖

圖8 二維碼識(shí)別圖

圖9 識(shí)別物料顏色
對(duì)該智能運(yùn)送物料機(jī)器人的功能進(jìn)行測(cè)試:首先,OpenMV掃描二維碼讀取信息,圖8為OpenMV成功識(shí)別二維碼;其次,OpenMV識(shí)別物料顏色,鎖定目標(biāo),圖9為OpenMV成功識(shí)別物料顏色;然后,STM32單片機(jī)控制機(jī)器人移動(dòng)到目標(biāo)物料的位置;最后,STM32單片機(jī)控制舵機(jī)、進(jìn)而控制機(jī)械手抓取物品。
經(jīng)測(cè)試,所設(shè)計(jì)的智能運(yùn)送物料機(jī)器人可以掃描識(shí)別二維碼信息,準(zhǔn)確的將信息傳送給控制中心。其能夠通過顏色追蹤快速準(zhǔn)確的鎖定目標(biāo)物塊,然后驅(qū)動(dòng)機(jī)械手抓取物料,且在發(fā)現(xiàn)沒有符合要求的物料時(shí),繼續(xù)尋找目標(biāo)物料。物料機(jī)器人移動(dòng)過程中整體運(yùn)行穩(wěn)定,抓取準(zhǔn)確,功耗低。
本文設(shè)計(jì)了一種基于柔性制造系統(tǒng)的智能物料運(yùn)送機(jī)器人,該機(jī)器人具有掃描識(shí)別二維碼、顏色追蹤、機(jī)械手抓取物料、運(yùn)送物料的功能。該機(jī)器人運(yùn)用OpenMV模塊實(shí)現(xiàn)了掃描識(shí)別二維碼、顏色追蹤的功能。通過直流電機(jī)L298N來控制機(jī)器人停止、前進(jìn)、左轉(zhuǎn)和右轉(zhuǎn)的功能。通過顏色追蹤發(fā)現(xiàn)目標(biāo)物料, STM32F103C8T6控制舵機(jī),讓機(jī)械手抓取目標(biāo)物料。
與傳統(tǒng)的人工相比,本設(shè)計(jì)解決了人工耗資在生產(chǎn)過程中占比重大、物料種類繁多、效率低下等一系列問題,推進(jìn)了物流業(yè)由勞動(dòng)密集型產(chǎn)業(yè)向智能化產(chǎn)業(yè)轉(zhuǎn)型的發(fā)展。