PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Cảm biến (http://www.picvietnam.com/forum/forumdisplay.php?f=18)
-   -   Xin mọi người giúp đở với cảm biến dòng acs 712. (http://www.picvietnam.com/forum/showthread.php?t=13170)

ailatoi147 28-01-2012 09:17 PM

Xin mọi người giúp đở với cảm biến dòng acs 712.
 
1 Attachment(s)
Em đang làm đồ án với con cảm biến dòng ACS 712.hiện tại công việc viết code va thuật toán đã hoàn thành.nhưng vấn đề là khi đo thử với tải là ac như ti vi,quạt, mỏ hàn thì không có áp ra.

Em dùng ACS712-30A, theo datashee của nó thì khi chưa có dòng đi qua (nghĩa là 0a), thỳ giá trị V0 tương ứng là 2.5v,(V0=4.5v<==>A=30A,V0=0.5V<==>A=-30A).thuật toán đưa ra là phương trình đường thẳng A-15V=-37.5.

Mạch của em đã đo được giá trị chính xác tại A=0A là 2.5v, cứ tưởng vậy là chạy rồi, nào ngờ khi đo với tải AC và cả DC nửa thì không có sự thay đổi áp.
Mất ăn mất ngủ với nó các bác ơi.Ai đã từng làm qua,hay có biết về con này xin giúp em với.
Em gửi code và sơ đồ mạch lên mong mọi người chỉ dùm.

ailatoi147 28-01-2012 09:19 PM

#include <16F877A.H>
#device *=16 ADC=8
#fuses HS,NOWDT,NOPUT,NOBROWNOUT,NOLVP,NOCPD,NOPROTECT
#use delay(clock = 4000000)
#include "lcd_vinh.c"

//==========================

void main()
{
int16 x=1;
int8 i=0,adc;
float32 v=0,a=0;
setup_adc_ports(AN0);
setup_adc(ADC_CLOCK_INTERNAL);
set_adc_channel(0);
lcd_init();
delay_ms(10);
LCD_GOTOXY(1,1);
printf(lcd_putc,"TRAN QUANG VINH");
while(1)
{

for(i=0;i<=100;i++)
{
adc=read_adc();
x=x+adc;
delay_us(200);
}
x=x/100;
v=x*0.01953125;
a=(15*v-37.79295);
output_b(x);
//delay_ms(4000);
LCD_GOTOXY(1,2) ;
PRINTF(LCD_PUTC,"\VDC=%1.8f ",v) ;
}


}

ailatoi147 29-01-2012 09:06 AM

buồn thế sao chưa có ai có ý kiến gì nhỉ?


Múi giờ GMT. Hiện tại là 02:20 PM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam