☰
第03讲 · 开发板环境搭建:犀牛派 A1 开箱、点亮与联调
2026/9/28 4:17:25 网站建设 项目流程

系列:《高通 NPU 边缘 AI 实战:从芯片架构到开发板落地》
从零到一 · 高通 Dragonwing 边缘 AI 12 讲
数据口径:[官方]=厂商规格书/文档代表性数值,[推算]=架构估算,[实测]=仅给方法不给结果。
本讲定位:第一次上手真实开发板——犀牛派 A1(基于高通 QCS6490),完成开箱、接线、系统就绪、基础联调与 NPU 可用性确认,后续陆续会把第 01/02 讲的理论用到硬件上。

犀牛派A1图

本讲目标

  • 目标读者:已经读完第 01/02 讲、选好了 SoC(默认 QCS6490),手里第一次拿到基于该 SoC 的真实开发板,准备点亮它的人。
  • 本讲目标:把一块犀牛派 A1 从「纸箱里的板子」变成「能进系统、能传文件、NPU 确认可用」的开发平台,并建立一份可复用的环境检查清单。
  • 你将带走:开箱接线顺序、三种进入系统的方式(串口/ADB/网络)、网络与文件互传、NPU 可用性验证命令、一键信息收集脚本,以及一份排错手册。

一、环境调研:为什么要自己搭环境,以及你的板子长什么样

1.1 从「纸上选型」到「手上板子」

第 02 讲结束时,你已经在纸面上把 SoC 选好了——本文默认是选择的QCS6490(约 12 TOPS INT8、生态最成熟、资料最多)。但「选对 SoC」和「板子能跑模型」之间,还隔着一整套环境搭建工作:板子要能点亮、系统要能进、工具链要能装、NPU 节点要能找到。这一讲做的,正是把纸面假设落地的第一步。

很多人卡在第一步不是因为难,而是因为步骤顺序错了:先急着装 SDK,结果板子没联网、ADB 不识别,SDK 根本传不上去。本讲的核心方法论是——先把板子变成一台「正常的电脑」,再谈 AI。

为什么值得单独用一整讲讲「搭环境」?因为边缘 AI 落地的真实分布是「80% 的时间在搞环境、20% 的时间在调模型」。一个算法工程师在云端的习惯是「pip install一下就能跑」,但到了边缘设备,他要面对的是供电、显示、串口、ADB、BSP 版本、驱动节点这一整套完全陌生的「硬件运维」技能树。很多人卡在第一步不是因为 AI 难,而是因为从来没人告诉他「板子要先当电脑来伺候」。这一讲就是把这套运维技能树一次性补齐,让你后面能心无旁骛地专注在模型本身。

1.2 认识你的板子:犀牛派 A1(硬件速览)

本系列实战主选的开发板是犀牛派 A1(Rhino Pi-A1),它是阿加犀出品的、基于高通QCS6490的真实开发板,出厂预装AidLux系统(一个把 Android + Linux 融合的双系统、并预置了 AI 工具链的发行环境,开箱即可做 AI 开发)。

为什么选它:QCS6490 是整张矩阵里生态最成熟、性价比最高的一档(第 02 讲已论证);犀牛派 A1 把它做成了一块「插电即用」的开发板,且 AidLux 预置了后续要用的 QNN 相关运行环境,能省掉大量配环境的时间。后面所有上机示例,默认都在这块板上跑。

下面是 QCS6490 平台层面的关键能力(板子的具体接口布局、内存/存储容量等以阿加犀官方规格书为准,下面只列 SoC 平台级事实):

维度犀牛派 A1 背后的 QCS6490 平台能力 [官方]
NPU 算力约 12 TOPS INT8(第 8 代 AI Engine 架构)
CPUKryo 架构多核(性能核 + 能效核组合)
GPUAdreno 架构,负责渲染与部分并行
ISPSpectra 570L 级别,多路相机接入
内存LPDDR5 级别(具体容量以官方规格书为准)
典型接口USB、HDMI、千兆以太网、MIPI CSI(相机)、M.2 等(布局以官方为准)

把上面「平台能力」再拆开一层,方便你建立「板子肚子里到底是什么」的具象认知(均为 QCS6490 平台级事实 [官方],具体芯片型号/容量以阿加犀官方规格书为准):

子系统QCS6490 平台能力 [官方]
CPUKryo 架构,性能核 + 能效核组合(典型多核,具体核数与频率以规格书为准)
GPUAdreno 级别,负责渲染、部分并行计算、可兜底 AI
NPU(Hexagon/HTP)第 8 代 AI Engine,约 12 TOPS INT8(第 01/02 讲已详述)
ISPSpectra 570L 级别,多路相机接入、硬件图像预处理
视频编解码硬件 H.264 / H.265,4K@60fps 级别(具体以规格书为准)
内存LPDDR5 级别,带宽直接决定 NPU 能否被喂饱(呼应第 01 讲带宽墙)
互联接口USB3.x、HDMI、千兆以太网、MIPI CSI(相机)、M.2(布局以官方为准)

一个关键认知:QCS6490 和旗舰手机 SoC 其实是「同源」的。它用的 CPU/GPU/NPU/ISP 架构,与高端手机芯片一脉相承;区别在于——手机 SoC 为「一年一换、极致能效、消费级温度」优化,而 QCS6490 这类边缘 SoC 为「长期供货、宽温工作、工业接口、开放可定制的 BSP」优化。正是这层差异,让它能被装进机器人、工业相机、智能网关这类生命周期长、环境苛刻的设备里。你买的不是「一颗手机芯片」,而是一颗「为长期可靠运行重新封装的同源芯片」。

提示:本讲不堆参数,重点是「怎么把它跑起来」。参数细节你在第 01/02 讲已经建立过心智模型,这里只确认「板子确实长在这个能力区间」。

1.3 系统选择:AidLux / Linux / Android 怎么选

犀牛派 A1 出厂预装 AidLux,这是最省心的开局。但你要理解三条路线的差异,方便后续换板或换系统:

系统形态适合谁优点注意
AidLux(预装)想最快上手 AI 的开发者预置 AI 工具链、开箱即用、Android/Linux 融合默认推荐,本系列主用
纯 Linux(Ubuntu/Yocto)要完全掌控系统的底层开发者干净、可深度定制 BSP需自行安装 QNN 工具链
Android要做 APK / 移动端集成的团队生态成熟、便于发布AI 部署走 NDK/JNI 路线

本系列默认 AidLux 路线:理由只有一个——它把第 04 讲要装的很多东西提前预置好了,让你能用最少步骤从第 03 讲过渡到第 05 讲。等你熟练了,再换纯 Linux 或 Android 都不迟。

1.4 你需要准备的周边

开箱前先备齐,避免「板子到了没线」的尴尬:

  • 电源:确认板子所需电压/电流(以官方规格书为准,通常 12V/2A 或类似),用原装或参数匹配的电源,供电不足是新手第一坑(见 6.1)。
  • 显示:支持 HDMI 的显示器 + HDMI 线(首次建议接显示,方便看启动日志)。
  • 网络:网线(千兆以太网)或 Wi-Fi 环境。
  • 主机:一台装了 Windows/Linux/macOS 的电脑,装有adb(Android Debug Bridge)和scp/ssh。
  • 相机(可选):MIPI CSI 摄像头,第 08 讲才用,本讲先不接。

1.5 AidLux 开箱即用的真相:预置了哪些东西

很多人听到「预装 AidLux、开箱即用」会有误解,以为插电就能跑模型。准确说法是:AidLux 把后续要用的「运行环境」提前铺好了,但模型转换、量化、部署这些「你的活」还得你自己做(第 05–07 讲)。它通常预置了:

  • Python 运行环境:开箱就有 Python3,方便你写采集、预处理、后处理脚本;
  • AI 推理运行时:与高通 NPU 对接的运行时/库(QNN 相关),省去你从零配驱动的麻烦;
  • 远程访问能力:Web 端 / SSH 访问,方便你不用接显示器也能操作;
  • 示例与工具:部分示例模型、常用命令行工具。

一句话总结 AidLux 的价值:它把「环境地基」从「你要自己挖」变成「已经挖好」,但地基之上的房子(你的模型与业务)还得自己盖。这也是本系列把开发板主选犀牛派 A1 的核心原因——它让你用最少的步骤,从第 03 讲过渡到第 05 讲。


二、开箱与接线:顺序错了会返工

2.1 开箱清单

开箱后先核对(以阿加犀官方清单为准,下面为通用项):开发板本体、电源适配器、天线(无线版)、快速指南。确认板子无明显物理损伤、接口无弯曲。

2.2 接线顺序(重要)

永远按这个顺序:① 先不接电源,把所有数据/显示线接好 → ② 最后接电源上电。反过来(先通电再热插拔 HDMI/USB)容易烧接口或起不来。

步骤动作说明
1接 HDMI → 显示器先看启动画面,排错最直观
2接网线 → 路由器有线最稳,首推
3接 USB → 主机(可选)ADB/串口调试用
4插 MIPI 相机(可选)本讲不接,第 08 讲再接
5最后接电源上电启动

2.3 首次上电与启动

接好线、最后接电源后,板子会自动上电。正常情况:电源灯亮 → 显示器出现启动画面 / AidLux 桌面或登录提示 → 系统就绪(首次启动可能比后续慢,属正常)。

是

否

开箱核对清单

接 HDMI/网线/USB 等数据线

最后接电源上电

显示器有画面?

系统启动完成

排查 HDMI/供电 见6.2

进入系统: 串口/ADB/网络

配网络 + 传文件

确认 NPU 可用

环境 Checklist 打卡

2.4 首次启动:从按下电源到系统就绪的时间线

理解启动流程,你才能在「卡住」时判断卡在哪一段。典型时间线(具体以官方为准):

阶段现象你该看什么卡住的常见原因
上电电源灯亮灯是否亮供电/电源坏(6.1)
Bootloader串口出初始化日志串口输出镜像损坏/启动介质错
内核加载日志刷过内核行有无 Kernel panic内存/镜像不匹配
系统服务服务逐项起是否到登录/桌面文件系统损坏
可操作桌面或登录提示能进 shell—

排错口诀:有灯无日志 → 查供电/串口线;有日志卡内核 → 查镜像/内存;过内核卡服务 → 查文件系统/存储(df -h提前看)。把这条时间线记牢,板子起不来时你不再瞎猜。

2.5 板载 LED、恢复模式与强制重启

虽然具体丝印以阿加犀官方为准,但这类开发板普遍有几个「救命设计」,提前知道能省你很多事:

  • 状态 LED:通常电源灯(常亮=供电正常)、活动灯(闪烁=系统活着)。灯不亮先回 6.1。
  • 恢复/刷机模式:遇到系统起不来,往往要进 fastboot / 恢复模式重刷镜像。具体进法(按键组合/短接)以官方指南为准——第一次正常启动时就把进恢复模式的方法记下来,别等砖了再找。
  • 强制重启:长按电源键或断开重接。连续推理死机时常用。

工程建议:板子到手、第一次正常启动后,立刻把「如何进恢复模式、如何重刷官方镜像」两条写进你的实验笔记。多数人是在板子变砖的慌乱中才第一次去查,那时往往已经浪费半天。

2.6 验收标准:什么叫「环境搭好了」

别凭感觉判断「应该好了」。给环境搭建一个明确的可验收判据清单——全部打勾,才算这一讲毕业:

验收项判据验证命令/动作
能进系统能 shell 登录(串口/ADB/SSH 任一)adb shell或ssh user@IP成功
架构正确显示 aarch64uname -m输出aarch64
网络通畅拿到 IP 且能出网hostname -I+ping 8.8.8.8
文件互传能传上、传下adb push/scp各试一次
NPU 节点可见系统里有 Hexagon/HTP 相关库find / -iname '*hexagon*'有结果
温度正常空闲不烫、不重启温度节点读取在正常范围
可恢复知道怎么重刷/进恢复模式笔记里有记录且验证过
信息归档env_check.py跑过并存档有一行归档记录

把这八条贴在显示器旁边,逐条打勾。你会发现「环境搭好」是一件可以客观判定的事,而不是一句含糊的「差不多了」。这也正是工程化思维——把模糊的「能用」变成可测量的「达标」。


三、系统初体验与基础联调

板子亮了只是开始,下面三步把它变成「你能操作」的开发平台。

3.1 三种进入系统的方式

方式适用场景命令/入口
串口(Serial Console)板子起不来、网络没通时的最底层通道用串口线接主机,波特率以官方为准(常见 115200),minicom/picocom 查看
ADB(Android Debug Bridge)AidLux/Android 路线最常用adb devices→adb shell
网络 SSH网络通后最舒服ssh 用户名@板子IP

三种方式不互斥:串口保底、ADB 过渡、SSH 日常。前两种在板子网络没配好时尤其救命。

3.2 网络配置(有线优先)

  • 有线:插上网线通常自动获取 IP(DHCP)。用ip addr或 AidLux 桌面网络图标确认拿到地址。
  • 无线:在 AidLux 桌面或adb shell里用nmcli/ 系统网络工具连 Wi-Fi。

拿到 IP 后,建议立刻ssh进去,比 ADB 更顺手。

3.3 文件互传

  • ADB 路线:adb push local_file /data/local/tmp/上传;adb pull /path/on/board ./下载。
  • 网络路线:scp local_file user@IP:/home/user/上传;scp user@IP:/path ./下载。

后面把模型、脚本传上板子,全靠这两条。本讲先把它们跑通一次即可。

3.4 确认系统信息

进系统后,先看一眼「我是谁、我在哪」:

# 查看系统版本与架构uname-acat/etc/os-release# 查看 CPU 信息(确认是 ARM64 / aarch64)lscpu# 查看内存free-h

正常应输出aarch64架构、已识别的内存大小。若架构不对或内存识别异常,先回到 6.x 排错。

3.5 进系统后顺手做几件事(常用环境命令)

进系统第一件事不是装 AI,而是确认「这台电脑健康」。下面几条命令建议每条都跑一遍:

# 1) Python 是否就绪(AidLux 通常自带)python3--version# 2) 磁盘空间(模型/镜像很占空间,别等满了再哭)df-h/# 3) 系统负载与温度(aarch64 上可看,具体温度节点路径以系统为准)uptimecat/sys/class/thermal/thermal_zone*/temp2>/dev/null|head# 4) 网络连通性ping-c38.8.8.8# 5) 确认能通过网段被主机找到(用于后续 ssh / scp)hostname-I

这几条分别对应「解释器、存储、热、网、地址」五个维度。把它们固化成你每次上新手板的第一动作,能提前 80% 的隐形坑。尤其df -h和温度,模型一大、连续推理一久,这两者最容易先爆。

3.6 主机侧工具准备(在你的电脑上)

联调是双向的——板子就绪还不够,你的电脑也要有称手的工具。建议第一次搭环境时就把主机侧配齐:

# 1) 安装 adb(以 Ubuntu 为例,macOS 用 brew install android-platform-tools)sudoaptupdate&&sudoaptinstall-yandroid-tools-adb adb version# 2) 验证能发现板子(板子接 USB 且开启调试后)adb devices# 3) 确认 scp/ssh 可用(网络路线用)whichscpssh

Windows 用户去谷歌「Android 平台工具」下载platform-tools并加进 PATH;macOS 用 Homebrew 一行搞定。把adb、scp、ssh三个命令在主机上跑通,是「能联调」的前置条件——别等到要传模型了才发现电脑没装 adb。


四、确认 NPU 可用:本讲最关键的一步

板子能进系统 ≠ NPU 能跑模型。下面四步把「NPU 在不在、能不能被工具链看到」坐实。

4.1 查看 SoC 信息

# 查看 CPU 型号(间接确认 QCS6490 平台)cat/proc/cpuinfo|grep-i"processor\|model name"|head

4.2 定位 Hexagon / HTP 相关节点与库

高通 NPU 本质上在系统里表现为 Hexagon 相关的驱动与共享库。可尝试定位:

# 查找与 hexagon / htp 相关的库文件(不同系统路径可能不同)find/-iname"*hexagon*"2>/dev/null|headfind/-iname"*htp*"2>/dev/null|head

在 AidLux 上,QNN 相关库通常已预置在系统路径中;若你换成了纯 Linux 自行安装 QNN SDK,则这些库在你解压 SDK 的目录里。本讲只要确认「系统里有这些库」,具体怎么用是第 04/05 讲的事。

4.3 qnn-platform-validator 初探

高通 QNN 工具链提供一个平台校验工具qnn-platform-validator,用来确认当前环境是否支持目标 backend(如 HTP)。在第 04 讲装好 QNN SDK 后,可以跑它来验证;本讲先记住这个名字,它是「NPU 可用性」的官方判官。

4.4 一条命令确认 NPU 在线([实测] 方法)

最朴素的可用性判断:系统里存在 Hexagon/HTP 相关库与节点,且后续能跑通 qnn-platform-validator。严格意义上的「跑通第一个 NPU 推理」要到第 07 讲才算数——本讲的目标是「环境就绪、NPU 节点可见」,把「能不能跑」的验证留给工具链装好之后。

[实测] 本讲不输出任何 NPU 基准数字,只确认「环境 + 节点可见」。真实推理延迟/利用率,必须在第 04–07 讲装好工具链后,用qnn-net-run/qnn-profile在你的模型上实测,不要拿厂商峰值凑数。

4.5 「节点找得到却跑不动」的三种常见原因

本讲只确认节点可见,但先给你打预防针:将来(第 04–07 讲)你大概率会遇到「库能看到、但qnn-net-run一跑就报错」。最常见三因:

  1. BSP 与 SDK 版本不匹配:板子镜像(BSP)里的驱动版本,和你在主机装的 QNN SDK 版本对不上,工具链认不出 backend。解决:按第 04 讲做版本匹配。
  2. 权限/SELinux 限制:某些系统下 NPU 设备节点需要特定权限或关闭 SELinux 才能访问。解决:确认设备节点权限,必要时按官方指引调整。
  3. 驱动未加载 / 固件缺失:find能看到库文件,但内核侧驱动没起来。解决:看dmesg里有没有 Hexagon/HTP 相关报错,对照官方 BSP 说明。

记住一句话:「节点可见」≠「能推理」,前者是地基,后者还要第 04–07 讲的工具链来兑现。本讲把地基夯实,后面才不会在「明明库都在却跑不起来」上浪费几天。


五、环境检查清单(Checklist)

把上面的步骤固化成一份可勾选的清单,每次换板/换环境都过一遍。

5.1 硬件 Checklist

  • 电源参数匹配、上电灯亮
  • HDMI 显示正常(或确认无需显示、走串口)
  • 网线/Wi-Fi 接通,拿到 IP
  • USB/串口可联机
  • 板子温度正常(不烫手、不频繁重启)

5.2 软件 / 工具 Checklist

  • 主机adb可用,adb devices能看到板子
  • 能ssh进板子
  • 能adb push/scp互传文件
  • uname -a显示aarch64
  • 系统内可见 Hexagon/HTP 相关库
  • (第 04 讲后)qnn-platform-validator能跑通 HTP backend

5.3 一键信息收集脚本

下面这段 Python 可在板子上跑(或在主机侧整理),把关键信息一次性收集,便于发帖/求助/复盘:

# [推算] 板端环境信息收集(在板子 Python 环境或主机归档用)importsubprocess,platform,os,shutildefrun(cmd):try:returnsubprocess.check_output(cmd,shell=True,stderr=subprocess.DEVNULL).decode().strip()exceptException:return"N/A"defdisk():try:total,used,free=shutil.disk_usage("/")returnf"{(free//(1024**3))}GB free /{(total//(1024**3))}GB total"exceptException:return"N/A"info={"arch":platform.machine(),# 期望 aarch64"system":platform.system(),"release":platform.release(),"cpu_count":os.cpu_count(),"disk_root":disk(),# 根分区余量,模型大了先爆它"python":run("python3 --version"),"ip":run("hostname -I"),"hexagon_libs":run("find / -iname '*hexagon*' 2>/dev/null | head -3"),}fork,vininfo.items():print(f"{k:14}:{v}")# 输出示例: arch: aarch64 / cpu_count: 8 / disk_root: 20GB free / hexagon_libs: /vendor/lib/libhexagon_...

把它跑出来的结果连同「板子型号 + 批次 + 镜像版本 + 采集时间」一起归档成一行 CSV/Markdown,多板管理就靠它。后面第 11 讲讲量产时,这份归档还会升级成「批次一致性表」——环境可描述、可复现,是工程化的起点。

把它存成env_check.py,每次新环境跑一遍,输出贴进你的实验记录——这是工程化习惯,能省你日后无数排查时间。


六、坑点清单:新手第一周必踩的六个坑

6.1 供电不足

用功率不够的电源或劣质线,板子会反复重启、NPU 跑一下就掉。务必用官方/参数匹配的电源,供电是底座,底座不稳一切都白搭。

6.2 HDMI 不显示

先确认显示器输入源切对、线插紧;再确认板子确实启动了(看电源灯/串口日志)。部分板子默认不输出 HDMI 直到系统初始化完,耐心等几十秒。

6.3 ADB 不识别

常见于:没装驱动(Windows)、没开 USB 调试、线的数据功能坏。换线、换口、重装驱动、adb kill-server && adb start-server逐个试。

6.4 板子发热降频

QCS6490 能效不错,但密闭/无散热长期满载仍会降频(呼应第 01 讲功耗墙)。开发阶段保证通风,量产阶段按第 11 讲做 thermal 设计。

6.5 NPU 节点找不到

多半是系统镜像没带对应库,或你装 QNN SDK 没配对 BSP 版本(第 04 讲重点)。确认 AidLux 版本 / SDK 版本匹配。

6.6 网络不通

IP 没拿到先看 DHCP;SSH 连不上先确认 sshd 在跑、防火墙没挡。有线永远比无线稳,首推有线调试。

6.7 镜像版本与板子批次不匹配

同一型号板子可能分批次、配不同 BSP 版本。拿错镜像刷进去会起不来或功能缺失。对策:刷前核对板子批次与镜像版本号,记进实验笔记,别凭「型号一样」就混用。

6.8 误以为 AidLux 能「直接跑模型」

AidLux 预置的是运行环境,不是你的模型和业务。常见误区:插电就指望能推理。正确预期:本讲把环境地基铺好,第 05–07 讲你仍要亲手做转换、量化、部署。工具链省的是「配环境」,省不掉「你的模型落地」。


七、场景剖析:三种典型开局

同样是犀牛派 A1,不同目标的人开局重点不同:

  • 纯视觉 PoC:重点在 HDMI 显示 + 网络 + 后续相机(第 08 讲);本讲把显示和网络搞通即可。
  • 机器人感知节点:重点在 SSH 远程 + 稳定供电 + 后续 ROS2(第 10 讲);本讲优先确保能无显示远程操作。
  • 工业检测:重点在稳定网络 + 散热预留 + 后续多路相机(第 08/11 讲);本讲先确认环境可复现。

你会发现:环境搭建的「正确姿势」高度依赖你最终要做什么。本讲给的是通用地基,后面按场景往上盖楼。


八、术语表(Glossary)

  • AidLux:阿加犀出品的、融合 Android + Linux 并预置 AI 工具链的系统环境,犀牛派 A1 出厂预装。
  • ADB(Android Debug Bridge):安卓调试桥,用于主机与板子间联机、shell、文件互传。
  • 串口(Serial Console):最底层的文本调试通道,板子网络没通时的保底入口。
  • HTP(Hexagon Tensor Processor):高通 NPU 的正式名称,本讲确认它在系统里「可见」。
  • qnn-platform-validator:QNN 提供的平台校验工具,用来确认环境是否支持某 backend(如 HTP)。
  • BSP(Board Support Package):板级支持包,包含内核、驱动、镜像;SDK 版本要与 BSP 版本匹配。
  • aarch64:ARM 64 位架构,高通边缘 SoC 的用户态架构,工具链需对应。

九、常见问题(FAQ)

Q1:犀牛派 A1 一定要用 AidLux 吗?
不一定。AidLux 是开箱最省心的默认路线,预置了 AI 工具链;你也可刷纯 Linux/Android,但要自行安装 QNN SDK(第 04 讲)。新手建议先用 AidLux 跑通全流程,再考虑换系统。

Q2:我没有显示器能搭环境吗?
能。走「串口 + 网络」路线:串口看启动日志、网络 SSH 进去操作,完全不需要 HDMI。很多机器人/工业部署本就是无显示 headless 形态。

Q3:adb devices 看不到板子怎么办?
按 6.3 顺序排查:换数据线(很多线只有充电功能)、确认 USB 调试开启、重装驱动、adb kill-server重启服务。仍不行就改用串口/网络。

Q4:怎么确认我的板子确实是 QCS6490?
cat /proc/cpuinfo看 CPU 型号、lscpu看架构,再结合官方规格书核对。板子丝印或系统信息也会标注平台。本讲重点是确认架构是 aarch64、能力落在 QCS6490 区间。

Q5:NPU 可用性的「最终判官」是什么?
qnn-platform-validator跑通 HTP backend,且第 07 讲能真正用qnn-net-run在 NPU 上出推理结果。本讲只是「节点可见 + 环境就绪」,真正的可用性验证在第 04–07 讲。

Q6:供电到底要多大?
以阿加犀官方规格书标注的电源参数为准,不要自己估。宁大勿小,劣质电源是隐形的稳定性杀手。

Q7:板子烫手正常吗?
轻微温热正常;烫到不敢碰、或频繁重启/降频就不正常,多半供电或散热问题。开发阶段保证通风,关掉外壳密闭。

Q8:为什么我强调「先把板子变成正常电脑再谈 AI」?
因为 90% 的「AI 跑不起来」其实是「环境根本没通」:网络没配、文件传不上去、库找不到。先解决通用计算平台问题,AI 工具链才能顺理成章装上去。

Q9:环境信息收集脚本一定要跑吗?
强烈建议。它花 30 秒,却能在你后续求助、写实验记录、换板对比时省下几小时。工程化的第一步,就是让环境「可描述、可复现」。

Q10:本讲和后面的工具有什么衔接?
本讲产出「就绪的板子 + 可见的 NPU 节点 + 信息收集脚本」;第 04 讲在上面装 QNN SDK / AI Hub / Device Cloud;第 05–07 讲依次做转换、量化、部署。本讲是地基,地基不稳后面全白搭。

Q11:AidLux 和纯 Linux 我该怎么最终决定?
开发阶段用 AidLux 最快;如果你的产品要深度定制 BSP、去掉安卓层、做极致裁剪,再切纯 Linux(Yocto/Ubuntu)。决定权在你产品形态,不在工具——工具是手段。

Q12:我有多块板子,怎么批量管?
每块的 IP、SN、系统版本用本讲的env_check.py收集后归档成表;批量 SSH 用pssh/ 脚本循环。量产前的「多板一致性」就靠这份归档,别靠脑子记。

Q13:无显示(headless)部署,环境怎么验证?
完全走串口 + SSH:串口看启动日志确认系统起得来,SSH 进去跑 3.5 的命令 + 4.x 的节点检查。headless 才是工业/机器人的常态,建议早点习惯无显示操作。

本讲速查卡(Cheat Sheet)

  • 接线铁律:先接数据/显示线,最后接电源。
  • 三进系统:串口(保底)/ ADB(过渡)/ SSH(日常)。
  • 三必跑命令:uname -a(架构)、df -h(存储)、温度节点(热)。
  • NPU 确认两步:系统里找到 Hexagon/HTP 库 + 后续qnn-platform-validator跑通 HTP。
  • 一个脚本:env_check.py收集信息,每次新环境必跑、必归档。
  • 一句底线:本讲只到「环境就绪 + 节点可见」,真能推理是第 04–07 讲兑现的。

十、结论与下讲预告

本讲把一块犀牛派 A1 从纸箱变成了「就绪的开发平台」:开箱接线 → 进系统(串口/ADB/SSH)→ 配网络传文件 → 确认 NPU 节点可见 → 打卡环境 Checklist。这些是后面所有上机操作的底座。

核心一句话:边缘 AI 落地,第一步不是装 SDK,而是让板子先成为一台你完全掌控的电脑。

下一讲(第 04 讲)我们在就绪的板子之上,把工具链一次性装齐:QNN SDK(Neural Processing SDK / AI Engine Direct)、Hexagon SDK、AI Hub、Device Cloud,建立「本地 + 云端」双工作流,为第 05 讲起的真机转换/量化/部署铺好路。

参考链接

  • 阿加犀 AidLux 官方:aidlux.com
  • Qualcomm Neural Processing SDK(QNN):developer.qualcomm.com
  • Qualcomm AI Hub(已验证模型):aihub.qualcomm.com
  • Hexagon SDK:developer.qualcomm.com

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询