展翅飞翔mxq
码龄10年
关注
提问 私信
  • 博客:156,789
    156,789
    总访问量
  • 23
    原创
  • 837,626
    排名
  • 147
    粉丝
  • 1
    铁粉

个人简介:机器人算法工程师 机械臂运动学、动力学算法 轨迹规划 离线仿真 移动机器人运动控制、matlab仿真 C、C++、linux、ROS

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
  • 加入CSDN时间: 2014-10-10
博客简介:

展翅飞翔mxq的博客

博客描述:
机器人算法工程师,擅长领域:机械臂运动学、动力学算法 轨迹规划 离线仿真 matlab仿真 移动机器人运动控制 C/C++、linux、ROS
查看详细资料
个人成就
  • 获得154次点赞
  • 内容获得32次评论
  • 获得978次收藏
  • 代码片获得283次分享
创作历程
  • 1篇
    2020年
  • 4篇
    2019年
  • 18篇
    2018年
成就勋章
TA的专栏
  • C/C++
    17篇
  • Matlab
    1篇
  • Linux
  • ROS
  • 机器人学
  • 运动学
    4篇
  • 动力学
  • 轨迹规划
  • 离线仿真
  • 算法
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

342人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

C++学习笔记——多态与虚函数

虚函数作用:通过基类指针只能访问派生类的成员变量,但是不能访问派生类的成员函数。为了让基类指针能够访问派生类的成员函数,C++ 增加了虚函数(Virtual Function)。使用虚函数非常简单,只需要在函数声明前面增加 virtual 关键字。虚函数的使用要点:只需要在虚函数的声明处加上 virtual 关键字,函数定义处可以加也可以不加。为了方便,你可以只将基类中的函数声明为虚函数...
原创
发布博客 2020.11.24 ·
436 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

C++学习笔记——继承与派生

继承与派生定义C++ 中的继承是类与类之间的关系:继承(Inheritance)可以理解为一个类从另一个类获取成员变量和成员函数的过程。派生(Derive)和继承是一个概念,只是站的角度不同,可以理解为被另一个类获取成员变量和成员函数;派生类除了拥有基类的成员,还可以定义自己的新成员,以增强类的功能。例如: Quaternion类继承了QuadWord类,当创建一个Quaternion类型的对...
原创
发布博客 2019.10.15 ·
408 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

C++学习笔记——类和对象

类和对象类是创建对象的模板,一个类可以创建多个对象,每个对象都是类类型的一个变量;创建对象的过程也叫类的实例化。每个对象都是类的一个具体实例(Instance),拥有类的成员变量和成员函数。与结构体一样,类只是一种复杂数据类型的声明,不占用内存空间。而对象是类这种数据类型的一个变量,或者说是通过类这种数据类型创建出来的一份实实在在的数据,所以占用内存空间;所以在定义类时不能对成员变量进行初始化...
原创
发布博客 2019.09.20 ·
372 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

VS Code 配置、编译、运行C/C++程序基本操作

1.下载安装VS codehttps://code.visualstudio.com/Download2.安装C/C++编译环境(MinGW-w64)https://sourceforge.net/projects/mingw-w64/点击下载,并安装。注意:MinGW和MinGW-w64是两个不同的项目,我们安装的是后者!注意与红色框内选择一致即可,点击Next继续安装。点击...
原创
发布博客 2019.01.18 ·
6062 阅读 ·
2 点赞 ·
1 评论 ·
30 收藏

C语言学习笔记——指针、数组作为函数参数传递的方式

指针作为函数参数传递一维数组C 语言中声明了一个数组TYPE array[n],则数组名称array 就有了两重含义:第一,它代表整个数组,它的类型是TYPE[n];第二,它是一个常量指针,该指针的类型是TYPE*,该指针指向的类型是TYPE。因此,指针作为函数参数传递一维数组有4种形式:#include <stdio.h>#define N 3float average...
原创
发布博客 2019.01.03 ·
12979 阅读 ·
16 点赞 ·
1 评论 ·
86 收藏

MATLAB机器人工具箱6轴机械臂DH建模仿真

