🙆‍♀️

ISS放出超小型衛星の軌道計算のおはなし

2024/12/06に公開

はじめに

本記事は、Supabase LW13 Tokyo Meetupで紹介した内容を再編したものです
結構長いので、2部構成で今回は軌道計算のお話を先にします

千葉工業大学 高度技術者育成プログラム Gardensのご紹介

千葉工業大学 高度技術者育成プログラム、通称Gardensは、超小型衛星を作成しているチームです
特徴は希望さえすればどの学科からでも参加できること!

大学の衛星設計というと、特定の学科の、特定の研究室に進学して行う場合が多いかと思いますが、Gardensはそういった縛りなく、学内の異色の人材が集まっています

ゆえに、全員が全員衛星のシステムの専門家ではないですし、Webプログラマ、電気屋、無線オタク、材料屋、などなど、自らの得意分野で分担しています

来年度、弊学にも「宇宙半導体工学科」が新設されますが、その学科でなくとも参加できますので、衛星開発に興味のある高校生の方はぜひとも千葉工業大学をご検討ください

みなさんのスキルがきっと役立つと思います

https://www.perc.it-chiba.ac.jp/projects/cubesat/

対象

  • 世の中の超小型衛星スケジューリング担当者
  • 軌道計算に興味がある高校生(とか)

衛星の軌道計算

軌道計算って複雑なの?シンプルなの?という話題からいきましょう
結論からいうと、超小型衛星程度であれば比較的シンプルです
ただしそれは、先人たちの苦労のおかげです

みなさん、衛星の軌道計算、と聞くとどのようなイメージをお持ちですか?

私は、映画「オデッセイ」(原題:THE MERTIAN)の印象が強かったので、
物理数学つよつよエンジニアが、スパコンを使って計算するようなイメージでした

作中では、NASA宇宙力学科のパーネルが、スパコンを使って火星への軌道を計算するシーンがあります

火星ミッションともなると、考慮するべき事項も多くこういった描写もあながち間違っていないのかもしれません

https://www.youtube.com/watch?v=3nb1nw8kCj4

逆にシンプルに思えてくる例を出すと、名作、映画「アポロ13号」、手動で窓から見える地球を目印にロケットエンジンを噴射して軌道を変える、なんてシーンがあります(実話です)
実際宇宙船に搭載されているIMUは、搭乗している飛行士が時々手作業で星を観測して修正していたそうですし、今でこそマジで??って思う方法でも恐ろしいことに人類は月に降りています

スパコンいるん??となりますね

(アポロ計画の軌道制御のために開発された拡張カルマンフィルタという理論は、いまでは学生がロボコンで使うくらい有名な理論になっています。先人は偉大です)

https://www.youtube.com/watch?v=8EL1aZGgrMM

要は全ては積分:軌道伝播法

スパコンだのなんだのと書きましたが、
衛星の軌道計算は、要は全ては積分です
これは行くのが火星だろうが月だろうが地球周回軌道だろうが同じかと思います

衛星の位置を計算するには、まず何かしらの方法で時間tにおいて、ある運動をしている衛星の位置を知り、その情報をもとに、\Delta t秒後の位置を連続的に計算していきます
このように、ある時刻の位置・速度から別の時刻の位置・速度を計算することを軌道伝播法を解くといいます(脳筋ですね)

結局のところ地球周回軌道は、物体が落ち続けても地上にすぐ落ちないくらいの速度で投射した問題と同じことなので、高校の物体の斜方投射と同じような発想なわけですね

Gardens衛星の軌道

さて、ここからは千葉工業大学が打ち上げているような、地球低軌道の衛星について考えましょう

Gardensの衛星は、ISS(国際宇宙ステーション)のきぼう実験棟の外につけたJ-SSODとよばれる放出機構から、外にバネの圧力で放出します
軌道の名前は、その名の通り、地球低軌道(LEO)です

https://humans-in-space.jaxa.jp/biz-lab/experiment/ef/jssod/

ゆえに、放出直後がいちばん速度が速く、その後だんだん大気の抵抗で減速して、数ヶ月で地球に落下します

放出したあと、衛星にコマンドをアップリンクしたり、データをダウンリンクしたりするには(= 運用)、千葉工業大学 津田沼キャンパスにある、UHF帯の無線アンテナを用います

現状コマンド送信に使える無線の基地局はここしかないので(衛星とセットで、申請する必要があり、どこからでもアップリンクしていいわけではありません)

電波は、地面の中だと著しく減衰するので、衛星を運用できるのは、千葉工業大学のアンテナ位置から、衛星が水平線よりも高い位置にあるときのみ

すなわち、千葉工業大学からおよそ半径2000kmの内側に衛星が位置しているときだけです

衛星を運用するには、いつ、どの方向でこの範囲を通過するのかを計算しなければなりません

※この軌道可視化ソフトはCesiumで自作しています

TLE(2行軌道要素)

軌道伝播法の説明で、ある時刻の位置・速度から別の時刻の位置・速度を計算すると書きましたが、大学レベルで宇宙空間にある100mm四方のものの現在位置を測定するのはかなり困難です

ということで、一般に公開されているTLE(2行軌道要素)という形式のデータを使って計算します

https://celestrak.org/
というサイトから取得可能です

TLEは、衛星の軌道の変化に合わせて、再度測定されて、1日おきくらいに新しいものに変わります

ここには、衛星の現在の軌道を表す情報がはいっており、この情報と、求めたい衛星の位置の時間を使って、衛星の位置を求めることができます

地球低軌道における軌道計算

TLEを取得して、さてどう衛星の軌道を計算するかというと

近地球域の衛星の軌道計算では、軌道伝播法を解く方法としてSGP4という有名な手法があります

中身は、ゴリゴリのパラメータ計算なので、手実装するのはあまりおすすめできません
いろんなプログラミング言語で、有志の方がライブラリを公開してくださっていますので、そちらを利用して解いてみて、興味があったら後から自分で実装してみるとよいでしょう

https://ja.wikipedia.org/wiki/SGP4

先ほど図で示した軌道計算ツールでは、node.js用のsatellite-jsというライブラリを使っています

コードや詳しいやり方は次の記事で...

https://github.com/shashwatak/satellite-js

おわりに

いかがでしたでしょうか
衛星を少しでも身近に感じていただければ嬉しいです

じきにYOMOGIが放出されますので、みなさんもTLEからYOMOGIの位置を計算して、YOMOGIの電波受信にトライしてみてください(受信だけならどこでも誰でもトライできます)

Discussion