From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Microsoft Visual Basic .NET従来NI-DAQからNI-DAQmx移行する: Part 1

概要

メモ: このドキュメントは、『Microsoft Visual Basic .NETで従来型NI-DAQ(レガシー)からNI-DAQmxへ移行する』シリーズの最初のドキュメントです。このシリーズの別のドキュメントにアクセスするには、このシリーズの別のトピックへのリンクを参照してください。

内容

『Microsoft Visual Basic .NET従来NI-DAQからNI-DAQmx移行する』シリーズ概要

このシリーズは、従来型NI-DAQ(レガシー)とMicrosoft Visual Basic 6.0からNI-DAQmxとMicrosoft Visual Basic .NETの使用へ移行する方法を支援します。

従来型NI-DAQ(レガシー)ドライバは既に廃止されています。NI-DAQmxは新しい推奨ドライバで、ナショナルインスツルメンツの最新のデータ集録デバイスで使用できるように設計されています。

NIはネイティブ.NETアプリケーションプログラミングインタフェース(API)の使用を推奨しています。このAPIは、Visual Basic .NETでDAQアプリケーションを作成する際に.NETフレームワークでの使用を最適化します。
使用可能な別の解決策に関する詳細については、『従来型NI-DAQ (レガシー)概要』および『NI-DAQmx概要』の各セクションを参照してください。

このシリーズは、Visual Basic 6.0で従来型NI-DAQ (レガシー) CWDAQ ActiveXコントロールを使用するデータ集録アプリケーションの作成を理解しているという前提で説明します。従来型NI-DAQ (レガシー) CWDAQ ActiveXコントロールを使用していなくでも、Visual Basic .NETでデータ集録アプリケーションを作成する場合にNI-DAQmx .NET APIを使用する概要としてこのドキュメントを使用できます。

ナショナルインスツルメンツは、データ集録アプリケーション(DAQ)の開発に対する複数の解決策を提示します。以下の表は、NIデータ集録ドライバとVisual Basicの現行バージョンに基づいて使用可能なオプションを示します。


[+] 画像を拡大

 

NI-DAQmxヘルプアクセスする

このシリーズは、NI-DAQmxに同梱されている2つの主要なリファレンスマニュアルを参照しています。

  • NI-DAQmxヘルプ―NI-DAQmxの複数言語に対応しているマニュアルを参照しています。『NI-DAQmxヘルプ』はNI-DAQmxの中心的なヘルプで、ドライバの多様な特性と機能に関する概要および背景を説明します。このマニュアルにアクセスするには、スタート→プログラム→National Instruments→NI-DAQmx→NI-DAQmxヘルプを選択します。

NI-DAQmx .NET Help―.NET DAQmx APIのマニュアルを参照しています。このリファレンスは.NET APIに特化し、NI-DAQmxのクラス、メソッド、プロパティに関するドキュメントを提供します。また、NI-DAQmx .NET APIの使用に特化したトピックの概要も説明します。このヘルプは、Visual Studio .NETドキュメントに統合されています。Visual Studio .NETでは、Help→Contentsを選択します。『NI-DAQmx .NET Library Help』にアクセスするには、NI Measurement Studio Help→NI Measurement Studio .NET Class Library→Reference→National Instruments.DAQmxを選択します。タスクと概要については、NI Measurement Studio Class .NET Library→Using the Measurement Studio .NET Class Libraries→Using the Measurement Studio NI-DAQmx .NET Libraryを選択します。

以下のリンクも参照してください。
Microsoft Visual Basic Developer Center(英語)

 

CWDAQ ActiveX使用する従来NI-DAQ(レシー)概要

CWDAQコントロールは、コントロールを実行する操作のタイプに基づいて編成されています。以下の表は使用可能なコントロールの概要を示します。


