RPICT7V1 (This covers for both hardware versions 2 and 3)
This page is for board specific information. More information can be found on the generic page for RPICT series.
- 7 AC current sensors.
- 1 AC Voltage sensor.
- Measure RMS Current and Voltage, Active power, Apparent Power, Power Factor.
- Fit on Raspberrypi 4 holes mounting pattern.
- AtMega328 Mcu (Arduino UNO)
- MCP3208 ADC
- Stackable with itself, RPICT8 and RPICT4V3.
|Raspberrypi 1 A||No|
|Raspberrypi 1 B+||Yes|
|Raspberrypi 2 B||Yes|
|Raspberrypi 3 B||Yes|
|Raspberrypi 3 B+||Yes|
|Raspberrypi 4 B||Yes|
- Asus Tinkerboard has been reported to work with RPICT units. Note we wont be able to provide support for the Tinkerboard.
- AC Current sensor:
- AC Voltage sensor:
- UK: 77DB-06-09
- EU: 77DE-06-09
- US: 77DA-10-09
VOLTAGE OUTPUT CT ARE NOT COMPATIBLE WITH THIS BOARD.
General stacking information is described in the RPICT stacking page. RPICT_Stacking
Using a serial line terminal program one can configure the following:
- Polling interval - Output format (csv or emonhub) - Calibration values (Voltage and Current) - Voltage/current combinations for real power computation. - Output channels
The documentation for serial configuration can be found on this page.
The board can be configured with the online configurator.
Usage without Voltage sensor
Default configuration expect a voltage sensor to be plugged in.
The configuration rpict7v1_noV.conf will only output current Irms for the 7 channels.
wget lechacal.com/RPICT/config/B4/rpict7v1_noV.conf $ lcl-rpict-config.py -w rpict7v1_noV.conf
The Default sketch allows up to 24 computation nodes to be run. If more are needed for higher stacks then we recommend to use the noOSC sketch. This is the same as the default sketch but Over Serial Configuration (OSC) as been removed to allow up to 40 nodes to be computed. Configuration has to be edited in the sketch.
Simple Python Example
The example python script below will work well with the default configuration.
import serial ser = serial.Serial('/dev/ttyAMA0', 38400) try: while 1: # Read one line from the serial buffer line = ser.readline() # Remove the trailing carriage return line feed line = line[:-2] # Create an array of the data Z = line.split(' ') # Print it nicely if len(Z)>15: print ("----------") print ("Vrms:\t%s" % Z) print (" \tCT1\tCT2\tCT3\tCT4\tCT5\tCT6\tCT7") print ("RealPower:\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % (Z, Z, Z, Z, Z, Z,$ print ("Irms :\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % (Z, Z, Z, Z, Z, Z[$ except KeyboardInterrupt: ser.close()
To run this first of all make sure you have python-serial package installed
$ sudo apt-get install python-serial
Then run the command below to download the script.
wget lechacal.com/RPICT/example/RPICT7V1_DEMO.py.zip unzip RPICT7V1_DEMO.py.zip
and run it using
Using the manufacture firmware the data output is:
NodeID RP1 RP2 RP3 RP4 RP5 RP6 RP7 Irms1 Irms2 Irms3 Irms4 Irms5 Irms6 Irms7 Vrms
RP1 is Real Power 1 from CT1 Irms is the rms current on CT1 Vrms is the rms voltage
Real Powers are computed using the following rules:
RealPower1 -> CT1 & V1
RealPower2 -> CT2 & V1
... and so on.
These rules can be modified in the configuration if needed.
Other output type can be streamed out. This should be configured in the unit.
All outputs type available are
- Vrms (V)
- Irms (mA)
- Real Power (W)
- Apparent Power (W)
- Power Factor
- Estimated Power
Emoncms Config (Emonhub)
Make sure you read this first.
For default configuration. Used as single board only (not stacked).
[] nodename = my_RPICT7V1 hardware = RPICT7V1 [[[rx]]] names = RP1, RP2, RP3, RP4, RP5, RP6, RP7, Irms1, Irms2, Irms3, Irms4, Irms5, Irms6, Irms7, Vrms datacode = 0 scales = 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 units =W,W,W,W,W,W,W,mA,mA,mA,mA,mA,mA,mA,V
Enclosures kit are available as a 3D printed product. Link to the shop.
Both Raspberrypi 3 and 4 format are available.