Datawhale 算法笔记 AI硬件与机器人大模型 (四)
还没买RDK X5,总结了教程。
本次内容专题:
- 硬件实践与前沿技术
- DK-X5开发板控制
- LeRobot VLA控制
还没买RDK X5,总结了教程
RDK X5 开发指南:从入门到AI应用
一、认识开发板
硬件配置
RDK X5 是一款为机器人和边缘AI设计的开发板,性能强劲:
- 处理器:8核 Arm Cortex-A55 @ 1.5GHz
- 内存:4GB/8GB LPDDR4
- AI算力:10 TOPS(BPU神经网络加速单元)
- GPU:32 GFlops
- 视频编解码:支持4K@60fps H.265/H.264
接口说明
板子上该有的接口基本都有了:
重点关注这几个:
- ①供电口(USB Type-C):务必用5V/3A适配器,电脑USB口带不动
- ③易连口(USB Type-C):用于刷机和数据传输
- ⑬TF卡槽(底面):系统盘,最少8GB
- ⑤摄像头接口:2路MIPI CSI,接摄像头用
- ⑥网口:千兆以太网,支持POE供电
其他的USB 3.0、HDMI、40PIN GPIO等接口该有的都有。
二、系统安装
准备清单
- 5V/3A 的 USB Type-C 电源(重要!)
- 8GB以上的TF卡
- HDMI显示器、键盘鼠标(桌面版需要)
- balenaEtcher 烧录工具
烧录系统
1. 下载镜像
去官方页面下载3.1.0或更新版本:
desktop
版:有图形界面,适合新手server
版:纯命令行,适合远程操作
2. 写入TF卡
打开balenaEtcher,三步搞定:
- 选镜像文件(.img)
- 选TF卡(别选错盘!)
- 点Flash,等它烧录完成
首次启动
- 断电状态下插入TF卡(底部卡槽)
- 接好HDMI和其他外设
- 最后接电源
大约一分钟后系统启动完成。看LED灯:绿灯常亮说明通电了,橙灯闪烁说明系统跑起来了。
注意:
- SD卡、摄像头等接口千万别热插拔
- 供电不稳会导致系统反复重启,别省电源钱
三、跑个AI模型试试:YOLOv5
系统内置了YOLOv5示例,直接能用。
cd /app/pydev_demo/07_yolov5_sample/
sudo python3 ./test_yolov5.py
跑完后会输出检测结果:
bbox: [593.95, 80.82, 672.22, 147.13], score: 0.857, id: 33, name: kite
bbox: [215.72, 696.54, 273.65, 855.30], score: 0.852, id: 0, name: person
...
同时生成一张标注好的图片output_image.jpg
,可以直接看效果。
四、接摄像头采集图像
这个官方的例子教你从MIPI摄像头抓图像,保存成RAW和YUV格式。
接线
记住:必须断电状态下接摄像头!接到板子上的CSI接口。
运行
cd /app/cdev_demo/vio_capture/
sudo make # 先编译
sudo ./capture -b 16 -c 10 -h 1080 -w 1920 # 采集10张1920x1080的图
跑完后目录里会出现raw_*.raw
和yuv_*.yuv
文件。
五、ROS 2实战:实时目标检测
最后来点进阶的例子——用ROS 2跑YOLOv8,实时检测摄像头画面,还能在浏览器里看结果。
启动步骤
# 加载ROS环境
source /opt/tros/humble/setup.bash
# 指定用MIPI摄像头
export CAM_TYPE=mipi
# 启动检测节点
ros2 launch dnn_node_example dnn_node_example.launch.py \
dnn_example_config_file:=config/yolov8workconfig.json \
dnn_example_image_width:=640 \
dnn_example_image_height:=640
查看结果
用同一局域网的电脑,浏览器打开:
http://开发板IP:8000/TogetheROS/
就能实时看到摄像头画面和检测框了。开发板IP用ifconfig
或ip addr
命令查看。
RDK Studio 使用指南:让开发更简单
为什么要用 RDK Studio?
用其它AI开发板,可能遇到过这些烦心事:
- 镜像文件一大堆,占空间,用的时候找不到
- 官方例程散落各处
- 第一次开机要准备显示器、键盘、鼠标
RDK Studio就是来解决这些问题的——一个软件搞定烧录、管理、示例运行,零基础也能轻松上手。
核心功能:
- 统一管理所有RDK板子(X3/X5/Ultra)
- 一键烧录和升级系统
- 内置示例程序,点一下就能跑
- 直接启动VSCode、Jupyter等开发工具
安装 RDK Studio
下载
去地瓜开发者社区,右上角"软件"→"RDK Studio",点"下载RDK Studio"。
目前只有Windows版,Mac和Linux版预计2025年Q1推出。
下载时可能遇到浏览器报警,选"保留"就行。
安装
双击exe自动安装,默认装在C:\Users\{你的用户名}\AppData\Local\rdk_studio
。
不想装C盘就直接把整个文件夹剪切到别处,软件不改注册表。
三种使用场景
场景1:给新板子烧系统
-
进入闪联模式(这步很关键):
- 插好SD卡
- Type-C线连电脑(用板子左边的口)
- 按住开关键不放,然后接电源
- 继续按住3-5秒,松手
- 电脑会识别出一个U盘
-
烧录:
- 打开RDK Studio,点"烧录"
- 选设备型号(如X5)
- 下一步,选镜像版本(建议最新版)
- 下一步,选目标盘(一般是/dev/sdb)
- 点"安装",等着就行
如果没识别到设备,就点刷新;还不行就重新进闪联模式。
场景2:添加已有板子
系统烧好后重启,在"设备管理"添加设备。
三种连接方式任选:
- 闪联连接:适合刚烧完系统的板子
- 网线连接:有线网络直连
- IP连接:知道板子IP地址的情况
推荐流程(闪联方式):
- 选网络设备(根据个人的连接方式选)
- 选登录用户(普通用户/Root看需求)
- 连WiFi(可以跳过)
- 给设备起个名字
完成后设备就出现在管理列表里了。
场景3:跑示例程序
左边栏点"示例程序",选择:
- 要在哪块板子上运行(下拉框选设备名)
- 想试哪个demo
点"下载示例"或"运行",立刻就能看效果。
其他可能用到的功能
添加应用:设备管理界面点"添加应用",能看到板子支持的所有工具(VSCode、Jupyter等),按需下载。
LeRobot 机器人配置指南:So101臂安装记录
准备工作
硬件
- 5V/5A电源(别用低功率的)
- 烧录好系统的RDK X5(参考官方快速开始)
- LeRobot So101双臂套件
连WiFi
nmcli dev wifi # 看有哪些网络
sudo nmcli dev wifi connect 网络名 password 密码
安装 LeRobot 环境
# 装micromamba(ARM64版)
curl -Ls https://micro.mamba.pm/api/micromamba/linux-aarch64/latest | tar -xvj bin/micromamba
./bin/micromamba shell init -s bash --root-prefix ./micromamba
echo "alias mamba=micromamba" >> ~/.bashrc
source ~/.bashrc
# 创建Python环境
mamba create -y -n lerobot python=3.10
mamba activate lerobot
mamba install ffmpeg -c conda-forge
# 下载LeRobot
git clone https://github.com/huggingface/lerobot
cd lerobot
git checkout user/michel-aractingi/2025-06-02-docs-for-hil-serl
# 配置清华源(国内快)
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 安装依赖
pip install -e ".[feetech]"
配置机械臂
1. 找端口
# 给权限
sudo chmod 666 /dev/ttyACM0
sudo chmod 666 /dev/ttyACM1
# 运行识别脚本
python lerobot/scripts/find_motors_bus_port.py
程序会提示你拔USB线,按提示操作:
- 先记录所有端口
- 拔掉主臂USB,看哪个端口消失了(比如
/dev/ttyACM1
) - 拔掉从臂USB,看哪个端口消失了(比如
/dev/ttyACM0
)
2. 改配置文件
编辑lerobot/common/robot_devices/robots/configs.py
,找到So101RobotConfig
类,把端口改成你刚识别出来的:
leader_arms: dict[str, MotorsBusConfig] = field(
default_factory=lambda: {
"main": FeetechMotorsBusConfig(
port="/dev/ttyACM1", # 改成主臂端口
...
),
}
)
follower_arms: dict[str, MotorsBusConfig] = field(
default_factory=lambda: {
"main": FeetechMotorsBusConfig(
port="/dev/ttyACM0", # 改成从臂端口
...
),
}
)
注意:买的预装版不用改电机ID。
3. 校准对齐
运行这条命令,会依次提示你摆姿势:
python lerobot/scripts/control_robot.py \
--robot.type=so101 \
--robot.cameras='{}' \
--control.type=calibrate \
--control.arms='["main_follower"]'
程序会提示你把机械臂摆到特定位置,摆好后按回车确认。从臂和主臂会依次校准,跟着提示走就行。
测试遥操作
校准完成后,运行这个试试能不能遥操成功:
python lerobot/scripts/control_robot.py \
--robot.type=so101 \
--robot.cameras='{}' \
--control.type=teleoperate
如果主臂动,从臂跟着动,就说明配置成功了!
- 端口识别那步别跳,端口错了后面全白干
- 校准时要按提示精确摆放,影响后续控制精度
- 有问题先检查USB线连接和权限设置
更多推荐
所有评论(0)