Hi people!
I'm a new user, and i want to ask you about a project i'm working on. I want to measuring DC current from PV Strings (not dying electrocuted! ) and send data to Arduino. I thought about a clamp meter like this (http://it.farnell.com/honeywell-s-c/csla2cd/sensor-hall-effect-72a-pcb/dp/1082269), that measures DC current. Now, how can i connect it to Arduino? Supply voltage is between 6-12V, can I amplify with an IC? How can Arduino reads the signal from this clamp?
Thanks so much, and sorry for the english translation, i'm italian!
Re: DC Monitoring PV panels with CSLA2CD
This sensor gives you a linear output centred on Vcc/2. For example, with a 6 V supply the output is 0 V with input current = -72 A, the output is 3 V with input current = 0 A, and the output is 6 V with input current = +72 A.
The current from your solar panel is always in one direction only, therefore you do not need to be able to measure current in either direction. I suggest you power your sensor with a voltage of a little less than 10 V, and you thread the cable through the sensor so that you get 0 V at maximum PV output. You can then connect the sensor output through a series resistor of approx 4.7 kΩ to the analogue input of your Arduino. The Arduino operates at 5 V, therefore you will have a number of approximately 1023 at zero current and a number of approximately 0 at 72 A. You must put 2 lines in your sketch something like:
PVin = analogRead(IPV_Port_no)
IDC = (1023 - PVin) * 72.0 / 1024.0
(PVin is an integer, IDC is a double. You change "1023" to give you IDC=0 at night when there is no PV output, and "1024" is the difference between the numbers you read at PVin with zero current and 72 A flowing - you can adjust that if necessary to correct the calibration.)
Re: DC Monitoring PV panels with CSLA2CD
Hi Robert, thanks for your reply!
Now, i find this datasheet where is write that the output of the sensor is 32.7mV*N (N=number of turns), is it correct? You said that the output is proportional to the voltage supply (Vcc/2), what is the right answer?
Then, what's 1024? nay, how can i adjust it?
For the supply of CSLA2CD, how can i connect with my Arduino 5v? I nedd a "driver" that increases my voltage to 8v, right?
Thanks
Re: DC Monitoring PV panels with CSLA2CD
When I looked at that data sheet, I did not use the formula to calculate the numbers. When I do, I see that the output will be approximately ½VCC ± 2.4 V at maximum current, but it is different for each maximum current.
But the data sheet words are "These sensors are ratiometric." and the formula is for when VCC = 8 V
I think my scheme is still good. You need a dc power supply for the Honeywell sensor that will make ½VCC a little less than 5 V, say 4.9 V, therefore VCC will be 9.8 V. Then you have a 5 V regulator fed from that to supply your Arduino.
When you do that, your sensor will output
4.9 - IPV * 9.8 / 8 * 0.0327 V
IPV is the PV current.
At 0 A, that will be 4.9 V.
At 72 A, that will be 2.016 V.
Then at the analog input, you will read:
At 0 A, PVin = 1004
At 72 A, PVin = 413.
And your lines in the sketch become
PVin = analogRead(IPV_Port_no)
IDC = (1004 - PVin) * 72.0 / 591.0
Re: DC Monitoring PV panels with CSLA2CD
Hi Robert, this is my scheme for monitoring
I already supply Arduino with an External AC/DC power supply 230-9V (not 12V as the diagram).
i don't understand what you tell me, sorry :\
"I see that the output will be approximately ½VCC ± 2.4 V at maximum current, but it is different for each maximum current."
Where do you find it? 2.4?
"You need a dc power supply for the Honeywell sensor that will make ½VCC a little less than 5 V, say 4.9 V, therefore VCC will be 9.8 V." Ok, how can I increase the voltage from 5V to 9.8V? Or, can I take it from the external DC Power supply, increasing it from 9V to 12V (Arduino allows this)?
Thanks a lot for all support, I'm doing all these questions because I am very interested in it, but unfortunately I have limits with the translation, and I can't understand some things, and probably have not been clear to explain these
Re: DC Monitoring PV panels with CSLA2CD
"I already supply Arduino with an External AC/DC power supply 230-9V (not 12V as the diagram)."
[You can attach an image to your post, click "File attachments" , "Choose..." then "Attach".]
I did not know you had 9 V! You can use your 9 V supply if it is smooth and stable. The numbers I calculated will be different, and you will lose a little resolution. With a 9.8 V supply, the smallest current step you would measure is 122 mA. With 9 V, it will be a little larger.
"Where do you find it? 2.4? "
I calculated it from the formula.
"Or, can I take it from the external DC Power supply, increasing it from 9V to 12V (Arduino allows this)?"
You cannot go above 10 V. When you do, ½VCC is greater than 5 V and you destroy your analogue input. You will lose very little if you use the 9 V that you have already. I would use that.
If there is a danger that you will see a reverse current into your PV array, or that you might put the wire through the sensor the wrong way, then you should connect a 4.7 V zener diode directly across the analogue input to GND (and you have the 4.7 kΩ in series between the sensor output and the analogue input to limit the current).
You must calculate again the numbers for the formula for IDC.
Re: DC Monitoring PV panels with CSLA2CD
I've attached it, but doesn't appear here. However, this is the image!
ok, so I can use only my DC Power supply with 9v voltage, right?
I know that an high voltage destroys my pin, I proposed to increment it to 12V using a voltage divider (R1=47k,R2=220k,Vin=12V => Vout=9.88V), it would be correct that? I forgot to write it :\
thanks
Re: DC Monitoring PV panels with CSLA2CD
What are you suggesting? Operate the Honeywell sensor from 12 V and then divide the output down in the ratio 9.88/12? That should be OK, but is it worth using a second power supply, when you will not see a great improvement in resolution if you use the 9 V that you have already?
If you do that, the maths is:
For the sensor, VCC will be 12 V. Your sensor will output
6.0 - IPV * 12 / 8 * 0.0327 V
IPV is the PV current.
At 0 A, that will be 6.0 V.
At 72 A, that will be 2.4684 V.
You divide those voltages down:
At 0 A, divided you have 4.94 V.
At 72 A, divided you have 2.032 V.
Then at the analog input, you will read:
At 0 A, PVin = 1012
At 72 A, PVin = 416.
All you have gained is 5 counts in 600, and the current change you can detect has improved by just 1 mA to 121 mA.
I would use the simplest solution and operate your Honeywell sensor from the 9 V power supply.
Re: DC Monitoring PV panels with CSLA2CD
Ok, it's right, now I understand, excuse me!
So, i connect all at 9V and the formulas are
"
When you do that, your sensor will output
4.9 - IPV * 9.8 / 8 * 0.0327 V
IPV is the PV current.
At 0 A, that will be 4.9 V.
At 72 A, that will be 2.016 V.
Then at the analog input, you will read:
At 0 A, PVin = 1004
At 72 A, PVin = 413.
And your lines in the sketch become
PVin = analogRead(IPV_Port_no)
IDC = (1004 - PVin) * 72.0 / 591.0"
Right?
Thank you so much!