Galera estou com Problema de encontrar a variável que me de o valor da Corrente. Sou iniciante em Programação... Preciso da Corrente elétrica para medir a densidade de Campo Magnético. Segue Abaixo a Programação. Outro Problema tambem, nao consigo colocar o valor do Campo em baixo do valor da corrente quando compilo ele quer ficar só na frente...
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //Configura os pinos do Arduino para se comunicar com o LCD
int VQ;
int ACSPin = A2;
float Campo = 00;
void setup() {
Serial.begin(9600);
VQ = determineVQ(ACSPin); //Quiscent output voltage - the average voltage ACS712 shows with no load (0 A)
delay(1000);
lcd.begin(16, 2); //Inicia o LCD com dimensões 16x2(Colunas x Linhas)
}
void loop() {
Serial.print("Corrente:");Serial.print(readCurrent(ACSPin),3);Serial.print(" mA");
Serial.println(Campo);
delay(1000);
}
int determineVQ(int PIN) {
Serial.print("estimating avg. quiscent voltage:");
long VQ = 0;
//read 5000 samples to stabilise value
for (int i=0; i<10000; i++) {
VQ += abs(analogRead(PIN));
delay(1);//depends on sampling (on filter capacitor), can be 1/80000 (80kHz) max.
}
VQ /= 10000;
Serial.print(map(VQ, 0, 1023, 0, 5000));Serial.println(" mV");
return int(VQ);
}
float readCurrent(int PIN) {
int current = 0;
int sensitivity = 185;//change this to 100 for ACS712-20A or to 66 for ACS712-30A
//read 5 samples to stabilise value
for (int i=0; i<200; i++) {
current += abs(analogRead(PIN) - VQ);
delay(1);
}
current = map(current/200, 0, 1023, 0, 5000);
return float(current)/sensitivity;
Campo = ((4*3,14*(1/10000000)* ValorDaCorrente *150*0,7155)/(0,215))*1000000 ;
Serial.println(Campo);
lcd.setCursor(0,0); //Posiciona o cursor na primeira coluna(0) e na primeira linha(0) do LCD
lcd.print("Corrente: "); //Imprime no LCD "Corrente: "
lcd.print (ValorDaCorrente); //Imprime o valor da corrente
lcd.setCursor(0,1); //Posiciona o cursor na primeira coluna(0) e na segunda linha(1) do LCD
lcd.print("Campo: "); //Imprime no LCD "Campo: "
lcd.print(Campo); //Imprime o valor da luminosidade
}
Tags:
Coloque a palavra chave na busca de pesquisa aqui mesmo.
ACS712
Veja também: http://labdegaragem.com/forum/topics/ajuda-com-o-codigo-do-sensor-a...
Boa sorte.
Abs.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por