• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to secondary sidebar
  • Skip to footer

У Павла!

  • Контроллеры
    • Arduino
      • Приборы
      • Музыка
      • Проекты Arduino
      • Уроки Arduino
      • Игры на Arduino
      • Роботы на Ардуино
      • FLProg
    • Одноплатные ПК
      • Orange pi
      • Raspberry pi
        • Raspberry pi pico
        • Raspberry pi server
        • Проекты Raspberry pi
    • ESP
      • ESP8266
        • NodeMCU
      • ESP32
      • M5stack
    • Другие контроллеры
      • STM32
  • Умный дом
    • Home Assistant
      • Автоматизации
    • Tuya
    • Bluetooth
    • ESPHome
    • Frigate
    • Telegram
    • Яндекс
  • ЧПУ
  • 3d печать
  • Об авторе

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

9 сентября, 2017

Для данной реализации нам понадобится:

Датчик тока: http://ali.pub/1th4ly

Ардуино uno: http://ali.pub/1th4sk

Контактные провода: http://got.by/1th4xf

Прежде чем приступить к материалу, я Вас попрошу, если нравится то, что я делаю и хотите следить за моей деятельностью, то рекомендую подписаться на мой телеграмм канал: https://t.me/ypavla
Там я публикую новости о вышедших видео, статьях и разные устройства для умного дома и не только показываю.
Спасибо за внимание, теперь продолжим.

 

В видео я немного ошибся! пин “N” на датчике ненужно никуда подключать!!! из за этого у меня и были расхождения в потреблении

Схема подключения:

Схема в FLPROG:

Модуль TA12  для FLProg можно скачать отсюда: https://yadi.sk/d/VnZbLWjh3MjoZX

При создании данного блока был взят код за основу с этого сайта: http://henrysbench.capnfatz.com/henrys-bench/arduino-current-measurements/ta12-100-arduino-ac-current-sensor-tutorial/

Вот сам скетч получившийся в итоге:

 

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C _lcd1(0x27, 16, 2);
int _dispTempLength1=0;
boolean _isNeedClearDisp1;

float wire_mA_197767732_1;
float wire_A_197767732_1;
int sensorTA12_197767732_1= 0; 
float nVPP_197767732_1;                
float nCurrThruResistorPP_197767732_1;
float nCurrThruResistorRMS_197767732_1;
float nCurrentThruWire_197767732_1;    
float result_197767732_1;  
int readValue_197767732_1;           
int maxValue_197767732_1;
unsigned long start_time_197767732_1;
int _disp1oldLength = 0;
void setup()
{
Wire.begin();
_lcd1.init();
_lcd1.backlight();

pinMode(sensorTA12_197767732_1, INPUT);
}
void loop()
{if (_isNeedClearDisp1) {_lcd1.clear(); _isNeedClearDisp1= 0;}





   maxValue_197767732_1= 0;    
  start_time_197767732_1 = millis();
   while((millis()-start_time_197767732_1) < 1000) { readValue_197767732_1 = analogRead(sensorTA12_197767732_1); if (readValue_197767732_1 > maxValue_197767732_1) 
       {           
           maxValue_197767732_1 = readValue_197767732_1;
       }
   }     
   result_197767732_1 = (maxValue_197767732_1 * 5.0)/1024.0;

   nCurrThruResistorPP_197767732_1 = (result_197767732_1 / 200.0) * 1000.0;   
   
   nCurrThruResistorRMS_197767732_1 = nCurrThruResistorPP_197767732_1 * 0.707;   
   
   nCurrentThruWire_197767732_1 = nCurrThruResistorRMS_197767732_1 * 1000;   
   
  wire_mA_197767732_1=nCurrentThruWire_197767732_1;

wire_A_197767732_1=nCurrentThruWire_197767732_1 / 1000;




   
   
   
   


  
if (1) {
_dispTempLength1 = ((( _floatToStringWitRaz(wire_A_197767732_1,2)))).length();
if (_disp1oldLength > _dispTempLength1) {_isNeedClearDisp1 = 1;} 
_disp1oldLength = _dispTempLength1;
_lcd1.setCursor(int((16 - _dispTempLength1)/2), 0);
_lcd1.print((( _floatToStringWitRaz(wire_A_197767732_1,2))));
} else {
if (_disp1oldLength > 0) {_isNeedClearDisp1 = 1; _disp1oldLength = 0;} 
}




}
String  _floatToStringWitRaz(float value, int raz)
{
 
  return String(value,raz);
}

 

Демонстрация работы данной программы можно увидеть в видео приведенном в конце статьи.

Primary Sidebar

Поиск

Новые записи

  • Автоматизация перезагрузки устройства по команде Ping.
  • Разблокирование и добавление шлюза Xiaomi gateway 3 в Home Assistant для управления Bluetooth устройствами из экосистемы Xiaomi Home (mihome)
  • Интеграция для локального управления (без интернета) ик пультом Tuya работающим по wifi из Home Assistant
  • Транслируем показания с Уличного Bluetooth Датчика температуры по BTHome на дисплей датчика температуры XIaomi LYWSD03MMC
  • Заставляем Bluetooth датчики температуры tuya и xiaomi отправлять данные по Zigbee в Home Assistant.

Официальный YouTube Канал M5Stack:

Подписывайтесь на Телеграм канал

https://t.me/ypavla

Подписаться на YouTube!

Secondary Sidebar




Подписывайтесь на Telegram Канал!

У Павла!

Footer

Copyright_У Павла! © 2025 ·