1、SDH建模仿真:L1 = Link('d', 0, 'a', 0, 'alpha', pi/2);L2 = Link('d', 0, 'a', 0.5, 'alpha', 0,'offset',pi/2);L3 = Link('d', 0, 'a', 0, 'alpha', pi/2,'offset',pi/4);L4 = Link('d', 1, 'a', 0, 'alpha', -...
原创
发布博客 2018.12.25 ·
25825 阅读 ·
21 点赞 ·
7 评论 ·
297 收藏

MATLAB机器人工具箱6轴机械臂DH建模仿真

1、SDH建模仿真:L1 = Link('d', 0, 'a', 0, 'alpha', pi/2);L2 = Link('d', 0, 'a', 0.5, 'alpha', 0,'offset',pi/2);L3 = Link('d', 0, 'a', 0, 'alpha', pi/2,'offset',pi/4);L4 = Link('d', 1, 'a', 0, 'alpha', -...
原创
发布博客 2018.12.25 ·
25825 阅读 ·
21 点赞 ·
7 评论 ·
297 收藏

标准DH建模与改进DH建模

standard_DH   根据DH表示法确定一个一般步骤为每个关节指定参考坐标系,然后确定如何实现任意两个相邻坐标系之间的变换,最后写出机器人的总变换矩阵。如图所示表示了三个顺序关节和两个连杆,每个关节都是可以转动和平移的。第一个关节指定为关节i-1,第二个关节指定为关节i,第三个关节指定为关节i+1。在这些关节前后可能还有其他关节,连杆也是如此表示,连杆i位于关节i与关节i+1之间。(1)...
原创
发布博客 2018.12.23 ·
30191 阅读 ·
48 点赞 ·
13 评论 ·
312 收藏

姿态的三种描述方式——欧拉角、轴角、四元数

欧拉角  旋转矩阵对于坐标系的描述是冗余的。旋转矩阵用了9个元素来描述姿态,而事实上,由正交性条件带来6个约束,这9个元素之间不是独立的,而是相关的。这就意味着,只要三个参数就能描述一个刚体在空间中的姿态。(1)X-Y-Z固定角坐标系  先将{B}绕{A}的X轴旋转γ\gammaγ,然后绕{A}的Y轴旋转β\betaβ,最后绕{A}的Z轴旋转α\alphaα,每个旋转都是绕着固定参考坐标系{...
原创
发布博客 2018.12.20 ·
21331 阅读 ·
10 点赞 ·
2 评论 ·
69 收藏

机器人坐标系——工具坐标、用户坐标系标定

坐标系变换方程   如果有n个未知变换和n个变换方程,这个变换可由变换方程解出。例如:图1中变换TBT{^B_T}TTB​T描述了操作臂指向的坐标系{T},它是相对于操作臂基座的坐标系{B}的,又已知工作台相对于操作臂基座的空间位置SBT{^B_S}TSB​T,并且已知工作台上螺栓的坐标系相对于工作台坐标系的位置,即GST{^S_G}TGS​T,计算螺栓相对于操作手的位置,GTT{^T_G}TG...
原创
发布博客 2018.12.20 ·
28709 阅读 ·
18 点赞 ·
1 评论 ·
77 收藏

位置、姿态与坐标系

位置描述:一旦建立了坐标系,就可以用一个3×1的位置矢量对世界坐标系中的任何点进行定位。因为在世界坐标系中还有其他坐标系,因此必须在位置矢量上附加信息,表明是在哪个坐标被定义的。位置矢量用一个前置的上标来表明其参考坐标系。例如:AP。表明AP的数值是在坐标系{A}中的表示。矢量中的各个元素用下标x,y,z来表明:...
原创
发布博客 2018.12.19 ·
5706 阅读 ·
4 点赞 ·
0 评论 ·
20 收藏

C语言学习笔记——链表

       链表是一种常见的重要的数据结构。它是动态地进行存储分配的一种结构。它可以根据需要开辟内存单元。链表有一个“头指针”变量,以head表示,它存放一个地址。该地址指向一个元素。链表中每一个元素称为“结点”,每个结点都应包括两个部分:一为用户需要用的实际数据,二为下一个结点的地址。因此,head指向第一个元素:第一个元素又指向第二个元素;……,直到最...
原创
发布博客 2018.12.13 ·
310 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

C语言学习笔记——字符串

一、字符串1、字符串常量:字符串:是一个或多个字符的序列;一个字符在内存中只占一字节,而字符串本质上是多个字符组成的字符数组。C语言规定,在每一个字符串常量的结尾,系统都会自动加一个字符’\0’作为该字符串的“结束标志符”,系统据此判断字符串是否结束。在 C 语言中,字符串不属于数据类型;字符串有两种存储方式,一种是通过字符数组存储,另一种是通过字符指针存储。如:"How are you"中,...
原创
发布博客 2018.12.11 ·
607 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C语言学习笔记——static用法

在C语言中static的作用如下:1、修饰局部变量:1)位置:静态局部变量被编译器放在全局存储区静态存储区,所以它虽然是局部的,但是在程序的整个生命周期中存在。2)访问权限:静态局部变量只能被其作用域内的变量或函数访问。也就是说虽然它会在程序的整个生命周期中存在,由于它是static的,它不能被其他的函数和源文件访问。3)值:static局部变量初次定义时就要初始化,且只能初始化一次。如果...
原创
发布博客 2018.12.08 ·
555 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C语言学习笔记——typede用法

