Control remoto para ventilador de pared usando PIC16F628A

Hace algunas semanas adquirí un ventilador de pared para el taller, estos ventiladores por el hecho de que deben ser colocados a una atura cercana al techo sólo pueden ser operados con un cordón que permite, al ser halado, encenderlo y cambiar la velocidad.

Lamentablemente cuando decidí montarlo vi que el mejor sitio para ubicarlo era por sobre una estantería metálica que no me permitiría halar del cordón para manejarlo, de todas maneras lo coloqué allí y operaba en ventilador enchufándolo para encenderlo, pero esto lógicamente no me permitía cambiar las velocidades, por esta razón decidí realizar el circuito de control remoto por IR que a continuación presento.

La base de este proyecto es el PIC 16F628A, un microcontrolador muy versátil que permite crear proyectos electrónicos con facilidad, el diagrama de la primera etapa del circuito lo muestro a continuación:
Circuito del control remoto
El funcionamiento es el siguiente, utilizando un control remoto de TV con protocolo RC5 (Philips) se envían señales que son captadas por un sensor IR común y luego interpretadas por el PIC 16F628A. Cuando pulsamos la tecla “1” en el control remoto se pondrá a 1 lógico el pin 6 del PIC, activando el optoacoplador que a su vez activa el TRIAC, igual pasa al pulsar las teclas 2 y 3 se ponen a 1 lógico los pines 7 u 8 respectivamente, accionando así el TRIAC para cada velocidad, al pulsar la tecla “Power” el puerto B es colocado a “0” y por lo tanto el ventilador se apaga.
Segunda etapa
La segunda etapa del circuito es la de potencia donde están los optoacopladores y los TRIACs, dividí el circuito en dos etapas para hacer más fácil su comprensión, no obstante ambas etapas se pueden montar en un único circuito impreso o PCB.

Como transmisor usé un control remoto universal marca RCA que tenía disponible, programado por supuesto con el código para funcionar con televisores Philips (062). Es importante aclarar para quienes no lo sepan que cada control remoto IR, ya sea de TV o cualquier otro artefacto, funciona en base a un protocolo de comunicación que varía dependiendo de la marca, existen muchos protocolos IR ya que cada marca crea el suyo propio, pero el protocolo RC5 de Philips tiene la particularidad de que es abierto en el sentido de que es posible encontrar documentación sobre cómo funciona y por lo tanto puede usarse para la creación de proyectos.

Circuito del control remoto
Circuito

También hay que mencionar que no todos los controles de televisores Philips usan el protocolo RC5, por lo que aconsejo para este proyecto adquirir un control universal y probar con los varios códigos de Philips, es posible incluso crear nuestro propio transmisor con otro PIC y algunos pulsadores, pero eso lo dejaré para un próximo proyecto.

circuito de control remoto
circuito de control remoto

Los TRIACs utilizados son de 4A y 600V, puede usarse otros parecidos y no es necesario colocar disipadores de calor ya que la potencia que consume el ventilador no es muy elevada. El sensor IR que usé lo saqué de un reproductor de DVD en desuso, pero puede usarse un sensor de TV, DVD, VCR o cualquier otro aparato, ya que la única cosa que cambia en los distintos modelos de sensores es la disposición de los pines, así que nada más debemos fijarnos bien en qué pin estaba conectado el voltaje positivo 5V y el GND, el otro pin lógicamente será el de salida de la señal o OUT. Para el buzzer se puede usar una corneta pequeña o un buzzer pasivo.

Finalmente aquí les dejo el archivo hexadecimal (.HEX) para programar el PIC, al momento de grabarlo deben poner los bits de configuración de la siguiente manera; WDT=Off, MCLR=Off, CP=Off, PWRT=On y en Oscilador =XT. La contraseña para descomprimir es isaachernandez.com.ve

Descargar el archivo HEX y diagrama

Descarga alternativa

¿Enlace roto? deja un comentario y lo arreglaremos, los usuarios Premium cuentan con enlaces extra sin publicidad para todos los archivos.

¿Alguna otra duda o problemas con la descarga?, visita la sección de Preguntas frecuentes.


Vea también: Curso de programación de microcontroladores PIC en BASIC

