【ROS】Ubuntu18.04安装Ros

Ubuntu18.04安装Ros

  • 引言
  • 1 ROS安装(一键式)
  • 2 正常安装
    • 2.1 添加ROS软件源
    • 2.2 添加公钥
    • 2.3 更新
    • 2.4 安装ros
    • 2.5 初始化 rosdep
    • 2.6 设置环境
    • 2.7 安装rosinstall,便利的工具
    • 2.8 检验
  • 3 rviz将bag数据可视化为点云
    • 3.1 打开ROS和rviz软件
    • 3.2 配置rviz软件可视化点云
  • 4 open3d可视化pcl文件
    • 4.1 安装open3d
    • 4.2 执行脚本
  • 参考链接

引言

参考链接:ros操作系统入门
ros是一种分布式机器人操作系统,依赖于linux(一般支持的linux系统有ubuntu系列与debian系列),由斯坦福发布,目前,很多机器人的研究都是基于它。其基本框架如下:
在这里插入图片描述

1 ROS安装(一键式)

参考链接:https://github.com/fishros/install

执行下面的命令,然后按照脚本指示文件操作即可

wget http://fishros.com/install -O fishros && sudo ./fishros

在这里插入图片描述
最好选择换源!!
在这里插入图片描述
根据ubuntu的版本选择ros的版本
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
执行以下环境配置命令(一键安装已经配置,为了确保可以再手动配置一次)

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
# 1. roscore 测试
roscore

在这里插入图片描述

# 2. 开启第二个终端输入:
rosrun turtlesim turtlesim_node    # 会出现一个小海龟
# 3. 最后开启第三个终端输入,就可以通过方向键控制海龟的移动
rosrun turtlesim turtle_teleop_key 

在这里插入图片描述

# 4. 测试rviz
rosrun rviz rviz 

在这里插入图片描述

2 正常安装

直接在base环境下安装

2.1 添加ROS软件源

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

2.2 添加公钥

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

2.3 更新

# 确保包索引是最新的
sudo apt-get update

2.4 安装ros

# 推荐安装桌面完整版(推荐): 包含 ROS、rqt、rviz、机器人通用库、2D/3D 模拟器、导航以及 2D/3D 感知包等
sudo apt-get install ros-melodic-desktop-full

2.5 初始化 rosdep

sudo rosdep init
sudo rosdep update

常见问题:

1、ERROR:cannot download default sources list fromhttps://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down
# 解决办法:打开hosts文件
sudo gedit /etc/hosts#在文件末尾添加
185.199.108.133 raw.githubusercontent.com
185.199.109.133 raw.githubusercontent.com
185.199.110.133 raw.githubusercontent.com
185.199.111.133 raw.githubusercontent.com
#保存后退出再尝试
2、rosdep update 超时
# 解决办法:更新源
sudo apt-get update
# 安装python-rosdep
sudo apt-get install python-rosdep

2.6 设置环境

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc

2.7 安装rosinstall,便利的工具

# SQL
sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential
# Nginx
sudo apt install ros-melodic-jsk-rviz-plugins

2.8 检验

打开终端,输入roscore命令,可以看到ROS已经成功在ubuntu上运行起来
在这里插入图片描述

3 rviz将bag数据可视化为点云

准备好.bag数据
在这里插入图片描述

3.1 打开ROS和rviz软件

#  1. 打开终端(命名为终端1),运行ROS
roscore
# 2. 新建一个终端(命名为终端2),打开RVIZ软件
rosrun rviz rviz 

3.2 配置rviz软件可视化点云

# 1 查看.bag文件的信息,特别是topics
rosbag info 2023-04-25-02-51-12.bag

在这里插入图片描述

# 2. 播放.bag文件,只有在播放的过程中才能配置rviz
rosbag play 2023-04-25-02-51-12.bag -l

在这里插入图片描述

# 3. 查看PointCloud2的Fixed Frame
rostopic echo /benewake/X2PointCloud | grep frame_id

在这里插入图片描述

