2 Phase whole house and PV monitoring, from Brazil

Hi all, sorry for my bad English
I’m from Brazil. I’ve been searching for something to monitor my solar system, and found openenergy.

Here is my scenario
Have a 3000W Chinese inverter 24/220v ( no serial port or anything else )
Have 4 photovoltaic panel connect in parallel
6 batteries 105ah connected in 24v
1 solar controller 150v/70a

I would like to get help with what hardware I have to buy.
Here I already have a Pi2 and an Arduino Mega.
I would like to monitor what my pannels are generating and what my house is consuming.
Here in my city we receive 220v ( 110v + 110v + Neutral ),
Using 110v plus 110v to get the 220v no need of the Neutral

Maybe I’m the first brazilian here, so need help with this.
Thanks by the way.

Welcome, Mauricio.

Do not worry about your English, it is so much better than my Brazilian Portuguese.
Your electricity supply is very much like North America, so everything on the page “Use in North America” will apply to you.

I do know very little about the Arduino range, but I think the EmonTx Shield will not work with your Mega, but it will work with an Arduino Uno, Leonardo and Yun.
Or you could buy an emonTx.
You can download emonCMS to run on your Pi. If the emonTx / Arduino and Pi are not close together, add an RFM69Pi module to your Pi and use the radio link. If they are close, you can connect with 3 wires and use the serial comms ports.

If nothing in your house connects to neutral, then you only need two current transformers. But if your inverter is 220 V and some things (lighting?) connect at 110 V, then you need three, two measuring house consumption and still only one on the inverter. You also need an a.c. adapter to measure the voltage.

Check the size of the wires where you will put the current transformers. I do not know the sizes normally used in your country, but our standard c.t. from the shop will only fit on a wire smaller than 12 mm. If you need larger, then the North America page lists many that are suitable. You will not need a 100 A c.t for the inverter, a 20 A one will be fine. But you should try to estimate the maximum power, therefore current, that you use in your house, and choose a c.t. that is comfortably larger than that (by say 20 - 50%).

Ok thank u @Robert.Wall from ur answer

So, here i don’t use 110v anymore, all my hardwares and fornitures are bivolt or mono 220v.
All my bulbo lights are 12v ( connected directly from the batteries )
I was thinking to buy the emonTx Arduino Shield SMT
I will try to change my arduino mega to any arduino uno then, in this way emontx shield will work ins’t??
Here are all my wires sizes

PV to Solar Controller = 16mm
Solar Controller to Bat = 16mm
Bat to Bat ( 24v seriexparalelal ) 35mm
Bat to Inverter = 16mm
All House = 10mm

So, with this item below
1 rapsberry b2
1 arduino uno or 1 emontx shield
All sensors required for each meter i can do

For measuring the batteries, what kind of sensor do i have do buy??

Yes, the EmonTx Shield will work with an Arduino Uno.

Your wire sizes.
Are the wires connecting your inverter to the rest of the house 10 mm diameter overall?

If they are, then you could use our standard YHDC SCT-013-000 current transformer, but at best it will only be working at 14% of its rating. You could change the burden resistor to 180 Ω, giving it a maximum current of 17.78 A (your maximum is about 13 A from the inverter).
Or you could buy a 20 A Sentran MODEL 4LSF, or a 20 A Continental Control Systems ACT-0750 Details are on our North America page - and both will need a change to our burden resistor.

Measuring the output of your PV will be much harder because it is all direct current.
To measure the current, you will need a Hall effect transducer. And we need to know what the maximum current is. Is it 70 A?
The only unit that I can find that looks suitable, that has a large hole for your cable, is this
It is very costly. You will need a suitable power supply - +12 - 15 V, and you will need to connect directly into an analogue input of your Arduino, bypassing the emonTx Shield.
If you can break the cable to your battery, you could use one of these
which is much cheaper, and works at 5 V, but you must be very careful making the connections to it.

The battery voltage should be stable, but if you need to measure it, that could be very hard. The problem is, the negative side of your battery must be earthed (grounded), and your Arduino and everything you connect to it must be isolated from ground. If you can do that, you can easily measure the battery voltage with a simple voltage divider connected directly to the Arduino analogue input, bypassing the emonTx Shield.
If your battery is not grounded (which is very likely), then for your safety, you must isolate your Arduino from the battery. The easiest solution that I can see would be another Hall effect transducer. The smallest one that I found is this http://uk.farnell.com/lem/lts-6-np/current-transducer-6a-pcb/dp/2146860
which can be wired to read up to 2 A. But that still means that you are draining 2 A from your battery just to read the voltage. I don’t think that is a good idea.

One question: If all your lighting is 12 V, and your battery is 24 V, what do you do? Are all the lights connected two in series?

What’s the incompatibility there?

I did say “I think”. It’s not listed as compatible on the Shop page. If it is compatible, G&T (or Gwil) need to be told, to get it corrected.

According to this it is compatible.
However, use with an RF module appears to be problematic.

In that thread, Glyn says:
Yes, the shield is compatible with Arduino Mega. If you just want to use serial only output it should work out of the box. If you want to use the RFM12B there may be some issues.

And the same for the RFM69CW as it’s the same pinout?
Maybe this is the reason it’s not listed - it is only partly known to be compatible.

@dBC - can you shed any light on this?

Sounds like a SPI issue. MISO/MOSI/SCLK are on different pins on the Mega than on the others, but a well designed shield picks those signals up at the ICSP header, where they are consistently positioned across all Arduinos. Then the runtime libraries know which model you’re compiling for and maps the SPI signal appropriately.

Looking here:


it looks like they almost got it right. The radio module does hang off the ICSP header, but because they labelled D11, D12 and D13 with their SPI names it looks likes the shied also connects those ICSP pins through to D11, D12 and D13 and that’s not good. On the Uno etc. those connections are made on the Arduino board and so are redundant. On the Mega2560 those ICSP SPI signal are connected to different digital pins (D50 - D52) which frees up D11-D13 for other use. But in that case, the shield will inadvertently connect the SPI bus to D11-D13. Even that might be fine since D11-D13 are presumably not used by the firmware, and so will default to their INPUT state and not interfere with SPI operations.

Many thanks for that.

So are we saying that Mauricio can keep his Arduino Mega and use a serial connection to his Pi and it will work (but for added assurance of that, he should comment out everything concerning the RF module, and that if he needs to radio link, we think it will work provided that he does not use D11, D12 & D13 and makes sure they default to inputs, or are defined as inputs with no pull-up?

Yes, I think so, but I think all those requirements are already guaranteed. The standard sketches can’t be using D11, D12 or D13 because they’d conflict with the SPI bus and unreferenced pins always default to inputs. That makes me wonder if we’ve actually got to the bottom of Glyn’s pessimism above in Bill’s post.