自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

vrijheid的博客

书到用时方恨少

  • 博客(44)
  • 资源 (3)
  • 收藏
  • 关注

原创 【机器人算法】机器人动力学、运动学和基于动力学模型的仿真与控制

文章目录运动学静力学动力学自由下落遇到跳床重力配平基于动力学的控制位置控制力控制力位置混合控制阻抗控制本篇博客主要是从机器人学入门出发,以二连杆系统为例,对机器人动力学,静力学和控制进行说明。既是复习也算是科普。运动学运动学部分比较简单,这里只给出笛卡尔空间的轨迹规划。静力学静力学其实就是“虚功原理”,更多的体现在动力学中,这里没什么可展示的。动力学根据机器人的动力学方程可以做动力学仿真如下:这里主要给出2连杆在只受重力的作用下自由下落、遇到“跳床”和重力配平。自由下落可以看出在重

2021-07-29 22:02:07 10883 18

原创 【机械臂算法】基于牛顿欧拉法的闭链结构/并联机构的动力学参数辨识

一般来说对于机械臂中存在闭链结构的,比如一些码垛机器人,进行参数辨识的时候往往在建模的时候会使用拉格朗日法进行建模,但是拉格朗日的计算效率比较低因此最好还是使用牛顿欧拉进行建模。使用牛顿欧拉对闭链的机械臂进行运动学建模时候,需要将闭链转化为开链。这里使用simscape进行仿真验证。之后的辨识思路可参考->

2023-07-11 14:39:07 497 1

原创 【机械臂算法】基于Franka Emika Panda机械臂动力学参数辨识/系统辨识、物理一致性/物理合理性(physical consistency)研究及动力学应用

根据之前的理论推导,我们在这直接给出franka机械臂的最小参数集和激励轨迹,

2023-05-06 11:48:10 3247 7

原创 【机械臂算法】机械臂动力学参数辨识仿真

本文以puma560m机械臂为例子进行动力学参数辨识的讲解,puma560m可以在robotic toolbox中找到,这里以它真实机械臂对他的动力学参数进行辨识。此外这里还有要说的是,机械臂参数辨识其实是一个系统工程,其中和系统的机械、电子、嵌入式都有着很深的联系,并不是仿真这么简单的。

2023-04-04 18:57:02 4116 9

原创 【机械臂算法】机械臂运动学参数辨识/DH参数校准/DH参数辨识

基于误差模型的机器人DH参数标定方法

2022-07-29 15:33:35 5022 22

原创 【动力学仿真】基于simscape的单杆动力学仿真

基于simscape对单杆进行仿真,核心是使用工具的思想。

2022-06-08 15:56:10 1417

原创 【机器人算法】二连杆机器人动力学参数辨识

本篇博文以二连杆系统为例子,讲解机器人的动力学参数辨识,并进行仿真。

2021-11-26 14:15:31 4321

原创 【运动控制】经典控制理论——PID控制

讲解PID控制

2021-11-15 22:35:31 12294

原创 【运动控制】机械臂的分散控制(Decentralized Control)

本篇博文以二连杆模型为例,具体参见->【机器人算法】机器人动力学、运动学和基于动力学模型的仿真与控制。集中控制有以下假设:惯量不太大,可以用等效惯量代替;C矩阵(科氏力和离心力)可以被忽略。当杆件比较轻的时候重力可以忽略,但是当杆件重量较重时需要前馈补偿掉。分散控制的控制框图如图: 因此对每个关节进行动力学分析(这里使用PD控制),得出其传递函数为: 其中B为等效惯量。一般取该关节惯量的最大值,并且可以看出这是一个二阶系统,因此我们可以很简单的通过调整Kp和Kd来控制系统

2021-11-15 17:54:57 10154

原创 【运动控制】机械臂的集中控制(Centralized Control)

http://comp.uark.edu/~aeb019/pplane.html

2021-11-10 16:41:29 804

原创 【线性代数】SVD的实现方式

说明奇异值分解(Singular Value Decomposition)简称SVD。现在很多领域都要用到SVD算法,C++有Eigen库,Matlab有svd()函数可以直接使用,十分方便,有很多人都只了解SVD算法的一些性质,但是却不知道SVD具体是怎么求出来的。本篇博文就给出一种传统的SVD的计算方法,这个过程并没有考虑SVD的效率和速度。但是理解了SVD的计算方法后就方便自己造轮子了。这个传统的方法其实就是将所给的A矩阵转化成的形式。因此思路也就比较简单了,主要是以下三部:将A矩阵b

2021-10-01 11:08:35 727 1

原创 【算法】基于分离轴定理的机器人碰撞检测

