Этот пример показывает, как получить температурные данные из Резистивного температурного устройства (RTD) и отобразить показания. Устройство присоединяется в Корпусе компьютера, чтобы контролировать внутренние изменения температуры.
Чтобы обнаружить устройство, которое поддерживает RTDs, кликните по имени устройства в списке в Командном окне или получите доступ к устройству в массиве, возвращенном командой daq.getDevices. Этот пример использует модуль NI 9219 в Национальном Instruments® CompactDAQ Chassis NI cDAQ-9178. Это - 24-битный Универсальный модуль Аналогового входа и является модулем 7 в нашем шасси.
devices = daq.getDevices devices(7)
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 9219 (Device ID: 'cDAQ1Mod7')
Analog input subsystem supports:
9 ranges supported
Rates from 0.1 to 100.0 scans/sec
4 channels ('ai0','ai1','ai2','ai3')
'Voltage','Current','Thermocouple','RTD','Bridge' measurement types
This module is in slot 7 of the 'cDAQ-9178' chassis with the name 'cDAQ1'.
Создайте сеанс и добавьте канал аналогового входа с типом измерения RTD.
s = daq.createSession('ni'); addAnalogInputChannel(s,'cDAQ1Mod7',3, 'RTD');
Warning: The Rate property was reduced to 100 due to changes in the session configuration.
Обратитесь к таблице данных датчика и совпадайте со значениями соответственно. В этом примере используется датчик серии SA1-RTD от Omega®.
Установите следующие значения:
Температурные модули к 'Fahrenheit'.
RTD вводят к 'Pt3851'.
Сконфигурируйте схему RTD как 'FourWire'.
Установите сопротивление 100 Омам.
s.Channels.Units = 'Fahrenheit'; s.Channels.RTDType = 'Pt3851'; s.Channels.RTDConfiguration = 'FourWire'; s.Channels.R0 = 100;
Установите сеанс получать 30 сканирований в секунду.
Установите ADCTimingMode на 'HighSpeed'.
По умолчанию режим ADCTimingMode синхронизации ADC канала установлен в 'HighResolution'. Контакт с приобретением высокого разрешения требует более длительного времени вычислений; модуль NI 9219 ограничивает уровень сбора данных максимумом 2. В порядке увеличить уровень ADCTimingMode установлен в 'HighSpeed'
s.Channels.ADCTimingMode = 'HighSpeed';
s.Rate = 30;
Используйте команду startForeground, чтобы запустить приобретение.
[data,time] = s.startForeground(); plot(time, data) xlabel('Time (secs)'); ylabel('Temperature (Fahrenheit)');
