望遠鏡視野の位置座標と制御

2.3 望遠鏡視野の位置座標

2.3.1 子午線基準の座標系について

 観測点の視恒星時を表す座標系は赤道座標系なので、その赤道座標を地球の自転に合わせて見かけ上の定点座標の時角を計算しているにすぎありません。言うまでもなく地球上の定点は便宜上、子午線と赤道となり、天球上の定点は春分点と黄道いうことになる訳です。このとき、星の赤経座標値は天球上の春分点からの時角として表され、赤緯座標値は赤道からの極方向への変位角ということでした。

 赤道儀の制御においては、極軸の回転はいわば自転軸に平行ですから、緯度方向の座標は地球が回転した場合、あるいは望遠鏡の極軸が回転した場合でも変化はありません。

理想的な赤道儀の制御は天体の導入を除けば、追尾そのものは赤経軸の回転のみで行われのですから、

地球を基準としてこの追尾を考えると、恒星時の基準点である子午線を原点に考えなくてはならないことは至極当然のことに思われます。

地方恒星時θはグリニッジにおける恒星時に対して、観測点の経度分の変位として計算できます。

<地方恒星時θ の計算式>

  地方恒星時θ = θg(グリニッジにおける恒星時) + λ(観測点東経の時間算)

 また、天体X(Ra,Dec)の赤経Raは春分点からの時角ですから、地方恒星時と天体Xとの変位をθRa と定義するとこれは観測点の子午線からの変位座標と考えることができます。

この関係は、上図に示されるように、天体X の移動変位として把握できます。

<地方恒星時θ と天体の座標値の関係>

  地方恒星時TLoc =θRa(観測点子午線からの変位時角) + Ra(天体の赤経)---①

 この式から、 天体Xを追尾したときのθRa の値は、

  θRa(観測点子午線からの変位時角)= 地方恒星時TLoc - Ra(天体の赤経)---②

 この値は、天体を望遠鏡の視野に導入したときの望遠鏡視野の初期赤経座標として定義することにします。当然ながら赤緯は天体XのDecの値です。

 以上の地方恒星時TLoc、観測点の子午線からの変位時角 θRa 及び 天体の赤経Raの関係を簡略化した図が以下に示されています。

 θRa(観測点の子午線からの変位時角)は地球の自転と共に増加していくことになりますが、増加分は基本的に地方恒星時におけるものと同じであるはずです。

 ここで、θRa(観測点の子午線からの変位時角)は望遠鏡の視野座標であると定義しましたから、この座標更新をステッピングモータのパルスカウントとリンクして制御し、θRa を更新します。

すると、望遠鏡の視野は特定なパルス出力した後に先ほどθRaを計算した式 ① の関係から、逆に望遠鏡の視野の赤経Ra’を計算することができます。

<天体の追尾における地方恒星時と変位の関係>

 Ra’(望遠鏡視野の赤経)=地方恒星時TLoc - θRa(子午線からの変位時角)---③


 ここで、注意が必要なことは、望遠鏡の追尾が正常に行われていれば、計算された望遠鏡視野の赤経Ra’と天体の赤経Raとは等しくならなければなりません。

 Ra’(望遠鏡視野の赤経) = Ra(追尾天体の赤経) ----正常追尾の時

 更に、この両者が等しくない場合を考えると、この状況は明らかに天体が望遠鏡の視野中心からずれていることを表しており、Ra’(望遠鏡視野の赤経)がRa(追尾天体の赤経)よりも大きい場合には追尾の過剰、小さい場合には追尾遅れであることを示しています。

<天体の追尾における望遠鏡と天体の座標関係>

  Ra’(望遠鏡視野の赤経) > Ra(追尾天体の赤経)---追尾パルスが速い、多い  

  Ra’(望遠鏡視野の赤経) = Ra(追尾天体の赤経)---正常な追尾パルス制御状態 

  Ra’(望遠鏡視野の赤経) < Ra(追尾天体の赤経)---追尾パルスが遅い、少ない  


 これらの関係を上手に扱えば望遠鏡の追尾におけるピリオディクモーションの問題や自動追尾に応用できそうです。

 厳密に言うと、ピリオディクモーションや自動追尾における星像のズレはギアや望遠鏡のハード的な主要因であることが多いので、このようなシステム的なアプローチはそれ程の効果が見込めないのかもしれません。また、マイクロコントローラを作動させるシステムクロック(水晶発振子)の発振精度も大きな問題となることも事実です。しかしながら、割り込みそのものや赤道儀制御システム固有の問題は回避できる可能性は高いのです。

 ここで注目しておきたいことは、Ra’(望遠鏡視野の赤経)がステッピングモータのパルスカウントから計算されていることと、地方時がシステムタイムで計算されていることです。

