Меню

Ардуино датчик тока asc712

Подключение датчика тока к Ардуино

Подключение датчика тока к Ардуино Уно

Датчик тока Ардуино ACS712 / TA12-100 ► работает на эффекте Холла, используется для защиты от перегрузки. Рассмотрим, как работать с датчиком тока Arduino.

Датчик тока для Ардуино основан на эффекте Холла, имеет прямую зависимость измеряемой силы тока и выходного сигнала. Модули ACS712 / TA12-100 для измерения тока используются в проектах, где требуется защита от перегрузки, например, при изготовлении зарядных устройств и внешних аккумуляторов (power bank), импульсных источников питания. Рассмотрим, как работать с датчиками тока и Arduino Uno.

Характеристики датчика тока Arduino

ACS713 и ACS712 состоит из линейного датчика на базе эффекта Холла с медным проводником. Ток создает магнитное поле в медном проводнике, которое улавливается датчиком и преобразуется в напряжение. Сила магнитного поля линейно зависит от силы тока. Точность обеспечивается микросхемой на модуле с заводскими настройками. Работает цифровой датчик с постоянным и переменным током.

Принцип работы датчика тока ACS712 с элементом Холла

Принцип работы датчика тока ACS712 с элементом Холла

Технические характеристики ACS712

  • Тип интерфейса: цифровой;
  • Напряжение: постоянное и переменное;
  • Напряжение питания: 5 Вольт;
  • Ток потребления: не более 11 мА;
  • Измерение силы тока: от 5 до 30 Ампер;
  • Чувствительность: от 66 мВ/А до 185 мВ/А;
  • Температура эксплуатации: от -40°C до +85°C;
  • Размер платы модуля: 31 мм на 13 мм.

Датчик TA12-100 Arduino работает на другом принципе. Модуль измеряет напряжение, падающее на транзисторе в 200 Ом, который находится на выходе трансформатора. Датчик TA12-100 преобразует напряжение на резисторе в аналоговый сигнал, применяя закон Ома (I = E / R). Коэффициент трансформатора составляет 1000:1 и, чтобы получить значение тока, следует полученные данные умножить на 1000.

Датчик тока TA12-100 для платы Ардуино

Датчик тока TA12-100 для платы Ардуино

Технические характеристики TA12-100

  • Тип интерфейса: аналоговый;
  • Напряжение: постоянное;
  • Напряжение питания: 5 Вольт;
  • Ток потребления: не более 5 мА;
  • Измерение силы тока: до 5 Ампер;
  • Чувствительность: не известна;
  • Температура эксплуатации: от -55°C до +85°C;
  • Размер платы модуля: 30 мм на 24 мм.

Как подключить к Ардуино датчик ACS712

Для этого занятия нам потребуется:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • датчика тока ACS712 / TA12-100;
  • источник питания 12 Вольт;
  • нагрузка, например, лампа 12V;
  • провода «папа-папа», «папа-мама».

Датчик ACS712 является аналоговым, для подключения потребуется три провода. Два для питания — GND и 5V и один провод для сигнала. Датчик подключается в разрыв цепи между источником питания и нагрузкой. Используется библиотека TroykaCurrent.h (скачать ее можно здесь), которая переводит значения аналогового сигнала в миллиамперы. Соберите схему, установите библиотеку и загрузите скетч.

Схема подключения к Arduino датчика тока ACS712

Схема подключения к Arduino датчика тока ACS712

Счетч для датчика тока Arduino ACS712

Пояснения к коду:

  1. для переменного тока используйте команду sensorCurrent.readCurrentAC() ;
  2. при отрицательных значениях поменяйте местами провода на колодках.

Как подключить к Ардуино датчик TA12-100

Схема подключения к Arduino датчика тока TA12-100

Схема подключения к Arduino датчика тока TA12-100

Данный датчик используется только для измерения переменного тока и является аналоговым. Для подключения к плате вам потребуется два провода (хотя на модуле имеется три контакта) — один провод подключается к GND, а второй к аналоговому входу. Провод, где вы хотите измерить силу тока, должен проходить через катушку модуля. Соберите схему, как на картинке и загрузите следующий скетч.

Источник



Использование датчика тока ACS712. Часть 1 — Теория

Allegro ACS712

