Measurement of current output from solar panel using PIC16F877A, ACS712 hall effect

Thread Starter

navidbox

Joined Mar 6, 2009
11
Dear Friends,

Project Description: Data Acquisition System for Solar Panel

In fact, i need to measure the current from solar panel and display it on the LCD.

I am using PIC16F877A with C language to do so. For the Temperature, Light, and Voltage, there is no issue of reading the sensors and it is working perfectly. However, ACS712 hall effect sensor is mentioned to be a good solution for DC current measurement in the datasheet as well as having a linearity characteristic, but the time i am using it with PIC, it does not give me a true value within at least 0-50 A input ranges.
This is the Proteus + ADC codes, Please help me to accomplish this task as well.


ADCON0=CHANNEL3;

lcd_goto(44);
read_adc();
current=read_temp();
current=0.074*current;
current=(current-37.888);
current=current/2;

dis_num(current);
send_char('.');
dis_num(current%10);

send_char(' ');
send_char('A');
send_char(' ');
 

Attachments

nsaspook

Joined Aug 27, 2009
13,312
You have write the code to offset the 'Quiescent output voltage' first (VCC ⁄ 2) then scale.

Quiescent output voltage (VIOUT(Q)). The output of the sensor
when the primary current is zero. For a unipolar supply voltage,
it nominally remains at VCC ⁄ 2. Thus, VCC = 5 V translates into
VIOUT(Q) = 2.5 V. Variation in VIOUT(Q) can be attributed to the
resolution of the Allegro linear IC quiescent voltage trim and
thermal drift.
http://www.sparkfun.com/datasheets/BreakoutBoards/0712.pdf
 
Top