Skip to content

Latest commit

 

History

History
137 lines (107 loc) · 6.59 KB

energymonitor_build.md

File metadata and controls

137 lines (107 loc) · 6.59 KB

Energy Monitor Build

A cut down version of the heatpump monitor can be used as a WIFI energy monitor without the additional components used for the MBUS reader, RFM69 and other connectors.

BOM:

energymonitor_v2_components.JPG

Resistor reference

The following resistors are included in the kit.

Quantity Resistance Colour code Function
8 470k (5%) Yellow-purple-yellow CT + ACAC Voltage dividers
1 120k (blue, 1%) Brown-red-black-orange ACAC voltage divider top
1 10k (blue, 1%) Brown-black-black-red ACAC voltage divider bottom
3 10k (5%) Brown-black-orange Mixed use
1 4.7k (5%) Yellow-purple-red DS18B20 Temperature sensing
1 100k (5%) Brown-black-yellow Pulse counting dropdown
1 100R (5%) Brown-black-brown LED current limiting resistor
1 5.6k (5%) Green-blue-red Serial 5V to 3.3V level converter
3 CT burden resistors (1%) see note

Component values including resistor resistance and capacitor capacitance are printed on the PCB. See resistor color code graphic here to match the resistors images/resistor-color-chart.jpg.

Several of the resistors only have a reference name printed, the following are all part of the CT sensor and ACAC sensor biasing circuits and are all 470k resistors (470k (yellow-purple-yellow) was historically choosen to increase battery lifespan in battery powered nodes - lower values down to around 10k could be choosen instead here for a more stable biasing voltage):

VDT: Voltage Divider Top (for AC-AC Voltage sensor)
VDB: Voltage Divider Bottom (for AC-AC Voltage sensor)
VDT1: Voltage Divider Top 1 (for CT sensor 1)
VDB1: Voltage Divider Bottom 1 (for CT sensor 1)
VDT2: Voltage Divider Top 2 (for CT sensor 2)
VDB2: Voltage Divider Bottom 2 (for CT sensor 2)
VDT3: Voltage Divider Top 3 (for CT sensor 3)
VDB3: Voltage Divider Bottom 3 (for CT sensor 3)

CT Burden resistors:

The included burden resistor is 100 Ohms, this provides a AC power measurement range of 0 - 5.4 kW. A smaller burden resistor can be used instead for larger measurement range at lower resolution, 22 Ohms would provide 0 - 24 kW range. See Building Blocks guide CT sensors - interfacing with arduino

Example calculation:

Max Power = (((VREF ÷ 2) ÷ Burden resistance) × CT turns) × 230V ÷ sqrt(2)
Max Power = (((3.3V ÷ 2) ÷ 100R) × 2000 turns) × 230V ÷ sqrt(2) 
Copy into calculator: (((3.3÷2)÷100)×2000)×230÷sqrt(2) 

Burden resistor PCB name reference:

BUR1: Burden resistor 1 (for CT sensor 1)
BUR2: Burden resistor 2 (for CT sensor 2)
BUR3: Burden resistor 3 (for CT sensor 3)

Capacitors: C11, C13, C12, C19 all 10uF

The following image can also be used as a reference of component locations.

emonbuild_v3.jpg

**Voltage regulator note:**The voltage regulator shown in the picture above is the large through-hole TC1262-3.3V, the board also supports the smaller MCP1825 surface mount voltage regulator.

Tip 1: It is usually easier to start by soldering the lower profile components first such as the resistors and to build up to the taller components.

Tip 2: Test that the ATmega328 part works first before soldering in the ESP8266 module so that any issues with the ATmega328 part can be isolated before adding the ESP WIFI part.

Check that the power supply voltages are all as expected before inserting the ATmega328 in the 28pin holder.

ESP8266 Supply capacitor: An additional 10uF is required across the supply to the ESP8266 module. The ground is top-left and 3.3v top-right.

ESP CH_PD and GPIO15 Solder jumpers Both of these solder jumpers need to be connected with a small blob of solder for the ESP module to work.

Uploading the ATmega328 Firmware

The energy monitor only firmware can be found here: https://github.com/openenergymonitor/HeatpumpMonitor/tree/master/HeatpumpMonitorTH/Firmware/Arduino/BasicEnergyMonitor

Use a USB to UART programmer connected to the 6-way UART header closest to the ATmega328 to upload this firmware using the Arduino IDE. There's a guide on uploading Arduino firmware here: http://openenergymonitor.org/emon/buildingblocks/setting-up-the-arduino-environment

Uploading the ESP8266 Firmware: EmonESP

The EmonESP ESP8266 Firmware and upload guide can be found here: https://github.com/openenergymonitor/EmonESP

GPIO0 Jumper: Place a jumper across the GPIO0 header just left of the ESP8266 module to place the ESP8266 module in bootloader mode. Power cycle the board to reset the ESP8266 module. Once the firmware is uploaded remove the GPIO0 jumper so that the ESP8266 starts up without going into bootloader mode at the next power cycle.