Jetson Nano出来一段时间了,借着带同学们玩的由头买了套回来,终于有机会替换原来的树莓派玩玩了。这篇文章是“玩转Jetson Nano”的开篇,当然有可能玩得转也有可能玩不转,试试看:)主要介绍入手后的Nano环境配置。尽管已经有很多类似的帖子,感觉还是有必要把个中关键和心得记下来,希望以后再用时少走弯路吧,也供有需要的同学参考。

本文主要开机准备和远程连接设置两大内容,具体为:

目录

1. 开机前的准备

1.1 认识Nano

1.2 硬件准备

1.2.1 必备

1.2.2 选配

1.3 在SD卡上烧写系统

1.3.1 下载镜像

1.3.2 格式化SD卡

1.3.3 将镜像烧录到SD卡

1.4 网络连接

1.4.1 安装无线模块

1.4.2 设置静态IP

1.5 供电

2. 远程连接

2.1 远程登录终端

2.1.1 获取Nano的IP

2.1.2 SHH远程登录

2.1.3 SSH图形化工具WinSCP

2.2 远程登录桌面

2.2.1 安装VINO:VNC Server

2.2.2 设置VINO登录选项

2.2.3 将网卡加入VINO服务

2.2.5 VNC测试登录

2.2.6 添加开机启动vino-server

2.3 安装Jtop监控运行


1. 开机前的准备

1.1 认识Nano

先通过Nano官网提供的信息认识一下Nano开发者套件。

(1)Jetson Nano Developer Kit盒中包括:

  1. Jetson Nano开发人员套件
  2. 小纸卡,具有快速启动和支持信息
  3. 折叠纸架(用于放置Nano的架子)

(2)我们还需要:

  1. microSD卡(最低16GB)
  2. USB键盘和鼠标
  3. 电脑显示器(HDMI或DP接口)
  4. Micro-USB电源(5V⎓2A)
  5. 一台能上网的计算机。

(3)Nano的主要接口

① microSD卡插槽用于主存储

② 40针扩展接头

③ Micro-USB端口,用于5V电源输入或用于数据传输

④ 千兆以太网端口

⑤ USB 3.0端口(×4)

⑥ HDMI输出端口

⑦ DisplayPort输出端口

⑧ 直流桶式插孔,用于5V电源输入

⑨ MIPI CSI摄像机连接器

1.2 硬件准备

下面开始迫不及待的动手。

1.2.1 必备

  • MicroSD卡与读卡器1套。因系统刷完SD卡大约13G,后续还要安装各种框架和存储深度学习模型文件,所以推荐32GB及以上容量的卡。读卡器用于将SD卡插入计算机的USB接口烧录系统。
  • Micro-USB电源。Jetson Nano不包括电源,需要自己准备1根5V⎓2A的Micro USB电源线,加上手机充电头即可供电;也可以准备一个5V⎓4A的电源适配器,为后续陆续增加的外设提供功率保障。
  • USB键盘鼠标。
  • 网线。Nano官方提供一个Ubuntu18.04系统,在该系统的基础上,安装和更新必要的包时必须联网。
  • 上网计算机1台。用于烧写microSD卡等。

1.2.2 选配

  • USB接口摄像头或CSI接口摄像头1个。用于AI机器视觉项目验证。
  • 无线上网模块1个。Nano有一个千兆网口,只能有线连接上网。
  • HDMI或DP接口显示器1台。包括显示器和相关连接线。在配置好远程之前需要连接显示器进行必要设置。
  • 小型散热风扇1个。Nano自带无源散热板,可以支持10W的模块在25°C左右的环境温度下使用。如果有额外散热需求,需要加装风扇。

1.3 在SD卡上烧写系统

在使用开发套件之前,SD卡要烧写好操作系统,以及JetPack工程所需的其他组件。最简单的方法就是直接下载官方提供的镜像文件,并且按照Getting Started with Jetson Nano Developer Kit教程操作。

1.3.1 下载镜像

官方镜像下载地址:

https://developer.nvidia.com/embedded/dlc/jetson-nano-dev-kit-sd-card-image

下载完成解压到本地硬盘。

1.3.2 格式化SD卡

推荐使用SDFormatter软件格式化SD卡。

1.3.3 将镜像烧录到SD卡

使用Etcher软件写入镜像。打开Etcher软件,依次点击:

