先日の人工知能AIイベントで紹介されていた「ジェットソンなの?」をとりあえず購入してみました。よくわからないので、とりあえず購入やセットアップ等をまとめておきます。
ジェットソンナノとは?
ゲームのグラフィックボードでおなじみエヌビディアが出した製品です。
一言で言えば「エヌビディアのチップを搭載したラズパイ」のようです。
ラズパイの場合、手軽さ・安さが優先されているので演算速度などでハイスペックは不要です。しかし画像認識・機械学習などで演算速度が必要となると性能の遅さは否めません。
この「ジェットソンなの?」なら、チップはエヌビディアの高速GPUですから速度性能が期待できるというわけです。
更にラズパイのようにUSBやHDMI出力などがあらかじめついているため、導入後の利用も簡単となっています。
セミナーによれば、ジェットソンナノを搭載したロボットカーレースやドローン大会なども開かれたりしているそうです。
購入するには?必要な附随品は?
先日のセミナーで紹介されていたのでとりあえず購入してみました。
セミナーではスイッチサイエンスのほうが紹介されていたのですが、在庫切れのようなのでアマゾンにスイッチしてみました。
1000円ほど違います。
必需品
ジェットソンナノはUSB、HDMI出力、GPIO、カメラ用コネクタなどがついています。
しかし以下のものは必須のようです。
マイクロUSB対応の電源ケーブル
マイクロUSBから電源供給するためのケーブルとコンセントが必要です。
こちらは以前ラズパイ用に購入したもので代替えします。
マイクロSDカード
ラズパイのようにマイクロSDカードからのブートとなるため、必要となります。
今回はサンディスクのものにしてみました。
マイクロSDカードリーダ
マイクロSDカードへ起動ディスクを作成するため、マイクロSDカードをパソコンに接続できるリーダが必要です。
HDMIモニタ
HDMI接続のあるモニタです。
ただし後述のように解像度があわないと出ないので注意しましょう。
USBマウス、キーボード
USBにさして使うマウスやキーボードもあったほうがよいでしょう。
オプション
ケース・ファン
長時間利用するとなると、ファンでGPUを冷却したほうがいいと思います。
今回はケースでファンもついているというものを選んでみました。
有線LAN、無線LAN
ジェットソンナノには無線LANがないようなので、有線LANを差し込みます。
もしくは無線LAN端末をUSBから差し込で使えるようにします。公式では以下が紹介されています。
タイマー
作業を続けさせて指定時間には電源をオフにしたい場合にはタイマー付きコンセントが便利です。
セットアップ
ディスクイメージを作成する
エヌビディアサイトよりディスクのイメージデータをダウンロードします。
サイズは5GBです。
https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#write-windows
ウィンドウズでは、メモリーカードフォーマットソフトを利用します。
以下でAcceptを選べばダウンロードできます。
SD Memory Card Formatter for Windows Download - SD Association
インストール後起動したらクイックフォーマットします。
Etcherをダウンロードします。
起動後、エヌビディアからダウンロードしてあるイメージファイルを指定し、「FLASH」を実行します。
時間がかかるためコーヒーブレーク。
終わればこれでマイクロSDカードが起動ディスクとして動作するはずです。
ジェットソンナノの台を作る
パッケージはそのまま簡易の置台になります。
ケースを購入する方法もあります。
詳細は以下参照ください。
ジェットソンナノにSDカードやケーブルをさす
SDカードを差し込みます。
どこに入れるかわかりにくかったですが、USB端子などのある反対側のほうで、黒い放熱板?の下にある基盤に挿し口があります。赤色のがマイクロSDカードです。
次にディスプレイをHDMIで接続します。
更にUSBにマウスやキーボードを接続します。
電源を差し込めば、緑のランプがつき、さらにディスプレイのほうにはエヌビディアのマークが出てきます。
しかしその後NoSignalとしてディスプレイには何も表示されずでした。
マイクロSDカードのディスクイメージがいまいちなのでしょうか。
セットアップ
今度はディスプレイをかえたら無事先に進みました。
アクセプトをチェックしてコンティニューします。
日本語があったのでセレクト。
キーボード。日本語があったので日本語。
タイムゾーンは最初から日本エリアなのでそのまま進めます。
名前やパスワード、オートログインの有無を設定。
これでちょっと待つと...
やっとデスクトップ画面となりました。めでたしめでたし。
ターミナルアプリを使う
「terminal」で検索するとターミナルアプリがあります。
よく使うのでドックに収納しておくと使いやすいです。
同じコマンドを入れる
何度も同じコマンドを入れるのは大変です。
カーソルキーの↑で入れれました。
アプリのインストール
「sudo apt update」でアプリパッケージを更新します。
「sudo apt install ほにゃらら」でほにゃららをインストールします。
最初は慣れないので「須藤さん、アプリをインストール、ほにゃらら」と覚えましょう。
ファイルを削除する
「rm」で削除します。
アプリがうまくインストールできない場合、「$ sudo rm /var/lib/dpkg/lock」のように一度ディレクトリを削除しておくとインストールができた場合があります。
参考:[Ubuntu][apt] /var/lib/apt/lists/lockが不正な状態になった場合の対応メモ - Qiita
ネット状況、IP
「ifconfig」で調べられます。
空き容量を調べる
インストールエラーなどでは、空き容量をチェックしたい場合があります。
そんなときは「df」で調べられます。
見やすいようにするには「df -h」とするといいです。
終了する
終了するには「shutdown」というアプリがあるのでそれを実行します。
参考:Getting Started With Jetson Nano Developer Kit | NVIDIA Developer
無線LANをつなぐには?
本体には無線LANは内蔵されておらず、イーサネット挿し口がついているため有線LANでの利用がしやすいです。
WiFiで接続したい場合には別途WiFiにつなぐUSB端子を用意しておく必要があります。
以下サイトを見ると、接続時にさらに簡単なセットアップが必要のようでした。
「Jetson Nano」に5GHz WiFi USBアダプタ「GW-450D2」を繋いでみたよ!(検証用まな板のSTLデータ公開有り) | きっと何かに役立つでしょ!?
【JetCardを使えば一瞬】NVIDIA Jetson Nanoセットアップ [2019年7月版] - Qiita
しかしうちが今回適当に選んで購入した無線LAN用USBでしたが、接続して起動後はすぐに利用可能なWiFiが右上のネット用アイコンメニューに表示されました。
あとは選んでパスワードを入れて無事接続。
特に事前の設定やドライバインストールなどは不要でした。
この辺でトラブって調べる時間がかかる...ということがなかったのは幸いです。
価格も1000円以下のやつです。
OSはUbuntuです。
ターミナルはインストールされているアプリから「Terminal」で探せます。
アプリのインストールなど、ジェットソンナノやUbuntoを利用するにはターミナルは欠かせません。
VNCで遠隔操作する
特にインストールしなくても、「デスクトップシェアリング」や「Remmina Remote Desktop Client」といったアプリがすでに入っていました。
「デスクトップシェアリング」でVNC経由で見れそるかなと思ったのですが、今のところうまくいっていません。
そもそも立ち上げても何も出てきません。裏で走るアプリなのかもしれません。
「Remmina Remote」というアプリを試してみたら、オプションでVNCでの接続を設定できる箇所がありました。
ただ、VNCサーバとして起動させるというよりは、他のVNCサーバを指定してアクセスできる...というもののようです。
VNCでウィンドウズから見るには?
VNCを使って、ウィンドウズからジェットソンナノの画面を呼び出すには、ジェットソン側にVNCサーバを動かす必要があります。
まず、ターミナルで「ifconfig」でIPを見つけてメモっておきます。
このIPへ、ウィンドウ上のVNCビューワを使ってアクセスし、ジェットソン側の画面を取得します。
Vino
ジェットソンナノ自体にVNCサーバを入れるにはVinoというのをインストールします。
インストールはターミナルから「$ sudo apt install vino」を実行します。
参考:開発メモ その162 Ubuntu 18.04でVINOをコマンドラインから有効化する – A certain engineer "COMPLEX"
インストール後は「$ nmcli connection show」のようにしてネットワーク一覧を取得。
次に「$ dconf write /org/gnome/settings-daemon/plugins/sharing/vino-server/enabled-connections "['ba688a1f-889f-30a0-b947-ed395181dc52']"」「
$ dconf read /org/gnome/settings-daemon/plugins/sharing/vino-server/enabled-connections
['ba688a1f-889f-30a0-b947-ed395181dc52']」のように利用するネットワークの番号を指定します。
参考:JETSON NANO開発者キットにVNC接続するには vino版
ただしdconf writeがうちではエラーとなり結局今のところインストールできていません。
tigervnc
次に試したのがtigervncというやつです。
こちらのサイトを参考にインストールしました。
Jetson Nanoにリモートデスクトップ(VNC)環境を用意する - Qiita
sudo apt update
sudo apt install tigervnc-common tigervnc-standalone-server tigervnc-scraping-server
vncpasswd# Would you like to enter a view-only password (y/n)? と聞かれるが、nでよい。
x0vncserver -display :0 -passwordfile ~/.vnc/passwd
vncpasswdのところでは任意の6桁以上の数値を指定して、確認用もいれて2ど入力します。
これでインストールおよびサーバを起動します。
次にウィンドウズのほうからVNCサーバでアクセスすると、無事見れました。
ジェットソンナノ セットアップの不具合
電力
電源ランプがつかないなどの場合、ACアダプタを確認。
デフォルト設定ではmicroUSBで5V/2A(10W)となっており、さらに安定的に供給する場合にはACアダプタのほうがいいかもしれません。
No Signal?
うちで最初のトラブルがこれ。
起動後はNo Signalとなり、エヌビディアのロゴは出るもののその後はなにも出ませんでした。
でググってみると、どうやらディスプレイサイズが合わないと出ないようです。
ラズパイ用に買った小さいモニター(3.5インチ、480x320)では出ませんでした。
別のモニタにしたら大丈夫でした。
インストールできない?
こちらのサイトによればSDカードの仕様なども選んだほうがいいようです。