配置与准备

本章将带你完成 Raspberry Pi Zero 2 W(简称 Raspi-Zero)和 Raspberry Pi 5(简称 Raspi-5)的基础配置。内容涵盖硬件准备、操作系统安装、初始配置与测试,帮助你为后续的机器学习项目打下坚实基础。

Raspi-5 的通用配置方法同样适用于旧款 Raspberry Pi,如 Raspi-3 和 Raspi-4。

概述

Raspberry Pi 是一款功能强大且灵活的单板计算机,已成为各类工程师不可或缺的工具。由 Raspberry Pi 基金会 推出,这些小巧设备兼具低成本、高算力和丰富的 GPIO(通用输入输出)接口,非常适合原型开发、嵌入式系统设计及各类工程项目。

主要特性

  • 计算能力强:体积虽小,但最新型号配备多核 ARM 处理器和最高 8 GB 内存,性能不俗。
  • GPIO 接口丰富:40 针 GPIO 排针可直接连接各类传感器、执行器,便于软硬件协同开发。
  • 连接性强:内置 Wi-Fi、蓝牙、以太网和多个 USB 接口,支持多种通信与联网场景。
  • 底层硬件访问:支持 I2C、SPI、UART 等接口,便于与外部设备深度交互。
  • 软实时能力:合理配置后可用于软实时应用,适合控制系统与信号处理。
  • 能耗低:低功耗设计,尤其是 Pi Zero 系列,适合电池供电和节能场景。

本书涉及的 Raspberry Pi 型号

  • Raspberry Pi Zero 2 W(Raspi-Zero)

    • 适用场景:紧凑型嵌入式系统
    • 主要参数:1 GHz 四核 ARM Cortex-A53,512 MB 内存,极低功耗
  • Raspberry Pi 5(Raspi-5)

    • 适用场景:边缘计算、计算机视觉、边缘 AI(如 LLM)等高性能需求
    • 主要参数:2.4 GHz 四核 ARM Cortex-A76,最高 8 GB 内存,支持 PCIe 扩展

工程应用场景

  • 嵌入式系统设计
  • 物联网与网络设备开发(支持 MQTT、CoAP、HTTP/HTTPS 等协议)
  • 控制系统(如 PID 控制、执行器接口)
  • 计算机视觉与 AI(支持 OpenCV、TensorFlow Lite 等库)
  • 数据采集与分析(实时数据采集与日志系统)
  • 机器人控制与运动规划
  • 信号处理(实时信号分析与滤波)
  • 网络安全(VPN、防火墙、渗透测试等)

本教程将带你完成主流 Raspberry Pi 型号的配置,助你快速开启机器学习项目。内容聚焦硬件准备、操作系统安装与初始配置,重点为 ML 应用做好环境准备。

硬件简介

Raspberry Pi Zero 2 W

图 1: Raspberry Pi Zero 2 W 主板
图 1: Raspberry Pi Zero 2 W 主板
  • 处理器:1 GHz 四核 64 位 ARM Cortex-A53
  • 内存:512 MB SDRAM
  • 无线:2.4 GHz 802.11 b/g/n 无线局域网,蓝牙 4.2,BLE
  • 接口:Mini HDMI、micro USB OTG、CSI-2 摄像头接口
  • 供电:5V(micro USB)

Raspberry Pi 5

图 2: Raspberry Pi 5 主板
图 2: Raspberry Pi 5 主板
  • 处理器
    • Pi 5:四核 64 位 ARM Cortex-A76 @ 2.4 GHz
    • Pi 4:四核 Cortex-A72 (ARM v8) 64 位 SoC @ 1.5 GHz
  • 内存:2 GB、4 GB 或 8 GB(AI 推荐 8 GB)
  • 无线:双频 802.11ac,无线蓝牙 5.0
  • 接口:2 个 micro HDMI、2 个 USB 3.0、2 个 USB 2.0、CSI 摄像头、DSI 显示接口
  • 供电:5V DC(USB-C,3A)

实验中会用 RaspiRaspi-5Raspi-Zero 等不同名称指代树莓派。若无特殊说明,Raspi 泛指所有型号通用的操作。

安装操作系统

操作系统简介

