Aviso

El foro está en modo de sólo lectura.

Medidor de Batería para AutoCarabana

Más
6 años 2 meses antes #1128 por DEA
Respuesta de DEA sobre el tema Medidor de Batería para AutoCarabana
Muy buena idea si señor
He echo un pequeño boceto y creo que va a quedar muy bien.
La parte verde del dibujo la puedo hacer que vaya subiendo con una barra de progrese y simulara la carga de la bateria.


Que opinas de usar un INA226, lo ves buena opción

Gracias
Adjuntos:
Más
6 años 2 meses antes #1135 por Jose Luis
No he trasteado con ellos. Te lo escuche nombrar a ti hace unas semanas y compre un par, pero aun no los probe.

Muchas cosas que hacer y poco tiempo.
Más
6 años 1 mes antes #1196 por DEA
Respuesta de DEA sobre el tema Medidor de Batería para AutoCarabana
Buenas Jose Luis
Ya me llego el INA266, pero al final voy a usar el INA219 ya que voy ha hacer los cálculos respecto al voltaje de la batería.

El problema que se me plantea es que aparte de imprimir el voltaje en "voltios.txt" quiero que el color verde del dibujo de la batería sea una barra de progreso y valla subiendo y bajando dependiendo del voltaje de esta.

Pense en mapear la tensión y pasarla a porcentaje de 0 a 100% e imprimir en la barra de progreso, pero no se puede o yo no se hacerlo maperar decimales. Ya que el mapeo tendría que ser de 11,9v (Batería agotada) a uno 13,9 - 14v (bateria al 100%)

Intente hacerlo en al Nextion, pero sin resultados ya que el texto en Nextion no te deja hacer una proporción segun el texto que escribas.
Alguna idea

Gracias

El código quedaría asín:

#include <Wire.h>
#include <Adafruit_INA219.h>
#include <Nextion.h>

Adafruit_INA219 ina219; // Activamos el sensor INA219

void setup() {

nexInit(); //Iniciamos la pantalla tactil

ina219.begin(); // Inicializamos el sensor INA
}

void loop() {
// Calculo para ina219

float shuntvoltage = 0;
float busvoltage = 0;
float current_mA = 0;
float current_A = 0;
float loadvoltage = 0;

//shuntvoltage = ina219.getShuntVoltage_mV();
busvoltage = ina219.getBusVoltage_V();
//current_mA = ina219.getCurrent_mA();
//current_A = current_mA / 1000;
// loadvoltage = busvoltage + (shuntvoltage / 1000);

Serial2.print("voltios.txt=");
Serial2.write(0x22);
Serial2.print(busvoltage, 1);
Serial2.write(0x22);
Serial2.write(0xff);
Serial2.write(0xff);
Serial2.write(0xff);

nexLoop(nex_Listen_List);

}
Tiempo de carga de la página: 0.197 segundos
Gracias a Foro Kunena