「だれでも分かるマイコン入門」自動導入の実際
エリダヌスバブルの撮影ですっかり、間が開いてしまいました。自動導入の話を続けましょう。前回までに、LX200コマンドの説明が終わりました。ただLX200コマンドを理解しただけでは、まだ自動導入はできません。
実際にプログラムを作るとなると、難しい問題に直面します。たとえば、赤経座標で10°西に移動させることを考えましょう。
この場合、モーターを10°回せば良いだろうと考えると不十分です。日周運動のため、モーターが10°動いている間に、座標自体が西に回転してしまいます。
この問題を最もすっきり解決させる方法は速度の加算を使う方法です。たとえば導入速度を100倍とします。モーターを10°回転せるにはモーターを24秒間回せば良いのですが、24秒の日周運動分を加算しなければなりません。
そこで、実際には100倍ではなく101倍で回転させるのです。そうすると、日周運動の分も考慮されることになります。
この様子を図示すると以下のようになります。東に回転の場合は、もう説明するまでもないですね。
また、導入速度はいきなり100倍にするのではなく加速度的に速度を増していくと思います。このような場合でも常に+1した速度にしていけば問題ありません。
さて、これですべて解決というわけにはいきません。まだまだ考慮しなければならないことがあります。
ひとつは、回転を途中でキャンセルされた場合です。この場合でもキャンセルした位置の座標ををプログラムでしっかり把握しておかなければなりません。また、ホストからは常に現在の座標を返すようにコマンドが送られてきます。
したがって、プログラムは常にいま赤道儀が向いている方向の座標を計算し続けなればなりません。
具体的に言うと、先のグラフで、青い部分の面積が、座標上の位置の変化になります。(赤い部分を入れてはいけません)。つまりプログラムで一定間隔ごとに(たとえば10m秒ごと)青い部分の面積を計算していく必要があります。
正直、プログラミングの経験が少ない人の場合、上記プログラムを実装するのは難しいでしょう。しかし、モーターコントローラICの中には、座標の管理を自動でやってくれるものもあり、そのようなものを利用すれば、初心者でも簡単に実装することができます。
さて、実践編では上記のようなICを使って、実際にプログラムを組んでみましょう。お楽しみに。
| 固定リンク
コメント