碰撞检测机器人碰撞检测可以大致分为两类:发生碰撞后,通过检测电流、力矩或者编码器的值来判断碰撞的发生;发生碰撞前,通过建模判断机器人发生碰撞。一般地,第一种方法通常用于环境不确定的环境,如人机交互安全检测;而第二种方式通常用于已知环境内的轨迹规划时(ROS-moveit),是一种预碰撞的检测。其中Moveit中使用的就是第二种方法,首先使用AABB包围盒对机器人各个连杆进行建模,然后进行大致的碰撞检测,当检测到碰撞后再利用网格进行更细节的碰撞检测,保证检测的有效性,本篇博文只使用包围盒的碰撞检

2021-09-11 22:02:56 1357 1

原创 【机器人学】3-RUU-delta并联机器人正运动学、逆运动学和微分运动学

逆运动学 正运动学 微分运动学

2021-08-27 20:00:30 7236 14

原创 【机器人学】基于PoE模型的串联机械臂UR5的正运动学、微分运动学和逆运动学

文章目录概念UR5源码概念PoE(Product of Exponential)指数积公式。PoE和DH的作用都是一样的。实际使用过程中,绝大多数在售的机器人还都是使用DH模型进行建模的,所以为了验证正确性,在选取螺旋轴的时候最好还是和DH模型方向对正。PoE模型的优势:更好的应用于并联机器人结构、不需要对中间关节进行建模,虽然描述量有4n(DH)变为了6n。为了规范在使用PoE进行正运动学建模的时候一定要指明是相对于基座标系{s}还是末端坐标系{b}螺旋轴上选择一点可以是任意的。这里以

2021-08-24 17:57:27 4285 7

原创 【运动控制】直流电机的建模与位置控制和力控制

对于机器人控制,还有一个很重要的部分就是电机控制。本篇博文以单电机带单杆为对象进行说明。其中观测器为提高机器人的鲁棒性。电机建模观测器位置控制力控制

2021-08-22 20:51:17 4931

原创 【VREP】通过DH参数在CoppeliaSim(VREP)中生成机器人模型

已知VREP自带的DH joint creator工具可以在场景中根据标准DH参数生成关节模型,但是连杆需要自己添加,比较麻烦。不利于快速验证DH建模的稳定性。这里通过在VREP软件中写Lua脚本实现MDH(修改DH)和SDH(标准DH)通过脚本直接生成关节和连杆模型。其中部分代码参考了通过D-H参数快速导入机械臂模型至V-rep中(其中使用的是MDH却标注使用SDH为原著者笔误)。下面直接展示生成模型和真实机器人对比。SDH基于SDH参数生成vrep模型。 MDH根据MDH生成vrep模型

2021-08-17 17:30:59 1667

原创 【机器人学】空间站机械臂的运动学

中国空间站拥有自己的机械臂,真的十分振奋人心,可以看视频->高清展示真实中国机械臂爬行状态。由于没有中国空间站机械臂的参数,这里使用加拿大的Candarm2进行运动学仿真分析试手以抑制激动的心。????其DH参数如下: 由于空间站机械臂的结构为七自由度,且构型特殊,所以没有解析解,这里使用数值解进行逆解计算,模拟空间站机械臂“抓取”物体。抓取 当然,空间站机械臂最重要的还是动力学,保证空间站在空间的稳定运行。这里可以看一个大佬的分析->关于空间站的机械臂,有个奇怪的问题【空间

2021-08-10 00:12:47 1204 2

原创 【Moveit】Moveit ROS结构与C++源码解析

文章目录上接Moveit core。

2021-04-26 08:58:52 492

原创 【gtest】Google test与ROS

参考ROS CPP Unit Testingcatkin-toolsROS-gtest使用gtest在ROS中的使用*GoogleTest User’s Guide*indexmodules |next |previous |catkin 0.6.19 documentation

2021-04-23 14:50:31 599

原创 【Moveit】Moveit Core结构、C++源码解析与规划流程举例

文章目录参考moveit作为一个优秀的框架是很值得学习的,其中主要关注的点:碰撞检测路径规划适配器参考official source code and api

2021-04-22 16:17:28 1817

原创 【MoveIt】Chomp和Stomp的配置与使用

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-04-16 11:57:27 907

原创 【IKFast】IKFast配置与使用

文章目录参考环境什么是IKFastMoveIt! IKFast参考IKFast Kinematics Solver环境ROS kineticFranka emika Panda什么是IKFast摘自Wikipedia:机器人运动学编译器IKFast是Rosen Diankov的OpenRAVE运动计划软件中提供的功能强大的逆运动学求解器。 与大多数逆运动学求解器不同,IKFast可以解析地求解任何复杂运动学链的运动学方程,并生成特定于语言的文件(如C ++)供以后使用。 最终结果是极其

