(南開(kāi)大學(xué)濱海學(xué)院,天津 300270)
現(xiàn)今,隨著先進(jìn)技術(shù)裝備的應(yīng)用和普及,我國(guó)物流業(yè)正努力從勞動(dòng)密集型向技術(shù)密集型轉(zhuǎn)變,從傳統(tǒng)模式向現(xiàn)代化、智能化升級(jí)。但一些具有搬運(yùn)、碼垛、分揀等功能的智能機(jī)器人的核心和高精度零件仍然過(guò)于依賴(lài)進(jìn)口;在品牌影響力上,本土化民族品牌也相對(duì)缺乏。生產(chǎn)技術(shù)的主要任務(wù)是高效、快速。智能傳感自主運(yùn)輸機(jī)器人可以代替人進(jìn)行貨物的分類(lèi)、搬運(yùn)和裝卸,也可以代替人來(lái)搬運(yùn)危險(xiǎn)品,從而保證工人的人身安全。隨著物聯(lián)網(wǎng)時(shí)代的到來(lái),無(wú)人駕駛汽車(chē)、無(wú)人機(jī)、自動(dòng)售貨機(jī)等產(chǎn)品的出現(xiàn),預(yù)示著人類(lèi)即將進(jìn)入一種新的生活模式。對(duì)于工作量大且繁雜的物流分揀而言,智能感知自主運(yùn)輸機(jī)器人不僅可以解放人類(lèi)的雙手,也可以推動(dòng)物流行業(yè)的發(fā)展。
機(jī)器人主要由三部分構(gòu)成,即傳感器檢測(cè)系統(tǒng)、控制系統(tǒng)、動(dòng)力系統(tǒng)。傳感器檢測(cè)系統(tǒng)包括OpenMV圖像識(shí)別模塊和超聲波以及紅外避障模塊;控制系統(tǒng)將STM32F103C8T6作為主控芯片;動(dòng)力系統(tǒng)采用L298N控制帶有編碼器的直流電機(jī)。機(jī)器人總體設(shè)計(jì)如圖1所示。
圖1 機(jī)器人總體設(shè)計(jì)
機(jī)器人利用OpenMV圖像識(shí)別模塊識(shí)別貨物的條形碼。條形碼提供貨物的路徑信息,機(jī)器人經(jīng)程序計(jì)算后規(guī)劃行進(jìn)路線。行進(jìn)過(guò)程中,圖像識(shí)別模塊實(shí)時(shí)檢測(cè)軌跡信息,STM32接收軌跡信息,通過(guò)PWM電機(jī)使機(jī)器人不偏離軌跡。紅外數(shù)字避障傳感器和US-100超聲波傳感器檢測(cè)機(jī)器人前方是否有障礙物。如果有障礙物,則根據(jù)障礙物寬度計(jì)算轉(zhuǎn)彎角度,躲開(kāi)障礙物后回到預(yù)定路線繼續(xù)工作[1-3]。
硬件原理如圖2所示。
圖2 硬件原理
OpenMV攝像機(jī)是一種小型、低功耗、低成本的電路板。它以STM32F427CPU為核心,集成了OV7725攝像機(jī),可以由Python控制。該模塊可以利用外部終端觸發(fā)或執(zhí)行算法,算法的結(jié)果可以用來(lái)控制I/O管腳。
HC-SR04超聲波模塊集成度高,穩(wěn)定性好,測(cè)量距離精確且穩(wěn)定。該模塊利用單片機(jī)的I/O觸發(fā)電平測(cè)距,單片機(jī)內(nèi)部利用普通定時(shí)器產(chǎn)生一個(gè)高電平信號(hào)之后,超聲波便可以自主發(fā)送頻率為40 kHz的方波,然后等待信號(hào)返回。若有信號(hào)返回,單片機(jī)I/O口立刻輸出高電平,利用高空作業(yè)產(chǎn)生的時(shí)間計(jì)算小車(chē)與障礙物之間的距離。
紅外發(fā)射對(duì)管中的發(fā)射管發(fā)射紅外光,機(jī)器人離前方障礙物越近,則反射紅外光越強(qiáng);紅外接收管的EC電壓接近0 V,小于LM3932腳的電壓,因此LM393輸出低電平,綠色指示燈亮。
實(shí)際使用中,紅外接收管工作在放大區(qū),即C點(diǎn)電壓在不斷變化。因此可通過(guò)調(diào)節(jié)LM3932腳的電壓來(lái)改變靈敏度。
L298N是ST公司出品的芯片,其主要特點(diǎn)是工作電壓高,最高工作電壓可達(dá)46 V,可驅(qū)動(dòng)兩臺(tái)電機(jī),由0 V電源直接調(diào)節(jié)電壓。單片機(jī)的I/O口可提供信號(hào),電路簡(jiǎn)單,使用方便。
另外,我們選取了帶有增量式編碼器的直流電機(jī)。增量式編碼器通常有2個(gè)輸出信號(hào),分別為A相和B相。每個(gè)信號(hào)都是一個(gè)由方波組成的脈沖串,A相和B相的相位差為90°。單片機(jī)在接收到A相與B相輸入后,根據(jù)接收到的相位序列確定電機(jī)轉(zhuǎn)向,根據(jù)脈沖串的頻率確定電機(jī)轉(zhuǎn)速,從而實(shí)現(xiàn)對(duì)機(jī)器人運(yùn)動(dòng)的精確控制[4-6]。
使用四輪驅(qū)動(dòng)的機(jī)器人在運(yùn)動(dòng)控制方面非常流暢,4個(gè)輪子使整體更加穩(wěn)定。麥克納姆輪相對(duì)全向輪而言,可以通過(guò)其轉(zhuǎn)速和安裝方法合成任意方向的合力,能夠讓機(jī)器人全方向移動(dòng)。80 mm超大麥輪負(fù)重可達(dá)6 kg,更好地滿(mǎn)足了基礎(chǔ)物流運(yùn)輸?shù)囊蟆?/p>
機(jī)器人整體結(jié)構(gòu)爆炸圖如圖3所示。
圖3 機(jī)器人整體結(jié)構(gòu)爆炸圖
3.1.1 底盤(pán)運(yùn)動(dòng)分解
機(jī)器人做平面運(yùn)動(dòng)時(shí)可將其分解為3個(gè)獨(dú)立分量:X軸平動(dòng)、Y軸平動(dòng)、yaw軸自轉(zhuǎn)。如圖4所示,底盤(pán)的運(yùn)動(dòng)可分解為3個(gè)量:表示X軸運(yùn)動(dòng)速度的Vtx,定義向右為正;表示Y軸運(yùn)動(dòng)速度的Vty,定義向前為正;表示yaw軸自轉(zhuǎn)角速度的,定義逆時(shí)針為正。同時(shí)這3個(gè)分量一般看作4個(gè)輪子幾何中心的速度。
圖4 麥克納姆輪車(chē)體
3.1.2 計(jì)算輪子軸心位置的速度
X、Y軸分量為vx=vtx-ω·ry,vy=vty+ω·rx。同理可以算出其他3個(gè)輪子軸心的速度。麥克納姆輪速度分解圖示如圖5所示。
圖5 麥克納姆輪速度分解圖示
3.1.3 計(jì)算輥?zhàn)铀俣?/p>
圖6 輥?zhàn)铀俣确纸鈭D示
3.1.4 計(jì)算輪子速度
從輥?zhàn)铀俣鹊捷喿愚D(zhuǎn)速的計(jì)算使用如下公式:
結(jié)合以上步驟,可以根據(jù)底盤(pán)運(yùn)動(dòng)狀態(tài)解算出4個(gè)輪子的轉(zhuǎn)速:
以上方程組為O-長(zhǎng)方形麥輪底盤(pán)的逆運(yùn)動(dòng)學(xué)模型,而正運(yùn)動(dòng)學(xué)模型可以根據(jù)逆運(yùn)動(dòng)學(xué)模型中的3個(gè)方程求解。
輥?zhàn)铀俣鹊捷喿愚D(zhuǎn)速的轉(zhuǎn)換示意如圖7所示。
圖7 輥?zhàn)铀俣鹊捷喿愚D(zhuǎn)速的轉(zhuǎn)換示意圖
系統(tǒng)主要分為兩部分,即避障和圖像識(shí)別。圖像識(shí)別又分為識(shí)別二維碼和識(shí)別路徑引導(dǎo)線。
系統(tǒng)上電進(jìn)行自檢和各個(gè)模塊的初始化,此時(shí)檢測(cè)攝像頭窗口處是否為二維碼,當(dāng)檢測(cè)到二維碼并獲取到相應(yīng)值時(shí),OpenMV識(shí)別對(duì)應(yīng)軌跡,并沿著對(duì)應(yīng)軌跡行駛。在行駛過(guò)程中,利用PID算法進(jìn)行誤差矯正,以確保機(jī)器人按照規(guī)定路線行駛。在機(jī)器人行駛的同時(shí),避障傳感器實(shí)時(shí)檢測(cè)前方是否有障礙物,在檢測(cè)到障礙物之后進(jìn)行對(duì)應(yīng)的規(guī)避處理,規(guī)避之后機(jī)器人返回之前的工作路徑繼續(xù)完成相應(yīng)工作。程序流程如圖8所示。
圖8 程序流程
機(jī)器人采用的快速線性回歸算法可以快速返回視野中一條回歸直線,并得到直線的斜率、角度或偏移的距離,然后利用直線返回的角度控制機(jī)器人運(yùn)動(dòng)。若在OpenMV視野中看到的直線為豎直的,即正前方為一條直線,只需控制兩側(cè)電機(jī)轉(zhuǎn)速相同即可;若在OpenMV視野中看到的直線為左偏,可以控制右邊電機(jī)轉(zhuǎn)速快于左邊電機(jī),向左前方向運(yùn)動(dòng)(右前方同理)。
OpenMV的二維碼識(shí)別采用四元檢測(cè)算法。同時(shí)為防止桶形畸變對(duì)識(shí)別二維碼造成的影響,我們使用OpenMV內(nèi)置的算法矯正畸變。
脈寬調(diào)制(PWM)的基本原理:其控制方式為控制逆變電路開(kāi)關(guān)通斷,用脈沖代替正弦波或所需波形。換言之,在輸出波的半個(gè)周期內(nèi)形成多個(gè)脈沖,令每個(gè)脈沖等效電壓為正弦波形并且穩(wěn)定輸出。根據(jù)一定規(guī)律改變脈沖寬度進(jìn)而改變逆變電路的輸出電壓和輸出頻率。
PID控制算法是工程實(shí)踐中應(yīng)用最廣泛的自動(dòng)控制器,其具有原理簡(jiǎn)單、穩(wěn)定性好、控制參數(shù)獨(dú)立、調(diào)整參數(shù)方便等特點(diǎn)。
對(duì)于機(jī)器人的運(yùn)動(dòng)控制采用離散位置式PID:
式中:e(k)為本次偏差;e(k-1)為上一次偏差;∑e(k)為e(k)偏差的累計(jì)和,k為1,2,...,k;Pwm代表輸出。
本文最終實(shí)現(xiàn)了智能感知自主運(yùn)輸機(jī)器人的功能,其可以通過(guò)攝像頭模塊讀取貨物條形碼并確定貨物位置,在運(yùn)輸過(guò)程中避開(kāi)機(jī)器人前方障礙物,在尋跡過(guò)程中機(jī)器人中心線不偏離標(biāo)識(shí)線且能載重2.5 kg以?xún)?nèi)的物體。
機(jī)器人在正常運(yùn)輸過(guò)程中能通過(guò)攝像頭進(jìn)行圖像識(shí)別掃描,讀出相應(yīng)信息,并且能夠自主避障。通過(guò)線的粗細(xì)以及顏色的不同辨別貨架的位置,并準(zhǔn)確到達(dá)指定地點(diǎn)。
巡線時(shí)OpenMV采集的圖像如圖9所示。
圖9 OpenMV采集的圖像
隨著電子商務(wù)的快速發(fā)展和人口紅利的消失,快遞業(yè)對(duì)快遞和包裹自動(dòng)分揀的需求越來(lái)越大。迄今為止,人力資源的需求相對(duì)企業(yè)的發(fā)展速度而言仍較慢,特別在類(lèi)似“雙十一”等時(shí)期,銷(xiāo)售量劇增將導(dǎo)致物流延遲,而中小型分揀中心無(wú)力承受傳統(tǒng)交叉帶分揀系統(tǒng)占地面積大、成本高等帶來(lái)的壓力,因此物聯(lián)網(wǎng)被應(yīng)用于越來(lái)越多的領(lǐng)域。我們始終相信,未來(lái)物聯(lián)網(wǎng)技術(shù)可以被物流行業(yè)廣泛應(yīng)用[7-10]。