当前位置: 首页 > news >正文

无屏操作指南:Raspberry Pi 4 + Ubuntu 20.04 + ROS noetic 的远程部署与配置

1. 准备工作:硬件与镜像烧录

搞机器人和物联网开发的朋友们,肯定对树莓派不陌生。我最近刚用树莓派4B搭建了一个ROS开发环境,整个过程完全不需要显示器,全靠远程操作。先说说需要准备的东西:

  • 树莓派4B:建议选4GB或8GB内存版本,性能足够跑Ubuntu和ROS
  • 至少32GB的microSD卡:实测16GB的卡装完系统后剩余空间太小,容易出问题
  • 读卡器:用来烧录系统镜像
  • 稳定的Wi-Fi环境:这是无屏操作的关键,后面会详细讲配置技巧

镜像烧录我用的是官方的Raspberry Pi Imager,这个工具特别方便。选择Ubuntu Server 20.04.5 LTS版本时,记得点开左下角的"高级选项"(Ctrl+Shift+X),这里有三个关键设置:

  1. 启用SSH:勾选这个选项,并设置好用户名和密码
  2. 配置Wi-Fi:填写你的Wi-Fi名称和密码,确保和电脑在同一个网络
  3. 区域设置:建议把键盘布局改成us,避免后续终端操作出现奇怪问题

烧录完成后别急着拔卡,有个小技巧:在boot分区新建一个名为ssh的空文件(Windows用户可以直接新建文本文档然后删掉.txt后缀),这是双重保险确保SSH服务开启。

2. 启动与IP地址查找

第一次启动树莓派时,最让人着急的就是不知道它的IP地址。我刚开始玩的时候,经常要等好几分钟才能找到设备。这里分享几个实用技巧:

观察指示灯状态

  • 红色常亮:电源正常
  • 绿色闪烁:系统正在启动
  • 绿色规律闪烁:系统已启动完成

如果绿灯一直不亮,可能是烧录有问题,需要重新操作。等绿灯开始有规律闪烁后,就可以开始找IP了。

Windows用户: 推荐用Advanced IP Scanner,扫描范围设置成你路由器的网段,比如192.168.1.1-192.168.1.255。扫描结果里找主机名包含"ubuntu"的设备,那就是你的树莓派。

Linux/macOS用户: 先用ifconfig查自己电脑的IP,比如得到192.168.1.100,子网掩码255.255.255.0,那么树莓派就在192.168.1.0/24这个网段。接着用nmap扫描:

sudo nmap -sn 192.168.1.0/24

找MAC地址开头是DC:A6:32的设备,那就是树莓派。如果找不到,可能是Wi-Fi没连上,可以尝试:

  1. 给树莓派接上网线
  2. 重启路由器
  3. 等待5分钟再扫描

3. SSH连接与基础配置

找到IP后,用任何支持SSH的工具连接都行。我习惯用VS Code的Remote-SSH插件,因为后续开发更方便。连接命令很简单:

ssh 你的用户名@树莓派IP

第一次连接会提示密钥确认,输入yes就行。然后输入密码(注意:输入时不会显示字符,这是正常的)。

登录成功后,建议先做这些基础配置:

  1. 修改主机名(方便识别):
sudo hostnamectl set-hostname my-ros-pi
  1. 更新系统
sudo apt update && sudo apt upgrade -y
  1. 安装必要工具
sudo apt install -y vim tmux htop
  1. 配置静态IP(可选但推荐): 编辑网络配置文件:
sudo vim /etc/netplan/50-cloud-init.yaml

添加以下内容(根据你的网络调整):

network: version: 2 wifis: wlan0: dhcp4: no addresses: [192.168.1.200/24] gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8, 1.1.1.1] access-points: "你的Wi-Fi名称": password: "你的Wi-Fi密码"

保存后应用配置:

sudo netplan apply

4. ROS Noetic安装详解

终于到重头戏了!ROS Noetic是最后一个支持Python2的版本,但对树莓派来说也是最稳定的选择。安装过程有几个坑要注意:

第一步:设置软件源

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

第二步:添加密钥

sudo apt install curl curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