2021-01-20 17:25:18 7599 20

原创 【论文解读】手术机器人系统的工作原理分析与解读

用于手术干预的全传感器协作机器人系统摘要一种基于NDI导航和协作机械臂定位的手术机器人系统,可以说是最近的风口了,不做深究,但是特此学习一下。摘要在这项研究中,提出了一种用于针操作的完全传感协作机器人系统。该设置包括专为安全人机交互而设计的DLR / KUKA轻型机器人III,FD-CT机器人驱动的血管造影C型臂系统和导航摄像机。此外,还介绍了用于临床环境中机器人操纵的新控制策略。提出了一种对相关组件进行快速校准的方法,并对整个可能的误差链进行了初步的精度测试。使用导航系统对机器人进行的校准具有0

2021-01-18 13:37:43 9233 1

原创 【MoveIt】通过Plugin机制在MoveIt中集成算法

现出一个链接

2021-01-07 17:29:38 1968 9

原创 【论文解读】【IKFast】Automated Construction of Robotic Manipulation Programs --- 4.1 Inverse Kinematics

之前是接触IKFast了解到了这篇文章,据说IKFast在自由度以下的机器人都能生成其解析解,感觉很神奇,所以来阅读一下。其中有关于IKFast摘要随着机器人开始在事实上执行大多数任务,开始在家庭环境和办公室环境中提供帮助,社会正变得越来越自动化。机器人最重要的功能之一是能够操纵环境中的对象。**由于可能的机器人设计、传感器模式和目标任务的空间很大,研究人员最终不得不手动创建许多模型、数据库和程序来完成其特定任务,而每当任务发生更改时,这些工作都会重复。给定机器人和任务的规范,提出的框架会自动构建机器

2021-01-05 11:10:59 2126

原创 【轨迹规划】Trajectory planning for automatic machines and robots

Trajectory Planning前言A General Overview on Trajectory PlanningOne-dimensional TrajectoriesMechanical Cams and Electronic CamsMulti-dimensional TrajectoriesContents and Structure of this BookPart 1 Basic motion profilesPart 2 Elaboration and analysis of tra

2020-12-23 15:48:35 5404 5

原创 【python】python删去文件中的回车、空格等

