AIスタックチャン アールティ版のセットアップ方法
スタックチャン及びアールティ版とは?
かわいいロボットです。M5Stackというマイコンで動きます。オープンソースハードウェアなので、ハードもソフトも個人で自由にカスタムできます。ChatGPT対応したソフトとかもあります。コミュニティもあったりします。
色々なキットがあるのですが、満を持して(?)公式版とも言えるアールティさん版が販売されました(作者のししかわさんは、アールティさんで働くエンジニア)。
詳しくは以下記事参照ください。
アールティキットの内容は以下のような感じです。
基板の顔がかわいい
スタックチャンセットアップ
公式READMEは以下です。
ただ、アールティ版の詳細マニュアルはまだないようです(現状β版)。
そういった状況や、組み立てするのにコミュニティーで聞いてワイワイすることを楽しめる人向けですね。それも含めて楽しむのが、スタックチャンの価値かなと思います。
この記事では、公式版ともいえるししかわさん版のソフトでなく、robo8080さんが作成したAIスタックチャンを動かす方法を紹介しますので、その点はご了承ください。
robo8080さんのリポジトリ
なので、OpenAI APIのKEYが必要となりますのでご了承ください。
M5Stack単体セットアップ・動作確認
まずはM5Stack単体の動作確認をしておきましょう。M5Stackには、M5Stack Basic、M5Stack Core2、M5Stack CoreS3があります。ソフトによって対応していなかったり対応していたりするので注意しましょう(最初ハマりました)。
特にM5Stack Basicの初期バージョンはメモリが少なく動かないので、最新のバージョンのM5Stack Basicを購入するようにしましょう(ハマりました)。
M5Stack Basicの初期バージョン以外は、どれも対応しているソフトはあるので、ソフトを選べばどれでも大丈夫です。これから買う人は、どれがオススメかというと…正直分からないです。全部買っておきましょう(笑)
見分け方は以下です。
引用元:M5 Stack Basic(Swich Science)
引用元:M5Stack Core2(Swich Science)
引用元:M5Stack CoreS3(Swich Science)
ソフトウェアのセットアップは、手軽なM5Burnerと開発者向けのVS Code + Platform IOを使う方法があります。ここでは、まず手軽なM5Burnerを使った方法を紹介します。
開発者向けは後で説明をしますが、最初にM5Burnerを使った方法で書き込んだ方法を試しておくと動作確認になるのでよいです。
M5Burnerは以下からダウンロードできます。
M5 Burnerについて使い方等より詳しく知りたい人は、以下記事を参照ください。
Macの場合「マルウェアかもしれない」と警告でたら、設定のプライバシーとセキュリティのセキュリティから開きます。また、m5burner.app
はアプリケーションフォルダに置いておきましょう。
M5StackとPCをUSB-Cケーブルで繋いでM5 Burnerを起動しましょう。
M5Burnerで以下のように「AIスタックチャン」で検索しましょう(スタックチャンは半角カナなので注意)。
あとは書き込むだけです。
SDカード準備
AIスタックチャンのREADMEを読んで、M5Stack用のマイクロSDカードの準備をして、M5StackにマイクロSDカードを入れておきましょう。
動作確認
電源を入れて以下のように動けばOKです。
なお、少し反応が鈍いですが、ハードウェア組み立てされていないのが原因(と思います)ですので、気にしなくて大丈夫です。
ハードウェア組み立て
参考にしたのは、以下ページです。アールティ版は、サーボモーターのファームの書き込みや設定は全て実施済みなのでやる必要はないです。ラクラクですね。
追記:コミュニティで動画を教えてもらいました。以下も分かりやすいので参考にしてみましょう!
以下、自分のメモ用に、組み立ての写真メモしておきます。不明点あれば、コミュニティのDiscordで聴くのがよいです。
READMEに書いてありますが、ID1のサーボモータが足側で、ID2が顔側です。
- ID1: 足側(左右回転、パン軸)
- ID2: 顔側(上下回転、チルト軸)
1と書いてあるサーボをブラケットにまずとりつけます
2と書いてあるサーボをブラケットにとりつけます
ポイントはコードがブラケットの穴から出るような向きにするところです。こうなっていればOK
サーボ+ブラケットをケースに取り付けます
足をつけます
ここで、サーボモータを固定する2本の長いネジをドライバーで締めましょう。
バッテリーケースにバッテリーを入れて、バッテリーケースを取り付けます。
サーボモーターとバッテリーのコードを以下のように接続します。サーボモータのケーブルはどちらに刺してもOKです(デイジーチェーンで接続されていて、IDで識別するため)。
基板をとりつけて、4本の短いネジで固定します。
動作確認済みのM5Stackを取り付けます
基板の左上にあるスイッチを上にするとスイッチオンです(起動しなかったら、M5Stackの赤いボタンも押しましょう)。
以下のようにメッセージが一瞬出て…
起動しました!
動いている様子です。
開発者向けのセットアップ情報
事前セットアップ
事前にこちらで環境構築と動作確認をしておきましょう。
VS Codeの設定は以下です。
使用するリポジトリは以下です。
以下コマンドでcloneしてVS Codeエディタで開きます。
$ git clone https://github.com/robo8080/AI_StackChan2
$ cd AI_StackChan2/M5Unified_AI_StackChan
$ code .
追記:アールティ(RT)版が出ていました。RT版の場合は、以下でcloneしてVS Codeエディタで開きましょう。
$ git clone https://github.com/robo8080/AI_StackChan2_RT
$ cd AI_StackChan2_RT/M5Unified_AI_StackChan_RT
$ code .
M5Stackへの書き込み
最初に、VS CodeでPlatformIOを開きます。今回はM5Stack Core2を使う場合はm5stack-core2のGeneral→Uploadをクリックして、プログラムのビルドとM5Stackへのアップロードを行います。
ここで、PlatformIOのデフォルトのデバイスポートが、M5Stackのものと違ったのでplatformio.ini
にupload_port = /dev/cu.usbserial-xxxx
と追記しました。
環境[env:m5stack-core2]
と[env:esp32-s3-devkitc-1]
の2種類あるのに注意しましょう。私は気づかず、単純に最後の行に追記していて設定が反映されず少しハマりました。
注:AI_StackChan2_RT
の場合は[env:m5stack-core2]
と[env:m5stack-core-esp32]
があり、M5Stack Basicの場合は[env:m5stack-core-esp32]
を選びましょう。
正しく動作したら、以下のように書き込めます。
ただ、起動しても、何故か黒画。わからないので、Monitorをクリックします。Monitorを使うときはupload_port = /dev/cu.usbserial-xxxx
に加えてmonitor_port = /dev/cu.usbserial-xxxx
も追記します(最初に、両方書いておいて方が良いですね)。
Monitorをクリックして、M5Stackを起動すると、起動のログがモニタリングできます。
動いてはいるようですが、SDカードが読めていないというエラーが出ているようです。
SDカードを書き直してもダメでした。そもそも、黒画になるので何かおかしい気が…
Core2でないとダメというオチでした。全然M5シリーズ分かってなかった…
M5Stack CoreS3で試したら問題なく起動しました。
追記:アールティ(RT)版は、現状Basic/Core2のみに対応しているようです。 Basicに対応したアールティ(RT)版を試したら問題なく動きました!
TIPS
スタックチャンCONNECT
スマートフォンアプリがあるので、便利です。
メモリ不足で動かない
M5Stackが初期バージョンで動かないときのログ。悲しみ。
rst:0xc (SW_CPU_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:1184
load:0x40078000,len:13132
load:0x40080400,len:3036
entry 0x400805e4
E (727) spi_flash: Detected size(4096k) smaller than the size in the binary image header(16384k). Probe failed.
ROS版スタックチャン
まだ試せてないですが、ROS実装もあります。
まとめ
スタックチャンはかわいい!!
ロボットに興味ある人、LLM(ChatGPT)に興味ある人、研究者、個人、ガチ勢、みんな買うといいと思います!
参考リンク
関連記事
変更履歴
- 2023/08/05 アールティ(RT)版を試した結果を追記
- 2023/08/04 組み立て動画へのリンク追記
- 2023/08/01 アールティ版に関して追記
Discussion