第三步:安装桌面版ROS这里有个选择:

  • 如果你只需要基础功能:
sudo apt install ros-noetic-ros-base
  • 如果需要GUI工具(RViz等):
sudo apt install ros-noetic-desktop

我建议先装ros-base,等需要时再补装其他包,这样可以节省空间。

第四步:环境配置

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

第五步:安装依赖工具

sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

第六步:初始化rosdep这一步经常出问题,我总结了个稳定方案:

sudo rosdep init rosdep update

如果报错,尝试:

sudo apt install python3-pip pip3 install rosdepc sudo rosdepc init rosdepc update

5. 验证与常见问题

安装完成后,运行以下命令测试:

roscore

如果看到类似这样的输出,说明安装成功:

... logging to /home/ubuntu/.ros/log/xxxxx started core service [/rosout]

常见问题解决方案

  1. roscore报错

    • 检查是否source了setup.bash
    • 确保没有其他roscore在运行
  2. ROS命令找不到

    source /opt/ros/noetic/setup.bash
  3. 网络问题

    • 确保/etc/hosts里有127.0.1.1对应主机名
    • 检查~/.bashrc里没有错误的ROS_MASTER_URI设置
  4. 空间不足

    sudo apt clean sudo journalctl --vacuum-size=50M

最后给个小技巧:用tmux创建持久会话,这样即使SSH断开,roscore也不会停止:

tmux new -s ros roscore # 断开后重新连接 tmux attach -t ros
http://www.cnnetsun.cn/news/1883604.html

相关文章:

  • 软件批处理化的批量作业与调度执行
  • 第 10 章:Channel——Go 并发的核心通信机制
  • 从零到一:如何用RoboMaster开发板C型快速掌握嵌入式机器人开发
  • 玻璃幕墙“开启窗”结构计算大全
  • **发散创新:基于Python的知识推理引擎实现与实践**在人工智能快速发展的今天,**知识推理**已成为构建智能系统的核
  • Eigen教程:2 矩阵运算优化与性能调优实战
  • 解锁BT下载极限性能:trackerslist项目的科学配置指南
  • 八大网盘直链获取终极指南:告别限速困扰的完整解决方案
  • 如何构建基于深度学习YOLOV8草原无人机牛羊检测系统 YOLOV8预训练模型如何训练无人机牛羊目标检测数据集 无人机牛羊识别系统
  • Ubuntu18.04中文输入法避坑指南:为什么你的fcitx框架总安装失败?
  • 如何高效批量下载微博相册高清图片?Python多线程工具全解析
  • 实战指南:为达梦数据库构建端到端SSL安全通信链路
  • AI头像生成器入门指南:非技术用户如何用自然语言描述获得专业级绘图提示
  • # 发散创新:基于CQRS模式的高并发订单系统架构设计与实现在现代分布式系统中,**读写分离**和**性能优化**是绕
  • BepInEx完整指南:5分钟掌握Unity游戏插件框架安装与配置
  • WaveTools终极指南:如何轻松解锁鸣潮帧率并优化游戏画质
  • 网络安全攻防实战演练
  • 避坑指南:SQLServer子查询中90%人会犯的3个语法错误(含性能优化)
  • Power BI数据清洗实战
  • 5分钟掌握ZeroOmega:跨浏览器智能代理切换的终极解决方案
  • 嘉立创EDA PCB设计中的高效对齐与等间距技巧
  • TM1650四位数码管进阶玩法:用Arduino实现动态显示与亮度调节
  • React 状态管理性能对比
  • Blender 3MF插件完整指南:如何在Blender中轻松处理3D打印文件
  • 如何在企业内部搭建高可用的NTP服务器?详解/etc/ntp.conf关键配置
  • 艾尔登法环帧率解锁终极指南:告别60帧限制,体验144Hz流畅战斗
  • Qwen3.5-2B模型辅助VMware虚拟机管理:从安装Ubuntu到配置开发环境
  • Excel批量查询神器:5分钟完成100个Excel文件的数据检索
  • 2026年离子风扇采购指南:苏州专业源头厂家实力大起底
  • AI赋能传统文化:丹青识画如何智能识别图片并生成题跋