01-31-2013 01:01 AM
よろしくお願いします。
01-31-2013 06:55 PM
ishihamayutaro 様
弊社ディスカッションフォーラムをご利用頂きまして誠にありがとうございます。
日本ナショナルインスツルメンツ技術部の衞藤と申します。
ご投稿いただきましたVisual Basic 6.0 の件についてご連絡いたします。
まず、NI-DAQmxのインストール時に、カスタムインストールを選択して頂き、添付の箇所よりMicrosoft Visual Basic 6.0 サポートをインストールして下さいませ。すでにNI-DAQmxをインストールされている場合は、コントロールパネルよりNational InstrumentsソフトウェアよりNI-DAQmxを「変更」していただくことでもインストール可能です。その際にはDVDが必要になりますので、ご用意の上操作を行なって下さいませ。
また、下記に資料のリンクも載せておきますので、ご参照下さいませ。
Visual Basic 6.0 で NI-DAQmx を使ってプログラミングできますか
http://digital.ni.com/public.nsf/allkb/B77EBFB849F162CD86256F150048DBB1?OpenDocument
Visual Basic 6 プログラマのための NI-DAQmx 入門
http://www.ni.com/white-paper/13288/ja
上記内容に関しましてご不明な点等ございましたら、お手数ですが再度ご連絡願います。
宜しくお願いします。
日本ナショナルインスツルメンツ株式会社
衞藤 圭 (Kei Eto)
08-23-2021 11:36 PM
以前、以下のページ(現在は削除されたようです)
Visual Basic 6 プログラマのための NI-DAQmx 入門 - National Instruments
http://www.ni.com/white-paper/13288/ja/
に記載の有限収録のサンプルプログラムを用いてExcelのVBAでNI-DAQmx経由で
USB6001を制御していました。
以下がサンプルプログラムのコードです。
Function GetVoltages() As Double()
'サンプリングレート 1kS/sで 10点測定
Dim task As Long
Dim sampleCount As Long
Dim result(10) As Double
Dim size As Long
sampleCount = 10
DAQmxCreateTask "", task
DAQmxCreateAIVoltageChan task, "Dev1/ai0", "", _
DAQmx_Val_InputTermCfg_Diff, -5, 5, _
DAQmx_Val_VoltageUnits2_Volts, ""
DAQmx.DAQmxCfgSampClkTiming task, "OnboardClock", 1000, _
DAQmx_Val_Rising, _
DAQmx_Val_AcquisitionType_FiniteSamps, _
10
DAQmxReadAnalogF64 task, sampleCount, 10#, _
DAQmx_Val_GroupByChannel, result(0), _
sampleCount, size, ByVal 0&
DAQmxClearTask task
GetVoltages = result
End Function
以前はExcel16(32bit)で動いていたのですが、
Excel19(64bit)に変えたら動作しなくなりました。
何が原因でしょうか?