记录:安装VMware、Ubuntu、ROS2

安装了VMware,就能够在Windows系统装安装Ubuntu,使用Linux系统。安装了Ubuntu,就能在里面安装ROS2,之后写代码控制机器人儿。

安装VMware

我安装的是16 pro【具体是vmware16.2.4】,下载网站:VMware Workstation 16.2.4 Build 20089737,按照安装界面引导,一步步操作【可以搜一下专门的安装教程】,最后找一个激活码:【亲测第3个是能用的】

ZF3R0-FHED2-M80TY-8QYGC-NPKYF

YF390-0HF8P-M81RQ-2DXQE-M2UT6

ZF71R-DMX85-08DQY-8YMNC-PPHV8

安装Ubuntu

这里的重点是下载.iso光盘镜像文件,在这个list下面选择蓝色那一行:Ubuntu 22.04

之后根据Ubuntu安装引导,从磁盘上选择这个下载好的.iso文件即可

安装ROS2

最后安装ROS2,参考这个网址:ros2 安装

主要看一下那个b站视频,把每一步操作讲地很清楚:

  • 首先配置编码,支持UTF-8

$ sudo apt update && sudo apt install locales

$ sudo locale-gen en_US en_US.UTF-8

$ sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8

$ export LANG=en_US.UTF-8

  • 之后配置ros2软件源以及使用这个源的密钥【这里输入指令没有输出是最好的!!】

$ sudo apt update && sudo apt install curl gnupg lsb-release

$ sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

echo "deb \[arch=(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu (source /etc/os-release \&\& echo UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

  • 之后检测ubuntu更新,之后安装desktop版本的ros2

$ sudo apt update

$ sudo apt upgrade

$ sudo apt install ros-humble-desktop

  • 之后配置环境变量

$ source /opt/ros/humble/setup.bash

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

安装完之后,测试一下,两个例子测试都ok的话,就安装好了

  • 第一个是信息发送和监听:

启动一个终端,输入:$ ros2 run demo_nodes_cpp talker 【信息发送】

启动另外一个终端,输入:$ ros2 run demo_nodes_py listener 【信息接受】

  • 控制海龟运动

启动一个终端,输入:$ ros2 run turtlesim turtlesim_node

启动另外一个终端,输入: $ ros2 run turtlesim turtle_teleop_key【之后光标停留在第二个终端】

可以使用↑↓控制海龟前进/后退;←→控制海龟方向。

windows和ubuntu之间的复制粘贴

在Windows系统使用Ubuntu虚拟机的话,可能会跨系统复制粘贴,使用open vm tool。

参考这个帖子,安装vm-tool 即可。
如何实现ubuntu虚拟机与windows系统之间复制粘贴

相关推荐
乌萨奇也要立志学C++9 小时前
【Linux】进程控制(一) 进程创建、终止与等待概念与实战讲解
linux·服务器
挺6的还10 小时前
46.NAT、代理服务、内网穿透
linux
存储服务专家StorageExpert11 小时前
NetApp存储基本概念科普:物理层到逻辑层
linux·服务器·网络·netapp存储·存储维护
cnkeysky11 小时前
ubuntu 24.04 从 6.8 内核升级 6.11 网卡加载失败问题
linux·ubuntu
十五年专注C++开发11 小时前
通信中间件 Fast DDS(三) :fastddsgen的安装与使用
linux·c++·windows·中间件·跨平台
tt55555555555512 小时前
Linux 驱动开发与内核通信机制——超详细教程
linux·驱动开发·b树
程序设计实验室12 小时前
在Linux系统上一键配置DoH,解决DNS解析被污染
linux
关关长语12 小时前
Ubuntu 中获取指定软件依赖安装包
linux·运维·ubuntu
山,离天三尺三12 小时前
线程中互斥锁和读写锁相关区别应用示例
linux·c语言·开发语言·面试·职场和发展
dragon_cdut12 小时前
ubuntu22.04 无法清空回收站文件
linux·运维