¿Acondicionar señal del potenciometro de combustible?

DOSMETROS

High 2m Modereitor
#41
Claro , porque además son de alambre !

Pregunta , y doblar un poco el cursor para que llegue a cero ? :unsure:

P.D.: Con un díodo en serie con el negativo del Arduino , podemos engañarlo respecto del 0 V que no es cero :p

Luego , lo de la salida se verá . . . :unsure:
 

Dr. Zoidberg

Well-known-Papá Pitufo
#42
Gracias por los comentarios.

Se ve que este IC.
http://www.ti.com/lit/ds/symlink/lm2904-n.pdf
Que mensionaron.

Aquí hay un vídeo de ello con Arduino.
Y que tiene que ver el video con la consulta de este tema????

Ya te dí arriba la solucion a tu problema, que mas estas buscando??
Pregunta , y doblar un poco el cursor para que llegue a cero ? :unsure:
Es probable que no llegue a cero a propósito, para evitar calentamiento/chispas en algo que casi está en contacto con el combustible.
 
#43
Pues según yo .
Los flotadores si son resistencias de carbón, pero el abanico es alargado con pistas de cobre con baño de niquel. Que es lo que hace contacto con la escobilla del flotador.

Y cuando está lleno el tanque la resistencia baja y cuando está vacío la resistencia sube al máximo.

Bueno eso es lo que ví en varios tanques que revise en sus días.
 
#44
Pues según yo .
Los flotadores si son resistencias de carbón, pero el abanico es alargado con pistas de cobre con baño de niquel. Que es lo que hace contacto con la escobilla del flotador.

Y cuando está lleno el tanque la resistencia baja y cuando está vacío la resistencia sube al máximo.

Bueno eso es lo que ví en varios tanques que revise en sus días.
Nop... o depende... la mayoria son de alambre para que el combustible no dañe al carbon... puede ser que ya sean de ese material pero los aantiguos todos eran de alambre.
 
Última edición:
#46
Yo he desarmado muchos flotadores, son de carbón pero las pistas son extendidas de pistas metalicas
Ok... puede ser que algunos y sobretodo modernos... estoy completamente seguro que se ponian de alambre. Incluso en modelos antiguos de autos el control de la velocidad de los limpiadores y faros era con reostatos de alambre... ni se conocian los de carbon.
 
#47
Hola:

Quiero hacer un divisor de tensión con resistencia regulable de dos polos que regule de 0 V. a 5 V. Para luego entregarlo a una entrada analógica de Arduino, pero esto es otro tema. Mientras me funcione, todo bien.

Usando una resistencia de tres polos como este.

O
Usaré dos polos, que en realidad su valor máximo es de 278 Óhmios. El mínimo no llega a 0 Óhmios, llega a 23 Óhmios en el cual regula de 23 a 278 Óhmios. Hay que tenerlo en cuenta.

Aquí un esquema que hice básico con Proteus pero me regula de 2.5 V. a 5 V. Cuando en realidad tiene que ser de 0 V. a 5 V.

¿Cuál es la mejor manera de tener 0 a 5V?

La resistencia regulable de es 23 a 278 Óhmios si o si para este caso.

Saludos.
meta, haces es emismo circuito, pero las resistencias al revez, o sea el pote entre masa y el medio, asi tenes entre 0 y 2,5 v.
luego manejas todo desde el arduino con istrucciones.
el A/D de el arduino le sobra sensibilidad y ademas tenes instrucciones para convertir esos 0 a 2,5 en minimo y maximo.

no te compliques .

ah.. luego lo de el programa, y eso de el nivel de combustible, que si se esta moviendo te marcara cualquier cosa, pues haces que solo considere validas los valores que sean iguales durante 5 o 10 medicione sconsecutivas, sino , las descarta y no cambia.
si va por lugares donde el auto se mueve mucho las lectuas fluctuan, y no seran iguales.
cuando vaya por un lugar tranquilo ahi el nivel essera estable y todas las lecturas seran iguales.

