人工衛星の軌道計算方法

2021/03/25

人工衛星

 人工衛星を追跡するためには,軌道を求めて,それに合わせて望遠鏡を動かす必要があります.人工衛星の軌道を求めることは自分でやるのはとてつもなく大変ですが,ありがたいことにアルゴリズムとそのプログラムライブラリが公開されています.


人工衛星の軌道はTLE(Two-Line Elements Sets)という形式のデータで表されていて,最新のデータがCelestrakのページからダウンロードできます.人工衛星は軌道修正を頻繁に行うので,新しい(数日以内)のデータを得る必要があります.


TLEデータから,衛星の実際の軌道を求めるには,SGP(Simplified General Perturbations)というモデルを使うそうです.これは,Fundamentals of Astrodynamics and Applicationsという本で紹介されていて,アルゴリズムを実現するプログラムもそこで提供されています.軌道を決定するルーチンは sgp4 と呼ばれていて,内容が論文で紹介されています.これをちゃんと理解すれば一番良いのでしょうけど,大変なので,既にできているライブラリを使わせてもらいます.


ネットを探すとsgp4単体のライブラリもいろいろあるのですが,私はとりあえず,sgp4を含んでいて天文学計算全般に使えるPythonの Skyfield というパッケージを使うことにしました.使い方を紹介しているサイトがここここにあります.


Pythonのプログラムで,観測したい人工衛星の軌道を予め計算してCSVファイルとして吐き出し,それを人工衛星追跡プログラムで読み込むことにしました.