姚燕,莊澤澍,詹祎,王鵬云
(北京郵電大學人工智能學院,北京 100876)
快速換裝接頭是一端與機械臂相連,另一端與末端執行器相連的特殊結構[1-2]。機械手可以通過換裝接頭實現末端執行器的快速更換,以滿足不同場景下不同任務的需求[3-4]??焖贀Q裝接頭的設計思想已廣泛應用在了生產制造、水下探索、排爆、應急搶險、破拆等多個領域的機械臂中[3-6]??焖贀Q裝接頭在空間機械臂上也有非常廣泛的應用,而空間機械臂是航天器在軌服務的核心裝備[7]。快速換裝接頭一般搭載有視覺感知系統,以獲取工具及其他部件的位姿信息[8]。著名的搭載有快換裝置的空間機械臂系統有MSS、ETS-VII[9]、EUROBOT[10]和軌道快車等[11]。
目前的機械臂系統快換裝置已具有精度高,適用范圍廣等優點,視覺技術也大量應用其中,但目前視覺技術一般用于識別和計算物體的位姿信息,而用于識別部件類型并自動更換末端工具方面的研究較少。
針對快換裝置智能化程度有待進一步提高的問題,本文設計并實現一個基于深度學習的智能機械臂末端快換裝置,從機械結構和控制系統兩方面進行了快換機械臂末端工具的設計,研究的重點是控制系統中圖像識別子系統的設計與實現,達到依據視覺處理系統自動識別部件進而控制機械手的動作。
智能機械手的機械結構主要由快換裝置和末端執行器組成。
(1)快換裝置??鞊Q裝置的上端(機械臂適配器)與機械臂相連,接頭的基體由機械臂適配器、更換模塊、固定結合模塊、工具端適配器四者組成。機械臂適配器與更換模塊通過螺釘連接。工作時,在電動機的驅動下,更換模塊中的滑塊向下直線運動,從而將4個卡塊向外推。滑塊在鎖緊工作位時,卡塊自鎖,更換模塊與固定結合模塊鎖緊。快換裝置結構如圖1所示。

圖1 快換裝置結構
(2)末端執行器。末端執行器包括剪刀和螺絲刀兩種工具。剪刀部分主要由電動機、螺母、滑塊、剪刀鉗組成。功能是剪切直徑約2 mm的導線。電動機驅動螺桿,螺母在螺桿上直線往復運動,螺母上固連一連桿與剪刀柄上的滑塊鉸接,從而將螺母的直線運動轉換為剪刀柄的擺動,實現剪切。剪刀結構如圖2 所示。

圖2 剪刀結構
電動螺絲刀末端執行器結構分為3 個部分:與中間輔助結構的連接部分、中間連接桿及外六角螺栓批頭。中間連接桿上的外螺紋在螺絲刀的旋轉下,在固定在外殼上的螺母的作用下,螺絲刀結構即可實現旋轉前進,完成擰螺栓的操作。該電動螺絲刀直接使用絲桿螺母機構完成旋轉前進的功能,結構簡單易實現。螺絲刀結構如圖3 所示。

圖3 螺絲刀結構
快速換裝機械手控制系統主要由兩部分組成,即:基于ImageAi的圖像識別子系統,由計算機實現;機械手控制子系統,主要由AVR 單片機實現。2 個子系統通過無線串口模塊相通信。系統整體結構圖如圖4所示。

圖4 系統整體結構圖
(1)圖像識別子系統。該子系統主要采用基于Tensorflow軟件的ImageAi庫實現,構建卷積神經網絡對目標工件訓練集進行訓練,并對工程中實際拍攝的圖片進行識別。圖像識別子系統通過無線串口模塊與單片機通信,根據單片機傳來的請求控制攝像頭拍攝并將識別結果回傳到單片機中。
(2)機械手控制子系統。機械手控制子系統主要由ATMEGA2560 單片機、3 個電動機、無線透傳模塊、語音輸出模塊等組成。其主要功能為:①在單片機的控制下,通過各電機的運動,實現快換裝置的緊固和松脫以及各工具頭的動作;②單片機還負責接收人機交互模塊傳來的各種控制指令、接收圖像識別子系統傳來與圖像識別有關的訊息,并對各種指令信息做出相應的反饋。
系統主程序將前述各部分綜合在一起,共同實現智能快速換裝的功能。程序控制過程如下:
(1)主循環中。在主循環的流程中:①進入待機狀態;②在檢測到啟動信號后,機械手在機械臂(或其他運動控制設備)的引導下運動到工件處;③到位后通過無線串口模塊通知圖像識別子系統拍照和識別,識別結果返回單片機。
(2)收到圖像識別子系統發來的識別結果后。單片機收到圖像識別結果后的流程:①用戶根據識別情況按下正確或錯誤按鈕,告知單片機本次識別正確與否;②機械臂將快換裝置引導到相應的末端執行器位置并與末端執行器鎖定,待鎖定完成后機械臂再次將快換裝置及末端執行器帶至工件處,執行相應的動作;③快換裝置與末端執行器解鎖,末端執行器及快換裝置歸位。
設備在循環的每一步中,都配有相應的語音輸出,用以提醒操作者當前設備狀態。
本文的圖像識別子系統采用PYTHON 語言在計算機上實現,并通過無線串口模塊與單片機進行通信。
本文分別用ResNet 和DenseNet 兩種當下主流的CNN網絡建立了算法模型,并分別進行了訓練和性能比較,選取最優模型。
ResNet網絡是一種典型的CNN卷積神經網絡,其核心思想是引入深度殘差框架有效解決了梯度消失問題,如圖5 所示ResNet 網絡通過殘差學習單元,建立前面層與后面層之間的“快捷連接”[12],一定程度上解決了網絡退化問題,從而能訓練出更深層的CNN網絡[13]。