操作系统(OS)是管理计算机硬件与软件资源的基础软件,为应用程序提供标准服务。它是计算机运行的核心,负责内存、进程、驱动、文件与安全等管理。

  • 主要功能

    • 进程管理:分配 CPU 资源
    • 内存管理:动态分配与回收内存
    • 文件系统管理:组织文件与目录
    • 设备管理:与硬件设备通信
    • 用户界面:提供交互方式
  • 核心组件

    • 内核(Kernel):硬件资源管理核心
    • Shell:用户与系统交互界面
    • 文件系统:数据存储与管理
    • 设备驱动:软硬件通信桥梁

Raspberry Pi 运行专为嵌入式优化的 Linux 发行版,通常为基于 Debian 的 Raspberry Pi OS(原 Raspbian),针对 ARM 架构和有限资源做了优化。

最新 Raspberry Pi OS 基于 Debian Bookworm

主要特性

  • 轻量高效,适配树莓派硬件
  • 支持多种应用与编程语言
  • 开源可定制,社区活跃
  • 原生支持 GPIO,便于硬件交互
  • 持续更新,安全性与性能不断提升

嵌入式 Linux 让树莓派成为从简单 IoT 到复杂边缘 ML 应用的理想平台,兼容标准 Linux 工具与库,开发与实验极为便利。

安装步骤

树莓派需通过 SD 卡启动操作系统。推荐使用 Raspberry Pi Imager 工具在 macOS、Windows 或 Linux 上下载并写入系统镜像,并可预设账号、WiFi、SSH 等参数。

操作步骤如下:

  1. 下载 并安装 Raspberry Pi Imager。

  2. 插入 microSD 卡(建议 32GB)。

  3. 打开 Imager,选择你的树莓派型号。

  4. 选择合适的操作系统:

    • Raspi-Zero 推荐选择 Raspberry Pi OS Lite (64-bit)

      图 3: Raspberry Pi Zero 2 W 烧录界面
      图 3: Raspberry Pi Zero 2 W 烧录界面

      由于 Raspi-Zero 内存仅 512 MB,建议用 32 位系统。但如需运行 YOLOv8 等模型,建议用 64 位。为节省内存,选择无桌面的 LITE 版。

    • Raspi-5 可选完整 64 位桌面版 Raspberry Pi OS (64-bit)

      图 4: Raspberry Pi 5 烧录界面
      图 4: Raspberry Pi 5 烧录界面
  5. 选择 microSD 卡作为存储设备。

  6. 点击 Next,再点齿轮图标进入高级选项。

  7. 设置主机名、用户名与密码、WiFi、启用 SSH(非常重要)。

    图 5: Raspberry Pi Imager 高级设置
    图 5: Raspberry Pi Imager 高级设置
  8. 写入镜像到 microSD 卡。

示例中主机名会因设备不同而变化,如 raspi、raspi-5、raspi-zero 等,请根据实际情况替换。

初始配置

  1. 将 microSD 卡插入树莓派。
  2. 连接电源启动。
  3. 等待首次启动完成(需几分钟)。

常用 Linux 命令可参考 命令速查表 1 命令速查表 2

远程访问

SSH 远程登录

最便捷的方式是通过 SSH(无头模式)远程操作。可用终端(Mac/Linux)、 PuTTy (Windows)等工具。

  1. 查找树莓派 IP 地址(可在路由器管理界面查看)。

  2. 在电脑终端输入:

    ssh 用户名@[树莓派 IP 地址]
    

    若无 IP,可尝试:

    ssh 用户名@主机名.local
    

    例如:ssh [email protected]ssh [email protected] 等。

    图 6: SSH 登录示例
    图 6: SSH 登录示例

    出现如下提示即表示已远程连接:

    mjrovai@rpi-5:~ $
    

    建议定期更新系统:

    sudo apt-get update
    sudo apt upgrade
    

    查询当前 IP:

    hostname -I
    
    图 7: 查询 IP 地址
    图 7: 查询 IP 地址

远程关机

切勿直接断电关机,以免数据丢失或 SD 卡损坏。请使用命令:

sudo shutdown -h now

关机后等待 LED 熄灭再断电,确保数据安全。

文件传输

可用 U 盘、终端(scp)、FTP 工具等方式在树莓派与主机间传文件。

使用 scp 协议

上传文件到树莓派

假设主机有 test.txt 文件,终端执行:

