Skip to content
Daniel Becerril edited this page Aug 2, 2020 · 13 revisions

Arduino-DMX-512-Tester-and-Controller

LCD - 20x4


Herramienta Open Hardware, para pruebas y control de iluminación de espectáculos a través del protocolo DMX-512, ideal para hacer pruebas rápidas en instalaciones fijas o temporales de iluminación, sin la necesidad de instalar consolas de iluminación, interfaces o computadoras en ambientes al intemperie, hostiles o de difícil acceso.


Versión actual

follows

size GitHub_downloads

version license

GitHub issues

GitHub forks GitHub stars GitHub watchers

size GitHub_downloads

version license

GitHub issues

GitHub forks GitHub stars GitHub watchers


Basado en:


Caracteristicas

  • Navegación desde encoder, intuitivo y de fácil acceso
  • Inserción rápida de valores desde el teclado numérico y encoder
  • Función para ubicar luminaria desde el canal seleccionado
  • Arranque con universo DMX preseleccionado
  • Selección de opciones de memoria al arranque
  • Acceso rápido a opciones de memoria
  • Función de Black Out desde el menú Memory Options
  • 4 modos de control DMX:
    • Unitary
    • Matrix
    • Multiply
    • Chaser
    • Config
  • Control de contraste de LCD desde desde el menu Config
  • Acceso rápido desde el teclado al LCD back light
  • Esquemático, PCB y simulador en Proteus v8.0 SP1
  • Simulación en Proteus v7.7 SP2 y v8.0 SP1
  • LCD de 4x20 con backlight y contraste controlado por software
  • Alimentación desde USB, baterías o fuente de alimentación externa
  • Encoder para navegacion entre menu
  • Teclado numérico 4x4
  • Interruptor de on/off
  • Salida DMX desde bornera, XLR de 3 pin y XLR de 5 pin
  • Leds de estado de salida DMX
  • Aclarar que para este proyecto se utilizó un Arduino Mega hecho en China
  • Regulador para fuente externa, el arduino se calienta
  • Bornera para salida de fuente regulada de 5V para uso general
  • Led para salida de fuente regulada
  • Botón de reset
  • Opto acoplado a salida de dmx
  • Convertidor de DC/DC para aislamiento de DMX
  • SW de palanca para invertir polaridad de salida de DMX
  • Jumper default eeprom
  • Driver para luz led como lampara
  • SW para Key Light
  • SW para Ext Light
  • Espaciadores para fijación
  • Leyendas de conexión

Instalación de librerías

  • Instalar Arduino IDE v1.0.6 (carpeta .../Software/) (Windows 10 64 bits, ok!)

  • Instalar la librería del encoder:

    • Menú Sketch, Importar librería, Add Library
    • Seleccionar el archivo Encoder.zip (carpeta .../Firmware/Documentacion/Librerias/)
    • Abrir
    • Mensaje: Library added to you libraries
  • Instalar la librería del LCD:

    • Menú Sketch, Importar librería, Add Library
    • Seleccionar el archivo LiquidCrystal_V1.2.1.zip (carpeta .../Firmware/Documentacion/Librerias/)
    • Abrir
    • Mensaje: Library added to you libraries
  • Instalar la librería del DMX:

    • Copiar la carpeta DMX desde .../Firmware/Documentacion/Librerias/DMX/Dmx/
    • Pegarla en la carpeta de .../Arduino/libraries/ el los archivos de programa (para el caso de Windows 10 64 bits, C:\Program Files (x86)\Arduino\libraries)
    • Reiniciar Arduino IDE
    • Revisar el menú Sketch, Importar librería..., Dmx
  • Cargando el Firmware:

    • Seleccionar el firmware que vamos a cargar
    • Lo abrimos desde Arduino IDE
    • Menú Herramientas, Tarjeta, Arduino Mega 2560 or Mega ADK
    • Conectar el Arduino Mega al PC
    • Verificar que Windows lo dé de alta correctamente:
      • Panel de control\Sistema y seguridad\Sistema
      • Administrador de dispositivos
      • Puertos (COM y LPT)
        • Arduino Mega 2560 (COMx)
    • En Arduino IDE seleccionamos nuestro Arduino Mega:
      • Menú Herramientas, Puerto Serial, COMx
    • Clic en el icono Cargar...
    • Salen estos errores:
      • avrdude: stk500v2_recv(): checksum error
      • avrdude: stk500v2_recv(): checksum error
      • avrdude: stk500v2_recv(): checksum error
      • avrdude: stk500v2_recv(): checksum error
      • avrdude: stk500v2_recv(): checksum error
      • avrdude: stk500v2_recv(): checksum error
      • avrdude: verification error, first mismatch at byte 0x0b60 0x50 != 0xd7
      • avrdude: verification error; content mismatch

Menu de opciones

El archivo User Case Diagram, muestra los menus y sub menus en el orden de seleccion


Pantallas de opciones

EEPROM Default

Muestra el banco de memoria preseleccionado, se ve reflejado en el universo DMX que se va a cargar

EEPROM Default ok

Cuendo el jumper en la placa esta puesto al arranque, borra todos los bancos de memoria y regresa a los valores defaults, quitar el jumper cuando lo pida

Pantalla inicial

  • Se mantiene estatica, hasta clic en encoder
  • En "M-", muestra la memoria cargada preseleccionada, con el universo previamente grabado

Pantalla licenciamiento

Muestra las licencias, y las versiones instaladas

Initial Memory

Aqui estan las opciones para el banco de memoria precargado, las opciones son:

  • Empty, borra todos los bancos de memoria
  • Load, cargar un banco de memoria, permite seleccionar que banco se carga
  • Clear, borrar un banco de memoria desde la EEPROM, permite seleccionar el banco

Menu de control

Menú para seleccionar modos de control, configuraciones y herramientas

Convert

Permite convertir entre números decimales y binarios que representan los sistemas con direccionamiento desde un dip switch

  • Unitary, permite seleccionar 8 canales específicos ademas de mostrar el valor actual
  • Control DMX Matrix, muestra una matriz de 3 x 5 con los valores de los canales mostrados, canal inicial y final seleccionable
  • Control DMX Chaser, permite secuenciar canales de forma automática, el canal inicial, canal final y tiempo son seleccionables, permite secuenciar canales manualmente desde el encoder
  • Control DMX Secuencer, permite secuenciar entre los universos guardados en la memoria EEPROM con un tiempo seleccionado
  • Control DMX Multiply, permite llenar valores multiplicando los canales seleccionados
  • Memory, opciones de memoria EEPROM y RAM, accesible desde cualquier control
  • 8 Bancos de memoria para almacenar, cargar y borrar los valores actuales, accesible desde el menú Memory
  • Config, permite asignar el valor del Backlight, Key Light, Contraste y Bank Init
  • Teclado numérico

Licenciamiento:

Open Source Hardware (OSHW) v1.0

GNU General Public License v3.0


Autor:

  • Daniel Becerril
  • Copyright (C) 2015

Email Facebook Facebook Twitter Instructables Hack a Day Youtube Tech Inside GitHub Hackster


Clone this wiki locally