counter + trigger

Простейшие вопросы в области инженерной разработки
Ответить
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

counter + trigger

Сообщение Artem.spb »

Второй день не могу решить простейшую задачу.
Надо запустить AI на 9205 и счёчик (энкодер) на 9401 одновременно. В сети все вариации вертятся вокруг использования частоты AI в качестве стартового триггера
daq.png
Но при запуске задача ругается, что она такой тип не поддерживает.
Пробовал старт по времени - тот же результат. Правда, я проверяю на эмуляторе, может в этом проблема?
Кто-нибудь может посоветовать решение?
Аватара пользователя
Andrew Lunev

Activity Professionalism
VIP
VIP
Сообщения: 957
Зарегистрирован: 11 дек 2010, 12:31
Награды: 2
Версия LabVIEW: 2014-2021
Откуда: Москва
Благодарил (а): 4 раза
Поблагодарили: 10 раз

Re: counter + trigger

Сообщение Andrew Lunev »

Мне кажется задачи для счетчиков на cDAQ в принципе не поддерживают стартовый триггер. Такое решение должно заработать на PCI или PXI платах NI, но cDAQ имеет много особенностей в работе.
Возможно заработает такой вариант, но как именно он работает я не очень понимаю. Скорее всего передача текущего угла из буфера модуля в буфер Labview будет синхронизирована с измерениями аналоговых сигналов. Но скорее всего именно это вам и нужно.
Вложения
DAQ2.PNG
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: counter + trigger

Сообщение Artem.spb »

Этот вариант я пробовал и он работает, но задачи стартуют не синхронно, поэтому первая точка напряжения не соответствует первому значению угла.
Аватара пользователя
Andrew Lunev

Activity Professionalism
VIP
VIP
Сообщения: 957
Зарегистрирован: 11 дек 2010, 12:31
Награды: 2
Версия LabVIEW: 2014-2021
Откуда: Москва
Благодарил (а): 4 раза
Поблагодарили: 10 раз

Re: counter + trigger

Сообщение Andrew Lunev »

Странно. Сам сигнал AI Sample Clock должен начать изменяться только после старта задачи AI. До старта задачи фронтов у этого сигнала не должно быть и измерения на счетчике не должны начаться. Тут важна именно последовательность запуска задач. Сначала должна стартовать задача счетчика (Slave) и потом AI (Master).
Вот пример из курса DAQ от NI.
DAQ3.PNG
Описание:
Задача аналогового вывода – главная
В задаче аналогового ввода в качестве источника импульсов синхронизации используется ao/SampleClock
Задача аналогового ввода запускается, но измерения не начинаются, т.к. еще нет импульсов аналогового вывода
Задача аналогового вывода запускается и начинает формировать последовательность импульсов отсчетов Sample Clock
Задача аналогового ввода по каждому фронту импульсов ao/SampleClock выполняет измерение

Если вдруг все равно не удастся добиться синхронности старта, то можно при первом чтении данных из буфера счетчика вычитать все данные и оставить одно последнее, оно скорее всего будет соответствовать первому из буфера AI. А дальше уже все измерения пойдут синхронно. Но в этом случае последовательность запуска задач должна быть обратной.
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: counter + trigger

Сообщение Artem.spb »

Andrew Lunev писал(а): 24 ноя 2020, 07:29 Странно. Сам сигнал AI Sample Clock должен начать изменяться только после старта задачи AI.
Мне тоже это странно. Теория говорит одно, а практика показывает другое. Хотя я тестирую через эмуляцию, а там результат может отличаться от реального. Но я проверяю вот так:
daqstart.png
Стартую задачу и проверяю наличие значений. Если я правильно понимаю, до старта мастера буфер должен быть пустым, а у меня получается, что там что-то есть.
можно при первом чтении данных из буфера счетчика вычитать все данные и оставить одно последнее, оно скорее всего будет соответствовать первому из буфера AI.
Вот это я не понял, почему они будут синхронными? пока оно там вычитает, пока всякие процессы пройдут, всё опять рассинхронизируется.
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: counter + trigger

Сообщение Artem.spb »

Вопрос закрыт. На реальном железе буфер пустой, так что метод использовать чужую тактовую частоту работает
Ответить

Вернуться в «Для чайников»