- 1 Overview
- 2 Specifications
- 3 Recommended sensors
- 4 Temperature Sensor
- 5 Software Configuration
- 6 Data Output
- 7 Simple Python Example
- 8 Mezzanine Boards
- 9 Enclosure
- 10 Files
- 11 Related Pages
The RPIZCT4V3T2 can be configured to read both single phase and 3 phase systems.
Several temperature sensors can be interfaced. It has support for both DS18B20 temperature sensor and RTD thermocouples.
It is designed to host a user provided Raspberrypi zero.
The main PCB has provision for one extra mezzanine card to extend the number of sensors.
An enclosure solution is proposed using aluminium extruded case.
- Hosts RaspberryPi Zero
- ATmega328 mcu (Arduino UNO)
- 4 CT sensors
- 3 AC Voltage
- 1 DS18B20 port (temperature)
- 1 RTD Thermocouple port
- Powered from Raspberrypi (microusb)
- Fits in Aluminium Enclosure from Evatron
- Option to stack mezzanine board for additional sensors.
- AC Current sensor:
- AC Voltage sensor:
- UK: 77DB-06-09
- EU: 77DE-06-09
- US: 77DA-10-09
- Temperature RTD:
- PT1000 (modification required)
The temperature port supports mutiple sensor on the same Onewire line.
The sketch is programmed to search for all connected probe at bootup and output all their values when polled.
Multiple probes should connected as shown below.
When a new probe is connected the arduino mcu must be restarted for the new probe to be registered. You can reset the Arduino chip with the command below:
A MAX31865 RTD module is used to interface the RTD sensor with the arduino controller.
There is support for 2 3 and 4 wires thermocouples. Also both PT100 and PT1000 can be used.
Units are sold by default setup for 3 wires PT100 units. Other setup can be configured and require some basic soldering. Full details to configure the MAX31865 module are given by ADafruit webpage here.
The documentation for serial configuration can be found on this page.
Over Serial Configuration - Sketch 2.0
The default configuration can be obtained using the command
or for zmpt101b boards
The online configurator can be used with the RPIZ_CT4V3T2. Use a single board of RPICT4V3 when editing the configuration.
All functionalities are not fully supported yet in the online configurator for RPIZ_CT4V3T2.
To include a RTD sensor output add any type of channel. For example Power Factor (code 6). Generate the config and modify the 6 into a 9 in the CHTYPE parameter.
To include a DS18B20 sensor output add any type of channel. For example Power Factor (code 6). Generate the config and modify the 6 into a 7 in the CHTYPE parameter.
It is highly recommended to have DS18B20 sensor as the last channel. Otherwise since there can be more than 1 DS18B20 sensor the position of other channels will move in the stream when a new DS18B20 is found.
The RPIZ_CT4V3T2 has support for software reset. There is no need to physically reset the arduino chip. Reset can be operated from the raspberrypi by using the -a option in the lcl-rpict-config.py.
An example usage will be
lcl-rpict-config.py -a -w myfile.conf
Using the manufacture firmware the data output is:
NodeID Vrms1 Vrms2 Vrms3 Vrms4 RP1 RP2 RP3 RP4 PF1 PF2 PF3 PF4 Irms1 Irms2 Irms3 Irms4 RTD T1 Tn
RP1 is Real Power 1 from CT1/V1 PF1 is Power Factor 1 from CT1/V1 Irms is the rms current on CT1 Vrms is the rms voltage RTD is the temperature from RTD unit T1 is the DS18B20 temperature. All additional DS18B20 will follow.
Real Powers are computed using the following rules:
RealPower1 -> CT1 & V1
RealPower2 -> CT2 & V2
RealPower2 -> CT3 & V3
RealPower2 -> CT4 & V3
These rules can be modified in the configuration.
Other output type can be streamed out. This should be configured in the unit.
All outputs type available are
- Vrms (V)
- Irms (A)
- Real Power (W)
- Apparent Power (W)
- Power Factor
- Estimated Power
- RTD Temperature
- DS18B20 Temperature
Simple Python Example
To work with the default configuration we have created a simple python program as demonstration. We invite you to look at the code.
To get the program and run it do the following commands:
wget lechacal.com/RPICT/example/RPIZ_CT4V3T2_DEMO_01.py.zip unzip RPIZ_CT4V3T2_DEMO_01.py.zip python RPIZ_CT4V3T2_DEMO_01.py
The output will look like this below.
RPIZ_CT4V3T2 has provision to stack an extra mezzanine board to extend the number of sensors. We currently have 2 type of mezzanine.
This is a basic board extending all unused I/O pins of the Arduino microcontroller. These are presented as male pin header. Ground and 5V are also available for each pin.
This will only be used if you are planning to write your own firmware.
Each available pins are listed below.
|Atmel Pin||Arduino Analog||Arduino Digital|
The CT8 mezzanine offers an extra 8 CT connection with a 12 bit ADC. Increasing the total number of CT to 12.
The board has been designed to fit inside an aluminium extruded enclosure. 3D printed end plates are provided. Enclosure kit is available in the shop.
The RPIZ_CT4V3T2 can be programmed using the NanoProg.
IMPORTANT-> Make sure the Raspberrypi Zero is removed before connecting the NanoProg.
Connect the Nanoprog with the RPIZ_CT4V3T2 unit using the 6pin ribbon cable. Make sure grounds are connected together.
Use Tools | Board | Arduino Uno.
Upload sketch using Sketch | Upload Using Programmer.
Once the Arduino firmware flashed the default config must be loaded using the lcl-rpict-config.py tool.