scp test.txt <用户名>@<树莓派IP>:~/

~/ 表示树莓派主目录。若需传到其他目录,需提前创建。

例如:

scp test.txt [email protected]:~/
图 8: scp 上传文件
图 8: scp 上传文件

登录树莓派后可用 ls 查看文件:

图 9: 树莓派查看文件
图 9: 树莓派查看文件

从树莓派下载文件

主机终端执行:

scp <用户名>@<树莓派IP>:myfile.txt .

例如:

树莓派上复制一份文件:

cp test.txt test_2.txt

主机下载:

scp [email protected]:test_2.txt .
图 10: scp 下载文件
图 10: scp 下载文件

使用 FTP 工具

可用 FileZilla 等 FTP 客户端,主机名填树莓派 IP:

sftp://192.168.4.210

输入用户名与密码,点击 Quickconnect,即可在左右窗口分别浏览主机与树莓派文件。

图 11: FileZilla 文件传输
图 11: FileZilla 文件传输

增加 SWAP 内存

htop 是跨平台进程与资源监控工具,可实时查看进程、CPU、内存等。安装后输入:

htop
图 12: htop 监控界面
图 12: htop 监控界面

Raspi-Zero 内存仅 512 MB,远低于 Raspi 4/5 的 2~8 GB。可通过增加 SWAP(交换分区)提升可用内存,便于运行如 YOLO 等大模型。

默认 SWAP 仅 100 MB,建议增至 2 GB。操作如下:

  1. 关闭 swap:

    sudo dphys-swapfile swapoff
    
  2. 编辑配置文件:

    sudo nano /etc/dphys-swapfile
    

    找到 CONF_SWAPSIZE,将默认值(如 200)改为 2000:

    CONF_SWAPSIZE=2000
    

    保存退出。

  3. 重新启用 swap 并重启:

    sudo dphys-swapfile setup
    sudo dphys-swapfile swapon
    sudo reboot
    

重启后,htop 显示 swap 已接近 2 GB。

建议另开终端窗口运行 htop,便于持续监控。

安装摄像头

树莓派非常适合计算机视觉应用。可通过 USB 摄像头(需 OTG 转接)或 CSI 摄像头模块实现。

USB 摄像头画质通常不及 CSI 模块,且无法用 raspistillraspivid 或 Python 的 picamera 控制。但如需多摄像头、长线缆或手头仅有 USB 摄像头时也可选用。

安装 USB 摄像头

  1. 关机:

    sudo shutdown -h now
    
  2. 连接 USB 摄像头(如 30fps,1280×720),本例以 Raspi-Zero 为例,其他型号同理。

    图 13: USB 摄像头连接
    图 13: USB 摄像头连接
  3. 开机并 SSH 登录。

  4. 检查摄像头识别情况:

    lsusb
    

    应能看到摄像头设备。

    图 14: lsusb 检查摄像头
    图 14: lsusb 检查摄像头
  5. 拍摄测试照片:

    fswebcam test_image.jpg
    

    当前目录下生成 test_image.jpg

    图 15: fswebcam 拍照
    图 15: fswebcam 拍照
  6. 用 scp 或 FileZilla 将图片传回主机查看:

    scp [email protected]:~/test_image.jpg .
    

    替换用户名与主机名。

    图 16: scp 下载图片
    图 16: scp 下载图片
  7. 若画质不佳,可调整分辨率(如 YOLO 推荐 640x640):

    fswebcam -r 640x640 --no-banner test_image_yolo.jpg
    
    图 17: 高分辨率拍照
    图 17: 高分辨率拍照

    普通 USB 摄像头同样适用:

    图 18: 普通 USB 摄像头
    图 18: 普通 USB 摄像头

    lsusb 验证:

    图 19: lsusb 检查
    图 19: lsusb 检查

视频流推送

如需视频流(资源消耗较大),可安装 mjpg-streamer:

  1. 安装 Git:

    sudo apt install git
    
  2. 安装依赖、克隆仓库并编译:

    sudo apt install cmake libjpeg62-turbo-dev
    git clone https://github.com/jacksonliam/mjpg-streamer.git
    cd mjpg-streamer/mjpg-streamer-experimental
    make
    sudo make install
    
  3. 启动视频流:

    mjpg_streamer -i "input_uvc.so" -o "output_http.so -w ./www"
    
  4. 浏览器访问:

    http://<树莓派IP>:8080
    

    例如:http://192.168.4.210:8080

    或直接访问流:

    http://<树莓派IP>:8080/?action=stream
    
    图 20: 视频流界面
    图 20: 视频流界面

