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

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

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

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

2.4.1 赤経:時角表記の場

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

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

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

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

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

 座標秒数(SS)=時(HH)+分(MM)+秒(SS)

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

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

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

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

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

        恒星時 (実数):  86164.091

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

        月時  (実数):  89428.330

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

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

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

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

    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)から回転座標(角)も以下のように計算できることになります。

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

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

                = α  * DriveCount

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

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

  赤経軸の回転角の座標秒数=DriveCount/Tgear*Ttime

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

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

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

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

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

       恒星時 (実数):  86164.091

     月時  (実数):  89428.330

        Tgear : 総減速ギア比

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

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

時角は、度数とよく似た表記になってはいますが、全く異なる単位系です。時角はその名の通り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)の計算式>

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

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

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

  β =一周の角度秒数(Tdeg)/ 総ギア数(Tgear)

   =基本ステップ数   

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

          = β * DrivingCount 

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

   赤緯軸の座標秒数=DrivingCount /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