本記事は以下の魔法の杖制作を少ない部材で要素技術部分ごとに解説します。
https://elchika.com/article/3e0ab04e-85bb-466b-86e5-c8a1b16c5984/
準備物
部品 | 個数 | URL |
---|---|---|
SPRESENSEメインボード | 1 | https://ssci.to/3900 |
SPRESENSE拡張ボード | 1 | https://ssci.to/3901 |
SPRESENSE6軸加速度・ジャイロセンサアドオンボード | 1 | https://ssci.to/9870 |
マイクロSDカード | 1 | https://amzn.asia/d/hBE4j0H |
SPRESENSEとパソコンを接続するためのUSBマイクロbケーブルが別途必要です。
接続
- SPRESENSE メインボードと6軸加速度・ジャイロセンサアドオンボードを組み付ける(詳細)
- SPRESENSE メインボードと拡張ボードを組み付ける(詳細)
メインボードと拡張ボードの嵌合が不完全だとSDカードが読み込めないなどの現象が発生します。しっかりと組み付けたことを確認してください。
開発環境を準備する
以下のセットアップ記事を参考にArduino開発環境を準備する
https://developer.sony.com/spresense/development-guides/arduino_set_up_ja.html
ソフトを書き込む
以下のソフトを書き込む
https://github.com/fooping-tech/Spresense_6dof_add_on/tree/main/example/Spresense_magic_wand
ソフトのダウンロードはリポジトリのトップページで
code > Download Zip でダウンロードできる
必要なライブラリをインストールする
Arduino Libraryに「Madgwick」をインストールします。
SDカードにmodelを書き込む
- SDカードをSPRESENSE拡張ボードに差し込む
- SPRESENSE拡張ボードのUSBコネクタとパソコンを接続する
- example/Spresense_magic_wand/modelに入っているmodel.nnbをSDカードに書き込む
プログラムを実行する
- SPRESENSEメインボードにUSBを接続しパソコンと接続する
- USBコネクタを支点に円を描く、8の字を描く、横方向に振るとLEDが推論結果を示す
- Arduinoのシリアルモニタにrを書き込むとリセットされる。
- Arduinoのシリアルモニタにpを書き込むと杖軌跡が0,1で表示される。(1が杖通過した軌跡)
Arduinoシリアルモニタからのコマンド入力判定プログラム(該当部位のみ抜粋)
void Serial_main(){
if (Serial.available() > 0) { // シリアルバッファにデータがあるか確認
char receivedChar = Serial.read(); // 1バイト読み取り
if (receivedChar == 's') { // もし受信したデータが's'なら
SaveCSV();
Serial.println("Done!");
}
if (receivedChar == 'l') { // もし受信したデータが'l'ならラベル+1
label++;
if(label>5)label=0;
Serial.print("label=");
Serial.println(label);
}
if (receivedChar == 'p') { // もし受信したデータが'p'なら
canvas4->PrintSerial28();
}
if (receivedChar == 'r') { // もし受信したデータが'r'なら
ResetCanvas();
}
}
}
データセットの作成、学習モデルの作成はこちらの記事
投稿者の人気記事
-
Fooping
さんが
2024/09/13
に
編集
をしました。
(メッセージ: 初版)
-
Fooping
さんが
2024/09/13
に
編集
をしました。
-
Fooping
さんが
2024/09/13
に
編集
をしました。
-
Fooping
さんが
2024/09/13
に
編集
をしました。
-
Fooping
さんが
2024/09/26
に
編集
をしました。
ログインしてコメントを投稿する