安装 CSI 摄像头模块

树莓派官方摄像头有多代产品,最新为 12MP Camera Module 3

5MP(Arducam OV5647)已停产,但第三方仍有销售:

图 21: Raspi-Zero 安装摄像头
图 21: Raspi-Zero 安装摄像头

8MP(Sony IMX219)为 v2 模块:

图 22: Raspi-5 安装摄像头
图 22: Raspi-5 安装摄像头

使用 CSI 摄像头需修改配置文件:

sudo nano /boot/firmware/config.txt

底部添加对应摄像头型号:

  • 5MP OV5647:

    dtoverlay=ov5647,cam0
    
  • 8MP IMX219:

    dtoverlay=imx219,cam0
    

保存并重启:

sudo reboot

重启后检测摄像头:

libcamera-hello --list-cameras
图 23: Raspi-Zero 摄像头检测
图 23: Raspi-Zero 摄像头检测
图 24: Raspi-5 摄像头检测
图 24: Raspi-5 摄像头检测

libcamera 是树莓派官方推荐的开源摄像头库,直接支持 ARM Linux 系统,减少了专有代码依赖。

拍摄一张 640×480 的 jpeg 测试图像:

rpicam-jpeg --output test_cli_camera.jpg --width 640 --height 480

ls -f 查看文件,再用 scp 下载查看:

图 25: Raspi-5 拍照测试
图 25: Raspi-5 拍照测试

远程访问桌面环境

如安装了完整桌面版 Raspberry Pi OS,可通过 VNC 远程访问图形界面,适合需要可视化操作的场景。配置步骤如下:

  1. 启用 VNC 服务:

    • SSH 登录树莓派

    • 执行:

      sudo raspi-config
      
    • 选择 Interface Options,启用 VNC

      图 26: VNC 配置界面 1
      图 26: VNC 配置界面 1
      图 27: VNC 配置界面 2
      图 27: VNC 配置界面 2
      图 28: VNC 配置界面 3
      图 28: VNC 配置界面 3
  2. 主机安装 VNC Viewer(如 RealVNC Viewer )。

  3. 查询树莓派 IP:

    hostname -I
    
    图 29: 查询 IP
    图 29: 查询 IP
  4. 打开 VNC Viewer,输入 IP 与主机名,登录账号密码。

    图 30: VNC 登录界面
    图 30: VNC 登录界面
    图 31: VNC 输入账号
    图 31: VNC 输入账号
  5. 成功后即可在主机上看到树莓派桌面。

    图 32: VNC 远程桌面
    图 32: VNC 远程桌面
  6. 如需调整分辨率,可在桌面设置或 config.txt 中修改。推荐在桌面菜单(左上角树莓图标)选择最适合显示器的分辨率。

    图 33: 分辨率设置
    图 33: 分辨率设置

系统更新与软件安装

  1. 更新系统:

    sudo apt update && sudo apt upgrade -y
    
  2. 安装常用软件:

    sudo apt install python3-pip -y
    
  3. 启用 pip(如遇权限问题):

    sudo rm /usr/lib/python3.11/EXTERNALLY-MANAGED
    

不同型号的注意事项

Raspberry Pi Zero (Raspi-Zero)

  • 性能有限,适合轻量级项目
  • 推荐无头(SSH)模式节省资源
  • 内存密集型任务建议增加 swap
  • 可用于图像分类、目标检测实验,不适合 LLM(SLM)

Raspberry Pi 4/5(Raspi-4 或 Raspi-5)

  • 性能强劲,适合 AI 与机器学习
  • 可流畅运行桌面环境
  • Raspi-4 适合图像分类与目标检测,不适合 LLM(SLM)
  • Raspi-5 跑 LLM(SLM)建议加装主动散热器

请根据实际型号调整项目需求。Raspi-Zero 适合低功耗、空间受限场景,Raspi-4/5 更适合高算力任务。

文章导航

章节内容

这是章节的内容页面。

章节概览

评论区