NI-DAQ ActiveXコントロール
目的
CWAIPoint温度など、ゆっくり変化する処理を監視する1つ以上のアナログ入力チャンネルのデータの1ポイントを集録します。構成デバイスでソフトウェアタイミング測定を集録するには、SingleReadなどのCWAIPointメソッドを使用します。
CWAIさまざまな構成操作で連続ハードウェアタイミング集緑の操作を実行します。このコントロールで1つ以上のチャンネルからデータを集録し、開始トリガや停止トリガ、停止条件、異なるチャンネルクロックとスキャンクロックなどの多くの異なるモードを構成します。周波数解析など、複数ポイント/チャンネルで高いサンプリングレートを要求するアプリケーションにこのコントロールを使用します。
CWAOPointシングルポイントソフトウェアタイミングのアナログ出力操作を実行します。コントロール出力の設定など、処理の遅いコントロールシステムの1つ以上のアナログ出力チャンネルを更新します。
CWAOさまざまな構成でハードウェアタイミングアナログ出力操作を実行します。波形生成は連続モードまたは有限モードで実行できます。アナログデバイスのテストなど、ダイナミックアナログ信号を要件とするアプリケーションにこのコントロールを使用します。
CWDIOデータ集緑デバイスのデジタルラインでシングルポイントのアップデートまたは読み取りを実行します。CWDIOコントロールで、物理デバイス(バルブ、リレー、LED)の状態をコントロールしたり、類似するデバイス(スイッチまたは光ゲートなど)の現在の状態を読み取ることができます。
CWDOバッファ型デジタル波形出力を実行します。外部信号や内部クロックに指定したレートで、デジタル出力のデジタルパターンを生成できます。
CWDIバッファ型波形デジタル入力を実行します。外部信号や内部クロックに指定したレートで、デジタル入力のデータを集録できます。
CWPulseデータ集録デバイスでカウンタ/タイマコンポーネントを使用し、個々のパルスとパルス列を生成します。
CWCounterデータ集録デバイスでカウンタ/タイマコンポーネントを使用し、受信するデジタルパルスのカウントを測定を行います。標準操作には、イベント数のカウント、不明なパルス周期の測定、信号周波数の測定が含まれます。
CWDAQTools従来型DAQのユーティリティコントロール。このコントロールはトランスデューサ値をスケールする関数と他のコントロールにはない構成オプションを提供します。


これらのコントロールはVisual Basic 6.0対応で設計され、要求されているハードウェア操作に基づいて編成されています。コントロールが編成されている方法により、特定の測定タスクに使用するコントロールの選択は、常に直観的ではありません。意味のある結果を得るために集録データが正しく処理されているかどうかを確認する必要があります。これは、CWDAQコントロールでは、実行されている測定の種類、またはデータ集録がRTD、熱電対、その他のトランスデューサタイプから来ているかどうかを確認できないからです。たとえば、歪み測定を行う場合、適切な励起が適用されていること、スケールが正しいこと、すべての歪みゲージパラメータが正しく設定されていることを確認する必要があります。また、スケール変換や単位変換を管理する必要もあります。これらの設定は、CWDAQコントロールで直接構成することはできません。
Visual Basic 6.0の性質および従来型NI-DAQの制限により、従来型NI-DAQ(レガシー)CWDAQコントロールでマルチスレッドオブジェクト指向DAQアプリケーションの作成は、複雑な処理になります。

以下のセクションは、NI-DAQmxドライバとNI-DAQmx .NET APIの概要、および従来型NI-DAQ(レガシー)とCWDAQ ActiveXコントロールを介して提供される利点の一部について説明します。

以下のセクションも参照してください。
NI-DAQmxおよび従来型NI-DAQ (レガシー)に関するFAQ
What are the Terminology Changes in NI-DAQmx?(英語)

 

NI-DAQmx .NET概要

NI-DAQmxは、従来型NI-DAQ(レガシー)にあった欠点を解決する新しいNIデータ集録ドライバフレームワークです。利点には以下の内容が含まれます。

  • パフォーマンス
    NI-DAQmxでは、従来型NI-DAQ(レガシー)と比較してパフォーマンスが向上しています。特にシングルポイントソフトウェアタイミングアナログ入力でパフォーマンスが向上しています。
  • 測定ベースのAPI
    NI-DAQmxのAPIは実施する測定のタイプを展開します。APIは、測定に基づいたハードウェアの動作を指定できる抽象化を提供します。APIに基づく測定は、従来型NI-DAQ(レガシー)とは対照的に、ハードウェアサブシステムに基づいたハードウェアの動作を指定できます。
  • マルチスレッドドライバ
    NI-DAQmxドライバを使用すると、相関I/O操作の設定が簡単になり、多くの追加作業を行わずにマルチスレッドデータ集録システムを作成できます。
  • 向上した状態モデル
    NI-DAQmxは状態モデルの定義と強制を行い、入力範囲、タイミング、トリガ、アクセサリの不要な再構成を除きます。これにより、全体のパフォーマンスが大幅に向上します。
  • すべてのプログラミング言語を介した一貫性のあるAPI
    NI-DAQmxプログラミングパラダイムは、複数言語を介した一貫性があります。この一貫性により、LabVIEW、LabWindows/CVI、Measurement StudioでNI_DAQmxプログラミングに移行する場合、NI-DAQmxドライバの概要を新しい内容として習得し直す必要はありません。
  • 例外的条件での頑強性
    従来型NI-DAQは、異常な処理停止のような、例外的条件の処理が難しいことがありました。NI-DAQmxは条件などについて定義と強制を行うことにより、従来型NI-DAQ(レガシー)と比較してより頑強になっています。
    NI-DAQmx DAQフレームワークは、2つの最も重要なタスクとタスク状態モデルを含む、複数の新しい概念を導入しています。



以下のセクションでは、DAQmx .NET APIの説明どおり、タスクの設定方法について検証します。

  • タスク状態モデル
    NI-DAQmxはタスク状態モデルを使用して、ドライバの操作を簡素化し、ドライバのパフォーマンスを高速化します。タスク状態モデルは、未確認、確認済み、予約済み、コミット、実行中の5つの状態から構成されます。アプリケーションの必要性に応じて、タスク状態モデルを操作する頻度を自在に選択することができます。

    DAQmxのタスクモデルの詳細については、『NI-DAQmxヘルプ』でNI-DAQmxヘルプ→NI-DAQmxの概念→タスク→タスク状態モデルを選択してください。

    『NI-DAQmxヘルプ』は他のDAQmxの概念に関する情報を提供します。詳細については、『NI-DAQmxヘルプ』でNI-DAQmxヘルプ→NI-DAQmxの概念を選択してください。  

Visual Basic 6.0からVisual Basic .NET移行


Visual Basic .NETには、継承、インタフェース、マルチスレッドのフルサポート、ご使用のアプリケーションでこれらの新しい機能を適用するには、Visual Basic .NETを理解している必要があります。

このドキュメントではVisual Basic 6.0からVisual Basic .NETへの移行については説明しません。この移行処理は簡単なものではありません。Visual Basic .NET言語はVisual Basic 6.0言語との下位互換性はありません。Microsoft Developers Network (MSDN)で使用可能な複数のリソースがあります。MSDNは、Visual Basic .NETの新機能、およびVisual Basic 6.0で作成したアプリケーションの移行を案内します。詳細については、「リファレンス」セクションを参照してください。

標準のNI-DAQアプリケーション

データ集録に使用したドライバやデバイスのタイプに関係なく、DAQアプリケーションのフレーム作業を行う場合、アプリケーションを5つの主な手順に編成します。これらの5つの手順へのアプローチは、データ集録ドライバの編成方法や提供する機能によってさまざまです。これらの手順には以下の内容が含まれます。

1. 測定を認識する
2. 測定を構成する
3. データ集録操作を実行する
4. I/O
5. クリーンアップ

これらの手順は、標準のデータ集録アプリケーションを作成する基本的な構成ブロックを提供します。頑強なデータ集録アプリケーションを作成する各手順を処理するDAQドライバをDAQアプリケーションで使用する方法を理解する必要があります。機能をこれらの5つの手順に分類し、NI-DAQmx .NET APIを従来型NI DAQ (レガシー) CWDAQコントロールと比較します。このシリーズの別のドキュメントでこれらの手順を説明します。これらのドキュメントにアクセスするには、このシリーズの別のトピックへのリンクを参照してください。
 

.NET NI-DAQmx APIインストール手順



DAQmx .NET APIはNI-DAQドライバの一部として使用可能です。.NET言語のインストールサポートは、DAQアセンブリ、付属サンプル、APIリファレンス、概念に関するドキュメントをインストールします。.NET APIはNI-DAQ一部で無償です。

DAQmx対応VB.NET付属サンプル

DAQmx .NET API対応C#およびVB.NET付属サンプルは、言語サポートの一部としてインストールされ、Visual Studio 2005の..\National Instruments\MeasurementStudio2003\DotNET\Examples\DAQmx for Visual Studio .NET 2003 and ..\National Instruments\MeasurementStudio2005\DotNET\Examples\DAQmxディレクトリで利用可能です。

NI-DAQmxクイックスタートガイド

『NI-DAQmxクイックスタートガイド』は、ご使用のDAQシステムの開始と実行に役立つドキュメントです。ご使用のマシンでのNI-DAQデバイスの設定とインストールに関する導入説明、およびNI-DAQmxで使用可能なさまざまなプログラミングインタフェースに関する情報を提供します。プログラミングインタフェース、およびそれらのインタフェースの使用開始方法の詳細については、『NI-DAQmxクイックスタートガイド』の「アプリケーションの開発を開始する」セクションを参照してください。このクイックスタートガイドはスタート→プログラム→National Instruments→NI-DAQmx→DAQクイックスタートガイドからアクセスできます。  

測定認識する

コードを書く前に、要求されている測定の種類を認識する必要があります。

測定の対象が温度、歪み、位置、その他のものであるかどうかを識別します。キャリブレーションや励起を必要とする外部センサを使用しているかどうかも確認します。このセンサデータにスケールが必要であるかどうかも確認します。

実行する測定タイプを正しく理解すれば、次の手順はその操作を構成することです。操作を構成する詳細については、『Microsoft Visual Basic .NETで従来型NI-DAQ(レガシー)からNI-DAQmxへ移行する: Part 2』を参照してください。  

このシリーズトピックリンク

Was this information helpful?

Yes

No