?

基于Arduino的智能搬運機器人的設計與實現

2024-01-18 08:17王江龍任紅衛劉敏聰吳東萍寧靜渝吳欣雨
廣東石油化工學院學報 2023年6期
關鍵詞:光敏舵機二維碼

王江龍,任紅衛,劉敏聰,吳東萍,寧靜渝,吳欣雨

(廣東石油化工學院 自動化學院,廣東 茂名 525000)

搬運機器人得到了廣泛的認可和應用,并成為現代工業領域的重要組成部分,就現階段,德國KaKU公司的搬運機器人技術最為成熟[1-3]。在多種不同類型的搬運機器人生產方面,德國KuKA公司的生產水平居于世界前茅。在國內,朱穎等[4]設計了一款單目視覺智能分揀搬運機器人,通過對攝像頭獲取的圖像進行中值濾波、去除陰影、圖像分割等預處理,結合形狀和顏色特征對物料進行識別。常浩等[5]設計了一款智能工業搬運機器人,主要通過機械手臂控制和車底部的平衡系統來解決日常工業中叉車運輸系統速度慢且不能實現多貨物的搬運問題,降低了以往搬運過程中工人意外事故發生率和物品的損壞率。鄭彩麗等[6]設計的智能搬運機器人可以根據給定的任務,適應不同的地形,同時完成物料的抓取、搬運以及將其擺放在特定位置等任務。盡管智能搬運機器人領域的研究已經取得了一定的進展,但仍存在一些亟待解決的問題。首先,以擺放順序識別目標物品的方案較少,這給自動化物品擺放和整理過程帶來了一定的困難?,F有研究往往集中在物品的抓取和搬運方面,對于物品的分類、識別和擺放順序規劃的研究相對不足。其次,機器人機身姿態校正功能不完善,這對機器人的穩定性和準確性造成了一定的影響。

基于此,本文設計了一種基于Arduino單片機的智能搬運機器人,并驗證其在自主導航和物品運輸方面的實用性和可靠性。結合視覺識別技術,使機器人能夠準確識別不同的目標物品,并根據預設的擺放順序進行合理的擺放和整理。同時,針對機器人機身姿態校正不完善的問題,改進姿態感知和控制系統,提高機器人的穩定性和精確性,以適應不同工作場景的需求。

1 控制系統硬件設計

控制系統主要由控制模塊、57步進電機、電機驅動模塊、OpenMV視覺傳輸模塊、OLED顯示模塊、光敏巡線模塊等模塊組成,其總體結構見圖1。

圖1 機器人控制系統

1)控制模塊。系統控制模塊采用Arduino Mega 2560單片機最小模塊,主要作用為對各模塊進行通信與控制和控制機器人的運行[7]。與其他Arduino板相比,Arduino Mega 2560具有更多的輸入/輸出引腳、更大的存儲器和更強大的處理能力,為復雜的運算程序與多模塊通信提供了充足的硬件條件。

2)電機驅動模塊。選用DRV8825步進電機驅動模塊來控制57步進電機,同時為了能讓機器人有更多運動方向,在車輪方面機器人采用了麥克朗姆輪。DRV8825是一種常用的步進電機驅動器,它是一種高性能、低成本的單片驅動器,能夠驅動雙極、四極和六極步進電機。麥克納姆輪是一種機器人輪式布局結構,通常用于差動驅動的移動機器人中,可以實現全向移動,它的側輪可以旋轉從而改變機器人的方向和移動速度[8]。Arduino單片機的輸出端連接DRV8825驅動板的信號端,DRV8825驅動板的輸出端連接步進電機,步進電機與驅動板的供電由電源模塊提供。機器人通過控制電機的旋轉方向和步數來控制機器人運動狀態。

3)視覺識別模塊。在視覺識別方面,采用OpenMV視覺傳輸模塊來進行二維碼識別與物料擺放順序識別,從而保證機器人能夠順利完成運輸任務。在實際使用中,先對OpenMV與uart1進行初始化,在機器人開始進行相關的識別任務時,OpenMV根據事先燒錄進的代碼對二維碼以及物料進行識別并將相關的數據通過uart1傳輸到Arduino中,Arduino根據這些數據對接下來的抓取任務進行順序規劃[9]。

4)陀螺儀模塊。選用 HWT101陀螺儀讀取機器人姿態角度。它采用MEMS技術,可以精確測量三個方向上的角速度,具有高精度、高靈敏度、低功耗等特點。Arduino通過uart3串口接受陀螺儀所讀取的機器人角度數據,并根據數據來對機器人車身姿態進行糾偏。該模塊適用于機器人行駛軌跡校正的功能。

5)循跡模塊。選用光敏模塊對場地中黑線進行識別。光敏模塊是一種基于光敏元件和信號處理電路的組合裝置,能夠將光信號轉化為電信號。具有靈敏度高、可靠性高、響應速度快、易于使用的優點,適用于機器人行駛路徑的識別。在機器人的四周分別安裝2個光敏模塊,并將這8個光敏模塊的輸出端與Arduino的信號端進行連接,Arduino通過讀取各方向的黑線識別情況與次數來判斷此時機器人行駛的距離,從而進行接下來的行動。

6)機械臂模塊。選用6個DS3120舵機與多個連接件組成六自由度機械臂,機械臂的爪子部分為自主3D打印設計,DS3120是一種數字式舵機[10]。它具有高精度、高速度、高扭矩等特點。該舵機工作電壓范圍為4.8~6.0 V,輸出扭矩為20 kg/cm,轉速為0.18 s/60°。此外,DS3120還具有防水性,適合在潮濕環境中使用。為了更方便地驅動多個舵機,采用了16路舵機控制板來控制舵機的運動,事先通過上位機將動作組錄入舵機控制板,在機器人到達指定位置后,Arduino通過uart2向舵機控制板發送調取指定動作組命令,舵機控制板收到指令后根據事先設置好的參數驅動多個舵機完成指定動作,從而使機械臂能完成物料抓取與擺放。

