- Обзор
- Технические характеристики модуля
- Подключение
- Пример использования
- Часто задаваемые вопросы FAQ
Измерение и контроль протекающего тока являются принципиальным требованием для широкого круга приложений, включая схемы защиты от перегрузки по току, зарядные устройства, импульсные источники питания, программируемые источники тока и пр. Один из простейших методов измерения тока –использование резистора с малым сопротивлением, – шунта между нагрузкой и общим проводом, падение напряжения на котором пропорционально протекающему току. Несмотря на то, что данный метод очень прост в реализации, точность измерений оставляет желать лучшего, т.к. сопротивление шунта зависит от температуры, которая не является постоянной. Кроме того, такой метод не позволяет организовать гальваническую развязку между нагрузкой и измерителем тока, что очень важно в приложениях, где нагрузка питается высоким напряжением. Датчик тока ACS712 основан на эффекте Холла, суть которого в следующем: если проводник с током помещён в магнитное поле, на его краях возникает ЭДС, направленная перпендикулярно к направлению тока и направлению магнитного поля (рисунок 1).
Рисунок 1. Эффект Холла.
Датчик тока ACS712 состоит из датчика Холла и медного проводника. Протекающий через медный проводник ток создает магнитное поле, которое воспринимается элементом Холла. Магнитное поле линейно зависит от силы тока. ACS712 датчик построен на эффекте Холла и имеет линейную зависимость измеряемого тока и выходного сигнального напряжения. Уровень выходного напряжения сенсора пропорционально зависит от измеряемого тока. Диапазон измерения от −5 А до 5 A. Чувствительность — 185 мВ/А. При отсутствии тока выходное напряжение будет равняться половине напряжения питания. Датчики ACS712 и ACS713 питаются от +5В и имеют выход по напряжению. При токе равном нулю напряжение на выходе для ACS712 равно 2,5В и отклоняется в или ближе к нулю или ближе к напряжению питания — зависит от направления протекания тока. ACS712 обеспечивает экономное и прецизионное решение для измерения AC и DC тока в промышленных, автомобильных, коммерческих системах и системах связи. Корпус устройства обеспечивает удобную реализацию для пользователя. Устройство состоит из прецизионного линейного датчика тока на базе эффекта Холла с медным проводником на нижней части. Прикладываемый к медному проводнику ток создает, улавливаемое датчиком, магнитное поле, которое преобразуется в пропорциональное напряжение. Точность устройства оптимизирована за счет непосредственной близости от магнитного сигнала к датчику. Напряжение обеспечивается BiCMOS Hall микросхемой с низким смещением и заводскими настройками точности.Технические характеристики ACS712
- ACS712 работает с постоянным и переменным током;
- Чувствительность датчиков:
- ACS712 5А: 185 мВ/А;
- ACS712 20А: 100 мВ/А;
- ACS712 30А: 66 мВ/А;
- ACS713 20А: 185 мВ/А;
- ACS713 30А: 133 мВ/А.
- Напряжение питания +5,0 В;
- Ток потребления не превышает 11мА;
- Сопротивление токовой шины 1,2 мОм;
- Температура эксплуатации -40°C…+85°C;
- Размер 31мм х 13мм.
Подключение датчик тока ACS712 к плате Arduino
Для подключения ACS712 к плате Arduino используют 3 провода:- VCC – питание (опорное напряжение 5В);
- GND – земля;
- OUT – сигнальный (подключается к аналоговому выводу контроллера Arduino).
Рисунок 2. Подключение датчика тока ACS712 к плате Arduino.
Пример использования
Датчик тока подключается к нагрузке в разрыв цепи через колодки под винт. Для работы с датчиком мы можно использовать библиотеку TroykaCurrent, которая переводит значения аналогового выхода датчика в миллиамперы. В листинге 1 представлен скетч для измерения постоянного тока.Листинг 1
// пин подключения контакта OUT #define PIN_OUT A0 // подключение библиотеки #include <TroykaCurrent.h> // создание объекта ACS712 dataI(PIN_OUT); void setup() { // запуск последовательного порта Serial.begin(9600); } void loop() { // вывод показаний в последовательный порт Serial.print("i = "); Serial.print(dataI.readCurrentDC()); Serial.println(" A"); delay(1000); }
Загружаем скетч на плату Arduino, подключаем нагрузку к источнику питания 12В и смотрим значение тока при подключении хоппера выдачи монет (рис. 4) и двигателя для вендингового аппарата (рис. 6).Рисунок 3. Подключение хоппера выдачи монет к источнику питания 12В.
Рисунок 4. Измерение силы тока при подключении хоппера выдачи монет к источнику питания 12В.
Рисунок 5. Подключение двигателя для вендингового аппарата к источнику питания 12В.
Рисунок 6. Измерение силы тока при подключении двигателя для вендингового аппарата к источнику питания 12В.
В листинге 2 представлен скетч для измерения переменного тока.Листинг 2
// пин подключения контакта OUT #define PIN_OUT A0 // подключение библиотеки #include <TroykaCurrent.h> // создание объекта ACS712 dataI(PIN_OUT); void setup() { // запуск последовательного порта Serial.begin(9600); } void loop() { // вывод показаний в последовательный порт Serial.print("Current is "); Serial.print(dataI.readCurrentAC()); Serial.println(" A"); delay(1000); }
Часто задаваемые вопросы FAQ
- Проверьте правильность подключения датчика тока.
- Проверьте наличие достаточного внешнего питания сервопривода.
Поменяйте полярность подключения проводов к клеммам датчика тока.