Temporización de nivel de un depósito

Buenas a todos

Este es mi primer post en el foro quisiera ayuda sobre un proyecto que tengo para hacer mas cómodo mi trabajo.

El proyecto es la verificación de bombas para ver su consumo en horas.

A día de hoy lo que hago es llenar una probeta de líquido y con un reloj, móvil, etc... cuento el tiempo que tarda en tragar una cantidad de líquido, por ejemplo 400ml.

Lo que quiero hacer es fabricar una probeta y cada 200ml por ejemplo meter un sensor inductivo y mediante una balsa imantada pasará por dichos sensores y debera contar ese tiempo, pero no se como hacer un temporizador que cuando se active uno de estos sensores empiece y cuando pase otro pare.

Espero que podaís ayudarme, saludos y gracias anticipadas

mira el ejemplo BLinkWithoutDelay.ino del IDE que usa la función millis() o busca millis() en google : Arduino millis()
Encontrarás mucha información.
millis() es un contador que arranca cuando energizas el arduino y lleva una cuenta en milisegundos.
Tiene una capacidad de algo mas de 49 dias (2^32-1 milisegundos , haz las cuentas) de sobra.
Dispara el contador con algun sensor o sensores y lo apagas con otra posición.
Yo tengo un caudalímetro que funciona como lo que tu describes, uso una válvula electrica que llena por gravedad un recibiente calibrado. Dentro tengo un sensor magnetoresistivo que mide en milimetos el desplazamiento del agua dentro del cilindro a medida que el agua se va consumiendo.
En tu caso con dos sensores uno inicial y otro final lo que harás es lo siguiente.
La lectura arranca cuando pasa un sensor (supongamos inductivo) y guardas el dato de millis() que no es cero porque el arduino ya esta encendido. Y luego lo restas del valor que obtengas cuando el imagn alcance el segundo sensor.
Ese tiempo T sera el cociente del Volumen calibrado que ya conoces y te dará el caudal.

Gracias surbyte,

había pensado en eso pero se me presentó la duda de como veo el tiempo, que tampoco necesitaría verlo solo saber cual es para que arduino haga la operación matemática y me diga ya el caudal l/h.

Lo que tu tienes también podría ser interesante porque es muy parecido a lo que quiero hacer.

Tienes muchas maneras de poner sensores que te detectes esos tiempos.

  1. reed switch (es barato) y se cierra con la presencia de un iman potente o no tanto. Solo considera que con el agua habrá olas y debe estar bien orientado para que cierre el contacto y además proximo.
  2. puedes usar dos boyas de acuario que te dirán si tiene o no nivel donde la ubiques.. este es un método muy eficaz.
  3. puedes usar elementod opticod.
  4. también sensores capacitivos.
  5. conductividad también es posible.
    Un sensor va en el piso, y otro en nivel máximo y nivel mínimo.
    Puedes tener problemas con interferencia electrica.

Descarto usar ultrasonido porque no es preciso.

Surbyte los materiales a usar los tengo claro, es mas de programacion. Como puedo ver yo el tiempo q tarda en pasar desde el punto inicial hasta el final? Para poder hacer el calculo y averiguar el consumo l/h

Usando millis()
Detectas el paso del primer punto, tomas el valor de millis()
Detectas el paso por el segundo punto le restas millis() al primer valor y tienes el tiempo.
Ya te lo había explicado.

lo se surbyte, pero no se como hace la programación o al menos ese trozo que tu me dices

Bueno dime que tienes. Que elementos de detección del nivel usarás?

Buenas surbyte, he estado un tiempo fuera y no he podido mirar esto.

Voy a usar un sensor inductivo digital que cuando pasa un imán cerca suya se activa y envia un 1 a arduino, como el de la imagen.

A ver que me puedes aconsejar con el tema del código.