Агуулгын хүснэгт:

Христийн Мэндэлсний Баярын гэрлийн шоугаа товчлуураар эхлүүлээрэй: 5 алхам
Христийн Мэндэлсний Баярын гэрлийн шоугаа товчлуураар эхлүүлээрэй: 5 алхам

Видео: Христийн Мэндэлсний Баярын гэрлийн шоугаа товчлуураар эхлүүлээрэй: 5 алхам

Видео: Христийн Мэндэлсний Баярын гэрлийн шоугаа товчлуураар эхлүүлээрэй: 5 алхам
Видео: 5 NEW LEAKS?! SONIC.EXE V2 CONFIRMED!! (Roblox Funky Friday) 2024, Долдугаар сарын
Anonim
Христийн Мэндэлсний Баярын гэрлийн шоугаа товчлуураар эхлүүлээрэй
Христийн Мэндэлсний Баярын гэрлийн шоугаа товчлуураар эхлүүлээрэй

Хөгжимтэй синхрончлогдсон Христийн Мэндэлсний Баярын гэрлийн шоу нэвтрүүлэг хийхдээ та товчлуурыг дарж шоуг эхлүүлэхийг хүсч магадгүй юм. Энэхүү заавар нь зөвхөн Raspberry Pi дээр ажилладаг Falcon Pi Player (FPP) -ээр хянагддаг шоунд зориулагдсан болно. Хэрэв та FPP ажиллуулж байгаа бол Falcon хянагч, xLights эсвэл LightORama ашиглан шоугаа дэс дараалалтай хийж байгаа байх. Хэрэв эдгээр үгсийн аль нь ч танд ямар ч утгагүй бол энэ заавар нь таны толгой дээр байгаа бололтой, та энэ викиг https://auschristmaslighting.com/wiki/ уншаад доорх шиг Facebook группт нэгдэж эхлэх хэрэгтэй.

  • xLights:
  • Ерөнхий дэвшилтэт зул гэрлүүд:
  • Falcon Pi тоглуулагч:
  • Хавсралт/санаа бодлоо хуваалцах:
  • "Ялангуяа xLights эсвэл LOR -той холбоотой биш":
  • xLights Holiday Light борлуулагчид:
  • Зул сарын баярыг өөрөө хий:

Алхам 1: эд ангиудын жагсаалт

Танд дараах зүйлс хэрэгтэй болно.

  • Товчлуур. Би үүнийг тойруулан LED цагирагтай гэрлээр ашиглаж байсан: [Amazon]
  • Эсэргүүцэл. 200Ω ба түүнээс дээш байвал (хэрэв та LED товчлуур ашиглаж байгаа бол эдгээрийн 2 нь) Стандарт 1/4W эсвэл 1/8W байвал сайн.
  • Холбогч утас. Таны ашиглах хэмжигч нь таны Pi -ээс хэр хол байхаас хамаарна. Би 18awg утсыг өөрийн Pi -ээс 10 фут орчим зайд ашигласан бөгөөд энэ нь өөгүй ажилласан
  • Pi -ийн GPIO тээглүүрт утас холбох арга. Та тууз кабель ашиглаж болно. Бидэнд зөвхөн 3 утас хэрэгтэй - Газардуулга, 5V, товчлуурын өгөгдөл. [Амазон]
  • (Нэмэлт) Усны хамгаалалттай холбогч нь засвар үйлчилгээ хийхэд хялбар байдаг. Би 3 зүү далайн зэрэглэлийн холбогч ашигладаг: [Amazon]
  • (Нэмэлт) Дулаан багасгадаг өгзөг холбогч [Amazon]

Алхам 2: Утасны диаграм

Утас диаграмм
Утас диаграмм
Утас диаграмм
Утас диаграмм
Утас диаграмм
Утас диаграмм
Утас диаграмм
Утас диаграмм

