嚴遠斌 宋蕾 余繼鵬 田耀鵬



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