製作・実験中の小さい赤道儀は、AstroEQ+EQMODでのフィールドテストを経て、うまく動くことが確認された。が、前にも述べたように、
・星図ソフト連携して使用することを前提にしているようで、赤径赤緯を指定して
GOTOできない
・任意の位置でのSYNCができない
・電源ONの時のHOMEポジションが北極星をなっている
などの自動観測をしようとする私にとっては、非常に使いにくい面がある。これらのこともASCOMインターフェイスを利用してアプリやPARK機能をうまく使うことで解決できるとは思うが。
なので、これよりは使いやすそうな、OnStep で PINアサインを変更して、AstroEQ基板で動かしてみることにする。基板の回路図を参照しながら、いくつかのファイルを変更する。
Pins.h ファイルでのPIN MAP変更の主なところは、
・Motor Driverの DIR/STEPなどのPINをAstroEQ基板にあわせる
・Motor DriverのFAULTなどのPIN設定やReticle LEDなど、使用していない
PINの設定をコメントアウトする。
Config.sys ファイルで
・#define StepsPerDegreeAxis1
#define StepsPerDegreeAxis2
を変更
これには、計算用のEXCELファイルがあり、Step数、ギア比などを入力すれば、求められる。
・ステップレートを1/32に設定する
// micro-stepping modes: 5=32x, 4=16x, 3=8x, 2=4x, 1=2x, 0=1x
#define AXIS1_MODE 5
#define AXIS2_MODE 5
AstroEQ基板では、Motor Driver をリセットする RST0、RST1がそれぞれ、A1,A0に接続されている。アナログ入力ポートでデジタル出力に設定して、起動時にリセットパルスを出すようにする。Initialize ルーチンで実行しても良いと思うが、メインルーチンのSetup()の中で以下のように実行するようにした。
pinMode(A0,OUTPUT); //A0 /RST1
pinMode(A1,OUTPUT); //A1 /RST0
digitalWrite(A0,LOW);
digitalWrite(A1,LOW);
delay(10);
digitalWrite(A0,HIGH);
digitalWrite(A1,HIGH);
OnStep は、Arduino MEGA2560、Teensy で動作するように作られており、ソースコードを見ると、条件コンパイルの山である。なので、非常に分かりにくいものとなっている。実際には、すこしずつ変更してコンパイルしてエラーがでないことや、それぞれのPINの信号出力を確認しながら進めなければならなかった。
例によって、シンプルな LX200 CONTROL を使って動作を確認する。
室内での動作確認、GOTO、SYNCなど問題なし。
例によって、フィールドテストの「 天候+体調 」待ち。
あと、OnStep でも初期位置が北極星となっているので、南中・赤道になるように変更したいのだが、どこを修正すればよいのか見つけきれていない。