|
Коррекция ошибки АЦП, При использовании Uпит в качестве опорного |
|
|
|
Nov 4 2008, 22:00
|
Частый гость
 
Группа: Участник
Сообщений: 169
Регистрация: 31-08-05
Из: New York
Пользователь №: 8 118

|
Однако, разброс такой, что без калибровки не обойтись.
--------------------
ASB
|
|
|
|
|
Nov 5 2008, 10:03
|
Профессионал
    
Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008

|
Вне платы, боюсь, не получится, вы же опорное из питания берете, а оно может от платы к плате меняться, да и Vbg имеет свой разброс от кристалла к кристаллу. Теоретически надо подать на вход АЦП какое то точно известное напряжение, а лучше несколько напряжений и скорректировать АЦП. Можно сделать небольшой проект, который делает калибровку, а потом пишет калибровояные константы в ЕЕПРОМ, а потом прошить уже ваш рабочий проект, который будет использовать эти константы, только надо озаботиться тем чтобы ЕЕПРОМ не затерся при перепрошивке, а лучше, наверное, сделать эту калибровку как часть рабочего проекта, тогда ее можно вызывать по требованию, замыканием пина или командой из меню.
--------------------
|
|
|
|
|
Nov 6 2008, 14:41
|
Местный
  
Группа: Свой
Сообщений: 303
Регистрация: 3-03-05
Пользователь №: 3 044

|
Цитата(bbill @ Nov 4 2008, 17:31)  Контроллер mega16. Для измерений в качестве опорного напряжения используется +5В(напряжение питания, стабилизатор 7805). Возможно ли использование напряжения Vbg для подстройки(или коррекции) результата измерения при разбросе напряжения питания от стабилизатора к стабилизатору(от платы к плате). А если намекнуть, ЧТО меряем и с КАКОЙ целью - станет легче делиться опытом.
--------------------
Опыт - чудесная вещь: легко использовать, можно продать, трудно пропить.
|
|
|
|
|
Nov 6 2008, 15:47
|
Частый гость
 
Группа: Участник
Сообщений: 169
Регистрация: 31-08-05
Из: New York
Пользователь №: 8 118

|
Ну, если есть интерфейс с компьютером (что вероятно), то какие проблемы? 1. Подаем на вход эталонный 1 Вольт 2. Измеряем 3. Передаем в компьютер 4. Подаем 0 Вольт 5. Повторяем 2 и 3 6. Считаем компьютером 2 коэффициента 7.Передаем обратно в контроллер и записываем в его ЕЕПРОМ. 8. При необходимости калибруем каждый канал отдельно.
--------------------
ASB
|
|
|
|
|
Nov 6 2008, 16:19
|
    
Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731

|
Цитата(bbill @ Nov 6 2008, 17:59)  Измеряем напряжения, хотим знать его величину Измеряются напряжения в нескольких контрольных точках. По состоянию(величина напряжения) некоторых идет сообщение, по трем - выполняются действия. Допуск достаточно большой (ТУ, стоят резисторные делители), но из-за разброса опорного придется идивидульно настраивать. Сыт подобными настройками в tn13 из-за использования внутреннего ИОН (и ног свободных нет). Соответственно, НУ ОЧЕНЬ хочется этот процесс автоматизировать. И насколько большой допуск? Резисторы в делителях с какой точностью используются? Какой диапазон (приведенный ко входам АЦП) измеряемых напряжений? Если допуск 10%, резисторы 5%, а напряжения не ниже пары вольт, то ставьте 7805 AC (5%) и используйте Vcc как опору. (одного байта результата с АЦП будет при этом даже много) Если нужно точнее (или измеряемые напряжения существенно меньше, и меньше Vref m16), то изобретайте процедуру калибровки для Vref по какому-либо внешнему ИОН. Стабильность внутренней опоры АВР вполне достаточна для честных 9 битов. Кста, как-то я забыл про LP2950AC и подобные с точностью 0.5%. имхо, такой точности опоры Вам точно хватит.
|
|
|
|
|
Nov 6 2008, 19:55
|
Частый гость
 
Группа: Участник
Сообщений: 76
Регистрация: 21-10-05
Пользователь №: 9 941

