四轴六轴机械臂基础运动仿真实验(Matlab)
博主最近在學(xué)一本叫做《A Mathematical Introduction to Robotic Manipulation》的機(jī)器人學(xué)教材,并且在學(xué)習(xí)之余根據(jù)了老師的要求完成了一個仿真項目(MATLAB):
? ? ? ①inverse kinematics converge trend.
? ? ? ②In 3D space,? point P as result? of forward kinematics(color red),? and point P’ as result of step 4,? P and P’ should be coincident in theory.
?
從一個項目的角度進(jìn)行分析,我們首先應(yīng)該通覽全部要求。然后決定我們每一步應(yīng)該完成什么工作:
博主進(jìn)行分析后一步步確定要完成的步驟如下:
1.根據(jù)已知的四軸與六軸的物理參數(shù),大概設(shè)計四軸與六軸機(jī)械臂的基座位置,使其具有交集。在這過程中需要寫出各個軸的twist坐標(biāo)為了后續(xù)的運(yùn)算做準(zhǔn)備。
(為了演示的時候更加形象生動,博主使用了robotic toolbox用DH法建模,在進(jìn)行正逆解運(yùn)算時仍采用POE法)
(在計算交集區(qū)域時,采用約束方程,根據(jù)機(jī)械臂的運(yùn)動特點將其邊界提取成幾個方程,并將其解算出來。大概使用了高數(shù)下的 ? ? 內(nèi)容就足夠)
2.根據(jù)之前的twist坐標(biāo)設(shè)計一個在交集區(qū)域的P點。
約束方程如下所示:
?
3.將得到的點P放入六軸機(jī)械臂的工作空間做逆運(yùn)動解。因為博主學(xué)的是牛頓迭代法(Newton-Raphson Algorithm),因此這里用此方法求解:
首先構(gòu)建運(yùn)動學(xué)方程:
已知:
·機(jī)器人參數(shù):
·目標(biāo)點:
?
Newton-Raphon Algorithm:
a.初始化參數(shù):
b.計算當(dāng)前的關(guān)節(jié)角:
c.計算jacobian矩陣
d.計算Jacobian的偽逆解
If n≤6,
Else?
更新
e.重復(fù)以上步驟直到收斂即趨近零
?
4.將解算到的θ代入六軸的POE中,觀看P*與P是否重合。
在這個項目中重點是在于解題思路,如何將老師提的要求一步一步完成并且展示出來,而那些機(jī)械臂參數(shù)都是些可以代替的數(shù)據(jù)。(本次項目中博主使用的是李群四軸和六軸機(jī)械臂的參數(shù))
如果有需要的話我再詳細(xì)地解析這個項目。
希望大家共同進(jìn)步學(xué)習(xí)。
代碼已放到GitHub上:
https://github.com/KevinJune/robotic
總結(jié)
以上是生活随笔為你收集整理的四轴六轴机械臂基础运动仿真实验(Matlab)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 人口和生育信息统计分析BI系统简介
- 下一篇: 微服务接口设计规范