Мазмуну:

WiFi Mesh синхрондуу LED тилкелери: 3 кадам (сүрөттөр менен)
WiFi Mesh синхрондуу LED тилкелери: 3 кадам (сүрөттөр менен)

Video: WiFi Mesh синхрондуу LED тилкелери: 3 кадам (сүрөттөр менен)

Video: WiFi Mesh синхрондуу LED тилкелери: 3 кадам (сүрөттөр менен)
Video: Innovation in Polkadot DeFi 2024, Ноябрь
Anonim
Image
Image
WiFi Mesh синхрондуу LED тилкелери
WiFi Mesh синхрондуу LED тилкелери
WiFi Mesh синхрондуу LED тилкелери
WiFi Mesh синхрондуу LED тилкелери
WiFi Mesh синхрондуу LED тилкелери
WiFi Mesh синхрондуу LED тилкелери

By CarlSTeleToylandFollow More by the author:

Үй LED үчүн Remote Color Picker
Үй LED үчүн Remote Color Picker
Үй LED үчүн Remote Color Picker
Үй LED үчүн Remote Color Picker
Кошуна кеңири синхрондуу LED
Кошуна кеңири синхрондуу LED
Кошуна кеңири синхрондуу LED
Кошуна кеңири синхрондуу LED
Туруктуу Digital LED үйү майрамдык жарыктандыруу V2
Туруктуу Digital LED үйү майрамдык жарыктандыруу V2
Туруктуу Digital LED үйү майрамдык жарыктандыруу V2
Туруктуу Digital LED үйү майрамдык жарыктандыруу V2

Жөнүндө: Классикалык симптомдору бар бала кезинен бери жаратуучу, робот куруучу жана Интернет программасы CTO/Tech Продукт Менеджери. CarlS жөнүндө көбүрөөк маалымат »

Бул долбоор жеке башкарылуучу санариптик диоддору бар LED тилкелеринин жыйындысы (WS2812b "Neopixels"). Алар анимацияларды бириктирбестен, алардын баарына жасоого мүмкүндүк берет. Алар бири -бирине туташуу үчүн WiFi Meshти колдонушат жана анимация сеткада аздыр -көптүр барларга ылайыкташат.

Илхам шыктандыруучу бир жуп барабан адистигине Рождество парады үчүн соймолорду/союлдарды кооздоого болгон. Алардын ортосундагы LED анимациясы синхрондоштурулган. Жарык диоддор тилкелердин ордуна жиптер болушу мүмкүн.

Башка колдонуу - бул LED көркөм инсталляциясы үчүн, анда сиз бөлмөнүн тегерегиндеги бардык LEDлердин ортосунда маалымат зымын өткөргүңүз келбейт - алардын өз алдынча сайылышы керек.

Бул долбоор үчүн алар Интернетке туташкан эмес. Алар жеке WiFi кирүү чекиттерин жана веб серверлерин орнотушкан. Ошентип, бул долбоор тышкы тармакка көз каранды эмес жана алыскы жерлерде иштей алат. Алар 5v менен иштейт, андыктан оңой эле сырткы уюлдук телефондордун батареялары менен иштесе болот!

1 -кадам: Бөлүктөр

Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр

Ар бир тилке үчүн долбоордо төмөнкү бөлүктөр колдонулган:

  • Суу өткөрбөй турган WS2812b LED тасмасы. Мен 30 светодиод/метрди колдондум. Суу өткөрбөгөндөрдүн көбүнчө эки тараптуу тасмасы бар, ошондуктан аларды орнотуу оңой. Каналдардын узундугу бир метр болгондуктан, бир каналга 1 метр керек болот. Бир метрге көбүрөөк LED диапазону жакшы - жөн эле чоң электр энергиясын алууну унутпаңыз. Бул тилкелердеги ар бир (5050) светодиод толук күйгөндө 60мага чейин колдоно алат.
  • Пластикалык электрондук корпус 60x36x25mm - бул D1 Mini кармоого жетиштүү кичине.
  • Панель 5,5 мм х 2,1 мм DC уячасы
  • 5 в кубаттуулугу - 2 ампери толук болгондо, ар бири 30 LED @ @ 0,06 ампер менен жакшы болушу керек.
  • USB 5.5mm x 2.1mm кабелине, эгер сиз бул долбоорду USB батарейкасынан иштеткиңиз келсе
  • D1 Mini ESP8266 тактасы - дагы аз, бирок узак күтүү менен.
  • LED тилкелери үчүн капкагы жана акыркысы бар алюминий канал. Тандоо үчүн көптөгөн профилдер бар. Бул WS2812b LED тилкелери (12мм) жана профили төмөн үчүн жетиштүү кенен.
  • Алюминий тилкеси - каналдын туурасы 17 мм, андыктан 1/2 "кең алюминий тилкеси жакшы өлчөмдө болот. Ал сиз жасаган ар бир тилке үчүн 1/16" калың жана 6 "узун болушу керек.
  • Эки тараптуу көбүк тасмасы - туурасы 1/2 ".
  • 1000uF конденсатор - диоддорго зыян келтирүүдөн чыңалуунун алдын алууга жардам берүү үчүн ар бир тилке үчүн сунушталат.
  • Кошуу зымы. Бул 26 калибрдүү силикон зымы абдан ийкемдүү жана зымды LED тилкесинен ширетүүчү подкладкаларды тартпоого жардам берет. Ошондой эле аны ширетүүчү темирге тийгенде эрип кетпейт. Мен дагы серво зымын колдондум, ал абдан ийкемдүү, бирок силикон зымы менин жаңы сүйүктүү зымым. Сизге ар бир түстүн 6 дюйму гана керек болот (кызыл, кара, сары).
  • Өткөргүч зымдар - ургаачы кызыл, кара жана сары CPUга туташуу үчүн колдонулат. Сиз буларды өткөрүп жиберип, өзүңүзгө ишенимдүү болсоңуз, туташуучу зымды тактага туташтырсаңыз болот.
  • LED тилкесинин маалымат линиясындагы ызы -чууну азайтуу үчүн 330 Ом резистору.
  • 3.3v процессоруна 5v LED тилкесин ишенимдүү айдоого уруксат берүү үчүн 1N4448 сигналдык диод же окшош.
  • 3мм жылытуучу түтүк - сизге болгону 5 "керек.

2 -кадам: Барларды куруу

Барларды куруңуз
Барларды куруңуз
Барларды куруңуз
Барларды куруңуз
Барларды куруңуз
Барларды куруңуз
Барларды куруңуз
Барларды куруңуз

Торлордун курулушу мурунку Инструкциядагыдай эле. Бул жерде акыркы структурадан окшош этап-этабы менен сүрөттөр бар жана талкууну ошол башка Нускамада тапса болот.

Светодиоддорду алюминий каналына жабыштыруунун бир жаңы кеңеши: Кээде LED тилкелериндеги эки тараптуу тасма LED схемасына караганда бир аз кыскараак болот жана сиз LED тилкесинде кичине бүгө көрөсүз. Эгерде сиз лента ошол жерден кесилсе, ал тегиз жатып калат.

Мен ошондой эле электр зымын жана LED тилкесинин калган бөлүктөрүн кулатуу үчүн УК желиминин кээ бир тамчыларын колдондум.

Particle Photon контроллерлеринин ордуна, бул долбоор ESP8266 чиптеринин негизинде WeMos D1 Mini такталарын колдонгон. Бул LED долбоору үчүн жакшы жана кичине. Мен секирүүчү аялдарга орун берүү үчүн эркектердин башын колдондум. Коннекторлорду артка кайтаруу корпуска туура келбейт. Бул ыкма да ширетүүгө оңой. Мен ошондой эле аялдын коннекторлоруна кысылган 20 калибрлүү катуу өзөктүү зымды колдондум, бул дагы иштейт, бирок көбүрөөк күч.