この2つの値が同じ天体の赤経を表そうとしていることは明確ですが、算出の基本になっている時間の基準が異なるということは制御上特に重要なのことなのです。

また、最終的な両者の間の誤差をより詳細なものとするためには時間の更新単位が同じである方が良いことも事実です。

 この点で、現状のEJAN赤道儀制御システムにおける時間更新基準は若干の問題があります。というのは、地方恒星時の更新に必要な地方時の時間スケールがステッピングモータよりも1桁大きいので、互いの値の精度が若干問題となっているのです。

 

<天体の追尾における地方恒星時と望遠鏡視野の時間単位>

 Ra’(望遠鏡視野の赤経) : ステッピングモータの1パルスカウント当たりの時間

 Tloc(地方恒星時)     :  システムタイムの割り込み時間 現状は1秒間隔


 ステッピングモータのパルス数は稼働する赤道儀によって異なりますから必ずしも一定の値とはなりません。しかし、概ね1秒当たりのパルス回数は2パルス以上であることから、システムタイムの更新はできることならば0.1秒以下であることが望ましいのではないかと思われます。

とはいうものの、現在のEJAN赤道儀制御システムはシステムタイムに8ビットカウンタを使用しており、0.1秒毎の割り込み処理はシステム処理的にやや厳しいと言わなくてはなりません。

要するに割り込みカウンタの処理ロジックを工夫してあまり処理時間のかからないシステムタイム処理にしなければならないと思われます。同時に、システムを構築するハード、特にマイクロコントローラの上位(ATmega128やATmaga256等)を使用して各軸のステッピングモータ処理を個別割り込みに分離して制御させるようにしなければならないとも考えています。

ステッピングモータのバルス間隔は1日当たりの総秒数を総ギア比で割ったものとして計算します。

<天体の追尾におけるステップ割り込みの関係式>

割り込み時間(α)= 一日の総追尾秒数(Ttime)/総減速ギア数(Tgear)

     

 ここで1日当たりの総秒数は、恒星時運転時(SIDEREAL_DAY)は86164.091秒 、太陽時(SOLAR_DAY)は86400.000秒、月時(LUNA_DAY)は89428.330秒として扱われるので同一システムにおいてさえ割り込み時間は運転速度によっても異なることに注意が必要です。

 更に言えば、追尾総時間を総減速ギア比で割るわけですから、この割り込み時間は赤道儀制御システムが稼働するシステムの総減速ギア比によっても異なってくるわけです。

 いずれにしても、追尾秒数はおよそ86400秒ほどなので、総減速ギア比はこの値の2倍以上の値(理想的には10倍以上)となるでしょうから、もしも追尾精度を問題とするならば、システムタイムもこの割り込み時間と同等かそれ以上の時間精度で処理を行う必要があるものと考えます。

 このように、システムクロックによるシステムタイムがたとえ正確だとしても、割り込み時間は厳密には整数になるわけではありませんから、この計算上の誤差はステッピングモータのパルス出力とともに積算されていくことは必然です。つまり、それが新たな追尾誤差として現れることは当然の結果なのですから、本項の追尾処理の方法はあながち無駄な処理とはいえないと考えています。

2.4 モータの角度とステップ数との関係 

 EJAN赤道儀制御システムの赤経と赤緯軸はステッピングモータのパルスの出力数でその角度を得ようとして制御が行われます。このため、赤道儀の軸は総減速ギア比で一回転し、かつ均等で正確なモータの回転となるようにステッピングモータのパルス出力を制御しなければならないわけです。

逆な言い方をすると、ステッピングモータのパルス数から角度換算値をだして正確な回転が行われているかどうかの判断を行っているということですから、内部処理も含めてこれらパルス数と角度変換の関係について考える必要があると思います。

2.4.1  赤経:時角表記の場合 

 赤経軸は座標系の単位を時角、つまり0時~24時の時分秒の秒単位で表すことになっています。

赤経の場合、単位が時刻と同じなので、天体の運行と時刻は非常にイメージしやすいものとなっています。いずれにせよ、このような単位表現は制御プログラムの中では非常に面倒な処理が必要になることがあります。それは、プログラムにおける回転角の計算には角度数又はラジアンなどが基本となっており、特に自動追尾計算で使用する三角関数は概ねラジアンなどの単位をベースに計算ライブラリが提供されているので、赤経の時角は算術的な角度に変換が必要になってくるのです。

 実際の赤経は観測地の子午線を基準点ゼロ(0)として時計と反対周り(南→東→北→西)に時角を天体を追尾する秒単位の角度θRa(観測点の子午線からの変位時角)として座標値を扱うことになっています。太陽時を基準とした場合の座標秒数(SS)は1時間=60分、1分=60秒換算の秒単位で考えることができます。

赤経座標をHH:MM:SS(時:分:秒)とするときの座標秒数(SS)は以下のようになります。

<天体の追尾における座標秒数の変換式>

   座標秒数(ss)= 時(HH)*3600+分(MM)+秒(ss)  

 しかし、天体の追尾では赤経軸が一回転する時間は追尾しようとしている対象天体の種別によっても異なり追尾条件によっても変化することになるので、1日当たりの座標秒数は追尾秒数で考えなくてはならないことから以下の換算値を用いることになるのです。

<天体の追尾における座標秒数と天体追尾秒数の関係>

  座標秒数(ss)= 一日あたりの天体追尾秒数(実数値) 

  1日あたりの天体の追尾秒数:

            平均太陽時間(実数):  86400.000

               恒星時 (実数):  86164.091

              キングスレート実数):  86138.241

               月時  (実数):  89428.330

 この1日あたりの天体の追尾秒数というのは、やはり地球を基準とした場合の見掛けの秒数なので、赤道儀による天体の追尾では無視をすることができない値です。

 ここで、ステッピングモータのパルスカウントを”DrivingCount”として表すと、赤道儀を制御するための関係式は以下のように定義されます。 

<天体の追尾での座標秒数とステッピングモータのパルスカウントとの関係式>

    DriveCount =赤経軸の座標秒数//Ttime*Tgear (秒単位の経過)

    DriveCount    : ステッピングモータのパルスカウント

    赤経軸の座標秒数: 赤経軸の角度を秒数換算したときの値

       Tgear: 総減速ギア数(モータのステップ、ギア比等の総減速比)

      Ttime   : 座標を一周するときの総秒数

       システム内で秒数の単位系(整数/実数)を統一して使用する

       平均太陽時間(整数):  86400  =24*60*60

       平均太陽時間(実数):  86400.000

          恒星時 (実数):  86164.091

      キングスレート(実数):  86138.241

          月時  (実数):  89428.330

 出力したパルスの数”DrivingCount”は赤経軸の回転として現れるのですが、前記座標の値を基準にその制御に必要な関係を表すと前記式のようになるのです。

則ち、1日当たりの座標秒数(Ttime)は、追尾しようとする天体によって異なり、恒星時運転時(SIDEREAL_DAY)では86164.091秒 、太陽時(SOLAR_DAY)では86400.000秒、月時(LUNA_DAY)では89428.330秒として扱われることに注意が必要なのです。

要するに、星の運行は平均太陽時よりも少ない時間で一周するし、月や彗星などもまた異なった時間で運行するのですから、追尾対象によってこれらの値を随時変更しなければならないのです。

 この意味合いは、一回転(1日)当たりのステッピングモータの総パルスカウントに対する総経過時間の値(Ttime)が変化するということを表しているのです。

 以上からステッピングモータのパルス間隔は以下の式のように1日当たりの総秒数(Ttime)を総ギア比(Tgear)で割ったものとして計算することができます。

<天体の追尾におけるステッピングモータのパルス割り込み時間計算式>

   α = 一日あたりの総秒数(Ttime)/総減速ギア(Tgear)

    =割り込み時間


 このパルス間隔は既に承知のように1日当たりの総秒数(Ttime)が対象天体により異なることから一定の値ではありません。違った言い方をすると天体が運行する一周当たりの時間が分かればどのような天体の追尾でも可能であるということになります。

ステッピングモータのパルス出力はマイクロコントローラの割り込みにより、システムクロックを与えている発振子によってカウントされた所定の時間毎に通常の処理に割り込むように形で行われるので、非常に正確な時間間隔で実行することができます。

 もしも、このパルス処理を割り込みで行わないとしたら、様々なプログラム処理的困難に遭遇することになります。それは、第1に正確にパルスを出力できないこと、第2にパルス間隔を得るために時間を浪費し、メイン処理時間が減少しシステム性能の低下に陥ることになってしまうのです。

