科学・技術
Artemis IIミッションの可視化
Visualizing the Artemis II Mission (foxglove.dev)
要約
Foxgloveチームのメンバーが、Artemis IIミッションの宇宙船内外で撮影された多数の写真を可視化するプロジェクトを紹介しています。JPL Horizons APIから軌道データを、Hank Green氏のArtemis-Timelineプロジェクトから写真メタデータを取得し、Pythonスクリプトで処理後、FoxgloveのMCAPファイルに統合しました。これにより、宇宙船の軌道を3Dで追跡し、写真やミッションの状態をタイムラインと同期させて表示するインタラクティブな可視化を実現しました。
全文翻訳
2026年4月、4人の宇宙飛行士が50年以上ぶりに月を周回しました。科学コミュニケーターでYouTuberのHank Green氏は、ミッション中および宇宙船の周りで撮影された数多くの写真を可視化するための素晴らしいウェブサイトを構築しました。私はHank氏のプロジェクト(彼のほとんどのプロジェクトとコンテンツにそうであるように)に触発され、Foxgloveチームに加わったばかりの私は、ツールを学び、同じデータセットを新しい方法で探求する絶好の機会だと考えました。Foxgloveはロボット工学のために構築されており、自律システムの開発とデバッグに使用されるセンサーデータを整理・可視化します。同じツールはロボット以外にも広く適用でき、実際に構築するのが楽しい環境です。私は3Dパネルを使用して、慣性空間におけるOrionの実際の軌跡をプロットできることを知っていました。これは回転、ズーム、リアルタイムでの追跡が可能で、別のタブでは写真とミッションの状態をタイムライン上のどこにいても同期させることができました。
データの取得
パイプラインは2つのソースから始まりました。Orionの軌道は、乗組員宇宙船を含む太陽系天体の正確な軌道暦データを提供するJPL Horizons APIから取得しました。写真とそのメタデータは、Hank氏のArtemis-Timelineプロジェクトから取得しました。このプロジェクトでは、単一のphotos.jsファイルにすべてがキャプチャされています。タイムスタンプ、カメラタイプ、キャプション、撮影者、および各ショットのフル解像度JPEGへのリンクが含まれています。残りはいくつかのPythonスクリプトが処理します。1つは軌道をフェッチし、1つは元の数メガバイトのRAWエクスポートから管理しやすい約1280pxに写真をダウンロード・リサイズし、3つ目はすべてを単一の同期されたタイムラインに統合してMCAPファイルとして書き出します。後から考えるとシンプルですが、タイムスタンプをきれいに揃えるのに数回の試行が必要でした。
3Dシーンの構築
必要なデータがすべて揃ったので、次のステップは軌道を追跡するための3Dシーンを構築することでした。初期の頃、私は原始的なURDFを試しました。ボックスと円筒で宇宙船を大まかに表現しました。うまくいきましたが、Orionのように感じられませんでした。その後、GitHubでIan Dees氏のartemis-viewerを見つけました。これはNASAのライブArtemisトラッカーと同じNASAのAROW Orionモデルを使用しており、太陽電池アレイが実際に太陽電池アレイのように見えます。私はそれをMCAPに接続し、Ian氏の調整されたパネル展開ポーズを再利用したので、アレイは船体に折りたたまれた状態ではなく、軌道上構成で配置されています。
レイアウト: clutterを減らし、visualsを増やす
最初はすべてが1つの画面にありました。3Dビュー、プロット、タイムライン、写真、ログ。情報は豊富でしたが、ごちゃごちゃしていました。私は軌道ビューと画像を強調したかったのです。そこで、レイアウトをタブパネルに分割し、2つのタブを作成しました。1つはデータと写真に焦点を当て、もう1つは3Dパネルと写真に焦点を当てました。数字が必要なときは距離プロットやミッション状態を掘り下げ、単に写真を横目にOrionが宇宙を移動するのを見たいときはビジュアルタブに切り替えることができます。
ビジュアルタブ
データタブ
拡張機能の力
Foxgloveには強力な組み込みパネルスイートが付属していますが、拡張機能システムは興味深いものです。拡張機能を使用すると、レイアウトに直接プラグインできるカスタムパネルを作成でき、他のすべてのものと同じタイムラインを共有できます。このプロジェクトでは、それはフォトステッパーパネルを意味しました。ショットを1つずつ前後に移動したり、カメラでフィルタリングしたり、スライドショーを実行したりできます。ミッションは10日間で約500枚の写真に及びますので、専用のコントロールがあるとアルバムのナビゲーションが実際に楽しくなります。最も良い点は、新しい写真にステップすると、レイアウト全体がそれに合わせて移動することです。3Dビュー、距離プロット、マイルストーンインジケーターはすべて、ミッションのその瞬間に自動的にスナップします。すべてのパネルで共有される単一のタイムライン。フォトステッパーは、出発点として機能する例が必要な場合、プロジェクトの他の部分とともにGitHubにあります。
仕上げ
終盤に、ランダム化された星空とテクスチャ加工された地球と月のモデルを追加しました。ミッションのスケールでは、シーンはまばらに感じられることがあります。星と惑星のテクスチャは、軌道と写真の邪魔をせずに深みを与えます。
クレジット
軌道: JPL Horizons / NASA
写真とタイムラインデータ: Hank Green氏のArtemis-Timeline
Orionモデルと太陽電池パネルのポーズ: Ian Dees氏のartemis-viewer(NASAのAROWモデル)
可視化: Foxglove
試してみてください!
完全なプロジェクト:ビルドスクリプト、URDFモデル、ビルド済みの.mcap、Foxgloveレイアウト、およびフォトステッパー拡張機能はGitHubにあります。Python 3.10+、Foxgloveのインストール、および初期ビルドに約10〜30分が必要です(写真のダウンロードが大部分を占めます)。READMEにステップバイステップの説明があります。これを使用して何かを構築したり、別のミッションに適合させたりした場合は、ぜひお知らせください。この投稿を共有してください。