NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

計測器ドライバ作成について

初めて投稿させていただきます。某大学の学部生です。
このたび,所属する研究室で実験の計測制御にLabVIEWを導入することになり,私がその担当者に任命されました。
現在は,ソフトおよびボード(GPIB,RS232)の発注を済ませ,商品の到着を待っているところです。
また,先日NI社さんのセミナー(「LabVIEWって何?」)にも参加させていただき,やっと少しずつLabVIEWとはなんかのかがうっすらと見えてきたかな?という、本当に初心者です。
しかし,卒論の都合上,1月中には,LabVIEWと計測器の接続(と表現したらいいのでしょうか?)を済ませ,実際に実験データをとり,LabVIEWを使用して解析を行い,欲しいデータの形にまで加工する・・・というところまでもっていかなければなりません(そんなことは時間的に可能なのでしょうか?かなり弱気です)。
そのため,ソフトが届くまでの時間がもったいないため,セミナーで『制御したい計測器にあった計測器ドライバがweb上で見つかれば,そのドライバを使って計測器を制御できる』ということを教えていただいたので,早速検索してみましたが,残念ながら研究室の計測器が年代ものなためドライバは発見できませんでした。
ということは,確か,『計測器を制御するためのドライバを自分で作らなければならない』と記憶しているのですが,実際にはどのような手順で行ったらいいのでしょうか?
 
ちなみに,今回はマルチメータ(ADVANTEST社R6451)をGPIBで,ハンディタイプマルチメータ(IWATSU社VOAC86A)をRS232を使用して,制御することを考えています。
 
セミナーでは『マニュアルを読んで・・・』と教えていただいたため,必死でマニュアルを探しているところです。
マニュアルを読めば,ドライバを作成できるのでしょうか?
どちらも今までは,それぞれ専用のソフトを使って,自動的(自分たちでは一切プログラムを作らず)に別々にデータをとっていたのですが・・・・
 
 
きっと,とても初歩的な質問だと思いますが,LabVIEWに関しての知識がゼロに近いため,本当に困っています。
よろしくお願いします。
 
0 件の賞賛
メッセージ1/10
11,676件の閲覧回数

>(そんなことは時間的に可能なのでしょうか?かなり弱気です)。

そうですね。慣れれば一日で可能です。

 

 

計測器ドライバーなんて、難しいことを考える必要はないのです。

さて、測定器を起動させて、測定器のボタンは、いつもどの順番で押していますか?それを箇条書きにします。

つぎに、そのボタンに対応するコマンドを計測器のマニュアルを見て全部調べます。

これで、いつも操作している動作を動かすために必要なコマンド(命令の略文字列)がわかりました。

つぎに、VISA writeという命令で、計測器に一つ一つのコマンドを流します。

計測器からのデータを読み取るときは、VISA readを使います。

VISA writeで命令を流す、VISA readで測定したデータを回収する。この2つのプロセスの繰り返しです。

 

まずは、なんだかわからないと思うので、添付ファイルで示すサンプルを動かして、調べたコマンドを流してみてください。

計測器側で何かの反応があるはずです。

それを何度か繰り返せば、一連の必要な動作の通信は確立します。

 

あとは、そのデータは文字列なので、必要に応じて数値に直したり、データを保存するようにするだけです。

 

ナショナルインスツルメンツで行なうセミナーもお勧めです(3日間で10万円ぐらい)。

値段が高いのですが、「10万円かかりますが、これを学べば、やれる自信がある」と積極的に指導教官とよく相談の上、検討してみてください。もちろん、責任をもって卒研に取り込むことになりますが。しかしながら、この卒研で得たLabVIEWプログラミング能力は、どこでも役立つ人材だと評価されることは間違いありません。

 

 

 

0 件の賞賛
メッセージ2/10
11,667件の閲覧回数
添付を忘れました。
0 件の賞賛
メッセージ3/10
11,668件の閲覧回数
小澤先生。親切なアドバイスありがとうございます。
 
マルチメータ(ADBANTEST R6441)の方は,添付資料を参考に,ソフト・ボードが届き次第,VISA write,VISA readを使って,計測器との通信を行って見ようと思います。
 
しかし,ハンディタイプマルチメータ(IWATSU VOAC86)に関しては,マニュアルを読んでみたのですが,装置自体に制御機能があるのではなく,付属のフロッピーディスクをPCにインストールすることで,測定結果を自動的にPC上に保存していたようで,その通信のコマンド等は一切書かれておらず,LabVIEWを使ってどのように制御してよいのかわかりません。
 
この手の計測器を制御することは不可能なのでしょうか?
 