7)人機交互模塊。選用1.3寸OLED顯示屏模塊來顯示二維碼與物料的識別信息。OLED顯示屏模塊可以通過軟串口通信與Arduino進行數據交換。在機器人的側邊通過銅柱和螺栓進行安裝,以確保其穩定性和安全性。該顯示屏模塊可以在機器人的運行過程中實時顯示關鍵信息。通過這些信息,使用者可以更好地監控機器人的運行狀態并對此進行調試。

2 系統軟件設計

用 C 語言編寫代碼,使用Arduino IDE編譯器編程。智能搬運機器人控制系統上電后進行初始化,初始化電機、定時器、HWI101陀螺儀、OpenMV、光敏模塊、串口。隨后進入main 主函數,循環執行相關任務,系統軟件流程見圖2。

圖2 系統軟件流程

機器人啟動后,首先使用OpenMV進行視覺識別,識別到二維碼并將數據顯示在顯示器后,機器人前往原料區,識別到物料順序后,將數據發送給Arduino控制器。然后根據二維碼與物料順序的數據,將物料按照順序通過機械臂進行抓取并且放在機器人物料臺上,將3種物料搬運至放置區后,按照從原料區上層搬運至物料臺的順序將已搬到物料臺的物料搬運至放置區對應的顏色區域,將原料區的3種物料搬運至放置區后,機器人回到返回區。當機器人到達目標位置后,完成任務。

3 機械結構的設計與實現

物料運輸機器人的機械結構如圖3所示。機體主要由兩塊亞克力板、軸、驅動輪、步進電機、功能模塊、電池等組成。4個步進電機主軸分別穿過移動平臺的各側面并與麥克朗姆輪相連接,步進電機通過連接件和螺絲與底板進行連接;電池和功能模塊通過螺栓固定在移動平臺的內部。兩塊亞克力板之間用螺絲與55 mm銅柱連接,底板放置Arduino主控板、電機驅動模塊、電源模塊,頂板放置機械臂、16路舵機控制板與物料臺,機械臂、16路舵機控制板,上述模塊通過螺栓固定在平臺上,物料臺通過10 mm銅柱與螺栓固定在平臺上。機械臂由6個舵機、舵機連接件、云臺、爪子組成,通過螺栓連接,在機械臂的中間位置放置OpenMV,通過自主3D打印設計的連接件進行固定。

圖3 物料運輸小車機械結構設計

4 性能測試

機器人在執行運輸任務過程中,要求其必須能準確識別二維碼與物料信息,以及能夠精準行駛到各個區域并執行相關任務。為了更加直觀地對機器人各功能進行測試與評估,制定了一系列的性能評判標準,其機器人性能評判見表1,機械臂性能評判見表2。

表1 機器人性能評判

表2 機械臂性能評判

表3 環號及環尺寸與分數對照

為了驗證機器人是否能夠順利完成所有任務,我們特地搭建了一個測試場地,并對機器人進行了連續8輪的測試,記錄下在這8輪內機器人任務完成情況和放置物料的情況并打分,測試結果如表4、表5、表6所示。

表4 機器人測試情況

表5 機器臂物料放置得分

表6 機器人完成任務時間情況

由表4可看出,機器人能夠100%地完成所有任務,其中在識別任務中識別所需時間均低于0.5 ms,在無人干預的情況下,二維碼識別的成功率為100%,物料識別的成功率為87%,二維碼與物料擺放順序的識別結果均未出錯。由表5可看出,在機械臂執行物料抓放任務時,8次測試中機器人均能成功抓取全部物料,抓夾成功率為100%,而在物料放置方面,在滿分240分中機械臂物料放置實際總得分為224分,準確率93.3%。

由表6可看出,機器人正常完成全部任務所需時間平均在72.3 s,在第5輪中機器人為保證行駛正常而不斷校正自身姿態,從而導致最終完成時間較長,第7輪則是因環境光線導致識別耗時稍長,從而延長了最終完成時間。

綜上,機器人在大部分測試中表現出色,成功完成了所有任務。在少數測試中遇到了一些技術故障、錯誤或困難,但通過事先準備好的校正程序,機器人成功克服問題并繼續進行任務。這些測試結果為驗證機器人的正常運行提供了有益的信息,同時也提供了改進和優化的方向,比如機器人在進行識別工作時容易收到光線干擾,后續會改進其識別算法,讓其不容易受環境因素的干擾。

5 結語

智能搬運機器人設計具有精度高、安全性高、節約人力成本等優點,其關鍵技術在于循跡行駛與視覺識別方面。通過光敏模塊識別黑色循跡線的技術,可在一定程度上讓機器人實時確定自身的所在方位,同時通過陀螺儀實時監控自身姿態,保證其行駛過程的穩定性。而通過使用OpenMV識別技術,能讓機器人自主獲取物料相關信息,使得自主性大大提高,節約了人力成本。

猜你喜歡
光敏舵機二維碼
可以吃的二維碼
光固化3D打印中光敏樹脂的研究進展
二維碼
含齒隙彈載舵機的全局反步模糊自適應控制
基于dsPIC單片機的飛艇舵機控制實現
讓嚴肅的二維碼呆萌起來
基于高速同步485總線通信的多通道舵機控制器設計
基于光敏陣列直接調制的單柵式時柵位移傳感器
二維碼,別想一掃了之
α桉醇光敏氧化及抗腫瘤活性研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合