Меню

+7 (495) 785-95-25
sale@lcard.ru
sale@lcard.ru
Страницы 1
Тема закрыта
|
||||
|
Проблеммы с даннымиУ нас в лаборатории E2010(a). При написании программы которая производит считывание данных с АЦП возникли некоторые проблеммы. Данные получаемые с АЦП пишутся в файл в контрольной таблице задаётся 4 активных канала. Далее данные пишуться в файл на лету (частота дискретизации ставится максимальной в тестовом режиме). Первый канал коротим. Пишем все данные в файл на лету до момента переполнения буфера (последнюю пришедшую порцию данных не пищшем). Потом после окончания записи вычитываем данные из файла и калибруем их потом пишем в другой файл, разделяя на столбики по каналам 1й столбик - первый канал итд...(делается для того чтобы кормить это Экселю). Делее наблюдаем такую картину: в первом столбце идут валидные данные в остальных трёх - невалидные. Так продолжается до случайного места а далее валидные данные "перескакивают" в четвёртый столбец, потом в третий итп. Все операции довольно элементарные и ошибится в них довольно сложно, проверил их на достаточно большое количество раз и попросил коллег проверить.. Причём измерение, с которого начинается перескок никак не связано не с длинной контрольной таблицы не с размером запроса на чтение данных. Могу выслать Исходники программы тестирования, если скажете куда.. E2010A, WinXp, Lusbapi 3.2. |
|||
|
||||
|
Re: Проблеммы с даннымиЕвгений, переполнение буфера в E20-10 (ревизия А) практически говорит о том, что модуль нужно заново перезапускать, поскольку не обеспечивается валидность данных, накопленных в E20-10. Если Вы не будете допускать переполнения буфера в E20-10, то непрерывность и валидность данных должны обеспечиваться. В отличии от этого, в ревизии В сделана корректная обработка ситуации переполнения, при которой сама аппаратура E20-10 удаляет из буфера необходимое количество кадров, чтобы устранить переполнение, при этом, непрерывность данных нарушается, но зато перепутывания каналов и порчи данных не происходит и перезапускать E20-10 уже не требуется. |
|||
|
||||
|
Re: Проблеммы с даннымиОпрос АЦП на валидность данных идёт после каждой порции полученных данных, хоть считывание ведётся и в Асинхронном режиме. Всего до переполнения буфера я получаю 4 - 6 порций валидных ( после такой проверки if(m_module->GET_DATA_STATE(&dataState) == FALSE)
|
|||
|
||||
|
Re: Проблеммы с даннымиДа, естественно перед этой проверкой идёт
То есть мы дождались, пока наш буфер заполнялся. |
|||
|
||||
|
Re: Проблеммы с даннымиКстати при однократном сборе данных (частота и размер запроса такие же) ситуация повторяется, хотя переполнения вроде не возникает.... |
|||
|
||||
|
Re: Проблеммы с даннымиЕвгений,
|
|||
|
||||
|
Re: Проблеммы с даннымиЧастоту уменьшал до 1000 кГц сбои оставались. Пробовал оставлять данные в буфере - не помогает... Попробую поставить более раннюю версию lusbapi, может поможет... |
|||
|
||||
|
Re: Проблеммы с данными2раза замечал что на 2ух каналах получались полностью валидные данные. Но такие ситуации возникали чисто случайно.... |
Страницы 1
Тема закрыта