Измерение и контроль протекающего тока являются принципиальным требованием для широкого круга приложений, включая схемы защиты от перегрузки по току, зарядные устройства, импульсные источники питания, программируемые источники тока и пр. Один из простейших методов измерения тока –использование резистора с малым сопротивлением, – шунта между нагрузкой и общим проводом, падение напряжения на котором пропорционально протекающему току. Несмотря на то, что данный метод очень прост в реализации, точность измерений оставляет желать лучшего, т.к. сопротивление шунта зависит от температуры, которая не является постоянной. Кроме того, такой метод не позволяет организовать гальваническую развязку между нагрузкой и измерителем тока, что очень важно в приложениях, где нагрузка питается высоким напряжением.

Датчик тока Allegro ACS712

Основные недостатки измерения тока с помощью резистивного шунта:

  • нагрузка не имеет прямой связи с «землей»;
  • нелинейность измерений, обусловленная температурным дрейфом сопротивления резистора;
  • отсутствие гальванической развязки между нагрузкой и схемой измерения.

В статье мы рассмотрим экономичный и прецизионный интегральный датчик тока Allegro ACS712, принцип его работы, основанный на эффекте Холла, характеристики и способ подключения к микроконтроллеру для измерения постоянного тока. Статья разделена на две части: первая посвящена устройству и характеристикам датчика, вторая – интерфейсу с микроконтроллером и работе с датчиком.

Датчик тока ACS712 основан на принципе, открытом в 1879 году Эдвином Холлом (Edwin Hall), и названным его именем. Эффект Холла состоит в следующем: если проводник с током помещен в магнитное поле, то на его краях возникает ЭДС, направленная перпендикулярно, как к направлению тока, так и к направлению магнитного поля. Эффект иллюстрируется Рисунком 2. Через тонкую пластину полупроводникового материала, называемую элементом Холла, протекает ток I. При наличии магнитного поля на движущиеся носители заряда (электроны) действует сила Лоренца, искривляющая траекторию движения электронов, что приводит к перераспределению объемных зарядов в элементе Холла. Вследствие этого на краях пластины, параллельных направлению протекания тока, возникает ЭДС, называемая ЭДС Холла. Эта ЭДС пропорциональна векторному произведению индукции B на плотность тока I и имеет типовое значение порядка нескольких микровольт.

Микросхема ACS712 выпускается в миниатюрном 8-выводном корпусе SOIC для поверхностного монтажа (Рисунок 3). Она состоит из прецизионного линейного датчика Холла с малым напряжением смещения и медного проводника, проходящего у поверхности чипа и выполняющего роль сигнального пути для тока (Рисунок 4). Протекающий через этот проводник ток, создает магнитное поле, воспринимаемое встроенным в кристалл элементом Холла. Сила магнитного поля линейно зависит от проходящего тока. Встроенный формирователь сигнала фильтрует создаваемое чувствительным элементом напряжение и усиливает его до уровня, который может быть измерен с помощью АЦП микроконтроллера.

Читайте также:  Амплитуда тока молнии обычно находится в пределах

Микросхема ACS712 в корпусе SOIC

Внутренняя конструкция датчика тока ACS712

На Рисунке 5 показано расположение выводов ACS712 и типовая схема его включения. Выводы 1, 2 и 3,4 образуют проводящий путь для измеряемого тока с внутренним сопротивлением порядка 1.2 мОм, что определяет очень малые потери мощности. Его толщина выбрана такой, чтобы прибор выдерживал силу тока в пять раз превышающую максимально допустимое значение. Контакты силового проводника электрически изолированы от выводов датчика (выводы 5 – 8). Расчетная прочность изоляции составляет 2.1 кВ с.к.з.

В низкочастотных приложениях часто требуется включить на выходе устройства простой RC фильтр, чтобы улучшить отношение сигнал-шум. ACS712 содержит внутренний резистор RF, соединяющий выход встроенного усилителя сигнала со входом выходной буферной схемы (см. Рисунок 6). Один из выводов резистора доступен на выводе 6 микросхемы, к которому подключается внешний конденсатор CF. Следует отметить, что использование конденсатора фильтра приводит к увеличению времени нарастания выходного сигнала датчика и, следовательно, ограничивает полосу пропускания входного сигнала. Максимальная полоса пропускания составляет 80 кГц при емкости фильтрующего конденсатора равной нулю. С ростом емкости CF полоса пропускания уменьшается. Для снижения уровеня шума при номинальных условиях рекомендуется устанавливать конденсатор CF емкостью 1 нФ.

Чувствительность и выходное напряжение ACS712

