Подключаем датчик переменного тока zmct103c к плате Arduino Nano в среде программирования Arduino IDE.

Страница на этапе разработки

В данном уроке мы с Вами подключим датчик переменного тока zmct103c п плате Arduino Nano:

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

***картинка с осцилографа***

При написании программы мы допустим, что у нас протекает ток синусоидальной формы без искажений, таким образом мы можем определить максимальное и минимальное значение амплитуды и тем самым высчитать значение тока.
Программный код:

#define calibration_const 300
int max_val;
int new_val;
int old_val = 0;
float rms;
float IRMS;

void setup() {
  pinMode(A0,INPUT);
  Serial.begin(9600);
}

void loop() {
  new_val = analogRead(A0);
  if(new_val > old_val) {
    old_val = new_val;
  }
  
  else {
    delayMicroseconds(50);
    new_val = analogRead(A0);
    if(new_val < old_val) {
      max_val = old_val;
      old_val = 0;
    }
    
    rms = max_val * 5.00 * 0.707 / 1024;
    IRMS = rms * calibration_const;
    
    Serial.print("  IRMS: ");
    Serial.println(IRMS);
    
    delay(1000);
  }
}

<<—  Предыдущий урок

СОДЕРЖАНИЕ

Следующий урок —>>

<<—  Предыдущий урок

СОДЕРЖАНИЕ

Следующий урок —>>