SOOO, when emonPI is plugged to 2 CT Sensors via 5v usb, as I have no ac-ac power yet, it seems emonPI defaults to vrms 230v… When emonTX is connected via 5v and CT Seonsors connected and no ac-ac, I see vrms as 0 or 0.8. Could this be the issue.! If to do the math a voltage is rerquired and one is provided with the emonPi as a default with no ac-ac, why is the emonTx not getting a default voltage value sans ac-ac?? I think this is my problem…
I was just looking at the code to see if it ois possible to have the emonTx connected to a pc for debug output at the same time as transmitting, I would imagine so, but it’s not clear to me from the code. @Robert.Wall will know for sure.
Then you should see the “correct” values you confirmed by debugging and the emonhub.log output at the same time, the 2 should show the same data.
I think Robert has already explained that above. the 3phase firmware is pll locked, it MUST have an AC signal for it to work. The emonPi and default single phase emontx firmwares are not pll and an AC supply is not mandatory, therefore a default value can be used. There is no point the 3phase sketch having a default value for when there is no AC, as it doesn’t work without AC.
ahhh. well this was a big fail… I dont know why we cant just give it a default AC value like emonPi… My issue is that I have to find 240-250v ac to 9V ac adapters with US style plugs. Ill find them evetually but just wanted to get some readings to see if all is ok for final install…
I guess 3 phase sketch is designed to work only with a value from AC input as per your comments,
Well I’ve just answered that immediately above!
Yes … Sorry typing outloud… lol Im wondering if the ac-ac adpaters I do have, althouth the wrong voltage (120V) If I cant just plug them into a 120V outlet and see if I get power readings. Obviouslt they will be wrong, but would they be just 50% off seeing as the 120 is half of my 240 from the 3 phase system? I will order 240v ac-ac obviously…
It looks like the default 3phase payload has been written to match the other emonTx payloads (ie it has 6 temps when only one can be used) so you could just use a standard emontx sketch to set up emonhub and emoncms, then just change the firmware when you get the AC adapters and test the 3ph part knowing that emonhub and emoncms are done. There seems little point installing the 3ph FW when you do not have the mandatory AC adapters to hand.
Yes it can.
Of course for testing and setting up the remainder of your system, you could write a “one-liner” sketch to send dummy values, as long as you use the same “payload” that the real sketch uses.
The other point that I think you haven’t got a grip on is the NodeID - not to be confused with the Node name. The NodeID is a number, set in the sketch, and that and the number of bytes in the payload must match EXACTLY one of the definitions in emonHub, else emonHub discards the data. So you must get that first step right before proceeding.
OK… I know my node ID numbers match the [[x]] numbers in emonhub config. I am now able to get power values from the first emonTX buy powering it up with a 120v ac-ac adpater. This gives me a 227-230 vrms value… Weird but ok… I knwo my power values are way off because the CT sensors are actually connected to a 3 phase system with each sensor being on 240Vs. My neutral line is giving me a negative value so I guess the ct sensor needs to be rotated.
Atleast now I know the thing works although incorrect power values. I can now proceed to install them all.
Dumb question. The power values are what exactly? I know mine are wrong but like 4420 is suppose to be? four thousand Kw? 44Kw? Is the decimal place correct?
Just to clear any confusion. I have two electrical systems. One is a mono phase US type 120/240 and the other is a 416/240 3 phase system
No, not weird, because the OUTPUT of your 120 V transformer on 120 V is close to the output of a 240 V transformer on 240 V, and the sketch doesn’t know anything about that, it only sees the output voltage. You tell it the real mains voltage that relates to with the calibration constants.
Not necessarily. Neutral current in a 3-phase system is the vector sum of the phase currents, so it’s magnitude and phase angle with reference to your a.c. voltage is anybody’s guess unless you know exactly what the load is on each phase. The implication is, you shouldn’t need to measure the neutral current - by doing so you’ve invented the earth fault (residual current as we call it) detector. Because if the current phasors of four wires don’t balance exactly, you’ve got a fault to earth.
You can treat the split-phase 120-0-120 system as a single phase system, and use the standard sketch. You can use the three-phase sketch on it, but you must allocate all the c.t’s to the same (the reference) phase. You can use your 120 V transformer for that.
For your 3-phase system, you do need a 240 V transformer -unless you can guarantee the phase and voltage relationship with the single-phase system, and that’s possible with phase but unlikely with voltage. But again, it should get you going for initial setting up and testing.
Got It!. Thanks for all your helps guys! Learned alot. Ill probably be back shortly with my fine tuning frustrations because I dont read slow enough
For the benefit of anyone reading this who is also measuring currents much above 100 A:
By default, the power in watts is sent by radio as a signed integer, therefore the range of values is limited to ± 32 kW, roughly. If you will be measuring higher powers than that, then there are two possible easy solutions, and one slightly harder:
- Calibrate the current ‘wrongly’ downwards by a known factor, then in emonCMS, you will need to multiply the received value to restore the scaling, or
- Edit the sketch to divide the power by a known factor before it is copied into the data structure for transmission, then likewise, in emonCMS you will need to multiply the received value to restore the scaling, or
- Change the type of the variable transmitted to signed long integer. In this case, you will need to edit emonhub.conf to accept a signed long integer (datacode = l)[lower case letter ‘L’]).
If you don’t take this precaution, the value will overflow and change sign, and decrease when it should be increasing, and vice-versa.