I recently purchased a ACS715 Current Sensor Carrier 0 to 30A hoping to read my Solar Panel current going to the charge controller. The issue I am encountering is the sensor outputs a constant 3.2 volts or a value about 657 from the analogRead with Analog Pin 0 (A0) using my Arduino Uno without connecting the ends to anything. It is my understanding from reading the description from the sensor’s website that “This output voltage is offset by 500 mV and increases by 133 mV per amp of input current.” means that I would get a reading much lower than 657 when powering the sensor using the Arduino’s 5V and having no current going through it. I’ve tried to measure the current of a simple circuit and the output remains constant as described above.
Any idea what could be causing this? I hope I didn’t get a bad sensor but I don’t have another one to confirm this behavior.
OK, I found the issue. Turns out the cable I was using had a faulty GND connection. The sensor connected only to the Vout and VCC line hence the strange voltage reading. Still have to calibrate the output which is around 550mV instead of the expected 500mV.
I’m glad you found the problem, and thank you for letting us know what it was. There’s really not much to this part, and my sense is that it is pretty robust (I don’t recall any reports of customers having trouble with them), so my main remaining suspicion was that you had a bad solder connection on one of your pins or were somehow not making the connections you thought you were.
In addition to calibrating for the zero point, you might want to calibrate for the sensitivity, which can vary slightly from the typical value specified in the datasheet. Note that the zero point is actually a function of Vcc (0.1xVcc), so it can change if you switch power sources or if your supply voltage varies with time. Do you still get 550 mV if you measure the sensor output with the OUT pin connected only to your multimeter? What do you get if you measure Vcc with your multimeter?
Thanks for the reply. How I came about with 550mV was via the multimeter. Looking at what the analogRead value gave me was about 113. I am using the regulated 5V from the Arduino Uno. At the moment, I have it installed between the solar panel and charge controller (+i arrow pointing in the direction of the charge controller) with the sensor output going to a formula:
(analogRead(A0) * 5/1024 - 0.55)/0.133
133mV is straight out of the website description. I would definitely be interested in determining the sensitivity of the sensor in my setup but not sure where to start. So far I am happy with it working but I suspect I’ll need to calibrate it for better data.
The website description uses the “typical” sensitivity from the datasheet, but there can be some slight unit-to-unit variance from this (the datasheet specifies a max and min value for the sensitivity). Unless you need exceptionally precise current measurements, I expect the sensor will work fine for you without any further calibration.