Бул тилкелер биринчи LED үчүн ошол эле курмандык чалуу ыкмасын колдонушат. Иш жүзүндө, бул чынында эле байкалбайт. Ошондой эле, алгачкы экөөнүн ортосундагы кичинекей ажырым да дээрлик байкалбайт

Эгерде сиз алюминий каналын орнотуу үчүн клиптерди колдонууну кааласаңыз, каналды долбоордун кутусуна туташтырган алюминий тилкеси клиптерди дубалга түз орнотууга тоскоол болуп калышы мүмкүн, андыктан астына бир нече шайба же бош гайканы коюңуз. аларды 1/16 чейин токтотуу үчүн.

3 -кадам: Mesh Code

Image
Image
Mesh Code
Mesh Code

LED тилкелеринин ар бири бирдей кодду иштетет. Бул долбоордун негизи оорутпаган китепкана болуп саналат https://gitlab.com/BlackEdder/prainMesh. Бул китепкана кирүү чекиттерин, веб -серверлерди ж.

Тордо бир контроллер бар жана анимациянын өзгөрүүсү жөнүндө билдирүүлөр бардык түйүндөргө/LED тилкелерине берилет. Чоң сетка үчүн, билдирүүдө кечигүү болушу мүмкүн, бирок мен иштеп жаткан масштаб үчүн ал байкалган жок.

Ишке киргенде, түйүн аны контролер деп эсептейт, бирок анда өзгөргөн түйүндөр билдирүүсү баалоону баштайт. Тордогу эң төмөнкү # чип id контролер болуп калат. Бул, адатта, бардык түйүндөрдүн жайгашып, бир контроллерди кабыл алуусу үчүн бир -эки секунд талап кылынат. Сиз тезирээк синхрондоштуруу үчүн көбүрөөк күч-аракет жумшасаңыз болот (орто анимация), бирок бул өзгөрүү билдирүүлөрү абдан чырайлуу, андыктан баары бир тармактын жайгашуусу үчүн бир аз убакыт талап кылынат. Иш жүзүндө, алар кайра синхрондошкондон кийин, алар абдан бекем бойдон калышат.

Тилкелерди кесип өткөн анимациялар үчүн код түйүндөрдүн тизмесин алат, иреттейт, андан кийин учурдагы түйүн тартылган болсо гана тартат. Алар чип id тартибинде иреттелет, андыктан алар качан башталышына карабай, ырааттуу анимацияларды жасай аласыз. Ошондой эле, анимациялар түшүп калган түйүндөргө ылайыкташат.

Анимация коду үч жерде пайда болот. Биринчиси, кабыл алынганCallback функциясы, анда тилке жаңы анимация буйругун алган. Бул абдан жөнөкөй - жөн гана анимация үчүн кадамдын өлчөмүн белгилейт жана эсептегичтерди баштапкы абалга келтирет. Экинчи орун цикл функциясында. Ал жерде код учурдагы анимациянын аткарылгандыгын текшерет жана кийинки кадамга өтөт. Анимация кодунун акыркы орду stepAnimation функциясы болуп саналат, анда бардык чиймелер аткарылат.

Система миллис таймерин жаңыртуу үчүн колдонот - кечигүү функциясын колдонбоо, анткени ал кээ бир китепканаларды блоктойт. Милис коду туура оодарылышы керек.

Мен бир нече LED менен NeoPixel китепканасы жана painlessMesh менен көйгөйлөр бар экенин эске алып, мен FastLED которулду.

Бул жерде GitHibтеги код бар, ал дагы бул жерде тиркелет. Сиз аны баардык тилкелерге жүктөйсүз жана сиз LED анимациясын коддоого даярсыз!

Сунушталууда: