10-09-2009 08:52 AM
はじめまして。
最近になって、Labviewを使い始めました。
いつも、質問を読ませていただいて参考にしています。
Labview2009を使って、PCからLANケーブルで接続したTektronixのTDS3054Cのオシロスコープの画面を画像として自動保存するようなプログラムを組みたいのですが、少し行き詰っています。
ドライバを使ってチャートに表示することはできるのですが、できればオシロで画像保存した状態のデータが欲しいのです。
オシロの画面をハードコピーして、それをLabview上に持ってくることができればいいのですが、その手法が分かりません。
Measurement & Automation Explorer(MAX)だと、オシロの画面の画像が出てくるので、それをLabview上で実行するようないい知恵はないでしょうか?
こんな手法がある、というのがあれば、ぜひ教えていただきたいのです。よろしくお願いします。
解決済! 解決策の投稿を見る。
10-09-2009 10:50 PM
私の想像なので間違っていたらすみません。
Tektronix さんの ソフトが他の外部アプリーケーションからの制御が可能になっているのなら
LabVIEWから操作できると思いますが、
そうでない場合は、ハッキングみたいなことをしないと、無理だと思います。
話は替わりますが
今現状のチャートのイメージと、やりたいオシロ画面のイメージをアップしてもらえれば
チャート、グラフのコディーネートを変更するだけで、可能かもしれません。
画像のアップと、データ(波形?、配列?)も添付をしていただけると、解決に近づくと思います。
10-10-2009 07:35 PM
10-11-2009 09:08 AM
xyzz様、高須様
早速の返信をありがとうございます。
具体的にやりたいことは、高須様の書かれてる通り、オシロスコープ機器上画面のハードコピーをBMP形式などで、LAN経由でLabVIEWに取り込みたいということです。
その際の時間は特に問題にしていません。1時間かかる、とか言われると流石に困りますが、5分、10分かかっても構わない状況ではあるので、その点は余裕があると思います。
小生もいろいろとネットを見て周ったのですが、オシロスコープのマニュアルが見つからず、来週中には、なんとか手に入るのでは、というのが現状でして、それまでに何かヒントはないものかと書き込みした次第です。
やりたい画像のイメージは、セキュリティの関係でもしかしたらできないかもしれませんが、休み明けにアップしてみようと思います。
10-12-2009 06:54 PM
下記 URL から Programmer Manual がダウンロードできます。
TDS3000/3000B シリーズ用ですが、多分同じかと思います。
http://www2.tek.com/cmswpt/madetails.lotr?ct=MA&cs=mpm&ci=11148&lc=EN
このマニュアルの 2-19 に HARDCopy コマンドについての記載があります。
LabView は詳しくないので間違っているかもしれませんが、Visa を使用して
このコマンドをオシロに送信すれば、ご希望のことは可能ではないでしょうか。
10-13-2009 05:34 AM
maeguchi様
ありがとうございます。おかげさまでマニュアルをダウンロードできました。
VISAの使い方がいまいち明るくないので、少し勉強しようと思います。
10-13-2009 06:55 PM - 編集済み 10-13-2009 06:58 PM
一例ですが、下記3つのコマンドを送信すれば、良いかと思います。
(メッセージが顔文字に変わるので、一部全角です)
"HARDCopy:FORMat BMP"
"HARDCopy:PORT ETHERnet"
"HARDCopy STARt"
コマンド送信後にイーサネットのデータを取得する事になります。
適当なウェイトを置いて、イーサネットにあるデータを取得し、ファイルに保存してください。
下記リンクが参考になるかと思います。
http://www.tek.com/forum/viewtopic.php?f=5&t=131&start=0&st=0&sk=t&sd=a&hilit=Hard+copy
10-14-2009 08:33 AM
maeguchi様
重ね重ねありがとうございます。
少し、時間が取れなくて、まだ試せていないのですが、なんとかできそうな気がしてきました。
イーサネットのデータを取得する、というのがイメージが沸かないのですが、HARDCOPY:STARTを実行すると、
画像データがそこにスタックされる、ということですか?
それも何かしらのコマンドで取得するのでしょうか?
質問ばかりで申し訳ありません。
自分でもできるだけ調べてやってみます。
10-14-2009 05:25 PM
実際に挙動を見た訳ではないので正しくないかもしれませんが、
少なくとも一方的にデータがオシロから送られてくる事はないようです。
その辺の説明が先のリンクに記載されていて、テクトロのエンジニアと
思われる方が下記の内容(適当に意訳)を投稿されています。
”HARDCopy STARt を送信した後に Read する。 Read はオシロのコマンドではなく開発環境に依存する”
この場合の開発環境というのは Visa が該当します。
.NET の Visa ライブラリを見たところ ReadToFile() という関数がありました。
vi でも同様のことができるのではないかと思っています。
10-17-2009 08:52 AM
maeguchi様
急に出張が入って、返事が遅れました。すみません。
教えていただいたHARDCOPY STARTコマンドを少し実践してみました。
VISAで書き込みをした後に、バッファを読み取ると、何かしらのデータが返ってきました。
皆様に、お聞きしたいのですが、Labviewの話になりますが、読み取りバッファで取得するデータは、
文字データで、つまり、バイナリ形式ということなのでしょうか?
だとすれば、それを画像データに変換する方法、というのは、どうすればよいのでしょうか?