今日のお買い物
- ホールIC(ホールラッチ) UH266G SIP−4: センサ一般 秋月電子通商-電子部品・ネット通販
- ホールIC(ホールラッチ) US1881LUA: センサ一般 秋月電子通商-電子部品・ネット通販
- ホールIC UH277G SIP−4: センサ一般 秋月電子通商-電子部品・ネット通販
- Seeed Studio 106990004 ワイヤレス充電モジュール 入力12V
- ネオジム磁石 丸型 φ5×1.5mm
- ネオジム磁石 丸型 φ10×1mm
- タミヤ 70121 プーリーユニットセット
NeoPixel とは Adafruit の製品群の名前らしい。
ありがたいことに、これを制御するライブラリが公開されている。
STM32CubeIDE
STM32 の開発環境として今までは Software Workbench を使っていた。が、STMicro が今年の4月に STMCubeIDE という環境をリリースしていることを今日知った。
有料版の TrueSTUDIO をベースに STM32CubeMX をマージしたようなものらしい。
早速試してみた。Qiitaに関連記事があり、とても助かった。
STM32のタイマとDMAを組み合わせてLチカする - Qiita
STM32CubeIDE · kzono/nucleo-STM32F401RE Wiki · GitHub
DMAとタイマの組み合わせをマスターすると、波形データを出力することができる。
もう少し検証が必要。オシロスコープで出力波形を確認する必要がある。
その後、kirakira.bit の仕様を調べて、周波数を確認する。その上で、データを出力し、LEDを点灯させられるかを試す。
RISC-V
SwitchScience と秋月で安価な RISC-V のボードを見つけた。
Sipeed MAix Bit Suit (液晶・カメラ付): カメラ 秋月電子通商-電子部品・ネット通販
どちらもカメラ・LCD・マイクなどがついていて、かなりお得感がある。
M5StickVを Makers Faire Tokyo 2019 で買おうとしたが、速攻で売り切れていた。未だに在庫切れ。一方、秋月の方は在庫がありそう。
どちらも maixpy という python でプログラミングできるらしい。ちゃんと見ていないが、ペリフェラルを使うパイソンライブラリが用意されている模様。
しかし、割り込みは使えなさそう。シリアル通信(UART/SPI/I2C)やタイマ(PWM)などは、割り込みを使って効率的に動かしたい。
一方、カメラを使った画像認識はすでにライブラリが用意されて簡単にできそう。
素晴らしい!
CPUはRISCVということなので、ネイティブコードのコンパイルもできるのではないか?
【Jetson nano】darknet + YOLOv3
JetsonNanoで YOLOv3 が無事に動いた(^^)/~
YOLOの実行結果が画像出力なので、VNC を使ってメインPCのディスプレイにYOLOの結果を表示させた。
基本的には、
【物体検出】vol.2 :YOLOv3をNVIDIA Jetson Nanoで動かす|機械学習・AI|Nakasha for the Future|ナカシャクリエイテブ株式会社
を参考にして、作業した。やっていないことは
-
オーバークロック設定とSwapファイル作成
-
USBカメラを接続して動作確認
など。今後試してみたい。
また、Ultra96で YOLOを実行(CPUのみ)はできているので、FPGAのロジック部分PLを使って実行させ、その上でJetson Nano と比較してみたい。
【Jetson nano】始めました
先日のMaker Faire Tokyo 2019 で NVIDIA Jetson Nano を買ったので、そのセットアップをしているところ。github の Wiki に記録している。
jetson_Nano · kzono/machineLearning Wiki · GitHub
今回ハマったのは以下の2点。
- SDカードへのイメージファイルの書き込み
- USB-WiFIネットワークアダプタ
SDカードへのイメージファイルの書き込み
基本的には下記の記事にしたがって作業した。
SDカードの容量は32GB以上が推奨らしい。丁度秋月で 128GB なSDXCカードを売っているのに気がついたところだった。秋月でも Jetson Nano を売り始めていたので、それ用のものかもしれない。秋月で買ってきた。
microSDXCカード EVO Plus UHS−I U3 128GB: 雑貨 秋月電子通商-電子部品・ネット通販
Jetson Nano Developer Kit: マイコン関連 秋月電子通商-電子部品・ネット通販
SDカードにイメージファイルを書き込むやり方をググると、大抵の記事には「SDカードをFAT32でフォーマットすること」と書いてある。一方、SDHCのファイルフォーマットはFAT32がデフォルトだが、SDXCのファイルフォーマットは exFAT がデフォルト。試しに Ubuntu18.04LTS にそのまま接続したところ、マウントできなかった。
これが苦労の始まり。「SDXC のSDカードをFAT32でフォーマットするにはどうすればよいか?」という方向で、調査&試行錯誤してしまった。fdisk でパーティション情報をいじったり、mkfs.vfat コマンドで FAT32 フォーマットでフォーマットしてみたり。その結果、本来128GB の容量が 1.2MB しか認識しなくなってしまった。orz.
exFAT は Windows 系のファイルシステムだから、Windows で SDカードをフォーマットすればリセットできるか?とWindows 10 上で SD Card Formatter を使ってフォーマットしたりした。しかし、1.2MBしか認識できない状況は解決しなかった。
いろいろ調べているうちに、Ubuntu にツールをインストールすれば exFAT を読み書きできることがわかった。あとは、書き込みツール etcher が exFAT に対応しているかどうかが心配だった。実際にやってみると(これが書き込みとVerify にかなり時間がかかる、なんせ128GBだから)問題なく Jetson Nano が起動し、 ssh でログインすることができた。
USB-WiFIネットワークアダプタ
アキバのヨドバシでググって、Jetson Nano 用で動作した実績があることを確認できたので、archer T2U nano を購入した。が、記事によるとデフォルトでは対応しておらず、デバイスドライバをソースコードからビルドする必要があるようだ。
現在、その作業中。
【Haskell】Either の入れ子
Eitherを返すような関数を入れ子で呼ぶようなサンプルコードを書こうとしたが、
書き方がわからなかった。。。orz
今日(2019/07/25)の進捗
PC上で YOLO
自宅の開発用PCで、YOLO を動かしてみた。
Ultra96 用 PYNQ
Ultra96 用PYNQ のSDカードイメージは、下記にある。
PYNQ v2.4 SD Card Image built with PetaLinux 2018.3 BSP
http://zedboard.org/support/design/24166/156
これをダウンロードして、SDカードに書き込む。