文章目录参考源码使用后续英语渣在看外国文献时喜欢谷歌成段直接翻译,但是pdf文字直接粘贴存在换行符,谷歌翻译不能识别,所以用python删去。这个故事告诉大家要好好学英语。参考用python去除文件中的空格 || Tab || 回车Python代码规范(PEP8)问题及解决链接1中的大哥写的已经完全能够实现功能了,但是可能python版本比较老所以报了好多提示,因此做了一些修改。(python 3.8 PEP8)源码def strip_file(old_f_name, new_f_nam

2020-12-23 11:53:22 2915

原创 【OMPL】OMPL和Moveit的接口

文章目录版本调用ompl_interface作为入门者总是不禁去问,ompl作为一个独立于moveit的算法库究竟是如何调用的?本篇博文的目的就是梳理清楚它。版本Ubuntu 16.04 kinetic调用主要说明一下xml yaml是干嘛的。首先github看moveit调用ompl的源码:moveit/moveit_planners/ompl/很清楚的可以看到CMakeLists.txt :制定生成规则,应为moveit调用ompl的核心原理也不过与相当于调用插件,因此插件接口就

2020-12-21 16:09:00 2407 2

原创 【touch】力反馈控制器3D system touch是如何实现力反馈的

开坑

2020-12-21 10:59:18 2023

原创 【OMPL】机器人路径规划算法库的安装与demo学习

文章目录编译与安装demo解析moveit问题编译与安装ubuntu 16.04已经安装了movit和ompl并且可以正常使用,但是为了方便看源码,优化算法库,因此要使用源码进行安装。ompl二进制文件安装ompl源码安装安装正常后可以正常使用demo。没有进行app的安装。demo解析demo:demo_Point2DPlanning运行结果:这里随便运行了三次可以看出RRT算法的确有他的“随机性”。这个随机性正式后期要修改的地方。moveit问题不知为何linux安

2020-12-14 17:31:02 3108 9

原创 【路径规划】RRT(Rapidly-exploring Random Trees)算法

从零开始的OMPL库算法学习(2)RRT-connect算法来用C++写一个RRT算法求自主规划的最短路径RRT、RRTconnect和RRTstar路径规划简易matlab代码路径规划算法:RRT,RRT*,B-RRT*算法 - 附代码

2020-12-08 13:54:18 1444 1

原创 【机器人学】机器人运动学基础

四元数在机器人中的应用欧拉角欧拉角的奇异性欧拉角万向节死锁四元数欧拉角欧拉角的奇异性欧拉角的奇异性实际上就是在从旋转矩阵逆解旋转角度过程中,由于三角函数的性质导致出现退化解的现象,详细见《机器人学建模、规划与控制》西西里安诺 P36其中需要注意公式 (2.23)第二个式子符号有误。欧拉角万向节死锁例子正在研究中。四元数理论部分的解释见豆瓣. 其中的链接用safari或谷歌打开比较快。电子书谷歌可以下载:...

2020-12-07 15:03:26 3376 1

原创 【遥操作】考虑延时情况下的双向控制算法-bilateral control-力位混合控制

双向控制算法参考双向控制系统三级目录参考《面向实世界触觉通信的先进运动控制》吉林人民出版社田大鹏双向控制系统三级目录

2020-12-02 12:02:24 891

原创 【机器人学】机械臂数值解逆解

一种机器人的控制方法——闭环偏差补偿法

2020-12-02 11:54:07 2734

原创 【机器人学】冗余七自由度机械臂的解析解逆解算法

An Analytical Solution for a Redundant Manipulator with Seven Degrees of Freedom作者IntroductionManipulator ModelSelf-motion作者Takashi Nammoto and Kazuhiro KosugeIntroductionoffset用来增加任务空间;冗余自由度用来缓解关节限制和奇异性。本文的目的在于求出七自由度解析逆解 with an offset inthe upper

2020-12-02 09:49:56 11035 12

原创 【配置】Astra Pro安装和输出图像

安装ROS部署乐视奥比中光(astra pro)摄像头官方github乐视体感astra标定及使用有几点需要注意1、注意usb相机号匹配-astra pro.launchROS探索-乐视(奥比中光)Astra Pro深度相机2、编译当中可能会遇到一个错误只要在CMakelists中添加即可。显示图像Fixed Frame->camera_linkadd->by topicdepth 深度图像rgb 彩色图像ir 红外图像相机校准(内参标定)参考古月ju.

2020-11-21 14:20:53 1329

原创 【配置】Ubuntu、ROS 、moveit源码安装及开发环境配置

Ubuntu华硕主板关闭secure boot没有WiFi驱动

2020-11-20 23:44:40 1671

原创 【ROS】ROS的话题、服务和动作通讯机制及代码

ros的几种通讯机制及代码参考话题(topic)发布者(publisher)订阅者(subscriber)服务(service)服务端(server)客户端(client)动作(action)参考古月居ROS机器人开发实践话题(topic)发布者(publisher)/** * 该例程将发布/person_info话题,自定义消息类型learning_topic::Person */ #include <ros/ros.h>#include "learning_topi

2020-11-04 13:34:08 1074

原创 【ROS】ros_control、ur_modern_driver的工作原理

基础知识生成文件treeROSLAUNCH 的.launch/XML 语法C语言中 int main(int argc,char *argv[])的两个参数详解param name=“robot_description” command=" $(find xacro)/xacro --inorder ’ $(arg model)’ 到底什么意思由浅到深理解ROS(5)- launch启动文件的理解与编写ROS学习之actionROS 学习笔记(五)—— 动作 Action 详解

2020-11-03 17:51:39 963 2

原创 【ROS】ROS驱动UR和FRANKA机器人

ROS驱动UR机器人核心是要有ur的driver,其余的industrial或者是control都可以有。这里主要考虑control(没事找事目前了解只有ur_modern_driver支持control。ros方面-利用ur5_ros_control实现基于速度的位置控制UR5机械臂-程序员大本营...

2020-10-29 17:21:04 1414

CML常用类及其成员函数和变量.xlsx

CML 是面向对象的C++类的集合,旨在简化智能CANopen 伺服放大器的集成,并将电机驱动程序步入基于 PC 的或嵌入式控制架构中。消除了控制网络的低级代码的开发。通过简单的命令自动处理实现通信卡对接、映射 PDO、SDO 数据打包、同步和节点保护。

2021-03-08

PANDA’S INSTRUCTION HANDBOOK.pdf

Franka Emika Panda 说明手册,具体讲解了panda怎么使用,如提示灯的含义以及Franka Emika Panda 特有的desk操作界面的使用。

2020-08-21

novint falcon驱动

windows 10下亲测可以使用,【注意】需要搭配falcon硬件才可以使用!! 下载包中其中包含了:安装说明手册,适用于falcon的d2xx,用于软件开发的SDK,和一个tutorial程序。通过tutorial可以感受到其力反馈功能。

2020-08-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除