주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

NI 장치를 사용하여 전압 신호 생성

이 예제에서는 National Instruments™ 장치를 사용하여 데이터를 생성하는 방법을 보여줍니다.

전압을 출력할 수 있는 장치 발견 검색

아날로그 출력을 지원하는 장치를 검색하려면 daqlist 명령에서 반환된 테이블에 있는 장치에 액세스합니다. 이 예제에서는 National Instruments® CompactDAQ Chassis NI cDAQ-9178에서 NI 9263 모듈을 사용합니다. 이것은 섀시의 모듈 2입니다.

d = daqlist("ni")
d =

  12×4 table

     DeviceID                 Description                    Model             DeviceInfo     
    ___________    __________________________________    _____________    ____________________

    "cDAQ1Mod1"    "National Instruments NI 9205"        "NI 9205"        [1×1 daq.DeviceInfo]
    "cDAQ1Mod2"    "National Instruments NI 9263"        "NI 9263"        [1×1 daq.DeviceInfo]
    "cDAQ1Mod3"    "National Instruments NI 9234"        "NI 9234"        [1×1 daq.DeviceInfo]
    "cDAQ1Mod4"    "National Instruments NI 9201"        "NI 9201"        [1×1 daq.DeviceInfo]
    "cDAQ1Mod5"    "National Instruments NI 9402"        "NI 9402"        [1×1 daq.DeviceInfo]
    "cDAQ1Mod6"    "National Instruments NI 9213"        "NI 9213"        [1×1 daq.DeviceInfo]
    "cDAQ1Mod7"    "National Instruments NI 9219"        "NI 9219"        [1×1 daq.DeviceInfo]
    "cDAQ1Mod8"    "National Instruments NI 9265"        "NI 9265"        [1×1 daq.DeviceInfo]
    "Dev1"         "National Instruments PCIe-6363"      "PCIe-6363"      [1×1 daq.DeviceInfo]
    "Dev2"         "National Instruments NI ELVIS II"    "NI ELVIS II"    [1×1 daq.DeviceInfo]
    "Dev3"         "National Instruments PCIe-6363"      "PCIe-6363"      [1×1 daq.DeviceInfo]
    "Dev4"         "National Instruments PCIe-6363"      "PCIe-6363"      [1×1 daq.DeviceInfo]

deviceInfo = d{2, "DeviceInfo"}
deviceInfo = 

ni: National Instruments NI 9263 (Device ID: 'cDAQ1Mod2')
   Analog output supports:
      -10 to +10 Volts range
      Rates from 0.6 to 100000.0 scans/sec
      4 channels ('ao0','ao1','ao2','ao3')
      'Voltage' measurement type
   
This module is in slot 2 of the 'cDAQ-9178' chassis with the name 'cDAQ1'.


DataAcquisition을 생성하고 아날로그 출력 채널을 추가합니다.

DataAcquisition을 생성하고 Rate 속성(디폴트는 1000 스캔/초)을 설정하여 생성 스캔 속도를 설정하고 addoutput를 사용하여 아날로그 출력 채널을 추가합니다.

dq = daq("ni");
dq.Rate = 8000;
addoutput(dq, "cDAQ1Mod2", "ao0", "Voltage");
addoutput(dq, "cDAQ1Mod2", "ao1", "Voltage");

단일 스캔 생성

write를 사용하여 단일 스캔(각 채널에 2V)을 생성합니다. 출력 스캔 데이터는 1xN 행렬이며, 여기서 N은 출력 채널 수에 해당합니다.

output = 2;
write(dq,[output output]);

출력 데이터 생성 및 플로팅

두 개의 출력 신호(1Hz 사인파와 1Hz 램프)를 생성하고 이를 그래프로 표시합니다. 이 그래프는 동시 샘플링을 지원하는 장치에서 두 채널 모두에서 생성된 데이터를 보여줍니다.

n = dq.Rate;
outputSignal1 = sin(linspace(0,2*pi,n)');
outputSignal2 = linspace(-1,1,n)';
outputSignal = [outputSignal1 outputSignal2];
plot(1:n, outputSignal);
ylabel("Voltage (V)");
legend("Analog Output 0", "Analog Output 1");

데이터 쓰기

write를 사용하여 출력 파형을 생성합니다.

write(dq, outputSignal)