el tema es si va suave pero por una pendiente, pues, solo mientras vaya por esa pendiente tendras error.
sino, bueno, es imaginacion, :
que no acepte cambios bruscos de valores.
 
#48
Con la consigna original(divisor resistivo y R entre 23Ω y 278Ω ) nunca se va a llegar a 0V. 1571691255811.png

Yo lo implementaría a partir de una tensión de 8V regulada para no tener problemas.

Lo que no es valor comercial de resistencia se arma con resistencias en serie o paralelo o ambas o un preset multivueltas ajustado a dicho valor.
 
#49
Los valores serán de 5V de máximo y 0,68V mínimo.

Con esa excursión de tensión y dependiendo de la capacidad de depósito de combustible y si el ADC es de 10bit(1023) puedes tener buena resolución aunque partas de dicho piso.
 
#50
Mi pregunta es:
Antes de inventar cada burrada.

¿Ya revisaron como funciona en el carro?
Digo.

1.- medir directamente del arnés del tanque de gasolina con flotador arriba y abajo.
2.- medir directamente del tablero que llega.
3.- del circuito del tablero cómo está formado.
 
#51
¿Acondicionar señal del potenciometro de combustible?

Yo lo conseguí para un sistema similar para representarlo con una array de led con un LM3914,

En mi caso el problema era el cuadro (que al final se fue otra cosa del cuadro y lo tuve que reparar ;D) y por no desmontar hice un circuito alternativo desconectando la conexión al cuadro y alimentando la resistencia de la boya a 5V en serie con otra, usé un regulador 7805 para alimentar todo el circuito, y no llegué a usar ningún AO a parte del LM3914 y ajuste a voltaje min y max (de acuerdo al voltaje calculado del divisor de tensión creado con la boya), con potenciómetros en el LM3914 y está funcionando en el coche de un amigo.

Te recomiendo que ponga un regulador de 5V como el 7805, desconectes la boya del coche y alimentes arduino y el divisor de tensión con los 5V del regulador, y por programacion del arduino pues cojas el voltaje min y max que saques con el divisor de tensión en la entrada analogica
 
Última edición:
#53
Los flotantes son en su gran mayoria como trilo-byte, los de alambre se dejaron de usar hace varias decadas, los hay de las dos maneras, lleno poca resistencia o lleno maxima resistencia.
 
#54
Buenas:

Al final estoy probando que me suelte de 0 o cerca de 0V hasta los 2.5 V alimentado desde los 5V.

De 23 Óhmios a 278 Óhmios, nunca llegará a los 0V. Como quiero que en el LCD aparezca de 0 a 100 % hablando de porcentaje, tampoco llegará a 0 %. Parece que se puede hacer un truco. Si llega a 23 Óhmios, en el LCD que ponga 0 %, que lo indique de alguna manera.

De 23 a 28 Óhmios que sean de 0 % al 100 %, algún truco de programación se podrá hacer. Con un if else si indica que estás en los 23 Óhmios, que ponga 0%, hay que verlo.

Código:
#include <LiquidCrystal.h>

// Inicializa la librería con sus pines indicados.
// RS, RW, Enable, D4, D5, D6, D7.
LiquidCrystal lcd(8, NULL, 9, 4, 5, 6, 7);
// LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

// Pin 10 para saber que es luz de fondo.
const byte LuzFondo = 10;

int valorPot = 0;
float voltajePot = 0;
float Porcentaje = 0;

void setup()
{
  Serial.begin(115200);     // Puerto serie 115200 baudios.
  lcd.begin(16, 2);         // Formato de pantalla.
  lcd.clear();      // Borra la pantalla y su posición superior izquierda.
  lcd.print("      FIAT      ");
  delay(2000);
  lcd.clear();
}

void loop()
{

  //voltajePot = valorPot * (5.0 / 1023.0);
  //Porcentaje = valorPot * (100.0 / 1023.0);

  //voltajePot = (valorPot * 2.5) * (2.5 / 512);

  valorPot = analogRead(1);

  lcd.setCursor(0, 0);
  Serial.print("P1 ");
  Serial.print(voltajePot);
  Serial.print(" V. ");
  lcd.setCursor(0, 1);
  Serial.print(Porcentaje);
  Serial.print(" % ");
  Serial.println(valorPot);
  delay(100);
}
 