Зураг дээр LED ороогүй товчлуур, LED бүхий товчлуурын холболтын диаграммыг үзүүлэв. Утасны диаграмыг тохируулах арга нь товчлуур болон гэрлийг (тасралтгүй асаах) 3 утсаар ажиллуулах боломжийг танд олгоно.

GPIO зүү авахын тулд pi дээрх GPIO pin -ийн аль нэгийг сонгоно уу. +5V ба Gnd тээглүүрийг ашиглана уу. Та 3.3V зүү ашиглан зугтаж магадгүй, гэхдээ хэдэн футын утсан дахь хүчдэлийн уналт нь дохиог найдваргүй болгож эсвэл LED -ийг асаахад хангалтгүй байж магадгүй юм.

ТАЙЛБАР: 3-зүү холбогч нь LED цагираг гэрэлтэй товчлуурыг өрөмдөх шаардлагатай нүхээр таарахгүй. Тиймээс товчлуурыг нүүрэн талдаа тавьсны дараа холбогчийг холбоно уу.

Алхам 3: Falcon Pi тоглуулагчийн үндсэн тохиргоо

ТАЙЛБАР - FPP -ийг байнга шинэчилж байдаг бөгөөд тэд скриптийн дэмжлэгээ сайжруулах эсвэл бага програмчлал шаарддаг үндсэн функц болгон "эхлүүлэх товчийг" оруулах боломжтой байдаг.

Би бүх зүйлийг тохируулахын тулд дээрх видеог дагасан.

Надад видеонууд уйтгартай, удаан санагдаж байгаа тул түүний тоймыг энд оруулав.

  • Файлын менежер ашиглан дарааллаа fpp руу импортлоорой
  • Дараах дарааллаар нь тоглуулах жагсаалт үүсгэнэ үү. Дараагийн алхамуудын хувьд тоглуулах жагсаалтыг "playme" гэж нэрлэх болно.
  • Хоосон тэмдэглэлийн дэвтэр файлыг нээгээд дараахь зүйлийг бичнэ үү.

    • #!/бин/ш
    • fpp -P тоглуулах тоглоом
  • Үүнийг компьютер дээрээ.sh файл хэлбэрээр хадгална уу
  • FPP дахь файлын менежерт очиж скрипт файлаа байршуулна уу. "Скриптүүд" таб руу очоод тэнд байгаа эсэхийг шалгаарай
  • Статус/Хяналтын дор Үйл явдал руу очно уу
  • Шинэ үйл явдал үүсгэх. Үйл явдлын ID 1/1, Үйл явдлын нэр ямар ч байсан, Effect Sequence NONE, Event Script
  • Оролт/гаралтын тохиргоо хэсэгт очоод GPIO триггерүүд дээр дарна уу
  • Таны товчлуур хавсаргасан зүүг сэлгэнэ үү. Хэрэв та товчлуурыг дарахад энэ нь буурах юм бол үйл явдлыг Уналтын сонголт дээр тавь, хэрэв энэ нь идэвхтэй байвал Rising дээр уг үйл явдлыг оруулна уу.
  • Бүх өөрчлөлтийг хийсний дараа гарч ирэх анхааруулгыг дахин ачаалах товчийг дарна уу

Энэ бүгдийг хийсний дараа та товчлуурыг дарж шоугаа эхлүүлэх боломжтой байх ёстой. Хөөе!

Гэсэн хэдий ч энэ арга нь зарим хязгаарлалттай байдаг. Хэрэв та тоглуулах жагсаалт явж байх үед товчлуурыг дахин дарвал энэ нь 1) юу ч хийхгүй эсвэл 2) FPP -ийг эвдэж, дахин ачаалах хүртэл таны товчлуураар юу ч хийхээс татгалзах болно. Тиймээс хэрэв та товчлуурыг командын дагуу тоглох гайхалтай хэлбэрээр ашиглаж байгаа бол дээрх арга нь танд хэрэгтэй болно.

