Jetson 开发系列:Orin Nano 开箱!一款强大的嵌入式物联网开发板

news2024/11/18 9:35:14

边缘计算作为 AI 的一个重要应用场景,面临着前所未有的机遇与挑战。

谈及 AI,自然绕不开 NVIDIA 的产品:

其中,Jetson 系列均为 AIoT 设备打造,功耗低是其最大的特点。以我手头的 Jetson Ori Nano 为例,满载功耗不过 15W

文章目录

    • 1. 关于 Jetson 你最关心的
    • 2. 性价比之王- Jetson Ori Nano
    • 3. 开箱测评
      • 3.1 开机启动
      • 3.2 桌面环境
      • 3.3 VNC 远程桌面
      • 3.4 SSH 远程登录
      • 3.4 熟悉 jtop
    • 写在最后

1. 关于 Jetson 你最关心的

从2015年推出第一代 Jetson TK1 开始,NVIDIA 不断推出性能更强的 Jetson 产品,下面是不同主板的算力图。

那是不是意味着算力越高,越值得拥有呢?

也未必,还得看一个参数:GPU Compute Capability(GPU计算能力)。

这玩意是 NVIDIA 定义的一个术语,用于描述 GPU 执行并行计算任务的能力。不同的 Compute Capability 版本意味着支持不同的 CUDA 特性,以及不同的计算性能和内存带宽。

不同 Jetson 主板的 Compute Capability 怎么样?

在预算充足的情况下,建议入手 Compute Capability 高的板子,会省掉后续很多麻烦。

2. 性价比之王- Jetson Ori Nano

为何选择 Jetson Ori Nano?

Jetson Orin Nano 是 Jetson Nano 的升级版,算力提升了80倍,高达 40 TOPS(每秒万亿次)的计算性能,为曾经难以企及的复杂 AI 模型铺平了道路。

放一张图给大家感受下:

核心参数,单独摘出来:

模组:

  • GPU:不同于 Jetson NANO 的 Maxwell 架构,Orin NANO 是基于 Ampere 架构,具有 1024 个 CUDA 核心和 32 个 Tensor 核心;
  • CPU:6 核 Arm Cortex-A78AE 64位CPU;
  • 内存:4/8GB 128-bit LPDDR5,68GB/s 的带宽。注:系统内存和 GPU 显存共享,内存分配根据 CPU 和 GPU 的需求动态调整。

载板正面接口:

  • 一个 DP 接口接显示屏;
  • 四个 USB 3.1 Type A 接口;
  • 一个千兆以太网端口;
  • 一个 USB-C 接口(用来传输数据,而非供电)

载板底部接口:

  • 一个 M.2 Key E 接口,出厂已接了无线网卡,所以可以连 Wifi 和 蓝牙;
  • 两个 M.2 Key M 接口,可以扩展 SSD 存储。

板子正面图,小巧且强悍:

3. 开箱测评

如果你在国内厂商那购买,一般都烧录好了镜像,因此你拿到手的是:

  • 硬件:Jetson 模组;
  • 软件:Ubuntu 20.04 操作系统 + JetPack™ SDK。

记得保留所有配件和外包装盒,因为 NVIDIA 提供为期一年的质保。

接下来,带大家开机实操感受一下。

3.1 开机启动

首先,把烧录好镜像的固态硬盘,插进载板底部的卡槽中:

记得一定把天线接到载板底部的网卡处,否则 WIFI 信号会很弱的。

联网成功后,需要更新一下源,否则后面安装一些库会很痛苦:

 sudo apt-get update
 sudo apt-get full-upgrade

最后,用 HDMI 线连到一台显示器,插电自动开机,风扇转起来。

3.2 桌面环境

Jetson 官方系统是ubuntu20.04,因此自带桌面环境,右上角先把 WIFI 连上吧。

此外,我还尝试了连接蓝牙音箱,蓝牙可以配对成功,但是音频设备识别不了,一直没找到解决方案,懂的小伙伴评论区交流下啊。

