第2章:硬件平台选型:主流边缘AI芯片对比

做边缘AI,第一步就是选芯片。这一步选错了,后面再怎么优化也白搭。

我这些年经手过不少项目,从智能门锁到工业视觉检测,芯片选型踩过的坑真不少。今天咱们就聊聊市面上四款主流芯片:STM32N6、ESP32-S3、Jetson Orin、RK3588。它们代表了从微控制器到高性能SoC的完整光谱。

2.1 四款芯片的定位差异

先给个直观的对比。这四款芯片,说白了就是四个不同量级的选手:

芯片型号 典型算力 典型功耗 适用场景
STM32N6 ~0.1 TOPS 0.1-0.5W 传感器端、可穿戴、电池供电
ESP32-S3 ~0.5 TOPS 0.3-1W IoT终端、语音识别、简单视觉
RK3588 ~6 TOPS (NPU) 5-15W 边缘盒子、智能安防、轻量服务器
Jetson Orin 40-275 TOPS 15-60W 自动驾驶、机器人、复杂视觉

你看这个表,算力跨度从0.1到275 TOPS,功耗从0.1W到60W。这不是简单的线性增长,而是完全不同的设计哲学。

2.2 STM32N6:极致低功耗的守门员

STM32N6是ST新出的带NPU的MCU。我去年在一个智能门锁项目里用过它,印象很深。

核心亮点:

  • 内置神经网络处理单元(NPU),专门跑轻量模型
  • 支持TensorFlow Lite Micro和STM32Cube.AI
  • 待机功耗可以做到微瓦级

我的经验: 在STM32N6上跑一个人脸检测模型,输入尺寸96x96,帧率能做到15fps,功耗才0.2W。但别指望它跑YOLOv8——那会直接撑爆内存。

小技巧: 用STM32N6时,记得把NPU的时钟频率降下来。我试过从400MHz降到200MHz,功耗降了40%,推理速度只慢了15%。这个trade-off很划算。

2.3 ESP32-S3:IoT领域的万金油

ESP32-S3,乐鑫的明星产品。说实话,这芯片我用了不下五个项目。它最大的优势不是算力,而是生态。

为什么选它?

  • 内置向量扩展指令,可以加速一些简单的矩阵运算
  • WiFi + BLE集成,联网方便
  • 社区资源极其丰富,遇到问题基本都能搜到答案

但要注意,ESP32-S3的NPU其实是个「伪NPU」——它没有专门的硬件加速器,而是靠向量指令集来模拟。跑个MobileNetV1还行,再大就吃力了。

避坑指南: 我曾经在一个语音唤醒项目里,试图在ESP32-S3上跑一个3层的LSTM。结果推理一次要200ms,完全没法用。后来换成TC-ResNet-8,推理时间降到30ms,功耗也下来了。选模型一定要和硬件匹配。

2.4 RK3588:国产边缘计算的扛把子

瑞芯微的RK3588,这几年在边缘AI领域很火。6 TOPS的NPU算力,配上四核Cortex-A76和四核Cortex-A55,性能相当能打。

我喜欢的配置:

  • NPU支持INT8/INT16量化,实测INT8推理速度是FP32的4倍
  • 支持多路视频输入,做NVR很合适
  • 价格比Jetson便宜不少,性价比突出

但有个坑——RK3588的NPU驱动和工具链,早期版本不太稳定。我去年做智能安防盒子时,被RKNN Toolkit的版本兼容性问题折腾了两周。

算力与功耗的权衡: RK3588在跑轻量模型时,可以把NPU频率降到500MHz,功耗控制在5W以内。但如果你要跑满6 TOPS,功耗会飙到15W。散热必须跟上,不然降频后性能还不如降频前。

2.5 Jetson Orin:性能怪兽的取舍

Jetson Orin系列,英伟达的当家花旦。从Orin NX到Orin AGX,算力跨度很大。我最近在做一个移动机器人项目,用的就是Orin NX 16GB版本。

它的优势很明显:

  • 完整的CUDA生态,PyTorch/TensorFlow直接跑
  • 支持TensorRT加速,推理效率极高
  • 多模态AI的绝佳平台——视觉、语音、激光雷达一起上

但功耗是硬伤。Orin NX的典型功耗是15W,AGX版本能到60W。这意味着你需要考虑主动散热,电池供电的话续航会很难看。

我的调优经验: 在Jetson Orin上,我习惯用nvpmodel工具来限制功耗模式。比如把Orin NX设为10W模式,算力从40 TOPS降到20 TOPS,但功耗降了三分之一。对于很多实时性要求不高的场景,完全够用。

# 设置Jetson Orin为10W模式
sudo nvpmodel -m 1
# 查看当前功耗
sudo tegrastats

2.6 如何做权衡?我的决策框架

选芯片不是看参数表那么简单。我总结了一个三步决策法:

  1. 先定功耗预算——电池供电还是插电?电池的话,STM32N6或ESP32-S3优先;插电的话,RK3588或Jetson Orin可以考虑。
  2. 再算算力需求——你的模型需要多少TOPS?建议留30%余量。比如模型需要2 TOPS,那就选3 TOPS以上的芯片。
  3. 最后看生态——团队熟悉什么平台?工具链是否成熟?我见过太多项目因为工具链不熟而延期。

一句话总结: 能跑得动、功耗扛得住、团队搞得定——满足这三条的芯片,就是你的最佳选择。

下一章,我们会深入功耗分析的具体方法。到时候我会拿一个实际项目的数据来拆解,看看功耗到底花在了哪里。