Zmpt101b Library For - Proteus

float readACVoltage(int pin) const int samples = 500; float sumSq = 0; for (int i = 0; i < samples; i++) int adc = analogRead(pin); // 0-1023 float voltage = (adc / 1023.0) * 5.0; // 0-5V float offsetRemoved = voltage - 2.5; // -2.5 to +2.5 sumSq += offsetRemoved * offsetRemoved; delayMicroseconds(400); // ~1kHz sampling

float rmsADC = sqrt(sumSq / samples); float realRMS = rmsADC * 73.0; // Calibration factor (your value) return realRMS; zmpt101b library for proteus