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


L-791 калибровочные коэффициенты

Вы не вошли.

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

Александр
22.04.2010 11:30:50
#1

Гость

L-791 калибровочные коэффициенты

Здравствуйте!
Я пишу свою программу по сбору данных с платы для L-791. Мне необходимо получить калибровочные коэффициенты для перевода кода АЦП в  значения по напряжениям.
Для этого я сначала выполняю функцию
pI->OpenLDevice();
А затем  читаю конфигурационный флеш платы:
pI->ReadPlataDescr(&pd);

В структуре pd переводные коэффициенты KoefADC принимают значения, которые приведены ниже. Из значений этих коэффициентов видно (номер массива 8-15), что
изменение коэффициента усиления приведет к увеличению отображаемого значения напряжения в 2 раза с удвоением коэффициента усиления. Это подтверждается и
на практике.
Скажите, пожалуйста, как мне получить правильные коэффициенты перевода.
KoefADC[0]=5.95
KoefADC[1]=5.36
KoefADC[2]=4.97
KoefADC[3]=3.57
KoefADC[4]=1.78
KoefADC[5]=-5.02
KoefADC[6]=-16.84
KoefADC[7]=-39.89
KoefADC[8]=1.07
KoefADC[9]=1.07
KoefADC[10]=1.06
KoefADC[11]=1.06
KoefADC[12]=1.05
KoefADC[13]=1.05
KoefADC[14]=1.05
KoefADC[15]=1.05

22.04.2010 11:56:03
#2

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: L-791 калибровочные коэффициенты

Как корректировать данные написано в хелпе к библиотеке LComp в описании PLATA_DESCR_L791

Александр
22.04.2010 13:52:30
#3

Гость

Re: L-791 калибровочные коэффициенты

я и воспользовался документацией для получения переводных коэффициентов. Только полученные коэффициенты неправильно переводят код АЦП в напряжения.

22.04.2010 14:11:54
#4

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: L-791 калибровочные коэффициенты

Я чего-то не очень понял....этими коэф корректируется код АЦП. Потом код АЦП маштабируется на установленный входной диапазон. те на диапазоне 10 вольт полученный код 8100 корректируется пердположим до 8110 и потом (10/8192)*8110 вольт получаем.... на 5 вольтовом диапазоне с таким же кодом (5/8192)*8110.

Александр
22.04.2010 14:52:33
#5

Гость

Re: L-791 калибровочные коэффициенты

Я соглашусь с этими формулами, если коду 8192 соответствует ровно 10В, а не, например, 10,1В. В документации написано, что коэффициент масштаба записан в массиве KoefADC структуры типа PLATA_DESCR_L791. И естественно, как правило, он не равен 10/8192 или 5/8192.

22.04.2010 17:11:03
#6

Инженер-электронщик
Откуда: "Л Кард"
Здесь с 21.04.2014
Сообщений: 4,597

Re: L-791 калибровочные коэффициенты

По предварительным с данным, действительно калибровочная процедура для L-791 устроена таким образом, что значение  8192 после калибровки  соответствует 10 В на входе L-791. Завтра постараемся выяснить это точно.

24.04.2010 11:08:57
#7

Инженер-электронщик
Откуда: "Л Кард"
Здесь с 21.04.2014
Сообщений: 4,597

Re: L-791 калибровочные коэффициенты

Так и есть. При этом, проблем с калибровкой не возникает, поскольку результат после калибровки имеет формат с плавающей точкой (может быть и больше 8192, например, на несколько сотых процента, из-за естественных факторов, влияющих на нестабильность).

Александр
26.04.2010 07:26:59
#8

Гость

Re: L-791 калибровочные коэффициенты

То есть, все таки масштаб равен (10/8192)? Если это так, то зачем тогда нужен KoefADC (номера массива с 8 по 15)?

26.04.2010 10:04:54
#9

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: L-791 калибровочные коэффициенты

8192 это виртуальный код... попробуйте без калибровки и увидите истинные значения кода АЦП. На 10 вольтах это будет что-то типа 7600...

Александр
28.04.2010 13:06:35
#10

Гость

Re: L-791 калибровочные коэффициенты

Мне именно нужно перевести получаемый код АЦП в напряжения. Т.е. получив некоторое число от АЦП, преобразовать в Вольты.
Внизу я привожу пример из документации. 
Теперь проведу эксперимент. Выбираю коэффициент усиления «х1»,  подключаю к источнику питания (севшая батарейка), получаю код АЦП (X) равный 874. Зная коэффициенты масштаба и смещения нуля, провожу корректировку данных по формуле (1). В конкретном случае  для коэффициента усиления равном «х1» выбираю значение записанное в  KoefAdc[0] равное 5,95 и KoefAdc[8] равное 1,07.
Из формулы (1) напряжение источника питания равно
Y1=(5.95+874)*1.07=941, наверное в милливольтах (в документации не сказано)
Делаю второй эксперимент. Оставляю тот же источник питания, но использую коэффициент усиления «х4». В этом случае код АЦП уже равен 3539. Выбираю для коррекции значения находящиеся в KoefAdc[2] и KoefAdc[10] равные 3,57 и 1.06 соответственно.
Провожу новый расчет по формуле (1)
Y2=(3.57+3539)*1.06=3755.
Таким образом, Y1 почти в четыре раза меньше, чем Y2. Следовательно, значения в массиве KoefAdc записаны неверно.
У меня вопрос, как все таки выполнить перевод, кода АЦП в напряжения.
/*------Пример-------*/
Корректировка данных ЦАП:
Y = (X+B)*A,  (1)
где:
X – некорректированные данные АЦП [в отсчетах АЦП]
Y – скорректированные данные АЦП [в отсчетах АЦП]
A – коэффициент масштаба [безразмерный]
B – коэффициент смещение нуля [в отсчетах АЦП]


С АЦП, настроенного на диапазон ±2.5В (усиление х4), получены следующие данные:

X1=1000, X2=-1000, X3=0

тогда, если положить что pd – структура типа PLATA_DESCR_L791 предварительно участвовавшая в вызове функции ReadPlataDescr(), то коэффициенты коррекции и скорректированные данные можно получить так:

A=pd. KoefAdc[10], B=pd. KoefADC [2]

Y1=(B+1000)*A, Y2=(B-1000)*A, Y3=B*A

/*---------------------------*/

28.04.2010 13:53:50
#11

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: L-791 калибровочные коэффициенты

Вы вычислили некие виртуальные коды АЦП 941 и 3755. Полная шкала 8192 на выбранный диапазон измерения. Те если x1 это 10 вольтовая шкала, то вольты 10*941/8192 - 1.149 а на другом диапазоне 2.5*3755/8192 - 1.152... в Вольтах

Александр
29.04.2010 07:42:16
#12

Гость

Re: L-791 калибровочные коэффициенты

Теперь понятно. Спасибо.
Прочитав документацию по плате, понять, что нужно так корректировать данные не представляется возможным. Может быть, имеет смысл, переработать документацию, чтобы она была более понятной.

29.04.2010 09:11:12
#13

Инженер-электронщик
Откуда: "Л Кард"
Здесь с 21.04.2014
Сообщений: 4,597

Re: L-791 калибровочные коэффициенты

Согласен. Скоро выложим обновлённое руководство, где этот вопрос будет чётко расписан.

Victor
09.09.2015 12:20:57
#14

Гость

Re: L-791 калибровочные коэффициенты

Что-то так и не добавилось этой информации в документацию.

09.09.2015 14:00:57
#15

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: L-791 калибровочные коэффициенты

Какой информации? В Руководстве пользователя все расписано...

Evgenij
12.10.2015 16:10:43
#16

Гость

Re: L-791 калибровочные коэффициенты

А как в L780 можно перевести коэффициенты из USHORT в числа с плавающей точкой?
KoefADC:
65535
65533
65531
65523
32779
32592
32452
32388
KoefDAC:
52245
40647
10014
10015

Evgenij
13.10.2015 15:51:46
#17

Гость

Re: L-791 калибровочные коэффициенты

Сделали бы уже где-нибудь в примерах нормальную функцию для перевода кодов АЦП в реальные величины (аналогично для ЦАП). А то для одних плат используется одна PLATA_DESCR, для других плат -- другая, в одной коэффициенты с плавающей точкой и похожи на правду, в другой -- абсолютно конские, да еще и целые, совсем неясно что с ними делать.
(Предыдущий вопрос всё еще актуален).

13.10.2015 16:04:09
#18

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: L-791 калибровочные коэффициенты

так эта плата сама корректирует коды если EnableCorrection сказать. с переводом в физические величины это никак не связано... поскольку ADSP целочисленный то и коррекцию он делает  в целых числах. Формулы должны быть в книжке-описании где то в низкоуровневом разделе или спросите Тихомирова Сергея по почте tikhomir@lcard.ru