KDL学习之路01:KDL(Kinematics and Dynamics Library)入门学习

前言:搞工业机器人研究的,很少有不知道KDL的吧,机器人的正、逆运动学求解是一个非常重要的内容。

KDL源码编译安装

首先在github上下载KDL的最新源码,接着通过手动编译安装.

cd orocos_kinematics_dynamics-1.4.0/orocos_kdl
mkdir build && cd build
cmake -DCMAK_BUILD_TYPE=Release ..
make -j4
sudo make install

测试KDL是否安装成功

这里,我们来创建一个hello_kdl项目(毕竟,学习编程,从Hello World开始)
CMakeLists.txt文件的内容如下:

cmake_minimum_required(VERSION 2.8)
project(hello_kdl)
find_package(orocos_kdl REQUIRED)
include_directories(${orocos_kdl_INCLUDE_DIRS})
add_executable(${PROJECT_NAME} "main.cpp")
target_link_libraries(${PROJECT_NAME} ${orocos_kdl_LIBRARIES})

main.cpp文件内容如下:

#include <iostream>
#include <kdl/frames.hpp>

//using namespace KDL;
using namespace std;
int main(int argc, char** argv)
{
//    Vector v = Vector(1,2,3);
    KDL::Vector v1(1,2,3); //隐式创建对象
    for(int i=0; i<3; ++i){
        cout<<v1[i]<<";";
    }

    cout<<"\n";
    KDL::Vector v0 = KDL::Vector::Zero(); //显式创建对象
    KDL::Vector vec; //隐式创建对象,调用默认构造函数,成员数据被初始化为0
    cout<<vec.x()<<";"<<vec.y()<<";"<<vec.z()<<"\n";
//    std::cout<<v.data[0]<<std::endl; //获取数组的第一个元素
    for(int i=0; i<3; ++i){
        cout<<v0(i)<<" "; //循环输出数组的元素
    }
    cout<<"\n";
    cout<<v0.x()<<" "; //获取数组的第一个元素
    cout<<v0[0]; //获取数组的第一个元素
    return 0;
}

运行结果为:
1;2;3;
0;0;0
0 0 0
0 0

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值