嚴(yán)遠(yuǎn)斌 宋蕾 余繼鵬 田耀鵬
關(guān)鍵詞:麥克納姆輪;視覺識(shí)別;物流機(jī)器人;機(jī)械臂
中圖分類號(hào):TP242.6 文獻(xiàn)標(biāo)識(shí)碼:A
0引言
物流是現(xiàn)代供應(yīng)鏈管理中的一個(gè)關(guān)鍵環(huán)節(jié),人們對(duì)自動(dòng)化物流系統(tǒng)的需求不斷增加。為了滿足這一需求,智能物流機(jī)器人越來越受關(guān)注,其不僅可以提高物流效率,還可以減少勞動(dòng)力成本,提供更快速和精準(zhǔn)的物流服務(wù)。傳統(tǒng)物流機(jī)器人通常采用差動(dòng)輪底盤,雖然它們可以在直線上移動(dòng),但在狹窄空間中導(dǎo)航困難,且需要進(jìn)行頻繁的轉(zhuǎn)向操作。
為了克服這些問題,本文引入了共軸麥克納姆輪底盤,這一底盤結(jié)構(gòu)允許機(jī)器人在任意方向上自由移動(dòng),而無須復(fù)雜的轉(zhuǎn)向動(dòng)作。引入這一技術(shù)旨在開發(fā)一種具有卓越機(jī)動(dòng)性和導(dǎo)航能力的物流機(jī)器人,以應(yīng)對(duì)不斷變化的物流環(huán)境。本文將詳細(xì)介紹機(jī)器人的系統(tǒng)設(shè)計(jì)、數(shù)學(xué)建模、視覺識(shí)別和導(dǎo)航算法。
1系統(tǒng)設(shè)計(jì)
1.1機(jī)械設(shè)計(jì)
機(jī)器人底盤采用共軸排布的4個(gè)麥克納姆輪,這些輪子以統(tǒng)一轉(zhuǎn)軸的形式安裝在底盤。每個(gè)麥克納姆輪都有多個(gè)滾動(dòng)輪,可以獨(dú)立驅(qū)動(dòng)。這種配置允許機(jī)器人在任意方向上自由移動(dòng),包括前進(jìn)、后退、左右移動(dòng)和旋轉(zhuǎn)。麥克納姆輪的尺寸和材料的選擇,對(duì)機(jī)器人的性能至關(guān)重要。通常,輪子的直徑和材料會(huì)影響機(jī)器人的載重能力、穩(wěn)定性和耐久性。輪子通常采用高強(qiáng)度的橡膠或聚合物材料,以提供良好的抓地力并減少地面磨損。
麥克納姆輪排布對(duì)機(jī)器人底盤運(yùn)動(dòng)的穩(wěn)定性至關(guān)重要。如圖1a所示,對(duì)橫移運(yùn)動(dòng)過程中的麥克納姆輪進(jìn)行受力分析,排布不當(dāng)?shù)?個(gè)麥克納姆輪會(huì)出現(xiàn)旋轉(zhuǎn)力矩,導(dǎo)致在進(jìn)行橫移運(yùn)動(dòng)時(shí)底盤發(fā)生旋轉(zhuǎn)。而經(jīng)過合理排布則可以將麥克納姆輪的垂直分力抵消。因此,共軸麥克納姆輪底盤應(yīng)當(dāng)使用的排布方式如圖1b所示。
1.2硬件設(shè)計(jì)
機(jī)器人硬件零部件和供應(yīng)商如表1所示。主控制單元是機(jī)器人的大腦,采用配備了i7處理器的Intel NUC工控機(jī)作為決策核心,負(fù)責(zé)執(zhí)行導(dǎo)航算法、路徑規(guī)劃、感知數(shù)據(jù)處理和任務(wù)控制;此外搭配STM32F407核心板作為執(zhí)行器核心,負(fù)責(zé)協(xié)調(diào)中間通信和控制電機(jī)實(shí)現(xiàn)決策執(zhí)行。輪組驅(qū)動(dòng)電機(jī)采用RoboMaster M3508減速直流電機(jī),配備定制FOC(磁場(chǎng)定向控制)電調(diào),最大持續(xù)功率為150 W,持續(xù)扭矩可達(dá)2.8 N.m。每個(gè)電機(jī)配備有編碼器,可精準(zhǔn)實(shí)現(xiàn)位置和速度控制。4個(gè)底盤電機(jī)都通過CAN(控制器局域網(wǎng)總線)通信與核心板進(jìn)行信息交互,該核心板還配備了IMU(慣性測(cè)量單元),可通過狀態(tài)估計(jì)較準(zhǔn)確地獲取機(jī)器人的位姿。
1.3軟件設(shè)計(jì)
控制相關(guān)的軟件必須足夠高效才能支持較高帶寬的輸入信息,因此所有軟件都是用C++編寫的。此外,ROS(機(jī)器人操作系統(tǒng))框架用于高層通信??柭鼮V波器使用IMU、電機(jī)編碼器和雷達(dá)信息完成系統(tǒng)的狀態(tài)估計(jì)。估計(jì)狀態(tài)信息與其余所需的信息都反饋到控制器??刂破骷軜?gòu)如圖2所示,控制器由位置控制器、穩(wěn)態(tài)控制器和云臺(tái)控制器3個(gè)部分組成。位置控制器驅(qū)動(dòng)機(jī)器人運(yùn)動(dòng)到指定位置;穩(wěn)態(tài)控制器控制機(jī)器人保持自平衡;云臺(tái)控制器搭配視覺識(shí)別并驅(qū)動(dòng)機(jī)械臂,完成物流的智能取放。
2數(shù)學(xué)建模
線性二次型最優(yōu)控制用于設(shè)計(jì)線性動(dòng)態(tài)系統(tǒng)的最優(yōu)控制器,以使某個(gè)性能指標(biāo)最小化。控制系統(tǒng)的設(shè)計(jì)基于狀態(tài)空間方程,并通過最小化一個(gè)線性二次型性能指標(biāo)來確定控制輸入。
2.2剛體模型
為了明確物理意義,便于數(shù)學(xué)推導(dǎo),在建立系統(tǒng)的運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)方程時(shí),忽略一些次要因素,做出如下假設(shè):①地面與驅(qū)動(dòng)輪之間的摩擦與驅(qū)動(dòng)輪速度成正比,同時(shí)忽略靜態(tài)摩擦力;②忽視電機(jī)動(dòng)力學(xué);③忽略電極電樞繞組的電感;④忽略系統(tǒng)延時(shí);⑤所有連桿與主體均是剛體。
模型由3個(gè)主體組成:2個(gè)輪子和1個(gè)倒立擺體,包含機(jī)體所有物質(zhì)組成的質(zhì)量、長(zhǎng)度和慣性等物理特性。依據(jù)動(dòng)力學(xué)和物理特性可以分別推導(dǎo)得出機(jī)器人動(dòng)能和勢(shì)能,再由下式可得出拉格朗日函數(shù)(£):
3視覺識(shí)別
3.1數(shù)據(jù)集
依靠Python爬蟲獲取數(shù)據(jù)集、依靠You-GET獲取視頻,之后使用OpenCV以幀為單位將其拆分成圖片。使用檢測(cè)程序和ROI(region of interest,感興趣區(qū)域)對(duì)數(shù)據(jù)集進(jìn)行精細(xì)化過濾和篩選。對(duì)于數(shù)據(jù)集,使用LABELMG(一種標(biāo)注工具)開源組件,人工標(biāo)注一部分先進(jìn)行訓(xùn)練以得到初步模型,再使用得到的模型對(duì)數(shù)據(jù)集進(jìn)行二次自動(dòng)標(biāo)注。
3.2圖像處理
使用??低曄鄼C(jī)獲取圖像,格式為YUYV。相機(jī)開發(fā)部分的代碼為??低暪俜降腛penCV開發(fā)程序。獲取到的圖像通過fpush函數(shù)保存在結(jié)構(gòu)體里。圖像預(yù)處理部分采用的傳統(tǒng)流程包括圖像顏色通道相減、二值化處理、形態(tài)學(xué)處理、查找輪廓。與以往不同的是,顏色通道相減的功能是通過指針來實(shí)現(xiàn)的,這在一定程度上可節(jié)省時(shí)間、加快運(yùn)行速度。
處理過程中根據(jù)顏色特征對(duì)原始圖片進(jìn)行色彩通道分離,在此基礎(chǔ)上進(jìn)行二值化處理得到二值圖像并對(duì)圖片進(jìn)行形態(tài)學(xué)操作以排除部分噪聲干擾、完成區(qū)域聯(lián)通。利用Findcontours函數(shù)取得處理后結(jié)果輪廓。對(duì)輪廓初步篩選后進(jìn)行擬合返回,其中包含識(shí)別物體的基本信息。
3.3位置解算
位置解算主要為通過SolvePnP函數(shù)測(cè)量已經(jīng)匹配好的物體與機(jī)械臂之間的距離。相機(jī)的標(biāo)定文件由MATLAB中的相機(jī)標(biāo)定程序完成。除了SolvePnP函數(shù),在距離較遠(yuǎn)時(shí),還會(huì)使用小孔方式測(cè)距。通過計(jì)算可將物體與機(jī)械臂的位置轉(zhuǎn)換成云臺(tái)與機(jī)械臂的運(yùn)動(dòng)角度,再將解算后的信息輸入到云臺(tái)控制器。
4導(dǎo)航算法
GMapping(基于網(wǎng)格映射的地圖構(gòu)建)是一種用于構(gòu)建環(huán)境地圖的概率機(jī)器人地圖建模算法,通常用于移動(dòng)機(jī)器人和自主導(dǎo)航系統(tǒng),其基于激光傳感器數(shù)據(jù)的SLAM(同時(shí)定位與地圖構(gòu)建)算法。其主要目標(biāo)是通過分析機(jī)器人的傳感器數(shù)據(jù),特別是激光掃描數(shù)據(jù),來建立環(huán)境的網(wǎng)格地圖,同時(shí)定位機(jī)器人在該地圖中的位置。
機(jī)器人通過ROS接口從中獲取激光雷達(dá)和IMU的數(shù)據(jù),IMU傳感器獲取數(shù)據(jù)的幀率為100Hz,激光雷達(dá)獲取點(diǎn)云數(shù)據(jù)的幀率為10 Hz。由于激光雷達(dá)完成一幀點(diǎn)云的掃描需要一定時(shí)間,而在這段時(shí)間內(nèi)機(jī)器人會(huì)發(fā)生運(yùn)動(dòng),導(dǎo)致獲取到的點(diǎn)云數(shù)據(jù)缺乏一致性,被稱為點(diǎn)云畸變。在實(shí)際應(yīng)用中,需要對(duì)點(diǎn)云進(jìn)行去畸變處理。所以在每次接收點(diǎn)云數(shù)據(jù)之前,先利用IMU的數(shù)據(jù)進(jìn)行機(jī)器人的狀態(tài)遞推,在接收到點(diǎn)云數(shù)據(jù)之后,再利用遞推得到的狀態(tài)(旋轉(zhuǎn)和平移)對(duì)點(diǎn)云進(jìn)行畸變?nèi)コ?,然后將去除畸變后的點(diǎn)云與地圖進(jìn)行匹配,最后進(jìn)行IEKF(迭代擴(kuò)展卡爾曼濾波器)的更新。
選取一個(gè)在停車場(chǎng)中通過Livox Avia雷達(dá)采集的點(diǎn)云和IMU數(shù)據(jù)集以及該停車場(chǎng)的地圖來測(cè)試定位算法,數(shù)據(jù)集中激光雷達(dá)數(shù)據(jù)的幀率為10 Hz,IMU數(shù)據(jù)的幀率為200 Hz,時(shí)間跨度為800 s。因?yàn)橥\噲?chǎng)和物流倉庫都是高度結(jié)構(gòu)化的室內(nèi)環(huán)境且存在一定對(duì)稱性,所以能夠較好地驗(yàn)證算法的可行性。
在給定數(shù)據(jù)集的粗略位姿后,進(jìn)行位姿的初始化,初始化結(jié)果如圖4所示??梢钥闯霎?dāng)前幀的點(diǎn)云與地圖具有很好的重合度,代表位姿初始化成功。通過進(jìn)行多次仿真并對(duì)每次記錄的數(shù)據(jù)分別計(jì)算偏航角誤差的最大值、偏航角的均方根誤差、位置距離誤差的最大值以及位置距離的均方根誤差,發(fā)現(xiàn)最終的評(píng)價(jià)結(jié)果滿足設(shè)計(jì)的指標(biāo)要求。
5結(jié)論與展望
本文設(shè)計(jì)了一款基于共軸麥克納姆輪的智能物流機(jī)器人,該機(jī)器人采用了共軸麥克納姆輪技術(shù),搭配視覺識(shí)別和SLAM導(dǎo)航定位算法,能夠?qū)崟r(shí)獲取各類傳感器數(shù)據(jù),并且對(duì)周圍環(huán)境進(jìn)行感知和運(yùn)動(dòng)。未來,隨著共軸麥克納姆輪技術(shù)的不斷發(fā)展和創(chuàng)新,還會(huì)出現(xiàn)更先進(jìn)的感應(yīng)技術(shù)、更強(qiáng)大的人工智能和更靈活的機(jī)器人設(shè)計(jì),這些都將進(jìn)一步提高物流效率和可持續(xù)性。隨著技術(shù)的不斷演進(jìn),從生產(chǎn)線到醫(yī)療保健,從城市交通到危險(xiǎn)環(huán)境,智能物流機(jī)器人都具有廣泛的應(yīng)用前景。