デジタル出力による外部トリガを使用した場合、アナログ入力が開始されない場合があります。
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
MathWorks Support Team
am 19 Aug. 2012
Bearbeitet: MathWorks Support Team
am 8 Aug. 2024
外部トリガを使用してアナログ入力または出力 (ANALOGINPUT または ANALOGOUTPUT) をスタートさせようとしています。外部トリガ信号はデジタル出力の DIGITALIO オブジェクトを使用します。
dio = digitalio('nidaq', 'Dev1');
addline(dio, 4, 'Out'); %Addline 4
putvalue(dio, 0); %Set value to Lo.
% Include code for creating and setting up AnalogOuput (AO) object
% Include code for creating and setting up AnalogInput (AI) object
start([ai ao]);
pause(1);
putvalue(dio, 0); %Set value to Lo again.
pause(1);
putvalue(dio, 1); %Set value to Hi.
pause(31);
[data,time]=getdata(ai,1*fs);
しかし、以下のようなエラーとなります。
ERROR:
??? A timeout occurred during GETDATA.
Error ==> NL_AM_sin_external_trigger_FreqMeasur2_stereo2_2chInput_NI at 457
[data,time]=getdata(ai,1*fs);
Error event occurred at 17:53:33 for the object: nidaqmxDev1-AI.
A timeout occurred during GETDATA.
原因や対策を教えてください。
Akzeptierte Antwort
MathWorks Support Team
am 8 Aug. 2024
Bearbeitet: MathWorks Support Team
am 8 Aug. 2024
外部トリガを使用する場合は ANALOGINPUT または ANALOGOUTPUT オブジェクト内の "TriggerType" プロパティを "HWDigital" に設定する必要があります。その際、データ取得開始の条件を "TriggerCondition" プロパティで設定します。
例えば、National Instruments (NI) 社製デバイスの場合、デフォルトの設定は "NegativeEdge" (立ち下り)になっていますので、必要に応じて設定します。この場合、DIGITALIO ラインを "1" に変更するだけではトリガは発生しません。この状態で GETDATA 関数をコールしてもデータ収集は開始されていませんので、所定の時間でタイムアウトになります。
トリガを確実に認識させ、データを収集するためには以下のどちらかを実行します。
1. "TriggerCondition" プロパティを "PositiveEdge" に変更し、DIGITALIO ラインを "0" から "1" に変更する。
2. "TriggerCondition" プロパティを "NegativeEdge" に変更し、DIGITALIO ラインを "1" から "0" に変更する。
putvalue(dio,1) %<------
start(ai)
putvalue(dio,0) %<------
getdata(ai,ai.sampleaavailable)
外部トリガ信号を使用する場合、上記の他にも以下をご確認ください。
・ 外部トリガのトリガ入力端子へ、トリガ信号の配線が接続されているかを確認します。また、トリガ信号が正常に送信されているかも確認します。
・ NI 社製デバイスで "HwDigital" を設定した場合、 "HwDigitalTriggerSource", "TriggerCondition", "TriggerConditionValue" プロパティの設定も必要になります。詳細は以下のヘルプをご覧ください。
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Analog Input and Output finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!