Непрерывный DO + AI

Захват, обработка и генерирование сигнала
asd1379
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 апр 2013, 14:53
Версия LabVIEW: 2010
Контактная информация:

Re: Непрерывный DO + AI

Сообщение asd1379 »

vova1306 писал(а):4. В какой-то момент (при разных частоте и размере буфера по разному) появляется такая ошибка:
Attempted to read samples that are no longer available. The requested sample was previously available, but has since been overwritten.
Increasing the buffer size, reading the data more frequently, or specifying a fixed number of samples to read instead of reading all available samples might correct the problem.
Сталкивался с той же ошибкой, хоть и с трудом, но нашёл выход. Насколько я понял данная ошибка возникает из-за того, что программа не успевает считывать все полученные данные.
Я не могу открыть ваш файл и посоветовать что-то конкретное, т.к. он сохранен в 12-м LV.
Но на англоязычном форуме сайта NI по этой теме читал такие советы (может вам поможет):
1) если сбор данных производите в режиме Continuous Samples, то размер буфера = вашему samples per channel. Можно увеличить этот показатель, т.е. «Increasing the buffer size». Лично мне это не помогло, просто ошибка стала выскакивать спустя больший промежуток времени.
2) В DAQmx Read увеличить number of samples per channel (это к вопросу «specifying a fixed number of samples to read»). Но при этом изменилась работа цикла while, длительность итераций возросло, что мне тоже не подошло.
3) Увеличить скорость работы программы как, чтобы она успевала считывать все полученные данные. Именно это мне и пришлось сделать. Попробуйте сами убрать всё, кроме сбора данных через DAQmx. Если будет работать, значит, дело в этом. Сохраняйте все в более ранней версии, выкладывайте и спрашивайте, может получится оптимизировать.

И еще, поделюсь одним приёмом, который лично мне, равно как и советы от Andrew Lunev, помог сконфигурировать прием данных через DAQmx (только вам понадобится плата). Откройте в новом файле DAQ Assistant с палитры Express. Настройте его под ваши задачи и сохраните изменения. Запустите и проверьте работоспособность. Далее правая клавиша мыши по DAQ Assistant и Open Front Panel. Таким образом сможете глянуть как сам LabVIEW сконфигурировал приём данных.
vova1306
beginner
beginner
Сообщения: 14
Зарегистрирован: 19 апр 2013, 12:57
Версия LabVIEW: 2012
Контактная информация:

Re: Непрерывный DO + AI

Сообщение vova1306 »

asd1379,
Спасибо за отклик!
1. Записал программу в версии 8.5.
2. 1)-2) уже пробовал - ничего не помогает.
3. 3)- Вы же видите в программе, кроме приёма данных и вывода на экран (графического и табличного) ничего нет.
4. Не совсем понял, да и платы у меня пока нет. Не могли ли Вы на своём оборудовании попробовать и выложить здесь полученный результат? Только частоту опроса надо поставить 1 мГц (с f=5кГц как у Вас у меня тоже проблем нет).
5. Может Вы нашли в электронном виде две вышеуказанные книги? Или другие по системам сбора данных с помощью LabView (на русском языке и с примерами).
Вложения
MySample2_ver_8_5.vi
(63.99 КБ) 113 скачиваний
Аватара пользователя
Andrew Lunev

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

Re: Непрерывный DO + AI

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

Уберите табличный вывод на экран. Эта ошибка действительно возникает тогда, когда ваш цикл чтения данных не успевает выполниться за 0,1 секунды. То есть все упирается в быстродействие. Так что или компьютер мощней нужен или убирайте лишние функции из цикла сбора данных. Build Table Express VI делает огромное кол-во преобразований внутри себя, и раз производительности не хватает, то замените его на что-то более ресурсоемкое.
vova1306
beginner
beginner
Сообщения: 14
Зарегистрирован: 19 апр 2013, 12:57
Версия LabVIEW: 2012
Контактная информация:

Re: Непрерывный DO + AI

Сообщение vova1306 »

Andrew Lunev писал(а):Уберите табличный вывод на экран.
Убрал Build Table. И, похоже, ошибка исчезла. Спасибо. Буду двигаться дальше.
Можно ли при использовании формата данных RAW задать режим number of samples per channel? Не нашёл как?
Аватара пользователя
Viktor

Activity Professionalism Tutorials Black
expert
expert
Сообщения: 1408
Зарегистрирован: 23 мар 2008, 10:56
Награды: 4
Версия LabVIEW: 2020
Откуда: Санкт-Петербург
Благодарил (а): 17 раз
Поблагодарили: 3 раза
Контактная информация:

Re: Непрерывный DO + AI

Сообщение Viktor »

vova1306 писал(а):Можно ли при использовании формата данных RAW задать режим number of samples per channel? Не нашёл как?
Raw.PNG
Raw.PNG (6.19 КБ) 2341 просмотр
vova1306
beginner
beginner
Сообщения: 14
Зарегистрирован: 19 апр 2013, 12:57
Версия LabVIEW: 2012
Контактная информация:

Re: Непрерывный DO + AI

Сообщение vova1306 »

Viktor писал(а):
vova1306 писал(а):
Виноват. В Help то я и не заглянул. А в ниспадающем меню DAQmx Read (VI) нет NSamp. Что, собственно, меня и смутило.
Спасибо.
Ответить

Вернуться в «Обработка сигнала»