树莓派4B的CSI端口摄像头安装 Ubuntu22.04系统ros2摄像头

1.连接摄像头

!!!!注意!!!!
连接摄像头前要先把树莓派关机
在这里插入图片描述
在这里插入图片描述

2.开启树莓派摄像头接口

打开终端运行:

sudo raspi-config

输入密码后显示下面这个界面
在这里插入图片描述
选择Interfacing Options,然后选择Legacy Camera Enable/disable legacy camera support
在这里插入图片描述
一路按ENTER键,会到初始界面后Finish重启树莓派
选择Finish
此时摄像头接口已经开启,但为了保险起见,我们还是得检测一下

确保树莓派的摄像头接口已启用

打开终端运行下列命令

sudo nano /boot/firmware/config.txt

在这里插入图片描述
下滑到底部确认下面两行代码存在

start_x=1
gpu_mem=128

并且没有被注释掉
而后CTRL+O写入保存、确认;CTRL+X离开。
若修改了/boot/firmware/config.txt需再次重启树莓派

检查摄像头接口

输入代码检查接口

sudo vcgencmd get_camera

此时应有
在这里插入图片描述

ROS2调用摄像头

安装必备包

确保安装了以下ROS 2软件包:
ros-humble-camera-info-manager
ros-humble-image-transport
ros-humble-v4l2-camera
v4l-utils(用于调试)

输入下列代码安装:

sudo apt update
sudo apt install ros-humble-camera-info-manager ros-humble-image-transport ros-humble-v4l2-camera v4l-utils

运行v4l2_camera_node节点

装好包后运行节点

ros2 run v4l2_camera v4l2_camera_node

在这里插入图片描述
此时你会发现报错,因为摄像头设备 /dev/video0的权限并没有完全开放

使用 chmod 命令将 /dev/video0 的权限设置为所有用户可读写:

sudo chmod 660 /dev/video0

再次运行节点

ros2 run v4l2_camera v4l2_camera_node

打开rqt

配置如下:
在这里插入图片描述
话题选择:在这里插入图片描述
即可看到摄像头画面

以后想要定义摄像头画面,运行节点,订阅该话题即可。

### 安装 ROS 的详细流程 要在树莓派4B上的 Ubuntu 22.04 系统中正确安装 ROS,可以遵循以下方法: #### 准备工作 确保已经成功将 Ubuntu 22.04 Desktop 镜像烧录至 SD 卡并启动树莓派设备[^1]。完成初始设置后,连接互联网以便后续操作。 --- #### 更新系统包管理器索引 在终端执行以下命令更新系统的软件包列表: ```bash sudo apt update && sudo apt upgrade -y ``` 此步骤有助于确保所有依赖项是最新的,从而减少潜在冲突[^4]。 --- #### 设置 ROS 软件源 为了获取最新的 ROS 版本,需添加官方 ROS 软件仓库到系统中。具体步骤如下: 1. 导入 ROS GPG 密钥: ```bash sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key | gpg --dearmor | tee /usr/share/keyrings/ros-archive-keyring.gpg >/dev/null ``` 2. 添加 ROS 软件源地址: ```bash 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 ``` 上述两步完成后重新刷新 APT 缓存: ```bash sudo apt update ``` --- #### 下载并安装 ROS 2 Humble 推荐使用 FishROS 提供的一键脚本来简化安装过程[^5]。运行以下命令即可自动完成环境搭建以及核心组件部署: ```bash wget http://fishros.com/install -O fishros.sh && bash fishros.sh humble ``` 注意替换 `humble` 参数为你所需的特定发行版名称(如 Foxy 或 Galactic)。该脚本会处理大部分复杂配置细节,包括但不限于路径变量调整、工具链同步等。 --- #### 初始化 rosdep 工具 Rosdep 是用于解析和满足 ROS 包所需外部依赖关系的重要实用程序。初始化它可以通过下面这条指令实现: ```bash sudo rosdep init rosdep update ``` 随后,在每次新建项目前都应调用一次 rosdep 来解决可能存在的缺失库文件问题。 --- #### 测试默认功能演示节点 验证当前安装状态是否正常的一种方式是尝试启动内置示例应用。例如,先开启 talker 进程: ```bash ros2 run demo_nodes_cpp talker ``` 接着另开一个新窗口监听消息流输出: ```bash ros2 run demo_nodes_py listener ``` 如果一切顺利的话,则应该能看到类似 “I heard...” 的周期打印日志显示于屏幕上。 --- #### 可选扩展建议 对于希望进一步定制开发体验的朋友来说,还可以考虑以下几个方面的工作事项: - **集成图形化界面支持**:针对桌面级应用场景下的增强型交互需求; - **优化性能参数设定**:依据实际硬件条件微调后台服务优先级权重分布策略; - **备份重要数据资料**:定期保存修改后的配置文档以防意外丢失恢复困难等情况发生; 以上便是关于如何基于树莓派平台构建完整 ROS 开发框架的整体指导方案概述说明内容总结完毕! ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值