[Select image] 打开下载的镜像文件-->[Select drive] 选择microSD卡-->[Flash!] 烧录,大约30分钟完成。

将烧录好镜像系统的microSD卡插入Nano的卡槽

1.4 网络连接

以下两种方法之一可以实现Nano上网。

  • 使用网线连接路由器的LAN口
  • 安装无线模块(需要另购)

1.4.1 安装无线模块

安装无线模块需要将Nano的主芯片从主板上拆下来:卸掉两个螺丝,然后轻轻将散热片两侧的卡锁向外拨开,此时主芯片板和散热片会弹起来,将其轻轻拔出插槽;将无线模块安装在位于主板上的插槽中,重新安装主芯片板。如图所示。

装好无线模块,开机后找到wifi信号连接即可。

1.4.2 设置静态IP

如果需要,也可以设置静态IP,方便远程连接。

以无线连接为例。在桌面右上角无线连接中,选择[Wi-Fi设置],点击连接的[齿轮]设置符号,修改[IPv4连接方式]为[手动],添加静态IP地址,子网掩码和网关信息,重启后生效。如下图所示。

1.5 供电

Nano的供电方式为以下三种方式之一:

(1)Micro USB供电

默认供电方式。用手机充电器+Micro USB线连接J28接口

(2)5V⎓4A的DC电源供电

如果连接的外设模块比较多,导致总电流需求大于2A的话,可以先用方形塑料帽连接J48引脚的跳线,切换成5V⎓4A的DC电源供电(接受带有2.1×5.5×9.5 mm电源插头)连接J25接口。连接J48引脚后Micro-USB供电失效。

(3)通过J41扩展接口上的2个5V供电

将Nano套件连接到电源时,J41扩展接口上5V电源引脚始终可用。可以使用两个5V引脚为套件分别提供3A的电源。这种供电方式一般用于外加扩展板的统一供电。例如外加电机驱动板时,只需要通过电池给驱动板供电,然后从驱动板分一路电源插入J41对应的5V供电引脚给Nano供电即可。

几个接口位置如下图所示。

我选择使用5V⎓4A电源供电。连接好显示器和键盘鼠标后就可以开机啦!开机后有一些常规设置,就不多啰嗦了,不过建议设置为上电自动启动,因为Nano没有电源开关,上电自启方便以后使用。

2. 远程连接

玩过树莓派的同学一定知道这种开发套件比较好用方式,就是让它安安静静的被远程连接,不必专门配一套键盘鼠标和显示器。这里介绍两种远程连接方式,都安装,按需取用。

2.1 远程登录终端

首先介绍最常用的SSH远程连接Nano的方法。SSH是专门为了远程登录会话和其他网络服务提供的安全性协议,用于远程连接Linux服务器。SSH连接方式有串口和网络两种。Jetson Nano串口在J41扩展接口上,本文使用网络连接。

  • SHH远程优点:简单易用,Nano默认开启,无需设置
  • SHH远程缺点:没有图像界面操作不便,不能显示图像,机器视觉的AI程序调试不便

用过树莓派的同学对SSH连接应该不陌生。与树莓派不同的是,Jetson Nano的系统是默认开启SSH服务,所以只要Jetson nano网络连接正常就可以直接使用SSH登录,不用另外设置

2.1.1 获取Nano的IP

用网线将Nano与家里路由器的LAN口连接上网。然后打开终端,执行ifconfig命令获取IP,如下图eth0接口的IP为10.0.0.107

2.1.2 SHH远程登录

Windows系统可以使用PuTTY或者XShell软件使用SHH远程登录Nano。

(1)使用PuTTY实现SSH远程连接过程为:

① 打开PuTTY软件,输入Nano的IP地址(SSH默认端口是22)

② 点击Open连接Nano

③ 客户端服务端进行联机加密认证

④ 认证通过联机成功

(2)使用XShell实现SHH远程

这里特别推荐使用XShell远程,因为它功能更丰富,使用更方便:

  • 可以记录账号密码,连接后自动登录
  • 可以为不同的主机设置个性化描述
  • 可以同时打开一个主机的多个终端
  • 可以同时打开不同主机的多个终端

功能基本都简单易懂,就不再啰嗦了。

上图为XShell管理多个主机的不同连接。

2.1.3 SSH图形化工具WinSCP

下面一鼓作气安装WinSCP图形化SHH工具,可以用于后续将模型文件从自己的电脑传输到Nano,非常方便。

