カリキュラム・授業計画

本ゼミは、7週間のオンライン事前学習4泊5日の開発合宿で構成されています。単なる技術習得ではなく、各工程において「根拠を持った判断」を行えるエンジニアになるためのステップが設計されています。


カリキュラムの構成方針

  1. 事前学習(Week 1 - 7): 開発に必要な原理(組み込み、センサ、シミュレーション)を理解し、チームとしての開発計画を「根拠を持って」策定・レビューします。

  2. 合宿(Day 1 - 5): 実際に手を動かして開発を推進し、不確実性や未知のエラーに対して仮説検証アプローチを実践します。午前・午後の定期的な進捗報告を通じて、マネジメントの根拠を管理します。


1. 事前学習スケジュール(7週間・オンライン)

事前学習では、個人の技術的基礎固めからチームビルディング、計画策定までを段階的に行います。

Week 1:オリエンテーション

  • 内容:

    • ゼミの全体像と「根拠を持ったエンジニアリング」というテーマの共有。

    • 開発に必要な共通基盤のセットアップ。

  • 宿題:

    • Pico SDK のローカル環境構築。

    • Git/GitHub の環境構築とテストリポジトリへのプッシュ。

Week 2:マイコンの基礎と技術資料の読み方

  • 内容:

    • RP2040(Raspberry Pi Pico)の構造とペリフェラル(GPIO、レジスタ)の仕組み。

    • 最も重要なスキルである**「データシート」および「リファレンスマニュアル」の読み方**の解説。

    • サンプルコードの単なるコピペから脱却し、レジスタレベルでの動作変更方針を理解する。

  • 宿題:

    • 割り当てられたペリフェラル(I2C, SPI, PWM等)についての仕様調査。

    • 利用可能なデバッグツール・手法の調査とまとめ。

Week 3:調査結果発表とセンサプログラム解説

  • 内容:

    • 受講生によるペリフェラル・デバッグツールの調査結果プレゼンテーション。

    • 模擬衛星では使用しないIMU(MPU-6050)などのセンササンプルプログラムの解説。

    • ハードウェア仕様(ピン配置、電圧レベル、レジスタ配置)とソフトウェア実装の関係性を結びつける。

  • 宿題:

    • 解説されたセンサ群を動かすための、サンプルプログラムの作成方法の検討。

Week 4:課題レビュー・テストとシミュレータ導入

  • 内容:

    • Week 3 で検討したサンプルコードのコードレビューおよび実機テスト。

    • SILS(Software-in-the-Loop Simulation)環境の導入と、シミュレータを用いた検証方法の体験。

    • 開発チーム(チーム分け)の発表。

  • 宿題:

    • チームごとにオンライン等で顔合わせを実施し、自己紹介と得意分野の整理を行う。

Week 5:ミッション・ハードウェア解説とマネジメント方針

  • 内容:

    • 模擬衛星(CanSat)の最上位ミッション要求、ハードウェア構造(PCB、リアクションホイール等)の解説。

    • システムエンジニアリング(要求定義、WBS)とマネジメント方針のレクチャー。

  • 宿題:

    • チームごとに、合宿に向けた詳細な「開発計画(WBSおよびマイルストーン)」の策定。

    • 「なぜこのスケジュール・分担なのか」の根拠を説明できるように準備する。

Week 6:開発計画のレビューと開発開始

  • 内容:

    • 各チームが作成した開発計画のプレゼンと、講師による詳細レビュー。

    • 計画の妥当性、リスク管理の根拠を突き詰める。

  • 宿題:

    • レビューを反映して計画を修正し、実際に設計・開発(ソフトウェアコーディング)を開始する。

Week 7:進捗レビューと合宿直前調整

  • 内容:

    • チームごとの進捗状況および直面している技術的課題の共有。

    • 計画のギャップ分析とリカバリープランの策定。

  • 宿題:

    • 合宿初日から本格的な統合テストや実装が進められるよう、個々のモジュールコードの準備・整備を継続する。


2. 合宿スケジュール(4泊5日)

合宿期間中は、限られた時間の中で仮説検証サイクルを回し、ミッション完了に向けてチームで意思決定を行います。

Day 1:開発1日目(キックオフ&実装開始)

  • 内容:

    • 事前学習で準備したコンポーネントを実機(またはシミュレータ)へ組み込む。

    • インターフェース間の疎通確認(IMU ➡ Pico W ➡ Ground Station)。

  • 進捗報告: 午前1回、午後2回の計3回のスタンドアップ・進捗ミーティングを実施。進捗の遅れに対し、計画の更新と根拠ある優先順位変更(割り切り)を行う。

Day 2:開発2日目(個別モジュール統合と仮説検証)

  • 内容:

    • 姿勢推定(光センサ+ジャイロ)と姿勢制御(リアクションホイール)の統合。

    • 制御パラメータ(PID)のチューニングにおいて、実験データと物理モデルを比較しながら根拠のあるゲイン調整を繰り返す。

  • 進捗報告: 定期進捗報告により、チーム内の役割衝突や技術的行き詰まりの早期検出と解消を行う。

Day 3:開発3日目(システム統合・画像ダウンリンク試験)

  • 内容:

    • カメラ撮影および Wi-Fi 経由での画像分割転送(ダウンリンク)機能の統合。

    • 全サブシステム(推定・制御・撮影・通信)を結合した模擬運用試験(リハーサル)。

    • 不具合発生時の仮説検証ログ、デバッグ根拠のドキュメント化。

  • 進捗報告: 翌日の運用に向けた「フライト前チェックリスト」の作成と、運用の可否判定(Go/No-Go判定)の根拠を整理する。

Day 4:運用・ミッション実行と反省会

  • 内容:

    • 実機模擬衛星の放出・吊り下げによる本番フライト運用試験。

    • 地上局に送られてくるリアルタイムテレメトリの監視と、必要に応じたコマンド介入。

    • ミッションデータ(制御精度、画像品質)の回収。

    • ポストモータム(反省会): 設計意図と実際の挙動のギャップを分析し、成果発表スライドを作成。

  • 進捗報告: 運用の結果報告および振り返り。

Day 5:成果発表会とネットワーキング

  • 内容:

    • 成果報告会: 各チームが「どのような根拠に基づいて意思決定をしてきたか」に焦点を当てたスライドプレゼンテーションと、開発したコード・ドキュメントの発表。

    • 修了判定の実施。

    • 企業・投資家とのネットワーキングイベント。