Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lesson 10.doc
Скачиваний:
14
Добавлен:
11.07.2019
Размер:
515.07 Кб
Скачать

Перенаправление сигналов и rtsi

Между подсистемами устройства существуют некоторые внутренние линии, которые позволяют передавать определенные сигналы между этими подсистемами. Мы уже видели ранее, как внутренний сигнал AI Start Trigger можно непосредственно подать на подсистемы аналогового ввода и вывода в устройствах Е-серии. Другие примеры подобного типа сигналов, – это выход счетчика 0, который может быть перенаправлен на: тактовый генератор аналогового ввода AI Sample Clock, триггер запуска аналогового ввода AI Start Trigger, или опорный триггер аналогового ввода AI Reference Trigger. Выход счетчика 1 можно непосредственно перенаправить на тактовый генератор аналогового вывода AO Sample Clock. Полный список перенаправляемых сигналов можно найти в справке к NI-DAQmx. Все остальные линии перенаправления сигналов создаются снаружи устройства посредством контактов PFI или RTSI.

NI-DAQmx управляет большинством перенаправлений между различными подсистемами. Вместо перенаправления сигнала с выхода тактового генератора аналогового вывода (AO Sample Clock) на контакт PFI для использования в задаче аналогового ввода, NI-DAQmx позволяет просто задать AO Sample Clock в качестве тактового генератора аналогового ввода (AI Sample Clock). При этом перенаправление будет сделано скрытно от ваших глаз.

В разделе NI-DAQmx Devices в MAX выберите ваше NI-DAQmx устройство. Таблица перенаправлений во вкладке Device Routes покажет перенаправления, доступные в пределах данного устройства, – в прямом и обратном направлениях. Перенаправления, которые могут быть сделаны непосредственно, такие как внутренняя линия, соединяющая выход счетчика 0 с AI Sample Clock, выделены зеленым цветом. Перенаправления между двумя терминалами, которые могут быть осуществлены только посредством RTSI линий или других подсистем, выделены желтым цветом. Когда перенаправление произведено драйвером, то все терминалы, участвующие в перенаправлении, резервируются для этого перенаправления. Удерживая клавишу <Shift> и одновременно щелкая правой кнопкой мыши на желтом или зеленом поле, можно отобразить линию, по которой осуществляется перенаправление. Следующий рисунок показывает часть таблицы перенаправлений для DAQ устройства PCI-MIO-16E-4.

Следующий рисунок показывает линию между AO Sample Clock и AI Sample Clock.

Системная шина взаимодействия в реальном масштабе времени (Real-Time System Integration - rtsi)

RTSI – внутренняя шина синхронизации, используемая для совместного доступа и обмена тактирующими и управляющими сигналами среди нескольких плат сбора данных. Шина представляет собой набор параллельных цифровых линий. Соединительный разъем шины обычно расположен в верхней части DAQ устройства. Преимущество RTSI состоит в том, что она позволяет программно управлять передачей цифровых сигналов для использования их в триггерах, тактовых генераторах и т.д. нескольких DAQ устройств или модулей PXI. В приложениях с синхронизацией шину RTSI можно использовать, чтобы позволить одной плате генерировать тактовый сигнал и сигнал запуска и передать их посредством шины в другие устройства.

Для регистрации RTSI кабеля в MAX щелкните правой кнопкой мыши на разделе NI-DAQmx Devices, выберите из контекстного меню Create New NI-DAQmx Device, и далее выберите RTSI Cable. RTSI кабель должен появиться внизу списка ваших NI-DAQmx устройств. Щелкните правой кнопкой мыши на опции RTSI cable и добавьте устройства, к которым он присоединен.

Упражнение 10-3. Настройка RTSI

Задача: Настроить RTSI кабель в MAX.

