NVIDIA Jetson Xavier NX ブラシ マシン + ROS インストール + ディープラーニング構成

.NVIDIA Jetson Xavier NX の完全な命令フロー

V1.0.0 – Holden 著

日付:2021-03-19

1. Jetson Xavier NX の概要

NVIDIA® Jetson Xavier™ NX は、スモール フォーム ファクター システム オン モジュール (SOM) により、スーパーコンピューターのパフォーマンスをエッジにもたらします。最大 21 TOPS の高速化されたコンピューティング能力により、最新のニューラル ネットワークを並列実行し、完全な AI システムの要件である複数の高解像度センサーからのデータを処理します。
ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

詳細については、公式 Web サイトをご確認ください: https://www.nvidia.cn/autonomous-machines/embedded-systems/jetson-xavier-nx/

2. Jetson Xavier NX フラッシュの紹介

質問を開く

2.1 ツールの準備

  • Jetson Xavier NX にはハードディスクが内蔵されていないため、ハードディスクとして TF カードをインストールする必要があります。64G TF カードを購入することをお勧めします。32G も使用できますが、フラッシュ完了後の残り容量は比較的少ないです
  • PCとTFカードを書き込むためのカードリーダーを準備します。
  • Ubuntu システムを搭載した PC を準備します; Windows システムも使用できますが、この記事では Windows のプロセスは紹介しません。

2.2 イメージのダウンロードと書き込みツール

クリックしてダウンロードすると、Nvidia アカウントにログインする必要があります。ダウンロードするためにアカウントを登録する必要がない場合は、外部ネットワークを使用してダウンロードすることをお勧めします。

ファイルサイズは約6.6Gで、ダウンロードしたBaiduクラウドリンク(パスワードは2021https://pan.baidu.com/s/19iEFdJonS6cnY99ZF6UbvAが添付されています。

ここに画像の説明を挿入

リンクを開くと、マシンのシステムが直接自動的に識別されます。Linux64 ビット ソフトウェアをダウンロードしましたが、この Web サイトのダウンロードには時間がかかる可能性があります。ダウンロードした Baidu クラウドのリンクを添付します (パスワードは2021 ) https://pan.baidu.com/s/1gKL2bjE0QulkE99ZY-u4mQ

使用するときに直接実行できます

$ ./balenaEtcher-1.5.116-x64.AppImage

2.3 ネイティブイメージをTFカードに書き込む

1. Flash フォーム ファイルをクリックして、ダウンロードした SD カード イメージ圧縮パッケージを選択します

ここに画像の説明を挿入

2. TF カードをカード リーダーに挿入し、ホスト コンピュータの USB ポートに挿入し、ターゲットの選択をクリックして書き込む TF カードを選択し (TF カードを自動的に認識するものもあります)、フラッシュをクリックします。

ここに画像の説明を挿入
ここに画像の説明を挿入

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(メロディック)のインストール

公式 ROS インストール チュートリアルを参照してください: Melodic 公式ダウンロード Web サイト

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 が動作している場合、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

Baidu クラウド ネットワーク ディスクから直接ダウンロードすることもできます:リンク: https://pan.baidu.com/s/1hdoKZRw4dkjH3DMWXlqWHwパスワード: ith4
読んでいただきありがとうございます。ご質問がある場合は、ご連絡ください。

おすすめ

転載: blog.csdn.net/m0_54792870/article/details/115009056