Выходное напряжение датчика пропорционально току, протекающему через проводящий путь (от выводов 1 и 2 к выводам 3 и 4). Выпускается три варианта токового датчика для разных диапазонов измерения:

  • ±5 А (ACS712-05B),
  • ±20 А (ACS712-20B),
  • ±30 А (ACS712-30A)

Соответствующие уровни чувствительности составляют 185 мВ/А, 100 мА/В и 66 мВ/A. При нулевом токе, протекающем через датчик, выходное напряжение равно половине напряжения питания (Vcc/2). Необходимо заметить, что выходное напряжение при нулевом токе и чувствительность ACS712 пропорциональны напряжению питания. Это особенно полезно при использовании датчика совместно с АЦП.

Точность любого АЦП зависит от стабильности источника опорного напряжения. В большинстве схем на микроконтроллерах в качестве опорного используется напряжение питания. Поэтому при нестабильном напряжении питания измерения не могут быть точными. Однако если опорным напряжением АЦП сделать напряжение питания датчика ACS712, его выходное напряжение будет компенсировать любые ошибки аналого-цифрового преобразования, обусловленные флуктуациями опорного напряжения.

Рассмотрим эту ситуацию на конкретном примере. Допустим, что для опорного напряжения АЦП и питания датчика ACS712 используется общий источник Vcc = 5.0 В. При нулевом токе через датчик его выходное напряжение составит Vcc/2 = 2.5 В. Если АЦП 10-разрядный (0…1023), то преобразованному выходному напряжению датчика будет соответствовать число 512. Теперь предположим, что вследствие дрейфа напряжение источника питания установилось на уровне 4.5 В. Соответственно, на выходе датчика будет 4.5 В/2 = 2.25 В, но результатом преобразования, все равно, будет число 512, так как опорное напряжение АЦП тоже снизилось до 4.5 В. Точно также, и чувствительность датчика снизится в 4.5/5 = 0.9 раз, составив 166.5 мВ/А вместо 185 мВ/А. Как видите, любые колебания опорного напряжения не будут источником ошибок при аналого-цифровом преобразовании выходного напряжения датчика ACS712.

На Рисунке 7 представлены номинальные передаточные характеристики датчика ACS712-05B при напряжении питания 5.0 В. Дрейф выходного напряжения в рабочем диапазоне температур минимален благодаря инновационной технологии стабилизации.

Часть 2 — Подключение датчика к микроконтроллеру и работа с ним

Перевод: Vadim по заказу РадиоЛоцман

Источник

Датчики тока для работы с Ардуино

Главное преимущество микроконтроллера по сравнению со многими средствами управления оборудованием — универсальность. Можно не только отдавать с его помощью конечные команды на включение двигателей, зажигания ламп, или произведения каких-либо действий, но и выполнять определенные «логические» реакции в зависимости от изменившихся внешних условий. Последняя возможность предоставляется в первую очередь внешними датчиками и уже во вторую ветвлениями внутренней программы. В сущности, микроконтроллер — миниатюрный компьютер, ограниченный по мощности, но обладающий определенными плюсами, изначально направленными на применение его в комплексе с различной аппаратурой. Сюда относятся не только контролирующие цепи, но и различные сенсоры, предоставляющие информацию самому логическому блоку. В контексте статьи речь пойдет об одном из ярких представителей названого класса устройств — Ардуино и датчике тока ACS712, специально разработанного в целях совместного с ним использования.

Практические ниши применения

Несмотря на определенные ограничения сенсора, ниши в которых он действительно пригодится весьма широки. Посудите сами — в сущности, потребление электроэнергии возникает единовременно с моментами включения устройств, находящихся на линии. А сам сенсор именно в это время начинает регистрировать показания. То есть датчик тока с Arduino можно использовать не только, как конечный измеряющий прибор, но и в качестве контролирующей части, определяющей активацию какого-либо оборудования. Самый простой пример — обычная лампа. Совместив микроконтроллер с датчиком света и тока можно добиться того, что будет не только производиться активация освещения в темный период времени, но и станет отправляться сигнал пользователю, если источник видимого излучения выйдет из строя. Или, другим примером может стать контроль физического состояния насоса, двигателя, а также любого электрического прибора, потребляющего энергию.

Опять же. Применяя Arduino одновременно с ACS712, как наиболее распространенным датчиком тока платформы, можно использовать микроконтроллер именно в роли детектирующего прибора, который в зависимости от определенного времени производит замер потребления конечной сети. Или как очень «умный» мультиметр, с возможностью построения On-line графиков на дополнительно соединенном к аппарату экране или внешнем компьютере.

Читайте также:  В цепи резонанс токов при увеличении сопротивления

ACS712 на основе эффекта Холла

Описываемый датчик построен на основе эффекта Холла. Представьте себе проводящую пластину, к двум сторонам которой подключены полюсы источника тока. На боковых ее гранях напряжение регистрироваться не будет, так как количество «дырок» поступающей энергии с одной стороны равно сумме электронов с другой. Ситуация изменится, если на поверхность начнет действовать магнитное поле. На боковые грани пластины при нем начнет идти часть тока линии, который можно замерить. Его количество станет пропорционально равному воздействию, а значит доступным к определению. Именно названый эффект и лежит в основе работы датчика Холла.

Технологически, в ACS712 сенсор настоящего типа представлен микросхемой SOIC-8, со следующим расположением контактов:

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

Конечно, в контексте платы дополняющей Arduino, электрические контакты выполнены с более удобным расположением соединяющих проводников:

Два контакта одной стороны устройства предназначены для подключения его в разрыв цепи прохождения тока нагрузки, другие три – целям соединения к самому микроконтроллеру. Здесь OUT связывается с любым аналоговым входом Arduino, на VCC подается +5В питания, GND с общей землей.

Вообще существуют три вида датчиков Холла. В случае Arduino используется только один – униполярный, срабатывающий при наличии тока линии, создающего магнитное поле и прекращающий функционировать при его отсутствии. Реализация возможностей одного из оставшихся – биполярного выполняется введением логической переменной в обычный программный скетч Arduino для ACS712. Суть сенсора указанного типа – поступивший сигнал активирует работу устройства, которая продолжается, даже после его исчезновения. При повторном импульсе на линии выполняется отключение названого состояния.

Технические характеристики

Рассмотрим характеристики платы ACS712 более подробно, естественно с разделением их в зависимости от возможностей различных моделей:

  • Питание — 5В;
  • потребляемый ток — 0,11А;
  • сопротивление по шинам — до 1,2 мОм;
  • вид измеряемой характеристики — постоянный или переменный ток;
  • температурный режим работы — от –40 до +85°С;
  • дополнительные индикаторы — присутствует светодиод поступления тока на питание устройства;
  • размеры (в среднем) — 31 x 13 мм;
  • критичная сила тока, приводящая к пробою устройства — 50А.
Модель мВ/А
ACS712 5A 185
ACS712 20A 100
ACS712 30A 66
ACS713 20A 185
ACS713 30A 133

Внутренняя электронная схема сенсора:

Ограничения ACS712

Основное смущающее пользователей ограничение — максимальный вольтаж измеряемого напряжения, равный 5В. В принципе, вопрос решается достаточно просто обычным делителем, позволяющим поднять значение характеристики практически до любого номинала.

Отсутствие корпуса, также не вызывает проблем — миниатюрность самой конструкции позволяет ее упаковать в оболочку аппарата содержащую сам микроконтроллер, естественно с электрической изоляцией контактных площадок на случай измерения много амперных токов. А вот устанавливать датчик рядом с излучателями магнитного поля крайне не рекомендуется — будут сбиты показания сенсора. Для чего собственно и нужен, в некоторых случаях, экранирующий корпус.

Теперь, что касается чувствительности: чем датчик рассчитан на больший ампераж работы, тем она ниже. Что тоже нужно брать во внимание, при проектировании схем на основе ACS712. Отдельным вариантом тут выступает ACS713 30A, частично сохраняющий названую возможность за счет относительно удачной схемы.

Схемы подключения и организация работы

Градация аналогового сигнала Arduino составляет 1024 бит. Так как при отсутствии нагрузки сенсор в любом случае показывает 2,5В, значение по умолчанию порта, к которому подключена ACS712 будет 512, что необходимо учитывать при написании скетча микроконтроллера.

Переходя к практике, в начале стоит рассмотреть схему цифрового мультиметра на основе Arduino, от которой впоследствии и действовать, выполняя аналогичные подключения и общие принципы программирования для иных устройств.

и скетч для вывода показаний датчика:

#include

