华北地区负责人:17340067106(毛经理)
华东地区负责人:17358670739(甘经理)
华南、华西地区负责人:19113907060(耿女士)
软件算法咨询:18982151213(刘先生)

联系我们
产品咨询

6TOPS算力盒子(RK3588/RK3576)Linux系统二次开发全教程

作者:万物纵横
发布时间:2026-06-04 10:30
阅读量:

6TOPS 主流为瑞芯微 RK3588S/RK3576、ARM64 架构、Linux5.10 内核,预装 Debian/Ubuntu22.04,NPU INT8 算力 6TOPS,本教程分环境准备→系统配置→NPU-SDK 部署→模型转换→C/Python 二次开发→系统定制→工程落地7 大模块,适配边缘 AI 视觉、算法二次开发。


6TOPS算力盒子(RK3588/RK3576)Linux系统二次开发全教程(图1)


一、前期硬件 & PC 开发环境准备


1.1 硬件清单


- 6TOPS 算力盒子(RK3588/RK3576,千兆网、MIPI/USB 摄像头、eMMC 存储)


- PC:Ubuntu20.04/22.04(X86_64,模型转换用)、网线、USB 转 TTL 串口(调试内核)、12V3A 电源、SD 卡(系统烧录备选)


1.2 PC 端 X86 开发环境(模型转换:RKNN-Toolkit2)


RKNN-Toolkit2 负责 PC 侧 PyTorch/ONNX→RKNN 模型量化转换,推荐 Python3.8~3.10


#1.安装Miniconda隔离环境

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

bash Miniconda3-latest-Linux-x86_64.sh -b -p $HOME/miniconda3

echo 'export PATH="$HOME/miniconda3/bin:$PATH"' >> ~/.bashrc

source ~/.bashrc


#2.创建RKNN专用虚拟环境

conda create -n rknn_dev python=3.10 -y

conda activate rknn_dev


#3.安装系统依赖

sudo apt install -y libxslt1-dev zlib1g zlib1g-dev libglib2.0-0 libsm6 libgl1-mesa-glx libprotobuf-dev gcc make cmake


#4.拉取RKNN-Toolkit2源码

git clone https://github.com/airockchip/rknn-toolkit2.git --depth 1

cd rknn-toolkit2/package

pip install rknn_toolkit2-*.whl


验证:python -c "import rknn"无报错即安装成功。


二、算力盒子 Linux 系统初始化(板端操作)


2.1 登录系统(3 种方式)


1. SSH 远程(推荐):盒子接网线,路由器查 IP,ssh root@192.168.1.XX,默认账号root/root或rock/rock


2. 串口调试:USB 转 TTL 接 TX/RX/GND,波特率 115200


3. HDMI + 键鼠直连桌面系统


#查看CPU/NPU硬件信息(确认6TOPS芯片)

cat /proc/cpuinfo       #ARMv8-A 4A76+4A55(RK3588)

cat /proc/rknpu/version #NPU固件版本,确认6TOPS驱动就绪


2.2 系统基础配置


#1.换源+更新系统(Ubuntu/Debian)

apt update && apt upgrade -y

#2.安装基础编译&图像处理依赖

apt install -y python3 python3-pip gcc g++ cmake libopencv-dev git vim build-essential

#3.配置静态IP(固定开发连接)

nano /etc/network/interfaces

#写入:

auto eth0

iface eth0 inet static

address 192.168.1.105

netmask 255.255.255.0

gateway 192.168.1.1

systemctl restart networking


三、板端 NPU 运行时 RKNPU2 部署(核心!启用 6TOPS 硬件加速)


板端RKNPU2 = 驱动 galcore.ko + [librknnrt.so](librknnrt.so) 运行时库,是调用 NPU 算力必备,两种安装方式:


方式 1:一键脚本安装(新手首选 RK3588/RK3576 通用)


sudo curl https://raw.githubusercontent.com/Pelochus/ezrknpu/main/install.sh | sudo bash

sudo reboot

#重启后验证NPU

cd /usr/share/rknn-toolkit-lite2/examples/resnet18

python3 test.py #输出Test passed!即NPU6TOPS可用


方式 2:手动部署(定制开发)


1. 从厂商 SDK 获取rknpu2_linux_aarch64.tar.gz


tar -zxvf rknpu2_linux_aarch64.tar.gz

cd rknpu2/runtime/RK3588/Linux/librknn_api/aarch64

sudo cp librknnrt.so /usr/lib/

#加载NPU内核驱动galcore.ko

insmod ./driver/galcore.ko

#配置库环境变量

echo "export LD_LIBRARY_PATH=/usr/lib:$LD_LIBRARY_PATH" >> /etc/profile

source /etc/profile


区分:PC=RKNN-Toolkit2(模型转换)、板端 = RKNN-Lite2/RKNNRT(推理运行)


四、AI 模型二次开发:从 PT→RKNN→板端部署(以 YOLOv8 为例)


4.1 PC 端:YOLOv8 模型导出 & 量化转 RKNN(利用 6TOPS INT8 量化)


#PC(rknn_dev环境)代码 convert_yolo.py

from ultralytics import YOLO

from rknn.api import RKNN


#1.导出ONNX

model = YOLO("yolov8s.pt")

model.export(format="onnx", opset=12, simplify=True)


#2.RKNN量化转换(INT8适配6TOPS最优算力)

rknn = RKNN()

rknn.config(mean_values=[[0,0,0]], std_values=[[255,255,255]], target_platform="rk3588")

