Lámpara LED + PCA9685

Tema en 'Taller de Arduino' iniciado por carmamezo, 16 May 2020.

  1. carmamezo

    carmamezo

    Mensajes:
    11
    Registrado:
    5 Sep 2019
    Ubicación:
    Leioa
    Tal y como quedó pendiente os pongo un pequeño ejemplo de un control de la lámpara del post anterior pero esta vez con el controlador PCA9685 (Adafruit) y una pantalla TFT táctil (NEXTION).
    Materiales:
    - Arduino nano. 2€
    - TFT Nextion (desde 15€ hasta 100€, según tipo y tamaño), en este caso he usado una NX4832T035 básica). Pero las enhanced tienen reloj en tiempo real en la propia LCD y algunas E/S (tengo una también). https://nextion.tech/datasheets/
    - PCA9685. Unos 2€ https://www.adafruit.com/product/815
    - Placa de control meanwell + drivers meanwell LDD-H (unos 12€ la placa y 5€ cada meanwell). https://es.aliexpress.com/wholesale?catId=0&initiative_id=SB_20200516083906&SearchText=meanwell+ldd-h
    - Lámpra LED con 25 leds de 3W y 5W (unos 37€). https://es.aliexpress.com/item/32951077490.html?spm=a2g0o.productlist.0.0.33ec4cfbFoIkMU&algo_pvid=ff3754be-d88c-4d1a-85d8-103f7130fae2&algo_expid=ff3754be-d88c-4d1a-85d8-103f7130fae2-39&btsid=0ab6f83915896472202007710e793f&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_

    CONTROLADOR PCA9685:
    Se trata de un controlador con 16 salidas PWM que se comunica con el arduino mediante I2C. Lo bueno es que podemos ampliar el número de salidas PWM de nuestros arduinos todo lo que queramos gracias a estos módulos porque podemos conectar hasta 62 módulos con 16 salidas PWM cada uno... En principio la gente lo usa para servomotores (la placa está diseñada para eso) pero para controlar los meanwell vale igual (yo he comprado la placa por aliexpress sin la fuente externa para servomotores porque con los 5v me vale para el V+ y el Vcc).
    Tiene 12bits de resolución por lo que los valores van de 0 a 4095 en lugar de los 8bits de resolución de arduino.
    En teoría este controlador puede generar unos 22mA por cada salida PWM (está pensado para controlar LEDs normales), por lo que requiere unas resistencias de unos 220ohm en las salidas PWM, mi placa llegó con resistencias de 110ohm por lo que les he pusto otra resistencia de 120ohm en serie para asegurar que no supero la corriente máxima. Además he puesto unas resistencias de pull-down de 10kohm a la entrada del PWM del meanwell para que cuando el PCA9685 no da salida, el LDD-H apague las luces.

    PANTALLA TÁCTIL NEXTION:
    Se trata de una pantalla táctil que tiene un software externo (IDE) que nos permite programarla a nivel gráfico (descargable desde la página web de nextion: https://nextion.tech/nextion-editor/), desde arduino lo único que hay que hacer es leer el valor de las variables mediante comunicación serie. La verdad es que el software de programación es bastante limitado, pero se puede hacer programación dentro de la pantalla lo que deja al arduino bastante deshaogado (la programación interna es bastante mierdera, pero te acostumbras). Tiene muuuuuuchas limitaciones, pero permite hacer cosas muy chulas de manera muy fácil.

    Como siempre os dejo los archivos y fotos. El programa de la pantalla es el archivo hmi.HMI.
    He subido un vídeo a youtube donde se ve la aplicación: https://youtu.be/3mCscUmwZG4
     

    Adjuntos:

    • info.zip
      Tamaño de archivo:
      13,7 MB
      Visitas:
      12