プログラミングコース07 ー生産ライン向け検査装置ー

プログラム課題

背景

あなたは検査装置の担当者です。一緒にプロジェクトに参加している先輩エンジニアから、以下に示す「検査システム」の検査シーケンスを製作するよう頼まれました。検査シーケンス作成の前段階で用意できているものは、システム構成、要求機能のリストの2つです。

システム構成

要求機能

  1. 電源の出力電圧をデジタルマルチメータで計測して出力電圧値の合否判定を行う
  2. パルス発生器の出力波形をオシロスコープで収録して周波数(Hz)と振幅(Vp-p)の合否判定を行う(sin 波、1kHz、3Vp-p)
  3. 検査結果をcsvファイル形式で保存する。

TestStandとLabVIEWを使用したソフトウェア構成図

プログラミング解説

プログラミング講座07 サンプルVIをダウンロード

プログラムの階層構造

用語

電源

ここでは、「直流電源装置」を指す。直流で電気を供給する装置。

デジタルマルチメータ

以下、「DMM」と呼称する。電圧値・電流値・抵抗値を測定する計測器。

NI

計測・制御分野において標準的な開発環境「LabVIEW」

ドライバ

コンピュータに接続されている周辺機器(この場合は計測器)を、コンピュータから管理・制御するためのプログラム

製作の流れ

STEP1:サンプルVIで電源の動作を確認する

サンプルVIのブロックダイアグラム(参考例)

サンプルVIを開き、適切なVISAリソースを選択して動作を確認する。

STEP2:電源ドライバVIを作成する

フロントパネル
ブロックダイアグラム
列挙体タイプ定義

サンプルVIを改造して、より高速に動作するドライバVIを製作する。サンプルVIの処理を以下のケースに分割し、タイプ定義に指定した列挙体でケースを選択できるようにしておく。

  • initialize:初期化
  • output:出力開始
  • stop:出力停止
  • close:終了

STEP3:サンプルVIでDMMの動作を確認する

サンプルVIのブロックダイアグラム(参考例)

サンプルVIを開き、適切なVISAリソースを選択して動作を確認する。

STEP4:DMM制御ドライバVIを作成する

フロントパネル
ブロックダイアグラム
列挙体タイプ定義

サンプルVIを改造して、より高速に動作するドライバVIを製作する。サンプルVIの処理を以下のケースに分割し、タイプ定義に指定した列挙体でケースを選択できるようにしておく。

  • Initialize:初期化
  • measurement:収録
  • close:終了

STEP5:検査結果表示VIの説明

フロントパネル

①検査シーケンス実行後、検査結果を画面表示し、CSVファイルに保存するVIを作成しましたのでご利用ください

②ダイアグラムは複雑なため説明を省略いたします。改造する場合は処理内容をよく理解したうえで実施してください。

STEP6:シーケンスファイルの作成①
(電源制御ドライバVIの初期化)

Teststandシーケンスエディタ

シーケンスファイルのSetupの部分でドライバVIの初期化を実行するようにE3631A Driver viを配置する。

動画:シーケンスファイルの作成①(電源制御ドライバVIの初期化)

STEP7:シーケンスファイルの作成②
(電源制御ドライバVIのoutput:電圧出力)

Teststandシーケンスエディタ

シーケンスファイルのMianの部分でドライバVIをoutputでコールし、1Vを出力するようにパラメータを変更する。次に3Vと5Vを出力するようにステップを追加する。

STEP8:シーケンスファイルの作成③
(電源制御ドライバVIのstepとclose)

Teststandシーケンスエディタ

シーケンスファイルのCleanupの部分でドライバVIをstopでコールし、電源出力を停止する。次にcloseを実行するようにステップを追加する。(Actionの文字列は編集可能)

STEP9:シーケンスファイルの作成④
(DMMドライバVIのintializeとclose)

Teststandシーケンスエディタ

電源制御ドライバVIと同様にSetupの部分に初期化、Cleanupの部分にcloseを追加する。

動画:シーケンスファイルの作成④(DMMドライバVIのintializeとclose)

STEP10:シーケンスファイルの作成⑤
(DMMドライバVIのintializeとclose)

Teststandシーケンスエディタ

電圧出力のあとに電圧計測を実施してOK/NGの判定を行うためにNumericLimitTestのステップを追加する。

動画:シーケンスファイルの作成⑤(DMMドライバVIのintializeとclose)