|
Измеряемые напряжения находятся в двух диапазонах: - напрямую на вход - 0,5...4В - через делители - 8...16В. Стабильность опоры АВРок вполне достаточна для данной задачи. Значение имеет только абсолюная величина, разброс которой достаточно велик. Поэтому и желается сделать калибровку, причем, скорее всего в приборе. Думаю будет правильно подать на вход AREF эталонное напряжение и "с его помощью" измерить Vbg. Получить отличие от номинала (1,22В) и эту константу в EEPROM. Такое же измерение выполняем при использовании в качестве опорного напряжения питания. А дальше просто пересчет. Так я не привязан к абсолютному значению питания. И достаточно будет обычной 7805(которая и была заложена). Вопрос временнОго дрейфа питания?, ну можно проводить коррекцию раз в сутки. И обязательно по каждому включению питания прибора. Задача калибровки каждого канала не ставилась. Пока не ставилась Наверное так. Поправте, со стороны всегда виднее.
|
|
|
|
|
Nov 7 2008, 07:39
|
Профессионал
    
Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008

|
Если со стороны... Зачем подавать напряжение на Aref? Подаете эталонное напряжение на один из ваших измерительных входов и меряете его относительно того что там у вас реально стоит на опоре(Vbg или Vcc, не важно), зная то что вы подали корректируете то что вы получили от АЦП, в даташите есть формула пересчета "попугаев" в напрядение, в этой формуле присутствует константа - ваше опорное напряжение, вот эту константу вам и надо скорректировать, для этого совсем не нужен ПК все можно сделать в самом контроллере и это сделать надо всего один раз при производстве. А если вы хотите еще и скорректировать смещение, нелинейность, неравномерность усиления по диапазону, то читайте апноут что я выше давал, там все это расписано с формулами и алгоритмами, остается только программу по этим алгоритмам написать. Но практически хватит коррекции опорного напряжения, т.к. оно имеет большой технологический разброс(Vbg).
--------------------
|
|
|
|
|
Nov 7 2008, 13:14
|
Местный
  
Группа: Свой
Сообщений: 303
Регистрация: 3-03-05
Пользователь №: 3 044

|
Цитата(bbill @ Nov 6 2008, 17:59)  Измеряем напряжения, хотим знать его величину Измеряются напряжения в нескольких контрольных точках. По состоянию(величина напряжения) некоторых идет сообщение, по трем - выполняются действия. Допуск достаточно большой (ТУ, стоят резисторные делители), но из-за разброса опорного придется идивидульно настраивать. Сыт подобными настройками в tn13 из-за использования внутреннего ИОН (и ног свободных нет). Соответственно, НУ ОЧЕНЬ хочется этот процесс автоматизировать. Ну, вот. Понятно, может быть. По крайней мере, не мне. - напряжение на КТ меряем относительно ЧЕГО? - это ЧЕГО для всех общее? - измерителей много? и у всех разные опорные? - кто выдает измеряемое напряжение, относительно чего и от чего зависит точность выдаваемого напряжения каждой КТ (с учетом соединительных проводников, падения напряжения в них и помех в общем проводе)? - "По состоянию(величина напряжения) некоторых идет сообщение" - сообщение это информация или сообщение проводников электр. тока? И о диапазонах и точностях ни какой информации.
--------------------
Опыт - чудесная вещь: легко использовать, можно продать, трудно пропить.
|
|
|
|
|
Nov 7 2008, 14:31
|
    
Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731

|
Я вот все пытаюсь понять, где же меня тормозит... В посте 14 был указан диапазон напруг на входах АЦП, явно выходящий за возможности встроенной опоры. Тогда о какой ее калибровке идет речь? bbill, на Вашем производстве стоимость операции калибровки при настройке будет ниже разницы стоимости 78L05 и какого-нибудь стабилизатора с точностью выхода 0.5-1%? А, заметил: Цитата Правильно, чтобы получить диапазон до 4-х вольт, мне и нужно опорное ~5В(Vcc), но его откалибровать хочу по внутреннему. Т.е. будете калибровать одно неизвестное по другому неизвестному?  Оригинальненько
|
|
|
|
|
Nov 8 2008, 08:06
|

неотягощённый злом
     
Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643