typedef 关键字:自定义数据类型名称,来替代系统默认的基本类型名称、数组类型名称、指针类型名称与用户自定义的结构型名称、共用型名称、枚举型名称等。(1)为基本数据类型定义新的类型名也就是说,系统默认的所有基本类型都可以利用 typedef 关键字来重新定义类型名,示例代码如下所示:typedef unsigned int COUNT;而且,我们还可以使用这种方法来定义与平台无关的类型...
原创
发布博客 2018.12.08 ·
1792 阅读 ·
2 点赞 ·
0 评论 ·
9 收藏

C语言学习笔记——结构体

一、结构体1、结构体定义:结构体是将不同类型的数据按照一定的功能需求进行整体封装,封装的数据类型与大小均可以由用户指定。2、结构体声明:声明一个结构体类型的一般形式为:struct 结构体名{ 成员列表};例如:struct BOOK { char title[20]; char author[20]; float value;}...
原创
发布博客 2018.12.08 ·
752 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

算法基本原理

一、时间复杂度:(1)常数时间的操作: 一个操作如果和数据量没有关系, 每次都是固定时间内完成的操作, 叫做常数操作。(2)时间复杂度为一个算法流程中, 常数操作数量的指标。 常用O(读作big O) 来表示。 具体来说, 在常数操作数量的表达式中,只要高阶项, 不要低阶项, 也不要高阶项的系数, 剩下的部分如果记为f(N), 那么时间复杂度为O(f(N))。(3)评价一个算法流程的好坏, ...
原创
发布博客 2018.12.06 ·
5151 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

C语言学习笔记——指针:动态内存分配

C程序的内存映像C程序的变量内存分配有三种:(1)从静态存储区分配:程序的全局变量和静态变量都在静态存储区上分配,且在程序编译时就已经分配好了,在程序运行期间都是存在的。只有在程序终止前,才被操作系统收回。(2)在栈上分配:在执行函数调用时,函数内的局部变量及形参都是在栈上分配的,该函数执行结束时,这些内存被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是容量有限。(3)从堆上分...
原创
发布博客 2018.11.27 ·
1397 阅读 ·
0 点赞 ·
0 评论 ·
10 收藏

C语言学习笔记——指针:const指针

当定义一个指针变量时,它的本身的值以及该指针变量所指向的数据都可以被声明为const。const在变量语句中所处的位置不同表示的含义也不同。下面分别讨论。(1)const放在类型关键字前面例如:int a,b;const int *p=&a;说明,*p是一个常量,即只读的,而p不是,我们从右至左来理解这条语句,即p是一个指针变量,可以指向一个整型常量。这时不可以修改*p。但是p...
原创
发布博客 2018.11.26 ·
523 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

C语言学习笔记——指针:指针函数与函数指针

指针函数:本质是一个函数,函数返回类型是某一类型的指针。声明格式: 类型标识符 *函数名(参数表)例如:int *fun(int x,int y);这和普通的函数声明唯一的区别就是在函数名前面多了一个*号,而这个函数就是一个指针函数。其返回值是一个 int 类型的指针,是一个地址。函数指针:如果在程序中定义了一个函数,那么在编译时系统就会为这个函数代码分配一段存储空间,这段存储...
原创
发布博客 2018.11.26 ·
406 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏
加载更多