В этом примере показано, как получать синхронизированные данные с двух устройств PCI. Синусоидальная волна подключена к каналу 0 NI PCI-6251 и к каналу 0 NI PCIe-6363. Синхронизированная работа проверяется путем демонстрации запаздывания нулевой фазы между полученными сигналами.
Создайте DataAcquisition и добавьте каналы ввода аналогового входного напряжения от устройств NI PCI-6251 и NI PCIe-6363.
dd = daq("ni"); addinput(dd,"Dev3","ai0","Voltage"); addinput(dd,"Dev4","ai0","Voltage");
Используйте read для запуска сбора данных.
[data,time] = read(dd,seconds(1),"OutputFormat","Matrix"); plot(time, data)

Имеется небольшое фазовое отставание между двумя канальными входами. DataAcquisition запускает два канала близко друг к другу, но устройства не совместно используют информацию о часах и триггерах и поэтому не полностью синхронизированы.
Подключите устройства PCI с помощью кабеля RTSI ® (Real-Time System Integration) и зарегистрируйте его в программе Measurement & Automation Explorer ®. Чтобы синхронизировать получение, разделите часы сканирования и запустите триггер между двумя устройствами.
Выберите исходные и конечные устройства
Устройство, которое обеспечивает сигналы управления и синхронизации, называется устройством источника, а устройство, которое принимает эти сигналы, называется устройством назначения. В этом примере: Dev3 является исходным устройством и Dev4 является устройством назначения.
Кабель RTSI создает физическое соединение между RTSI0 терминал включен Dev3 и RTSI0 терминал включен Dev4. Используйте это подключение для совместного использования триггера запуска между исходным и конечным устройствами.
Использовать addtrigger для добавления цифрового триггера запуска из 'RTSI0/PFI3' (источник) в 'RTSI0/Dev4' (пункт назначения).
addtrigger(dd,"Digital","StartTrigger","Dev3/RTSI0","Dev4/RTSI0");
Использовать addclock для совместного использования часов сканирования с помощью RTSI1 терминальное соединение.
addclock(dd,"ScanClock","Dev3/RTSI1","Dev4/RTSI1");
Использовать read для получения данных.
[data,time] = read(dd,seconds(1)); plot(time,data)

Две синусоидальные волны перекрываются с нулевым фазовым запаздыванием, подтверждая, что устройства полностью синхронизированы.