|
Коррекция ошибки АЦП, При использовании 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).
--------------------
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|