ZMPT101B Voltage Sensor
How You Used the ZMPT101B Voltage Sensor (Step by step)
Introduction
The ZMPT101B is a voltage sensor commonly used in electronic projects to measure alternating current (AC) voltages. It is a compact size and easily accessible module that provides a simple way to monitor AC voltages in various Projects.
Principle of Operation
- The ZMPT101B voltage sensor operates based on the principle of voltage transformation and voltage division. It uses a voltage transformer and a voltage divider circuit to measure AC voltages accurately and provide a proportional output voltage.
- The output voltage range is typically scaled down to a more manageable level, such as 0-5V or 0-3.3V, to ensure compatibility with common electronic systems.
Specifications of ZMPT101B Voltage Sensor
Input Voltage: 0-250V AC
- ZMPT101B is designed to measure alternating current (AC) voltages in the range of 0 to 250V AC.
Output Voltage: Typically 0-5V or 0-3.3V
-
- The output voltage of the module is typically scaled down to a range suitable for interfacing with Arduino or other electronic components. The output voltage range is 0 to 5V.
Operating Frequency: 50Hz or 60Hz
-
- ZMPT101B voltage sensor module is optimized for AC power systems operating at either 50Hz frequency.
Accuracy: ±3%
-
- The Sensor measurement accuracy of around ±3% and the output voltage may have a maximum deviation of 3% from the true value of the input voltage.
Load Resistance: >10kΩ
-
- The load resistance for the module’s output is greater than 10 kilohms (kΩ). This loading effect and accurate voltage measurement for the sensor.
Isolation Voltage: >1kV
-
- The ZMPT101B module galvanic isolation between the input and output sides with an isolation voltage rating of greater than 1 kilovolt (kV). This electrical safety minimizes the risk of electric shock.
Sensor Temperature Range: -20°C to +85°C
-
- The Sensor is designed to operate at a temperature range of -20°C to +85°C, allowing for performance in various environmental conditions.
Advantage of ZMPT101B Voltage Sensor
- Easy Integration- flexibility allows for versatile usage in different voltage monitoring and control systems.
- Accurate Measurement
- Proportional Analog Output
Application of ZMPT101B Voltage Sensor
- Power Monitoring: It allows for real-time monitoring of voltage levels, which can be used to assess power quality, detect voltage fluctuations, or identify abnormal voltage conditions.
- Energy Management Systems: The module is utilized in energy management systems to monitor and analyze power consumption in buildings or industrial facilities.
- Industrial Control Systems: The ZMPT101B is employed in industrial control systems to monitor AC voltages in machinery, motors, and power distribution systems.
Example With Arduino
Circuit Diagram
Code with 16×2 LCD Display
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
#include <Filters.h> #include <LiquidCrystal.h> const int rs = 7, en = 6, d4 = 5, d5 = 4, d6 = 3, d7 = 2; LiquidCrystal lcd(rs, en, d4, d5, d6, d7); float testFrequency = 50; int Sensor = 0; float intercept = 0.7; float slope = 0.04; float current_Volts; unsigned long printPeriod = 1000; unsigned long previousMillis = 0; void setup() { lcd.begin(16, 2); lcd.print("Voltage:"); delay(1000); } void loop() { RunningStatistics inputStats; while (true) { Sensor = analogRead(A0); inputStats.input(Sensor); if ((unsigned long)(millis() - previousMillis) >= printPeriod) { previousMillis = millis(); current_Volts = intercept + slope * inputStats.sigma(); current_Volts = current_Volts * (40.3231); lcd.setCursor(9, 0); lcd.print(current_Volts); lcd.print("V"); } } } |
Interfacing With ESP32 Board
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
#include <Wire.h> #include <WiFiClient.h> #include <BlynkSimpleEsp32.h> #include <ZMPT101B.h> #define SENSITIVITY 500.0f ZMPT101B voltageSensor(27, 50.0); int buzzer = 4; BlynkTimer timer; char auth[] = "t7GpELfK9RNWe9a8fTYNiyyjmac9Mp"; char ssid[] = "justdoelectronics"; char pass[] = "@12345"; void setup() { Serial.begin(115200); Blynk.begin(auth, ssid, pass, "blynk.cloud", 80); pinMode(buzzer, OUTPUT); voltageSensor.setSensitivity(SENSITIVITY); } void sensor() { float voltage = voltageSensor.getRmsVoltage(); Serial.println(voltage); Blynk.virtualWrite(V1, voltage); } void loop() { sensor(); Blynk.run(); delay(200); } |
Output
We Print the ZMPT101B Voltage Sensor Reading in the Serial monitor.
Here we check the AC voltage with a Multimeter and ZMPT101B Voltage Sensor Through and you just see is same voltage display in the serial monitor and multimeter display.
ZMPT101B Voltage is used for measuring the AC voltage properly.
Conclusion
The ZMPT101B voltage sensor operates by using a voltage transformer to step down the AC input voltage and a voltage divider circuit to further reduce the voltage level. The module provides an analog output voltage that is proportional to the measured input voltage, allowing for easy integration into electronic systems for AC voltage monitoring and control.
Sensor