# 4.手动Add,PointCloud2如图所示

在这里插入图片描述

# 5. 配置Topic(直接选择)和Fixed Frame(根据步骤3)

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

4 open3d可视化pcl文件

4.1 安装open3d

pip install open3d

4.2 执行脚本

import open3d as o3d
pcd = o3d.io.read_point_cloud('/media/ll/0FE806A40FE806A4/out/pcd/5331.926511360.pcd')
o3d.visualization.draw_geometries([pcd])

显示如下图所示
在这里插入图片描述
在这里插入图片描述

参考链接

  1. ROS——在Ubuntu18.04下基于ROS Melodic编译python3的cv_bridge
  2. rosdep update 超时失败2021最新解决方法
  3. https://github.com/fishros/install

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/84646.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【论文阅读】基于深度学习的时序预测——Autoformer

系列文章链接 论文一:2020 Informer:长时序数据预测 论文二:2021 Autoformer:长序列数据预测 论文链接:https://arxiv.org/abs/2106.13008 github链接:https://github.com/thuml/Autoformer 解读参考&…

UDS诊断笔记

文章目录 常见缩写简介UDS寻址模式1. 物理寻址(点对点、一对一)2. 功能寻址(广播、一对多)3. 功能寻址使用场景举例 UDS报文格式UDS协议栈网络层网络层功能网络层协议1. 单帧 SF(Single Frame)2. 首帧 FC&a…

gradio解决上传文件数最大为1000的限制

当使用上传文件夹功能传输超过1000个文件时,会报出以下错误: 在github上,最新版的gradio仓库已经解决了这一问题: 但是这一更改还没有正式发布,因此无法使用pip更新: 因此只能先手动git clone https://g…

Pytest三种运行方式

Pytest 运行方式共有三种: 1、主函数模式 运行所有 pytest.main() 指定模块 pytest.main([-vs],,./testcase/test_day1.py) 只运行testcase 下的test_day1.py 文件 指定目录 pytest.main([-vs]),./testcase) 只运行testcase 目录下的文件 通过nodeid指定用例…

JavaScript + GO 通过 AES + RSA 进行数据加解密

浏览器端搞些小儿科的加密,就好比在黑暗夜空中,点缀了几颗星星,告诉黑客「这里有宝贵信息,快来翻牌」 浏览器端的加密,都是相对安全的。 它的具体安危,取决于里面存在的信息价值,是否值得破解者…

虹科新品 | 振动监测:提升风能行业效率与安全!

一、 CTC概览 服务于工业振动分析市场ISO 9001认证设计和测试以满足工业环境的实际需求无条件终身保修兼容所有主要数据采集器、分析仪和在线系统美国制造 二、风能行业:为什么要进行监测? 在风能行业,振动监测是一项至关重要的节约成本和安…

学习笔记-JVM监控平台搭建

SpringBoot Actuator 1 引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId> </dependency>2 开启配置 # 暴露所有的监控点【含Prometheus】 management.endpoin…

windows下以指定用户访问SMB服务器进行读写

一 概述 最近遇到一个问题&#xff0c;linux 的 smb服务器开启匿名访问&#xff0c;windows访问linux文件夹不需要用户名密码就可以进去使用&#xff0c;但是存在一个问题&#xff0c;ssh连接到linux 后修改的文件&#xff0c;在windows已smb方式下打开某个文件修改 是没有权限…

uniapp文件下载并预览

大概就是这样的咯&#xff0c;文件展示到页面上&#xff0c;点击文件下载并预览该文件&#xff1b; 通过点击事件handleDownLoad(file.path)&#xff0c;file.path为文件的地址&#xff1b; <view class"files"><view class"cont" v-for"(…

docker-compose Install minio

前言 MinIO 是一种高性能、兼容 S3 的对象存储。它专为大规模 AI/ML、数据湖和数据库工作负载而构建。它在本地和任何云(公共或私有云)上运行,从数据中心到边缘。MinIO是GNU AGPL v3下的软件定义和开源。 MinIO是对象存储服务,它基于Apache License 开源协议,兼容Amazon …

