.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 イメージのダウンロードと書き込みツール
- NX 開発キット イメージ ( SD カード イメージ) ダウンロード リンク: NX 開発キット ネイティブ イメージ
クリックしてダウンロードすると、Nvidia アカウントにログインする必要があります。ダウンロードするためにアカウントを登録する必要がない場合は、外部ネットワークを使用してダウンロードすることをお勧めします。
ファイルサイズは約6.6Gで、ダウンロードしたBaiduクラウドリンク(パスワードは2021)https://pan.baidu.com/s/19iEFdJonS6cnY99ZF6UbvAが添付されています。
- NX プログラミング ツールのダウンロード リンク: NX プログラミング ツール
リンクを開くと、マシンのシステムが直接自動的に識別されます。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
読んでいただきありがとうございます。ご質問がある場合は、ご連絡ください。