2012年10月25日

USB-IO2.0等向赤道儀制御プラグインのβ版

 iAGではUSB-IO2.0は動作できないかという問い合わせを受けて、最終的に従来とは異なるライブラリを用いたプラグインを書いてみました。
 従来のUSB-IOとUSB-IO2.0シリーズ両方動作する仕様です。

 いきさつ的には、最初問い合わせを受けたときは、てっきりUSB-IO2.0は従来品と互換性があると思って、DLL中のVendorID/ProductIDの強制書き換えで動作するのでは?と思っていましたが、どうもUSBのコマンドレベルでは互換性が無いようで、うまく動きませんでした。
 そこで実際に秋月で販売しているUSB-IO2.0(AKI)を購入してみました。従来のUSB-IOに比べるとかなり小型で大きさ的にはFT245RLと同じくらいです。
usbio2.jpg

 最初にvbausbio.dllのUSB-IO2.0対応版である1.0β版を試してみました。
 ところがなぜかWin7(x64)でプラグイン内でのDLL読み込みに失敗します。
 ちょっと原因がわからなかったので、もう少し低レベルのC#用HIDライブラリである、
A USB HID Component for C#
http://www.codeproject.com/Articles/18099/A-USB-HID-Component-for-C
を使ってみました。
 配布形態のままコンパイルしたものはプラグイン利用時にうまく動作しませんでしたので、ソースを少しいじって動くようにしました。以下設定画面です。
conf_usbiov2.png

とりあえず動作しそうですので、サイトにおいておきます。
http://www.swetake.com/astro/iAG/iAG.html
TelescopeControlUSBIOv2_0.9.1.zip です。
今回のバージョンはUSB-IO側からの返値をチェックしない仕様にしています。もしかすると従来のものより若干信頼性が低いかもしれませんが、それほど影響のあるレベルではないと思っています。

 ところでUSB-IO2.0(AKI)の仕様ですが、USB-IO2.0(AKI)はUSB接続時に各ポートがLow状態になります。TECHNOKITのUSB-IOはUSB接続時は各ポートがHigh状態なので、ポート吸い込み型の回路設計ですと、全リレーがOFF状態になり都合が良かったのですが、USB-IO2.0(AKI)で同じ回路を使うと最初全リレーがON状態になり、あまり好ましい状態ではないような気がします。
 そこでこのプラグインではActiveLow/ActiveHighの切り替えができるチェックボックスをつけています。
 どの程度の電流が流せるか不明ですが、スペック上は25mA/Portとありますので例えば以下のような回路にして、プラグイン側の設定をActiveHighモードにしておくとうまくいくのではないかと思います。
iag_relay2.png

 現時点で、USB-IO2.0シリーズはボード上の検証しかしておりませんし、また実際のガイドでの検証は一切できておりませんので、あるいはうまく動かないかもしれません。
 無保証である旨ご了承ください。
posted by 開発者 at 21:14| Comment(0) | TrackBack(0) | 機能 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。