记录:安装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系统之间复制粘贴

相关推荐
A-刘晨阳4 分钟前
【Linux】Redis 6.2.6 的二进制部署【适用于多版本】
linux·运维·redis
cat_with_cat22 分钟前
Linux网络:UDP socket创建流程与简单通信
linux·网络·udp
2401_861615281 小时前
跨平台的ARM 和 x86 Docker 镜像:汇编语言实验环境搭建
linux·汇编·ubuntu·docker·容器
hz355721 小时前
IO多路复用--epoll
linux
努力学习的小廉1 小时前
深入了解linux系统—— System V之消息队列和信号量
android·linux·开发语言
华无丽言1 小时前
如何简单实现发版不影响客户使用?nginx负载
linux·nginx
自由游戏开发者1 小时前
用U盘启动制作centos系统最常见报错,系统卡住无法继续问题(手把手)
linux·运维·centos
Ronin3052 小时前
【Linux系统】vim编辑器 | 编译器gcc/g++ | make/Makefile
linux·运维·服务器·ubuntu·编辑器·vim
Bruce_Liuxiaowei2 小时前
Netstat高级分析工具:Windows与Linux双系统兼容的精准筛查利器
linux·运维·网络·windows·安全
yt948322 小时前
C#实现CAN通讯接口
java·linux·前端