BLOG

【第2回】ハードウェア構成の選定

2026.08.05 / Uncategorized

全体構成

森野詩葉の「頭脳」と「身体」は、以下の3つのコンピュータで役割分担しています。

パーツ役割
Raspberry Pi 5音声認識(STT)・対話生成(LLM)・音声合成(TTS)
Arduino Mega2560 + Prototype Shieldサーボ制御、ステータス音声、BLE通信、電源監視
Raspberry Pi 3家庭内IoTハブ(Tailscale経由でのリモートアクセス)

なぜ役割分担が必要なのか

音声認識やAIとの対話処理は計算負荷が高く、リアルタイム性も求められます。一方でサーボ制御や電源監視といった処理は、素早く安定した応答が必要です。

これらを1台のコンピュータで担わせると、負荷が集中したときに動作が不安定になるリスクがあります。そこで、「考える処理」と「動かす処理」を別の基板に分離する構成を採用しました。

マイク・スピーカーまわりのこだわり

耳の位置には、SPH0645というMEMSマイクを左右に配置しています。ステレオのI2Sバスを共有しつつ、SEL(セレクト)ピンで左右を切り替える方式です。これにより、将来的に音源の方向を推定する機能も実装できる設計にしています。

ステータス音声(起動音や状態通知)には、ATP3011F4-PUというAquesTalk系のチップを採用しました。可愛らしい女性キャラクターの声質にフィットする点を重視しています。

電源・拡張性への配慮

Arduino Mega2560には、AquesTalk Proto Shield(音声合成拡張ボード)を4線式のI2C接続で組み込んでいます。基板そのものは分解せず、既存の機能を活かしたまま拡張する方針を取りました。

今後の音声処理について

現在はローカルLLM(Ollama/Qwen2.5:3b)で対話処理を行っていますが、将来的にはClaude APIへの切り替えも検討しています。この切り替えは、配信での対話の質を大きく左右する重要な判断になるため、別の回で詳しく取り上げる予定です。

次回は、Blenderを用いた物理設計(外装デザイン)についてお伝えします。

← 【第1回】プロジェクト始動:なぜAIアンドロイドを作るのか
【第3回】物理設計:Blenderでの外装デザイン →