无脑——010 复现yolov8 使用rt detr 训练自己的数据集

1.配置环境 1. 首先去官网下载yolov8的zip https://github.com/ultralytics/ultralytics 存放在我的目录下G:\bsh\yolov8 然后使用conda创建新的环境 conda create -n yolov8 python3.8 #然后激活环境 conda activate yolov8然后安装pytorch&#xff0c;注意 &#xff0c;py…

GitOps 与 DevOps:了解关键差异,为企业做出最佳选择

在软件开发领域&#xff0c;GitOps 和 DevOps 是加强协作和实现软件交付流程自动化的重要技术。虽然这两种模式都旨在提高软件开发生命周期的效率&#xff0c;但它们的核心原则和实施方式却各不相同。 本篇文章将帮助您了解 GitOps 和 DevOps 之间的差异、它们的工作流程&am…

linux安装redis带图详细

如何在Linux系统中卸载Redis 一、使用apt-get卸载Redis sudo apt-get purge redis-server如果使用apt-get安装Redis&#xff0c;可以使用apt-get purge命令完全卸载Redis。其中&#xff0c;purge命令会不仅仅删除Redis二进制文件&#xff0c;还会删除配置文件、数据文件和日志…

logstash 采集 docker 日志

1、nginx容器部署 参考&#xff1a;nginx容器部署 将容器内的nginx日志文件映射到宿主机/home/logs/nginx目录下 注意&#xff1a;并且需要需要将日志的输出格式修改为json 2、编辑vim /opt/logstash-7.4.2/config/nginx-log-es.conf 文件&#xff0c;收集docker nginx容器日…

Vue + MapBox快速搭建

一、说明&#xff1a; 1.mapbox-gl自2.0版本开始不再开源&#xff0c;需要用户在官网申请key使用。 2.maplibre GL JS是一个开源库&#xff0c;它起源于 mapbox-gl-js 的开源分支。该库的初始版本&#xff08;1.x&#xff09;旨在替代Mapbox的OSS版本。简单来说maplibre是mapb…

Chatgpt API调用报错:openai.error.RateLimitError

Chatgpt API 调用报错&#xff1a; openai.error.RateLimitError: You exceeded your current quota, please check your plan and billing details. 调用OpenAI API接口 import openai import osopenai.api_key os.getenv("OPENAI_API_KEY")result openai.Chat…

Linux系统之使用cmatrix实现数字雨效果

Linux系统之使用cmatrix实现数字雨效果 一、cmatrix介绍二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、环境准备工作3.1 安装开发环境3.2 安装基本软件3.3 安装 ImageMagick等工具 四、安装aalib工具4.1 新建目录4.2 下载aalib安装包4.3 解压软件包4.4 编译安装aalib …

Unity Git项目添加子模块

在 当前仓库根目录下执行命令 git submodule add https://github.com/xxx/child.git 检查仓库状态 git status 更新子库 git submodule update --remote 下拉父仓库Git并保住子库也更新 git pull --recurse-submodules 推荐使用 Githubdesktop工具 这样你可以更清楚的看到自己…

Redis学习笔记Day01-Redis入门

声明&#xff1a;本博客部分内容是从终极SpringBoot讲义摘抄的&#xff0c;文字是OCR识别出来的&#xff0c;有可能存在识别错误的可能&#xff0c;如有错误&#xff0c;请大胆指正&#xff0c;我马上修改&#xff01; 目录 0.官方参考手册API1.连接命令2.key相关命令3.String命…

基础实验篇 | QGC实时调整控制器参数实验

PART 1 实验名称及目的 QGC实时调整控制器参数实验&#xff1a;在进行硬件在环仿真和真机实验时&#xff0c;常常需要在QGC地面站中观察飞行状态&#xff0c;并对控制器参数进行实时调整&#xff0c;以使得飞机达到最佳的控制效果&#xff0c;但是&#xff0c;在Simulink中设…