WinSCP下载地址:https://www.onlinedown.net/soft/20088.htm

安装完成后,直接输入上一步得到的Nano的IP、主机用户名、密码即可访问Nano的文件系统。

连接后可以执行各种文件传输等操作,例如直接将左侧本地文件上传到Nano的指定文件夹。

试试鼠标从左边把文件拖到右边,再从右边拖到左边,开不开心?

2.2 远程登录桌面

  • 桌面远程优点:操作直观方便,可以显示程序运行的视频或图像结果。

不同系统之间的桌面远程大家很熟悉了,实现的方法主要有3种(或更多):

  • Teamviewer最好的远程软件,没有之一。悲剧的是,Nvidia Jetson主板运行64位版本Ubuntu的ARM64处理器,而TeamViewer不直接支持该处理器。也就是不支持Jetson系列开发套件。
  • 共享桌面 (Desktop Sharing):Ubuntu系统有Desktop Sharing功能,可以使用windows系统远程登录Ubuntu,但由于Nano定制版的Ubuntu系统少了许多东西,导致桌面共享有问题,解决起来需要比较繁琐,所以直接忽略此方式。
  • VNC远程适合Nano,简单易行,推荐

VNC的条件为:远程的ubuntu机器已经登录进入桌面,且已经开启vino-server,则在远程使用vnc-viewer可直接连接。因此,要做两件事:

  • 在Nano上安装vino-server
  • 在Nano上启动vino-server。

2.2.1 安装VINO:VNC Server

打开Nano终端,依次执行

sudo apt update
sudo apt install vino

2.2.2 设置VINO登录选项

依次执行

gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino require-encryption false

2.2.3 将网卡加入VINO服务

执行,查看网卡UUID

nmcli connection show

显示如下,我们使用的是有线网络,因此拷贝第一行Wired connection 1的UUID

将UUID拷贝粘贴到如下命令的单引号[‘your UUID’]之间,并执行

dconf write /org/gnome/settings-daemon/plugins/sharing/vino-server/enabled-connections "['your UUID']"
export DISPLAY=:0

2.2.5 VNC测试登录

(1)在windows上安装VNC软件

在自己电脑的windows系统中安装VNC viewer

下载地址:https://www.realvnc.com/en/connect/download/viewer/

当然,其他地方应该也可以下到绿色版。

(2)在Nano上启动vino-server

Nano上执行

/usr/lib/vino/vino-server

显示如下,表示成功

本指令执行后,终端不关闭,在windows系统打开VNC viewer软件执行如下操作登录Nano:

[File] --[New connection].. 输入登录信息-- [ok]

  • VNC Server: 输入Nano的IP地址
  • Name:输入Nano的用户名

第一次连接会弹出警告信息,点击[continue],如果出现绿色大眼睛则大功告成!

2.2.6 添加开机启动vino-server

我们希望每次Nano上电开机后,自动启动vino-server,只需要将上述命令加入开启启动选项,这样就彻底接键盘显示器的麻烦了。下面快来设置吧!

在Nano的Ubuntu系统左上角dash中搜索application会出现“开机启动应用”设置,或者通过命令打开“开机启动应用”设置:

sudo gnome-session-properties

打开Startup Applications应用,添加如下开机启动内容

  • 名称:StartVinoServer
  • 指令:/usr/lib/vino/vino-server

重启Nano,试试能否直接从VNC再次登录吧!

2.3 安装Jtop监控运行

最后,安装Jtop实时监控Nano的运行状态。

执行安装命令

sudo pip3 install jetson-stats

安装完成后,终端运行

sudo jtop

可以远程查看系统运行的动态信息:

Jtop有四个页面监控Nano运行状态,ALl, GPU, MEM, CTRL和INFO信息,使用左右键切换页面。下图为GPU状态。

本文更新链接:

https://blog.csdn.net/iracer/article/details/104453423


新书终于面市啦,《机器学习原理与编程实战》,连接原理与实战:

https://blog.csdn.net/iracer/article/details/116051674?spm=1001.2014.3001.5501

参考文档

https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit

https://blog.csdn.net/hhaowang/article/details/101109805?utm_source=distribute.pc_relevant.none-task