Adjuntos

#56
Map lo uso por el tema de que no usa comoa flotante. ;)

Ahora si funciona como quiero.

Código:
#include <LiquidCrystal.h>

// Inicializa la librería con sus pines indicados.
// RS, RW, Enable, D4, D5, D6, D7.
LiquidCrystal lcd(8, NULL, 9, 4, 5, 6, 7);
// LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

// Pin 10 para saber que es luz de fondo.
const byte LuzFondo = 10;

int valorPot = 0;
float voltajePot = 0;
float Porcentaje = 0;

void setup()
{
  Serial.begin(115200);     // Puerto serie 115200 baudios.
  lcd.begin(16, 2);         // Formato de pantalla.
//  lcd.clear();      // Borra la pantalla y su posición superior izquierda.
  lcd.print("      FIAT      ");
  delay(2000);
}

void loop()
{
valorPot = analogRead(1);
// voltajePot = valorPot * (5.0 / 1023.0);
  //Porcentaje = valorPot * (100.0 / 1023.0);

voltajePot = (valorPot * 2) * (2.5 / 512);
Porcentaje = valorPot * (100.0 / 511.0);

  //lcd.clear();

  lcd.setCursor(0, 0);
  lcd.print("Gasolina ");
  lcd.print(voltajePot);
  lcd.print(" V. ");
  //Serial.print("P1 ");
  //Serial.print(voltajePot);
  //Serial.print(" V. ");

  lcd.setCursor(0, 1);
  lcd.print(Porcentaje);
  lcd.print(" % ");
  lcd.setCursor(8, 1);
  lcd.print("    ");
  lcd.setCursor(8, 1);
  lcd.print(valorPot);
  //Serial.print(Porcentaje);
  //Serial.print(" % ");
  //Serial.println(valorPot);
  delay(2000);
}
Ya haré la parte con Visual Studio para PC una interfaz para verlo desde el PC sin usar el Monitor Serial de Arduino IDE.

A lo largo de esta tarde, compraré los componentes necesarios para hacer ese divisor de tensión, y mostraré con fotos y vídeos lo que he hecho.

Saludos.
 
#58
Para tenerlo claro. En mi caso es, 23 a 278 Óhmios.

(Variable - 23) / 255.

Por lo que entiendo, el 225 viene de 278 - 23.

La palabra Variable viene del valor la resistencia de la boya del aforador, de 23 a278 Óhmios.
 
#59
¡No!, el Arduino interpreta la tensión analógica de 0 a 5V, con un valor de 0 a 1024 (uno, nano...), al hacer el divisor de tensión depende de la resistencias que pongas tendrás un voltaje mínimo y otro máximo, tendrás que saber a que valor digital corresponde en Arduino el mínimo y el máximo.

(Variable-ValorMin)/(1023-ValorMin-(1023-ValorMax))

Eso de 0 a 1, por 100 para %
 
Última edición:

Dr. Zoidberg

Well-known-Papá Pitufo
#60
¡No!, el Arduino interpreta la tensión analógica de 0 a 5V, con un valor de 0 a 1024 (uno, nano...), al hacer el divisor de tensión depende de la resistencias que pongas tendrás un voltaje mínimo y otro máximo, tendrás que saber a que valor digital corresponde en Arduino el mínimo y el máximo.

(Variable-ValorMin)/(1023-ValorMin-(1023-ValorMax))

Eso de 0 a 1, por 100 para %
El problema con esa conversión ya lo comentó @Scooter : la relación desplazamiento del flotante vs. resistencia NO ES LINEAL!!! así que por más que ajusten el offset y el span de la medida lograda, el resultado de la operación no va a coincidir con el porcentaje real de combustible disponible. La unica forma de aproximar la realidad es mediante una tabla de búsqueda (lookup table).
 

Arriba