LiquidCrystal lcd (7, 6, 5, 4, 3, 2);
const int APIN = A3; // аналоговый пин подключения микроконтроллера
int SENS_ACS712 = 66; // Здесь задается чувствительность конкретного ACS712
int ADCV= 0;
int MINV = 2500;
double ADCVOL = 0;
double tVAL = 0;
void setup()
<
// Отладочная часть, при работе с экраном не используется
// Serial.begin(9600);
lcd.begin(16, 2);
lcd.print(» ACS823 SENS «);
lcd.setCursor(0,1);
lcd.print(» from ARDUINO «);
delay(2000);
>
void loop()
<
ADCV = analogRead(APIN);
ADCVOL = (ADCV / 1024.0) * 5000;
tVAL = ((ADCVOL — MINV) / SENS_ACS712);
// Отладочная часть, при работе с экраном не используется
// Serial.print(«Sens pure = » );
// Serial.print(ADCV);
lcd.clear();
delay(1000);
//lcd.display();
lcd.setCursor(0,0);
lcd.print(«ADC = «);
lcd.setCursor(12,0);
lcd.print(ADCV);
delay(2000);
// Отладочная часть, при работе с экраном не используется
//Serial.print(«\t mV = «);
//Serial.print(ADCVOL,3);
lcd.setCursor(0,0);
lcd.print(«V/mV = «);
lcd.setCursor(10,0);
lcd.print(ADCVOL,1);
delay(2000);
// Отладочная часть, при работе с экраном не используется
//Serial.print(«\t tVAL = «);
//Serial.println(tVAL,3);
lcd.setCursor(0,0);
lcd.print(«ACS712 = «);
lcd.setCursor(10,0);
lcd.print(tVAL,2);
lcd.setCursor(14,0);
lcd.print(«A»);
delay(2500);
>

Есть унифицированные библиотеки, производящие конвертацию показаний сенсора в понятные милливольты без самостоятельной разработки формул. Примером может послужить скетч, выполняющий аналогичные предыдущему действия, только вместо вывода на экран, полученные значения отправляются в COM-порт Arduino. С вычислительными целями применяется библиотека TroykaCurrent. Приведенный код применяется для измерения переменного тока, его модификация для постоянного помечена в тексте.

#include
#define APIN A3
ACS712 dataI(APIN);
void setup() <
Serial.begin(9600);
>
void loop() <
Serial.print(«Troyka value: «);
Serial.print(dataI.readCurrentAC());
// Если требуется постоянный, то используется
// конструкция Serial.print(dataI.readCurrentDC());
Serial.println(» A»);
delay(1000);
>

Теперь, что касается контроля, к примеру, функциональности двигателя. Внешний вид подключенного оборудования:

Кусок кода, который в цикле проверяет работу потребляющего устройства:

const int APIN = A3; // аналоговый пин подключения микроконтроллера
void setup() <
SetSerial(9600);
>
void loop() <
// для обычного контроля любого устройства потребления,
// знание конкретной характеристики объема расходуемого
// тока не важно, главное его определить и отправить
// сообщение в com-порт
if (analogRead(APIN)>2500)
Serial.print(«Device Active)
else
Serial.print(«Device in state OFF»);
delay(2000);
>

Читайте также:  Двигатель постоянного тока доклад по физике

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

Ну, и напоследок рассмотрим метод серьезного применения датчика ACS712 для контроля нагрузки домашней сети электропитания 220В, до 30А при допустимых потребителях 6 кВт. Несравненным плюсом конструкции служит вывод получаемой информации при помощи Ардуино в сеть, наглядным для человека образом, с графиками и в браузере. Достаточно набрать в подключенном к сети c Arduino компьютере адрес http://192.168.100.10. Единственное ограничение — требуется, чтобы интернет также был доступен. Последнее нужно для внешних компонентов, обрабатывающими числовые значения и выводящие графики.

Сам скетч, который приводится без изменений — уж очень хорошо реализована идея, можно обнаружить по адресу http://liccontrol.com/articles/web_monitor.ino

Вывод

Хотелось бы заметить, что сенсоры ACS712 с 2017 года больше не производятся. Взамен их правообладатель Allegro Microsystems выпускает модификацию ACS723, которая и поставляется на мировые рынки в текущий момент времени.

Видео по теме

Источник

Digitrode

цифровая электроника вычислительная техника встраиваемые системы

  • Вычислительная техника
    • Микроконтроллеры микропроцессоры
    • ПЛИС
    • Мини-ПК
  • Силовая электроника
  • Датчики
  • Интерфейсы
  • Теория
    • Программирование
    • ТАУ и ЦОС
  • Перспективные технологии
    • 3D печать
    • Робототехника
    • Искусственный интеллект
    • Криптовалюты

Чтение RSS

Arduino и датчик тока ACS712

Датчик Холла для Arduino

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

Arduino и датчик тока ACS712

