Sadržaj:
- Korak 1: Lista dijelova
- Korak 2: Shema ožičenja
- Korak 3: Osnovno podešavanje Falcon Pi Player -a
- Korak 4: Robusnija skripta
- Korak 5: (Opcionalno) Prednja ploča za dugme
Video: Započnite božićnu svjetlosnu emisiju s gumbom: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Prilikom izvođenja božićnog light showa sinhroniziranog s muzikom, možda ćete htjeti započeti emisiju pritiskom na dugme. Ovaj vodič je primjenjiv samo za emisiju koja se kontrolira putem Falcon Pi Playera (FPP) koji se izvodi na Raspberry Pi. Ako koristite FPP, onda vjerojatno koristite kontrolere Falcon i koristite xLights ili LightORama za sekvenciranje svoje emisije. Ako vam nijedna od ovih riječi ne znači ništa, ovaj vodič vam je zasad vjerojatno malo iznad glave i trebali biste započeti čitanjem ove wiki https://auschristmaslighting.com/wiki/ i pridruživanjem Facebook grupi kao ispod
- xLights:
- Opća napredna božićna svjetla:
- Falcon Pi Player:
- Dijeljenje ideja o kućištu/rekvizitima:
- "Nije posebno vezano za xLights ili LOR":
- xLights Holiday Light dobavljači:
- Uradi sam Božić:
Korak 1: Lista dijelova
Trebat će vam sljedeće stavke:
- Dugme. Koristio sam ovaj sa LED prstenom oko sebe: [Amazon]
- Otpornik. Po mogućnosti 200Ω ili više (2 od ovih ako koristite LED dugme) Standardni 1/4 W ili 1/8 W su u redu
- Priključna žica. Mjerač koji trebate koristiti ovisi o tome koliko će dugme biti udaljeno od vašeg Pi. Koristio sam žicu od 18 awg oko 10 stopa od svog Pi -a i radila je besprijekorno
- Način povezivanja žice na Pi -jeve GPIO pinove. Možete upotrijebiti vrpčani kabel s matičnom pločom ili jednostavno neke ženske konektore poput mene. Potrebne su nam samo 3 žice - uzemljenje, 5V i podaci za dugme. [Amazon]
- (Opcionalno) Vodootporni konektor sa svakog kraja za jednostavno održavanje. Koristim 3-pinske pomorske priključke: [Amazon]
- (Opcionalno) Termoskupljajuće spojnice za zadnjicu [Amazon]
Korak 2: Shema ožičenja
Slike prikazuju dijagram ožičenja za dugme bez uključene LED diode i dugme sa LED diodom. Način na koji postavljam dijagram ožičenja omogućuje vam pokretanje dugmeta i svjetla (stalno uključeno) sa samo 3 žice.
Za GPIO pin, odaberite bilo koji od GPIO pinova na pi. Koristite i pinove +5V i Gnd. Vjerojatno biste se mogli izvući upotrebom pina od 3,3 V, ali pad napona na nekoliko stopa žice mogao bi učiniti signal nepouzdanim ili neće biti dovoljan za paljenje LED diode.
NAPOMENA: 3-pinski konektor neće proći kroz otvor koji morate izbušiti za dugme sa LED prstenastom lampicom. Zato priključite konektor nakon što ste dugme stavili na prednju ploču.
Korak 3: Osnovno podešavanje Falcon Pi Player -a
NAPOMENA - FPP se stalno ažurira i potpuno je moguće da će poboljšati svoju podršku za skriptiranje ili da će uključiti "pritisni dugme za početak" kao zadanu funkciju koja zahtijeva manje programiranja.
Pratio sam gornji video za početak da sve postavim.
Videozapisi su mi dosadni i spori, pa evo njihovog sažetka:
- Uvezite svoj slijed u fpp pomoću upravitelja datoteka
- Napravite listu za reprodukciju sa redosledom u njoj. Za sljedeće korake lista za reprodukciju će se zvati "playme"
-
Otvorite praznu datoteku bilježnice i upišite sljedeće:
- #!/bin/sh
- fpp -P playme
- Sačuvajte je kao.sh datoteku na računaru
- Idite u upravitelj datoteka u FPP -u i učitajte datoteku skripte. Idite na karticu "Skripte" i provjerite je li tu
- Pod Status/kontrola idite na Događaji
- Kreirajte novi događaj. ID događaja 1/1, naziv događaja bez obzira na to, Sekvenca efekata NEMA, Skripta događaja
- Idite pod Postavke ulaza/izlaza i kliknite GPIO okidači
- Uključite iglu na koju je vaše dugme pričvršćeno. Ako će pasti nisko kada pritisnete dugme, stavite događaj na opciju pada, ako je aktivno visoko, stavite događaj u uspon.
- Kliknite gumb Ponovo pokreni upozorenje koje će se pojaviti nakon što unesete sve promjene
Nakon što sve ovo učinite, trebali biste moći pritisnuti dugme za početak vaše emisije. Woohoo!
Međutim, ova metoda ima neka ograničenja. Ako ponovo pritisnete dugme dok je playlist u tijeku, on ili 1) neće učiniti ništa ili 2) će srušiti FPP i odbiti učiniti bilo šta sa vašim gumbom dok ga ponovo ne pokrenete. Dakle, ako samo koristite dugme kao dramatičan način izvođenja emisije po komandi, gornja metoda će biti sve što vam treba.
Ako vam treba nešto više, prijeđite na sljedeći korak
Korak 4: Robusnija skripta
Ispod je scenarij do kojeg sam na kraju stigao. Skriptu na Github -u možete pogledati ovdje: [Gist. Github]
- Ako neko pritisne dugme tokom „noćnih“sati, sviraće Tiger Rag (moja pesma1), a zatim preći u sekvencu pripravnosti koja se beskonačno ponavlja.
- Ako pritisnete dugme dok svira Tiger Rag, tada počinje moja druga pjesma, Hallelujah, a zatim će se unedogled prebaciti u sekvencu pripravnosti.
- Ali ako neko pritisne dugme danju ili vrlo kasno noću, jednom će svirati Tiger Rag, a zatim će ugasiti sva svjetla.
Ovo omogućava da dugme radi u bilo koje doba dana, ali svjetla ne moraju biti stalno uključena. Takođe omogućava reprodukciju više pesama sa jednog dugmeta tako što identifikuje pesmu koja se trenutno reprodukuje, završava tu pesmu i svira „sledeću“pesmu.
Više resursa za skriptiranje u FPP-u možete pronaći ovdje: https://github.com/FalconChristmas/fpp-scriptsZa složeniju logiku samo google „bash script _“gdje je podcrtavanje ono što pokušavate učiniti. Svoje skripte možete testirati pomoću FPP ljuske (korisničko ime fpp lozinka falcon) Osnovne naredbe su sljedeće.
Obratite pažnju na velika slova !!
- Veliko -P će jednom reproducirati listu za reprodukciju, mala slova -p će je ponoviti.
- fpp -v 66 Postavite jačinu zvuka na 66%
- fpp -c stop Odmah zaustavite emisiju
- fpp -C stop Ovo bi moglo biti stop show graciozno
- fpp -p thisPlaylistName Reproducira thisPlaylistName pri ponavljanju (tako da se uvodna pjesma reproducira jednom, a zatim će se glavne stvari ponavljati neograničeno dugo.
- fpp -P thisPlaylistName Reprodukuje ovajPlaylistName jednom
- eventScript "$ {MEDIADIR}/scripts/$ {thisScriptVariable}" Pokreće skriptu. U slučaju s lijeve strane to funkcionira ako imate naziv skripte spremljen u varijablu negdje gore, poput oveScriptVariable =”PlayTheSong.sh”
ButtonSuperScript.sh
#!/bin/sh |
########################################################### |
#Da bi se pokrenulo ako je dugme pritisnuto. |
#Za svaku pjesmu trebate imati dvije liste za reprodukciju - jednu sa |
# samo pjesma kao "Prva predstava" i ništa uglavnom, |
# i još jedan s pjesmom kao prvom svirkom i vašim pripravnim stanjem |
# niz kao "Main" niz. (Bar ako želite |
# da uradim tačno ono što radim) |
# |
#Na primjer, ako je vaša pjesma Tiger Rag, trebali ste |
# liste za reprodukciju "TigerRag", "TigerRagStandby" i "Standby" |
# |
########################################################### |
# Liste za reprodukciju koje se pokreću ako je između 6 i 11 |
NightSong1 = "TigerRagStandby" |
NightSong2 = "AlelujaStandby" |
NightStandby = "Stanje pripravnosti" |
# Liste za reprodukciju tokom dana ili nakon 11 |
DaySong1 = "TigerRag" |
DaySong2 = "Aleluja" |
DayStandby = "Stanje pripravnosti" |
#Vremena uključivanja i isključivanja tokom 24 sata. Ako želite minute, sretno |
Na sat = 17 |
OffHour = 23 |
########################################################### |
# Utroba scenarija. # |
########################################################### |
# Saznajte naš trenutni status (IDLE = 0, PLAYING = 1, Gracefully stop = 2) |
STATUS = $ (fpp -s | cut -d ',' -f2) |
#Nabavite aktivnu playlistu i smanjite je na 7 slova |
PLAYLIST = $ (fpp -s | cut -d ',' -f4 | cut -c1-7) |
#Ovo će biti "oboje" ako reproducira pjesmu, i "slijed" ako je u stanju pripravnosti |
#koristi za određivanje da li je redoslijed stanja pripravnosti pokrenut |
STANDBYSTRING = $ (fpp -s | cut -d ',' -f5) |
#Prvih 7 slova imena plejlisti za poređenje |
#Samo 7 slova tako da su "Song1Standby" i "Song1" identični |
#U redu, pa zapravo bi trebala biti prva x slova, a x bi trebalo biti najkraći naziv pjesme koji imate |
StandbyPlaylist = $ (echo $ NightStandby | cut -c1-7) |
Song1Playlist = $ (echo $ NightSong1 | cut -c1-7) |
Song2Playlist = $ (echo $ NightSong2 | cut -c1-7) |
STARTITEM = "" |
#Nabavite trenutni sat u vojnom vremenu |
Trenutni sat = $ (datum +"%H") |
#Odštampajte status nekih stvari - "echo" je kao "print" na većini jezika |
#Korisno za testiranje ako su različite stvari podrezane ili pravilno izračunate |
echo CurrentHour je $ CurrentHour |
echo Popis za reprodukciju je: $ PLAYLIST |
echo Song2Playlist je: $ Song2Playlist |
echo Status je: $ STATUS |
#Podesite jačinu zvuka na 80% noću, 100% inače |
#Pa ako spavam, nije tako glasno |
#if [$ CurrentHour -lt $ OffHour -a $ CurrentHour -ge 11]; zatim |
# fpp -v 100 |
#else |
# fpp -v 80 |
#fi |
# Provjerite imamo li nešto smisleno |
if [-z "$ {STATUS}"]; tada |
echo "Greška sa vrijednošću statusa"> & 2 |
izlaz 1 |
fi |
# Postupajte prema trenutnom statusu |
kućište $ {STATUS} u |
# IDLE |
0) |
#Night time - reprodukujte Song1 u stanju pripravnosti |
if [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; tada |
echo Sviranje NightSong1 |
fpp -c stop |
fpp -p "$ {NightSong1}" $ {STARTITEM} |
#Dan ili jako kasno - pustite pjesmu 1 jednom pa isključite svjetlo |
else |
echo Sviranje DaySong1 |
fpp -c stop |
fpp -P "$ {DaySong1}" $ {STARTITEM} |
fi |
;; |
# IGRAJ SE ILI ZAUSTAVLJAJTE LICA |
1 | 2) |
#Standby je pokrenut - ovo radi jer je stanje pripravnosti moj jedini niz koji nije medij |
if ["$ STANDBYSTRING" == "sequence"]; tada |
#Night time - reprodukujte Song1 u stanju pripravnosti |
if [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; tada |
echo Reprodukcija NightSong1 noću |
fpp -c stop |
fpp -p "$ {NightSong1}" |
#Dan ili jako kasno - jednom se igrajte tigraste krpe, a zatim isključite svjetla |
else |
echo PlayingDaySong1 iz sviranja |
fpp -c stop |
fpp -P "$ {DaySong1}" |
fi |
#Da biste podržali više pjesama, kopirajte ovaj odjeljak i promijenite "Song2Playlist" u zadnjem odjeljku u Song#Playlist |
#Pjesma1 je pokrenuta |
elif ["$ PLAYLIST" == "$ Song1Playlist"]; zatim |
#Night time - igrajte Hallelujah u stanju pripravnosti |
if [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; tada |
echo Igranje HallelujahStandby iz Tiger Rag -a je pokrenuto |
fpp -c stop |
fpp -p "$ {NightSong2}" |
#Dan ili stvarno kasno - pustite Song2 jednom pa isključite svjetla |
else |
echo Trčanje Aleluja jednom iz Tiger Rag -a je pokrenuto |
fpp -c stop |
fpp -P "$ {DaySong2}" |
fi |
#LAST PESMA TRČI - IGRAJTE SE U STANJU |
elif ["$ PLAYLIST" == "$ Song2Playlist"]; zatim |
#Night time - reprodukujte stanje pripravnosti u toku |
ako [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; tada |
echo Reprodukcija u stanju pripravnosti pri ponavljanju |
fpp -c stop |
fpp -p "$ {NightStandby}" |
#Dan ili stvarno kasno - jednom pustite stanje pripravnosti |
else |
echo Reprodukcija u stanju pripravnosti jednom |
fpp -c stop |
fpp -P "$ {DayStandby}" |
fi |
else |
echo Iz nekog razloga izvršeno je posljednje drugo slovo. |
fpp -c stop |
fpp -P "$ {DaySong1}" |
fi |
;; |
esac |
pogledajte rawButtonSuperScript.sh hostirano sa ❤ od strane GitHub -a
Korak 5: (Opcionalno) Prednja ploča za dugme
Imam pristup laserskom rezaču u Clemsonu kroz Makerspace, pa sam brzo skicirao dizajn za rezanje+graviranje. U sredini je rupa za moje dugme, riječi govore "Push Me" u božićnom fontu, a pahuljica oko dugmeta. Poprskao sam malo drveta bijelom bojom, a zatim ga prekrio ljepljivom trakom (tako da laserski rezač ne prži dijelove koje ne želim urezati). Datoteka koju sam koristio je u prilogu.
Preporučuje se:
Uradi sam alarmni sistem za svjetlosnu barijeru sa PLC -om industrijskog razreda (Controllino): 5 koraka
Uradi sam alarmni sistem svjetlosne barijere s PLC -om industrijskog stupnja (Controllino): U ovom projektu pokazat ću vam kako sam kombinirao PLC (Controllino) sa svjetlosnom barijerom, sirenom, prekidačem od trske i stroboskopskim svjetlom kako bih stvorio zaista robustan radni alarmni/sigurnosni sistem koji će lako uplašiti uljeze. L
Podijelite i produžite svjetlosnu traku Philips Hue: 8 koraka (sa slikama)
Podijelite i proširite Philips Hue Lightstrip: Dodao sam još " pametnog doma " unosite spravice u moju kuću, a jedna od stvari s kojima sam se igrao je Philips Hue Lightstrip. To je traka LED svjetla koja se može kontrolirati iz aplikacije ili od pametnog pomoćnika poput Alexa ili
Napravite grubu i spremnu radio emisiju: 7 koraka
Napravite grubu i spremnu radio emisiju: Ova jednostavna radionica namijenjena je roditeljima kod kuće s jednim ili više djece. Koristi lako dostupne materijale i opremu. Koristeći obični potrošački bluetooth zvučnik i mobilni telefon, on istražuje radio prijenos radeći zajedno sa
Kako ugostiti emisiju s instrukcijama Show and Tell: 8 koraka
Kako ugostiti emisiju s instrukcijama i reći: Ovo je vodič za pokretanje emisije s instrukcijama i govori. Zasniva se prvenstveno na događaju održanom u Instructables -u u petak, 9. marta 2007. godine, ali i na prethodnoj inkarnaciji ovog događaja, svjetlosnim salonima Squid Labs. Cilj izložbe i Tel
Napravite emisiju laserskih projektora bez lasera: 3 koraka
Napravite emisiju laserskih projektora bez lasera: Dodavanjem jednostavnih vizualizacija u winamp možete stvoriti nevjerojatne svjetlosne efekte koji zadivljuju oko. Potrebni predmeti: Laptop (po mogućnosti) ili Desktop mašina za dim/maglu