rknn.load_onnx("yolov8s.onnx")

rknn.build(do_quantization=True, dataset="./calib.txt") #校准数据集

rknn.export_rknn("yolov8s_6tops.rknn")

rknn.release()


执行python convert_yolo.py,生成yolov8s_6tops.rknn,通过 scp 传到算力盒子:


#PC推送模型到盒子

scp yolov8s_6tops.rknn root@192.168.1.105:/root/work/


4.2 板端 Python 二次开发推理(快速验证)


#box_infer.py 板端运行

from rknnlite.api import RKNNLite

import cv2


#初始化RKNN,绑定6TOPS NPU

rknn_lite = RKNNLite()

rknn_lite.load_rknn("yolov8s_6tops.rknn")

rknn_lite.init_runtime(core_mask=RKNNLite.NPU_CORE_0) #启用NPU硬件


#图片推理

img = cv2.imread("test.jpg")

output = rknn_lite.inference(inputs=[img])

#后处理画框(YOLO解析)自行封装

rknn_lite.release()


运行:python3 box_infer.py,实测 RK3588 (6TOPS) YOLOv8s35~45FPS。


4.3 板端 C++ 工程二次开发(量产落地)


1. 工程 CMakeLists.txt


cmake_minimum_required(VERSION 3.14)

project(rknn_yolo_cpp)

set(CMAKE_CXX_STANDARD 11)

#引入RKNN运行时头文件&库

include_directories(/usr/include/rknn/)

link_directories(/usr/lib/)

find_package(OpenCV REQUIRED)

add_executable(yolo_infer main.cpp)

target_link_libraries(yolo_infer rknnrt ${OpenCV_LIBS})


2. 编译运行


mkdir build && cd build

cmake .. && make -j4

./yolo_infer


C++ 适合产品封装、后台服务,Python 适合算法快速迭代调试。


五、Linux 系统定制二次开发(内核 / 文件系统裁剪)


5.1 内核定制(添加自定义外设驱动:RS485、GPIO、USB 摄像头)


1. 从瑞芯微开源仓库拉取 RK3588 Linux SDK:


git clone https://github.com/rockchip-linux/kernel.git -b linux-5.10

cd kernel

#打开配置

make ARCH=arm64 rockchip_linux_defconfig menuconfig

#勾选自定义驱动、NPU配置、摄像头驱动,保存.config

#交叉编译(安装aarch64交叉工具链)

sudo apt install aarch64-linux-gnu-gcc

make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- Image dtbs -j8


2. 生成新内核镜像,用 RKDevTool 烧录更新盒子内核。


5.2 根文件系统裁剪(Buildroot 精简系统,量产固件)


git clone https://github.com/buildroot/buildroot.git

cd buildroot

make rockchip_rk3588_defconfig

#裁剪无用软件、预装RKNN依赖、自启动程序

make menuconfig

make -j16 #生成rootfs.img


可定制开机自启 AI 推理程序、禁用多余服务、缩小固件体积。


六、应用层高级二次开发


6.1 摄像头实时视频流推理(USB/MIPI)


#启用USB摄像头/dev/video0,OpenCV+RKNN实时推流

#安装流媒体依赖

apt install libv4l-dev ffmpeg

#修改代码:cv2.VideoCapture(0)读取摄像头循环推理


6.2 Docker 容器化部署(多算法隔离)


#盒子安装Docker

apt install docker.io

#打包推理环境,一键部署算法

docker build -t yolov8_rk3588:v1 .

docker run --privileged --device=/dev/video0:/dev/video0 -it yolov8_rk3588:v1


6.3 自启动配置(上电自动运行 AI 程序)


#systemd配置开机服务

nano /etc/systemd/system/ai_infer.service

[Unit]

Description=6TOPS AI Inference Service

[Service]

ExecStart=/usr/bin/python3 /root/work/box_infer.py

Restart=always

[Install]

WantedBy=multi-user.target


#启用开机自启

systemctl enable ai_infer && systemctl start ai_infer


七、常见开发踩坑 & 优化 6TOPS 算力


1. NPU 调用失败:lsmod | grep galcore无输出→重新 insmod 驱动,内核未开启 NPU 配置重编内核


2. 推理帧率低:core_mask=NPU_CORE_ALL开启全部 NPU 核心(RK3588 三 NPU 核合计 6TOPS)、模型 INT8 量化、关闭系统后台占用


3. 库找不到:echo $LD_LIBRARY_PATH确认 [librknnrt.so](librknnrt.so) 路径写入环境变量


4. 模型量化精度掉点:补充校准数据集(≥200 张实景图片)优化量化参数


八、开发资源汇总


1. RKNN 官方文档:https://github.com/airockchip/rknn-toolkit2


2. RK3588 Linux SDK:瑞芯微开源社区


3. 示例代码:rknn-toolkit2/examples(分类 / 检测 / 分割全套 Demo)

家具维修培训

- END -
分享:
留言 留言 试用申请
产品咨询 产品咨询 硬件设备咨询
华北地区负责人:17340067106(毛经理)
华东地区负责人:17358670739(甘经理)
华南、华西地区负责人:19113907060(耿女士)
技术咨询 技术咨询 软件算法咨询
18982151213(刘先生)
微信在线客服 微信在线客服 在线客服
返回官网顶部 返回官网顶部 回到顶部
关闭窗口
产品订购
  • *

  • *

  • *

  • *

  • *