Этот цифровой амперметр выполнен на базе микроконтроллера PIC16F684 и датчике тока ACS712. Значение измеренного постоянного или переменного тока будет отображаться на 3-х разрядном семисегментном индикаторе с разрешением 100 мА. В проекте используется датчик ACS712ELCTR-30A-T от Allegro (я заказал его на Amazon). Он может измерять переменный или постоянный ток до 30А с чувствительностью выхода 66 мВ/А.
Микроконтроллер PIC16F684 считывает аналоговый уровень с выхода датчика тока ACS712 и преобразует его в цифровое значение для отображения на семисегментном индикаторе. Здесь применены индикаторы с общим анодом и управляются они транзисторами PNP. Фактически, это схема применяется для измерения постоянного тока, например, солнечной панели, потребления батареи, для зарядки аккумулятора.
Вычисление значения измеряемого тока для Vcc 5V.
Из тех.данных ACS712 мы знаем:
0 A = Vcc/2 = 2,5 В или 512 ADC (0x200).
Чувствительность 66 мВ/А для версии 30А.
Далее:
30А = 2,5V + (66 мV/А*30А) = 4,48V или 917,504 ADC
-30А = 2,5V - (66 мV/А*30А) = 0,52V или 106,5 ADC
Применим основное линейное математическое уравнение:
y = mx + b____Equ.1
m = (y2 - y1)/(x2 - x1)____ -Equ.2
Итак, мы получаем:
m = (30 - 0)/(917 - 512) = 0,074
заменим m в Equ.1 на выход 0A, получим b:
0 = 0,074 * 512 + b
b = -37,888
таким образом, конечное уравнение используемое в программе примет вид:
A = 0,074*ADC - 37,888
Пример:
если ADC = 512, получим 0A
если ADC = 917, мы получаем около +30А
если ADC = 106, мы получаем около -30А
Разводка печатной платы и питающий провод в этом проекте используется для измерения малого тока (для обучения). Если вы хотите измерить ток до 30А, то дорожки печатной платы и провод входного тока должны быть достаточно толстыми.
Фото готового устройства
Архив для статьи "Амперметр на PIC16F684 и ACS712" | |
Описание:
Исходный код(Си), файл прошивки микроконтроллера |
|
Размер файла: 4.31 KB Количество загрузок: 610 | Скачать |
Комментарии