Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года

ADC_SAMPLE, lusbapi, E14-440.

Вы не вошли.

 Поиск | Регистрация | Вход 

28.03.2016 14:06:00
#1

Участник
Здесь с 08.06.2015
Сообщений: 13

ADC_SAMPLE, lusbapi, E14-440.

Здравствуйте!
Возникла проблема при использовании функции ADC_SAMPLE из библиотеки lusbapi. Приведенная ниже функция периодически вызывается для опроса 3-х каналов. При этом при опросе второго из них зачастую возвращается неверное значение. Функция ADC_SAMPLE выполняется, сообщение об ошибке не появляется.

float __fastcall GetData(void)
{float U1, U2, U3;
short r1,r2,r3;
U1 = 0.0;
U2 = 0.0;
U3 = 0.0;
if(!pE440->ADC_SAMPLE(&r1, (WORD)(0x01)))
       {Application->MessageBoxA("Не удалось", "ОШИБКА", MB_OK);} // 1
if(!pE440->ADC_SAMPLE(&r2, (WORD)(0x40)))
       {Application->MessageBoxA("Не удалось", "ОШИБКА", MB_OK);}// 64
if(!pE440->ADC_SAMPLE(&r3, (WORD)(0x48)))
       {Application->MessageBoxA("Не удалось", "ОШИБКА", MB_OK);} // 72
U1 = (10 / 8000.0) * r1 - 4.795;
U2 = (2.5 / 8000.0) * r2;
U3 = (-2.5 / 8000.0) * r3;
bufH = U1 / 1.0;
bufM = U2 / 1.0;
bufIr = U3;
Rr=r2;
	return (bufH, bufM, bufIr, Rr);
}

Для примера приведу последовательные значения r2: 238, 425, 595, 750, 473, 1178. Значение должно монотонно возрастать, однако одно из значений выпадает.
Драйвера и прошивка последней версии. Использую Borland C++ Builder 6.0.

29.03.2016 14:29:58
#2

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,486

Re: ADC_SAMPLE, lusbapi, E14-440.

1. Какой версией Lusbapi пользуетесь?
2. Вы используете 1, 2 и 9 каналы АЦП. Проверьте Вашу схему подключения сигналов к модулю.

29.03.2016 17:04:41
#3

Участник
Здесь с 08.06.2015
Сообщений: 13

Re: ADC_SAMPLE, lusbapi, E14-440.

1.Lusbapi v.3.4.
2.Данная проблема не возникала при использовании старых модулей (~2003г.). Так что проблемы со схемой подключения быть не должно.

29.03.2016 22:25:38
#4

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,486

Re: ADC_SAMPLE, lusbapi, E14-440.

Каковы серийный номер и ревизия проблемного модуля?
Узнать эту информацию можно, например, с помощью утилиты ModulesViewer (это самораспаковывающийся архив).

30.03.2016 10:10:06
#5

Участник
Здесь с 08.06.2015
Сообщений: 13

Re: ADC_SAMPLE, lusbapi, E14-440.

1)8D525235, Rev. F;
2)9D984960, Rev. G;
3)7D358636, Rev. F.
Ранее описанная ошибка возникает на каждом из этих модулей.

30.03.2016 16:09:13
#6

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,486

Re: ADC_SAMPLE, lusbapi, E14-440.

1. Я правильно понимаю, что рабочий модуль (от ~2003 года) с Вашим приложением (на базе Lusbapi v.3.4) работает совершенно нормально?
Тогда можно узнать серийный номер и ревизию этого рабочего модуля?
2. А  приведённые Вами сбои имеют постоянную основу или происходят лишь изредка?

31.03.2016 17:33:42
#7

Участник
Здесь с 08.06.2015
Сообщений: 13

Re: ADC_SAMPLE, lusbapi, E14-440.

1. 6C4988, Rec. C. Возможно он не 2003г., но старше остальных.  Да, за все часы проверки ошибок с ним не возникало.
2. Сбои носят скорее случайный характер. Частота сбоев зависит от операционной системы. На Windows 7 сбои возникают примерно раз в 2 часа. На Windows 8 и 10 сбои появляются намного чаще.

01.04.2016 15:25:59
#8

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,486

Re: ADC_SAMPLE, lusbapi, E14-440.

Будем разбираться...
Попытаемся у себя воспроизвести Вашу ситуацию.

18.04.2016 11:44:50
#9

Участник
Здесь с 08.06.2015
Сообщений: 13

Re: ADC_SAMPLE, lusbapi, E14-440.

Здравствуйте! Хотелось бы узнать, есть ли продвижение в данном вопросе.

18.04.2016 21:48:58
#10

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,486

Re: ADC_SAMPLE, lusbapi, E14-440.

Продвижение есть...
Под под Windows 7 (64bit) были поставлены на непрерывный длительный прогон два модуля (Rev. F и G). Прогон по времени составлял более 1.5 суток. Описанная Вами ситуация не проявилась.
1. Попробуйте поподробнее проанализировать Вашу схему подключения модуля. Посмотрите информацию по ссылке www.lcard.ru/forums/viewtopic.php?pid=52790#p52790.
2. Могу выслать тестовую консольную утилиту.

20.04.2016 12:13:35
#11

Участник
Здесь с 08.06.2015
Сообщений: 13

Re: ADC_SAMPLE, lusbapi, E14-440.

Опробуем указанные рекомендации. Утилита также была бы кстати.

04.05.2016 14:42:34
#12

Участник
Здесь с 08.06.2015
Сообщений: 13

Re: ADC_SAMPLE, lusbapi, E14-440.

Здравствуйте! Провел эксперимент: питание оборудования осуществлялось от аккумуляторов, со входа АЦП снимался сигнал с помощью осциллографа. Реальный сигнал монотонно изменялся от -1В до 1В. При регистрации сигнала с помощью модуля наблюдались выбросы. Могут ли ошибки в программе влиять на значения, получаемые от АЦП? Я имею ввиду, что ошибка в значении появляется именно при вызове функции ADC_SAMPLE, а не при дальнейшей обработке полученного значения.

10.05.2016 19:34:35
#13

Участник
Откуда: Россия
Здесь с 10.05.2016
Сообщений: 1
Сайт

Re: ADC_SAMPLE, lusbapi, E14-440.

Вероятно ваши сбои носят неслучайный характер. Обычно частота сбоев зависит от операционной системы.

13.05.2016 23:04:29
#14

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,486

Re: ADC_SAMPLE, lusbapi, E14-440.

@ Данила
1. Засылайте подробную схему подключения модуля. Все земли, сигналы и т.д.
2. Можно попробовать задействовать консольную утилиту.  Прочитайте Readme файл. Последовательность получения данных взята из Вашего первого сообщения.

Контакты

Адрес: 117105, Москва, Варшавское шоссе, д. 5, корп. 4, стр. 2

Многоканальный телефон:
+7 (495) 785-95-25

Отдел продаж: sale@lcard.ru
Техническая поддержка: support@lcard.ru

Время работы: с 9-00 до 19-00 мск