Хэрэв танд өөр зүйл хэрэгтэй бол дараагийн алхам руу үргэлжлүүлээрэй

Алхам 4: Илүү бат бөх скрипт

Эцэст нь миний хүрч ирсэн скриптийг доор харуулав. Та Github дээрх скриптийг эндээс үзэх боломжтой: [Gist. Github]

  • Хэрэв хэн нэгэн "шөнийн" цагаар товчлуур дарвал энэ нь Tiger Rag (миний дуу1) тоглож, дараа нь хязгааргүй эргэлддэг зогсолтын дараалал руу орно.
  • Хэрэв Tiger Rag тоглож байх үед товчлуур дарагдсан бол энэ нь миний хоёр дахь дуу Hallelujah -ийг эхлүүлж, дараа нь зогсолтын дараалалд тодорхойгүй хугацаагаар орно.
  • Гэхдээ хэрэв хэн нэгэн өдрийн цагаар эсвэл шөнө орой товчлуур дарвал барын өөдөс тоглож, бүх гэрлийг унтраана.

Энэ нь товчлуурыг өдрийн аль ч цагт ажиллах боломжийг олгодог боловч гэрэл үргэлж асахгүй байх ёстой. Энэ нь одоогоор ямар дуу тоглож байгааг тодорхойлж, энэ дууг дуусгаж, "дараагийн" дууг тоглуулах замаар олон товчлуурыг 1 товчлуураас тоглуулах боломжийг олгодог.

Та FPP дээр скрипт бичих нэмэлт эх үүсвэрийг эндээс олж болно: https://github.com/FalconChristmas/fpp-scripts Илүү төвөгтэй логикийн хувьд google-ийн "bash script _" гэсэн товчлолыг л хийх ёстой. Та скриптүүдээ FPP Shell ашиглан шалгаж болно (хэрэглэгчийн нэр fpp password falcon) Үндсэн командууд дараах байдалтай байна.

