SSブログ

夏休みの工作その4 ソフトウェアをつくる [天体]

今回はUSBカメラとスイッチングボックスを統括する制御ソフトウェアです。
この部分はオートガイダーのコアとなる部分でカメラ画像より星を検出してズレないように赤道儀を制御するコマンドを送るという仕事を行う重要な部分です。
フリーでも「PHD Guiding」という多くの天体ファンから支持されているソフトもありますのでこれらを使うのが一番確実で間違いないと思うのですが高精度にガイドするにはそれなりにパラメーターを追い込む必要が出てきます。
機械部品ですので個体差によるパラメータ最適化が重要で各パラメーターの意味を理解して自分なりの設定を見つけなくてはなりません。しかしこれらソフトは汎用性を持たせてあることから多くの設定がありオートガイド初心者にはかなりハードルが高い部分になります。
だったら自分で専用設計した方がパラメータの追い込みが楽になるんじゃないかと思いゼロから作ることにしました。
Auto2.png
まずUSBカメラからの画像取り込みと画像処理です。
ここはCPUメーカーであるIntelが開発・公開したOpenCVというコンピュータービジョンライブラリーを使います。これは画像処理に関するいろいろと面倒な手続きを簡単に扱えるようにしたライブラリーで、4行の程度の命令でUSBカメラからの画像読み込みが出来ます。他にも簡単に使える画像処理フィルターが多数用意されています。
これをつかってUSBカメラから画像を読み取り特徴点抽出フィルターを使って星を検出するプログラムを作成。
これに赤道儀を制御するプログラムを組み込み約1日でほぼ形になりました。
画面は以下のような感じで下のグラフがズレ量になります。マウスで指示した星の追従成績がこれで確認できます。
Auto1.png
今回は赤経軸のみの1軸だけ制御するようにしました。そして実際に星を使いトライアルした結果が以下のグラフです。
ファーストトライ.png
夜時刻が時間(秒)、縦軸がズレ量(ピクセル)です。今回のトライアルではほぼ±2ピクセルに納まっています。1ピクセル辺り約1.9”ですので±3.8”までズレが抑えられた計算になります。元々±11.3”でしたので3倍ほど向上したことになります。つまり換算450㎜で3ピクセルのズレで済む計算ですのでほぼ点像の星像を写せる計算です。
でもグラフを見るとわかるように目標値であるゼロを跨いで激しく上下に動いています。これはハンチングと言う現象で
正しく制御されていると取れる一方、制御ゲインが高すぎてオーバーシュートしている証拠でもあります。
こういった機械ものを制御する場合、指令を出して実際に動いたり止まったするまで反応遅れがありこれが原因で起こることが殆ど。ハンチングを最小限に抑えるには各種パラメーターを調整する必要が出てくるのです。
これで最初に戻りましたがやはりここからの調整が機械制御には重要になってきますので自前ソフトにこだわった理由がそこにあります。
でも正直ファーストトライでこれだけの結果にびっくりしています。もう少しゲインを下げ遊び吸収方法なども考えて±1ピクセル以下、つまり±2”以下を目指したいと思います。
これからはパラメーター調整がメインになりますので気の長い話になるかもしれませんね。
'14.8.18追記
ある程度パラメータの調整と星検出方法の最適化でかなり追い込めました。
現時点では±2"以下で制御できています。
セカンドトライ.png
ここからの改善ポイントは現在星の検出をピクセル単位で行っているのをサブピクセル単位まで精度をあげていけばもっと精度向上につながると思います。相手が星ですから単純な円検出で済むので比較的簡単なアルゴリズムです。
あとはちょくちょくテストを繰り返しながら玉成していくことにします。
振り返るとこの夏休みは結局テストできたのは2回のみ。しかも雲に邪魔されながらのテストでした。進み具合は天気次第ですね。
ちなみに赤緯軸に関しては通常通り極軸を合わせただけででもほぼゼロのままですので赤緯軸は当面ペンディングで赤経軸の1軸ガイドメインに作りこんでいこうかと思います。

nice!(0)  コメント(4)  トラックバック(0) 

nice! 0

コメント 4

71

Noriさん、こんばんは。
いきなりの訪問、失礼します。

74さんですよね?
PHDへのソケット通信で質問させていただきたいのですがよろしいでしょうか?
by 71 (2014-10-21 22:47) 

Nori

71さんこんばんは。
そうです74(≠73)です。
PHDのソケット通信に関しては全く理解していません。
73さんのURLおよび69さんの書き込みを見るとWinsockにて127.0.0.1:4300にパケットを投げるだけのような気がします。
TCP接続はこの辺ですかね?
http://dobon.net/vb/dotnet/internet/tcpclientserver.html
こんなんで参考になるでしょうか?

by Nori (2014-10-21 23:10) 

71

≠73さんでしたとは、失礼しました。
ブログを読むと赤道儀を買って1年ほどとは。
そこからオートガイダーを作成するとはすごすぎます。
相当考えて撮影されてるんでしょうね。

私も自動導入に憧れてモータードライブから作成はじめて
オートガイドしつつの自動モザイクでとりあえず完成できそうです。
by 71 (2014-10-21 23:29) 

Nori

71さんお役にたてなくてごめんなさい。
元々メカトロ好きなので撮影より作ることに楽しみが移ってきて危ない状態ですw
自動モザイクも面白そうですよね。それこそ作る事だけに集中してしまいそうです。頑張ってください。
プログラム自体の相談ならできますのでお気軽にお問い合わせください。

by Nori (2014-10-21 23:36) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

夏休みの野鳥今日の野鳥 ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。