Dealing with the 110V/220V AC mains voltage and measuring the AC load parameters are regarded as a challenge for electronic designers in circuit design and calculations. The situation becomes more complex when dealing with inductive loads because they cause a phase shift between voltage and current and alter the sine-wave shape of the AC signal (resistive loads do not). The power factor of resistive loads is theoretically equal to 1.
In this article/video, I introduce a circuit that can measure AC RMS voltage, RMS current, active power, power factor, and energy consumption (KWh) of the loads. I used a low-cost STM32 Microcontroller and provided four push buttons for initial calibration. The device can independently measure the parameters and display the results on a bright 1.3-inch OLED display. The measurement error rate is around 0.5% or lower.
For the schematic and PCB design, I use Altium Designer 23. I shared the PCB project with my colleague for feedback and edits through Altium 365's secure cloud space. The Octopart component search engine proves invaluable for obtaining component information and generating the Bill-of-Materials (BOM). To ensure the production of high-quality fabricated boards, I forwarded the Gerber files to PCBWay. I used the Siglent SDM3045X benchtop multimeter to calibrate the circuit. That’s a quick and easy process.
It's a cool device for everyday electronics, so let’s get started! :-)