Site Loader

Схема. Миниатюрный вольтметр на микроконтроллере

      Предлагаемый вольтметр предназначен для измерения постоянного и переменного напряжений, он имеет светодиодный индикатор, а его габаритные размеры немногим более размеров спичечного коробка. Благодаря малым габаритам и возможности работы в условиях плохой освещенности его можно использовать в походных условиях, например, для контроля элементов питания радиоаппаратуры, аккумуляторной батареи автомобиля и т. д.

      Ассортимент портативных электроизмерительных приборов, выпускаемых в настоящее время производителями, очень широк. Среди радиолюбителей заслуженную популярность получили доступные, практически каждому, цифровые мультиметры серии М83х. Но при всей своей популярности они не лишены недостатков. Так, отсутствие подсветки делает затруднительным процесс измерения в условиях недостаточной освещенности. Переключатель режимов измерения зачастую изнашивается раньше, чем выходит из строя сам мультиметр. Непрактичным является использование такого источника питания, как батарея 6F22 напряжением 9 В.

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

      Предлагаемый вольтметр имеет три предела измерения постоянного напряжения — 9,99, 99,9 и 999 В, которые переключаются автоматически, и два предела для переменного (50 Гц) — 70 и 700 В. При измерении постоянного напряжения шаг отсчета равен единице, а при измерении переменного -двум единицам младшего разряда.
Питание осуществляют от батареи из двух гальванических элементов напряжением по 1,5 В типоразмера ААА. Потребляемый ток зависит от отображаемого значения и изменяется от нескольких до 20 мА.

      Основой устройства (рис. 1) является микроконтроллер ATmega8L. Его выбор обусловлен наличием достаточного числа портов ввода—вывода для управления светодиодной матрицей HG1 без применения дополнительных микросхем, наличием встроенных десятиразрядного АЦП и источника образцового напряжения (2,56 В). Преобразование входного напряжения в цифровой код выполняет АЦП, а измеренное значение (три разряда) выводится в виде бегущей строки на светодиодную матрицу HG1.

При этом одновременно видны только два символа. Пример индикации напряжения 2,75 В показан на рис. 2. Как показала практика, такой способ вывода информации не вызывает затруднений при ее считывании. Поскольку в устройстве не требуется с большой точностью выдерживать временные интервалы, то с целью снижения потребляемого тока и упрощения схемы работа микроконтроллера DD1 тактируется встроенным RC-генератором с частотой 1 МГц.

      Программа для микроконтроллера написана на языке ассемблера, отлажена и откомпилирована в среде AVR Studio 4.14. В первой строке директивой .include имеется ссылка на файл m8def.inc. Он содержит описания предопределенных имен регистров и констант микроконтроллера и входит в состав среды AVR Studio 4.14.

