Përmbajtje:

4 Ch DMX Dimmer: 6 hapa
4 Ch DMX Dimmer: 6 hapa

Video: 4 Ch DMX Dimmer: 6 hapa

Video: 4 Ch DMX Dimmer: 6 hapa
Video: pknight dimmer pack 4ch tutorial 2024, Nëntor
Anonim
4 Ch DMX Dimmer
4 Ch DMX Dimmer

Koncepti është për të hartuar dhe krijuar një zbehës të lëvizshëm.

Kërkesat:

  • DMX512 E kontrollueshme
  • 4 Kanalet
  • Portativ
  • Lehtë për t'u përdorur

Unë ia propozova këtë ide profesorit tim në WSU sepse doja të kombinoja pasionet e mia për teatrin dhe kompjuterët. Ky projekt veproi pak si projekti im i lartë në departamentin e teatrit. Nëse keni ndonjë koment ose pyetje, do të doja të ndihmoja.

Zhvillimi i ardhshëm mund të përfshijë më shumë kanale, lidhës DMX me 5 kunja, kalim DMX, 8 ndërprerës për të ndryshuar kanalin, bordin e qarkut të shtypur.

Unë e kam migruar këtë projekt nga https://danfredell.com/df/Projects/Entries/2013/1/6_DMX_Dimmer.html sepse mendoj se është akoma popullor. Gjithashtu kam humbur skedarin tim të farës iWeb kështu që nuk mund ta përditësoj më lehtë. Do të ishte mirë t'i lejoni njerëzit të ndajnë pyetjet e tyre mbi projektin me njëri -tjetrin.

Hapi 1: Mbledhja e pajisjeve

Mbledhja e Harduerit
Mbledhja e Harduerit

Pajisjet e përdorura: Pjesa më e madhe është porositur nga Tayda Electronics. Më pëlqejnë më shumë se DigiKey për shkak të përzgjedhjes më të vogël dhe më të lehtë për t’u kuptuar.

  1. ATMEGA328, Mikrokontrollues
  2. MOC3020, Optocoupler TRIAC. Jo ZeroCross.
  3. MAX458 ose SN75176BP, Marrës DMX
  4. ISP814, Optokoupler AC
  5. 7805, Rregullatori 5v
  6. BTA24-600, 600V 25A TRIAC
  7. Kristal 20MHz
  8. Furnizimi me energji 9V

Disa pengesa dhe mësime të nxjerra gjatë rrugës

  • Nëse nuk jeni ekspert i regjistrimit, qëndroni me një ATMEGA328P
  • Optocouplers gabuar. Ju nuk doni Zero Cross
  • Kanalet e larta ishin të paqëndrueshme. Kalimi nga 16MHz në 20MHz e zgjidh këtë çështje
  • Nuk mund të ketë një dritë statusi DMX sepse thirrja e ndërprerjes duhej të ishte shumë e shpejtë
  • Fuqia DC duhet të jetë jashtëzakonisht e qëndrueshme, çdo valëzim do të bëjë që sinjali DMX të bëhet shumë i zhurmshëm

Dizajni i TRIAC erdhi nga MRedmon, faleminderit.

Hapi 2: Dizajni i qarkut

Dizajni i Qarkut
Dizajni i Qarkut

Kam përdorur Fritzing 7.7 në Mac për të hartuar qarkun tim.

MAX485 në krye përdoret për të kthyer sinjalin DMX në diçka që Arduino mund të lexojë.

4N35 në të majtë përdoret për të zbuluar kryqin zero të sinjalit AC kështu që Arduino do të dijë në cilën kohë të zbehë daljen e valës Sine. Më shumë rreth asaj se si ndërveprojnë hardueri dhe softueri në seksionin e softuerit.

Kam marrë pyetjen a do të funksionojë ky projekt në Evropë me 230V dhe 50Hz? Unë nuk jetoj në Evropë, as nuk udhëtoj atje shpesh për të qenë në gjendje të testoj këtë dizajn. Duhet të funksionojë, thjesht do të duhet të modifikoni linjën e kohës së ndriçimit të kodit për frekuencën e vonesës së ndryshme.

Hapi 3: Dizajni i Qarkut të Kovarit

Dizajni i Qarkut të Kovarit
Dizajni i Qarkut të Kovarit
Dizajni i Qarkut të Kovarit
Dizajni i Qarkut të Kovarit

Përmes procesit të krijimit të faqes sime të internetit unë kam qenë në gjendje të kem disa biseda me email. Njëri ishte me Kovari Andrei i cili bëri një dizajn qarkor bazuar në këtë projekt dhe donte të ndante modelin e tij. Unë nuk jam projektues i bordeve të qarkut, por është një projekt Eagle. Më tregoni se si funksionon për ju nëse e përdorni.

Hapi 4: Dizajni i Qarkut Giacomo

Dizajni i Qarkut Giacomo
Dizajni i Qarkut Giacomo

Herë pas here njerëzit do të më dërgojnë mesazhe me përshtatjet emocionuese që kanë bërë me këtë udhëzues dhe mendova se duhet t'i ndaj me të gjithë ju.

Giacomo modifikoi qarkun kështu që një transformator i përgjuar në qendër nuk kërkohej. PCB është një anë e vetme dhe mund të jetë një zgjidhje më e përballueshme për ata që nuk mund të bëjnë dy anë në shtëpi (pak e vështirë).

Hapi 5: Softuer

Softuer
Softuer

Unë jam një inxhinier softuerësh me profesion, kështu që kjo pjesë është më e detajuara.

