# ¿Cómo programo encoders con Arduino?



## jjos (Sep 29, 2017)

buenos dias 
estoy intentando crear un auto y medir las distancias desde un punto inicial  luego moverlo  y determinar que distancia recorrio 
me han dicho que podria usar encoders y arduino pero la verdad no entiendo su funcionamiento 
¿me podrian explicar? 
de antemano gracias ...


----------



## pandacba (Sep 29, 2017)

Necesitas saber programar, creo que más te vale comprar algo echo, que viene al efecto


----------



## Scooter (Sep 29, 2017)

Mejor que lo compre hecho.

Normalmente se controlan con interrupciones.


----------



## zonosfera (Oct 1, 2017)

Mmmm... con Encoders..... 

para darte una idea tal vez podrías darle una mirada a la colección de un profesor Alemán Norbert Heinz, tiene un canal en youtube, y explica, (Lógico en Alemán, Poner subtitulos en ingles para entender un poco), como hacer funcionar encoders de cuadratura que el mismo diseña con partes recicladas...

Yo lo estoy siguiendo, tratando de armar una CNC en base a motores de DC (no steppers) con encoders para determinar la posición de cada eje..., lógico, en su sección de descargas tiene los códigos sketches para arduino, y el control, lo hace por PC con programador en "C", (esto para la CNC)..

Podrías empezar por allí..., aquí un ejemplo del proyecto de una regla digital basado solo en Arduino...

Saludos...


----------



## savad (Nov 17, 2017)

Lo más fácil .... usar free RTOS, generar un proceso para interrumpir cuando se encuentre un cambio de estado en los pines de entrada desde el encoder en cuadratura (La interrupción debera actualizar el contador ...32 bits son más que suficientes), crear otro proceso para actualizar display, y uno mas para hacer la conversion de pulsos a tu unidad favorita y actualizar variables-RAM que el proceso de actualizar display utiliza y listo.

Nota: Si es necesario crear proceso que interrumpa, pero con menor prioridad del que lee el encoder, que lea y elimine rebotes del  teclado.
Y para adornarlo añadir rutinas para ajustar offset, cambio de unidades, alarmas, etc.

Yo recientemente hice uno con el arduino nano ... para hacer un log de las millas que recorre mi automovil desde el inicio hasta el final del viaje, para documentar y calcular los gastos de mi carro y ayudarme a hacer la facturación a mis clientes por gastos de transporte y claro .. deducciones en impuestos.

Trabaja bien hasta una velocidad de 90 millas x hora (32 pulsos x rev de la llanta)


----------

