Matlab Robotic Toolbox V9.10工具箱(四):常用函数
生活随笔
收集整理的這篇文章主要介紹了
Matlab Robotic Toolbox V9.10工具箱(四):常用函数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
機器人工具箱 V9.10 有很多函數,對于一般的簡單進行建模、仿真常用的函數如下:
建立機器人:
LinkSerialLink. nameSerialLink. plotSerialLink.display運動學:
SerialLink.A s = R.A(jlist, q) %返回 jlist 關節的齊次矩陣,關節變量為 qSerialLink.trchainSerialLink.getposq = R.getpos(), %返回圖形中機器人在當前位置是的各關節角度SerialLink.fkineT = R.fkine(q, options),%求正運動學,options 可設置為‘deg’逆運動學:
SerialLink.ikine6sq = R.ikine6s(T),%求帶有球形腕的六自由度機器人逆運動學SerialLink.ikineq = R.ikine(T) %逆運動學q = R.ikine(T, q0, options),%逆運動學,可用于大于或等于6關節的機器人SerialLink.ikine3q = R.ikine3(T), %求沒有腕關節的機器人(三自由度)逆運動學SerialLink.ikine_symq = R.IKINE SYM(k, options),%求末端位姿矩陣為symbolic matrix 類型的逆運動學雅可比矩陣:
SerialLink.jacob0j0 = R.jacob0(q, options),%求雅可比矩陣,在世界坐標系下V = j0*QDSerialLink.jacobnjn = R.jacobn(q, options),%求雅可比矩陣,在末端操作器空間中V = jn*QDSerialLink.jacob_dotjdq = R.jacob_dot(q, qd),%求雅可比矩陣的微分XDD = J(q)QDD + JDOT(q)qd動力學:
SerialLink.paytau = R.PAY(w, J),%根據末端負重w和雅可比矩陣j,求關節力tau = R.PAY(q, w, f),%根據末端負重w和關節變量為q雅可比矩陣,求關節力。f=0,世界坐標系。f=1,末端關節坐標系。tau = J'wSerialLink.paycap[wmax,J] = R.paycap(q, w, f, tlim),%求關節變量為q,有效負荷為w,關節能承受的參考力為tlim時,末端允許的最大力 wmax,和此時達到力極限的關節JSerialLink.payloadR.payload(m, p),%在末端關節坐標系下,坐標為p處,添加質量為m的負荷SerialLink.dyn ,%返回動力學參數SerialLink.rnetau = R.rne(q, qd, qdd),%逆動力學,達到預定的(q, qd, qdd),所需要的力tautau = R.rne(q, qd, qdd, grav, fext),%逆動力學,達到預定的q, qd, qdd),重力加速度為grav,末端受力為fext,各關節所需要的力tauSerialLink.fdyn[T,q,qd] = R.fdyn(T, torqfun)%時間[0,T], 返回時間、位置、速度,關節初始位置和速度為0。關節上的力矩用戶提供的函數提供:TAU = TORQFUN(T, Q, QD)%力矩是時間、位置、速度的函數。[ti,q,qd] = R.fdyn(T, torqfun, q0, qd0)在力矩函數中,可以自定義參數:
[T,q,qd] = R.fdyn(T1, torqfun, q0, qd0, ARG1, ARG2, ...)
TAU = TORQFUN(T, Q, QD, ARG1, ARG2, ...)
例如,對PD 控制
function tau = mytorqfun(t, q, qd, qstar, P, D)
tau = P*(qstar-q) + D*qd;
調用格式為:
[t,q] = robot.fdyn(10, @mytorqfun, qstar, P, D)
總結
以上是生活随笔為你收集整理的Matlab Robotic Toolbox V9.10工具箱(四):常用函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器人动力学建模实例:二连杆机械臂
- 下一篇: 机器人动力学建模实例(二):三连杆机械臂