Clase digital 8. Desarrollo de segunda aplicación

Portada » Clase digital 8. Desarrollo de segunda aplicación

Desarrollo de segunda aplicación

Introducción

¡Hola!

Me siento muy feliz al saber que sigues aprovechando este curso, espero que lo sigas disfrutando, por lo tanto te invito a comenzar nuestra octava clase.

En esta clase realizarás un segundo proyecto. Esta vez será un proyecto tomado de un sistema aplicado comercialmente. Se trata de un control de apertura de puertas mediante motores. El enfoque en esta ocasión es desarrollar el código que genere la secuencia de procesos solicitada.

Para verificar el funcionamiento de este proyecto se utilizarán LEDs que representarán los actuadores. Pero, si tienes disponibilidad de un driver y dos motores, puedes utilizarlos y verificar físicamente el comportamiento del sistema.

Comencemos con energía y entusiasmo.

¡Sigue adelante!

Desarrollo del tema

Debes elaborar un programa para el control de 2 motores que abran un portón con las siguientes características:

A. Se puede seleccionar uno de 3 niveles de velocidad de apertura/cierre (ancho de pulso): lento (50%), medio (75%), rápido (100%). Vas a generar un ciclo de trabajo del PWM de 2mS.
B. La apertura es igual para ambos motores. Esto es, las puertas abrirán al mismo tiempo. Se deberán detener después de 20 segundos.
C. El usuario puede seleccionar que se cierren las puertas con diferente tiempo entre la puerta derecha y la izquierda:

  1. Se cierren ambas puertas al mismo tiempo.
  2. Se cierre la puerta izquierda 5 segundos después de la puerta derecha.
  3. Se cierra la puerta izquierda 10 segundos después de la puerta derecha.
  4. Se cierra la puerta izquierda 20 segundos después de la puerta derecha.

D. Cada puerta, independientemente del momento en que comiencen a cerrar, debe durar 20 segundos en total para cerrarse. También durará 20 segundos aunque cambie el ancho de pulso (para simplificar la programación).
E. La configuración del ancho de pulso y del tiempo de retardo del cierre de la puerta izquierda no tiene que hacerse cada que se vayan a operar las puertas. El usuario puede hacerlo una vez y así deben quedar configuradas, incluso aunque el sistema se desconecte de la energía eléctrica. Por lo que debe hacerse uso de la memoria EEPROM para guardar la configuración seleccionada por el usuario.

Para iniciar tanto el proceso de apertura como de cierre se utilizará un solo push-button.

Para observar el comportamiento de los motores se pueden utilizar LEDs y un ciclo de trabajo de 50mS.

Como tip, puedes generar las siguientes salidas para que el usuario sepa la configuración que seleccionó y si los motores están abriendo o están cerrando (los 1s representarán los LEDs encendidos y los 0s los LEDs apagados):

Nivel de PWMTiempo de retardoPuerta derechaPuerta izquierda
50%   00Sin retardo: 00Abriendo: 01Abriendo: 10
75%   015 segundos: 01Cerrando: 10Cerrando:01
100%  1010 segundos: 10Abierta: 00Abierta: 00
20 segundos: 11Cerrada: 00Cerrada: 00

A la salida del PWM se conectará un LED y, mediante su nivel de intensidad se podrá determinar el porcentaje de PWM.

La configuración tanto del ancho de pulso como del tiempo de retardo de apertura de la puerta izquierda se deben realizar mientras no estén cerrando o abriendo las puertas.

Conclusión

Para concluir esta clase debes saber que este proyecto ha implicado un reto mucho mayor. Has tenido que integrar varios módulos y características en la operación del microcontrolador: los módulos CCP, EEPROM, interrupciones. Además has tenido que desarrollar funciones con tareas específicas e interrelacionadas. Pero lo más importante es que has logrado generar un código de alto desempeño con aplicación real.

La apertura o cierre de puertas se realiza mediante la medición del nivel de corriente que demandan los motores, y también se realiza un decremento del ancho de pulso cuando las puertas están por cerrarse o abrirse, lo que requiere del manejo de un contador para saber cuando están cerca tanto de la apertura completa como del cierre total. Pero de cualquier forma, el desarrollo que has logrado ha implicado un gran esfuerzo que ha incrementado tu dominio en el manejo de los microcontroladores.

Has finalizado la clase y tus esfuerzos hasta el momento comenzarán a dar sus frutos en pasos  mucho más grandes a partir de aquí, no dejes que la curiosidad por comprender lo que te rodea sea opacada por el conformismo, sigue esforzándote, Revisa el material complementario y realiza las actividades propuestas. Te encuentro en tu siguiente clase, hasta entonces.