|
Цитата(bbill @ Nov 7 2008, 22:29)  Укажите, пожалуйста, где или чем моя ошибка. Ошибок нет. Не придётся ли физически отключать AVCC от AREF на время калибровки Vbg (это может быть неудобно)? И как часто Вы предлагаете измерять абсолютное значение VCC? Или можно спросить иначе. Насколько VCC стабильно во времени? Насколько VCC зависит от температуры? Насколько VCC зависит от текущей потребляемой мощности? Получить 100% верные измерения при (V_изм>V_int_ref) не представляется возможным без использования внешнего опорника. Для повышения достоверности результатов измерений придётся увеличивать выборку. И тут, как Вы понимаете, чем больше выборка, тем достовернее результат...
--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
|
|
|
|
|
Nov 8 2008, 20:11
|
Частый гость
 
Группа: Участник
Сообщений: 76
Регистрация: 21-10-05
Пользователь №: 9 941

|
"Практически же ..." Речь идет не о килоштучном изделии, к сожалению. Схемотехника уже отлажена, софт пишется и хочется упростить процесс настройки потом. И использовать данную методику в дальнейшем (для точных или быстрых измерений естественно использовать только внешние АЦП). Я выше писал, что при использовании тинек13 с внутренним опорным(ног свободных нет) замучился переписывать константы настройки для каждой ИМС. Стабильность работы при использовании внутреннего опорного устраивала, а использования Vcc - нет. Ни о каких программных настройках там речь не шла, из-за малого объема памяти. Фактичесик получалась привязка ИМС-плата, что совсем не есть хорошо., а в данном случае невозможно. Вот за это нужно бится.
Температурный диапазон работы 0...30 градС, сухие помещения, быстрого перепада температур нет. В делителях для измерения напряжений превышающих Uопорн установлены 1% резисторы. Мощность потребления от 7805 меняется(от нее запитан не только процессор), соответсвенно меняется температура ее корпуса, которая зависит еще и от внешней температуры. Температурный и временной дрейф см. даташит на 7805. Поэтому калибровать придется скорее всего периодически. Температурный дрейф Vbg в этом диапазоне мал.
Извините, суббота, вечер, немного философски.
|
|
|
|
|
Nov 8 2008, 20:51
|
    
Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731

|
Цитата(bbill @ Nov 8 2008, 23:11)  "Практически же ..." Речь идет не о килоштучном изделии, к сожалению. Схемотехника уже отлажена, софт пишется и хочется упростить процесс настройки потом. Не знаю бюджет Вашей коробочки, но если ее себестоимость выше 50 р., то простая замена 78L05 на LP2950 (C или AC, похоже, без разницы), имхо, решит проблему с калибровкой напрочь, не подрывая бюджет Цитата И использовать данную методику в дальнейшем (для точных или быстрых измерений естественно использовать только внешние АЦП). Для 9 бит@10ksps с соответствующей опорой АЦП АВР вполне пригоден, но какая-то настройка для этого - нонсенс, если нет возможности ее полностью автоматизировать. Цитата Температурный диапазон работы 0...30 градС, сухие помещения, быстрого перепада температур нет. В делителях для измерения напряжений превышающих Uопорн установлены 1% резисторы. Мощность потребления от 7805 меняется(от нее запитан не только процессор), соответсвенно меняется температура ее корпуса, которая зависит еще и от внешней температуры. Температурный и временной дрейф см. даташит на 7805. Поэтому калибровать придется скорее всего периодически. Температурный дрейф Vbg в этом диапазоне мал. Сравните с характеристиками LP2950. (Вы нашли в даташите на 7805 упоминание о ее временном дрейфе?  не обращайте внимания - вечер, бокал вина, хорошее настроение...)
|
|
|
|
|
Nov 10 2008, 09:09
|
Частый гость
 
Группа: Участник
Сообщений: 76
Регистрация: 21-10-05
Пользователь №: 9 941

|
Не 78L05, а 7805 или 78M05. Так что LP2950 - "не катит". И вообще-то при входном 10...14В, как-то стабилизатор в TO92 стремно ставить, особенно если проц по выходам нагружен. А здесь и обвязка. Отсюда и попытка автоматизации: подключить разъем о двух контактах и с клавы выдать команду на калибровку. Спасибо за замечания, будут учтены. P.S. Увы "суббота, вечер..." означают дрова после дня работы на свежем и весьма прохладном воздухе и отнюдь не за компом
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|