Схема. Цифровой измеритель емкости на микроконтроллере

Схема Цифровой измеритель емкости на микроконтроллере 1
      Конденсаторы являются одними из наиболее распространенных пассивных электрических компонентов, которые широко используются во всех видах электронных схем. В рамках этого проекта мы будем рассматривать методику построения цифрового измерителя емкости с использованием PIC микроконтроллеров. Измеритель емкости может измерять емкость в диапазоне от 1 нФ до 99 мкФ, с разрешением 1 нФ. Метод основан на измерении времени, затраченного конденсатором на зарядку до заранее известного напряжения через резистор. Микроконтроллер, используемый в этом проекте PIC16F628A.

Теория
      Этот измеритель емкости основан на принципе зарядки конденсатора через резистор. Через RC цепь, как показано на рисунке ниже, подаваемое напряжение на конденсаторе возрастает экспоненциально. Давайте предположим, что первоначально конденсатор полностью разряжен. Vin применяется ко всей цепи RC, конденсатор начинает заряжаться и, следовательно, напряжения (Vc) через него возрастает от 0 до Vin по экспоненте, как показано в правой части рисунка. Уравнение показанное на рисунке описывает, как напряжение на конденсаторе меняется со временем. Если мы знаем время, необходимое для зарядки конденсатора до известного напряжения, то мы можем решить это уравнение для C, зная значение R.
Схема Цифровой измеритель емкости на микроконтроллере 2
      Идея измерения прошедшего времени для зарядки конденсатора от 0 до известного напряжения может быть реализована с любым микроконтроллером. Здесь мы используем микроконтроллер PIC16F628A, который имеет два встроенных аналоговых компаратора. В этом проекте мы используем аналоговый компаратор 2 и TIMER2 модули, чтобы определить время, необходимое для зарядки конденсатора от 0 В до 0.5Vin. Положительный и отрицательный входы аналогового компаратора 2 внешне доступны через RA2, RA1 контакты PIC16F628A, соответственно. На рисунке показанном ниже, два резистора по 2.2 кОм создают делитель напряжения, который подает на положительный вход (RA2) компаратора половину напряжения, приложенного к выводу RA0. Отрицательный вход (RA1) компаратора соединен с положительным выходом конденсатора через резистор 330 Ом. Резистор используется для разряда конденсатора для его измерения, установив на низкий уровень RA1. При подаче напряжения на контакт RA0, конденсатор (Cx), первоначально полностью разряжен, заряжается через резистор 22 кОм. Когда на RA0 установлен высокий уровень (скажем, около 5 В), выход компаратора тоже имеет высокий уровень, и положительный вход компаратора который имеет более высокое напряжение (около 2,5 В), чем отрицательный вход, который имеет около 0 В, как и полностью разряженный конденсатор. Теперь конденсатор начинает заряжаться через резистор (22 кОм), и когда напряжение на нем превышает половину напряжения на контакте RA0, выход компаратора переключается на низкий уровень. Флаг прерывания компаратора устанавливается всякий раз, когда происходят изменения в выходном значении компаратора. Модуль Timer2 используется для вычисления времени, прошедшего между тем, когда на RA0 устанавливается высокий уровень и выход компаратора переходит в низкий уровень. Это время, необходимое для зарядки конденсатора от 0 В до половины напряжения питания.
Схема Цифровой измеритель емкости на микроконтроллере 3
      Зная значение зарядного резистора (в данном случае это 22 кОм) и время зарядки (от Timer2), теперь мы можем решить уравнение конденсатора, упомянутое выше, для вычисления емкости. Для простоты Timer2 инициализируется со значением 104, так что это переполнение в 256-104 = 152 такта (число 152 идет от вычислений показанных ниже). Если мы используем 4,0 МГц внешнего источника синхронизации, это эквивалентно 152 мкс. Таким образом, расчеты существенно упрощаются, как описано ниже. Окончательное уравнение показывает, что для данного устройства, измеренная емкость (в мкФ) просто 10, умноженное на количество раз переполнения Timer2, начиная от 104 каждый раз. Это дает разрешение 10nF, которые могут быть улучшены до 1nF, учитывая значение Timer2 в тот момент, когда выход компаратора переключается в режим низкого уровня и модуль Timer2 остановлен.
Схема Цифровой измеритель емкости на микроконтроллере 4
      Полная настройка схемы этого проект приводится ниже. Выводы RA0-RA2 идут на делитель напряжения и на схему заряда конденсатора описанные ранее. Измерение начинается при нажатии кнопки Пуск. Измеренная емкость отображается на стандартный символьный LCD. +5 В питания производится от 9 В батареи с помощью регулятора LM7805.
Схема Цифровой измеритель емкости на микроконтроллере 5
Программное обеспечение
      Прошивка для микроконтроллера PIC16F628A написана на С и скомпилирована в MikroC Pro для PIC. Максимальное значение измеряемой емкости установлено 99,99 мкФ. Программа отображает сообщение «вне диапазона» при измерении емкости превышающего максимальное значение. Как правило, вывод RA0 установлена на низком уровне, так что конденсатор разрядится через резистор 22K перед измерением. При нажатии кнопки, вывод RA1 устанавливается на низкий уровень в течение 2 сек, что ускоряет процесс разрядки, так конденсатор разряжается намного быстрее через резистор 330 Ом, по сравнению с 22 кОм. Далее, Timer2 инициализация и соответствующее прерывание разрешено. RA1 и RA2 настроены как аналоговые входы компаратора. Тогда RA0 установлена на высокий уровень и Timer2 включен. Как только на выходе компаратора (CMCON.C2OUT) уровень переключается, с высокого на низкий, модуль Timer2 останавливается. Время, необходимое для зарядки конденсатора от 0 В до половины напряжения на цепи RC вычисляется по несколько раз после того как Timer2 переполнится, и окончательное значение Timer2 зарегистрирует. Это временная информация используется для оценки емкости, используя вычисления описанные в теоретической части.

Выводимые значения
      Различные значения емкости испытывались с этим измерителем емкости, и результаты являются довольно соответствующими с их номинальными значений. Вот несколько снимков показывает измеритель в действии.
Схема Цифровой измеритель емкости на микроконтроллере 6
Схема Цифровой измеритель емкости на микроконтроллере 7
Схема Цифровой измеритель емкости на микроконтроллере 8
Схема Цифровой измеритель емкости на микроконтроллере 9
Схема Цифровой измеритель емкости на микроконтроллере 10
Схема Цифровой измеритель емкости на микроконтроллере 11
Схема Цифровой измеритель емкости на микроконтроллере 12

Вывод
      Зарядка конденсатора через резистор была рассмотрена и используется для построения очень простого измерителя емкости. Микроконтроллер PIC16F628A был использован для контроля процесса зарядки / разрядки конденсатора. С помощью встроенного аналогового компаратора и модуля таймера микроконтроллера PIC для вычисления времени, необходимого для зарядки конденсатора до известного напряжения на нем, через цепь сопротивлений. Используя все эти данные, микроконтроллер вычисляет емкость.

Примечание: Все конденсаторы, а конкретно высоковольтные, необходимо сначала разрядить, чтобы избежать повреждений в цепи измерителя емкости.

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

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *