經過一周的研究,對六自由度機械臂運動進行了研究,利用高中幾何知識進行了運動控製策略的設計,無償(chang) 貢獻出源碼,可以為(wei) 入門的小夥(huo) 伴提供一定的借鑒。
1、機械臂物理參數的介紹
買(mai) 了一個(ge) 六軸機械臂,作為(wei) 研究對象,如果是其它機械臂,可以根據機械臂參數對代碼進行修改。機械臂參數如下圖所示:
1.1 部件與尺寸
機械臂如下部件組成,描述如下表:

1.2坐標係與工作空間
機械臂坐標係為(wei) 數學直角正交坐標係,每個(ge) 電機繞著旋轉軸順時針、逆時針旋轉(正負已經標明),方向如圖1所示,機械臂通過6個(ge) 電機的旋轉運動,實現了一係列複雜的動作。
注意,由於(yu) 機械結構和設計的原因,有的電機不能進行-180°至180°的全向轉動,會(hui) 有一個(ge) 轉動的範圍(見上表),這部分沒有在python中實現。
2、機械臂運動控製原理
機械臂運動控製要解決(jue) 的核心問題是,知道物體(ti) 的位置(中心點坐標)和主方向(物體(ti) 的朝向),程序自動計算出機械臂的各關(guan) 節角度位置,將夾具準確送到抓取物體(ti) 的部位,並對準抓取位置。
2.1機械臂運動的幾何簡化
總體(ti) 思路是將機械臂的三維複雜運動簡化為(wei) 兩(liang) 個(ge) 平麵的運動,即“俯視平麵”,和“垂直平麵(本文叫R平麵)”的組合運動。如下兩(liang) 個(ge) 圖:
2.2機械臂抓手即後麵末關節的處理
普通的機械臂的控製以上就可以,由於(yu) 我手頭這個(ge) 大象機械臂比較特殊,有很多90度彎頭,而且抓手安裝後,他的落點與(yu) 上麵簡化模型就出現了偏差,因此,還需要根據這個(ge) 特點,根據實際的物體(ti) 坐標和主方向,計算出上節的理想抓手坐標點(x,y),然後就能求出全部關(guan) 節的角度了。
3、python源碼
以下是源代碼,可以直接運行,本站源碼鏈接:對六自由度機械臂的運動控製及python實現(源碼)
或關(guan) 注文末公眾(zhong) 號,免費獲取
按鍵盤"O"鍵,進入自動鼠標點擊右側(ce) 圖機械臂工作半徑範圍的地方,自動計算各關(guan) 節的旋轉坐標。
再按鍵盤"O"鍵,退出鼠標點擊計算模式,改用監盤手動操作模式,按“[”或 “]”,是J1關(guan) 節旋轉,按“w"是擴大作業(ye) 半徑,按"s"是縮小作業(ye) 半徑。
運行效果如下:
以上是幾何實現。
www.fpxing.com/hangye/UploadFiles_3492/202402/2024021416105679.zip