3.3 VNC 远程桌面

有同学说,我没有那么多显示屏怎么办?

远程桌面了解下?

不了解的小伙伴可回看:【保姆级教程】Windows 远程登录 Ubuntu桌面环境

Ubuntu 中远程桌面主要有两种方式:上篇教程中我们主要讲的是 xrdp,本篇我们来聊聊 如何使用 VNC。

简单来说,VNC 配置分两步:服务端和客户端。

服务端:

安装 vino:

sudo apt update
sudo apt install vino

设置 vino 登录选项:

gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino require-encryption false
gsettings set org.gnome.Vino authentication-methods "['vnc']"
# 设置自己的登录密码
gsettings set org.gnome.Vino vnc-password $(echo -n 'yourpassword' |base64)

启动服务:

/usr/lib/vino/vino-server

设置开机自启动:

gsettings set org.gnome.Vino enabled true
mkdir -p ~/.config/autostart
vim ~/.config/autostart/vino-server.desktop
# 填入如下内容
[Desktop Entry]
Type=Application
Name=Vino VNC server
Exec=/usr/lib/vino/vino-server
NoDisplay=true

客户端:

服务端启动成功后,需要下载 VNC viewer 软件,以 RealVNC 为例,新建一个连接,这里填入 IP 地址即可,VNC server 默认端口号是 5900。

注意:使用 VNC 桌面,需要接好 DP 线,否则无法进入桌面。

3.4 SSH 远程登录

当然,相信拿到这块板子的你,一定是不会需要桌面环境的,因为它太占内存拉。实测关闭桌面环境,可省出 800M+ 的内存空间。

如何关闭桌面环境?

如果是临时关闭:

sudo init 3     # stop the desktop
sudo init 5     # restart the desktop

如果要永久关闭:

# 关闭桌面环境
sudo systemctl set-default multi-user.target
# 开启桌面模式
sudo systemctl set-default graphical.target
# 立即打开桌面
sudo systemctl isolate graphical.target

接下来,你只需要远程登录它进行开发就 OK 了。

如何远程登录,看这篇就够了👉:【保姆级教程】Windows 远程登陆 Linux 服务器的两种方式:SSH + VS Code,开发必备

3.4 熟悉 jtop

最后,你还需要了解下 jtop。

也许你已经习惯了用 nvidia-smi 来查看显卡运行状态。

不好意思,在 Jetson 系列板卡中,你用不了 nvidia-smi

因为 Jetson 板卡使用的是专门为嵌入式系统优化的驱动和API,如 CUDA for Tegra。

不过,JetPack™ SDK 提供了 jtop 命令。

类似于 Linux 系统中的 top 命令,jtop 用于监控 Jetson 设备的性能和资源使用情况:

  • GPU/CPU 使用率
  • 内存使用
  • 存储使用
  • 网络状态
  • 进程信息
  • 温度:对监控设备是否过热非常重要。

贴张图给大家感受下,关闭桌面环境 + 三个docker容器,共占用 1.1G 内存空间。

按下 7,可以查看系统信息,和内置软件包的版本,后面开发过程中你一定会用到的。

写在最后

至此,你的 Jetson 开发环境就基本搭建好了。

如果对你有帮助,欢迎点赞收藏备用。

本系列文章,会陆续更新在 Jetson 上完成 AI 应用开发的相关教程,欢迎感兴趣的朋友关注。


为方便大家交流,新建了一个 AI 交流群,欢迎对AIoTAI工具AI自媒体等感兴趣的小伙伴加入。

最近打造的微信机器人小爱(AI)也在群里,公众号后台「联系我」,拉你进群。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2184255.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一文彻底搞懂多模态 - 基础术语+基础知识+多模态学习

