|
|
  |
Калибровка AD7732, Калибровка АЦП |
|
|
|
Jun 4 2009, 12:01
|
Частый гость
 
Группа: Участник
Сообщений: 191
Регистрация: 11-02-09
Из: Краснодар
Пользователь №: 44 686

|
Цитата(DS @ Jun 4 2009, 00:41)  Я не писал, что она не нужна ВООБЩЕ. Не нужна фильтрация высоких порядков при правильном выборе соотношений частот. Достаточно фильтра первого порядка. И Вы путаете частоту дискретизации и частоту выдачи результата . В случае данного АЦП это совершенно не одно и то же. Тогда не совсем понятно, какое отношение темп выдачи результата относиться к цифровой фильтрации (в режиме единичного преобразования - темп вообще можно сделать хоть раз в год). На сколько я понимаю: фильтрация сигнала относиться к дисктретизации АЦП.
|
|
|
|
|
Jul 6 2009, 09:37
|
Гуру
     
Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250

|
14 Мгц кварц - не ошибка ? Максимально, что допустимо 6.144 Мгц.
Если калибровка запускалась с использованием сигнала SYNC, достаточно проверять готовность любого АЦП.
Калибровки существуют 2 - калибровка АЦП - ее надо делать обязательно после включения питания и калибровка канала. Она выполняется для каждого канала раздельно, и убирает смещение коммутатора и внешних входных цепей. Т.е. то, что в момент выполнения этой калибровки будет на входе, то и будет восприниматься в качестве "0".
--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
|
|
|
|
|
Jul 6 2009, 14:33
|
Частый гость
 
Группа: Участник
Сообщений: 191
Регистрация: 11-02-09
Из: Краснодар
Пользователь №: 44 686

|
Цитата(DS @ Jul 6 2009, 13:37)  14 Мгц кварц - не ошибка ? Максимально, что допустимо 6.144 Мгц.
Если калибровка запускалась с использованием сигнала SYNC, достаточно проверять готовность любого АЦП.
Калибровки существуют 2 - калибровка АЦП - ее надо делать обязательно после включения питания и калибровка канала. Она выполняется для каждого канала раздельно, и убирает смещение коммутатора и внешних входных цепей. Т.е. то, что в момент выполнения этой калибровки будет на входе, то и будет восприниматься в качестве "0". По кварцу - это кварц atmega640 (относиться к функции delay()) - указал чтоб было понятна примерно время задержки. По калибровки понятно (сегодня попробывал)И так как не имею возможноти коммутировать вход (он жестко распаян) - оставил только автокалибровку, т.е. калибровку внутренних параметров (фактически калибровка от ИОН) - но выявилась ошибка - при каждом новом включении прибора очень большой разброс параметров (вижу по выходным данным при нулевом сигнале (на ноль (смещение) калибруем программано уже ЭВМ по 3 тыс. значениям ) и честно не знаю в чем дело: значали грешил на входные операционные усилители (их питани...) - полностью отключил питание, отсоеденил входы АЦП и соеденил все на землю) - результат тот же, честно не знаю что может быть? Пр нулевом сигнале: цифровой код с АЦП соотвествует +-4 мВ (причем абсолюно периодично (напряжения примерны но порядок тот же): плюс 4мВ, минус 4мВ, плюс 4мВ минус 4 мВ.... ).
|
|
|
|
|
Jul 6 2009, 15:33
|
Частый гость
 
Группа: Участник
Сообщений: 191
Регистрация: 11-02-09
Из: Краснодар
Пользователь №: 44 686

|
Цитата(Tanya @ Jul 6 2009, 19:23)  Так не должно быть никогда. Где-то у Вас ОШИБКА Ваша. Проанализируйте последовательность выходную. Выходная последовательность имеет частоту повторения 100 Гц равную половине частоты дискретизации 200 Гц, причем если сигнал не нулевой - скажем подаю синусоиду 0,1 Гц до 100 Гц и амплитудой до 10 В - на выходеименно ее и получаю (графически востанавливаем сигнал на ЭВМ). Что интресно: менял частоту дискретизации - резльатт тот же - только частота повторения соотвественно другая (деленная на два). Где искать не знаю.
|
|
|
|
|
Jul 6 2009, 19:48
|
Частый гость
 
Группа: Участник
Сообщений: 191
Регистрация: 11-02-09
Из: Краснодар
Пользователь №: 44 686

|
Цитата(DS @ Jul 6 2009, 23:33)  Программную калибровку Вы записываете в регистры АЦП ? Или вычитаете в процессоре ? Не может ли быть, что у Вас перенос разряда при вычитании 24 битного слова хромает ? Калибровку вообще отключил (при таких значениях калибровка не поможет): закоротил все входы АЦП и смотрю что на цифровом выходе. Обработка данных в mege (повторю часть своего первого сообщения): (да и проверял когда писал программу на регистрах - все сходиться до знака). //Чтение данных из регистра АЦП // Читаем и заносим в буфер SPDR = 0x00; while (!(SPSR&0x80)); // ожидание готовности порта, прежде чем считывать A=SPDR; //считать SPDR - 1 байт SPDR = 0x00; while (!(SPSR&0x80)); // ожидание готовности порта, прежде чем считывать B=SPDR; //считать SPDR - 2 байт SPDR = 0x00; while (!(SPSR&0x80)); // ожидание готовности порта, прежде чем считывать C=SPDR; //считать SPDR - 3 байт // Закрываем АЦП PORTF|=BIT(0); // CS1 установить в 1 // Получаем длиное целое из полученных байт // с учетом что первым идет старший байт rez=(C+(B<<8)+(A<<16)); // Далее преобразуем с типу double и Преобразуем к напряжению U=(((double)(rez))*10)/0xFFFFFF; // Получаем напряжение от 0 до 10 В // Отнимаем 5 В - для сдига в биполярный сигнал - получаем изменение напряжения от -5 до 5 В U=U-5; // Преобразуем в микровольты и возращаем результат rez=(signed long)(U*1000000); return (rez); Вопрос где искать? (землю вроде верно разведены - соеденены в одной точке, кварцы у 3 АЦП сразу отказали - наврядле, 3 АЦП испортились - то же, единственно у нас в качестве ИОН используеться REF43 - одна штука - но от нее проводом сечением 1,5 кв. мм. )невесным чтоб уменьшить сопротивление) подходит к АЦП сигнал). - Как можно поискать ошибку?
|
|
|
|
|
Jul 6 2009, 20:35
|
Гуру
     
Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250