RTSI кабель наиболее часто используется для передачи сигналов из одного DAQ устройства в другое. Позже на этом занятии вы более подробно изучите синхронизацию нескольких устройств. Однако некоторые сигналы требуют, чтобы RTSI кабель был сконфигурирован и назначен устройству для их передачи в пределах одного DAQ устройства. Два из таких сигналов – это сигналы тактовых генераторов выборок аналогового вывода (AO Sample Clock) и аналогового ввода (AI Sample Clock), которые мы будем использовать в упражнении 10-4 для синхронизации задач аналогового ввода и вывода. При подготовке к этому упражнению вы должны вначале сконфигурировать RTSI кабель в MAX.

1. Запустите MAX, дважды щелкая на его иконке на рабочем столе или выбирая в LabVIEW Tools»Measurement & Automation Explorer.

2. В разделе Devices and Interfaces щелкните правой кнопкой мыши на разделе NI-DAQmx Devices.

3. Выберите из контекстного меню Create New NI-DAQmx Device»RTSI Cable.

4. RTSI кабель должен появиться после устройств NI-DAQmx и называться RTSI Cable: “RTSICable0”. Щелкните правой кнопкой мыши на этой записи и выберите Add Device to RTSI Cable из контекстного меню. Выберите ваше DAQ устройство.

Вы также можете щелкнуть правой кнопкой мыши на вашем NI-DAQmx устройстве, выбрать из контекстного меню Properties и далее выбрать RTSI кабель во вкладке RTSI

Configuration диалогового окна Device Properties, как показано на следующем рисунке.

Конец упражнения 10-3

Упражнение 10-4. Синхронизированные операции аналогового ввода и вывода

Задача: Выполнить синхронизированные операции аналогового ввода и вывода, совместно используя тактовый генератор аналогового ввода.

Для синхронной генерации и измерения аналоговых сигналов совместно используйте в задачах аналогового ввода и вывода какой-либо из тактовых генераторов: AO Sample Clock или AI Sample Clock.

1. Откройте ВП Simultaneous AI AO Start – SW, расположенный в директории C:\Exercises\LabVIEW DAQ.

2. Выберите File»Save As и сохраните ВП под именем Synchronized AI and AO.vi в директории C:\Exercises\LabVIEW DAQ.

Блок-диаграмма

3. Измените блок-диаграмму как показано на следующем рисунке.

Обратите внимание, что элемент управления частотой выборки должен совместно использоваться в задачах аналогового ввода и вывода для синхронизации тактирования между двумя задачами. Кроме этого, установите для входа источника тактирования операции аналогового ввода значение /Dev X/ao/SampleClock, где X соответствует номеру вашего DAQ устройства.

4. На испытательной коробке присоедините аналоговый выход 0 к аналоговому входу 1. А синусоидальный сигнал с функционального генератора подайте на аналоговый ввод 2.

5. Переключитесь на лицевую панель и для элементов управления введите следующие значения:

  • Физические каналы аналогового ввода: Dev X/ai1:2, где X соответствует номеру вашего DAQ устройства

  • Физические каналы аналогового вывода: Dev X/ao0, где X соответствует номеру вашего DAQ устройства

  • Частота выборки: 10000

  • тип сигнала: Square Wave

  • Частота: 100

6. Запустите ВП.

7. Остановите ВП. Сохраните и закройте ВП.

Конец упражнения 10-4

Использование внешних счетчиков

Существует ряд приложений, в которых необходимо выполнять операции со счетчиком одновременно с операциями аналогового ввода/вывода. Частыми примерами таких приложений являются использования счетчика в качестве внешнего тактового генератора выборок, или для выполнения аналоговых операций с перезапуском, или для запуска аналоговой операции после возникновения определенного числа триггерных событий, или же для сопоставления измерений числа событий с аналоговыми операциями.

Аналоговый ввод с использованием внешних тактовых импульсов, сгенерированных счетчиком

Счетчик можно использовать для генерации последовательности импульсов, конечной или непрерывной, которые будут выполнять функцию тактовых импульсов для операций аналогового ввода/вывода. Частоту импульсов в последовательности, сгенерированной счетчиком, можно менять «на лету», что позволяет соответственно менять частоту операции аналогового ввода или вывода. Настройте счетчик для непрерывной генерации последовательности импульсов. Установите внутренний выход счетчика в качестве источника тактовых импульсов выборки аналогового ввода сигнала.