STEP11:シーケンスファイルの作成⑥
(DMMドライバVIのmeasure:計測の追加)

Teststandシーケンスエディタ

NumericLimitTestのステップで34401A Driver viをmeasurementでコールして計測を実行する。3Vの検査ステップ、5Vの検査ステップも同様に追加する。

STEP12:シーケンスファイルの作成⑦
(DMMドライバVI:パラメータ変更)

Teststandシーケンスエディタ

NumericLimitTestにおける計測結果パラメータの出力先を指定する。(Teststandとの連携)

STEP13:シーケンスファイルの作成⑧
(DMMドライバVI:検査規格値の設定)

Teststandシーケンスエディタ

NumericLimitTestにおける検査規格値と単位の設定を行う。

STEP14:シーケンスファイルの作成⑨
(検査結果表示VIの追加)

Teststandシーケンスエディタ

Cleanupの部分に検査結果表示VI(GetResultsFromTestStand)を追加する。

動画:シーケンスファイルの作成⑨(検査結果表示VIの追加)

STEP15:シーケンスファイルの実行

Teststandシーケンスエディタ

作成したシーケンスファイルを実行して結果を表示させてみましょう。

動画:シーケンスファイルの実行

STEP16:サンプルVIでパルス発生器の動作を確認する

サンプルVIのブロックダイアグラム(参考例)

サンプルVIを開き、適切なVISAリソースを選択して動作を確認する。

STEP17:パルス発生器ドライバVIを作成する

フロントパネル
ブロックダイアグラム
列挙体タイプ定義

サンプルVIを改造して、より後続に動作するドライバVIを製作する。サンプルVIの処理を以下のケースに分割し、タイプ定義に指定した列挙体でケースを選択できるようにしておく。

  • Initialize:初期化
  • output start:出力
  • close:終了

STEP18:サンプルVIでオシロスコープの動作確認をする

サンプルVIのブロックダイアグラム(参考例)

サンプルVIを開き、適切なVISAリソースを選択して動作を確認する。

STEP19:オシロスコープドライバVIを作成する

フロントパネル
ブロックダイアグラム
列挙体タイプ定義

サンプルVIを改造して、より高速に動作するドライバVIを製作する。サンプルVIの処理を以下のケースに分割し、タイプ定義に指定した列挙体でケースを選択できるようにしておく。

  • Initialize:初期化
  • setting:設定
  • Input:波形
  • close:終了

STEP20:シーケンスファイルに周波数と振幅検査を追加する

Teststandシーケンスエディタ

パルス発生器とオシロスコープのドライバVIをSetup、Main、Cleanupにそれぞれ追加する。パルス発生器で1kHz、3Vp-pのsin波を出力し、オシロスコープでVerticalRage 1V/div、Timebase 0.001にsettingしたのち、inputで波形計測を実行する。

動画:シーケンスファイルに周波数と振幅検査を追加する-①
動画:シーケンスファイルに周波数と振幅検査を追加する-②
動画:シーケンスファイルに周波数と振幅検査を追加する-③

STEP21:シーケンスファイルの実行

Teststandシーケンスエディタ

各STEPのRun Options
(結果をファイル保存したくない場合)

Teststandシーケンスエディタ

各STEPのShow VI Front Panel
(VIの画面を表示させる設定)

Teststandシーケンスエディタ

ポイントのまとめ

  • ドライバVIは、Initialize→OutputまたはMeasure→Closeにケースを分割すれば、NIおよび他社の計測器も同様に作成することができる
  • TestStandシーケンスファイルの作り方
  • Setupに初期化処理、Cleanupに終了処理を配置しておく
  • Actionで検査するための前処理を実行する
  • NumericLimittestで数値判定する検査VIを実行する
  • Pass/Failtestでブール判定する検査VIを実行する
  • 検査結果に残さないステップは、RunOptionsでResultRecordingOptionをDisableにする

LabVIEW講座データの販売について

本講座で使用した動画・テキスト・プログラム一式は、プログラムデータとしての販売やDVDメディアでの販売を行っております。
自習や復習、社内研修などにご活用いただけます。

LabVIEWに関する開発支援・技術サポートのご案内

ペリテックでは、LabVIEWに関する有償技術サポートおよび受託開発サービスを提供しております。本講座で得た知識を実務に活かしたい方や、実際の業務に即した開発支援をお求めの方は、ぜひお気軽にご相談ください。
専門のエンジニアが、お客様の課題解決をサポートいたします。