RPICT3T1: Difference between revisions

From lechacal
Jump to navigation Jump to search
(7 intermediate revisions by the same user not shown)
Line 42: Line 42:
|-
|-
|}
|}
==Configuration==
==Recommended sensors==
 
See general instructions for


[[Attiny Over Serial Configuration | Configuration over serial for sketch version 1.2 1.3 & 2.0]].
* AC Current sensor:
 
** SCT-013-000
[[Attiny Over Serial Configuration A2 | Configuration over serial for sketch version 3.0]].
** SCT-019
 
** SCT-006
The serial port will output 4 values. These are the 3 estimated powers and the temperature.
If you prefer having current in Amperes rather than Power in Watt set VEST=1 in the configuration. Likewise set VEST=1000 to get milliAmperes.


==Temperature Sensor==
==Temperature Sensor==
Line 63: Line 59:


[[File:IMG_1176_small.png | 200px]]
[[File:IMG_1176_small.png | 200px]]
==Configuration==
See general instructions for
[[Attiny Over Serial Configuration | Configuration over serial for sketch version 1.2 1.3 & 2.0]].
[[Attiny Over Serial Configuration A2 | Configuration over serial for sketch version 3.0]].
The serial port will output 4 values. These are the 3 estimated powers and the temperature.
If you prefer having current in Amperes rather than Power in Watt set VEST=1 in the configuration. Likewise set VEST=1000 to get milliAmperes.


==Calibration==
==Calibration==
Line 91: Line 98:


Then copy the following into an executable file and run it.
Then copy the following into an executable file and run it.
<syntaxhighlight lang="Python" line='line'>
 
  #!/usr/bin/python2
  #!/usr/bin/python2
  import serial
  import serial
Line 112: Line 119:
                 if i==0:
                 if i==0:
                     print ("NodeID: %s" % Z[0])
                     print ("NodeID: %s" % Z[0])
                 else:
                 elif i in [1,2,3]:
                     print ("Power %d: %s W" % (i, Z[i]))
                     print ("Power %d: %s W" % (i, Z[i]))
                elif i==4:
                    print ("Temperature: %s C" % (Z[i]))
                          
                          
  except KeyboardInterrupt:
  except KeyboardInterrupt:
         ser.close()
         ser.close()
</syntaxhighlight>
 


==Files==
==Files==
Line 127: Line 136:
===Hardware Version 2.1===
===Hardware Version 2.1===
[http://www.lechacal.com/RPICT/CT3T1/RPICT3T1_v2_0.ino Default Sketch v2.0]<br>
[http://www.lechacal.com/RPICT/CT3T1/RPICT3T1_v2_0.ino Default Sketch v2.0]<br>
[http://www.lechacal.com/RPICT/CT3T1/RPICT3T1_v3.0.ino Default Sketch v3.0 (not stable)]<br>
[http://www.lechacal.com/RPICT/CT3T1/RPICT3T1_v3.0.ino Default Sketch v3.0]<br>
[http://www.lechacal.com/RPICT/CT3T1/RPICT3T1_v3.1.ino Default Sketch v3.1]<br>


==Related Pages==
==Related Pages==

Revision as of 19:31, 31 March 2019

Link to shop

This page is for board specific information. More information can be found on the generic page for RPICT series.

Overview

The RPICT3T1 measures AC Power and Temperature.

  • 3x AC current sensor
  • 1x DS18B20 Temperature Sensor
  • Attiny84 Microcontroller

Notice

Power is computed using a fixed estimated Voltage. This estimated voltage can be configured. Default value is 240V. You will be able to change this to 110 or 220 depending on the country where it is used.

If you require more accurate power measurement then use the RPICT3V1 board instead. This will also read Voltage and calculate Real Power. A voltage sensor will be required in this case.

Compatibility

Version Compatible?
Raspberrypi 1 A Yes
Raspberrypi 1 B+ Yes
Raspberrypi 2 B Yes
Raspberrypi 3 B Yes
Raspberrypi 3 B+ Yes

Recommended sensors

  • AC Current sensor:
    • SCT-013-000
    • SCT-019
    • SCT-006

Temperature Sensor

The DS18B20 temperature sensor can be connected directly to the screw terminal connector.

Connection is as follow:
Vcc - Red
Din - Yellow
Gnd - Black

Configuration

See general instructions for

Configuration over serial for sketch version 1.2 1.3 & 2.0.

Configuration over serial for sketch version 3.0.

The serial port will output 4 values. These are the 3 estimated powers and the temperature. If you prefer having current in Amperes rather than Power in Watt set VEST=1 in the configuration. Likewise set VEST=1000 to get milliAmperes.

Calibration

If calibration is required only ICAL has any effect on the calibration.

VCAL and PHASECAL might be present in the config but have no effect. These should be ignored.

Emoncms Config (Emonhub)

For default configuration. Used as single board only (not stacked).

 [[11]]
   nodename = RPICT1T1
   firmware = RPICT3T1_V1_1.ino
   hardware = RPICT3T1
   [[[rx]]]
       names = Power1,Power2,Power3,Temperature
       datacode = 0
       scales = 1,1,1,1
       units = W,W,W,C

Python demo script

First of all make sure you have python-serial package installed

$ sudo apt-get install python-serial

Then copy the following into an executable file and run it.

#!/usr/bin/python2
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
            print ("----------")
            for i in range(len(Z)):
                if i==0:
                    print ("NodeID: %s" % Z[0])
                elif i in [1,2,3]:
                    print ("Power %d: %s W" % (i, Z[i]))
                elif i==4:
                    print ("Temperature: %s C" % (Z[i]))
                       
except KeyboardInterrupt:
       ser.close()


Files

Please verify which board version is yours. This is written on the circuit board itself.

Hardware Version 1.3

Default Sketch v1.3
Default Sketch v1.4

Hardware Version 2.1

Default Sketch v2.0
Default Sketch v3.0
Default Sketch v3.1

Related Pages

Use Emonhub with RPICT

Howto_setup_Raspbian_for_serial_read

How to program an Attiny85 or Attiny84