Примечание. Частоту тактового генератора операций аналогового вывода (AO Sample Clock) можно изменять «на лету». Поэтому во время выполнения программы нет никакой необходимости использовать счетчик для изменения частоты генерации аналогового сигнала.

Упражнение 10-5. Аналоговый ввод: использование внешних тактовых импульсов, сгенерированных счетчиком.

Задача: Создать ВП, использующий счетчик для генерации последовательности импульсов, которые, в свою очередь, будут использоваться для тактирования операции аналогового сбора данных.

В данном упражнении счетчик создает последовательность импульсов, которые играют роль тактовых импульсов выборки при аналоговом вводе сигнала. Поскольку частоту импульсов счетчика можно менять «на лету», то во время работы ВП вы можете изменять частоту сбора данных.

Блок-диаграмма

1. Откройте новый ВП и постройте следующую блок-диаграмму.

После создания константы на входе source ВП DAQmx Timing, щелкните правой кнопкой мыши на ней и выберите I/O Name Filtering из контекстного меню. Выделите опцию Include Advanced Terminals и нажмите кнопку OK для выхода из диалогового окна Filter Names. Эта операция позволит вам выбрать /Dev X/Ctr0InternalOutput, где X соответствует номеру вашего DAQ устройства.

2. Сохраните ВП под именем AI - External Clock from Counter.vi в директории C:\Exercises\LabVIEW DAQ.

3. Подайте синусоидальный сигнал с функционального генератора на аналоговый ввод 1.

4. На лицевой панели установите следующие значения для элементов управления:

  • Физические каналы: Dev X/ai1, где X соответствует номеру вашего DAQ устройства

  • Счетчик: Dev X/ctr0, где X соответствует номеру вашего DAQ устройства

  • Частота: 1000

  • #выборок на канал: 200

5. Запустите ВП.

6. Увеличьте частоту и снова запустите ВП. При этом увеличится число выборок, получаемых каждую секунду.

7. Сохраните и закройте ВП.

Конец упражнения 10-5

Аналоговые операции с перезапуском

Операции аналогового ввода и вывода не могут перезапускаться аппаратно. Аппаратный перезапуск позволяют выполнять только счетчики. Для программной имитации аналоговой операции с перезапуском настройте задачу таким образом, чтобы она реагировала на триггер, а затем программно перенастройте данную операцию после ее окончания. Перенастройка задачи позволит ей реагировать на следующий триггер. Однако время, требуемое на программную перенастройку данной операции, полностью зависит от системы, и может случиться так, что устройство пропустит следующий триггер, если оно не перенастроится достаточно быстро.

Поскольку операции со счетчиками допускают перезапуск, их можно применить для операций аналогового ввода/вывода с перезапуском. С этой целью используются два счетчика, создающих ограниченную последовательность импульсов с перезапуском, которая затем будет использоваться в качестве тактовых импульсов для операции аналогового ввода. Первый счетчик настроен для создания непрерывной последовательности импульсов, а второй – для генерации импульса перезапуска конечной длительности (как мы уже делали в упражнении 9-5). Этот импульс используется для разрешения или приостановки непрерывной генерации первого счетчика. Следовательно, когда возникает триггер, второй счетчик создает импульс конечной длительности, разрешающий непрерывную генерацию импульсов первому счетчику до тех пор, пока импульс разрешения находится в высоком состоянии.

Следующий пример демонстрирует выполнение аналогового сбора данных с перезапуском с использованием счетчиков. Вы не должны явно устанавливать один счетчик для генерации непрерывной последовательности, а второй для генерации импульса конечной длительности с перезапуском. NI-DAQmx сделает эти настройки самостоятельно, когда ваш ВП настроит один счетчик на генерацию импульсной последовательности конечной длительности и будет использовать узел свойств, чтобы обеспечить перезапуск.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]