|
Цитата(Leonmezon @ Jul 6 2009, 23:48)  Вопрос где искать? (землю вроде верно разведены - соеденены в одной точке, кварцы у 3 АЦП сразу отказали - наврядле, 3 АЦП испортились - то же, единственно у нас в качестве ИОН используеться REF43 - одна штука - но от нее проводом сечением 1,5 кв. мм. )невесным чтоб уменьшить сопротивление) подходит к АЦП сигнал). - Как можно поискать ошибку? Вы серьезно поставили 3 кварца ? Вы себе представляете, какие биения могут возникнуть именно на частотах в полосе измерения ? Выкиньте 2 из трех кварцев, подсоедините входы MCLKIN к MCLKOUT АЦП с кварцем. И распечатайте побайтно, без преобразования, результаты считываемые из регистров, наверняка ошибка программная.
--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
|
|
|
|
|
Jul 6 2009, 20:51
|
Частый гость
 
Группа: Участник
Сообщений: 191
Регистрация: 11-02-09
Из: Краснодар
Пользователь №: 44 686

|
Цитата(DS @ Jul 7 2009, 00:35)  Вы серьезно поставили 3 кварца ? Вы себе представляете, какие биения могут возникнуть именно на частотах в полосе измерения ? Выкиньте 2 из трех кварцев, подсоедините входы MCLKIN к MCLKOUT АЦП с кварцем. И распечатайте побайтно, без преобразования, результаты считываемые из регистров, наверняка ошибка программная. Не совсем понятно как три кварца могут дать биения (они же подключены к каждому своему АЦП)? (Да и на плате кроме них - еще три кварца: 14Мгц, 7,8 МГц и 32 кГц (atmega640, atmega8515+ часы реального времени) кварц GPS приемника (DSP процессор) и кварц микроЭВМ (одноплатник на 500 МГц) - все работает).
|
|
|
|
|
Jul 7 2009, 05:45
|
Гуру
     
Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250

|
Цитата(Leonmezon @ Jul 7 2009, 00:51)  Не совсем понятно как три кварца могут дать биения (они же подключены к каждому своему АЦП)? (Да и на плате кроме них - еще три кварца: 14Мгц, 7,8 МГц и 32 кГц (atmega640, atmega8515+ часы реального времени) кварц GPS приемника (DSP процессор) и кварц микроЭВМ (одноплатник на 500 МГц) - все работает). У них частота одинаковая. Поэтому биения будут в районе 0.5 - 10 Гц. А 6 Мгц замечательно пролезает по цифре внуть АЦП. Вы же собираетесь измерять с тоностью до микровольт, я правильно помню ?
--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
|
|
|
|
|
Jul 7 2009, 14:59
|
Частый гость
 
Группа: Участник
Сообщений: 191
Регистрация: 11-02-09
Из: Краснодар
Пользователь №: 44 686

|
Цитата(DS @ Jul 7 2009, 09:45)  У них частота одинаковая. Поэтому биения будут в районе 0.5 - 10 Гц. А 6 Мгц замечательно пролезает по цифре внуть АЦП. Вы же собираетесь измерять с тоностью до микровольт, я правильно помню ? Про микровольты - правильно. Честно сказать не совсем понятна физика возникновения биения - не очень ясно как вообще это может быть и как это влияет на точность. Проверил схему включения (привожу на рис. части прибора: 3 АЦП и микроконтроллер, и преобразователь биполярного сигнала в дифференциальный с развязывающими буферами для подачи на оба канала АЦП) и программу (части программы приема данных были выше) - честно не вижу ошибок которые приводили к таким результат: при закорачивании входов имеем по каналам АЦП -4 до 4мВ (прилагаю график) в то же время при подключении нагрузки (на графике к 3 АЦП подключен генератор синусоидального напряжения 1 Гц) - вроде нормально все оцифровывает (хотя шум есть). Как говорили выше - в место напряжения с тем же тактом считал регистры (выбрал два калибровочных такой же длины что регистр данных) - вроде нормально считываются (те.е. программа работает) - но есть не понятные вещи: значения регистров сами изменяются (каждое 11...15 значение - хотя и близкое к изначальному) при этом к регистрам калибровки не обращаюсь. Что можете посоветовать? (кварцы попробую убрать,но не думаю что из за них может быть шум 4мВ - при этом аналоговая часть вся отключена)
|
|
|
|
|
Jul 7 2009, 16:24
|
Частый гость
 
Группа: Участник
Сообщений: 191
Регистрация: 11-02-09
Из: Краснодар
Пользователь №: 44 686

|
Цитата(Tanya @ Jul 7 2009, 20:01)  Могу только повторить просьбу DS - побайтно, безо всяких преобразований, при закороченном входе - отрезать предусилители. Попробую (хотя не уверен что это что то даст, все усилители убраны: входы АЦП закорочены и на землю). По ощущениям - чтото происходит в аналоговой части АЦП - но как это узнать?
Сообщение отредактировал Leonmezon - Jul 7 2009, 16:25
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|