После включения питающего напряжения линии РВО—РВ4 (выводы 14—18) микроконтроллера DD1 конфигурируются как выходы для управления строками, а линии PDO—PD6 (выводы 2—6, 11,12) — столбцами матрицы 1-1(31. Сигналы на линиях РС4, РС5 (выводы 27, 28) управляют излучающими диодами оптопары U1, резисторы R12, R13 — токоограничивающие. Линии ADC2 и ADC3 (выводы 25 и 26) сконфигурированы как входы встроенного АЦП. Переключателем SA2 осуществляют изменение режимов работы устройства:
— измерение постоянного напряжения с автоматическим выбором предела измерения;
— измерение переменного напряжения на пределе 700 В;
— измерение переменного напряжения на пределе 70 В.

      Входная цепь вольтметра состоит из резисторов R1—R7, R9, R10, диода VD1 и оптопары U1 и образует делитель напряжения с изменяемым коэффициентом передачи. Его изменение осуществляется подключением резисторов R9, R10 через полевые транзисторы оптопары U1. Когда они отключены, установлен предел измерения 9,99 В, при подключении резистора R10 будет установлен предел 99,9 В, а резистора R9 — 999 В. С выхода делителя напряжение, пропорциональное входному, поступает на линию ADC3 (вывод 26) микроконтроллера DD1. Выбор указанной оптопары обусловлен ее способностью работать при низком управляющем напряжении (1,1…1,6 В), кроме того, как показала практика, сопротивление открытого ключа уже при токе 0,5 мА через управляющий светодиод составляет около 10 Ом и практически не изменяется при дальнейшем повышении тока до номинального значения 5 мА.

Использование последовательного соединения четырех резисторов R1—R4 мощностью 0,5 Вт обусловлено необходимостью обеспечить надежную работу, поскольку их максимальное рабочее напряжение составляет 250 В.

      Напряжение минусовой полярности на входе микроконтроллера DD1 не должно превышать 0,5 В. Диод VD1 ограничивает напряжение этой полярности до 0,5…0,6 В. Поскольку на вход АЦП микроконтроллера это напряжение поступает через делитель напряжения R5—R7, оно не превысит 0,25…0,3 В на любом из пределов. Кроме того, при измерении переменного напряжения диод VD1 выполняет функции выпрямителя.

Защитный диод VD2 ограничивает значение напряжения на входе АЦП микроконтроллера до 3,1…3,2 В, что снижает вероятность его выхода из строя при нарушении работы управляемого делителя напряжения. Дроссель L1 и конденсатор СЗ образуют фильтр питания аналоговых узлов микроконтроллера DD1. Конденсатор С4 снижает уровень помех на встроенном источнике образцового напряжения 2,56 В. Резисторы R11, R8 образуют делитель напряжения источника питания, с его выхода напряжение поступает на второй вход АЦП (вывод 25) микроконтроллера DDL Необходимость использования резистивного делителя обусловлена тем, что напряжение на входе АЦП не должно превышать 2,56 В.

      По окончании конфигурирования выводов микроконтроллера на индикатор HG1 выводятся символы «ПР», после которых отображается трехзначное число номера версии программы микроконтроллера (константа vers в программе). Затем выводится условный символ батареи, затем отображается ее напряжение. Если переключатель SA2 установлен в положение «= Автомат», микроконтроллер DD1, начиная с большего предела измерения (999 В), измеряет напряжение и сравнивает полученное значение с верхним порогом переключения предела. Если это значение равно или больше порога, микроконтроллер DD1 с помощью встроенного мультиплексора отключает вывод 26 от входа АЦП и подает управляющее напряжение на оба светодиода оптопары U1, снижая коэффициент передачи входного делителя до минимума. Одновременно на индикаторе HG1 появляется сообщение о перегрузке в виде символов «OL». Если напряжение, вызвавшее перегрузку, не будет отключено, символы начнут мигать.

      При входном напряжении, меньшем верхнего порога, микроконтроллер сравнивает его с нижним порогом переключения предела, и если напряжение меньше, будет включен предел 99 В и процедура измерения повторится.

При напряжении, большем нижнего порога, его значение запоминается. Измерение будет повторяться столько раз, сколько указано в константе midlcikl Микроконтроллер выберет максимальное из измеренных значений и выведет его на индикатор HG1. Использование максимального значения, а не среднего, по мнению автора, на практике оказывается более востребовано.

      Минимальное напряжение питания микроконтроллера ATmega8L составляет 2,7 В, но, как правило, он сохраняет работоспособность при снижении напряжения до 2,1…2,2 В. Однако при таком снижении питающего напряжения встроенный источник образцового напряжения теряет стабильность и напряжение на выводе 21 становится практически равным напряжению питания, что в конечном счете приведет к завышению показаний. Для устранения этого недостатка и расширения интервала питающего напряжения в программе микроконтроллера предусмотрены контроль напряжения источника питания и коррекция результатов измерений.

      Коррекция основана на измерении напряжения еще одного встроенного в микроконтроллер источника образцового напряжения (1,3 В) и в сравнении измеренного значения с истинным (константа lowbat). Процедура измерения питающего напряжения выполняется перед началом каждого цикла измерения. При напряжении более 2,6 В измеренное значение совпадет со значением константы, при меньшем — оно превысит это значение, что и будет сигналом для выполнения процедуры коррекции. Коэффициент коррекции, на который умножается результат преобразования АЦП, определяется, как отношение значения константы lowbat к измеренному значению напряжения источника

образцового напряжения 1,3 В. Для информирования о том, что напряжение питания менее 2,6 В и индицируемое значение прошло программную коррекцию, на индикатор HG1 выводится символ примерного равенства. Следует отметить, что при снижении напряжения питания уменьшаются и границы переключения пределов измерения. Так, при напряжении питания 2,2 В и измерении постоянного напряжения пределы составят 8,58, 85,8 и 858 В, а при измерении переменного напряжения — 60,6 и 606 В.

      При измерении переменного напряжения на одном из выбранных пределов микроконтроллер также выполняет измерение и сравнивает его с верхним порогом переключения предела. Если порог превышен, то осуществляются операции, как и при измерении постоянного напряжения. Число измерений задает константа midlcikl, после этого определяется среднее значение, которое умножается на 1,111 (перевод в действующее значение) и затем на 2 (выпрямление однополупериодное), при необходимости также выполняется программная коррекция.

      В устройстве предусмотрены меры по снижению потребляемого тока. Так, модуль АЦП микроконтроллера включается только на время измерения и выполняет преобразование входного напряжения в код в режиме шумопонижения (ADC Noise Reduction), при котором вычислительное ядро и некоторые другие модули микроконтроллера отключены. Такая организация процесса измерения повышает точность преобразования. Предусмотрено также автоматическое выключение устройства по истечении заданного числа полных циклов отображения на индикаторе HG1 (константа offcikl) при этом потребляемый ток уменьшается до 20 мкА. Продолжительность одного полного цикла составляет 2,3…2,5 с. При указанном в программе значении этой константы выключение произойдет примерно через 15 мин, но только при выполнении одного из следующих условий:
— установлен предел 9,99 В;
— установлен предел 99,9 или 999 В, и входное напряжение равно нулю.
      Такой порядок автоматического выключения применен для уменьшения вероятности повреждения выключенного прибора при не отключенном входном напряжении. Для предупреждения о предстоящем автоматическом выключении предусмотрено соответствующее сообщение — анимированное изображение часов. При указанном в программе значении константы message предупреждение появляется примерно за одну минуту до отключения.

      Все детали смонтированы на печатной плате из двусторонне фольгированного стеклотекстолита толщиной 1 мм (рис. 3 и рис. 4). Применены резисторы МЛТ, оксидный конденсатор -импортный, остальные — К10-17, дроссель — ЕС24. Можно применить оптопару КР293КП4 с любым буквенным индексом, диод 1N4007 заменим на КД257Д, КД258Д, 1N4249, ERB12-10, КД102А — на КД102Б, КД103А, светодиодная матрица АЛС340А1 — на ЗЛС340А1. Переключатель SA1 — движковый EG1249 на два положения, SA2 — также движковый EG2308 на три положения, у них с корпуса удалены крепежные выводы.

      Гнезда XS1, XS2 -одиночные цанговые зажимы от импортного разъема, с платой они соединены гибкими изолированными проводами, которые закреплены проволочным бандажом с последующей пайкой. Взамен низковольтного микроконтроллера ATmega8L можно применить микроконтроллер ATmega8, рассчитанный для работы с напряжением питания 4,5…5,5 В, но предварительно следует убедиться в его работоспособности при питании от напряжения 3 В. Микроконтроллер устанавливают в панель, при этом ее выводы 1,9,10, 13и19 удалены, а отверстия на плате для них не предусмотрены. Для гальванических элементов на плате смонтированы пружинящие металлические пластины. Внешний вид платы показан на рис. 5, она установлена в пластмассовый корпус с габаритными размерами 57x37x19 мм (рис. 6).

      Загрузку кодов программы в память микроконтроллера можно выполнить программой PonyProg www.    www.lancos.com . Разряды конфигурации устанавливают в соответствии с рис. 7. В исходном тексте программы предусмотрена константа koef, позволяющая задавать коэффициент перевода кода АЦП в напряжение, отображаемое на индикаторе HG1. Это, в свою очередь, позволяет использовать резисторы R1—R7, R9, R10 с номиналами, отличными от приведенных на схеме. Значение этой константы можно определить по формуле
koef = 100 Uo6p (R1+R2+R3+R4+R5+ +R6+R7)/(1024R7),
где Uобр — фактическое значение источника образцового напряжения (2,56 В), мВ. В исходном тексте koef =1000, что соответствует Uобр = 2,58 В. При выборе значений сопротивления резисторов R1—R7 и заданном значении 11обр должно выполняться условие 978 < koef <1000.

      При налаживании устройство подключают к источнику напряжения, значение которого измеряют с высокой точностью эталонным вольтметром. На пределе 9,99 В подают напряжение около 9 В, и подборкой резисторов R3—R5 уравнивают показания. Затем увеличивают выходное напряжение до 90 В и сравнивают показания подборкой резистора R10. Аналогичную процедуру повторяют с резистором R9, подав на вход напряжение 200…300 В. Сопротивления резисторов R11 и R8 могут отличаться от приведенных на схеме, но неизменным должно остаться их отношение R11/R8 = = 0,5, поэтому их следует подобрать с отклонением не более 1 %.

      Как было отмечено выше, для программной коррекции показаний предусмотрен контроль снижения напряжения питания . При налаживании необходимо выполнить измерение фактического значения напряжения встроенного образцового источника 1,3 В при питающем напряжении 2.6…3 В, а затем откорректировать константу lowbat в исходном тексте программы и откомпилировать ее заново. Поскольку источник образцового напряжения 1,3 В не имеет внешнего выхода, измерение его напряжения выполняется программно. Для этого при включенном устройстве вывод 13 микроконтроллера DD1 временно соединяют с общим проводом. При этом на индикаторе HG1 отобразится трехзначное число, соответствующее напряжению этого образцового источника. Значение константы lowbat в программе следует увеличить на одну-две единицы относительно измеренного значения.

Прилагаемые файлы:    12_27_44__13_05_2010.zip

В. КЕЛЕХСАШВИЛИ, г. Волгодонск
«Радио» №4 2009г.

Похожие статьи:
Частотомер на микроконтроллере
Восстановление конфигурации микроконтроллеров AVR
Миниатюрный импульсный источник питания
Лабораторный блок питания на микроконтроллере
Преобразователь USB-COM-LPT на микроконтроллере
Усовершенствованный термометр-термостат на микроконтроллере
Часы с термометром и барометром на микроконтроллере ATmega8
Автомат световых эффектов на микроконтроллере
Лабораторный источник питания с микроконтроллерным управлением
Универсальный таймер на PIC-контроллере

Post Views: 2 945

Цифровой вольтметр | Все своими руками

Цифровой вольтметр имеет два предела измерения, от 00,00… 10,23 В, второй предел измерения от 000,0… 102,3 В. Переключение пределов осуществляется при помощи переключателя. Основой схемы вольтметра является микроконтроллер PIC16F676.

Данные об измеряемом напряжении выводятся на однострочный жидкокристаллический индикатор. Электрическая схема вольтметра показана на рисунке 1.

В качестве источника опорного напряжения для модуля аналого-цифрового преобразования используется внешний источник с выходным напряжением 1,023 вольта. Такая величина опорного напряжения при десятиразрядном модуле АЦП данного микроконтроллера, позволяет производить оцифровку входного сигнала с точностью до 0,001 вольта. Десять разрядов АЦП, это в двоичной системе счисления — 11 1111 1111, а в десятичной – 1023, т.о. 1,023 вольта делим на 1023, получаем значение напряжения одного разряда, т.е. 0,001 вольта. В качестве стабилизатора напряжения питания применена микросхема К157ХП2, имеющая в своем составе внутренний ИОН с напряжением 1,3 В. И самое главное его внешний вывод 8. Такое же схемное решение применено в схеме милливольтметра, рассмотренной в статье «Милливольтметр на PIC16F676». Чтобы исключить влияние входа микроконтроллера на выход 8 DA1, в схему введен повторитель напряжения, выполненный на одном из двух ОУ микросхемы DA2 – DA2. 1. Конденсаторы С2 и С5, это конденсаторы фильтра напряжения ИОН. Величина напряжения ИОН на входе RA1 микроконтроллера DD1 регулируется резистором R6. Этим резистором производится калибровка показаний прибора по контрольному цифровому вольтметру.

Общее напряжение питания схемы можно регулировать подстроечным резистором R3. Резистор R8 включен последовательно со светодиодом подсветки LCD. Меняя его величину, можно изменять уровень освещенности индикатора. Контрастность выводимых символов на индикаторе зависит от напряжения, подаваемого на вывод V0 LCD. То есть от номиналов делителя напряжения, состоящего из резисторов R9 и R10. Конденсатор С8, это конденсатор фильтра питающего напряжения, его лучше впаивать непосредственно между выводами питания микроконтроллера 1 и 14.

Переключатель S1 служит для переключения измеряемого напряжения на тот или иной вход АЦП микроконтроллера. Если контакт переключателя находится в нижнем положении, то измеряемое напряжение через делитель напряжения 1:10, состоящий из резисторов R2 и R5, подается на еще один повторитель, собранный на втором ОУ микросхемы DA2. Применение ОУ, включенного по схеме повторителя со 100% отрицательной обратной связью, позволяет резко уменьшить шумовую составляющую измеряемого напряжения, еще не маловажное назначение данного повторителя, это защита входов микроконтроллера. По идее, такой же каскад надо ввести и в цепь измерения напряжения до 100 вольт. При верхнем положении переключателя, измеряемое напряжение через делитель 1:100, R1 и R4, подается на вход RA2 микроконтроллера DD1. В качестве стабилитронов VD1 и VD2 можно применить КС147А. Это защищающие элементы схемы и предназначены для защиты от повышенных напряжений при внештатных ситуациях. В случае применения вышеуказанных стабилитронов, напряжение на входе будет ограничиваться на уровне 4,7 вольта. Это напряжение безопасно, как для ОУ, так и для входов микроконтроллера DD1. При отсутствии этой марки стабилитронов, можно использовать КС133А. Вид устройства собранного на макетной плате показан на фото 1.


Скачать файл прошивки можно здесь. Успехов. К.В.Ю.

ciyfrovoi_voltmert (1034 Загрузки)

Просмотров:9 510


Метки: вольтметр, цифровой

Цифровой мультиметр

Самодельный проект с использованием микроконтроллера

By EG Projects

Этот проект студента ливерпульского университета посвящен созданию цифрового мультиметра с использованием микроконтроллера mbed. Мультиметр может измерять три параметра: напряжение, сопротивление и емкость. Измеренное напряжение, емкость и сопротивление отображаются на ЖК-дисплее 16×2. Это небольшой и крутой проект встроенной электроники своими руками.

Как сделан мультиметр? Микроконтроллер Mbed

Микроконтроллеры

Mbed представляют собой маломощные и высокопроизводительные модули. Они обладают низкой задержкой и высокой пропускной способностью. Для этого конкретного проекта используется их вариант ARM Mbed NXP LPC1768 cortex-m3. Тактовая частота этого конкретного микроконтроллера/процессора составляет 96 МГц. Высокая тактовая частота и пропускная способность сделали этот микроконтроллер идеальным для применения в цифровых мультиметрах. Комплект микроконтроллера mbed работает от 3,3 вольта.

Как мультиметр измеряет сопротивление, емкость и напряжение?

Принципиальная схема проекта приведена ниже. Моментальный снимок конструкции конечного оборудования показан на рисунке ниже. Небольшой источник питания установлен на плате, а питание подается на другие шины с помощью перемычек/соединительных проводов. Микроконтроллер Mbed размещен на другой плате вместе с ЖК-дисплеем 16×2. Для управления яркостью ЖК-дисплея рядом с ЖК-дисплеем устанавливается переменный резистор.

Три кнопки с обозначениями V, R и C, прикрепленные к плате, представляют собой напряжение, сопротивление и емкость. Каждая кнопка вычисляет параметр, указанный на ней.

Цифровой мультиметр со схемой микроконтроллера Mbed

Цифровой мультиметр для измерения напряжения

Для измерения напряжения на точечной схеме используется делитель напряжения. Например, мы хотим измерить напряжение в точке, и максимальное напряжение, которое может прийти в эту конкретную точку, составляет 12 вольт.

Делитель напряжения для фиксации напряжения

Микроконтроллер

Mbed работает от 3,3 вольта. Его цифровые и аналоговые контакты могут потреблять 3,3 вольта. Любое напряжение выше 3,3 В может серьезно повредить контакты микроконтроллера. В этом случае мы используем схему делителя напряжения. Напряжение делится на два сопротивления. Схема делителя напряжения спроектирована таким образом, что напряжение на одном из резисторов никогда не превышает диапазон напряжения 3,3 В. В соответствии с ним нужно подобрать сопротивление. Схема делителя напряжения приведена слева. Если взять рассматриваемую картину по описанному выше сценарию. Тогда на Вине у нас 12 вольт. На Vr1 должно падать 8,7 вольт, а на Vr2 ни в коем случае не должно повышаться 3,3 вольта.

Мы хотим измерить напряжение в точке Vin. Но так как напряжение в этой точке выше, то, чтобы его понизить, мы разделили напряжение. Теперь, как точно предсказать напряжение? Соотношение должно быть рассчитано между двумя сопротивлениями R1 и R2. Это отношение, умноженное на рассчитанное напряжение на R2 или Vr2, дает конечное напряжение на Vin.

Я сделал действительно хороший учебник по нему, используя Arduino, я предлагаю вам использовать его для лучшего понимания метода мониторинга напряжения батареи Arduino. Результат измерения напряжения отображается на ЖК-дисплее 16×2, показанном на рисунке ниже.

Цифровой мультиметр с микроконтроллером – результат измерения напряжения

Мультиметр измеряет сопротивление, как омметр

Измерение сопротивления аналогично измерению напряжения, но на этот раз вместо напряжения мы вычисляем сопротивление после измерения падения напряжения на R2.

В данном случае Vin фиксированный допустим 12 вольт. Мы также знаем сопротивление R1. Измеряем напряжение на R2. Теперь у нас три параметра Vin, Vout и R1. Подстановка этих параметров в формулу, приведенную справа, дает сопротивление R2.

Примечание : Необходимо соблюдать осторожность при измерении сопротивления. Vr2 не должен увеличивать предел 3,3 вольта. Я бы посоветовал вам рассчитать диапазон сопротивления вручную, который можно измерить относительно R1. Расчет сопротивления и результат отображаются на ЖК-дисплее 16×2. Результат можно увидеть на картинке ниже.

Измерение сопротивления с использованием схемы резисторного делителя

Цифровой мультиметр с микроконтроллером – результат измерения сопротивления

Измерение емкости мультиметром

Емкость — это способность дискретного электронного компонента накапливать в себе заряд и освобождаться по команде. Для этой цели широко используются конденсаторы. Конденсатору нужно время, чтобы зарядить себя. Это время заряда пропорционально сопротивлению нагрузки и емкости конденсатора. Уравнение времени заряда:   

TC=RC

Где Tc — время заряда, а RC — произведение сопротивления нагрузки и емкости. Если мы изменим формулу и возьмем C в левой части, то TC/R дает емкость конденсатора. Постоянная времени  конденсатора определяется как время, за которое напряжение на конденсаторе достигает 63,2%  от его напряжения при полной зарядке.

Расчет емкости с помощью схемы микроконтроллера

Шаги расчета емкости

  • Разрядите конденсатор. Лучшим методом является использование выходного цифрового вывода, который разряжает конденсатор, когда необходимо рассчитать емкость. Светодиод на выходе рекомендуется для разрядки конденсатора.
  • Зарядите конденсатор после его разрядки. Когда вы начинаете заряжать, отметьте время начала или запустите счетчик в миллисекундах().
  • Когда напряжение достигает 63% от общего напряжения на конденсаторе, остановите таймер и запишите отметку времени. Теперь вычтите время начала с временем остановки. Окончательное значение ТС. Разделив Tc на R, мы наконец получили значение емкости.

Цифровой мультиметр с микроконтроллером – результат измерения емкости


Рубрики: Arduino, Microcontroller Projects

 




Как создать простой интерактивный цифровой вольтметр