Technokit版とともに追加検証を行ないました。USB-IO2.0(Aki)を用いたリレーユニット半アッセンブリUSB-IO2.0(Aki)は起動時(USB接続時)は各ポートがLowレベルになるため、Technokit版を使用した際に用いた吸い込み型の設計では、起動時全リレーがON状態になります。今回は手持ちの基板のパターンを一部カットし、また、わたり線を這わして、ポートがHigh時にリレーがONになるよう変更して作製しました。ちなみに、仕様書をよく読んでみると、ポートの初期状態を設定できないのはUSB-IO2.0(Aki)だけで他のUSB-IO2.0ファミリは設定できるようです。これを用いて検証をすすめていくと、以下の問題が発生しました1.レスポンスが悪い2.少し不安定なときがある。レスポンスが悪い件ですが、USB-IOからの戻り値を読み込むときに時間がかかっているようでした。仕方がないので、読み込みロジックを外してやると、いい感じになります。仕方がないので、最初の仕様と同じ書き込み一辺倒の仕様に戻すことにしました。不安定問題も読み込みロジックを外したものでは発生しませんので、このあたりの問題のようです。更新したものは以下においております。Driverに少し手を加えました。内容的には、従来はデバイス側に書き込んみっぱなしで、デバイスからの戻り値は確認していなかったのですが、これを確認するようにしました。Driverはより仕様に沿った実装になるよう修正しました。C#"(http://www.codeproject.com/Articles/18099/A-USB-HID-Component-for-C)を使用しています。これの読み込み関数は非同期読み込みしか用意されておらず、USB-IOの戻り値を確認しようとするとタイムラグが発生したり、品質ももうひとつの傾向がありました。そこで元のライブラリに同期読み込みのメソッドを追加実装して、値を書き出し後、そのまま処理の中で戻り値をチェックするようにしました。USB-IO2.0(Aki)は「出入力機能」がなく「入出力機能」だけのため、単純には出力の戻り値を拾うことができないため、依然として書きっぱなしの状態にしています。手持ちのUSB-IOはTechnoKit版とUSB-IO2.0(aki)だけですが、これらでは一応まともに動いてそうです。他のUSB-IOシリーズでも動作すると思いますが、今のところ未検証です。CheckerでのERROR数は残り2つとなりました。残るはRA値とDEC値の取得の部分なのですが、NotImplementを返してもChecker上はERRORになるため、今のところ放置しています。適当な値を返しても良いのですが、それではあまり意味がありませんので。今回修正したものは以下においております。いずれも実戦でのチェックはまだ行なっていませんのでご留意ください。Driverを書いてみました。等のASCOM対応アプリケーションでUSB-IOを用いたリレーボックスでの制御が可能になると思われます。いえASCOMのAPI的にはPulseGuideしか対応させておりませんので、その他のAPIをコールするような挙動を示すアプリケーションではうまく動かないかもしれません。ベースロジックはiAGのUSB-IOv2プラグイン(http://iag.seesaa.net/article/299002242.html)と同じです。従来型USB-IOとUSB-IO2.0の両方に対応し、またActiveLow/ActiveHighの切り替えが可能となっています。回路は従来型はActiveLow設計、2.0はActiveHigh設計が良いかと思います。机上のチェックしてみて、問題はなさそうな感じですが、実戦でどうかとか、他のアプリケーションでうまく動くか、USB-IOの種類によってどうか等々、α版レベルの品質と思いますので、利用の際はご注意ください。http://www.swetake.com/astro/ASCOM_USBIO/index.htmlにおいています。SP2をインストールしてみました。.NETを試してみましたが、動作はかなり改善されているようで、机上ではわりとまともに動作しています。fixが進んでいることが期待されますので、実機側もupdateしてみたいと思います。|2013年05月19日DirectShow向CaptureDeviceプラグインのバージョンアップ従来DirectShow向けのCAptureDeveiceプラグインは640x480の入力を前提としていて、それより大きい解像度での入力した場合は640x480にリサイズして処理していました。この場合、カメラの解像度を十分活かしきれないという課題があり、これに対するご要望がありましたので、入力画像を640x480のサイズで切り出す機能を実装してみました。設定画面[カメラ設定]をクリックすると上記画面が表示されます。従来の設定画面は[プロパティ表示]で表示されます。この画面で「トリミングを有効にする」にチェックを入れると等倍で切り出して表示します。切り出す位置は9つのラジオボタンが対応しています。カメラの解像度は起動時にのみ設定可能ですので、この機能を利用するには起動時に640x480以上の設定にしておく必要があります。PluginInstallerでAddしてください。問題なければ、そのうち本体にマージする予定です。2.0Seesaaブログ×この広告は180日以上新しい記事の投稿がないブログに表示されております。