第2章:仿生眼硬件平台搭建
做仿生眼项目,第一步就是搭硬件。这步要是走偏了,后面算法调得再好也白搭。我见过不少同学,买了开发板就开始跑模型,结果发现摄像头帧率跟不上,或者云台抖得像帕金森——说白了,硬件选型就是给整个系统打地基。
这一章,咱们把主控、摄像头、云台、电源这四个核心模块拆开揉碎了讲。我会结合自己踩过的坑,告诉你哪些地方可以省钱,哪些地方绝对不能省。
2.1 主控选型:Jetson Nano vs RK3588
主控是仿生眼的「大脑」。选哪个,取决于你的项目需求。我个人习惯先看三点:算力、功耗、生态。
| 对比项 | Jetson Nano (4GB) | RK3588 (8核) |
|---|---|---|
| AI算力 | 472 GFLOPS (FP16) | 6 TOPS (INT8) |
| CPU | 4核 Cortex-A57 | 4核 A76 + 4核 A55 |
| 功耗 | 5W-10W | 8W-15W |
| 价格 | 约 800-1200 元 | 约 600-900 元 |
| 生态 | NVIDIA 官方支持,资料多 | Rockchip 社区,中文资料丰富 |
| 接口 | HDMI, USB3.0, CSI, GPIO | HDMI2.1, USB3.0, MIPI CSI, PCIe |
我的建议:
- 如果你主要跑 PyTorch/TensorFlow 模型,且需要 CUDA 加速,选 Jetson Nano。我在项目中遇到过,用 Nano 跑 YOLOv5s 能做到 30fps,基本够用。
- 如果你需要多路摄像头输入(比如双目),或者想做边缘端部署,RK3588 的 6 TOPS NPU 性价比更高。而且它的 CPU 性能更强,处理图像预处理、串口通信这些杂活更从容。
2.2 摄像头模组:双目 vs 单目
仿生眼的核心是「看」。单目只能测平面,双目才能算深度。但双目不是简单地把两个摄像头粘在一起就完事了。
2.2.1 单目方案
适合做目标检测、分类。比如人脸识别、手势识别。优点是便宜、调试简单。缺点是没有深度信息,没法做避障、测距。
2.2.2 双目方案
适合做目标跟踪、三维重建、避障。两个摄像头之间的基线距离决定了深度测量范围。我建议基线选 6-8cm,这样在 0.5m-5m 范围内精度最好。
关键参数:
- 分辨率:至少 720p,推荐 1080p
- 帧率:目标检测需要 30fps 以上
- 视场角:水平 60°-90° 比较合适
- 同步:双目必须硬件触发同步,否则图像对不齐
你想想看,如果两个摄像头采集的时间差了几毫秒,目标移动快一点,深度图就全乱了。嗯,这里要注意,买双目模组时一定要问清楚有没有硬件同步功能。
2.3 云台舵机控制
仿生眼要「动」,靠的是云台。我一般用 2 个舵机:一个控制水平(Pan),一个控制垂直(Tilt)。
2.3.1 舵机选型
- 普通舵机(SG90): 便宜,但精度差,回程误差大。适合演示用。
- 数字舵机(LD-1501MG): 金属齿轮,精度 0.5°,扭矩大。我推荐这个。
- 总线舵机(LX-16A): 支持串口控制,可以反馈角度。适合高级项目。
2.3.2 控制方式
最常用的就是 PWM 控制。50Hz 频率,0.5ms-2.5ms 脉宽对应 0°-180°。代码很简单:
# Python 控制舵机(使用 pigpio 库)
import pigpio
pi = pigpio.pi()
# 设置 GPIO 18 为 PWM 输出
pi.set_servo_pulsewidth(18, 1500) # 中位,90°
time.sleep(1)
pi.set_servo_pulsewidth(18, 1000) # 左转,0°
time.sleep(1)
pi.set_servo_pulsewidth(18, 2000) # 右转,180°
2.4 电源管理
这个环节最容易被忽视,但也是最容易出问题的。我曾经在户外测试时,电池电压一掉,主控直接重启,数据全丢了。
2.4.1 功耗估算
| 模块 | 典型功耗 | 备注 |
|---|---|---|
| Jetson Nano | 5W-10W | 满载可达 15W |
| 双目摄像头 | 2W-4W | USB 供电 |
| 舵机 x2 | 2W-6W | 堵转时电流大 |
| 其他(WiFi、传感器) | 1W-2W |
总功耗大概在 10W-22W 之间。我建议留 30% 余量,选一个 30W 以上的电源。
2.4.2 供电方案
- 方案一: 12V 锂电池 + 降压模块(5V/3A 给主控,5V/2A 给舵机)。
- 方案二: 5V 充电宝 + 升压模块(给舵机供电)。注意充电宝输出电流要够。
- 方案三: 3S 航模电池(11.1V)+ 稳压模块。适合户外移动场景。
2.5 系统架构总览
下面这张图,是我做仿生眼项目时画的系统框图。你可以看到数据是怎么流动的:
从图上你能看到,整个系统分三层:感知层(摄像头)、决策层(主控)、执行层(舵机)。电源管理是底层支撑,所有模块都依赖它稳定供电。
好了,硬件平台搭建就聊到这儿。记住一句话:硬件选型决定了项目的上限,电源管理决定了项目的下限。这两头抓好了,后面写代码才有底气。
公众号:蓝海资料掘金营,微信deep3321