文章目录 技术交流基本术语一、数据采集与表示二、数据处理与融合三、学习与推理 基础知识一、传统机器学习二、深度学习三、优化算法四、应用领域 多模态学习一、模态表示二、多模态融合图片 三、跨模态对齐 最近这一两周看到不少互联网公司都已经开始秋招发放Offer。 不同以…

【MAUI】View和ViewModel的关联方式

方式一:创建ViewModel对象: 在View中,通过设置BindingContext为ViewModel对象,即可进行绑定。如下所示: <ContentPage......xmlns:vm="clr-namespace:MauiApp8.ViewModels"><

多模态RAG实现

在标准 RAG 中&#xff0c;输入文档包含文本数据。LLM 利用上下文学习&#xff0c;通过检索与所提查询上下文相匹配的文本文档块来提供更相关、更准确的答案。 但是&#xff0c;如果文档包含图像、表格、图表等以及文本数据&#xff0c;该怎么办&#xff1f; 不同的文档格式包…

基于 Qwen2.5-0.5B 微调训练 Ner 命名实体识别任务

一、Qwen2.5 & 数据集 Qwen2.5 是 Qwen 大型语言模型的最新系列&#xff0c;参数范围从 0.5B 到 72B 不等。 对比 Qwen2 最新的 Qwen2.5 进行了以下改进&#xff1a; 知识明显增加&#xff0c;并且大大提高了编码和数学能力。在指令跟随、生成长文本&#xff08;超过 8K…

【Maven】依赖管理,Maven仓库,Maven核心功能

Maven 是一个项目管理工具&#xff0c;基于 POM&#xff08;Project Object Model&#xff0c;项目对象模型&#xff09;的概念&#xff0c;Maven 可以通过一小段描述信息来管理项目的构建&#xff0c;报告和文档的项目管理工具软件 大白话&#xff1a;Maven 是一个项目管理工…

Spring MVC 常用注解

目录 基础概念 常用注解介绍 基础概念 1、MVC &#xff1a;代表一种软件架构设计思想&#xff0c;通俗的理解&#xff1a;客户端发送请求到后台服务器的Controller(C)&#xff0c;控制器调用Model(M)来处理业务逻辑&#xff0c;处理完成后&#xff0c;返回处理后的数据到Vie…

【CKA】七、七层负载-Ingress应用

7、七层负载-Ingress应用 1. 考题内容&#xff1a; 2. 答题思路&#xff1a; 1、要先查到集群中使用的ingressclass 2、编写yaml 我考的题只是把 hi 服务换成了 hello&#xff0c;其他都一模一样 3. 官网地址&#xff1a; https://kubernetes.io/zh-cn/docs/concepts/serv…

基于SSM的大型商场会员管理系统【附源码】

基于SSM的大型商场会员管理系统&#xff08;源码L文说明文档&#xff09; 目录 4 系统设计 4.1布局设计原则 4.2功能模块设计 4.3数据库设计 4.3.1数据库E-R图 4.3.2 数据库表结构 第五章 系统实现 5.1 管理员功能实现 5.1.1 员工管理 5.1…

基于SD卡的基因(DNA)炫酷LED桌面灯

基于SD卡的基因&#xff08;DNA&#xff09;炫酷LED桌面灯 一、介绍一个已知的问题解决办法 二、支持目录材料准备LED灯光文件&#xff08;我使用的PLA颜色&#xff09; 三、 打印部件和焊接四、拼装打印的DNA散件五、组合DNA螺旋结构六、执行DNA文件七、程序烧录八、总结及成品…

六、Drf限流组件

六、限流组件 限制某个视图在某个时间段内被同一个用户访问的次数 6.1限流组件的简单应用 1&#xff09;安装django-redis pip3 install django-redis2)在settings.py中注册cache #缓存数据库redis配置 CACHES{"default":{"BACKEND":"django_red…

AI 对话工具汇总

&#x1f423;个人主页 可惜已不在 &#x1f424;这篇在这个专栏AI_可惜已不在的博客-CSDN博客 &#x1f425;有用的话就留下一个三连吧&#x1f63c; 目录 前言: 正文: 前言: 在科技飞速发展的时代&#xff0c;AI 对话正逐渐成为我们获取信息、交流思想的新方式。它以强…

Mysql(索引与事务)

索引查询与普通查询的区别 普通查询 &#xff1a;执行步骤为先对表进行遍历&#xff0c;然后把当前的行带入条件中进行判断&#xff0c;符合条件执行&#xff0c;不符合跳出。这种情况在遇见数据较多的情况下就会出现问题&#xff0c;效率太低。 索引查询&#xff1a;是对查询…

深入解析 https

我的主页&#xff1a;2的n次方_ 1. 背景介绍 在使用 http 协议的时候是不安全的&#xff0c;可能会出现运营商劫持等安全问题&#xff0c;运营商通过劫持 http 流量&#xff0c;篡改返回的网页内容&#xff0c;例如广告业务&#xff0c;可能会通过 Referer 字段 来统计是…

k8s的控制节点不能访问node节点容器的ip地址

master控制node服务器添加容器后,访问不了该node服务器容器的ip,只能在node服务器访问 排查后发现是k8s的master服务器和node节点的网址网段和k8s初始化时提示的ip网段不一致 我之前是192.168.137.50, 实际上master主机期望的是192.168.1.50 解决方案: 1.删除服务器后重建ma…

网络原理-TCP协议

回顾上文 上一篇博客中详细描述了UDP的报文格式及特点 UDP报头 UDP载荷&#xff08;应用层数据报&#xff09;&#xff0c;源端口&#xff0c;目的端口&#xff0c;报文长度&#xff0c;校验和无连接&#xff0c;不可靠传输&#xff0c;面向数据报&#xff0c;全双工 这一篇…

新160个crackme - 071-Rith.1

运行分析 需要破解Name和Serial点击Check It&#xff01;按钮没反应 PE分析 C程序&#xff0c;32位&#xff0c;无壳 静态分析&动态调试 ida搜索字符串&#xff0c;双击进入关键函数 进行动态调试&#xff0c;逻辑如下&#xff1a;1、Name长度为5~20&#xff0c;Serial长度…

算法笔记(三)——前缀和算法

文章目录 一维前缀和二维前缀和寻找数组的中心下标除自身以外数组的乘积和为 K 的子数组和可被 K 整除的子数组连续数组矩阵区域和 前缀和算法是一种用空间换时间的算法&#xff0c;他常常用于解决某些题目或者作为某些高级算法的组成部分 一维前缀和 题目链接&#xff1a;DP3…

【最新】微信小程序连接onenet——stm32+esp8266+onenet实现查看温湿度,控制单片机

微信小程序——stm32esp8266onenet实现查看温湿度&#xff0c;控制单片机 &#xff08;最新已验证&#xff09;stm32 新版 onenet dht11esp8266/01s mqtt物联网上报温湿度和控制单片机(保姆级教程) &#xff1a;↓↓&#x1f447; &#x1f447; &#x1f447; &#x1f447…

【Linux】进程优先级、调度、命令行参数:从理论到实践(二)

&#x1f308; 个人主页&#xff1a;Zfox_ &#x1f525; 系列专栏&#xff1a;Linux 目录 &#x1f680; 前言一&#xff1a; &#x1f525; 进程优先级 &#x1f375; 基本概念&#x1f375; 查看系统进程&#x1f375; PRI and NI&#x1f375; PRI vs NI&#x1f375; 用to…

【Java SE 题库】移除元素(暴力解法)--力扣

&#x1f525;博客主页&#x1f525;&#xff1a;【 坊钰_CSDN博客 】 欢迎各位点赞&#x1f44d;评论✍收藏⭐ 目录 1. 题目 2. 解法(快慢“指针”) 3. 源码 4. 小结 1. 题目 给你一个数组 nums 和一个值 val&#xff0c;你需要原地移除所有数值等于 val 的元素。元素的顺…