ステッピングモータのパルスの処理間隔時間は1日当たりの総秒数を総ギア比で割ったものとて計算することができ、これをパルス処理の割り込み時間(間隔)とすることで決まります。

この割り込み時間が分かっていれば、逆にステッピングモータのバルスカウント(DriveCount)から回転座標(角)も以下のように計算できることになります。

<赤経軸の回転角とパルス割り込み時間とパルスカウントの関係式>

  赤経軸 座標(回転秒数)=Ttimt/Tgear*DriveCount

              = α * DriveCount 


さらに任意な赤経軸の座縹秒数は以下のように考えることもできます。

<赤経軸の回転角の座標秒数をパルスカウントから求めるための式>

  赤経軸 座標秒数=DriveCount*Ttime/Tgear

    Tgear : 総減速ギア比

DrivingCount  : 総減速ギア比で一周すると仮定したときの座標カウント

    Ttime : 座標を一周するときの総秒数   

        システム内で秒数の単位系(整数/実数)を統一して使用すること

        平均太陽時間(整数):  86400=24*60*60

        平均太陽時間(実数):  86400.000

        キングスレート実数):  86138.241

           恒星時 (実数):  86164.091

           月時  (実数):  89428.330


 赤経の計算処理は赤緯と同単位の度数で行っても良いのですが、時角から度数への変換計算が必要になってきます。

時角は、度数とよく似た表記になってはいますが、全く異なる単位系です。時角はその名の通り1日の時刻を基準としたもので、24時間表記で表され、1時間は度数の15°、1分は度数の15分、1秒は度数の15秒ということになります。

天体の赤経表記座標系はこの時角表記です。この時角表記は、天体の位置と時刻を知る上では非常に有効な表記方法なのですが、コンピュータの処理においてはあまり有用な方法ではないのです。

コンピュータ処理における表記は360°の度数表記が用いられます。これは数学的な表記なのですが、天体の位置計算には三角関数が多用されますが、これらの関数の単位系はこの度数表記なのです。

これらのデータ変換については、赤道座標系の項でも示されています。

2.4.2  赤緯:度数表記の場合 

 赤緯軸は座標系の単位を度数、即ち0゜~360゜で考えます。

しかし、赤緯軸には赤道面を基準に北極方向に0゜~90゜とし、南極方向に0゜~-90゜として変則的に座標値を扱うことになります。

 赤緯座標を90度 表記の場合、DD:MM:SS(度:分:秒)又は360度 表記の場合には、DDD:MM:SS(度:分:秒)とするときの座標秒数(SS)は以下のようになります。

<赤緯軸の回転角の座標秒数の計算式>

  座標度数(SS)= 度*3600 + 分(MM+ 秒(SS)  


以下のギア比との関係への考え方は赤経と同じです。

<赤緯軸の回転角の座標秒数とパルスカウントの関係式>

  β = 一周の総秒数(Tdeg)/総減速ギア数(Tgear)= 基本ステップ数 

  赤緯軸 回転角度= Tdeg /Tgear * DriveCount

          = β * DriveCount

 DriveCount=赤緯軸 座標秒数 / Tdeg * Tgear(秒単位の経過)

 赤緯軸 座標秒数 = DriveCount / Tgear * Tdeg

  DrivingCount : 総減速ギア比で一周すると仮定したときの座標カウント

     Tdeg : 座標を一周するときの総角度数 

         システム内で角度の単位系(整数/実数)を統一して使用すること

        総角度を整数で扱うとき:1296000=360*60*60

        総角度を実数で扱うとき:360.0

    Tgear : 総減速ギア比

もちろん、このβは角度換算の度数ですが、注意すべきことは座標の取り方が北極方向に+90゜で、南極方向に-90゜であることから、360゜換算値をこれら極方向値に変換しなくてはならないことはいうまでもありません。

 詳しくは<赤緯軸の座標変換とモータカウント DriveCount>の説明をしているのでそちらを参照してください。

unicofejan's Ownd

Arduino搭載小型ボードを用いた器機の制作しています。手作りできるようなキットと製品を提供します。 天体の導入・追尾を簡単にする望遠鏡制御gotoシステム ”EJAN”の開発してます。 また、フリーの星図システムを提供し、”EJAN”と連携して使いやすく、安価なGOTOシステムを目指します。 Arduino,ARM,AVRなどの組み込みシステムの設計法と作成方法を記述します。

0コメント

  • 1000 / 1000