Обычно, если я покупаю электрический прибор большой мощности, я дважды проверяю его энергопотребление, когда это возможно, а когда нет, например, кабель напрямую подключен к прибору или сила тока слишком высока, я использую цифровые электрические клещи. Оба метода являются довольно удобным, поскольку вам не нужно отрезать провод для измерения тока и определения расхода электроэнергии, но они не позволяют собирать данные, поскольку нет подключаются к сети. Ранее на этой неделе, я сталкивался в проектах с использованием ESP8266 сетевой монитор энергии, для измерения тока питающей сети при установке солнечной панели, для электросчетчика или для газового счетчика. Они используют фото датчик для измерения энергопотребления своего электрического счетчика, который работает, но это может быть проблематичным, если счетчик находится на улице, датчик тока iSnail использует эффект холла совсем как токоизмерительные клещи, но вместо того, чтобы показывать текущий ток на дисплее, датчик выдает от 0 до 5 В, то есть вы можете подключить его на микро-контроллер для обработки данных, как вам нравится. Это мило, но в то время как токоизмерительные клещи стоят около $10, 25 А версия iSnail идет за $40, так что я занялся поиском альтернатив. Я нашел дешевый датчик тока, модуль на основе Allegro Systems ACS712, поддерживающий силу тока 5 А, 20 А или 30 А, легко работающий с аналоговыми входами платы Arduino, 5 А версия продается на eBay всего за $1 для 5А, а версии 20 А & 30 А обычно продают менее чем за $2.
Аппаратные характеристики довольно простые:
- ACS712 линейный датчик тока IC на основе эффекта холла (техническое описание)
- 2-клемы для нагрузки DC или AC
- 3-контактный разъем, контакты VCC (5 В), GND и OUT
- Входной ток и чувствительность (шкала измерения)
- -/+ 5 А – 185 мВ/А
- -/+ 20 А – 100 мВ/А
- -/+ 30 А – 66 мВ/А
- Размеры – 31 x 13 мм
Поскольку IC сенсор может измерять в обоих направлениях, через контакт OUT проходит напряжение VCC/2 (2.5 В), когда нет тока и других значений, которые могут быть меньше или больше, чем напряжение VCC/2 в зависимости от направления тока сообщит фактический ток.
Измерение силы постоянного тока (DC) делается очень легко, нужно просто взять одно измерение, вычесть напряжение VCC/2 и разделим на чувствительность. Альтернативный ток измерить немного сложнее, поскольку вам придется производить различные измерения, чтобы найти RMS значение как описано на сайте Henry’s bench. Поскольку плата была доступна в течение нескольких лет, есть много документации в сети для Arduino. Один человек (Julian) сделал очень хороший ролик, показывающий как она работает.
Датчик тока ACS712 также может быть сопряжен с ESP8266, но поскольку беспроводной чип имеет только аналоговый вход от 0 до 1 В, выходное напряжение ACS712 должно быть уменьшено, что приведет к понижению точности, если не использовать через внешний ADC чип. ESP32 не имеет этой проблемы так как его аналоговый вход поддерживает диапазон от 0 ло 4 В, хотя я понимаю что ESP32 имеет несколько собственных, встроенных функций для контроля энергии.
Выражаем свою благодарность источнику с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.