Linux 上で NI-DAQmx Base と NI-DAQmx を切り替える

更新しました Mar 12, 2025

環境

ドライバ

  • NI-DAQmx
  • NI-DAQmx Base 3.0
  • NI-DAQmx Base 2.2
  • NI-DAQmx Base 3.5
  • NI-DAQmx Base 1.4

私の Linux マシンには DAQmx と DAQmx Base がインストールされています。 DAQ ボードが使用するドライバーを指定するにはどうすればよいですか?

DAQmx 8.0.2

DAQmx 8.0.2とDAQmx Baseの両方がLinuxマシンにインストールされている場合、DAQボードは常にDAQmxドライバによって動作します。これは、ドライバーがロードされる順序によるものです。 DAQmx が最初にロードして、ボードを制御されます。 DAQmx INFファイルを編集することで、ボードをDAQmx Baseで使用できるようにすることができます。

基本的に、DAQmxドライバがロードされるときに、ボードがDAQmx INFファイルで見つかると、そのボードがDAQmxによって使用されます。ボードがDAQmx INFファイルで見つからない場合は、DAQmx Baseドライバーで操作できます。つまり、DAQmx Baseでボードを見つけたい場合は、DAQmx INFファイルからボードをコメントアウトする必要があります。

さまざまなボード用にいくつかの DAQmx INF ファイルがあります。これらの INF ファイルは、/usr/local/natinst/nidaqmx/etc/ にあります。 DAQmx Baseで使用したいボードを見つけたら、 [DeviceList]セクションのその3行をコメントアウトする必要があります。セミコロン ( ; ) を使用して行をコメントアウトします。編集した INF ファイルを保存したら、変更を有効にするためにコンピューターを再起動する必要があります。ボードを再びDAQmxで使用できるようにするには、INFファイルを編集してこれらの行のコメントアウトを解除し、再起動します。

Linux用DAQmx 8.0でサポートされていないデバイス(USB、PCMCIAなど)は、DAQmx INFファイルでコメントアウトする必要はありません。これらのデバイスは DAQmx Base で自動的に動作します。

/usr/local/natinst/nidaqmx/etc/ にある INF ファイルのリスト:

  • nidaqmx_nidaq2.inf —E シリーズマルチファンクション DAQ
  • nidaqmx_nidaq3.inf —E シリーズマルチファンクション DAQ
  • nidaqmx_NIES9x.inf —E シリーズマルチファンクション DAQ
  • nidaqmx_NIXs9x.inf —M シリーズマルチファンクション DAQ
  • nidaqmx_NIDSA9x.inf —ダイナミック信号取得 (DSA)
  • nidaqmx_NISS9x.inf —S シリーズマルチファンクション DAQ
  • nidaqmx_NITIO9x.inf —TIO カウンター/タイマー
  • nidaqmx_NIWF9x.inf—波形生成
  • nidaqmx_NIDS9x.inf — 高速デジタル


DAQmx BaseでPCI-6251を使用できるようにするサンプルコード:
[Device List]
%PCIe-6251.dDesc0%=PCIe-6251.Cfg,PCI\VEN_1093&DEV_717D
%PCIe-6251.dDesc1%=PCIe-6251.Cfg,PCI\VEN_1093&DEV_717D&SUBSYS_00000000&REV_00
%PCIe-6251.dDesc2%=PCIe-6251.Cfg,PCI\VEN_1093&DEV_717D&SUBSYS_717D1093
;%PCI-6251.dDesc0%=PCI-6251.Cfg,PCI\VEN_1093&DEV_70B8
;%PCI-6251.dDesc1%=PCI-6251.Cfg,PCI\VEN_1093&DEV_70B8&SUBSYS_00000000&REV_00
;%PCI-6251.dDesc2%=PCI-6251.Cfg,PCI\VEN_1093&DEV_70B8&SUBSYS_70B81093

%PCI-6224.dDesc0%=PCI-6224.Cfg,PCI\VEN_1093&DEV_70F2
%PCI-6224.dDesc1%=PCI-6224.Cfg,PCI\VEN_1093&DEV_70F2&SUBSYS_00000000&REV_00
%PCI-6224.dDesc2%=PCI-6224.Cfg,PCI\VEN_1093&DEV_70F2&SUBSYS_70F21093

DAQmx 18.1以降

DAQmx 18.1以降とDAQmx Baseの両方がLinuxマシンにインストールされている場合、DAQボードは常にDAQmxドライバによって動作します。上記の 8.0.2 の回避策は、PXI/PCI デバイスでは機能しますが、USB デバイスでは機能しません。 DAQmx BaseでUSBデバイスを使用したい場合は、DAQmx 18.1以降をインストールしないでください。

追加情報

注:ダウンロードできるNI-DAQmxベースドライバの最終バージョンは15.0です。このドライバがサポートしているバージョンについては、 WindowsLinux、および macOSの互換性を確認してください。 2018年から、Linux用NI-DAQmxはNI Linuxデバイスドライバに含まれています。詳細については、 DAQmx ベース ドライバのサポート終了のお知らせに関するこちらの記事を参照してください。