В этом проекте мы расскажем о датчике тока ACS712, о том, как работает датчик тока на основе эффекта Холла и, наконец, о том, как соединить датчик тока ACS712 с Arduino.

Микросхема датчика тока ACS712

Датчик тока ACS712 является продуктом Allegro MicroSystems, он может использоваться для точного измерения как переменного, так и постоянного тока. Этот датчик основан на эффекте Холла, а ИС имеет встроенное устройство с эффектом Холла. На выходе датчика тока ACS712 выдается аналоговое напряжение, пропорциональное переменному или постоянному току (в зависимости от того, что измеряется).

ACS712 доступна в 8-выводном корпусе SOIC, и на следующем рисунке показана ее схема контактов (распиновка ACS712).

Микросхема датчика тока ACS712

IP+ – это плюсовая клемма для измерения тока, IP- – это минусовая клемма для измерения тока, GND – это сигнальная земля, FILTER – для подключения внешнего конденсатора, VIOUT – аналоговый выход, VCC – питание.

Существует три варианта датчика ACS712 в зависимости от диапазона его измерения тока. Оптимизированные диапазоны: +/- 5А, +/- 20А и +/- 30А. в зависимости от варианта чувствительность на выходе также изменяется следующим образом: ACS712 ELC-05 (+/- 5A) чувствительность 185 мВ/А, ACS712 ELC-20 (+/- 20A) чувствительность 100 мВ/А, ACS712 ELC-30 (+/- 30A) чувствительность 66 мВ/А.

Как упоминалось ранее, ASC712 основана на эффекте Холла. В микросхеме имеется медная полоса, соединяющая контакты IP+ и IP- внутри. Когда некоторый ток протекает через этот медный проводник, создается магнитное поле, которое определяется датчиком Холла.

Микросхема датчика тока ACS712

Затем датчик Холла преобразует это магнитное поле в соответствующее напряжение. В этом методе вход и выход полностью изолированы.

Схема датчика тока на основе ACS712

Стандартная схема применения с использованием датчика тока ASC712 приведена в его техническом описании, и на следующем изображении:

Схема датчика тока на основе ACS712

Модуль датчика тока ACS712

Используя один из вариантов ИС ACS712 (5А, 20А или 30А), несколько производителей разработали платы модуля датчика тока ASC712, которые могут быть легко подключены к микроконтроллеру, такому как Arduino. На следующем рисунке показана плата датчика тока ASC712, используемая в этом проекте.

Модуль датчика тока ACS712

Как видите, это довольно простая плата с несколькими компонентами, включая микросхему ASC712, несколько пассивных компонентов и разъемов. Эта конкретная плата состоит из ASC712 ELC-30, то есть диапазон этой платы +/-30A.

Подключение ACS712 к Arduino (схема)

Измерение напряжения (постоянного напряжения) с помощью Arduino очень просто. Если ваше требование состоит в том, чтобы измерять напряжение меньше или равное 5 В, то вы можете напрямую измерять с помощью аналоговых выводов Arduino. Если вам нужно измерить более 5 В, то вы можете использовать простую сеть делителя напряжения или модуль датчика напряжения.

Когда дело доходит до измерения тока, Arduino (или любой другой микроконтроллер) нуждается в помощи в виде специального датчика тока. Итак, сопряжение датчика тока ACS712 с Arduino помогает нам измерять ток с помощью Arduino. Поскольку ASC712 может использоваться для измерения переменного или постоянного тока, проект с Arduino может быть реализован для измерения того же.

Принципиальная схема подключения датчика тока ACS712 к Arduino показана на следующем рисунке.

Принципиальная схема подключения датчика тока ACS712 к Arduino

Код программы взаимодействия Arduino и датчика тока ACS712

Работа датчика тока ACS712 с Arduino

Подключите все согласно принципиальной схеме и загрузите код в Arduino. В коде есть небольшой расчет для измерения тока. Во-первых, если предположить, что напряжение VCC-ASC712 составляет 5 В, то при отсутствии тока, протекающего через клеммы IP + и IP-, выходное напряжение на VIOUT ACS712 составляет 2,5 В. Это означает, что вам нужно вычесть 2,5 В из напряжения, измеренного на аналоговом выводе.

Теперь, чтобы рассчитать ток, разделите это значение на чувствительность датчика (185 мВ / A для датчика 5A, 100 мВ / A для датчика 20A и 66 мВ / A для датчика 30A). Это все реализовано в коде.

Источник