2012年8月27日月曜日

遠征

おととい土曜日の夜に、豊田市の元気村へε160をもって出かけました。初めてのε160の出番です。GPVでは日が変わる頃まで雲が少し残る予報でしたが、23:00あたりから雲がなくなり元気村にしては素晴らしい星空が堪能できました。西は豊田・名古屋の光害でダメですが、東及び北ならば何とかなります。

初めてですので、メジャーな天体を狙いました。M31とM45です。このε160にはフォーカスの微動装置がついていないため、フォーカス調整がしんどいです。やむなくライブビューのある、無改造40Dを使用しました。今回は「見える」天体ですので導入支援装置も必要ありません。設営に1時間、とりあえず撮ってみたM31とM45です。

2012/08/26 EM200B赤道儀
ε160+Canon40D無改造 ISO800
300sec 12枚


2012/08/26 EM200B赤道儀
ε160+Canon40D無改造 ISO800
300sec 10枚 + 450sec 3枚

まず、オートガイドがうまく行っていません。RAがずれていってます。原因がよくわかりません。ガイド鏡をガイドマウントに載せていますが、剛性が足らないのかもしれません。ガイドカメラにQcam4000を使っていますが、ノイジーなのも良くなさそうです。
次に、フォーカスが甘かったです。特にM31。更に、よく見ると光軸もズレているように思います。反射望遠鏡は初めてなのでどう判断して良いのかよくわかりませんが・・・。
更に、気温が高かった(外気温20度ぐらい)せいもあって、画像自体にノイズがたくさん載っています。これに関しては今の機材では仕方ないですが、なんとか解決したいです。

今回は、元気村にいらしていた方々に色々お世話になりました。次から次へと色々な天体を見せていただいたり、機材のことを色々お話させていただいたり・・・。夜なのでお顔まではわかりませんが、皆さんありがとうございました。

2012年8月18日土曜日

EM200B 導入支援装置自作(6) -Arduinoと周辺回路-

ArduinoにLCDを取り付けてRAとDECを表示させようと思います。2つのReference Starでキャリブレーションした後は電源が入っていればRAとDECを表示し続けて欲しいため、RTCを搭載する必要があります。RTCは秋月で入手できるものもありますが、電源が落ちたら時刻を忘れてしまうためバッテリーとDS1307を搭載したもの共立エレショップで選択しました。バッテリー保持による時刻の精度はそれほど高くないようですが、まぁ念のためというところでしょうか。

マトモな回路図を書こうとしたのですが、面倒だったのとドロー系ソフトを持っていないこともあり、GoogleDriveをつかって図形描画したものを以下に載せておきます。








あとはReference Starを使ったキャリブレーションと、LCDへの表示、RTCからの時刻差分を考慮した座標変換あたりのソフトを組み込むことで使えるようになると思います。それはTaki's Home PageEquations for Pointing Telescopeが参考になりそうです。

2012年8月4日土曜日

EM200B 導入支援装置自作(5) -Arduinoプログラミング-

先日Arduinoを購入したのには、プログラミングがしやすそうなことと、もう既にArduinoをつかって導入支援装置を作っている方がおり、そのプログラムが公開されているからです。
Arduinoのプログラムはsetup()とloop()がエントリーポイントとして用意されており、setup()で初期化、loop()でループ処理を書けばOKです。しかし、ロータリーエンコーダの変化の取得は当然ながら割り込みで処理すべきであり、公開されている方のソースもそのように書かれています。

まずはこのプログラムを利用させてもらい、エンコーダのパルスを拾ってみます。
// DSC01
#include 
#include 

const int    RA_enc_A  = 6;     // digital pin 6 = PD6
const int    RA_enc_B  = 7;     // digital pin 7 = PD7
const int    DEC_enc_A = 9;     // digital pin 9 = PB1
const int    DEC_enc_B = 10;    // digital pin 10 = PB2
const double RA_RES    = 500 * 2 * 44.0 / 11.0; // RA  500P/R * 4(A/B相) * (大プーリ歯数) / (小プーリ歯数)
const double DEC_RES   = 500 * 2 * 40.0 / 11.0; // DEC 500P/R * 4(A/B相) * (大プーリ歯数) / (小プーリ歯数)
long         DEC_pos   = DEC_RES/2; // initial position of encoders(DEC)
long         RA_pos    = RA_RES/2; // initial position of encoders(RA)

void setup()
{
  Serial.begin(9600);
  // initialize the encoder inputs
  pinMode(DEC_enc_A, INPUT);
  pinMode(DEC_enc_B, INPUT);
  pinMode(RA_enc_A , INPUT);
  pinMode(RA_enc_B , INPUT);

  // Pin change interrupt control register - enables interrupt vectors
  //  Bit 2 = enable PC vector 2 (PCINT23..16)
  //  Bit 1 = enable PC vector 1 (PCINT14..8)
  //  Bit 0 = enable PC vector 0 (PCINT7..0)
  PCICR |= (1 << PCIE2);
  PCICR |= (1 << PCIE0);

  // Pin change mask registers decide which pins are enabled as triggers
  PCMSK2 |= (1 << PCINT23);  // arduino pin 7 = PD7 = RA  encoder A
  PCMSK0 |= (1 << PCINT1);   // arduino pin 9 = PB1 = DEC encoder A 

  // enable interrupts
  interrupts();
}

void loop()
{
  delay(500);
  Serial.print(RA_pos, DEC) ; Serial.print(" "); Serial.println(DEC_pos, DEC);
}

ISR(PCINT2_vect){ 
  if (digitalRead(RA_enc_A) == digitalRead(RA_enc_B)) {
    --RA_pos;
    if (RA_pos < 0) {
      RA_pos = RA_RES - 1;
    }
  }
  else {
    ++RA_pos;
    if (RA_pos >= RA_RES) {
      RA_pos = 0;
    }
  } 
}

ISR(PCINT0_vect){
  if (digitalRead(DEC_enc_A) == digitalRead(DEC_enc_B))
  {
    ++DEC_pos;
    if (DEC_pos >= DEC_RES) {
      DEC_pos = 0;
    }
  }
  else
  {
    --DEC_pos;
    if (DEC_pos < 0) {
      DEC_pos = DEC_RES - 1;
    }
}

これで、500ms間隔にSerialPortに対してRA/DECのパルスカウントを表示するはずです。

おっと、このプログラムを走らせるために組んだ回路を公開するのを忘れていました。また次回にでも回路を公開します。

最終的には、Stellariumのプラグインまで作成しし、Stellarium上に現在望遠鏡が向いている方向のレチクル表示が出来ればいいのですが、結構面倒です。一旦キャリブレーションさえ出来れば、あとは単体だけでRA/DECの表示が出来ればそれでも十分なので、座標表示のためのLCDと時刻取得のためにRTCを搭載する予定です。

2012年8月2日木曜日

ε160

2年ほど憧れては諦めて・・・を繰り返していたε160をついに購入するチャンスに恵まれて、買ってしまいました。実は購入したのは2週間ほど前。憧れの黄色い鏡筒です。



うーん、早くこれで撮影してみたい。でも光軸調整とか出来るんだろうか?
光軸調整用アイピースとか、コリメーターとかいずれ用意しなくては・・・。

この鏡筒を載せるためのプレート、これも友人が作ってくれました。アルミプレート(A5052)なんて、100x100mmで500円から600円程度。200x200mmでもせいぜい2000円ぐらい。これに穴を開けたり、タップでネジを切ったりするだけなのに、マッチプレートとか購入すると1万円オーバー・・・。鏡筒バンドの上にも小さいプレートを作ってもらい、上下のプレートあわせて2000円程度でした。

正直使いこなせるのか心配です。

EM200B 導入支援装置自作(4) -ロータリエンコーダの取り付け-

中耳炎にかかったりしてしまい、ちょっと倒れてました・・・。
この間に、友人に頼んでミスミからタイミングプーリーとタイミングベルトを入手しました。ミスミには色々と使えそうなものがあるのですが、個人購入できません。そこで、会社経由で何とかしようとしたのですが、経理やら承認やら面倒なのでメカ屋の友人に相談したところ、「現金で買えるから頼んでやるよ」とのこと。その部品がやっと入手できたわけです。
タイミングプーリーをEM200BのRA軸とDEC軸に取り付けるのですが、どちらもΦ44でプーリーにイモネジを打てるようにM3のタップを切ってあります。EM200Bの赤経ブロックの径やDEC側の径を考慮して、プーリーは以下のものを選定しました。
  • タイミングプーリー大(RA) ATP44XL025-A-H44
  • タイミングプーリー小(RA) ATP11XL025-A-H7
  • タイミングプーリー大(DEC) ATP40XL025-A-H44
  • タイミングプーリー小(DEC) ATP11XL025-A-H7
  • タイミングベルト(RA) TUN114XL025
  • タイミングベルト(DEC) TUN108XL025
これらと先日組立たロータリーエンコーダブロックをEM200Bに取り付けます。まずはRA側。

つづいてDEC側。

プーリーの軸間距離が微妙なので、スペーサーを入れたりして距離を調整しています。遊びがあると当然ながら精度に影響しますので。

この次は、Arduinoによるエンコーダパルスの取得と、座標計算プログラムです。