-
Notifications
You must be signed in to change notification settings - Fork 2
Home
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.
- Arduino Mega 2560 Rev-3
- Librería Arduino cuatro universos DMX v0.3 - Deskontrol
- Libreria LCD v1.2.1 - Francisco Malpartida
- Simulación en Proteus de Arduino - Microcontrolandos
- Encoder
- 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
-
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
- A Max Value, pone el valor maximo del item que se esta editando
- B Min Value, pone el valor minimo del item que se esta editando
- C Locate Channel, parpadea entre 0 y 255 el canal seleccionado
- D Analog Value, permite cambiar el valor dinamicamente desde el encoder en el canal seleccionado
- # Back light, enciende o apaga el backlight del LCD
- External Light, enciende o apaga la luz externa
El archivo User Case Diagram, muestra los menus y sub menus en el orden de seleccion
Muestra el banco de memoria preseleccionado, se ve reflejado en el universo DMX que se va a cargar
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
- Se mantiene estatica, hasta clic en encoder
- En "M-", muestra la memoria cargada preseleccionada, con el universo previamente grabado
Muestra las licencias, y las versiones instaladas
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
Menú para seleccionar modos de control, configuraciones y herramientas
Permite convertir entre números decimales y binarios que representan los sistemas con direccionamiento desde un dip switch
- Permite seleccionar y modificar 8 canales específicos ademas de mostrar el valor actual
- Acceso a menu de memoria
- Muestra el banco actual
- Muestra una matriz de 3 x 5 con los valores de los canales mostrados
- Canal inicial y final seleccionables
- Canales modificables y editables
- "c", muestra el canal actual
- los dos canales de la esquina de arriba derecha, muestra entre que canales esta ubicado
- Acceso a menu de memoria
- Muestra el banco actual
- Permite secuenciar canales de forma automática
- El canal inicial, canal final y tiempo son seleccionables
- Permite secuenciar canales manualmente desde el encoder
Ejemplo:
- Selecciono "Delay" de 100 (100x10= 1000 mS), "First CH" 001 y "Final CH" 512 El resultado es una secuencia desde el canal 1 hasta el 512 y el paso entre los canales lo hace cada segundo
- KeyLight 0-255, dimmer de luz de teclas
- BackLight 0-255, dimmer de luz de LCD
- Contrast 0-255, contraste de LCD
- BankInit selecciona el banco de memoria que se carga al arranque
- About versiones y licencias
Opciones de memoria EEPROM
- "b", muestra el banco de memoria actual
- Save guarda los canales actuales en un banco seleccionable
- Load carga un banco de memoria
- Clear borra un banco de memoria seleccionable
- ClearAll borra todos los bancos de memoria
- EmptyRam pone en 0 los canales actuales que estan alojados en la RAM
- BlackOut pone en 0 los canales actuales que estan alojados en la RAM, temporalmente hasta que se quite esta opcion
Permite secuenciar entre los universos guardados en la memoria EEPROM con un tiempo seleccionado
- Delay tiempo entre pasos de bancos de memoria, el numero seleccionado x 100 da el tiempo en mS
- FirsBank primer banco de memoria
- FinalBank ultimo banco de memoria
- Start inicia y para la secuencia
- Bank muentra el banco actual
Permite llenar los valores de los canales, multiplicando los canales seleccionados
- "b", muestra el banco actual
- Value valor que se va a poner a los canales que se multipliquen
- First CH canal inicial
- Multiply numero de saltos entre canales
- Quantity cantidad de veces que se repiten los saltos
- Memory acceso a memoria
- Apply aplica la multiplicacion
Ejemplos:
- si First CH = 1, Multiply = 1, Quantity = 512, los 512 canales adoptan el valor de Value
- si First CH = 1, Multiply = 3, Quantity = cada 3 canales, iniciando en el 1 hasta el 512, adoptan el valor de Value
- Seleccionamos: "Value" = 255, "First CH" = 001, "Multiply" = 003, "Quantity" = 170 y "Apply"
- El resultado es: 170 canales a partir del canal 1 hasta el 510, de 3 en 3 con el valor 255
Open Source Hardware (OSHW) v1.0
GNU General Public License v3.0
- Daniel Becerril
- Copyright (C) 2015