Satura rādītājs:

Sāciet savu Ziemassvētku gaismas šovu ar pogu: 5 soļi
Sāciet savu Ziemassvētku gaismas šovu ar pogu: 5 soļi

Video: Sāciet savu Ziemassvētku gaismas šovu ar pogu: 5 soļi

Video: Sāciet savu Ziemassvētku gaismas šovu ar pogu: 5 soļi
Video: Меню на Новый Год 2024🎄 🎄 🎄 САМЫЕ ВКУСНЫЕ, НЕ ДОРОГИЕ и КРАСИВЫЕ БЛЮДА! 1000 ИДЕЙ 2024, Novembris
Anonim
Sāciet Ziemassvētku gaismas šovu ar pogu
Sāciet Ziemassvētku gaismas šovu ar pogu

Vadot Ziemassvētku gaismas šovu, kas sinhronizēts ar mūziku, iespējams, vēlēsities sākt to, nospiežot pogu. Šī apmācība ir piemērojama tikai izrādei, kuru kontrolē, izmantojot Falcon Pi Player (FPP), kas darbojas ar Raspberry Pi. Ja jūs izmantojat FPP, jūs, iespējams, izmantojat Falcon kontrolierus un izrādes secībai izmantojat xLights vai LightORama. Ja neviens no šiem vārdiem jums neko neizsaka, šī apmācība, iespējams, pagaidām ir nedaudz virs jūsu galvas, un jums vajadzētu sākt, izlasot šo wiki https://auschristmaslighting.com/wiki/ un pievienojoties Facebook grupai, piemēram, zemāk

  • xLights:
  • Vispārējās uzlabotās Ziemassvētku gaismas:
  • Falcon Pi atskaņotājs:
  • Pielikums/idejas kopīgošana:
  • "Nav īpaši saistīts ar xLights vai LOR":
  • xLights Holiday Light pārdevēji:
  • Dari pats Ziemassvētki:

1. darbība: detaļu saraksts

Jums būs nepieciešami šādi priekšmeti:

  • Poga. Es to izmantoju ar LED gredzena gaismu ap to: [Amazon]
  • Rezistors. Vēlams 200Ω vai vairāk (2 no tiem, ja izmantojat LED pogu) Standarta 1/4W vai 1/8W ir labi
  • Savienotāja vads. Izmantotais mērinstruments ir atkarīgs no tā, cik tālu poga atradīsies no jūsu Pi. Es izmantoju 18awg vadu apmēram 10 pēdas no mana Pi, un tas darbojās nevainojami
  • Veids, kā savienot vadu ar Pi GPIO tapām. Jūs varat izmantot lentes kabeli ar sadalīšanas maizes dēli vai vienkārši izmantot dažus sieviešu savienotājus, piemēram, es. Mums ir nepieciešami tikai 3 vadi - zemējums, 5 V un pogas dati. [Amazon]
  • (Pēc izvēles) Ūdensnecaurlaidīgs savienotājs katrā galā ērtai apkopei. Es izmantoju 3 kontaktu jūras līmeņa savienotājus: [Amazon]
  • (Neobligāti) Termiski saraušanās muca savienotāji [Amazon]

2. darbība: elektroinstalācijas shēma

Elektroinstalācijas shēma
Elektroinstalācijas shēma
Elektroinstalācijas shēma
Elektroinstalācijas shēma
Elektroinstalācijas shēma
Elektroinstalācijas shēma
Elektroinstalācijas shēma
Elektroinstalācijas shēma

Attēlos redzama savienojuma shēma pogai bez iekļauta gaismas diodes un pogai ar gaismas diodi. Elektroinstalācijas shēmas iestatīšanas veids ļauj jums nospiest pogu un gaismu (nepārtraukti ieslēgts) tikai ar 3 vadiem.

GPIO tapai izvēlieties jebkuru no GPIO tapām uz pi. Izmantojiet arī +5V un Gnd tapas. Jūs, iespējams, varētu izvairīties, izmantojot 3.3V tapu, taču sprieguma kritums vairākās vadu pēdās var padarīt signālu neuzticamu vai nepietiekamu, lai iedegtos gaismas diode.

PIEZĪME: 3 kontaktu savienotājs neietilpst caurumā, kas jāizurbj pogai ar LED gredzena gaismu. Tāpēc pievienojiet savienotāju pēc pogas ievietošanas priekšējā plāksnē.

3. darbība: Falcon Pi Player pamata iestatīšana

PIEZĪME - FPP tiek pastāvīgi atjaunināts, un ir pilnīgi iespējams, ka viņi uzlabos savu skriptu atbalstu vai iekļaus "spiedpogu, lai sāktu" kā noklusējuma funkciju, kas prasa mazāk programmēšanas.

Es sekoju iepriekšminētajam videoklipam, lai sākotnēji visu iestatītu.

Man šķiet, ka videoklipi ir garlaicīgi un lēni, tāpēc šeit ir to kopsavilkums:

  • Importējiet savu secību uz fpp, izmantojot failu pārvaldnieku
  • Izveidojiet atskaņošanas sarakstu ar secību. Turpmākajos soļos atskaņošanas saraksts tiks saukts par "playme"
  • Atveriet tukšu piezīmju grāmatiņas failu un ierakstiet šo:

    • #!/bin/sh
    • fpp -P spēle
  • Saglabājiet to savā datorā kā.sh failu
  • Dodieties uz failu pārvaldnieku FPP un augšupielādējiet savu skripta failu. Dodieties uz cilni "Skripti" un pārliecinieties, vai tā ir tur
  • Sadaļā Statuss/vadība dodieties uz notikumiem
  • Izveidojiet jaunu notikumu. Notikuma ID 1/1, notikuma nosaukums neatkarīgi no tā, efektu secība NAV, notikuma skripts
  • Atveriet sadaļu Ievades/izvades iestatīšana un noklikšķiniet uz GPIO aktivizētāji
  • Pārslēdziet tapu, kurai ir pievienota poga. Ja, nospiežot pogu, tas samazināsies, tad ievietojiet notikumu opcijā Falling (Falling), ja tas ir aktīvs un augsts, tad ievietojiet notikumu Rising.
  • Noklikšķiniet uz pogas Pārstartēt ar brīdinājumu, kas parādās pēc visu izmaiņu veikšanas

Kad tas viss ir izdarīts, jums vajadzētu būt iespējai nospiest pogu, lai sāktu savu izrādi. Woohoo!

Tomēr šai metodei ir daži ierobežojumi. Ja nospiežat pogu vēlreiz, kamēr tiek atskaņots atskaņošanas saraksts, tas vai nu 1) neko nedarīs, vai 2) avarēs FPP un atteiksies neko darīt ar jūsu pogu, līdz to atsāksit. Tātad, ja jūs vienkārši izmantojat pogu, lai dramatiski atskaņotu savu izrādi pēc komandas, iepriekš minētā metode būs viss, kas jums nepieciešams.

Ja jums ir nepieciešams kaut kas vairāk, pārejiet pie nākamās darbības

4. solis: spēcīgāks skripts

Zemāk ir skripts, pie kura es beidzot nonācu. Jūs varat apskatīt skriptu vietnē Github: [Gist. Github]

  • Ja kāds “nakts” stundās nospiež pogu, tas atskaņo Tiger Rag (mana dziesma1) un pēc tam pāriet uz gaidīšanas režīmu, kas darbojas bezgalīgi.
  • Ja poga tiek nospiesta, kamēr spēlē Tiger Rag, tā sāk manu otro dziesmu Hallelujah, un pēc tam uz nenoteiktu laiku pāriet gaidstāves secībā.
  • Bet, ja kāds nospiež pogu dienas laikā vai ļoti vēlu naktī, tas vienu reizi atskaņos Tīģera lupatu un pēc tam izslēgs visas gaismas.

Tas ļauj pogai darboties jebkurā diennakts laikā, bet gaismām nav jābūt ieslēgtām visu laiku. Tas arī ļauj atskaņot vairākas dziesmas no vienas pogas, nosakot, kura dziesma pašlaik tiek atskaņota, beidzot šo dziesmu un atskaņojot "nākamo" dziesmu.

Vairāk resursu skriptu rakstīšanai FPP varat atrast šeit: https://github.com/FalconChristmas/fpp-scriptsSarežģītākas loģikas gadījumā vienkārši google “bash script _”, kur pasvītrojums ir tas, ko jūs mēģināt darīt. Jūs varat pārbaudīt savus skriptus, izmantojot FPP Shell (lietotājvārds fpp parole falcon) Pamata komandas ir šādas.