教官には『装置に制御機能がついておらず,LabVIEWでの制御が無理なようなら他のマルチメータを使うか?』とも言われたのですが・・・
 
 
最後に,セミナーに関してですが,確かにとても魅力的ですね。
院生の先輩方もLabVIEWに関しては,自分と同じく初心者(というより,研究室内で自分より勉強している人は皆無です)なため,助言をしてくれたり,指示を出してくれる人が身近にいないため,現在は一人でとても不安を抱えています。
セミナーを受けて,しっかり教育を受けたら,先生の仰る通り,自分自身の自信にもなると思います。
しかし,セミナーの日程を調べてみたところ,残念なことに,私の地域ではこのたび,来年の3月までセミナーはないようです。
とりあえず,当分の間は,添付していただいた資料を参考に自力で進めていこうと思います。
時間・研究費に余裕ができ,教官の許可が下りれば,是非,セミナー資料(だけを購入することもできたようなので)を購入し,少しずつ知識を深めていきたいと思っています。
 
0 件の賞賛
メッセージ4/10
11,659件の閲覧回数


ハンディタイプマルチメータ(IWATSU VOAC86)に関して調べてみました。
下記のURLに掲載されているものですね。
http://www.iti.iwatsu.co.jp/products/voac/13_19.html
これは、リモート機能がないと明言しているので、残念ながらLabVIEWによる動作はできないです。
また、付属しているソフトウェアをLabVIEWからコントロールしてしてしまうという方法も考えられますが、そのソフトウェアをコントロールするコマンドがないので、やはり制御不可能です。
自動化を行なうには、GPIBに対応したマルチメータを新規に購入しなければなりません。


マルチメータ(ADVANTEST社R6451)というのは、NIのホームページには計測器ドライバーがありません。
しかし、ClubADVANTESTに入会すると、アドバンテスト側から似たような計測器ドライバーがあることが確認できました。
同社の製品でR6551用と書いてありますが、補足でavailable for all DMM'sと書いてあるので、基本的な単純動作ならば制御可能と思います(機種ごとにGPIBコマンドを変えて設計していたら、大幅なコストがかかりますので、同じ会社ならば概ね共通になっています。)
まずは、これを入手しましょう。
私は既に入手済みですので、それをここに添付すればいいのですが、それでは第三者にソフトウェアを配布するという著作権の違法になりますので、そちらで入手してください。

まず、下記のURLの「ダウンロード ファームウエア/LabVIEWドライバをご提供します。」を利用します。
http://www.advantest.co.jp/products/
ClubADVANTESTに登録をしてIDを得てください。
そして、R6551の計測器ドライバーを入手します。
バージョン6.X用で構いません。
圧縮されているので解凍すると、CNTPANEL.VIというものがあります。
どこにも説明が見られませんでしたが、私がいろいろ試した結果、これがソフトウェアの階層で一番上に相当するものなので、クリックして開いてください。
擬似的なパネルがみられるので、GPIBアドレスを指定して、実行してみてください。
何かが動くはずです。
なお、この計測器ドライバーを作成した方には悪いのですが、ぎこちないプログラミングになっているので、真似しない方がいいでしょう。
関数だけを流用して、新しくプログラミング全体を設計しなおしたほうがいいです。


わからない問題に取り組むからこそ、「おまえはできるやつだな」って、周囲は評価します。今は、LabVIEWに触れる絶好の機会ですので、是非、LabVIEWをマスターして、同期の友人や周囲をあっと驚かせちゃいましょう。

私はナショナルインスツルメンツの製品に触れて丁度10年が経過しました。最初は英語の説明書しかなかったので、なんだか良くわからないと嘆いておりましたが、そのときの努力は現在では英語文献の読解力増強につながっています。

また、わからなかったら、聞いてください。期待しております。

 

0 件の賞賛
メッセージ5/10
11,648件の閲覧回数
ご無沙汰していました。
先生にアドバイスをいただいた後、年内にソフトも届き、計測器アシスタントを使って、デジタルマルチメータ(ADVANTEST R6441A)から測定値を読み取って、スタッドレスファイル形式で保存するところまで昨年中にできました。ありがとうございました。
 
そこで、年明けからは、制御するデジタルマルチメータの台数を増やして、最終的には4台のマルチメータをGPIBで制御し、測定値の同期を取ること、また、RS232を使用してデジタルオシロスコープを制御することを目標に作業を再開しています。
まず、手始めに、マルチメータを2台に増やして2台からデータを読み取ろうと試みたのですが、Measurement&Automation Explorerで計測器のスキャンをした段階で2台接続しているはずなのに、1台しか認識してもらえませんでした。
1台ずつ、電源を入れて通信が出来ているか、接続は間違っていないかと確認をしてみたのですが、その結果2台ともちゃんと接続が出来ていることがわかりました。しかし、2台とも電源を入れてスキャンを行ってもやっぱり1台分しか認識してくれませんでした。
 
手元にある、参考書には通信方法は載っていても、複数台の制御の仕方は載っていないようなのですが、どうしたらうまく制御できるのでしょうか?
 
 
仕事始めで忙しいと思いますが、ご指導よろしくお願いします。
0 件の賞賛
メッセージ6/10
11,450件の閲覧回数

こんにちは。

さて、ここで使用しているマルチメーターは、全て同じものですか?

それならば、答えは簡単です。同じマルチメーターならば、内部のGPIBアドレスが同じなのです。

今のマルチメーターは全く同じ電話番号を持った状態と考えてください。

そしたら、1台分の電話番号しか認識できないでしょう?

電話してみたら、1台分の電話番号しか認識されていないのに、4人分の声が混ざって話すようなおかしな状態になっています。

それぞれに、固有の番号に変更すればいいのです。

 

アドバンテストのマルチメーターのマニュアルを読んで、手動で全部のGPIBアドレスを変更してください。

例えば、

1台目は1、

2台目は2、

3台目は3、

4台目は4などでもいいでしょう。

そしてMeasurement&Automation Explorerで計測器のスキャンを行なうと、

1台目は「GPIB0::1」

2台目は「GPIB0::2」

3台目は「GPIB0::3」

4台目は「GPIB0::4」として認識されるはずです。

なお、この文字列の意味ですが、最初のGPIB0はパソコンに組み込んだ一枚目のGPIBボードを表し、その次の::4は、接続されている測定器固有のGPIBアドレスを表しています。

GPIBアドレスは、一般的に計測器の操作パネル部分に表示されないものなので、GPIBアドレスを変更したら、シールなどで現在のGPIBアドレスを張っておくほうがいいでしょう。同じものが複数台あると、後日、わけがわからなくなります。

 

 

 

 

 

0 件の賞賛
メッセージ7/10
11,447件の閲覧回数
先日、指摘していただいたGPIBアドレスを設定しなおすことで無事2台のマルチメータを制御することができました。
 
その後、デジタルオシロスコープとRS232を使用して通信も出来、ここ2週間あまりはずっとプログラム設計をしていました。わからないことばかりですが、とにかく手探りで『作る→動かす』を繰り返し、なんとか当初の目的であった2つの測定を行うためのVIを作成できました。
 
先輩から『測定途中でファイルの選択などはしたくない、一度測定を始めたら波形だけを見ていたい』との要求があったため、イベントストラクチャを使用してみました。
まだ、このままでは『測定中に強制終了がかけられるようにしてほしい』という要求はみたしていいないのですが、とりあえずは「『任意のサンプリング間隔毎に3台の計測器の同期をとって測定,ファイルに保存する』+『オシロスコープの波形データを1秒毎に表示し、測定終了後欲しい波形だけをファイルに保存する』」および「オシロスコープからCH1、CH2の2つの波形を取り込み、それぞれの測定点においてCH1*CH2の演算をし、3つの波形の平均値(1秒あたり)を計算しファイルに保存する」という制御ができただけでも、自分の中ではかなり達成感を感じています。
 
 
同じ計測器を同じ条件で使用していない限り、自分の作ったVIを添付したところで、先生のほうで実行することは出来ないと思いますが、先生のアドバイスのおかげでここまで、LabVIEWを使えるようになりました。本当にありがとうございます。
その感謝の気持ちを込めて、先生のようなベテランの方から見たら穴だらけのプログラムだとは思いますが、出来あがったVIを添付します。
 
 
0 件の賞賛
メッセージ8/10
11,311件の閲覧回数

わざわざ報告ありがとう。

一番最初に開くべきの最上位VIがどれなのかわかりないのですが、随分、苦労されたのではないかと思います。
しかしながら、かなりプログラミングの仕組みが習得できたのではないでしょうか。

もう10年前の話になりますが、私が最初にNational Instrumentsの製品に触れたのは、修士課程のときです。
その当時のマニュアルは全てが英語であり、カタログさえ英語でしたから、製品の選定から大変でした。
しかし、誰かが作ったものを改造することは難しいのですが、自分で作ったものは改造がしやすく、結局、目的としているものを早期に作り上げることができます。
このような能力は、今後どこにいっても役に立つ能力でしょう。
本に書いていない、誰もやっていないことをするのが、仕事であり、本来の勉強であります。
私は極基本的なことしか教えておりませんので、今回の成功は全て貴殿の成果です。
今回の吉報を大変うれしく思います。
今回の成果には自信を持って、より一層の今後の活躍を期待しております。

0 件の賞賛
メッセージ9/10
11,302件の閲覧回数

ありがとうございます。

ソフトが手元になかなか届かず、これからいったいどうやってプログラムしていくのかと不安でいっぱいだった1ヵ月半前にくれべると、今は、VIをひとつ完成させたことで、かなり自分の中で自信になっていると思います。

 

先ほどは、最上位VIの説明がなく、すみませんでした。

ちなみに、最上位VIは『test of 3 instruments(event structure).vi』と『output of oscillo (2 channels).vi』です。

 

0 件の賞賛
メッセージ10/10
11,294件の閲覧回数