NVIDIA Jetson Xavier NX刷机+ROS安装+深度学习配置

.NVIDIA Jetson Xavier NX 完整说明流程

V1.0.0 – by Holden

Date : 2021-03-19

1. Jetson Xavier NX简介

​ NVIDIA® Jetson Xavier™ NX通过外形小巧的模组系统(SOM)将超级计算机的性能带到了边缘端。 高达21 TOPS的加速计算能力可并行运行现代神经网络并处理来自多个高分辨率传感器的数据,这是完整AI系统的要求。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

​ 更多介绍可以查看官方网站: https://www.nvidia.cn/autonomous-machines/embedded-systems/jetson-xavier-nx/

2. Jetson Xavier NX刷机介绍

开题说明,一切以官方的刷机教程为准,任何问题,只有官方可以给你最权威的解答!!!

2.1 工具准备工作

  • 由于Jetson Xavier NX 没有内置硬盘,所以需要安装一张TF卡作为硬盘使用,TF卡建议买64G的,32G也能够使用,但是刷机完成之后剩余空间就比较小了。
  • 准备一块读卡器,用来PC跟TF卡的烧录使用。
  • 准备一台带有Ubuntu系统的PC;Windows系统也可以使用,本文不做Windows方面流程介绍!!!

2.2 下载镜像以及烧录工具

​ 点击下载需要登录Nvidia的账号,如果没有需要注册账号才能下载,建议使用外网下载。

​ 文件大小大概6.6G左右,附上我已经下载好的百度云链接(密码是2021https://pan.baidu.com/s/19iEFdJonS6cnY99ZF6UbvA

在这里插入图片描述

打开链接会直接自动识别本机的系统,我下载的是Linux64位的软件,这个网站下载东西可能很慢。附上我已经下载好的附上我已经下载好的百度云链接(密码是2021https://pan.baidu.com/s/1gKL2bjE0QulkE99ZY-u4mQ

使用时直接运行既即可

$ ./balenaEtcher-1.5.116-x64.AppImage

2.3 烧录原生镜像到TF卡

1、点击Flash form file选择刚才下载好的SD Card Image压缩包

在这里插入图片描述

2、将TF卡插入到读卡器,并插入到电脑主机的USB口,点击select target选择要烧录到的TF卡(有的也会自动识别TF卡),点击Flash

在这里插入图片描述
在这里插入图片描述

3、烧录成功

在这里插入图片描述

2.4 开机启动

将烧录好的TF卡插入到NX开发板上,按照NVIDIA官方说明的操作,连接好鼠标、键盘、显示器、最后连接电源,自动启动开发板

2.5 组件配置

原生镜像会默认安装了cuda、cudnn等,系统安装后需要进行以下配置:

(1).导出cuda路径到bashrc

export LD_LIBRARY_PATH=/usr/local/cuda/lib
export PATH=$PATH:/usr/local/cuda/bin

(2).安装ROS(melodic)

参考ROS 官方安装教程:melodic官方下载网址

4. 镜像克隆制作

(1) NX开发板上的TF卡取出并插入读卡器,将读卡器插入Ubuntu 主机。

(2) 在主机上新开一终端,并输入如下指令查看SD卡的分区名。

$ sudo fdisk -u -l

​ 显示如下,我的TF卡分区为/dev/sdd

Disk /dev/sdd: 28.9 GiB, 31016878080 bytes, 60579840 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 13AAACED-7457-41A6-A435-A145FEEE3635

Device      Start      End  Sectors  Size Type
/dev/sdd1  870400 60577791 59707392 28.5G Linux filesystem
/dev/sdd2    2048   133119   131072   64M Linux filesystem
/dev/sdd3  133120   264191   131072   64M Linux filesystem
/dev/sdd4  264192   265087      896  448K Linux filesystem
/dev/sdd5  266240   267135      896  448K Linux filesystem
/dev/sdd6  268288   397311   129024   63M Linux filesystem
/dev/sdd7  397312   398335     1024  512K Linux filesystem
/dev/sdd8  399360   399871      512  256K Linux filesystem
/dev/sdd9  401408   401919      512  256K Linux filesystem
/dev/sdd10 403456   608255   204800  100M Linux filesystem
/dev/sdd11 608256   870399   262144  128M Linux filesystem

Partition table entries are not in disk order.

(3) 重新打开一个终端输入如下指令,这样就会在~/目录下生成镜像文件jetson-xavier-nx.img.gz

$ sudo dd if=/dev/sdd conv=sync,noerror bs=4M | gzip -c > jetson-xavier-nx.img.gz

​ 运行以下指令可以查看克隆进度

$ sudo pkill -USR1 -n -x dd

克隆成功会在~/目录下生成镜像文件

在这里插入图片描述

5. 镜像重烧写

(1) 将需要烧写的TF卡通过读卡器插入Ubuntu 主机,TF卡必须大于32G,并进行格式化

(2) 在主机上新开一终端,并输入如下指令查看SD卡的分区名。

$ sudo fdisk -u -l

​ 显示如下,我的TF卡分区为/dev/sdd

Disk /dev/sdd: 28.9 GiB, 31016878080 bytes, 60579840 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 13AAACED-7457-41A6-A435-A145FEEE3635

Device      Start      End  Sectors  Size Type
/dev/sdd1  870400 60577791 59707392 28.5G Linux filesystem
/dev/sdd2    2048   133119   131072   64M Linux filesystem
/dev/sdd3  133120   264191   131072   64M Linux filesystem
/dev/sdd4  264192   265087      896  448K Linux filesystem
/dev/sdd5  266240   267135      896  448K Linux filesystem
/dev/sdd6  268288   397311   129024   63M Linux filesystem
/dev/sdd7  397312   398335     1024  512K Linux filesystem
/dev/sdd8  399360   399871      512  256K Linux filesystem
/dev/sdd9  401408   401919      512  256K Linux filesystem
/dev/sdd10 403456   608255   204800  100M Linux filesystem
/dev/sdd11 608256   870399   262144  128M Linux filesystem

Partition table entries are not in disk order.

(3) 烧写镜像到TF卡

$ sudo -s
$ gunzip -c jetson-xavier-nx.img.gz | dd of=/dev/sdd bs=4M

同样重新打开一个终端,运行以下指令可以查看烧录进度

$ sudo pkill -USR1 -n -x dd

6. NX调控命令

1.调控NX风扇PWM

$ sudo sh -c 'echo 140 > /sys/devices/pwm-fan/target_pwm'  ##140代表调节PWM(0-255)

2.安装jtop

$ sudo apt-get update
$ sudo apt-get install python-pip
$ sudo apt-get install python3-pip
$ sudo pip3 install jetson-stats
$ sudo jtop   # 启动jtop

在这里插入图片描述

3.安装Visual Studio Code(或者使用脚本install_NX.sh

进入网站:https://packagecloud.io/headmelted/codebuilds

点击Packsges

看右边列出来的包名

后缀带有arm64(aarch64)的,点击包名以查看wget命令

sudo dpkg -i code-oss*.deb

4.wireshark、libpcap、openssl、glog、Tcpdump、git(已经写入到脚本install_NX.sh

5.VNC自启动,自动修改分辨率为1024x768

修改指令如下:

$ xrandr --fb 1024x768

6.在ROS设置别名,导出到bashrc

alias rvizper='路径'

7.NX工作时,设置每天凌晨1点重启,已加入到/etc/crontab中,默认关闭;

$ sudo su
$ gedit /etc/crontab
00 01 * * * /sbin/reboot  #自启动

$ sudo service cron restart

install_NX.sh内容如下所示;

#!/bin/bash

#######################################################################################################
echo -e "\033[32m =====>             Installing Dependancy               <===== \033[0m"

## install basic third-part libraries ##

#install libpcap
sudo apt-get install -y  libpcap-dev

#install openssl
sudo apt-get install -y openssl
sudo apt-get install -y libssl-dev

#install protobuf
sudo apt-get install -y libprotobuf-dev protobuf-compiler

#install wireshark
sudo apt-get install -y wireshark

#install doxygen
sudo apt-get install -y doxygen

#install build essential
sudo apt-get install -y build-essential git cmake dmidecode

#install qt-base
sudo apt-get install -y freeglut3-dev qtbase5-dev libqt5opengl5-dev libglew-dev

#install auto configure tool
sudo apt-get install -y autoconf automake libtool

#install key driver
sudo cp robosense_key/80-hasp.rules /etc/udev/rules.d/

#install Tcpdump and Openssh-server
sudo apt-get install -y tcpdump openssh-server

#install glog
sudo apt-get install -y libgoogle-glog-dev


# install VScode
echo -e "\033[32m =====>             Installing VScode               <===== \033[0m"
wget --content-disposition https://packagecloud.io/headmelted/codebuilds/packages/debian/stretch/code-oss_1.45.0-1586135971_arm64.deb/download.deb
sudo dpkg -i Dependancy/code-oss*.deb

也可以直接通过百度云网盘下载:链接: https://pan.baidu.com/s/1hdoKZRw4dkjH3DMWXlqWHw 密码: ith4
感谢阅读,有什么疑问可以跟我交流

猜你喜欢

转载自blog.csdn.net/m0_54792870/article/details/115009056