圖5 ResNet算法殘差學習單元
DenseNet網絡是一種具有密集連接的卷積神經網絡。它的基本思路與ResNet 一致,與ResNet 的主要不同是該網絡中任意兩層之間都有直接的連接[14],而該層所學習的特征也會被直接傳給其后面所有層作為輸入,從而實現特征重用提升效率。
圖像識別子系統采用基于TensorFlow軟件便捷高效的ImageAi 庫搭建了深度學習模型,ImageAi 提供4種不同的算法模型來執行自定義預測模型訓練。將其中任意一種算法加載到imageai.Prediction.Custom.CustomImagePrediction類中,即可在任何對象/人的圖像集上訓練模型[15]。本項目分別選用ResNet網絡和DenseNet網絡進行了訓練并做了性能分析比較。
應用ImageAi庫進行自定義預測模型訓練,首先需要準備用于訓練的圖像,本項目共計收集到實際工程應用中的螺絲、電線圖片441張,訓練、測試集約按4∶1劃分。
通過調用訓練語句,對模型類別、迭代次數、訓練集位置等進行設置,即可快速高效對模型進行訓練。ResNet網絡所生成的模型共有約2 300 萬個可訓練參數,網絡結構龐大;DenseNet 網絡所生成的模型共有約700 萬個待訓練參數,網絡規模小于ResNet。
訓練次數設置為100輪,訓練程序運行在1 臺型號為ThinkPAD T460 的筆記本電腦上,其配置了英特爾i5-6200U,DDR3L8 GB 內存,操作系統為Windows10。訓練耗時約為28 h,其中ResNet 的訓練每輪時長平均為7 min,而DenseNet 的訓練每輪時長平均為10 min,長于ResNet,這是由于DenseNet 訓練過程中內存占用更多的原因所導致的,訓練所得到的模型文件是圖像識別的基礎。
通過訓練測試模型準確率結果見表1 所列。

表1 模型準確率情況匯總表
(1)ResNet 模型測試。其各指標與訓練輪數關系如圖6 所示,可見在訓練集上的準確率在30 輪訓練之后基本保持了穩定上升的趨勢,在第40 輪前后損失出現了一個提高,這使得模型參數得到了較好調整,準確率出現了約4%的上升。最終準確率可達99.0%。

圖6 ResNet模型準確率變化曲線
而測試集上的準確率在40 輪之前一直很低,在第40 輪模型訓練集準確率提高后,測試集準確率有一定上升,但在50輪左右測試集損失大幅增加,而后模型預測水平出現了飛躍,測試集準確率從54%逐步提高并穩定到了90.6%,這說明模型“學習”到了更普遍更準確地分類特征。對于為何測試集準確率會在學習率準確率保持穩定的情況下,出現大幅度的躍升,或許是由于樣本采集與分布問題,也有可能是ResNet本身特性所致,值得進一步的探究。
(2)DenseNet模型測試。其各指標與訓練輪數關系如圖7 所示,可見在訓練集上的準確率及損失在60輪訓練之后基本達到穩定,準確率可達98.6%左右,而測試集上的準確率與損失在75 輪訓練后達到穩定,準確率為85.4%,準確率略遜于ResNet網絡。

圖7 DenseNet模型準確率變化曲線
由表1 及圖6~7 可知,在相同條件下,ResNet 在準確率方面較DenseNet 更優,選擇識別性能較好的ResNet模型作為應用在圖像識別子系統上的模型。由于時間及條件限制,本文的實驗數據集規模較小,僅為441 張圖片,未達到ImageAi 推薦的每類500 張訓練圖片、100 張測試圖片的規模,這也是測試集準確率水平未進一步提高的原因。
本文圖像識別子系統中使用OPENCV 控制攝像頭對真實工件進行拍照,獲得的實際圖像用于識別。
在圖像識別子系統主程序中,首先通過serial 庫設置無線透傳模塊的串口號及波特率,建立起與單片機的通信;然后加載訓練好的模型文件,以備識別。當單片機發來請求后,根據不同請求執行拍照、識別等操作,并將結果返回單片機。在實際測試中由于抖動等原因,識別準確率尚不及測試集上的準確率。圖像識別子系統程序的流程圖如圖8 所示。

圖8 圖像識別子系統程序流程圖
本文設計并實現了一個基于Resnet 神經網絡的可快速更換末端執行器的機械手系統,并進行了訓練、圖像拍照及識別實驗,實驗結果表明,控制系統可以完成預定動作,電動機控制平穩可靠,圖像識別效果良好。后續工作將擴展除剪刀和螺絲刀外的其他末端工具,該設備預期將裝載到真實機械臂末端進行實際檢驗,從而為更好地模擬航天器艙外操作工作做好準備。