【ROS】Ubuntu18.04安装Ros

news2024/12/24 8:39:12

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.coloradmin.cn/o/860081.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

gpu-manager安装及测试

提示:GPU-manager安装为主部分内容做了升级开箱即用,有用请点收藏❤抱拳 文章目录 前言一、约束条件二、使用步骤1.下载镜像1.1 查看当前虚拟机的驱动类型: 2.部署gpu-manager3.部署gpu-admission4.修改kube-scheduler.yaml![在这里插入图片描…

Web Server市场占有率调查

目录 一、理论 1.Web Server市场占有率调查 一、理论 1.Web Server市场占有率调查 (1)netcraft ①查询 每月netcraft公司都会出一次调查报告 netcraft官方:Netcraft | Leader in Phishing Detection, Cybercrime Disruption and Websi…

Samba(二)

问题 Rocky Linux使用smbclient访问win11的共享文件时提示 Error NT_STATUS_IO_TIMEOUT 分析 通过测试,发现关闭windows公用网络防火墙时,可正常显示服务器端所分享出来的所有资源;进一步发现单独放行防火墙进站规则中的文件和打印机共享&a…

B树的插入与删除过程

B树的插入 原树: 插入key后,若导致原节点关键字数超过上限,则从中间位置( ⌈ m 2 ⌉ \lceil\frac{m}{2}\rceil ⌈2m​⌉)将关键字分成两部分,左部分包含的关键字放在原节点中,右部分包含的关键…

面试题:说说vue2的生命周期函数?说说vue3的生命周期函数?说说vue2和vue3的生命周期函数对比?

说说vue2的生命周期函数?说说vue3的生命周期函数?说说vue2和vue3的生命周期函数对比? 一、说说vue2的生命周期函数1.1 vue生命周期分为四个阶段、8个钩子1.1.1 beforeCreate 和 created 初始化阶段1.1.2 beforeMount 和 mounted 挂载阶段1.1.…

利用XLL文件投递Qbot银行木马的钓鱼活动分析

1概述 近期,安天CERT发现了一起利用恶意Microsoft Excel加载项(XLL)文件投递Qbot银行木马的恶意活动。攻击者通过发送垃圾邮件来诱导用户打开附件中的XLL文件,一旦用户安装并激活Microsoft Excel加载项,恶意代码将被执…

合并区间——力扣56

文章目录 题目描述解法一 排序题目描述 解法一 排序 vector<vector<int>> merge(vector<vector<int>>& intervals

SpringCloud实用篇5——elasticsearch基础

目录 1.初识elasticsearch1.1 了解ES1.1.1 elasticsearch的作用1.1.2 ELK技术栈1.1.3 elasticsearch和lucene1.1.4 总结 1.2.倒排索引1.2.1.正向索引1.2.2.倒排索引1.2.3.正向和倒排 1.3 es的一些概念1.3.1 文档和字段1.3.2 索引和映射1.3.3 mysql与elasticsearch 1.4 部署单点…

Linux MQTT智能家居项目(智能家居界面布局)

文章目录 前言一、创建工程项目二、界面布局准备工作三、正式界面布局总结 前言 一、创建工程项目 1.选择工程名称和项目保存路径 2.选择QWidget 3.添加保存图片的资源文件&#xff1a; 在工程目录下添加Icon文件夹保存图片&#xff1a; 将文件放入目录中&#xff1a; …

https的原理和方案

文章目录 https原理为什么要加密常见的加密方式对称加密非对称加密数据摘要&&数据指纹数据签名 https的几种工作方案方案一&#xff1a;只使用对称加密方案二&#xff1a;只使用非对称加密方案三&#xff1a;两端都使用非对称加密方案四&#xff1a;非对称加密 对称加…

2023年十款开源测试开发工具推荐

1、AutoMeter-API 自动化测试平台 AutoMeter 是一款针对分布式服务&#xff0c;微服务 API 做功能和性能一体化的自动化测试平台&#xff0c;一站式提供发布单元&#xff0c;API&#xff0c;环境&#xff0c;用例&#xff0c;前置条件&#xff0c;场景&#xff0c;计划&#x…

计算机工作原理:进程调度

在计算机中&#xff0c;什么是进程&#xff1f;一个跑起来的程序就是一个进程&#xff0c;没跑起来就只能算一个程序。 在windows的任务管理器中&#xff0c;可以很清楚的看到有哪一些进程。 进程&#xff08;progress&#xff09;也叫任务&#xff08;task&#xff09;。 每…

C语言进阶第二课-----------指针的进阶----------升级版

作者前言 &#x1f382; ✨✨✨✨✨✨&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f382; ​&#x1f382; 作者介绍&#xff1a; &#x1f382;&#x1f382; &#x1f382; &#x1f389;&#x1f389;&#x1f389…

腾讯云服务器配置选择方法

腾讯云服务器配置如何选择&#xff1f;CPU内存、带宽和系统盘怎么选择合适&#xff1f;个人用户可以选择轻量应用服务器&#xff0c;企业用户可以选择云服务器CVM&#xff0c;2核2G3M带宽轻量服务器95元一年、2核4G5M服务器168元一年&#xff0c;企业用户可以选择标准型S5云服务…

Gitlab CI/CD笔记-第二天-使用maven打包并且使用主机套接字进行构建并push镜像。

一、安装gitlab-runner 1.可以是linux也可以是docker的 2.本文说的是docker安装部署的。 二、直接上.gitlab-ci.yml stages: # List of stages for jobs, and their order of execution - build-image build-image-job: stage: build-image image: harbor.com:543/docke…

UEFI: 模块和包概述

UEFI规范中有两个最重要的概念&#xff1a;模块&#xff08;Module)和包&#xff08;Package&#xff09;。 模块 Module UEFI上最小的可单独编译的代码单元&#xff0c;或者是预编译的二进制文件比如efi执行文件。 包 Package 由模块、平台描述文件&#xff08;DSC)和包声明…

Leecode长度最小的子数组_209

209.长度最小的子数组 题目建议&#xff1a; 本题关键在于理解滑动窗口&#xff0c;这个滑动窗口看文字讲解 还挺难理解的&#xff0c;建议大家先看视频讲解。 拓展题目可以先不做。 题目链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成…

exchange partition global index

EXCHANGE PARTITION with a Table having a UNIQUE INDEX and PK Constraint. (Doc ID 1620636.1)​编辑To Bottom In this Document Symptoms Changes Cause Solution References APPLIES TO: Oracle Database - Enterprise Edition - Version 11.2.0.3 and later Oracle Da…

day16:static、final、常量、抽象类

一、static 静态变量能否继承&#xff1f; 静态变量属于类&#xff0c;是共享的资源&#xff0c;不认为是被继承的 静态变量不可以定义在静态方法中&#xff0c; 静态方法中先于对象存在&#xff0c; 不能使用 this super 静态方法中可以直接调用静态方法。 静态方法不能直…

MySQL中基础查询语句

用户表user数据如下&#xff1a; iddevice_idgenderageuniversityprovince12138male21北京大学Beijing23214male复旦大学Shanghai36543famale20北京大学Deijing42315female 23 浙江大学ZheJiang55432male25山东大学Shandong 1&#xff0c;写出ddl语句创建如上表&#xff0c;…