15 comentarios sobre “Control remoto para ventilador de pared usando PIC16F628A

  • el 27 abril, 2013 a las 11:46 AM
    Permalink

    Magnífico aporte. Hace tiempo estoy interesado
    en la programación de PIC’s para hacer circui-
    tos sencillos. Tengo el quemador, pero no he
    intentado quemar ninguno.
    En cualquier momento te hago alguna consulta.
    Felecitaciones y Gracias por la información.

    Respuesta
  • el 23 abril, 2013 a las 10:38 PM
    Permalink

    Lo he montado al pie de la letra y nada.
    Donde esta la falla?
    Me puedes ayudar

    Respuesta
    • el 27 abril, 2013 a las 11:59 AM
      Permalink

      Algún error cometiste, sólo puedo decirque que si lo armas tal cual como lo explico te funcionará como me funcionó a mi. El error puede estar en cualquier parte, sobre todo asegúrate de colocar todos los condensadores sin omitir ninguno ya que una falla en la regulación del voltaje de fuente impedirá que el pic trabaje correctamente.

      Respuesta
  • el 15 marzo, 2013 a las 5:06 PM
    Permalink

    Buenas tardes,
    muchas gracias por el aporte, he intentado hacerlo pero no he podido, ya había intentado leer un control, pero por alguna razón no me funciona.
    Podría colaborarme con algo de código en cuanto a leer el protocolo?

    Un abrazo y muchas gracias.
    Desde Colombia.

    Respuesta
    • el 15 marzo, 2013 a las 5:28 PM
      Permalink

      En el manual de Proton se muestran ejemplos para usar el protocolo RC5.

      Respuesta
      • el 15 marzo, 2013 a las 5:43 PM
        Permalink

        Muchas gracias por la pronta respuesta, la verdad programo en CCS. pero le echaré un ojo…

        Respuesta
        • el 15 marzo, 2013 a las 6:57 PM
          Permalink

          En Proton se te hará más fácil porque tiene librerias creadas especialmente para el protocolo RC5, CCS no las tiene.

          Respuesta
      • el 15 marzo, 2013 a las 11:55 PM
        Permalink

        Bueno ya le metí el diente a este cuento, pero tengo problemas.
        conseguí un IR SM0038.

        Pero cuando lo conecto al micro, o la salida a un led, este parpadea aun sin señal infrarroja, pero cuando presiono teclas de un control parpadea con pulsos y con algún tipo de coherencia.

        Me puede ayudar en este punto, no se que pueda ser o me recomienda algún IR en particular.

        Muchas gracias de nuevo.

        Respuesta
        • el 16 marzo, 2013 a las 9:06 AM
          Permalink

          Todos los sensores IR funcionan igual, no importa que sea sensible a ruidos ambientales porque para eso se usan las librerías que interpretan el protocolo que se está usando, en este caso RC5, con esto el PIC sólo acepta las señales que usan este protocolo y descarta cualquiero otra.

          Respuesta
          • el 16 marzo, 2013 a las 11:38 PM
            Permalink

            🙂

            Yo he logrado algo, buscando algo por aquí y por allá…

            Bueno ya puedo leer algunas cosillas, por ejemplo volumen arriba, volumen abajo y nada mas… 🙁

            Seguiré luchando, o será que mi control de televisor LG no usa ese protocolo?¿

          • el 17 marzo, 2013 a las 9:27 AM
            Permalink

            Existe multitud de protocolos lo mejor es que uses un control universal.

  • el 28 enero, 2013 a las 2:43 AM
    Permalink

    MUY BUENO EL BLOG GRACIAS POR LOS APORTES Y LOS UTILES CONSEJOS

    Respuesta
  • el 27 enero, 2013 a las 10:35 AM
    Permalink

    Cordial saludo desde colombia, muchas gracias por tan magnífico aporte justo lo que estaba buscando porque yo también tengo el mismo problema con los ventiladores de techo de la casa con las famosas cadenas,hay alguna forma de simularlo primero en proteus para luego sí hacerlo en la práctica?

    Respuesta
    • el 27 enero, 2013 a las 11:34 AM
      Permalink

      No la hay, lo mejor es que pruebes primero en el Protoboard antes de montar, saludos.

      Respuesta
  • el 18 diciembre, 2012 a las 5:11 PM
    Permalink

    muy buena su enseñansa

    Respuesta

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *