机器人学
文章平均质量分 85
xuuyann
国家一级退堂鼓表演艺术家。
知乎:OpenRobotSL
邮箱:neuxuyan@163.com
展开
-
机器人运动学标定:基于考虑约束的指数积的运动学标定方法——只需要测量位置,避免冗余约束
只需要测量位置,避免冗余约束原创 2022-11-22 21:41:06 · 16384 阅读 · 3 评论 -
双臂Matlab仿真建模:正运动学
双臂Matlab仿真建模原创 2020-10-11 21:38:50 · 9206 阅读 · 22 评论 -
机器人轨迹规划:On-Line Trajectory Generation in Robotic System关于机器人运动控制的介绍翻译
本章介绍了在线轨迹生成(OTG)及其与机器人技术领域的(多)传感器集成和基于传感器的控制的关系。原创 2022-10-27 11:11:09 · 2070 阅读 · 0 评论 -
机器人运动规划:TOPP轨迹后处理开源方案基础版整理
什么是TOPP?为啥要TOPP?原创 2022-10-23 14:37:57 · 6006 阅读 · 1 评论 -
机器人轨迹规划中经常用到的曲线特性小结:Cn连续与Gn连续、Frenet标架、曲率和挠率
Cn连续与Gn连续、Frenet标架、曲率和挠率原创 2022-10-13 17:29:39 · 2342 阅读 · 0 评论 -
机器人运动学标定:基于DH建模方法
运动学标定这种很基础的问题,理论已非常成熟了,基于激光或拉线编码器的标定系统也已经商业化了。我们在接触这块知识的时候,除了理论,也应该关注于如何融合理论与实践之间的gap.原创 2022-10-09 18:46:20 · 3416 阅读 · 9 评论 -
机器人运动学标定:基于公垂线模型的指数积标定——减少标定参数,避免过度约束
基于公垂线模型的指数积标定算法原创 2022-10-06 17:29:55 · 1757 阅读 · 0 评论 -
机器人运动学标定:基于指数积的串联机构运动学标定
(建议阅读本文前,了解并熟悉旋量物理意义及旋量建模原理)由Chasles定理可知,任一刚体运动作为螺旋运动对应于某个旋量,所以基于指数积公式的误差模型具有完整性;另一方面,从李代数到李群的指数映射是光滑映射,保证了基于指数积公式的误差模型具有连续性。因此采用指数积公式得到的误差模型具备完整性和连续性,这有利于误差模型法参数辨识。若能推导出具有显式表达式的误差模型,则可为分析参数的冗余性提供基础。原创 2022-09-21 17:25:25 · 2098 阅读 · 2 评论 -
使用奇异值分解的最小二乘刚性配准方法
求解两组点集之间的刚体变换转载 2022-04-08 16:03:52 · 788 阅读 · 0 评论 -
机器人轨迹规划:简单的笛卡尔空间/关节空间轨迹规划方案
1.关节空间同步运动2.如何处理运动过程中的平滑性问题3.空间任意曲线速度规划4.考虑到运动特性,从加加速度规划出发也能获得较好的运动特性5.jerk,torque以及snap约束6.通过原始离散数据进行拟合,然后重新进行速度规划7.笛卡尔空间数据拟合8.空间曲线过渡9-1.混合空间过渡9-2.关节空间自适应过渡10.连续姿态全原创 2021-03-25 22:36:44 · 15253 阅读 · 11 评论 -
机器人轨迹规划:求解样条曲线长度——自适应辛普森公式求积分
写在前面挖个坑~在样条学习过程中遇到了积分求解样条长度的问题,一般曲线长度的求解可以采用对速度积分的方式,但如果直接由速度解析表达式计算路径长度非常困难,尤其当表达式复杂的时候,对于计算机编程而言非常不友好。为此,可通过数值积分的方式对表达式进行近似积分,常见方法有复合梯形积分、复合辛普森积分。下面尝试采用自适应辛普森公式,先简单用matlab测试一下~自适应辛普森公式求积分matlab简单测试代码如下% 自适应辛普森求积分% https://blog.csdn.net/frosero/art原创 2021-03-17 21:27:23 · 3714 阅读 · 7 评论 -
转载:角速度与旋转矩阵的转换关系及思考
角速度与旋转矩阵的转换关系及思考转载 2021-02-07 14:25:23 · 2007 阅读 · 0 评论 -
机器人运动规划:时间最优轨迹研究(挖坑版)
挖坑博客原创 2020-09-08 20:39:47 · 4496 阅读 · 3 评论 -
机器人学回炉重造(1-3):旋转矩阵转轴角、轴角转旋转矩阵
先看书了解一下等效转轴与等效转角下面是笔记记录部分像确定四元数一样,确定轴和角度也只能直到符号为止。即,(u,θ)和(-u,-θ)对应于相同的旋转矩阵,就像q和-q一样。此外,轴角提取还有其他困难。角度可以限制为0°至180°,但是角度在形式上是360°的倍数不明确。当角度为零时,轴是不确定的。当角度为180°时,矩阵变得对称,这对提取轴有影响。在接近180°的倍数时,需要注意避免数值问题:在提取角度时,atan2(sinθ,cosθ)等于θ的两参数反正切可避免arccos的不敏感性;在计算轴的大小以原创 2020-07-30 19:43:59 · 3857 阅读 · 1 评论 -
三维旋转矩阵 左乘和右乘分析
突然发现自己被旋转矩阵的左乘右乘给搞糊涂了,查了不少博客还是有点晕,这里自己总结一下:本文所讨论均是基于右手坐标系,旋转也是以正方向旋转,如图所示:左乘: 坐标系不动,点动,则左乘。【若绕静坐标系(世界坐标系)旋转,则左乘,也是变换矩阵乘坐标矩阵;】右乘: 点不动,坐标系动,则右乘。【若是绕动坐标系旋转(自身建立一个坐标系),则右乘,也就是坐标矩阵乘变换矩阵】由于三维旋转可以分解成分别绕三个轴旋转,然后其实就是二维旋转了。为了方便,这里就使用二维旋转举例。比如绕z轴旋转 theta 角度;左乘转载 2020-07-17 19:24:43 · 4389 阅读 · 0 评论 -
机器人轨迹规划:三次样条曲线
机器人轨迹规划:三次样条曲线写在前面在一些避障的应用场景下,一般都是先在任务空间中对多轴机械臂的末端进行路径规划,得到的是末端的运动路径点数据。这条轨迹只包含位置关系,并没有告诉机器人应该以怎样的速度、加速度运动,这就需要进行带时间参数的轨迹规划处理,也就是对这条空间轨迹进行速度、加速度约束,并且计算运动到每个路点的时间,高级的算法有TOPP等,一般的呢就是贝塞尔、三次准/非/均匀B、五次及三...原创 2020-05-05 22:47:25 · 14921 阅读 · 19 评论 -
机器人学中的微分运动
文章目录写在前面坐标系的微分运动微分平移绕参考轴xyz的微分旋转绕一般轴q的微分旋转坐标系的微分变换微分运动算子:相对于固定参考坐标系、相对于自身坐标系写在前面微分运动指机构(例如机器人)的微小运动,可以用它来推导不同部件之间的速度关系。依据定义,微分运动就是微小的运动。因此,如果能够在一个很小的时间段内测量或者计算这个运动,就能得到速度关系。为啥想讲讲这个微分运动呢,其实我的目的很简单,和...原创 2020-01-27 22:38:55 · 4651 阅读 · 6 评论 -
机器人学回炉重造(2-4):运动学奇异位型分析
文章目录什么是运动学奇异位型?例子:平面二连杆机械手的奇异位型奇异位型解耦腕部奇异位型手臂奇异位型参考文献什么是运动学奇异位型?在初步系统地了解了机器人正逆运动学、雅可比矩阵相关知识后,下面来分析运动学的奇异性问题。准备知识:机器人学回炉重造(2-2):雅可比矩阵的求法——矢量积法、微分变换法、Manipulator Jacobian(Jacobian for short)机械手微分运动...原创 2020-01-17 23:47:40 · 9099 阅读 · 0 评论 -
机器人学回炉重造(1-2):各种典型机械臂的正运动学建模(标准D-H法)
写在前面本文所有机械臂均采用标准D-H建模法,该方法的建立过程可参考机器人学回炉重造(1):正运动学、标准D-H法与改进D-H法的区别与应用(附ABB机械臂运动学建模matlab代码)三连杆平面机械臂坐标系建立如下图所示。其实这图有些误导人,不会出错的建模是在将各个关节变量角θi\theta_iθi均置0 的情况下进行的,也就是图中红线画的那样。D-H坐标参数如下表所示。Li...原创 2019-12-29 21:09:30 · 8048 阅读 · 2 评论 -
机器人学回炉重造(2-3):基本雅可比矩阵与其他雅可比矩阵
基本雅克比矩阵定义用笛卡尔坐标描述线速度(linear velocity)和角速度(angular velocity)、以** 机械臂的基坐标系(Base frame或frame{0}) **作为参照系来描述end effector速度所求得的雅可比矩阵,称为基本雅可比矩阵;其它所有表示方法(比如将笛卡尔坐标改为柱坐标、球坐标;角度改为欧拉角或四元数quaternion等)都可由这个基本雅可比...原创 2019-12-23 21:30:18 · 5841 阅读 · 2 评论 -
机器人学回炉重造(2-2):雅可比矩阵的求法——矢量积法、微分变换法、Manipulator Jacobian(Jacobian for short)
写在前面断更了俩月,找工作加毕业论文,心塞心塞,忙里偷闲还是得总结学习一下~关于雅克比矩阵,其重要性不言而喻。说实话,踩了挺多坑的,看了许多教材和文献,都没有统一求法(也可能是我道行较浅学艺不精没看出来= = ),主要是没有统一建模的方法,导致标准D-H法有自己的雅克比矩阵求法,改进D-H法也有自己相应的求法。这里只是做个简单的总结分类,没有讨论两种模型对应方法之间的互换关系,本质上都是一样的...原创 2019-11-29 22:21:31 · 11997 阅读 · 5 评论 -
S曲线C语言实现,利用robomodule+STM32F429+直流伺服电机进行简单验证
之前我一直用的板子是stm32f407的,电机驱动程序也是基于该芯片的,所以换成429之后首先需要进行程序移植,主要是CAN通讯的程序有些许区别。(1)f407的主频为168MHz,而f429的主频为180MHz,要修改 CAN 的 CAN_BSx 寄存器,使主控程序上的波特率为1M,可按如下表格进行修改设置:(2)GPIO时钟树发生改变,引脚复用映射配置发生改变。总的CAN通讯初始化配置...原创 2019-07-08 21:54:01 · 5392 阅读 · 9 评论 -
机器人学回炉重造(5-1):关节空间规划方法——多项式轨迹(三次多项式、五次多项式、抛物线轨迹)
三次多项式具有中间点路径的三次多项式轨迹五次多项式例子1:简单三次曲线和五次曲线(a)是三次多项式曲线,已知用户指定初始点和终止点的位置和速度及整个运动时间,则根据公式(7-1)~(7-5)进行计算,代码及运算结果如下% 单关节多项式关节空间轨迹%% 三阶多项式theta(t) = a0 + a1*t + a2*t^2 + a3*t^3% 指定初始和终止点的位置theta_s...原创 2019-07-03 11:05:56 · 25746 阅读 · 21 评论 -
机器人学回炉重造(1):正运动学、标准D-H法与改进D-H法的区别与应用(附ABB机械臂运动学建模matlab代码)
写在前面书读百遍,其义自见。要想当一名合格的机器人工程师,机器人学就是base_link,看多少遍就不为过。现在回炉重造一下,记录一下学习笔记(以照片形式,打公式太费劲了),防止以后笔记本不见了。原创 2019-06-11 20:00:38 · 33204 阅读 · 28 评论 -
机器人学回炉重造(3):matlab复现最基本的六自由度机械臂逆运动学推导
写在前面本文使用改进D-H参数法建立模型,使用的是前面ABB机械臂模型,正运动学建模过程可见前面博客。我使用最一般的矩阵逆乘解析法来求解六自由度机械臂的运动学逆解,过程仅供参考。推导过程Matlab仿真程序% 适用于Modified DH参数法function ik_T = myikine(fk_T)d(1) = 0; a(1) = 0;d(2) = 0.090; a(2) ...原创 2019-06-20 21:06:52 · 13036 阅读 · 5 评论 -
机器人学回炉重造(2-1):雅可比矩阵的定义
写在前面我是把讲义以及笔记上的内容原封不动的搬过来,做个记录保存,不喜勿看。实现代码在最后面。前文提到机器人的正运动学,实现代码是直接使用matlab里的机器人工具箱。下面我用matlab自写一个求正运动学齐次变换矩阵的代码:function T0 = myforward(theta)% Modified D-H参数th(1) = theta(1); d(1) = 0; a(1) = 0...原创 2019-06-14 20:09:50 · 6365 阅读 · 15 评论 -
五自由度机械臂正逆运动学算法(C语言+Matlab)
/* * MyMatrix.h * * Created on: Jul 13, 2019 * Author: xuuyann */#ifndef HEADER_MYMATRIX_H_#define HEADER_MYMATRIX_H_typedef struct MNode *PtrToMNode;struct MNode{ int row; int col...原创 2019-07-13 21:13:24 · 28906 阅读 · 54 评论 -
机器人学回炉重造(5-2):关节空间规划方法——梯形加减速(与抛物线拟合的线性函数)、S型曲线规划
写在前面前面的几种多项式规划方法机器人学回炉重造(5):关节空间规划方法——多项式轨迹(三次多项式、五次多项式、抛物线轨迹)都存在没有最大速度和最大加速度限制的问题,当机械系统存在速度和加速度范围时,上述方法就不太适合。下面的梯形加减速和S型曲线就不会存在这种问题。梯形加减速(与抛物线拟合的线性函数)梯形曲线在电机控制中经常被用到,因为其速度曲线形状为梯形,因此被称为梯形速度曲线。一般情况...原创 2019-11-15 10:16:19 · 22032 阅读 · 34 评论 -
机器人学回炉重造(4):动力学仿真(附牛顿-欧拉递归逆动力学算法matlab代码)
写在前面动力学问题,简单来看,主要由两个问题组成:已知一个轨迹点theta、theta_d、theta_dd,希望求出期望的关节力矩tau,这个问题及相应公式对机械臂的控制问题非常有用;已知一个力矩矢量tau,计算出机械臂各关节的瞬态运动变量theta、theta_d、theta_dd,这个问题对机械臂的运动仿真及控制非常有用。准备知识:运动学 机器人学回炉重造(1):正运动学、标准...原创 2019-06-30 12:01:42 · 22291 阅读 · 121 评论 -
基于抛物线过渡(梯形加减速)的空间直线插补算法与空间圆弧插补算法(Matlab)
写在前面机械臂用的是五自由度的,我测试时发现逆解精度存在一些问题,目前还没找到是求解析解时出错还是编程过程有问题,还是算法本身考虑不周到,欢迎有研究过的大神们批评指正!感谢~常规插补算法假设机器人末端由P1点沿直线运动到P2点,(x1,y1,z1)\left(x_{1}, y_{1}, z_{1}\right)(x1,y1,z1)和(α(1,β1,γ1)\left(\alpha(_{...原创 2019-07-23 19:29:14 · 17001 阅读 · 77 评论 -
五自由度diy机械臂空间插补算法(直线和圆弧)简单测试
/* * simple_space_interpolation.h * * Created on: Jul 18, 2019 * Author: xuuyann *//* * 简单的空间插补程序:目前只更新空间直线插补和空间圆弧插补程序 * 传统插补方法+梯形加减速归一化处理 * 归一化因子采用抛物线过渡的线性函数(梯形加减速), * 以保证整段轨迹上的位移和速度都...原创 2019-07-25 21:38:56 · 10063 阅读 · 15 评论 -
基于带约束S型加减速曲线的空间直线插补与空间圆弧插补算法(Matlab)
写在前面在前面的博文中:基于抛物线过渡(梯形加减速)的空间直线插补算法与空间圆弧插补算法(Matlab)基于单位四元数的姿态插补(Matlab)我使用了抛物线过渡(也就是梯形加减速)作为空间插补算法的速度规划方法,但是梯形曲线的缺点也很明显,即加速度不连续,速度过渡不平滑,容易造成机械系统冲击。下面我尝试了S型加减速曲线的规划方法并结合到空间插补算法中,仿真效果还可以,加速度曲线连续,更柔...原创 2019-08-03 21:59:31 · 16653 阅读 · 48 评论 -
基于S型曲线的连续多段曲线插补平滑过渡的规划算法(Matlab)
基于S型曲线的连续多段曲线插补平滑过渡的规划算法(Matlab)写在前面前面的博客已经写了关于空间直线与空间圆弧的常用插补算法,而这些都是单一路径,实际中并不实用。对于连续多段路径,传统方法是将多段路径细分,然后对每段路径采用首尾速度为0的加减速算法(S型曲线或梯形曲线),这就带来了频繁启停的问题,容易对机械臂造成冲击,同时运行时间较长。下面我把前面博客中提到的非对称S型加减速算法与空间中多...原创 2019-08-08 22:18:12 · 18651 阅读 · 83 评论 -
基于单位四元数的姿态插补(Matlab)
写在前面在我前面的博文基于抛物线过渡(梯形加减速)的空间直线插补算法与空间圆弧插补算法、五自由度diy机械臂空间插补算法(直线和圆弧)简单测试中出现姿态奇异性问题,这主要是由于我选用的RPY角姿态表达方法在β角等于±90°时姿态解算会出现奇异现象,剩下两个自由度会退化,α角和γ角会变成一个角。为解决这个问题,我换用单位四元数来对姿态进行表达。结果显示能够解决奇异性问题:机器人姿态表达机器...原创 2019-08-01 22:15:38 · 8818 阅读 · 13 评论 -
基于MATLAB机器人工具箱的KUKA youBot机械臂运动学建模——DH法
以实验室的KUKA youBot五自由度机械臂为切入点,记得当时和实验室的同学在这上面花费了好长时间,最后也没搞定,而这又算是基础中的基础,不能忽视。DH一般分为标准DH和改进的DH,以John J.Craig的《机器人学导论》来说,它的是Modified DH,另一本孙富春翻译的《机器人学导论——分析、控制及应用》则是用的标准DH。通过Peter Corke的那本《Robotics,Vision...转载 2019-04-13 10:25:18 · 3044 阅读 · 0 评论