Том үсгээр бичихийг анхаарна уу !!

  • Capital -P нь тоглуулах жагсаалтыг нэг удаа тоглуулах болно, жижиг үсэг -p үүнийг давтах болно.
  • fpp -v 66 Дууг 66% болгож тохируулах
  • fpp -c stop Нэвтрүүлгээ шууд зогсоо
  • fpp -C stop Энэ нь аятайхан зогссон шоу байж магадгүй юм
  • fpp -p thisPlaylistName thisPlaylistName -ийг давтан тоглуулдаг (ингэснээр танилцуулга дуу нэг удаа тоглогдох бөгөөд дараа нь үндсэн зүйлс тодорхойгүй давтагдах болно.
  • fpp -P thisPlaylistName ThisPlaylistName -ийг нэг удаа тоглуулдаг
  • eventScript "$ {MEDIADIR}/scripts/$ {thisScriptVariable}" Скрипт ажиллуулдаг. Зүүн талд байгаа тохиолдолд хэрэв та скриптийнхээ нэрийг дээрх хаа нэгтээ хувьсагч дээр хадгалсан бол энэ нь ажиллах болно, жишээ нь thisScriptVariable = "PlayTheSong.sh"

ButtonSuperScript.sh

#!/бин/ш
###########################################################
#Хэрэв товчлуур дарагдсан бол ажиллуулах болно.
#Та дуу бүрт хоёр тоглуулах жагсаалттай байх ёстой - нэг нь
# зүгээр л "Анхны тоглолт" дуу бөгөөд гол нь юу ч биш,
# болон өөр дууг анхны тоглолт болон зогсолтын горимоор
# дарааллыг "Үндсэн" дарааллаар. (Хэрэв та хүсвэл ядаж
# яг хийж байгаа зүйлээ хийх)
#
#Жишээлбэл, хэрэв таны дуу Tiger Rag бол та заавал байх ёстой
# тоглуулах жагсаалт "TigerRag", "TigerRagStandby", "Standby"
#
###########################################################
# Тоглуулах жагсаалт 6-11 хооронд байвал ажиллах болно
NightSong1 = "TigerRagStandby"
NightSong2 = "HallelujahStandby"
NightStandby = "Зогсолт"
# Тоглуулах жагсаалт өдрийн цагаар эсвэл 11 -ээс хойш ажиллана
DaySong1 = "TigerRag"
DaySong2 = "Hallelujah"
DayStandby = "Зогсолт"
#24 цагийн дотор асаах, унтраах цаг. Хэрэв та хэдэн минут хүсч байвал амжилт хүсье
OnHour = 17
OffHour = 23
###########################################################
# Скриптийн мэдрэмж. #
###########################################################
# Бидний одоогийн статусыг аваарай (IDLE = 0, PLAYING = 1, сайхан зогсох = 2)
БАЙДАЛ = $ (fpp -s | хасах -d ',' -f2)
#Ажиллаж буй тоглуулах жагсаалтыг аваад 7 үсгээр засаарай
PLAYLIST = $ (fpp -s | хасах -d ',' -f4 | хасах -c1-7)
#Энэ нь дуу тоглож байгаа бол "хоёулаа" байх болно, хэрэв зогсолтын горимд байвал "дараалал" байх болно
Standby дараалал ажиллаж байгаа эсэхийг тодорхойлохын тулд #ашигласан
STANDBYSTRING = $ (fpp -s | хасах -d ',' -f5)
#Харьцуулахын тулд тоглуулах жагсаалтын нэрсийн эхний 7 үсэг
#Дөнгөж 7 үсгээр "Song1Standby" ба "Song1" ижил байна
#За, үнэндээ энэ нь эхний x үсэг байх ёстой бөгөөд x нь танд байгаа хамгийн богино дууны нэр байх ёстой
StandbyPlaylist = $ (echo $ NightStandby | хасах -c1-7)
Song1Playlist = $ (echo $ NightSong1 | cut -c1-7)
Song2Playlist = $ (echo $ NightSong2 | cut -c1-7)
STARTITEM = ""
#Цэргийн цагийн одоогийн цагийг аваарай
CurrentHour = $ (огноо +"%H")
#Зарим зүйлийн статусыг хэвлэх - "цуурай" гэдэг нь ихэнх хэл дээр "хэвлэх" шиг байдаг
#Янз бүрийн зүйлийг хайчилж эсвэл зөв тооцоолсон эсэхийг шалгахад ашиг тустай
echo CurrentHour бол $ CurrentHour юм
echo Тоглуулах жагсаалт нь: $ PLAYLIST
echo Song2Playlist бол: $ Song2Playlist
echo Статус нь: $ STATUS
#Дууны түвшинг шөнийн цагаар 80%, өөр тохиолдолд 100% болгож тохируулна уу
#Тиймээс, хэрэв би унтаж байгаа бол энэ нь тийм ч чанга биш юм
#if [$ CurrentHour -lt $ OffHour -a $ CurrentHour -ge 11]; дараа нь
# fpp -v 100
#өөр
# fpp -v 80
#fi
# Бидэнд утга учиртай зүйл байгаа эсэхийг шалгаарай
хэрэв [-z "$ {STATUS}"]; дараа нь
echo "Статусын утгатай алдаа"> & 2
гарах 1
fi
# Одоогийн байдлын талаар үйлдэл хий
$ {STATUS} тохиолдолд
# ИДЭВХГҮЙ
0)
#Шөнө - Дуу1 -ийг зогсолтын горимд тоглоорой
хэрэв [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; дараа нь
цуурай Шөнийн дуу тоглож байна1
fpp -c зогсоох
fpp -p "$ {NightSong1}" $ {STARTITEM}
#Өдрийн цаг эсвэл үнэхээр оройтсон - 1 -р дууг тоглуулаад гэрлээ унтраа
өөр
цуурай Playing DaySong1
fpp -c зогсоох
fpp -P "$ {DaySong1}" $ {STARTITEM}
fi
;;
# ГАНЦААРААР ТОГЛОЖ, ЗОГСООХ (хуваарьт тоглуулах жагсаалт дуусах үед товчлуур дарагдсан бол гоёмсог болно)
1 | 2)
#Standby ажиллаж байна - энэ нь ажилладаг, учир нь зогсолт бол миний медиа бус цорын ганц дараалал юм
if ["$ STANDBYSTRING" == "дараалал"]; дараа нь
#Шөнө - Дуу1 -ийг зогсолтын горимд тоглоорой
хэрэв [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; дараа нь
echo NightSong1 -ийг шөнийн цагаар тоглуулах
fpp -c зогсоох
fpp -p "$ {NightSong1}"
#Өдрийн цаг эсвэл үнэхээр оройтсон - бар өөдөс тоглоод гэрлээ унтраа
өөр
PlayingDaySong1 тоглохоос цуурай
fpp -c зогсоох
fpp -P "$ {DaySong1}"
fi
#Илүү олон дууг дэмжихийн тулд энэ хэсгийг хуулж, сүүлийн хэсгийн "Song2Playlist" -ийг Дууны#Тоглуулах жагсаалт болгон өөрчилнө үү
#Song1 ажиллаж байна
elif ["$ PLAYLIST" == "$ Song1Playlist"]; дараа нь
#Шөнө - Hallelujah -ийг зогсолтын горимд тоглоорой
хэрэв [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; дараа нь
echo Playing HallelujahStiger by Tiger Rag ажиллаж байна
fpp -c зогсоох
fpp -p "$ {NightSong2}"
#Өдрийн цаг эсвэл үнэхээр оройтсон - Song2 -ийг нэг удаа тоглуулаад гэрлээ унтраа
өөр
echo Tiger Rag -аас Hallelujah -ийг нэг удаа тоглож байна
fpp -c зогсоох
fpp -P "$ {DaySong2}"
fi
#Сүүлчийн дуу гүйж байна - Тогтоорой
elif ["$ PLAYLIST" == "$ Song2Playlist"]; дараа нь
#Шөнө - зогсолтын горимд тоглох
хэрэв [$ CurrentHour-lt $ OffHour-a $ CurrentHour-ge $ OnHour]; дараа нь
echo Дахин давтах үед зогсолтын горимд тоглож байна
fpp -c зогсоох
fpp -p "$ {NightStandby}"
#Өдрийн цаг эсвэл үнэхээр оройтсон - нэг удаа зогсолтын горимд тоглоорой
өөр
echo Standby -ийг нэг удаа тоглуулах
fpp -c зогсоох
fpp -P "$ {DayStandby}"
fi
өөр
echo Яагаад ч юм хамгийн сүүлд хийсэн өөр хэргийг гүйцэтгэсэн.
fpp -c зогсоох
fpp -P "$ {DaySong1}"
fi
;;
esac

rawButtonSuperScript.sh -ийг GitHub -аас ❤ -аар зохион байгуулсныг үзэх

Алхам 5: (Нэмэлт) Товчлуурын нүүрний хавтан

Би Makerspace -ээр дамжуулан Клемсон дахь лазер таслагчтай болох боломжтой тул хайчлах+зурах загварыг хурдан зурав. Дунд хэсэгт миний товчлуурын цоорхой, Христийн Мэндэлсний Баярын фонтоор "Намайг түлх" гэж бичсэн, товчлуурыг тойрсон цасан ширхэг байна. Би модоор цагаанаар будаж, дараа нь маск соронзон хальсаар хучсан (ингэснээр лазер таслагч миний сийлбэрлэхийг хүсэхгүй байгаа хэсгийг шатаахгүйн тулд). Миний ашигласан файлыг хавсаргасан болно.

Зөвлөмж болгож буй: