Taula de continguts:
- Pas 1: recopilació del maquinari
- Pas 2: disseny de circuits
- Pas 3: Disseny de circuits de Kovari
- Pas 4: Disseny de circuits de Giacomo
- Pas 5: programari
- Pas 6: Embalatge
Vídeo: Dimmer DMX de 4 canals: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:15
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
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.
- ATMEGA328, microcontrolador
- MOC3020, optoacoplador TRIAC. No ZeroCross.
- MAX458 o SN75176BP, receptor DMX
- ISP814, optoacoplador de corrent altern
- 7805, regulador 5v
- BTA24-600, 600V 25A TRIAC
- Cristall de 20 MHz
- 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
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
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
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
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
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:
Relé de 4 canals: 14 passos
Relleu de 4 canals: --de Bhawna Singh, Prerna Gupta, Maninder Bir Singh Gulshan
Commutador sense fils de 3 canals: 5 passos
Canals de commutació sense fils de 3 canals: en el meu tutorial anterior, vaig fer un commutador sense fils mitjançant ESP8266. l'article es pot llegir aquí "Com es fa un commutador WiFi mitjançant ESP8266". En aquest article, només he fet un commutador sense fils d'un canal. I en aquest article us mostraré com fer
Comandament a distància sense fils que utilitza el mòdul NRF24L01 de 2,4 Ghz amb Arduino - Nrf24l01 Receptor transmissor de 4 canals / 6 canals per quadcòpter - Helicòpter Rc - Avió Rc amb Arduino: 5 passos (amb imatges)
Comandament sense fils que utilitza un mòdul NRF24L01 de 2,4 Ghz amb Arduino | Nrf24l01 Receptor transmissor de 4 canals / 6 canals per quadcòpter | Helicòpter Rc | Avió Rc amb Arduino: per fer funcionar un cotxe Rc | Quadcopter | Drone | Avió RC | Vaixell RC, sempre necessitem un receptor i un transmissor, suposem que per RC QUADCOPTER necessitem un transmissor i un receptor de 6 canals i aquest tipus de TX i RX és massa costós, així que en farem un al nostre
Antena interior BIQUAD, feta de coure i fusta per a la recepció de canals HDTV a la banda UHF (CANALS 14-51): 7 passos
Antena interior BIQUAD, feta de coure i fusta per a la recepció de canals HDTV a la banda UHF (CANALS 14-51): Al mercat hi ha una gran varietat d’antenes per a televisió. Els més populars segons els meus criteris són: UDA-YAGIS, Dipol, Dipol amb reflectors, Patch i antenes logarítmiques. Depenent de les condicions, la distància des del transmissor a
Transceptor DMX de 4 canals: 24 passos
Transceptor DMX de 4 canals: el mòdul de plataforma DMX IO és un transceptor DMX de 4 canals. En mode de recepció, pot controlar fins a quatre canals de sortida TTL de baixa intensitat (3,3 v, per exemple, per a servos i LED petits) o de gran corrent (12 v, per exemple, llums, relés, solenoides, motor pas a pas, etc.)