文章目录

  • 前言
  • 一、安装依赖库
  • 二、下载源代码
  • 三、编译源代码
  • 四、运行urdf_tutorial功能包例程
  • 五、参考文献

前言

在参考ROS2的官方教程学习urdf时,运行urdf_tutorial的例程很容易会因为一些依赖的库没有安装遇到问题,这里记录一下我踩坑之后总结的过程。

一、安装依赖库

这里得先说一下,我的ROS2的版本(distro)是foxy。首先我们得安装urdf_tutorial里面用到的一些库,不然在运行里面的文件的时候会出问题。我们需要安装joint-state-publisher-gui,joint-state-publisher,以及xacro这三个库,安装命令如下。

sudo apt install ros-foxy-joint-state-publisher-gui ros-foxy-joint-state-publisher
sudo apt install ros-foxy-xacro

二、下载源代码

安装完依赖库之后,我们需要将urdf_tutorial的源代码下载到我们本地的工作空间中。我之前已经建立过了一个colcon工作空间,在dev_ws目录下,因此,我需要将代码拉到这个目录里。

cd ~/dev_ws
git clone -b ros2 https://github.com/ros/urdf_tutorial.git src/urdf_tutorial

输入以上命令后,在~/dev_ws/src/目录应该能看到一个名为urdr_tutorial的文件夹,这就是我们下载的工程源文件所在的文件夹。

三、编译源代码

接下来我们需要对urdf_tutorial这个功能包的源代码进行编译,命令如下:

colcon build --packages-select urdf_tutorial

我们需要先安装了colcon才能使用colcon对功能包进行编译,假如还没安装的话,需要先进行安装,命令如下:

sudo apt install python3-colcon-common-extensions

四、运行urdf_tutorial功能包例程

至此,urdf_tutorial功能包构建完成,下面运行其中的一个例子试试,看看结果怎样。命令如下:

cd ~/dev_ws
source install/local_setup.bash #需要先source这个bash文件,否则后面launch会无法识别urdf_tutorial
cd ~/dev_ws/src/urdf_tutorial
ros2 launch urdf_tutorial display.launch.py model:=urdf/01-myfirst.urdf

上面的命令中,model:=后面接的是要导入到rviz中的urdf模型文件的路径,这里我要导入的是urdf_tutorial/urdf目录下的01-myfirst.urdf文件,因为当前的工作目录就是urdf_tutorial,因此模型文件路径为urdf/01-myfirst.urdf。不知道哪里的设置有问题,看起来似乎并不是那么的像圆柱形(cylinder),暂时先这样。

五、参考文献

[1] Building a Visual Robot Model with URDF from Scratch
[2] How to launch rviz2 using urdf like urdf_tutorial of ROS1
[3] urdf_tutorial Github仓库
[4] fail to run the example in RoS2 foxy

在ROS2运行urdf_tutorial例程相关推荐

  1. ESP32+st7789/ili9341运行LVGL例程,依赖ESP-IDF编译lv_port_esp32官方Demo(1)

      LVGL是一个C语言编写的免费的开源图形库,其提供了用于嵌入式GUI的各种元素.用户可以利用丰富的图形库资源,在消耗极低内存的情况下构建视觉效果丰富多彩的GUI .只需 64kB 闪存和 8kB ...

  2. Zigbee入门指导(二)mdash;mdash;运行Zigbee例程

    Zigbee入门指导(二) --运行Zigbee例程 logiclimit 在Zigbee入门指导(一)中讲解了基于CC2430的Zigbee开发环境的搭建,安装完Ti的协议栈后,里面有多个例程,帮助 ...

  3. 在基于ZYNQ MPSOC XCZU3CG自定义单板上运行DPU例程

    在上一篇博文中FZU3构建Linux系统,描述了Edgeboard FZU3构建Linux系统的过程,本文在上篇基础上详细描述在FZU3上运行DPU例程的方法.DPU例程代码参考如下链接:DPU例程 ...

  4. 在Developerkit开发板上运行blink例程

    2019独角兽企业重金招聘Python工程师标准>>> 摘要: 本文将介绍怎么样在VScode环境下,将AliOS Tings提供的blink例程在Developerkit开发板上运 ...

  5. 【QCustomPlot】1.3 - 运行官方例程Demo,介绍功能

    Qt运行了一遍QCustomPlot官方例程,并记录下功能,以节约大家再次运行花费时间.需要什么功能直接去找对应的代码. 官方Demo 1. axis-tags 动态绘图,无鼠标动作. 2. inte ...

  6. kaldi运行yesno例程

    按照之前的安装方法,现在运行例程测试一下kaldi是否安装正确: wxy@Lenovo:~/kaldi-trunk/egs/yesno/s5$ ./run.sh --2018-07-17 18:48: ...

  7. tensorflow运行mnist例程第99次迭代cuda出错

    新手,在run 例程中的mnist_with_summaries.py的时候在第99次迭代出现问题: 找不到libcupti.so文件,以为是cuda没配置好,试了 export LD_LIBRARY ...

  8. Eclipse连接远程Hadoop集群运行WordCount例程

    hadoop开发主要分为两种,第一种是脱离集群开发:第二种是连接远程Hadoop集群,将我们开发的API提交hadoop执行: http://www.aboutyun.com/thread-6950- ...

  9. SLAM实操入门(三):Ubuntu20.04安装Turtlebot3并运行SLAM例程仿真

    文章目录 前言 在Turtlebot3进行SLAM仿真 1 安装Turtlebot3依赖包 2 创建项目并安装Turtlebot3 3 使用Turtlebot3进行建图 4 使用扫描地图进行自动导航仿 ...

最新文章

  1. MVC Html.ActionLink Area 链接中含区域的页面之间的跳转
  2. 每天生产45亿词,GPT3已渗透300+应用,网友:边吃边拉
  3. 计算机考试一级考试基础知识,2016计算机一级考试msoffice基础知识
  4. Restful framework【第七篇】权限组件
  5. char截取字符串_字符串的排列(滑动窗口)
  6. 【51Nod - 1001 】 数组中和等于K的数对 (排序+ 尺取)
  7. 一个5g基站的覆盖范围有多大,有没有4g的大?
  8. 【随笔】hi3531D 音频
  9. 存储器——存储器容量扩充
  10. maxscale mysql 主从_MySQL高可用——MaxScale
  11. ant design——Modal
  12. 【图像加密】基于LSB算法实现图像隐写含Matlab源码
  13. 嘉兴学院c语言期末考试题库,液压与气压传动(嘉兴学院)知到APP答案
  14. “某某云词典” – 纠结的初体验
  15. E11000 duplicate key error collection
  16. DrawIO怎么画出卡通效果的图?
  17. Python的基本操作
  18. Django数据库字段及参数
  19. Python数据分析案例06——现代人的婚育意愿调查分析(基于逻辑回归模型和问卷数据)
  20. git 重新追踪索引_索引追踪差距

热门文章

  1. 微信sdk上传录音php,HTML5实现微信jssdk录音播放语音的实例
  2. 门槛越低,越容易引起共鸣
  3. C语言一行太长的换行处理
  4. CentOS 7 查看关闭防火墙
  5. 使用Opensips和FreeSwitch搭建万级别的高可用软交换架构
  6. 【MATLAB教程案例30】基于MATLAB的图像阴影检测和消除算法的实现
  7. 解析 TEA 加密算法(C语言、python):
  8. 教你解决鼠标右键失灵的问题
  9. Android 5.0 Termux 配置米家设备环境[Alpine Linux]
  10. 数据库SQL习题练习Day2