HOME

PRODUCTOS

PROYECTOS

TUTORIALES

VIDEOS

FREEWARE

PROGRAMAS

FUNCIONES C

EMPRESA

ENGLISH

                   

 Lectura de la velocidad de un motor de corriente directa de alto torque, con encoder cuadratura y sistema Bolt 18F2550, utilizando interrupciones.

Autor del proyecto: Moisés Meléndez Reyes

 

Video demostrativo

 

1. Descripción general:

Los motores de corriente directa CD actuales generalmente ya incorporan un circuito electrónico conocido como 'encoder en cuadratura'. El encoder en cuadratura lleva ese nombre debido a que proporciona dos señales A y B durante el giro del motor. Además, ambas señales están defasadas 90°. Se utiliza un driver 74LS245 para dar un nivel de voltaje adecuado a las señales del encoder, antes de ser leídas por el microcontrolador.

A través de la lectura de estas señales por medio de un microcontrolador, es posible conocer el número de vueltas en un lapso de tiempo y por tanto la velocidad angular del rotor en RPM, y el sentido de giro. Esto permite el desarrollo de controles de precisión tanto de velocidad como de posición del rotor de un motor de CD, sobre todo para aplicaciones industriales en la industria de la manufactura y en robótica.

En el proyecto que aquí se describe, se utilizó un motor de CD con motorreductor, de alto torque y con encoder integrado. Para el caso de este motor, por cada vuelta del rotor antes de la caja de engranes, se producen 22 pulsos del encoder. El motor tiene una relación de reducción en su caja de engranes de 1:54. Por tanto, se tienen 1188 ticks o pulsos del encoder por cada revolución del rotor después de la caja de engranes.

Utilizando el sistema Bolt 18F2550, se desarrolló el firmware para la lectura de la velocidad del rotor y su sentido de giro. La información es mostrada en tiempo real (por medio del puerto serial del microcontrolador operando a 57600 bps), en el monitor de una Laptop, ejecutando un software emulador de terminal.

De tal manera de minimizar el tiempo de procesamiento del CPU, se empleó en el firmware el mecanismo de interrupciones, con las señales de los encoders ingresando al microcontrolador 18F2550. a través de sus pines de interrupción externa INT0 e INT1. Lo anteriormente mencionado facilitará el desarrollo -en una segunda fase del proyecto- de un control PWM de malla cerrada, y utilizando algoritmos PID.

 

Figura 1: Equipo para medición de la velocidad de un motor de corriente directa con encoder cuadratura. Los resultados se miden en tiempo real y se muestran en el monitor de la Laptop. Los valores se actualizan cada 500 ms. La velocidad de trasmisión del puerto serial es de 57600 bps.

 

2. Pruebas de medición de velocidad con el motor girando en vacío:

En la figura 1 se muestra el equipo utilizado. El motor de CD (sin carga), fue alimentado por medio de una fuente fija de 13.7 VDC y de una batería de 12.7 VCD.  El voltaje de alimentación se observó con un multímetro, con los siguientes resultados:

Voltaje de alimentación RPM
13.7 VCD 154 rpm
12.7 VCD 143 rpm

Es importante señalar que, si al motor se le agrega carga, sería necesario utilizar otra fuente de voltaje de más potencia, dado que la corriente en este caso subiría hasta un máximo de 5 amperes.

 

Figura 2: El microcontrolador Bolt 18F2550 recibe las 2 señales provenientes del encoder, las cuales le indican la velocidad y el sentido de giro. El firmware está desarrollado por medio de interrupciones, para minimizar el tiempo de procesamiento y permitir la realización posterior del control PWM de velocidad y posición del motor.

 

Figura 3: Diagrama de conexiones entre el encoder del motor y el sistema Bolt. Se utiliza un driver 74LS245 para dar un nivel de voltaje adecuado a las señales del encoder, antes de ser leídas por el microcontrolador.

 

3. Firmware del sistema Bolt 18F2550:

La programación del microcontrolador se realizó en ANSI C, y con el compilador C18. Enseguida se proporciona la carpeta completa MPLAB del proyecto. Como se mencionó anteriormente, en una segunda fase se realizará el control PWM de velocidad y posición del motor y, por tanto, el programa se desarrolló utilizando interrupciones, de tal modo de liberar al microcontrolador de tiempo de procesamiento.

Por favor considere que en en el fimware debe modificarse una de las líneas de programación, dependiendo de si se trata de un motor de Alto Torque de relación de engranes 1:54 ó bien 1:36. Las instrucciones se dan en el propio programa fuente.

En seguida se proporcionan la carpeta completa MPLAB del proyecto:

encoderC18Bolt_v2-HT.zip

 

 

Documentación adicional:

Motor CD Alto Torque 1:36 y encoder

Motor CD Alto Torque 1:54 y encoder

Motor Motorreductor CD con encoder

Driver Dual PWM L298N Puente H para control de velocidad

Driver VNH2SP30 PWM para motores de alta potencia

Lectura de velocidad de un motor de CD con encoder cuadratura

Control PWM para motor de CD, con módulo L298N

Control de velocidad PWM para motor GW4058 de alto torque

Principios de funcionamiento del encoder cuadratura de efecto Hall

Tutorial del control PWM para motores de corriente directa

74LS245.pdf