MATLAB Robotics Toolbox(Release 10)模块库--总结(一)

在MATLAB命令行窗口输入

>>robolocks

出现模块库,如下图:

MATLAB Robotics Toolbox(Release 10)模块库--总结(一)

目录

(一)Toolbox function:

1.1 SE3 operations三维空间中的操作

1.2 SE2 to SE3 二维空间转化到三维空间的操作

1.3 Trajectory generation轨迹生成

1.4 Vector utility向量的操作

 1.5Matrix utility矩阵的操作

1.6 Spacial velocity空间速度的操作


(一)Toolbox function:

MATLAB Robotics Toolbox(Release 10)模块库--总结(一) 

1.1 SE3 operations三维空间中的操作

        (SE:Structural elements结构元素,以矩阵来表示) 

        1)涉及的输入/输出参量有:

        ①T:位姿的齐次变换矩阵

        ②x,y,z:表示一组平移向量,即直角坐标系下的坐标

        ③roll:绕z轴旋转的角度,也称翻滚角

        pitch:绕x轴旋转的角度,也称俯仰角

        yaw:绕y轴旋转的角度,也称偏航角

        一个包含横滚-偏摆-俯仰角度的向量,其角度的正负有右手螺旋判定

        ④MATLAB Robotics Toolbox(Release 10)模块库--总结(一):欧拉角

        2)模块的含义:

        ①xyz2T:将一个平移向量转化为一个齐次变换矩阵

        ②rpy2T:将一个包含横滚-偏摆-俯仰角度的向量转化为一个齐次变换矩阵

        ③eul2T:将一个欧拉角向量转化为一个齐次变换矩阵

1.2 SE2 to SE3 二维空间转化到三维空间的操作

        ①xyt:二维空间的平移齐次矩阵,t为平移向量

        ②xyMATLAB Robotics Toolbox(Release 10)模块库--总结(一):二维空间下的旋转齐次矩阵,MATLAB Robotics Toolbox(Release 10)模块库--总结(一)为旋转向量

1.3 Trajectory generation轨迹生成

         1)涉及的输入/输出参量有:

        ①q、qd、qdd:点的位置坐标、坐标的一阶微分、坐标的二阶微分,即位置、速度、加速度

        ②xy:点的xy坐标

        ③在MATALB的帮助手册中(如下图可打开),查到pure pursuit模块

MATLAB Robotics Toolbox(Release 10)模块库--总结(一)

         Pure pursuit模块为:

MATLAB Robotics Toolbox(Release 10)模块库--总结(一)

        Pose:机器人的当前位姿[x y theta];

        Waypoints:n个路径点用n×2的数组表示(n个[x,y])

        LinVel:(实时更新的)线速度

        AngVel:(实时更新的)角速度

        2)模块的含义:

        ①jtraj:输出一个点沿一条五次多项式曲线运动时随时间变化的坐标及坐标的微分。

                (通常的轨迹规划限制条件有:起始终止速度,设定起点和终点位置,总的运动时间,一共5个条件,所以最容易想到的是5次多项式轨迹规划。)

        ②lspb:Linear Segment(匀速) with Parabolic(抛物线) Blends(过渡),利用抛物线生成两点之间的规划轨迹,输出随时间变化的坐标及坐标的微分。

        ③Circle:输出一个点沿圆周运动时的xy坐标。涉及的参数有圆心、半径、角频率。

        ④mstraj:多重分割(multi-segment)轨迹规划。

        ⑤pure pursuit:纯跟踪轨迹生成,输入更新的姿势pose来更新速度命令,使机器人沿着所需的一组航路点跟随路径运动。

        (常使用pure pursuit实现无人车轨迹追踪

        算法可参考:https://blog.csdn.net/adamshan/article/details/80555174

1.4 Vector utility向量的操作

MATLAB Robotics Toolbox(Release 10)模块库--总结(一)

        1)模块的含义:

        ①angdiff:计算两个输入角度的差,差值不超过2π

        ②angdiff1:在输入的角度数列中,依次与相邻角度做差

        ③tr2delta:计算T0-T1(增量运动)的微分运动

                tr:输入位姿矩阵;delta:输出增量矩阵求导后1×6维的矩阵

        ④norm:求四元数(v)的范数||v||

                补充:四元数

MATLAB Robotics Toolbox(Release 10)模块库--总结(一)

MATLAB Robotics Toolbox(Release 10)模块库--总结(一) 

 1.5Matrix utility矩阵的操作

MATLAB Robotics Toolbox(Release 10)模块库--总结(一)

          1)模块的含义:

        ①Pre multiply:输入一个齐次变换,输出位该齐次变换左乘一个常数参数

        ②Post multiply:输入一个齐次变换,输出位该齐次变换右乘一个常数参数

        ③inverse:矩阵求逆

        ④inv Jac:输入一个正方形雅克比矩阵J和一个空间速度e,输出位J-1e以及矩阵J的条件数

        ⑤PinvJac:雅可比矩阵求伪逆(1.对于方阵A,如果为非奇异方阵,则存在逆矩阵inv(A)

2.对于奇异矩阵或者非方阵,并不存在逆矩阵,但可以使用pinv(A)求其伪逆)

        输入一个雅克比矩阵J和一个空间速度e,输出位J-1e以及矩阵J的条件数

        ⑥trprint:输出该位姿的关节角度(°),(tr在工具箱中表示 位姿矩阵)

1.6 Spacial velocity空间速度的操作

MATLAB Robotics Toolbox(Release 10)模块库--总结(一)

        1)模块的含义:

        ①tr2diff:计算两个齐次变换矩阵(T1,T2)的差分 ,T为一个6元素向量,包含了齐次变换中的平移和转动的差分。

        ②pose integral:计算位姿的积分。输入各关节速度,返回位姿齐次变换矩阵

未完待续,其他模块另写ing

以上均是个人学习心得,恳请及时批评指正!

上一篇:如何在Python中多线程/多处理一个特定函数的一个实例?


下一篇:promise原理