Этот пример показывает, как считать в данных из использования термопар устройства NI, которые поддерживают измерения термопары с помощью основанного на сеансе интерфейса.
Чтобы обнаружить устройство, которое поддерживает Термопары, кликните по имени устройства в списке в Командном окне или получите доступ к устройству в массиве, возвращенном командой daq.getDevices
. Этот пример использует устройство NI 9213. Это - 16 модулей термопары канала и является устройством 6 в нашей системе.
devices = daq.getDevices devices(6)
devices = Data acquisition devices: index Vendor Device ID Description ----- ------ --------- -------------------------------- 1 ni cDAQ1Mod1 National Instruments NI 9205 2 ni cDAQ1Mod2 National Instruments NI 9263 3 ni cDAQ1Mod3 National Instruments NI 9234 4 ni cDAQ1Mod4 National Instruments NI 9201 5 ni cDAQ1Mod5 National Instruments NI 9402 6 ni cDAQ1Mod6 National Instruments NI 9213 7 ni cDAQ1Mod7 National Instruments NI 9219 8 ni cDAQ1Mod8 National Instruments NI 9265 9 ni Dev1 National Instruments PCIe-6363 10 ni Dev2 National Instruments NI ELVIS II ans = ni: National Instruments NI 9213 (Device ID: 'cDAQ1Mod6') Analog input subsystem supports: -0.078 to +0.078 Volts range Rates from 0.1 to 1351.4 scans/sec 16 channels ('ai0' - 'ai15') 'Voltage','Thermocouple' measurement types This module is in slot 6 of the 'cDAQ-9178' chassis with the name 'cDAQ1'.
Создайте сеанс, и добавьте канал аналогового входа с типом измерения Thermocouple
и измените Rate
на четыре сканирования в секунду.
s = daq.createSession('ni'); addAnalogInputChannel(s,'cDAQ1Mod6',0, 'Thermocouple'); s.Rate = 4
s = Data acquisition session using National Instruments hardware: Will run for 1 second (4 scans) at 4 scans/second. Number of channels: 1 index Type Device Channel MeasurementType Range Name ----- ---- --------- ------- --------------- ----------------- ---- 1 ai cDAQ1Mod6 ai0 Voltage (Diff) 0 to +750 Celsius
Много свойств сконфигурированы на каналах индивидуально. Можно получить доступ к каналам через свойство Channels
и видеть список свойств и возможных значений при помощи команды set
.
tc = s.Channels(1); set(tc)
Units: [ Celsius | Fahrenheit | Kelvin | Rankine ] ThermocoupleType: [ Unknown | J | K | N | R | S | T | B | E ] Coupling: [ DC | AC ] TerminalConfig: [ Differential | SingleEnded | SingleEndedNonReferenced | PseudoDifferential ] Range: 0 to +750 Celsius Name: {}
В этом примере, набор тип термопары к K и модули Келвину. Убедитесь, что вы совпадаете с типом термопары к своей настройке датчика.
tc.ThermocoupleType = 'K'; tc.Units = 'Kelvin';
Для быстрых сводных данных типа канала
tc
tc = Data acquisition analog input voltage channel 'ai0' on device 'cDAQ1Mod6': Units: Kelvin ThermocoupleType: K Coupling: DC TerminalConfig: Differential Range: +73 to +1523 Kelvin Name: '' ID: 'ai0' Device: [1x1 daq.ni.CompactDAQModule] MeasurementType: 'Voltage'
Используйте команду startForeground
, чтобы запустить приобретение.
[data,time] = s.startForeground(); plot(time, data) xlabel('Time (secs)'); ylabel('Temperature (Kelvin)');