| Up | バッファメモリ | 作成: 2026-09-11 更新: 2026-10-13 |
┌───────────────────┐ │ ┌→ 歩行脳NN ────┐ │ │ │ 目標電流値│ │ │←───────────┤ │ │ ┌──┼─┬────┐ │ │ │視覚 移動覚 接地覚 │ │ │ NN NN NN │ │ │ ↑ ↑ ↑ │ │ └─┼────┼────┼─────┼─┘ │ │ │ ↓ ドライバ ドライバ ドライバ ドライバ ↑ ↑ ↑ ↓ カメラ IMU 接地 モータ センサ ここで,上の枠は 「中枢神経系」。 しかしこの接続には,問題がある。 モジュールごとに処理速度が違うという問題である: NN: 50〜200Hz モータ制御: 1kHz(1ms周期) IMU: 200〜1000Hz カメラ: 30〜60Hz この問題を解決する方法は,バッファメモリである: バッファメモリからデータを読む バッファメモリにデータを書く しかし,バッファメモリだけでは解決できない問題がある。 それは,つぎの問題: 「それぞれが自分のタイミングで」 が実現されない 「リアルタイム性」 の問題は, MCU の導入 がソルーションになる。 そこで 「それぞれが自分のタイミングで」 の方だが,本探求は 「ストア」 の導入 を,ソルーションとする。 モジュールにはストアがあてがわれ,データの流れはストア間の流れになる。 結論から言う,これは最終的につぎの形になる: ┌─────────────────────┐ │ 歩行脳NN │ │ ┌→ ストア ─────┐ │ │ │ 目標電流値│ │ │←───────────┤ │ │ ┌──┼─┬────┐ │ │ │視覚NN 移動覚NN 接地覚NN │ │ │ ストア ストア ストア │ │ │ ↑ ↑ ↑ │ │ │ カメラ │ │ │ │ │ ストア │ │ │ │ │ ↑ │ │ │ │ └──┼────┼────┼─────┼──┘ │ │I2C │ ↓I2C │ ┌─┼────┼─┐ ┌─┼─┐ │ │ │ │ │ │ ↓ │ │ │IMU 接地セ│ │モータ│ │ │ストア ストア│ │ストア│ │ │ ↑ ↑ │ │ │ │ │ └─┼────┼─┘ └─┼─┘ │ │ │ ↓ カメラ IMU 接地セ モータ ここで,3つの枠は,上が SBC,下の2つが MCU。 「接地セ」 は,「接地センサ」 の略記。 「モータ」 は,モータドライバIC + モータ。 以下,これの実現を, ハードウェア > ソフトウェア プログラミング の3章を以て,論じていく。。 |