Lectura pulsos de sensor efecto hall

Soy nuevo en esto y la verdad que llevo varios días con ello pero no doy con la solución. Para los expertos del foro será una tontería pero de verdad que he buscado pero no doy con la solución exacta, ahí va:

Quiero leer un sensor de pulsos magnético (va alimentado a 12V) con un arduino que soporta entradas a 3.3V. El sensor da 12V normalmente de salida y 0V cuando detecta el imán. Decir que se producirían varios pulsos por segundo, vamos que la conmutación es muy rápida. Tengo claro que no puedo poner directamente los 12V a la entrada del arduino pero ¿cuál es la manera más correcta de hacerlo? he leído de todo, con diodos, diodos zener, divisores de tensión, un diodo y poner el pin en pullup...

Gracias!

Y si alguien tiene una referencia donde leer para además comprender el funcionamiento se agradecería :slight_smile:

Hay varias formas de hacerlo.
Una es usando un optoacoplador.

o esta otra opción

En una tienes el pulso invertido y en la otra lo tienes en fase o sea, que cuando tengas 12 tendras 3.3V en tu arduino.

Los valores de las resistencias se calculan pero son fáciles de obtener.

Te dejo el hilo para que te de un marco teórico-practico que te ayude a entender.
La resistencia del lado derecho en tu caso puede ser 3k3.

en el ejemplo se sugiere un 4N25 y esta bien solo que para que conmute debidamente hay que hacerle circular una corriente como la que dice el tutorial, o sea digamos unos 60mA.
Entonces usando los datos ahi sugeridos

R = (12-Vf)/If = (12 - 1.3) / 60mA = 178 ohms

Es decir que con 180 ohms estará bien

Verifiquemos potencia de la Resistencia P = I² x R = (60)²x180 = 0.648 Watts
O sea que una de 1/2 W no es suficiente

Deberás comprar una de 1W

Otra alternativa es usar un optacoplador con mejor CRT Current Transfer Ratio o la trazon de transferencia de corriente, o mejor dicho con que corriente de entrada logro tal corriente de salida.

Ejemplo es el PC817 que muchas veces se ha sugerido en este foro.
Tiene un CRT mucho mejor que el 4n25 o sea con corrientes de entrada menores se obtiene lo necesario a la salida y tampoco se necesita demasiado.

Entonces veamos

El PC817 funciona bien con 2.5mA a la entrada
O sea..
Vf = 1.2V

R = (12V - 1.2V)/2.5mA = 4.32Kohms

Como verás con este valor de resistencia ni necesito verificar la corriente.

Con ambos va a funcionar pero si me preguntas prefiero este ultimo optoacoplador.

La Resistencia de 4.32K no se consigue, porque no es un valor standard.
Tienes 3.9K o 4.7K.
Hoy es posible que encuentres 4.2K que estaría muy cerca.
De todos modos no es un cálculo que te complique la vida.
No uses 4.7k porque hacer que la corriente sea menor a 2.5mA y no queremos eso.
4k2 o 3k9 en este caso.

Muchas gracias, la verdad que con tu solución me queda claro. Solo una duda, ¿entiendo que la R2 la puedo eliminar si configuro el pin como entrada Pull-Up?

Correcto, puedes eliminarla.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.