尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Jetson Orin NX 开箱配置与 JetPack 环境搭建完全指南

Jetson Orin NX 开箱配置与 JetPack 环境搭建完全指南 Jetson Orin NX 开箱配置与 JetPack 环境搭建完全指南1. 硬件概览Jetson Orin NX 是 NVIDIA 2023 年推出的边缘 AI 计算模组提供 100 TOPS16GB和 70 TOPS8GB两个版本采用 Ampere 架构 GPU ARM Cortex-A78AE CPU支持 PCIe Gen 4、USB 3.2、MIPI CSI-2 等高速接口。核心参数对比参数Orin NX 16GBOrin NX 8GBXavier NXAI 算力100 TOPS70 TOPS21 TOPSGPU1024 CUDA / 32 Tensor Core1024 CUDA / 32 Tensor Core384 CUDA / 48 Tensor CoreCPU8核 ARM A78AE6核 ARM A78AE6核 Carmel内存16GB LPDDR58GB LPDDR58GB LPDDR4x存储NVMe SSDNVMe SSDNVMe SSD功耗10-25W7-20W10-20W价格~$599~$399~$3992. 所需硬件清单在开始之前确保你准备了以下硬件核心组件 ├── Jetson Orin NX 模组16GB 或 8GB ├── 载板NVIDIA 官方 Developer Kit 或第三方如 Seeed reComputer ├── NVMe SSD推荐 256GB 以上需 PCIe Gen 4 ├── 电源适配器19V/45W DC 或 USB-C PD 65W ├── 散热风扇官方散热器或第三方主动散热 ├── microSD 卡32GB用于初始刷机 └── USB-C 数据线用于刷机 外设 ├── 显示器 HDMI/DP 线 ├── USB 键盘鼠标 ├── 网线或 WiFi 模块Intel AX210 推荐 └── CSI 摄像头如 IMX219 / IMX4773. 硬件组装3.1 安装 NVMe SSD步骤 1. 将 Orin NX 模组从防静电袋中取出 2. 找到载板上的 M.2 Key M 插槽通常在底部 3. 将 NVMe SSD 以 30° 角插入 M.2 插槽 4. 用螺丝固定 SSD注意不要过度拧紧 5. 将 Orin NX 模组对准载板的 SO-DIMM 连接器 6. 均匀按下直到卡扣锁定3.2 安装散热方案# 如果使用官方散热器安装步骤1. 在 SoC 表面涂抹薄层导热硅脂推荐信越79212. 将散热器对准螺丝孔位3. 对角线交替拧紧螺丝扭矩0.6N·m4. 连接风扇电源线到载板的 FAN 接口# 第三方散热推荐# - Seeed reComputer J4012 自带散热壳# - 自制铜管散热 5V 风扇3.3 接线确认载板接口检查清单 [✓] 电源接口DC 或 USB-C [✓] HDMI/DP 输出到显示器 [✓] USB 键盘鼠标 [✓] 网线可选推荐初始配置用有线网络 [✓] USB-C 数据线连接到刷机主机Type-C 口非电源口 [✓] 风扇电源线 [✓] CSI 摄像头排线金手指朝下蓝色朝向 PCB 板边4. 刷机方式一SDK Manager推荐4.1 安装 SDK Manager# 在 Ubuntu 20.04/22.04 主机上操作# 下载 SDK Manager需要 NVIDIA 开发者账号# https://developer.nvidia.com/sdk-manager# 安装sudodpkg-isdkmanager_2.1.0-11669_amd64.debsudoapt-getinstall-f# 启动sdkmanager4.2 进入恢复模式进入恢复模式步骤 1. 断开 Jetson 电源 2. 用 USB-C 数据线连接 Jetson 和主机 3. 按住 Recovery 按钮载板上标为 FC_REC 4. 保持按住的同时接通电源 5. 等待 2 秒后松开 Recovery 按钮 # 验证是否进入恢复模式在主机上执行 lsusb | grep -i nvidia # 应该看到ID 0955:7323 NVidia Corp.4.3 SDK Manager 刷机流程SDK Manager 操作步骤 1. 登录 NVIDIA 开发者账号 2. 选择目标硬件Jetson Orin NX 3. 选择 JetPack 版本推荐 JetPack 6.0 / L4T 36.3 4. 选择安装类型 - Runtime仅刷系统推荐网络环境好时选这个 - Full包含所有组件CUDA、cuDNN、TensorRT 等 5. 选择存储设备NVMe SSD推荐 6. 设置用户名和密码 7. 点击 Flash 开始刷机 8. 刷机完成后Jetson 会自动重启 9. SDK Manager 会通过网络继续安装组件4.4 刷机常见问题# 问题1刷机过程中卡在 Flash Jetson Linux# 解决检查 USB 线是否为数据线非充电线换一个 USB 口重试# 问题2刷机后 Jetson 无法启动# 解决检查 NVMe SSD 是否正确识别# 在恢复模式下执行sudo./flash.sh jetson-orin-nx-devkit nvme0n1p1# 问题3组件安装失败CUDA/cuDNN# 解决刷机后在 Jetson 上手动安装sudoaptupdatesudoaptinstall-ycuda-toolkit-12-2 libcudnn8-dev5. 刷机方式二手动刷机高级用户5.1 下载 L4T 驱动包# 下载 L4TLinux for Tegra# 版本选择L4T 36.3 对应 JetPack 6.0wgethttps://developer.nvidia.com/downloads/l4t-jetson-orin-nx-devkit-36.3.0-aarch64.tbz2# 解压tar-xjfJetson_Linux_R36.3.0_aarch64.tbz2cdLinux_for_Tegra5.2 准备根文件系统# 下载 sample root filesystemwgethttps://developer.nvidia.com/downloads/linux-sample-root-filesystem-36.3.0-aarch64.tbz2# 解压到 rootfs 目录sudotar-xjfTegra_Linux_Sample-Root-Filesystem_R36.3.0_aarch64.tbz2-Crootfs/# 安装依赖sudo./tools/l4t-flash-prerequisites.sh# 安装 NVIDIA 驱动sudo./apply_binaries.sh5.3 执行刷机# 确保 Jetson 在恢复模式参考 4.2 节lsusb|grep0955# 刷机到 NVMe SSDsudo./flash.sh jetson-orin-nx-devkit external# 刷机完成后断开 USB重启 Jetson6. 首次启动配置6.1 系统初始化# 首次启动会出现图形化配置界面# 选择语言、时区、WiFi、用户名密码等# 配置完成后打开终端检查系统信息cat/etc/nv_tegra_release# 输出示例# R36 (release), REVISION: 3.0# 检查 JetPack 版本sudoapt-cacheshow nvidia-jetpack# Version: 6.0b876.2 更换国内源# 备份原源sudocp/etc/apt/sources.list /etc/apt/sources.list.bak# 替换为清华源Ubuntu 22.04 arm64sudotee/etc/apt/sources.listEOF deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse EOF# 更新sudoaptupdatesudoaptupgrade-y6.3 安装基础工具# 安装常用工具sudoaptinstall-y\vimgitcurlwgethtoptree\build-essential cmake pkg-config\python3-pip python3-venv python3-dev\libopencv-dev v4l-utils\net-tools wireless-tools\software-properties-common# 配置 pip 国内源mkdir-p~/.pipcat~/.pip/pip.confEOF [global] index-url https://pypi.tuna.tsinghua.edu.cn/simple trusted-host pypi.tuna.tsinghua.edu.cn EOF7. 验证 CUDA / cuDNN / TensorRT7.1 CUDA 验证# 检查 CUDA 版本nvcc--version# 应该显示 CUDA 12.2.x# 检查 CUDA 设备nvidia-smi# Jetson 上 nvidia-smi 可能不可用用 tegrastats 代替# 测试 CUDAcat/tmp/test_cuda.cuEOF #include stdio.h __global__ void hello() { printf(Hello from GPU thread %d\n, threadIdx.x); } int main() { hello1, 5(); cudaDeviceSynchronize(); return 0; } EOFnvcc /tmp/test_cuda.cu-o/tmp/test_cuda /tmp/test_cuda# 输出Hello from GPU thread 0-47.2 cuDNN 验证# 检查 cuDNN 版本dpkg-l|grepcudnn# ii libcudnn8 8.9.4.* arm64# 验证 cuDNNpython3-c import ctypes libcudnn ctypes.cdll.LoadLibrary(libcudnn.so) print(cuDNN loaded successfully) # 获取版本 major ctypes.c_int() minor ctypes.c_int() patch ctypes.c_int() libcudnn.cudnnGetVersion.restype ctypes.c_size_t version libcudnn.cudnnGetVersion() major_val version // 1000 minor_val (version % 1000) // 100 patch_val version % 100 print(fcuDNN version: {major_val}.{minor_val}.{patch_val}) 7.3 TensorRT 验证# 检查 TensorRT 版本dpkg-l|greptensorrt# ii libnvinfer8 8.6.2.* arm64# Python 验证python3-c import tensorrt as trt print(fTensorRT version: {trt.__version__}) print(fTensorRT available: {trt.Builder(trt.Logger()) is not None}) 8. 安装 Jetson Stats 监控工具# 安装 jtopJetson 版 htopsudopip3install-Ujetson-stats# 需要重启 systemd 服务sudosystemctl restart jtop.service# 使用 jtop 监控jtop# 界面说明# - INFO系统信息、JetPack 版本# - CTRL功耗模式MAXN/MIN/自定义# - GPUGPU 使用率、频率# - CPU各核心使用率# - MEM内存使用# - TEMP各传感器温度# - DISK磁盘使用# - NET网络流量9. 设置性能模式# 查看当前功耗模式sudonvpmodel-q# 设置最大性能模式Orin NX 16GBsudonvpmodel-m0# 25W, 6核 CPU 最高频# 设置 15W 模式省电sudonvpmodel-m1# 15W, 4核 CPU# 设置 10W 模式最低功耗sudonvpmodel-m2# 10W, 2核 CPU# 解除 CPU/GPU 频率限制配合 nvpmodel 使用sudojetson_clocks# 验证当前状态sudonvpmodel-q--verbose10. SSH 远程连接配置# 在 Jetson 上安装 SSH 服务sudoaptinstall-yopenssh-server# 检查 SSH 状态sudosystemctl statusssh# 获取 Jetson IP 地址hostname-I# 从主机连接sshusername192.168.1.100# 配置无密码登录在主机上执行ssh-keygen-ted25519 ssh-copy-id username192.168.1.100# 配置 VS Code Remote SSH# 1. 安装 VS Code 扩展 Remote - SSH# 2. CtrlShiftP → Remote-SSH: Connect to Host# 3. 输入 username192.168.1.10011. 性能基准测试# 安装测试工具sudoaptinstall-ysysbench# CPU 基准测试sysbench cpu --cpu-max-prime20000--threads8run# 内存测试sysbench memory --memory-total-size10G run# 磁盘 I/O 测试sysbench fileio --file-total-size2G --file-test-moderndrw prepare sysbench fileio --file-total-size2G --file-test-moderndrw run sysbench fileio cleanup# GPU 计算测试python3-c import time import numpy as np # CPU 测试 size 4096 a_cpu np.random.randn(size, size).astype(np.float32) b_cpu np.random.randn(size, size).astype(np.float32) start time.time() for _ in range(10): c_cpu np.matmul(a_cpu, b_cpu) cpu_time (time.time() - start) / 10 print(fCPU matmul: {cpu_time*1000:.1f} ms) # GPU 测试CuPy try: import cupy as cp a_gpu cp.asarray(a_cpu) b_gpu cp.asarray(b_cpu) cp.cuda.Stream.null.synchronize() start time.time() for _ in range(10): c_gpu cp.matmul(a_gpu, b_gpu) cp.cuda.Stream.null.synchronize() gpu_time (time.time() - start) / 10 print(fGPU matmul: {gpu_time*1000:.1f} ms) print(fGPU 加速比: {cpu_time/gpu_time:.1f}x) except ImportError: print(CuPy 未安装跳过 GPU 测试) 12. 常见问题排查12.1 Jetson 无法启动# 检查步骤1. 确认电源适配器功率足够≥45W2. 检查 NVMe SSD 是否正确安装3. 连接串口调试115200 波特率4. 尝试刷入 eMMC如果有恢复# 串口调试sudoaptinstallminicomsudominicom-D/dev/ttyACM0-b11520012.2 WiFi 连接问题# 检查 WiFi 模块是否识别lspci|grep-inetwork# 或lsusb|grep-iwireless# Intel AX210 驱动JetPack 6.0 已内置sudomodprobe iwlwifi# 扫描 WiFisudoiwlist wlan0 scan|grepESSID# 连接 WiFinmcli device wifi connectSSIDpasswordPASSWORD12.3 散热与节流# 查看温度cat/sys/devices/virtual/thermal/thermal_zone*/temp# 输出单位是毫摄氏度如 55000 55°C# 查看是否触发节流cat/sys/devices/platform/soctherm/throttle_oc1/*# 0未节流, 1已节流# 设置风扇转速手动模式echo255/sys/devices/pwm-fan/target_pwm# 0停止, 255全速# 查看实时温度和节流状态tegrastats总结本文涵盖了 Jetson Orin NX 从硬件组装到软件环境搭建的完整流程。核心要点硬件组装NVMe SSD 散热方案是关键刷机方式SDK Manager 简单可靠手动刷机适合批量部署环境验证CUDA cuDNN TensorRT 三件缺一不可性能调优nvpmodeljetson_clocks解锁全部算力远程开发SSH VS Code Remote 是主力开发方式下一篇我们将讲解如何在 Jetson 上使用 TensorRT 加速模型推理。
返回列表