ROS 环境下 安装 turtlebot3 功能包及其仿真包 并测试 —— 全流程(报错及解决)

本文涉及的产品
资源编排,不限时长
简介: ROS 环境下 安装 turtlebot3 功能包及其仿真包 并测试 —— 全流程(报错及解决)

下载 turtlebot3 功能包

turtlebot 太老了可能,仿真只有indigo版本 ,直接用 3吧

ros的turtlebot wiki
turtlebot官网教程

开始安装
turtlebot3 git网址

git上下载指定版本

git clone -b 版本名 总网址
git clone -b kinetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git

然后就等着下吧

下载完编译

报这个错误

CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package):
  Could not find a package configuration file provided by "turtlebot3_msgs"
  with any of the following names:

    turtlebot3_msgsConfig.cmake
    turtlebot3_msgs-config.cmake

  Add the installation prefix of "turtlebot3_msgs" to CMAKE_PREFIX_PATH or
  set "turtlebot3_msgs_DIR" to a directory containing one of the above files.
  If "turtlebot3_msgs" provides a separate development package or SDK, be
  sure it has been installed.
Call Stack (most recent call first):
  turtlebot3/turtlebot3_bringup/CMakeLists.txt:13 (find_package)


-- Could not find the required component 'turtlebot3_msgs'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "turtlebot3_msgs"
  with any of the following names:

    turtlebot3_msgsConfig.cmake
    turtlebot3_msgs-config.cmake

  Add the installation prefix of "turtlebot3_msgs" to CMAKE_PREFIX_PATH or
  set "turtlebot3_msgs_DIR" to a directory containing one of the above files.
  If "turtlebot3_msgs" provides a separate development package or SDK, be
  sure it has been installed.
Call Stack (most recent call first):
  turtlebot3/turtlebot3_bringup/CMakeLists.txt:13 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/jone/tutorial_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/jone/tutorial_ws/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed

感觉是少 turtlebot3_msgs 功能包
在这里插入图片描述

查看的确
在这里插入图片描述
turtlebot3_bringup 这个功能包 编译需要 turtlebot3_msgs

下载 turtlebot3_msgs 功能包

turtlebot3_msgs git网址

git clone -b kinetic-devel https://github.com/ROBOTIS-GIT/turtlebot3_msgs

再编译 就成功了 !

因为要在仿真里做东西 所以继续下载 turtlebot3_simulations 里面有gazebo的内容

继续下载 turtlebot3_simulations

git clone -b kinetic-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations

再编译 也成功了

至此 turtlebot3 仿真 安装 成功了

试运行 一个 gazebo 仿真

 roslaunch turtlebot3_gazebo turtlebot3_world.launch

报错
在这里插入图片描述
不用担心
打开 turtlebot3_world.launch 这个文件
看到第一行
在这里插入图片描述
就是 TURTLEBOT3_MODEL 这个环境变量 没有被 指定 。 有这三个选择 burger, waffle, waffle_pi
一种解决办法就是 启动 roslaunch 前
在终端 定义 TURTLEBOT3_MODEL 变量 ,

export TURTLEBOT3_MODEL=burger

加入用 burger 的话

第二种方法:
但是这样不是在启动的时候很麻烦 , 假如固定用一个的话,不如直接在launch文件里改
这样改就行 就是给 model 赋值 配置 robot_description
注释掉第一行 加入未注释内容

 <!-- <arg name="model" default="$(env TURTLEBOT3_MODEL)" doc="model type [burger, waffle, waffle_pi]"/> --> 
  <arg name="model" default="burger"/>

在运行

 roslaunch turtlebot3_gazebo turtlebot3_world.launch

成功启动

在这里插入图片描述
在这里插入图片描述

查看 topic list
有节点在订阅 cmd_vel
在这里插入图片描述
用个节点发布 速度信息 就可以走了 应该

相关实践学习
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
阿里云资源编排ROS使用教程
资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。编排模板同时也是一种标准化的资源和应用交付方式,并且可以随时编辑修改,使基础设施即代码(Infrastructure as Code)成为可能。 产品详情:https://www.aliyun.com/product/ros/
相关文章
|
9天前
|
监控 测试技术
slb测试会话保持功能
slb测试会话保持功能
20 6
|
2月前
|
运维
【运维基础知识】用dos批处理批量替换文件中的某个字符串(本地单元测试通过,部分功能有待优化,欢迎指正)
该脚本用于将C盘test目录下所有以t开头的txt文件中的字符串“123”批量替换为“abc”。通过创建批处理文件并运行,可实现自动化文本替换,适合初学者学习批处理脚本的基础操作与逻辑控制。
158 56
|
2月前
|
自然语言处理 机器人 Python
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
ChatPaper是一个基于文本生成技术的智能研究论文工具,能够根据用户输入进行智能回复和互动。它支持快速下载、阅读论文,并通过分析论文的关键信息帮助用户判断是否需要深入了解。用户可以通过命令行或网页界面操作,进行论文搜索、下载、总结等。
58 1
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
|
2月前
|
测试技术
Appscan手工探索、手工测试功能实战
Appscan手工探索、手工测试功能实战
|
3月前
|
JSON 移动开发 监控
快速上手|HTTP 接口功能自动化测试
HTTP接口功能测试对于确保Web应用和H5应用的数据正确性至关重要。这类测试主要针对后台HTTP接口,通过构造不同参数输入值并获取JSON格式的输出结果来进行验证。HTTP协议基于TCP连接,包括请求与响应模式。请求由请求行、消息报头和请求正文组成,响应则包含状态行、消息报头及响应正文。常用的请求方法有GET、POST等,而响应状态码如2xx代表成功。测试过程使用Python语言和pycurl模块调用接口,并通过断言机制比对实际与预期结果,确保功能正确性。
267 3
快速上手|HTTP 接口功能自动化测试
|
2月前
|
弹性计算 JSON 关系型数据库
使用ROS模板基于ECS和RDS创建WordPress环境
使用ROS模板基于ECS和RDS创建WordPress环境
|
3月前
|
算法 机器人 C语言
ROS仿真支持C++和C语言
ROS仿真支持C++和C语言
86 1
|
4月前
|
Ubuntu Shell C++
在Ubuntu18.04上安装ros2的环境,ros2的常用命令:播放包、录制包等
在Ubuntu18.04上安装ros2的环境,ros2的常用命令:播放包、录制包等
216 1
|
4月前
|
Web App开发 敏捷开发 测试技术
自动化测试之美:使用Selenium WebDriver进行网页功能验证
【8月更文挑战第29天】在数字时代,软件质量是企业竞争力的关键。本文将深入探讨如何通过Selenium WebDriver实现自动化测试,确保网页应用的可靠性和性能。我们将从基础设置到编写测试用例,逐步引导读者掌握这一强大的测试工具,同时分享实战经验,让测试不再是开发的负担,而是质量保证的利器。
|
4月前
|
测试技术
一款功能完善的智能匹配1V1视频聊天App应该通过的测试CASE
文章列举了一系列针对1V1视频聊天App的测试用例,包括UI样式、权限请求、登录流程、匹配逻辑、消息处理、充值功能等多个方面的测试点,并标注了每个测试用例的执行状态,如通过(PASS)、失败(FAIL)或需要进一步处理(延期修改、待定、方案再定等)。
69 0

推荐镜像

更多