机器人学与OROCOS-KDL(一)简介
机器人学与OROCOS-KDL(一)简介
- 一、概述
- 二、机器人学
- 三、开源机器人控制软件OROCOS
- 四、OROCOS-KDL安装
- 1.参考平台
- 2.源码下载
- 3.解压Eigen3和KDL
- 4.编译KDL
一、概述
本系列文章主要研究机器人学的基础理论,以及研究开源机器人库OROCOS-KDL对机器人算法的实现。本文所有错误不足欢迎指正或讨论。
二、机器人学
机器人学是人们设计和应用机器人的技术和知识。机器人系统不仅由机器人组成,还需要其他装置和系统连同机器人一起来共同完成必须的任务。1
机器人学内容主要有:运动学、动力学、轨迹规划、速度规划等。
三、开源机器人控制软件OROCOS
“Orocos”代表“Open Robot Control Software”,即开源机器人控制软件。
Orocos 为软件开发人员提供了开源的机器人软件框架,提供了很多功能,方
便开发人员快速的开发机器人软件模块。2
Orocos 由 Kinematics Dynamics Library,Bayesian Filtering Library 及 Orocos Toolchain 组成。
官方网站:orocos.org
KDL(Kinematics and Dynamics):机器人运动学与动力学组件,为运动学提供了实时的动力学约束计算,这个组件非常有用,有了这个组件,很多机器人开发者可以快速地开发机器人算法。
BFL(Bayesian Filtering Library):贝叶斯过滤库提供了一个独立于应用程序的动态贝叶斯网络推导框架,即基于贝叶斯规则的递归信息处理和估计算法,如卡尔曼滤波器,粒子滤波器法等。
Toolchain:Orocos工具链是使用模块化运行时可配置软件组件创建实时机器人应用程序的主要工具。工具链包含了实时工具集(Real-Time Toolkit)、Orocos组件库(Orocos Component Library)等。
本文主要研究与机器人学相关的机器人运动学与动力学组件KDL。
四、OROCOS-KDL安装
1.参考平台
Windows 10 操作系统
MinGW 编译器
CMake 3.1.2 工具
2.源码下载
Eigen3源码下载
git clone https://github.com/eigenteam/eigen-git-mirror.git
KDL源码下载
git clone https://github.com/orocos/orocos_kinematics_dynamics.git
3.解压Eigen3和KDL
Eigen3是一个C++的线性代数模板库,包括矩阵、向量及相关算法。KDL库的底层计算用到Eigen库,因此KDL编译时要加入Eigen的路径。
解压Eigen3和KDL后:
4.编译KDL
- 打开orocos_kinematics_dynamics-master/D:\workspcae\orocos_kinematics_dynamics-master\orocos_kdl 目录
- 新建build文件夹
- 打开CMake GUI软件,按下图步骤:①加入源码位置;②加入刚才新建的build文件夹作为生成目录;③点击Configure按钮;④选择编译器,点击完成。
- 未加入Eigen的路径一般会出现错误,在CMake界面中加入Eigen的路径。按照以下步骤生成Makefile。(建议自己定义安装路径:修改CMAKE_INSTALL_PREFIX)
如一切顺利,则出现以下结果:
- 打开CMD命令提示符,进入已生成Makefile的build的路径,输入make编译KDL库:
- 编译完成后,输入make install 安装KDL库:
- 安装完成后,在CMAKE_INSTALL_PREFIX设置的路径找到以下目录:
- 另外,编译后在build/src目录中生成了liborocos-kdl.dll动态库文件,而make install后并没有安装到目标目录中,可能是cmake配置没配置到。但是动态库非常有用,需要使用liborocos-kdl.dll库时,可以手动复制到目标目录。
SaeedB.Niku. 机器人学导论:分析、系统及应用:analysis,systems,applications[M]// 机器人学导论:分析、系统及应用:Analysis, Systems, Applications. 2004. ↩︎
陈坚鸿. 基于Orocos的工业机器人轨迹跟踪研究[D]. 2017. ↩︎
机器人学与OROCOS-KDL(一)简介相关推荐
- 开源机器人库orocos KDL 学习笔记(五):Inverse Kinematric
上一篇主要讲述KDL中正运动学解的实现方式及其使用.本篇主要讲述KDL中逆运动学解的实现方式及其使用. 1. puma560的逆运动学解 首先还是以puma560作为例子,来看一下如何调用KDL的逆运 ...
- 开源机器人库orocos KDL 学习笔记(四):Forward Kinematric
上一篇主要讲述了KDL中运动链的建立方式,以及与其相关的段(Segment)和关节(Joint)的概念,这些是串联机械臂运动学的基础.本篇主要讲述KDL中正运动学解的实现方式及其使用. 1. puma ...
- 【机器人学】机器人开源项目KDL源码学习:(5)KDL如何求解几何雅克比矩阵
这篇文章试图说清楚两件事:1. 几何雅克比矩阵的本质:2. KDL如何求解机械臂的几何雅克比矩阵. 一.几何雅克比矩阵的本质 机械臂的关节空间的速度可以映射到执行器末端在操作空间的速度,这种映射可以通 ...
- Matlab数字图像的傅里叶变换(FFT)
查看全文 http://www.taodudu.cc/news/show-6182241.html 相关文章: 使用matlab对图像进行傅里叶变换 [ MATLAB ]离散傅里叶变换(DFT)以及逆 ...
- PHP事务数据库写法,PHP 操作 MySQL 执行数据库事务
$mysqli=new mysqli();//实例化mysqli $mysqli->connect('localhost','root','admin','test'); if(mysqli_c ...
- 2022-2023年控制领域、工程领域、计算机领域、人工智能领域国家重点实验室开放基金申请指南
1..浙江大学--流体动力与机电系统国家重点实验室2022年开放基金申请指南(2022年的项目申请的受理时间为从本指南发布之日起至2022年10月31日) 流体动力与机电系统国家重点实验室2022年开 ...
- MoveIt教程[21]:Kinematics Configuration
在本节中,将研究为机器人配置运动学的一些参数. 一.The kinematics.yaml file MoveIt Setup Assistant生成的kinematics.yam文件是MoveIt的 ...
- TRAC-IK机器人运动学求解器
TRAC-IK和Orocos KDL类似,也是一种基于数值解的机器人运动学求解器,但是在算法层面上进行了很多改进(Specifically, KDL's convergence algorithms ...
- 在ROS使用自己安装的eigen时的cmake错误
原链接: (http://community.bwbot.org)[http://community.bwbot.org] 在我在自己的ROS系统中安装最新的eigen后,在自己的工作空间执行catk ...
- 发展型机器人:由人类婴儿启发的机器人. 2.2 机器人学简介
2.2 机器人学简介 这一节主要是对机器人学中的重要术语和硬件技术进行介绍,主要目的是让不熟悉这些概念的读者更加容易理解后面的内容.机器人学中的一些专业术语会大量地出现在本书中,如自由度(D OF) ...
最新文章
- linux 集群配置ssh无密码访问
- DNN3.0 beta 本地化初体验
- jQuery中ajax的触发时机,javascript - 如何在启动Ajax查询的jQuery中触发方法change() - 堆栈内存溢出...
- java左手画圆右手画方_左手画圆,右手画方作文
- poi的autoSizeColumn方法对全角或者说中文支持不好的一个解决办法
- ABAP学习-第二章[HELLO WORLD]
- C++中size_t的学习
- 网页设置页数/总页数_图书分配问题(分配最小页数)
- 【bzoj1532】[POI2005]Kos-Dicing 二分+网络流最大流
- 武汉加油!武大本科生用Python敲出樱花绽放,满屏春天太浪漫
- springboot 入门二- 读取配置信息一
- 事情没有想象中那么难--JX官网首页3D粒子效果
- Julia-数学运算和初等函数
- 利用ICMP协议的PING命令获取客户端当前网络质量 by徐文棋
- adb启动app_ADB 命令大全
- Android应用的几种开发方式
- 英语语法之简单句型(一)
- 华为项目管理法读后小结
- 【Games101】图形的基础变换 总结
- termux目录_Termux 入门与实践