valores del medidor de vatios del panel solar de Arduino leyendo 0

0

He estado construyendo un medidor de vatios Arduino durante las últimas semanas para un panel solar, y he medido con éxito el voltaje y la corriente por separado. Sin embargo, necesito saber ambos para calcular los vatios, pero parece que no puedo obtener el circuito que tengo funcionando. He adjuntado el circuito que he intentado construir, así como una imagen del esquema que he seguido. Solo obtengo 0 provenientes de esta configuración, lo cual no es útil. Si alguien puede ver lo que está mal con la configuración de mi circuito o el esquema y apuntarme en la dirección correcta, estaría extasiado.

La única diferencia entre mi configuración y el esquema es el divisor de voltaje, donde divido el voltaje por un factor de 5 para evitar que el Arduino se fríe. También estoy usando el acs712 en lugar del acs715.

El cable rojo que sale de la imagen va hacia el extremo positivo del panel solar, el cable blanco con cinta negra que sale de la pantalla va hacia el extremo negativo del panel solar.

//#includeSoftwareSerial.hfloatsensorVals[]={0};voidsetup(){Serial.begin(9600);}voidloop(){floatsensorVolt=analogRead(A0);floatsensorVolt2=analogRead(A1);floatsensorCurrent=analogRead(A5);floatamp=sensorCurrent*(5.0/1023.0);floatvoltage=sensorVolt*(5.0/1023.0);sensorVals[0]=voltage;sensorVals[1]=amp-2.51;//printoutthevalueyouread:Serial.print(sensorVals[0]);Serial.print(", ");
  Serial.println(sensorVals[1]);

  delay(1000);
}
    
pregunta Giovanni

2 respuestas

3

Tenga en cuenta que esta declaración:

float sensorVals[] = {0};

en realidad declara una matriz de un flotante, mientras que usted quiere 2.
Cambiarlo a

float sensorVals[2] = {0};

o

float sensorVals[] = {0, 0};


Además, su divisor de voltaje de 110K + 50K podría no ser adecuado: los paneles solares de 12 V podrían generar un voltaje mucho más alto (obtuve uno de 12 V nominal pero emitiendo 20 + V sin carga con buena luz solar). Solo para estar seguro, mida el voltaje sin carga de su circuito abierto bajo la mejor luz solar y luego ajuste su divisor de voltaje para que caiga ese voltaje (+ un margen de seguridad) a un voltaje < su VCC.
Hablando de VCC, a menos que esté regulado 5V, sus lecturas analógicas serán bastante incorrectas: (5.0 / 1023.0) solo es correcto si VCC es 5V (o para ser precisos, si AREF es 5.0V).
Además, ¿tiene una base común entre Arduino y el panel solar? Estoy un poco confundido por la etiqueta "Arduino Ground" en su esquema. Creo que deberían compartir terreno para que sus lecturas de voltaje funcionen correctamente.
Y finalmente, al menos en mi experiencia, estos sensores de corriente de efecto Hall son bastante poco confiables a corrientes bajas (por ejemplo, < 100ma). Aunque podría ser solo mío. Por si acaso, mida su salida con un multímetro o incluso mejor con un osciloscopio, solo para asegurarse de que funcionan como usted espera.

    
respondido por el Mishony
-1

Hay muchas cosas mal aquí:

  1. En tu dibujo, el resultado de ACS712 va a A0 y luego en el software que pones A5.
  2. Salida de ACS712 = 512 por 0 amperios
  3. Salida máxima de ACS712 = 4.8V, así que no use 5.0 / 1024. 983 = 5A 512 = 0A 41 = -5A
  4. Al cargar una batería de plomo-ácido, el voltaje de la batería puede ir a 15.5V y para los paneles solares, el voltaje puede llegar a 22V.
  5. Use un potenciómetro multivuelta de 50k para su divisor de voltaje, conéctelo a 5v y el limpiaparabrisas a A1 y gire el potencímetro hasta que lea 300 como valor analógico, luego se calibra para 17v máx.

5amp (acs712-5) es una corriente de carga para una batería de 50Ah y un panel solar de 100Wp

    
respondido por el user195639

Lea otras preguntas en las etiquetas