Bueno tengo in codigo que supuestamente tiene que leer el nivel de la pila, es una pila lipo de 3.7V
lo cual esta tomando como referencia los 3.3 v que me da Arduino me codigo es el siguiente pero noto quue en igual de bajar , sube el nivel de bacteria quisiera saber que estoy hacienda mal
este es el codigo
float batt_lvl = 11.8; //[analog value from 0 to 1023]
float get_battery_level()
{
float operatingVoltage = analogRead(REFERENCE_3V3);
float rawVoltage = analogRead(BATT);
operatingVoltage = 3.30 / operatingVoltage; //The reference voltage is 3.3V
rawVoltage = operatingVoltage * rawVoltage; //Convert the 0 to 1023 int to actual voltage on BATT pin
rawVoltage *= 4.90; //(3.9k+1k)/1k - multiple BATT voltage by the voltage divider to get actual system voltage
return(rawVoltage);
}
Asumiendo todo lo que te ha dicho Lucario, debes pensar qu le solo estarás mirando el voltaje que tendrás en tu pila, pero no sabrás su carga, o el estado de la propia pila, valores que, según mi experiencia son casi más importantes que el voltaje
A ver si entendí bien el planteo.
Tienes una batería de 3.7V
Conectas la referencia del AD a los 3.3V de una fuente que no es de referencia porque se trata de la salida del FTDI (muy muy mal). Usa la referencia de 1.1V que esa si es precisa.
Pero sigamos dejando de lado el error cometido.
si 3.3V será tu máximo del ADC o sea 1023 y debes leer 3.7V con ese divisor resistivo.
Ahora usas un divisor resistivo formado por 1k y 3.9K => Vout = Vin*3.9/4.9
despejando... y simplificando para aliviar trabajo al pobre arduino.
void setup() {
// lo que corresponda a tu setup
analogReference(EXTERNAL); // Donde ADREF esta conectado a 3.3V
}
void loop() {
// tu código
}
float get_battery_level() {
float rawVoltage;
//rawVoltage = 4.9 * 3.3 * analogRead(A0)/ (3.9*1023.0); // En lugar de A0 usa el pin que corresponda
rawVoltage = 0.004053 * analogRead(A0); // máximo 4.14 Voltios para 1023
return rawVoltage;
}
hola buenos dias para dejarles mejor explicado
REFERENCE 3.3 es la entrada analogica A3
estoy usando una tarjeta la cual tiene puentiado de los 3.3V a la entrada analogica de 3.3V
mi bateria la estoy leyendo por el A2, que igual esta definido por la tarjeta
esto quiere decir que en cualquier lugar que yo conecte mi bateria la tarjeta ya tiene definida las pistas para llegar a hacer ese tipo de lectura, y enefecto tiene un divisor de voltajee en la entrada A2,
pero como les digo lo que yo eh notado en la lectura es que aumenta y no disminuye
la tarjeta fue diseñada para un arduino UNO, pero ya he hecho modificaciones para adaptarla a la MEGA
porque? porque mi codigo no lo soportaba el arduino uno, aparte porque ocupaba mas puertos seriales para otros dispositivos.
las entradas analogicas y ese rollo no lo e movido
una entrada analogica A3, le entra la referencia de 3.3v de la placa arduino
una entrada analogica A2, es donde esta el divisor de voltaje y supuestamente donde me hace mi lectura de carga de bateria
cefere0:
Asumiendo todo lo que te ha dicho Lucario, debes pensar qu le solo estarás mirando el voltaje que tendrás en tu pila, pero no sabrás su carga, o el estado de la propia pila, valores que, según mi experiencia son casi más importantes que el voltaje
que tal men y podrias aportar como saber el valor de su carga?
Ahora comprendo todo, el código esta sugerido por Sparkfun.
Bueno tengo in codigo que supuestamente tiene que leer el nivel de la pila, es una pila lipo de 3.7V lo cual esta tomando como referencia los 3.3 v que me da Arduino me codigo es el siguiente pero noto quue en igual de bajar , sube el nivel de bacteria quisiera saber que estoy hacienda mal
Yo no se porqué no empiezan poniendo el enlace en el post#1 para evitar estas cosas.
Si todo esta bien y tu sistema se esta cargando es posible que la tensión suba y no baje.
Porque no clarificas mejor en que circunstancia aseveras que debe bajar y en cambio sube.
Supongo que solo alimentado con la LIPO y sin cargador mediante? Ya se que esun comentario obvio pero siempre hay que establecer donde estamos parados.
ok mira ya hice pruebas.
solamente con la pila tiende a subir, con la pila y el cargador con su panel solar tiende a subir
y esta bien, pero porque me sube cunado esta solo la pila? eso no puede ser posible, se supone que tiene que tender a bajar el voltaje de la bateria
y si ya vi ese archivo.ino y como te digo yo lo modifique le tengo modificado en distintas partes, pero lo de la bateria lo tenog exactamente igual
ok pero porque no me explicas, solo me dices que es lo que hace.
mi logica dice que si el cargador no esta funcionando no tiene porque hacer subir la pila, ya que de NOCHE no estaria cargando nada por ausencia de SOL!, creo estar en lo correcto no?
ahora bien si tu tienes la razon , si es vdd que aunque no exista el sol mi pila sube, porque que puedo hacer?