玩转Jetson Nano(一) 开机准备与远程连接设置相关推荐

  1. 玩转Jetson Nano(二):远程桌面

    玩转Jetson Nano(二):远程桌面 前言 远程桌面 桌面共享设置 更新软件源 安装vino 配置VNC服务 设置为Gnome编译模式 设置VNC登陆密码 设置VNC开机自启动 重启验证VNC是 ...

  2. 玩转Jetson Nano(一)烧写系统

    英伟达在新品会上发布了Jetson Nano,正好有这方面的需求,弄来了一个玩玩.Jetson Nano是一款形状.外接口类似于树莓派的嵌入式主板,搭载了四核Cortex-A57处理器,GPU则是拥有 ...

  3. Jetson nano无法开机,出现cp:not writing throught dangling symlink ‘etc/resolv.conf‘

    先说一下本人的经历,我在弄VNC远程登录的时候,因为远程登录后屏幕太小了,于是我在终端输入 sudo gedit /etc/X11/xorg.conf 然后因为我一时马虎,把屏幕信息写到了Depth下 ...

  4. Linux云服务器安装Redis并设置远程连接设置开机自启

    1.下载redis linux安装版(redis最新版:https://redis.io/download) wget http://download.redis.io/releases/redis- ...

  5. Linux安装redies+开机自启+远程连接+卸载

    安装 命令安装 我的安装路径/usr/local/redis/ 下载命令: wget wget http://download.redis.io/releases/redis-4.0.1.tar.gz ...

  6. 为了在nano上进行远程连接

    玩转Jetson Nano(一) 开机准备与远程连接设置 [个人免费使用xshell(知乎)]链接如下 https://zhuanlan.zhihu.com/p/351723521

  7. Jetson nano开机自启动程序

    目录 前言 1.介绍 2.创建开机自启动程序 2.1 创建一个bash文件 2.2 创建一个service文件 2.3 添加权限 2.4 移动service文件 2.5 启动服务 2.6 停止/重启服 ...

  8. Jetson nano 入手系列之4—外围设备:开机键+PWM风扇

    Jetson nano 入手系列之4-外围设备:开机键+PWM风扇 1.外接按键开机 2.PWM可调速风扇 2.1 jtop工具 2.2 PWM风扇 2.3 PWM风扇的控制 2.3.1 手动控制 2 ...

  9. Jetson nano(Ubuntu18.04) 网线连接电脑,实现VNC远程桌面

    本文通过网线连接jetson nano(Ubuntu18.04) 与windows电脑,实现了网络共享及VNC远程桌面访问 配置Jetson nano (此过程需要连接屏幕及外设) 以下内容来自系统自 ...

最新文章

  1. 批量启动关闭MS SQL 2005服务BAT
  2. idea在Mybatis的xml里面写sql时,表名、字段、报红问题的解决方法
  3. HMM 模型输入数据处理的优雅做法 来自实际项目
  4. ajax webservice 参数类型,JQuery Ajax WebService传递参数的简单实例
  5. 技术人如何自我提升?阿里技术带来丰富学习资源
  6. 【熊猫站群系统@苹果cmsv10/Maccmsv10 站群深度定制版 开发日志】 优雅且高效的友链模块,一键打造强大的蜘蛛池
  7. 【转载】前后端分离的思考与实践(五)
  8. torch.round()
  9. HTML 为啥称“超文本标记语言”?
  10. 微信小程序——flex弹性布局水平垂直居中
  11. win7下安装openSSH
  12. nrf24l01无线模块c语言程序,NRF24L01 无线通信模块使用
  13. TF-IDF算法详解与应用
  14. Nginx 局域网内互传文件
  15. python excel转csv日期变数字_将Excel转换为CSV正确转换日期字段
  16. 制造业数字化转型的意义是什么?
  17. 接口测试需要怎么做?
  18. 玩平衡车系列——编码器使用教程与测速原理
  19. 获取计算机主机mac地址的命令有,Mac系统获取远程电脑MAC地址的两种简单方法
  20. 跨部门工作安排与绩效考评解决方案

热门文章

  1. mysql 间接引用_微服务之间安全调用 by UAA
  2. 关于写“好“代码的一些思路
  3. 关系型数据库中多对多关系的中间表的命名规则
  4. OC/IOS 基础 获取屏幕信息
  5. 20、Gateway 过滤器
  6. MapReduce编程模型详解
  7. Python保留两位小数
  8. Android判断手机号格式邮箱格式
  9. 自考计算机应用基础10月真题,2017年10月自考《计算机应用基础》真题与答案
  10. 关于Tensorflow 1.X和2.X匹配的相关问题综合记录