Summery: Kur Arduino fillon së pari quhet metoda e konfigurimit (). Aty vendosa disa nga variablat dhe vendet e daljes që do të përdoren më vonë. zeroCrossInterupt () thirret/ vrapohet sa herë që AC kalon nga tensioni pozitiv në atë negativ. Do të vendosë flamurin zeroCross për çdo kanal dhe do të fillojë kohëmatësin. Metoda e lakut () quhet vazhdimisht përgjithmonë. Për të ndezur daljen, TRIAC duhet të aktivizohet vetëm për 10 mikrosekonda. Nëse është koha për të aktivizuar TRIAC dhe zeroCross ka ndodhur, prodhimi do të ndizet deri në fund të fazës AC.

Kishte disa shembuj në internet që kam përdorur për të filluar këtë projekt. Gjëja kryesore që nuk mund ta gjeja ishte të kisha dalje të shumta TRIAC. Të tjerët përdorën funksionin e vonesës për PWM daljen, por kjo nuk do të funksiononte në rastin tim sepse ATMEGA duhet të dëgjojë DMX gjatë gjithë kohës. Unë e zgjidha këtë duke pulsuar TRIAC në aq shumë ms pas kalimit zero. Duke pulsuar TRIAC më afër kalimit zero, del më shumë nga vala e mëkatit.

Ja se si duket vala gjysmë 120VAC e mëkatit në një oshiloskop, më sipër.

ISP814 lidhet me ndërprerjen 1. Pra, kur merr sinjal se AC kalon nga pozitive në negative ose anasjelltas, e vendos zeroCross për çdo kanal në të vërtetë dhe fillon kronometrin.

Në metodën e lakut (), kontrollon çdo kanal nëse zeroCross është e vërtetë dhe koha për t'u aktivizuar ka kaluar ajo do të pulsojë TRIAC për 10 mikrosekonda. Kjo është e mjaftueshme për të ndezur TRIAC. Pasi të jetë ndezur një TRIAC ai do të qëndrojë ndezur deri në zeroCross. Drita do të dridhej kur DMX ishte rreth 3% kështu që shtova cungimin atje për ta parandaluar atë. Kjo u shkaktua që Arduino të ishte shumë i ngadalshëm, dhe pulsi disa herë do të shkaktonte valën tjetër të mëkatit në vend të 4% të fundit të valës.

Gjithashtu në lak () kam vendosur vlerën PWM të LED -ve të statusit. Këto LED mund të përdorin PWM të brendshme të krijuar nga Arduino sepse nuk kemi pse të shqetësohemi për zeroCross të AC. Sapo të vendoset PWM, Arduino do të vazhdojë me atë shkëlqim derisa të tregohet e mençur.

Siç u tha në komentet kryesore për të përdorur një ndërprerje DMX në pin 2 dhe për të punuar në 20MHz ju do të duhet të redaktoni disa nga skedarët e aplikacionit Arduino. Në HardwareSerial.cpp një pjesë e kodit duhet të fshihet, kjo na lejon të shkruajmë thirrjen tonë ndërprerëse. Kjo metodë ISR është në fund të kodit për të trajtuar ndërprerjen DMX. Nëse do të përdorni një Arduino si programues ISP, sigurohuni që t'i ktheni ndryshimet tuaja në HardwareSerial.cpp përndryshe ATMEGA328 në tabelën e bukës do të jetë i paarritshëm. Ndryshimi i dytë është më i lehtë. Skedari boards.txt duhet të ndryshohet në shpejtësinë e re të orës 20MHz.

shkëlqimi [ch] = harta (DmxRxField [ch], 0, 265, 8000, 0);

Shkëlqimi përputhet me 8000 sepse kjo është sasia e mikrosekondave prej 1/2 e një valë sinus AC në 60Hz. Pra, me shkëlqim të plotë 256 DMX programi do të lërë 1/2 valën e sinusit AC ON për 8000us. Kam dalë me 8000 përmes supozimit dhe kontrollit. Të bësh matematikën 1000000us/60hz/2 = 8333 në mënyrë që të jetë një numër më i mirë, por të kesh 333us shtesë mbi kokë lejon që TRIAC të hapet dhe çdo shqetësim në program është ndoshta një ide e mirë.

Në Arduino 1.5.3 që ata zhvendosën vendndodhjen e skedarit HardwareSerial.cpp. Tani është /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino/HardwareSerial0.cpp Ju do të duhet të komentoni këtë tërësi nëse blloku fillon me rreshtin 39: #nëse është përcaktuar (USART_RX_vect)

Përndryshe, do të përfundoni me këtë gabim: core/core.a (HardwareSerial0.cpp.o): Në funksionin `_vector_18 ':

Hapi 6: Paketimi i tij

Paketimi Up
Paketimi Up
Paketimi Up
Paketimi Up
Paketimi Up
Paketimi Up

Mora kutinë gri të projektit në Menards në seksionin e tyre elektrik. Kam përdorur një sharrë reciproke për të prerë vrimat e prizës elektrike. Rasti mori një kapëse c teatri të bashkangjitur në majë për qëllime varjeje. Dritat e gjendjes për çdo hyrje dhe dalje për të ndihmuar në diagnostikimin nëse ka ndonjë problem. Një krijues etiketash u përdor për të shpjeguar portet e ndryshme në pajisje. Numrat pranë secilës prizë përfaqësojnë numrin e kanalit DMX. Unë vendosa tabelën e qarkut dhe transformatorin me një zam të nxehtë. LED -të janë mbërthyer në vend me mbajtëset led.

Recommended: