energy monitoring for 3-phase 4-wire mains:
In episode #014 I presented the spark counter, my custom wireless electricity meter. This electricity meter will only work for 1-phase 2-wire power distribution systems though. Since I have a 3-phase 4-wire system it was time to do it right, with the spark abacus.
We will explore the different ways to collect electricity consumption measurements: using the S0 impulse output from a 3-pahse 4-wire electricity meter (DDM100TC), using the UART interface of 3 cheap power meters (peacefair PZEM-004T, one per phase), and using the Modbus/RS-485 bus of 3 nice power analyzers (Eastron SDM120-Modbus, one per pahse).
A micro-controller (STM32F103) will collect the measurement values and store then using a WiFi module (ESP-01, ESP8266) into a time series database (influxDB) on a single board computer (Orange Pi PC).
real power vs. apparent power:
We all know voltage times current is power, real power, but don't forget the time component since the RMS values will only give you apparent power, and this is by a power factor different.
introduction to 3-phase 4-wire power distribution:
After showing the tools used to protect myself against the sparks coming out of mains we will see the magic behind three-phase four-wire power distribution and why my custom electricity meter, the spark counter, cannot be used for such installations.
adding DCF77 time synchronisation to the LED clock:
By adding a DCF77 receiver to the LED clock presented in episode 16, the clock can automatically update the time (in Europe) in order to compensate for the RTC drift.
I've also used the opportunity to find out how the "analog" clock works.
use LEDs on a wall to show time progress:
The LED clock is an add-on for round wall clocks. The purpose is to have LEDs on the circumference of the clock to show the progress of the time using coloured light.
For that you will need:
a WS2812b RGB LEDs strip (long enough to go around the clock)
a development board with a STM32F103 micro-controller and 32.768 kHz oscillator for the Real Time Clock (such as the blue pill)
a coin cell battery to keep the RTC running (optional)
a GL5528 photo-resistor to adjust the LED brightness (optional)
driving a vacuum fluorescent display:
The vacuum fluorescent display I salvaged from a Samsung SER6540II was only waiting to get used. This was the ideal opportunity to learn how these retro style displays work (through Supertex HV518 drivers) and get familiar with a new micro-controller (ARM Cortex-M3 based STM32F103).
my custom wireless electricity meter:
While renewing my distribution board the land lord decided to remove the electricity meter. Now I can't note how much electricity I am using. So I decided to build and install my own electricity meter: the spark counter.
Using a cheap power meter (i.e. peacefair PZEM-004), a microcontroller (i.e. Arduino Nano 3.0), radio transceivers (i.e. nordic nRF24L01+), a single board computer (i.e. Raspberry Pi), and some storage and visualization tools (i.e. influxDB and grafana) I am now able to measure, log, and monitor my electricity consumption.
warning: the electricity meter I am presenting will only work for 1 phase 2 wires power distribution systems. I have a 3 phases 4 wires system and I am doing it wrong.
creating an open source hardware logo:
What better than a logo on your hardware to show ir is open source?
Such a logo provided by the Open Source Hardware Association even already exists, but the rights on it were not clear, no vector version and footprint were provided, and it's quite hard to draw in electronic CAD softwares.
So I decided to create my own open source hardware logo for my electronic designs.
It's simple and can be drawn easily in any CAD software, but the generator already lets you customize it and export it as vector graphic or as footprint for your electronic CAD software.
building an ambient light for the screen:
The CuVoodoo ScreenLight mimics the Philips ambient lighting. The idea is to have LEDs on the back of the screen, lighting on the sides the same color as the border on the screen, creating an ambient light.
To implement this I used: VLC (with the AtmoLight video filter) or boblight (way better) to output over serial the colors to be shown on the LEDs; an Atmel ATmega328P microcontroller at 16 MHz (i.e. Arduino Nano 3.0) to control the LEDs and show the values received over serial; a strips of WS2812B chained LEDs (i.e. BlinkyTape), individually controlled using a data line.
testing the accuracy of a power supply:
It was time to get a decent power supply, and so I found the EA-PS 2084-03B. It fulfilled all my criteria: good quality, silent, wide voltage range, and most importantly with PC connectivity.
But somehow the reading on the LCD does not match what is output. So I implemented a program to remotely control and monitor this power supply, and with a PC connected UT61E multimeter I can compare what is set to what is output. This way I can measure the power supply's accuracy.