Pievērsiet uzmanību lielo burtu lietojumam !!

  • Capital -P atskaņošanas sarakstu atskaņos vienu reizi, mazie -p to atkārtos.
  • fpp -v 66 Iestatiet skaļumu uz 66%
  • fpp -c stop Nekavējoties pārtrauciet šovu
  • fpp -C stop Tas, iespējams, tiks demonstrēts graciozi
  • fpp -p thisPlaylistName Atkārtoti atskaņo šoPlaylistName (tātad ievaddziesma tiek atskaņota vienu reizi, tad galvenās lietas tiks atkārtotas uz nenoteiktu laiku.
  • fpp -P thisPlaylistName Atskaņo šoPlaylistName vienreiz
  • eventScript "$ {MEDIADIR}/scripts/$ {thisScriptVariable}" Izpilda skriptu. Kreisajā pusē tas darbojas, ja jūsu skripta nosaukums ir saglabāts mainīgā kaut kur iepriekš, piemēram, šisScriptVariable =”PlayTheSong.sh”

ButtonSuperScript.sh

#!/bin/sh
###########################################################
#Lai palaistu, ja tiek nospiesta poga.
#Katrai dziesmai vajadzētu būt diviem atskaņošanas sarakstiem - vienam ar
# tikai dziesma kā “Pirmā atskaņošana” un nekas galvenais,
# un vēl viens ar dziesmu kā pirmo atskaņojumu un gaidīšanas režīmu
# secība kā "Galvenā" secība. (Vismaz, ja vēlaties
# darīt to pašu, ko es daru)
#
#Piemēram, ja jūsu dziesma ir Tīģera lupata, jums tā vajadzētu būt
# atskaņošanas saraksti "TigerRag", "TigerRagStandby" un "Standby"
#
###########################################################
# Atskaņošanas saraksti, kas jāizpilda, ja tas ir no 6 līdz 11
NightSong1 = "TigerRagStandby"
NightSong2 = "HallelujahStby"
NightStendby = "Gaidstāve"
# Atskaņošanas saraksti, kas jāizpilda dienas laikā vai pēc 11
DaySong1 = "TigerRag"
DaySong2 = "Aleluja"
DayStandby = "Gaidīšanas režīms"
#Ieslēgšanas un izslēgšanas laiki 24 stundu laikā. Ja vēlaties minūtes, veiksmi
OnHour = 17
OffHour = 23
###########################################################
# Skripta iekšas. #
###########################################################
# Iegūstiet mūsu pašreizējo statusu (IDLE = 0, SPĒLĒŠANA = 1, apstāšanās graciozi = 2)
STATUSS = $ (fpp -s | cut -d ',' -f2)
#Iegūstiet atskaņošanas sarakstu un sagrieziet līdz 7 burtiem
PLAYLIST = $ (fpp -s | cut -d ',' -f4 | cut -c1-7)
#Tas būs “abi”, ja tiek atskaņota dziesma, un “secība”, ja tā ir gaidīšanas režīmā
#izmanto, lai noteiktu, vai darbojas gaidstāves secība
STANDBYSTRING = $ (fpp -s | cut -d ',' -f5)
#Pirmie 7 atskaņošanas sarakstu nosaukumu burti salīdzinājumam
#Tikai 7 burti, lai "Song1Stendby" un "Song1" būtu identiski
#Labi, patiesībā tam vajadzētu būt pirmajiem x burtiem un x jābūt īsākajam dziesmas nosaukumam
Gaidīšanas atskaņošanas saraksts = $ (echo $ NightStandby | cut -c1-7)
Song1Playlist = $ (echo $ NightSong1 | cut -c1-7)
Song2Playlist = $ (echo $ NightSong2 | cut -c1-7)
STARTITEM = ""
#Iegūstiet pašreizējo stundu militārajā laikā
CurrentHour = $ (datums +"%H")
#Izdrukājiet dažu lietu statusu - "atbalss" lielākajā daļā valodu ir kā "drukāt"
#Noderīga testēšanai, ja dažādas lietas ir pareizi apgrieztas vai aprēķinātas
echo CurrentHour ir $ CurrentHour
echo Running atskaņošanas saraksts ir: $ PLAYLIST
echo Song2Playlist ir: $ Song2Playlist
echo Statuss ir: $ STATUS
#Naktī iestatiet skaļumu līdz 80%, citādi - 100%
#Lai es guļu, tas nebūtu tik skaļš
#if [$ CurrentHour -lt $ OffHour -a $ CurrentHour -ge 11]; tad
# fpp -v 100
#citādi
# fpp -v 80
#fi
# Pārbaudiet, vai mums ir kaut kas jēgpilns
ja [-z "$ {STATUS}"]; tad
atbalss "Kļūda ar statusa vērtību"> & 2
izeja 1
fi
# Rīkojieties atbilstoši pašreizējam statusam
lieta $ {STATUS} in
# IDLE
0)
#Naktī - atskaņojiet dziesmu 1 gaidīšanas režīmā
ja [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; tad
atbalss Spēlē NightSong1
fpp -c pietura
fpp -p "$ {NightSong1}" $ {STARTITEM}
#Dienas laiks vai patiešām vēlu - vienu reizi atskaņojiet 1. dziesmu un pēc tam izslēdziet gaismu
citādi
echo Playing DaySong1
fpp -c pietura
fpp -P "$ {DaySong1}" $ {STARTITEM}
fi
;;
# IZSLĒGŠANA SPĒLĒŠANA vai PĀRTRAUKŠANA (graciozi notiek, ja tiek nospiesta poga, kad beidzas ieplānotais atskaņošanas saraksts)
1 | 2)
#Gaidstāve darbojas - tas darbojas, jo gaidīšanas režīms ir mana vienīgā secība, kas nav saistīta ar multividi
ja ["$ STANDBYSTRING" == "secība"]; tad
#Naktī - atskaņojiet dziesmu 1 gaidīšanas režīmā
ja [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; tad
echo Spēlē NightSong1 nakts laikam
fpp -c pietura
fpp -p "$ {NightSong1}"
#Dienas laiks vai patiešām vēlu - vienu reizi spēlējiet tīģeru lupatu un pēc tam izslēdziet gaismu
citādi
echo PlayingDaySong1 no atskaņošanas
fpp -c pietura
fpp -P "$ {DaySong1}"
fi
#Lai atbalstītu vairāk dziesmu, kopējiet šo sadaļu un pēdējā sadaļā mainiet "Song2Playlist" uz dziesmas#atskaņošanas sarakstu
#Dziesma 1 darbojas
elif ["$ PLAYLIST" == "$ Song1Playlist"]; tad
#Naktī - spēlē Hallelujah gaidīšanas režīmā
ja [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; tad
echo Playing Hallelujah Gaidīšanas režīms no Tiger Rag darbojas
fpp -c pietura
fpp -p "$ {NightSong2}"
#Dienas laiks vai patiešām vēlu - vienu reizi atskaņojiet dziesmu2, pēc tam izslēdziet gaismu
citādi
atbalss Spēlē Hallelujah no Tiger Rag
fpp -c pietura
fpp -P "$ {DaySong2}"
fi
#PĒDĒJĀ DZIESMA SKRĪDAS - SPĒLĒT Gaidīšanas režīmā
elif ["$ PLAYLIST" == "$ Song2Playlist"]; tad
#Nakts laiks - atskaņojiet gaidīšanas režīmu
ja [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; tad
atbalss Gaidīšanas režīma atskaņošana atkārtojot
fpp -c pietura
fpp -p "$ {NightStandby}"
#Dienas laiks vai patiešām vēlu - vienreiz atskaņojiet gaidīšanas režīmu
citādi
echo Vienreiz atskaņot gaidstāves režīmu
fpp -c pietura
fpp -P "$ {DayStandby}"
fi
citādi
echo Kādu iemeslu dēļ tika izpildīts pēdējais gadījums.
fpp -c pietura
fpp -P "$ {DaySong1}"
fi
;;
esac

skatīt rawButtonSuperScript.sh, kuru mitina GitHub ar ❤

5. solis: (pēc izvēles) pogas priekšpuse

Man ir pieeja lāzera griezējam Klemsonā caur Makerspace, tāpēc es ātri ieskicēju dizainu, lai sagrieztu+kodinātu. Pa vidu manai pogai ir caurums, vārdi saka "Push Me" ar Ziemassvētku fontu, un sniegpārsliņa ap pogu. Es smidzināju kādu koku baltu un pēc tam pārklāju ar maskēšanas lenti (lai lāzera griezējs neapdegtu detaļas, kuras es nevēlos kodināt). Manis izmantotais fails ir pievienots.

Ieteicams: