Проблема блока приема данных DAQ Assistance
-
- interested
- Сообщения: 5
- Зарегистрирован: 28 мар 2013, 10:59
- Версия LabVIEW: 2010
- Контактная информация:
Проблема блока приема данных DAQ Assistance
Блок приема данных DaQ Assistance позволяет принимать сигналы согласно задаваемой в нем изначально выборке (соотношение количества сэмплов и частоты). Если необходимо непосредственно в режиме реального времени принимать определенные 2 сигнала (например, ток и напряжение), обрабатывать их (например, рассчитывать энергию ) и в определенный момент времени по оператору достижения определенного значения энергии нам необходимо прекратить прием сигналов и перейти на следующий цикл, то какие операторы необходимо задействовать? Этот вопрос связан с тем, что обычный блок приема данных DAQ Assistance не позволяет в режиме реального времени принимать сигнал и тут же его обрабатывать, т.е. после приема сигнала, например, на частоте приема 1кГц и 1000 сэмплах выборка приема сигнала составляет 1 с. Т.е., какой бы дальше не шел расчет, он будет обсчитывать ровно 1 с сигнала и раньше не при каком условии не перепрыгнет на следующий цикл.
Пожалуйста, подскажите что делать. В долгу не останусь!
Пожалуйста, подскажите что делать. В долгу не останусь!
- Super Star
- adviser
- Сообщения: 228
- Зарегистрирован: 07 фев 2013, 08:37
- Версия LabVIEW: 2011
Re: Проблема блока приема данных DAQ Assistance
Спасибо за отличную новость!
я люблю свою работу.... Я приду сюда в субботу ...
-
Andrew Lunev
- VIP
- Сообщения: 957
- Зарегистрирован: 11 дек 2010, 12:31
- Награды: 2
- Версия LabVIEW: 2014-2021
- Откуда: Москва
- Благодарил (а): 4 раза
- Поблагодарили: 10 раз
Re: Проблема блока приема данных DAQ Assistance
Сначала прочитать книжку "LabVIEW для всех", потом очень желательно пройти курс "Системы сбора данных" в NI. Потом уже приступать к программированию.DRUP2008 писал(а):Пожалуйста, подскажите что делать. В долгу не останусь!
Ну а если хотите обрабатывать сигнал по одной точке выборки, то и поставьте длину выборки равной одной точке. Тогда на частоте 1кГц будете получать по одной точке тысячу раз в секунду. Только боюсь, что производительности всей этой связки не хватит, чтобы работать на такой частоте по одной точке.
-
- interested
- Сообщения: 5
- Зарегистрирован: 28 мар 2013, 10:59
- Версия LabVIEW: 2010
- Контактная информация:
Re: Проблема блока приема данных DAQ Assistance
Проблема не в том, что я не читал эту элементарную книжку. Проблема в том, что в конкретной созданной блок-диаграмме необходимо одновременно и принимать 2 сигнала и обрабатывать их (а в нужный момент прекращать расчет, т.е. прерывать прием сигналов), а блок DAQ Assistance после приема сигналов на расчет отправляет определенную по длительности выборку, которую вы задаете ее изначально в блоке DAQ. Если задать 1 сэмпл в измерение, то и на расчет будет отправляться выборка, соответствущая одному сэмплу. Какой бы дальше не шел расчет, этот расчет будет производится на одном сэмпле выборки. В книгах по LABVIEW ничего не сказано про возможность замены блока приема сигналов DAQ Assistance на какой либо другой блок, который позволил бы принимать, обрабатывать и прекращать расчет сигналов в нужный момент (реальное время), а не ждать, пока пройдет вся заданная выборка.
-
- interested
- Сообщения: 5
- Зарегистрирован: 28 мар 2013, 10:59
- Версия LabVIEW: 2010
- Контактная информация:
Re: Проблема блока приема данных DAQ Assistance
Главный вопрос: "Есть ли в более поздних версиях LABVIEW возможность замены принимающего сигналы блока DAQ Assistance на другие блоки, в которых не надо было бы задавать выборку приема сигнала и которые бы снимали сигналы постоянно с момента включения, и чтобы прием можно было прервать в определенный момент времени".
Я конечно не самый продвинутый пользователь LABVIEW, но если у кого то есть решение или предложение, то помогите. Это же не самый сложный вопрос. Мне не поможет в конкретной ситуации агитация каких-то курсов и т.д. Важно решение в конкретном случае.
Я конечно не самый продвинутый пользователь LABVIEW, но если у кого то есть решение или предложение, то помогите. Это же не самый сложный вопрос. Мне не поможет в конкретной ситуации агитация каких-то курсов и т.д. Важно решение в конкретном случае.
-
Vasiliy Baev
- leader
- Сообщения: 545
- Зарегистрирован: 31 окт 2011, 09:02
- Награды: 4
- Версия LabVIEW: 2019
- Откуда: Санкт-Петербург
- Благодарил (а): 9 раз
- Поблагодарили: 10 раз
- Контактная информация:
Re: Проблема блока приема данных DAQ Assistance
DRUP2008, Ваша программа должна состоять из блоков
1. DAQmx Create Virtual Chanel
В нем Вы указываете параметры канала: физический адрес, диапазон,..
2. DAQmx timing
Тут указывается режим сбора! Либо забираем данные пачкой (используется при больших частотах, для оптимизации расхода ресурсов на обработку), либо собираем 1 точку. В этом блоке указываются и другие параметры, вся информация в хелпе.
3. DAQmx Start Task
4. Блок чтения (в цикле while)
5. Блок закрытия задачи после цикла.
Полученные данные лучше отправлять по очереди в цикл обработки, а далее вывод на экран.
С телефона программу нарисовать не могу:-)
1. DAQmx Create Virtual Chanel
В нем Вы указываете параметры канала: физический адрес, диапазон,..
2. DAQmx timing
Тут указывается режим сбора! Либо забираем данные пачкой (используется при больших частотах, для оптимизации расхода ресурсов на обработку), либо собираем 1 точку. В этом блоке указываются и другие параметры, вся информация в хелпе.
3. DAQmx Start Task
4. Блок чтения (в цикле while)
5. Блок закрытия задачи после цикла.
Полученные данные лучше отправлять по очереди в цикл обработки, а далее вывод на экран.
С телефона программу нарисовать не могу:-)
Последний раз редактировалось Vasiliy Baev 29 мар 2013, 08:32, всего редактировалось 1 раз.
-
alerm
- leader
- Сообщения: 683
- Зарегистрирован: 02 май 2012, 21:28
- Награды: 1
- Версия LabVIEW: 20
- Благодарил (а): 59 раз
- Поблагодарили: 9 раз
- Контактная информация:
Re: Проблема блока приема данных DAQ Assistance
1) что делает данная тема в этом разделе?
2) чем, собственно, не устраивает выборка длиной в 1 семпл?
одновременно принимать и обрабатывать невозможно, не ломайте причинно-следственные связи
сперва принимаем, потом обрабатываем
берем цикл -> загоняем туда DAQ Assistance или DAQmx Read -> берем по одному семплу -> с простой обработкой цикл будет совершать итерацию за 4-5 мс -> будет казаться что непрерывно -> по определенному триггеру завершаем цикл -> вуаля?
2) чем, собственно, не устраивает выборка длиной в 1 семпл?
одновременно принимать и обрабатывать невозможно, не ломайте причинно-следственные связи
сперва принимаем, потом обрабатываем
берем цикл -> загоняем туда DAQ Assistance или DAQmx Read -> берем по одному семплу -> с простой обработкой цикл будет совершать итерацию за 4-5 мс -> будет казаться что непрерывно -> по определенному триггеру завершаем цикл -> вуаля?
-
Andrew Lunev
- VIP
- Сообщения: 957
- Зарегистрирован: 11 дек 2010, 12:31
- Награды: 2
- Версия LabVIEW: 2014-2021
- Откуда: Москва
- Благодарил (а): 4 раза
- Поблагодарили: 10 раз
Re: Проблема блока приема данных DAQ Assistance
А вы ее читали, чтобы решать в этом проблема или нет?DRUP2008 писал(а):Проблема не в том, что я не читал эту элементарную книжку.
В этих книжках как раз написано, что DAQ Assistant реализует лишь очень малую часть возможностей по сбору данных. И для тех, кому его мало надо использовать из палитры DAQmx, с ней можно реализовать практически все, что может плата. Как же вы читали книжку, но никогда не слышали про DAQmx?DRUP2008 писал(а):В книгах по LABVIEW ничего не сказано про возможность замены блока приема сигналов DAQ Assistance на какой либо другой блок, который позволил бы принимать, обрабатывать и прекращать расчет сигналов в нужный момент (реальное время), а не ждать, пока пройдет вся заданная выборка.
-
- interested
- Сообщения: 5
- Зарегистрирован: 28 мар 2013, 10:59
- Версия LabVIEW: 2010
- Контактная информация:
Re: Проблема блока приема данных DAQ Assistance
В данной книжке описано создание виртуальных каналов приема данных в NI MAX на ломаном языке, понятном, скорее всего, только программистам, но, так как я не являюсь программистом, то меня интересует решение ситуации: "У меня создана блок-диаграмма: 1. DAQ Assistant, принимающий 2 независимых аналоговых сигнала напряжения с датчиков тока и напряжения; 2. С выхода блока DAQ Assistant далее идет канал с принятыми сигналами на блок расчета энергии, в котором стоит оператор сравнения с требуемым значением энергии, по достижении которой блок DAQ Assistance должен выключиться или должен начаться следующий цикл в кадре в нужный момент времени (достижение требуемой энергии), а не после выдержки всех принятых сэмплов, заданных при приеме сигнала. Я не могу понять основную последовательность и необходимость создания виртуальных каналов в DAQmx Create channel, т.к. в литературе она не описана. В книгах говориться только кратко о том, что создаются виртуальные каналы, а как вывести индикацию с них сигналов и обработать их дальше, увязать с DAQmx Time и DAQmx Start Task, ничего не сказано". Главная причина моего непонимания в том, что нигде нет подробного объяснения, чем принципиально отличается DAQmx Create channel от DAQ Assistance и на каком поле работать с блоками DAQmx. При работе с DAQ Assistance все просто - создал новый Blanc VI, нажал Show block diagram, вставил на поле блок DAQ Assistance, настроил его, нажал ОК, далее с его выхода DAta вывел поток сигналов и дальше вставил расчет, например, энергии вместе с индикаторами, графиками и т.д. Блок DAQmx можно добавить на это же поле, но в его настройки можно зайти только при создании какого-то проекта и виртуального канала".
Может быть кто-нибудь сможет внятно объяснить, в чем суть DAQmx.
Может быть кто-нибудь сможет внятно объяснить, в чем суть DAQmx.
-
Andrew Lunev
- VIP
- Сообщения: 957
- Зарегистрирован: 11 дек 2010, 12:31
- Награды: 2
- Версия LabVIEW: 2014-2021
- Откуда: Москва
- Благодарил (а): 4 раза
- Поблагодарили: 10 раз
Re: Проблема блока приема данных DAQ Assistance
LabView - язык программирования. Чтобы в нем писать (рисовать) все равно надо знать основы программирования, от этого никуда не уйдешь. И нужно знать сам язык. В курсе "Системы сбора данных" 80% посвящено как раз построению систем измерений с помощью функций DAQmx. Если не хотите на курсы идти, то хотя бы поищите в инете учебник по этим курсами почитайте его. В книге "LabVIEW для всех" 11 глава полностью посвящена функциям DAQmx с их подробным описанием. Не понимаю как вы ищите, но не находите.
Объяснять на форуме, как работают эти функции это практически переписать учебник. Никто здесь это делать не будет.
Если хотите, чтобы вам помогли, то выложите код, который уже написали. Укажите, что в нем работает не так, как вам хочется.
Объяснять на форуме, как работают эти функции это практически переписать учебник. Никто здесь это делать не будет.
Если хотите, чтобы вам помогли, то выложите код, который уже написали. Укажите, что в нем работает не так, как вам хочется.
-
Vasiliy Baev
- leader
- Сообщения: 545
- Зарегистрирован: 31 окт 2011, 09:02
- Награды: 4
- Версия LabVIEW: 2019
- Откуда: Санкт-Петербург
- Благодарил (а): 9 раз
- Поблагодарили: 10 раз
- Контактная информация:
Re: Проблема блока приема данных DAQ Assistance
Краткое описание функций DAQmx на английском http://www.ni.com/white-paper/2835/en
Для перехода между этапами/состояниями приложения используйте Конечный автомат - State machine
http://www.caitoctroy.ru/labview.html?start=119
Для перехода между этапами/состояниями приложения используйте Конечный автомат - State machine
Код: Выделить всё
Питер Блюм "LabVIEW: Стиль программирования" стр. 283
Основы LabVIEW Часть 1 стр. 199
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 13 Ответы
- 1230 Просмотры
-
Последнее сообщение Boxa
-
- 1 Ответы
- 502 Просмотры
-
Последнее сообщение alerm
-
- 3 Ответы
- 877 Просмотры
-
Последнее сообщение IvanLis
-
- 0 Ответы
- 505 Просмотры
-
Последнее сообщение Juri
-
- 3 Ответы
- 272 Просмотры
-
Последнее сообщение AndreyDmitriev