工控机与嵌入式平台选型:CPU/GPU选型、树莓派与Jetson对比、接口与供电设计
做机器人系统,选计算平台是第一步。这一步走歪了,后面全白搭。
我见过太多人,上来就买最贵的工控机,结果发现接口不够用。也有人为了省钱用树莓派跑SLAM,跑起来卡成PPT。说白了,选型不是比参数,是匹配你的实际需求。
CPU与GPU:算力怎么分?
先搞清楚一件事:你的机器人需要什么算力?
- CPU负责逻辑:传感器驱动、运动控制、通信协议、任务调度。这些活儿对实时性要求高,但计算量不大。
- GPU负责并行:图像处理、点云匹配、神经网络推理。这些活儿计算量大,但可以容忍一定延迟。
我习惯这样分:如果只用激光雷达做SLAM,CPU够用。如果加了视觉,必须上GPU。如果还要跑深度学习,那GPU就是刚需。
核心原则:CPU选主频高的,GPU选CUDA核心多的。别买那种低频多核的CPU,机器人不是服务器,不需要同时处理几百个线程。
树莓派 vs Jetson:我踩过的坑
这两个平台我都在项目里用过。直接说结论:
| 维度 | 树莓派4B/5 | Jetson Nano/Orin |
|---|---|---|
| CPU算力 | 够用(4核A72/A76) | 够用(4核~12核A78) |
| GPU算力 | 几乎没有(VideoCore VI) | 强(128~2048 CUDA核心) |
| SLAM能力 | 仅2D激光SLAM | 3D激光+视觉SLAM |
| 功耗 | 5~15W | 10~60W |
| 价格 | 300~800元 | 1000~8000元 |
| 生态 | 社区资源极丰富 | NVIDIA官方支持好 |
我曾经在一个项目里用树莓派4B跑Cartographer 2D SLAM,勉强能跑,但建图时CPU直接100%,遥控都卡。后来换成Jetson Orin NX,同样的算法,CPU占用不到30%,还能同时跑视觉里程计。
避坑指南:我曾经试过用树莓派跑ORB-SLAM3,结果帧率不到5fps。不是算法不行,是树莓派根本没有可用的GPU加速。如果你要做视觉SLAM,直接放弃树莓派。
工控机:什么时候必须上?
工控机不是必须的。但如果你遇到以下情况,就别犹豫了:
- 需要同时跑多个传感器(激光+相机+IMU+编码器)
- 需要实时控制(电机控制频率>1kHz)
- 需要在恶劣环境工作(震动、高温、粉尘)
- 需要长时间稳定运行(工业级7×24小时)
我推荐几个配置:
- 入门级:Intel N100/N305,8GB RAM,128GB SSD。适合2D SLAM+简单控制。
- 进阶级:Intel i5-1240P,16GB RAM,512GB SSD。适合3D SLAM+视觉。
- 旗舰级:Intel i7-1360P + NVIDIA RTX 3050,32GB RAM,1TB SSD。适合多传感器融合+深度学习。
我的习惯:工控机一定要选带M.2接口的,方便扩展NVMe SSD和WiFi模块。别买那种只有SATA接口的老款,读写速度差太多。
接口设计:少一个口,多一堆麻烦
接口选型是门学问。我总结了一张表:
| 传感器/设备 | 推荐接口 | 注意事项 |
|---|---|---|
| 激光雷达 | USB 3.0 / 以太网 | USB 2.0带宽不够,16线以上必须USB 3.0 |
| 相机 | USB 3.0 / CSI | CSI延迟更低,但线长受限 |
| IMU | UART / I2C / SPI | UART最简单,I2C可挂多个 |
| 电机驱动 | UART / CAN | CAN总线抗干扰强,适合长距离 |
| 编码器 | GPIO中断 / SPI | GPIO适合低速,SPI适合高速 |
嗯,这里要注意:USB接口不是越多越好。很多工控机的USB口是共用一个控制器,同时接多个高速设备会抢带宽。我习惯用USB 3.0 Hub,但一定要选带独立供电的。
供电设计:最容易翻车的地方
供电设计是机器人最容易被忽视的环节。我翻过车,所以特别强调。
先算总功耗:
- 工控机/Jetson:15~60W
- 激光雷达:5~15W
- 电机驱动:10~50W(看负载)
- 其他外设:5~10W
总功耗一般在50~150W之间。我建议留30%余量。
供电方案对比:
- 单电池方案:一块大电池,通过DC-DC模块分出多路电压。简单,但电池故障全系统瘫痪。
- 双电池方案:一块给工控机/传感器,一块给电机驱动。隔离干扰,但重量增加。
- 电池+超级电容:电池供电,超级电容应对电机启动瞬间的大电流。适合频繁启停的场景。
我推荐双电池方案。电机启动时电流波动很大,如果和工控机共用电源,很容易导致工控机重启。我曾经在调试时,电机一启动,Jetson就黑屏,查了两天才发现是电源纹波太大。
避坑指南:我曾经用一块12V锂电池同时给电机和工控机供电,结果电机堵转时电压跌到9V,工控机直接关机。后来加了隔离DC-DC模块才解决。记住:电机和逻辑电路必须分开供电,或者加隔离。
知识体系总览
下面这张图把选型逻辑串起来了:
你想想看,选型其实是个倒推的过程。先想清楚你要做什么,再选平台,然后配接口,最后设计供电。顺序不能乱。
我个人习惯在选型阶段多花点时间。因为一旦硬件定下来,后面改起来成本很高。尤其是接口和供电,焊上去的线再拆,很麻烦。
我的建议:第一次做机器人,先买一套开发板(比如Jetson Orin Nano + 树莓派4B),把算法跑通,再根据实际瓶颈升级。别一上来就买工控机,万一用不上,钱就白花了。