Taula de continguts:

Dimmer DMX de 4 canals: 6 passos
Dimmer DMX de 4 canals: 6 passos

Vídeo: Dimmer DMX de 4 canals: 6 passos

Vídeo: Dimmer DMX de 4 canals: 6 passos
Vídeo: ENDEREÇAMENTO DE EQUIPAMENTO NA MESA DMX 512 - FALCON SOM E ILUMINAÇÃO 2024, Juliol
Anonim
Dimmer DMX de 4 canals
Dimmer DMX de 4 canals

El concepte és dissenyar i crear un regulador de llum portàtil.

Requisits:

  • DMX512 Controlable
  • 4 canals
  • Portàtil
  • Fàcil d'usar

Vaig proposar aquesta idea al meu professor de WSU perquè volia combinar les meves passions pel teatre i la informàtica. Aquest projecte va actuar una mica com el meu projecte sènior al departament de teatre. Si teniu algun comentari o pregunta, m’agradaria ajudar-vos.

El desenvolupament futur podria incloure més canals, connector DMX de 5 pins, pas DMX, 8 commutadors dip per canviar de canal, placa de circuit imprès.

He migrat aquest projecte des de https://danfredell.com/df/Projects/Entries/2013/1/6_DMX_Dimmer.html perquè encara és popular, suposo. També he perdut el fitxer de llavor iWeb, de manera que ja no puc actualitzar-lo fàcilment. Estaria bé que la gent pogués compartir les seves preguntes sobre el projecte.

Pas 1: recopilació del maquinari

Recopilació del maquinari
Recopilació del maquinari

Maquinari utilitzat: la major part es va demanar a Tayda Electronics. M’agraden més que DigiKey per la selecció més petita i fàcil d’entendre.

  1. ATMEGA328, microcontrolador
  2. MOC3020, optoacoplador TRIAC. No ZeroCross.
  3. MAX458 o SN75176BP, receptor DMX
  4. ISP814, optoacoplador de corrent altern
  5. 7805, regulador 5v
  6. BTA24-600, 600V 25A TRIAC
  7. Cristall de 20 MHz
  8. Font d'alimentació de 9V

Alguns obstacles i lliçons apreses en el camí

  • Si no sou expert en registres, seguiu amb un ATMEGA328P
  • Optoacopladors incorrectes. No voleu Zero Cross
  • Els canals alts eren inestables. El canvi de 16 MHz a 20 MHz va solucionar aquest problema
  • No es pot tenir un llum d’estat DMX perquè la trucada d’interrupció havia de ser molt ràpida
  • La potència de corrent continu ha de ser extremadament estable; qualsevol ondulació farà que el senyal DMX es faci molt sorollós

El disseny TRIAC va venir de MRedmon, gràcies.

Pas 2: disseny de circuits

Disseny de circuits
Disseny de circuits

He utilitzat Fritzing 7.7 a Mac per dissenyar el meu circuit.

El MAX485 de la part superior s’utilitza per convertir el senyal DMX en alguna cosa que Arduino pugui llegir.

El 4N35 de l’esquerra s’utilitza per detectar la creu zero del senyal de corrent altern, de manera que l’Arduino sabrà a quina hora atenuar la sortida de l’ona sinusoïdal. Més informació sobre com interactuen el maquinari i el programari a la secció de programari.

Tinc la pregunta que aquest projecte funcionarà a Europa amb 230V i 50Hz? No visc a Europa ni hi viatjo sovint per poder provar aquest disseny. Hauria de funcionar, només hauríeu de modificar la línia de temps de la brillantor del codi per al diferent retard de freqüència.

Pas 3: Disseny de circuits de Kovari

Disseny de circuits de Kovari
Disseny de circuits de Kovari
Disseny de circuits de Kovari
Disseny de circuits de Kovari

Durant el procés de publicació del meu lloc web, vaig poder tenir algunes converses per correu electrònic. Un va ser amb Kovari Andrei, que va fer un disseny de circuits basat en aquest projecte i volia compartir el seu disseny. No sóc cap dissenyador de circuits, però és un projecte Eagle. Feu-me saber com us funciona si el feu servir.

Pas 4: Disseny de circuits de Giacomo

Disseny de circuits de Giacomo
Disseny de circuits de Giacomo

De tant en tant, la gent m’envia un missatge amb les emocionants adaptacions que han fet amb aquest instructiu i pensava que els hauria de compartir amb tots vosaltres.

Giacomo va modificar el circuit, de manera que no calia un transformador amb rosca central. El PCB és d’una sola cara i pot ser una solució més assequible per a aquells que no poden fer la doble cara a casa (una mica difícil).

Pas 5: programari

Programari
Programari

Sóc un enginyer de programari de professió, de manera que aquesta part és la més detallada.

Estiu: quan Arduino arrenca per primer cop, es diu mètode setup (). Allà vaig configurar algunes de les variables i ubicacions de sortida per utilitzar-les més endavant. zeroCrossInterupt () es diu / corre cada cop que la CA creua de tensió positiva a negativa. Establirà la marca zeroCross per a cada canal i iniciarà el temporitzador. El mètode loop () s’anomena contínuament per sempre. Per activar la sortida, el TRIAC només s’ha d’activar durant 10 microsegons. Si és hora d’activar TRIAC i zeroCross, la sortida s’activarà fins al final de la fase de corrent altern.

Hi havia alguns exemples en línia que he utilitzat per iniciar aquest projecte. El més important que no vaig poder trobar era tenir diverses sortides TRIAC. Altres van utilitzar la funció de retard per a la sortida PWM, però això no funcionaria en el meu cas perquè l'ATMEGA ha d'estar escoltant DMX tot el temps. Ho vaig solucionar pulsant el TRIAC a tants ms després de zero-cross. En pulsar el TRIAC més a prop de la creu zero, es produeix més ona de sinat.

A continuació, es mostra l’aspecte de l’ona sinatal de mitja 120VAC en un oscil·loscopi.

L'ISP814 està connectat a la interrupció 1. Així, quan rep el senyal que la CA transita de positiu a negatiu o viceversa, estableix el zeroCross de cada canal a true i arrenca el cronòmetre.

En el mètode loop (), comprova tots els canals si zeroCross és cert i el temps per activar-lo ha passat el pulsador TRIAC durant 10 microsegons. Això és suficient per activar el TRIAC. Un cop engegat el TRIAC, es mantindrà encès fins a zeroCross. La llum parpellejaria quan el DMX fos al voltant del 3%, de manera que hi vaig afegir el truncat per evitar-ho. Això va causar que l'Arduino fos massa lent i que el pols activés algunes vegades la següent ona sin en lloc del darrer 4% de l'ona.

També al bucle () he establert el valor PWM dels LED d'estat. Aquests LED poden utilitzar el PWM intern generat per l’Arduino perquè no ens hem de preocupar del zeroCross de CA. Un cop configurat el PWM, Arduino continuarà amb aquesta brillantor fins que no se li digui.

Com s’indica als comentaris principals, per tal d’utilitzar una interrupció DMX al pin 2 i funcionar a 20 MHz, haurà d’editar alguns dels fitxers de l’aplicació Arduino. A HardwareSerial.cpp s’ha d’eliminar un tros de codi, això ens permet escriure la nostra pròpia trucada d’interrupció. Aquest mètode ISR es troba a la part inferior del codi per gestionar la interrupció DMX. Si utilitzeu un Arduino com a programador d’ISP, assegureu-vos de tornar els canvis a HardwareSerial.cpp, en cas contrari, no es podrà accedir a l’ATMEGA328 de la placa de pa. El segon canvi és més senzill. El fitxer boards.txt s'ha de canviar a la nova velocitat de rellotge de 20 MHz.

brillantor [ch] = mapa (DmxRxField [ch], 0, 265, 8000, 0);

La brillantor s’assigna a 8000 perquè és la quantitat de microsegons d’ona sinusoïdal de 1/2 a a 60 Hz. Per tant, amb una brillantor total de 256 DMX, el programa deixarà la meitat de l’ona sinusoïdal de CA activada durant 8000 us. Vaig arribar a 8000 mitjançant endevinalles. Fer les matemàtiques de 1000000us / 60hz / 2 = 8333 de manera que podria ser un número millor, però tenir el 333us addicionals sobre el cap permet obrir el TRIAC i qualsevol fluctuació del programa és probablement una bona idea.

A Arduino 1.5.3 van moure la ubicació del fitxer HardwareSerial.cpp. Ara és /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino/HardwareSerial0.cpp Haureu de comentar-ho tot si el bloc comença per la línia 39: #if definit (USART_RX_vect)

En cas contrari, acabareu amb aquest error: core / core.a (HardwareSerial0.cpp.o): a la funció `_vector_18 ':

Pas 6: Embalatge

Embalatge
Embalatge
Embalatge
Embalatge
Embalatge
Embalatge

Vaig agafar el quadre gris del projecte a Menards, a la seva secció elèctrica. Vaig utilitzar una serra alternativa per tallar els forats de l’endoll. El cas tenia una pinça en c de teatre fixada a la part superior per penjar-la. Llums d'estat per a cada entrada i sortida per ajudar a diagnosticar si hi ha algun problema. S'ha utilitzat un fabricant d'etiquetes per explicar els diferents ports del dispositiu. Els números al costat de cada endoll representen el número del canal DMX. Vaig posar la placa de circuit i el transformador amb una mica de cola calenta. Els LED s’enganxen al seu lloc amb els suports de leds.

Recomanat: