在 Python 中 Export DAQmx Signal

更新 Jan 2, 2025

環境

驅動程式

  • NI-DAQmx

程式語言

  • Python

我已經使用適用於 Python 的 Python DAQmx API 設置了資料擷取任務(data acquisition  task),請問該如何從裝置導出觸發訊號,例如 Start Trigger 訊號?

為了從 DAQmx 任務導出 clock 或 trigger 信號,必須使用 “export_signal ( signal_id , output_terminal )”。

請參考 DAQmx python API文檔

因此,clock 或 trigger 訊號將被導出到 PXI 或 RTSI 觸發線,具體取決於所使用的裝置,請參考範例部份中的範例程式碼。

在這個範例程式碼片段中,Analog Input Task (類比訊號輸入任務)的 Start Trigger 被導出到 PXI-Trigger 0:

import pprint
import nidaqmx

pp = pprint.PrettyPrinter(indent=4)


with nidaqmx.Task() as task:
    task.ai_channels.add_ai_voltage_chan("Dev1/ai0")
    task.export_signals.export_signal(signal_id=nidaqmx.constants.Signal.START_TRIGGER,
    output_terminal="Dev1//PXI_Trig0")

    print('1 Channel 1 Sample Read: ')
    data = task.read()
    pp.pprint(data)

    data = task.read(number_of_samples_per_channel=1)
    pp.pprint(data)

    print('1 Channel N Samples Read: ')
    data = task.read(number_of_samples_per_channel=8)
    pp.pprint(data)