內容大鋼
工業機器人坐標變換計算與編程是工業機器人控制的關鍵技術,本書通過5種典型結構的工業機器人介紹坐標正變換和逆變換計算方法和程序示例。所選機器人包括6自由度和7自由度的關節式工業機器人,以及6自由度並聯工業機器人。每個程序示例都提供了詳細的坐標變換公式推導過程和完整的源程序,內容涉及機構學、解析幾何、線性代數、數值計算和電腦編程等多方面內容。程序示例使用Java語言編寫,可以在安卓操作系統平板電腦或手機上運行。本書介紹的坐標變換計算方法和程序示例也可以應用於實際的工業機器人控制系統。
本書可作為機器人工程、智能製造工程、工業自動化專業「機器人控制技術」及相近課程的本科和研究生教材,也可作為工業機器人控制系統開發人員的參考書。
作者介紹
郇極|責編:徐魯融
郇極,1953年生人,1975年于北京航空學院(北京航空航天大學前身)航空發動機工藝專業本科畢業,1982年于德國斯圖加特大學機械製造自動化專業博士畢業,1986年任北京航空航天大學製造工程系副教授,1990年任教授。長期從事機械製造自動化專業教學和研究工作,研究方向包括數控機床控制系統、工業現場匯流排技術、機器人控制技術等。在數控系統研究和開發領域曾獲得國家科技進步三等獎、機械工業部科技進步一等獎、機械工業科學技術獎一等獎(科技進步獎)、航空工業部科技進步二等獎等。著有《工業機器人模擬與編程技術基礎》《工業乙太網現場匯流排EtherCAT驅動程序設計和應用》《基於工業控制編程語言IEC 61131-3的數控系統軟體設計》等教材和專著。
目錄
前言
第1章 概述
1.1 工業機器人控制與坐標變換計算方法
1.2 本書內容與特點
1.3 編程環境和程序示例
第2章 關節式工業機器人結構和控制系統
2.16 自由度關節式工業機器人結構和控制系統
2.2 工業機器人控制系統基本原理及控制過程
2.2.1 工業機器人控制系統基本原理
2.2.2 工業機器人控制具體過程
第3章 基於幾何法的坐標逆變換計算方法和程序示例1
3.1 坐標正變換計算方法
3.2 坐標正變換程序示例1
3.2.1 創建安卓應用程序
3.2.2 創建程序參數
3.2.3 創建_coord_trans_k類
3.2.4 示常式序axis_to_space()
3.2.5 示常式序axis_to_space_op()
3.2.6 測試計算程序示例
3.3 坐標逆變換計算方法
3.4 坐標逆變換程序示例1
3.4.1 示常式序tool_uvw()
3.4.2 示常式序 space_to_axis()
3.4.3 示常式序uvwx_to_a5()
3.4.4 示常式序space_tool_to_axis()
3.4.5 測試計算程序示例
第4章 基於幾何法的坐標逆變換計算方法和程序示例2
4.1 坐標正變換矩陣
4.2 坐標正變換程序示例2
4.2.1 坐標正變換程序
4.2.2 測試計算程序示例
4.3 坐標逆變換計算方法
4.4 坐標逆變換程序示例2
4.4.1 示常式序 tool_uvw()
4.4.2 示常式序space_to_p3p()
4.4.3 示常式序get_a012()
4.4.4 示常式序get_a34p()
4.4.5 示常式序space_to_axis()
4.4.6 示常式序uvw_to_a5()
4.4.7 示常式序space_tool_to_axis(float[]pos)
4.4.8 測試計算程序示例
第5章 基於幾何法的坐標逆變換計算方法和程序示例3
5.1 坐標正變換矩陣
5.2 坐標正變換程序示例3
5.2.1 坐標正變換程序
5.2.2 測試計算程序示例
5.3 坐標逆變換計算方法
5.3.1 計算關節位置P3
5.3.2 計算關節轉角α1和α2
5.3.3 計算關節轉角α3和α4
5.3.4 計算關節轉角α5
5.4 坐標逆變換程序示例3
5.4.1 示常式序tool_uvw()
5.4.2 示常式序space_to_p3()
5.4.3 示常式序get_a012()
5.4.4 示常式序get_a34()
5.4.5 示常式序space_to_axis()
5.4.6 示常式序uvwx_to_a5()
5.4.7 示常式序space_tool_to_axis()
5.4.8 測試計算程序示例
第6章 數字迭代坐標逆變換計算方法和程序示例4/716.1坐標正變換矩陣
6.2 坐標正變換程序示例4
6.2.1 坐標正變換程序
6.2.2 測試計算程序示例
6.3 坐標逆變換計算方法
6.3.1 牛頓?拉普森迭代法
6.3.2 建立非線性方程組
6.3.3 計算雅可比矩陣和逆矩陣
6.3.4 迭代計算求解sinα0,sinα1,sinα3,sinα4,sinα5
6.3.5 求解關節轉角α6
6.3.6 多重解的選擇
6.4 坐標逆變換程序示例4
6.4.1 示常式序tool_uvw()
6.4.2 示常式序space_to_axis_sub()
6.4.3 示常式序set_t012345()
6.4.4 示常式序newton_func3()
6.4.5 示常式序set_df_ds()
6.4.6 示常式序set_df3_ds()
6.4.7 示常式序set_jacob()
6.4.8 示常式序uvwx_to_a6
6.4.9 示常式序space_to_axis()
6.4.10 示常式序space_tool_to_axis()
6.4.11 測試計算程序示例
第7章 六桿並聯工業機器人坐標變換計算方法和程序示例5
7.1 六桿並聯機器人結構參數
7.2 坐標逆變換計算方法
7.2.1 計算下平撞球鉸的位置
7.2.2 計算關節轉角
7.3 坐標逆變換程序示例5
7.3.1 機器人結構參數
7.3.2 示常式序set_trans101112()
7.3.3 示常式序pos_pt_to_6p4()
7.3.4 示常式序p4xy_to_a1()
7.3.5 示常式序pos_p4_to_a1()
7.3.6 示常式序pos_pt_to_6a1()
7.3.7 測試計算程序示例
7.4 坐標正變換計算方法
7.4.1 構建非線性方程組
7.4.2 建立雅可比矩陣
7.4.3 迭代計算
7.4.4 計算工具位置和姿態
7.5 坐標正變換程序示例6
7.5.1 示常式序axis_6a1_to_p5()
7.5.2 示常式序axis_6a1_to_pt()
7.5.3 測試計算程序示例
第8章 複合迭代坐標逆變換計算方法和程序示例6
8.1 坐標正變換矩陣和坐標正變換程序示例6
8.2 坐標逆變換計算方法
8.2.1 計算工具方向矢量
8.2.2 複合迭代計算初始參數
8.2.3 複合迭代計算
8.2.4 用牛頓?拉普森迭代法求解關節轉角α0,α1,α3
8.3 坐標逆變換程序示例6
8.3.1 示常式序tool_uvw()
8.3.2 示常式序set_t012345()
8.3.3 示常式序set_df_ds()
8.3.4 示常式序space_a45_to_a013()
8.3.5 示常式序space_to_axis()
8.3.6 示常式序uvwx_to_a6()
8.3.7 示常式序space_tool_to_axis()
8.4 測試計算程序示例
附錄
附錄A 主程序MainActivity
附錄B 程序參數源程序
B.1 常數CONST
B.2 參數ROB_PAR
B.3 靜態變數ROB_MOVE
附錄C 程序示例1的_coord_trans_k類源程序
C.1 程序示例共用的變數定義
C.2 程序示例共用的矩陣計算源程序
C.3 坐標正變換程序示例1的計算源程序
C.4 坐標逆變換程序示例1的計算源程序
附錄D 示常式序2的_coord_trans_u6類源程序
D.1 坐標正變換程序示例2的計算源程序
D.2 坐標逆變換程序示例2的計算源程序
附錄E 程序示例3的_coord_trans_u6r類源程序
E.1 坐標正變換程序示例3的計算源程序
E.2 坐標逆變換程序示例3的計算源程序
附錄F 示常式序4的_coord_trans_fn類源程序
F.1 坐標正變換程序示例4的計算源程序
F.2 坐標逆變換程序示例4的計算源程序
附錄G 程序示例5的_coord_trans_h類源程序
G.1 坐標逆變換程序示例5的計算源程序
G.2 坐標正變換程序示例5的計算源程序
附錄H 程序示例6的_coord_trans_f7類源程序
參考文獻