Коротко об ACS712
Модуль ACS712 преобразует постоянный или переменный ток в пропорциональное аналоговое напряжение для считывания АЦП микроконтроллера. Датчик работает в обоих направлениях, поэтому подходит для контроля потребления, заряда и разряда, тока двигателя и других нагрузок.
Ключевые характеристики
- Питание
- 5 В
- Измеряемый ток
- постоянный и переменный, двунаправленный
- Диапазон по модификации
- ±5 А, ±20 А или ±30 А
- Типичная чувствительность
- 185 мВ/А для 5 А; 100 мВ/А для 20 А; 66 мВ/А для 30 А [1]
- Выход
- аналоговый OUT; при нулевом токе около VCC/2
- Время нарастания выходного сигнала
- 5 мкс
- Сопротивление внутренней токовой шины ACS712
- 1,2 мОм
- Размеры модуля
- 31,5 × 13,5 × 12 мм
Подробное описание и особенности
Как формируется сигнал
Измеряемый ток проходит через клеммник и внутреннюю проводящую шину ACS712. Датчик Холла преобразует создаваемое током магнитное поле в напряжение OUT, а силовой проводник внутри микросхемы электрически отделен от сигнальных выводов.[1] Модуль нужно включать последовательно с нагрузкой; дополнительный измерительный шунт в типовой схеме не требуется.
При питании 5 В нулевой уровень OUT находится примерно около 2,5 В. Ток в одном направлении смещает выход выше этого уровня, в противоположном — ниже. Нулевой уровень и чувствительность зависят от питания, поэтому стабильность 5-вольтовой линии и опорного напряжения АЦП влияет на результат.[1]
Выбор версии и точность
Версия на 5 А дает наибольшее изменение выходного напряжения на каждый ампер и лучше подходит для меньших токов. Модификации на 20 А и 30 А расширяют диапазон, но требуют более точного АЦП и более тщательной обработки сигнала при измерении малых токов.
Для практической работы сначала определите фактический ноль без тока, а затем применяйте коэффициент именно своей модификации. Усреднение или фильтрация уменьшают шум низкочастотных измерений, но одновременно замедляют реакцию на быстрые изменения.[1]
Подойдет / не подойдет
Подойдет
- для измерения тока в низковольтных цепях постоянного или переменного тока;
- для контроля пускового и рабочего тока двигателей, насосов, вентиляторов и приводов;
- для регистрации заряда и разряда аккумулятора, если напряжение контролируется отдельно;
- для сигнализации или программного порога перегрузки вместе с контроллером и отдельным исполнительным элементом;
- для учебных стендов и самодельных измерителей с аналоговым входом.
Не подойдет
- для прямого цифрового считывания через I²C или SPI без внешнего АЦП;
- для одновременного измерения тока, напряжения и мощности самим модулем;
- для прямого подключения OUT к АЦП, который не допускает 5-вольтовый сигнал;
- как самостоятельный предохранитель или аппаратная защита от короткого замыкания;
- для сетевого напряжения без подтвержденной безопасности всей платы, монтажа и корпуса.
Для низковольтных DC-систем, где требуются цифровой I²C-выход и одновременное измерение напряжения и тока до 3,2 А, рассмотрите цифровой датчик INA219.
Примеры применения
Контроль нагрузки двигателя
Модуль можно установить последовательно в линию питания DC-двигателя, а контроллер — запрограммировать на регистрацию пускового тока и обнаружение нетипичного роста при заклинивании. Отключение выполняет отдельный драйвер, реле или силовой ключ.
Индикатор тока с микроконтроллером
Выход OUT можно считывать 5-вольтовым АЦП, вычислять ток и выводить результат на дисплей. Для такого стенда подойдет Nano V3.0 ATmega328P с аналоговыми входами.
Монитор заряда и разряда
Двунаправленный выход позволяет различать направление тока в аккумуляторной низковольтной системе. Для оценки мощности или энергии нужно отдельно измерять напряжение и выполнять расчет в контроллере.
Подключение и калибровка
Определите модификацию
Сверьте маркировку ACS712 на микросхеме и выберите в программе соответствующую чувствительность: 185, 100 или 66 мВ/А. Не определяйте версию только по цвету платы.
Подключите сигнальную часть
Подайте 5 В на VCC, соедините GND с землей контроллера, а OUT — с его аналоговым входом. Для 3,3-вольтового АЦП сначала обеспечьте ограничение и масштабирование напряжения до допустимого диапазона.
Включите модуль в цепь нагрузки
На полностью обесточенной схеме разорвите один силовой провод и подключите его концы к клеммнику модуля. Направление подключения определяет знак измеренного тока.
Запишите нулевой уровень
Без тока через силовую шину считайте серию значений АЦП и определите фактический V0. Выполняйте эту процедуру после запуска системы и повторяйте, если изменились питание или температура.
Рассчитайте ток
Для постоянного тока используйте зависимость
I = (VOUT − V0) / S, где S — чувствительность выбранной версии в согласованных единицах. Для переменного тока нужно собрать достаточное количество отсчетов, убрать нулевое смещение и вычислить действующее значение.
Ограничения и безопасность
Работайте только с обесточенной цепью
Монтаж и перестановку проводов выполняйте без напряжения. Используйте провод, клеммы и предохранитель, рассчитанные на ток нагрузки; модуль не заменяет защитную автоматику.
Диапазон датчика не гарантирует ток всей платы
Обозначение 5 А, 20 А или 30 А задает измерительный диапазон микросхемы. Допустимый длительный ток готового модуля также зависит от клеммника, дорожек, пайки, проводов, температуры и охлаждения; проверяйте нагрев в реальных условиях и оставляйте запас.[2]
Не подавайте 5 В на незащищенный 3,3-вольтовый АЦП
Выход ACS712 работает от 5-вольтового питания. Перед подключением к ESP32, STM32 или другому 3,3-вольтовому контроллеру проверьте максимально допустимое напряжение аналогового входа и примените соответствующее масштабирование.
Изоляция микросхемы не сертифицирует готовый монтаж
Электрическое разделение внутри ACS712 не подтверждает безопасность клеммника, дорожек, расстояний на плате, проводки или корпуса. Без отдельно подтвержденной конструкции используйте модуль в цепях безопасного сверхнизкого напряжения.
Фильтрация изменяет быстродействие
Более сильное усреднение или большая емкость фильтра уменьшают шум, но скрывают короткие импульсы и задерживают реакцию. Настраивайте фильтрацию под нужную полосу сигнала.
FAQ
Измеряет ли ACS712 постоянный и переменный ток?
ACS712 измеряет оба типа тока. Для DC достаточно определить отклонение от нулевого уровня, а для AC контроллер должен обработать последовательность отсчетов и рассчитать действующее значение.
Почему без нагрузки на OUT около 2,5 В?
Напряжение около половины VCC является нормальным нулевым уровнем двунаправленного ACS712. Для более точного результата используйте фактически измеренное значение V0, а не фиксированные 2,5 В.
Какую модификацию выбрать?
Выбирайте наименьший диапазон, который перекрывает ожидаемый ток с безопасным запасом. Версия на 5 А чувствительнее к малым токам, а версии на 20 А и 30 А нужны для больших нагрузок.
Почему показания шумят или не совпадают с амперметром?
Проверьте маркировку версии, нулевую калибровку, напряжение питания, опорное напряжение АЦП, качество проводов и близкие источники магнитных помех. После этого настройте усреднение и при необходимости откалибруйте коэффициент по эталонному прибору.
Документы и источники
- Allegro MicroSystems, ACS712 Datasheet, Rev. 22, 13.02.2024 — принцип работы, питание, аналоговый выход, диапазоны, чувствительность и фильтрация.
- Allegro MicroSystems, AN296291, Rev. 5, In-Pad Vias Improve Thermal Performance for Allegro Current Sensors — зависимость нагрева интегрированного токового проводника от платы и условий охлаждения.