Мазмуну:

WS2812-B LED ATMEGA328 UNO V3.0 R3 тактасы менен: 11 кадам
WS2812-B LED ATMEGA328 UNO V3.0 R3 тактасы менен: 11 кадам

Video: WS2812-B LED ATMEGA328 UNO V3.0 R3 тактасы менен: 11 кадам

Video: WS2812-B LED ATMEGA328 UNO V3.0 R3 тактасы менен: 11 кадам
Video: Online Programmable Arduino Individually Addressable LED strip 2024, Июль
Anonim
WS2812-B LED ATMEGA328 UNO V3.0 R3 тактасы менен
WS2812-B LED ATMEGA328 UNO V3.0 R3 тактасы менен

Description

Бул долбоор визуалдык эффектти түзүү үчүн ICStation WS2812-B программалоочу түстүү LED тактасын ATMEGA328 UNO V3.0 R3 менен шайкеш келген Arduino UNO R3 менен айкалыштырат. Дагы эмне, эгер сизде "Диско" тематикалык кечеси болсо, сизге жагат. Ушул нерселердин бирин кантип жасоону көрсөтөйүн.

1 -кадам: Тетиктер талап кылынат:

Талап кылынган бөлүктөр
Талап кылынган бөлүктөр

· Arduino UNO (же шайкеш келген такта) · 4 x WS2812-B программалоочу түстүү LED тактасы

· 330 Ом каршылыгы

· 4700 uF 16V электролиттик конденсатор

· Breadboard

· Аялдан Эркекке секирүүчү зымдар

· Breadboard Jumper зымдары

· Бурама терминалдары бар 2.1мм DC розеткасы

· 5V 4A Plugpack электр менен камсыздоо

Эскертүү: бул долбоорду батарейкалар менен иштетүү мүмкүн, бирок сунушталбайт жана өз тобокелчилигиңиз менен жасалат.

Ошондой эле сизге жасалуучу (же сатып алуучу) Disco Ball Cake керек болот. Аялым муну жасады. Жакында көрө турганыңыздай, ичиндеги торт кызгылт болчу, анткени ал кулпунай торту болчу.

Сиз Arduino IDEди бул жерден ала аласыз: https://www.arduino.cc/en/Main/Software Мен 1.6.4 версиясын колдондум, балким эскирип калган … бирок ошого карабай жакшы иштейт.

FastLED китепканасын кантип колдонуу керектиги тууралуу маалыматты бул жерден алсаңыз болот: https://fastled.io/ Жана бул жерден жүктөп алсаңыз болот: FastLED китепканасы Мен 3.0.3 версиясын колдонгом, ал дагы эскирип калган.

2 -кадам: ARDUINO КОДУ:

3 -кадам: ARDUINO CODE DESCRIPTION:

· FastLED китепканасы: Сиз FastLED китепканасын Arduino IDEге жүктөп алып орнотконуңузду текшеришиңиз керек. Китепкана бул эскизге камтылган, антпесе FastLED функциялары иштебейт.

· "NUM_LEDS" өзгөрмөсү: Arduinoго канча LED колдонулуп жатканын айтат. Бул учурда, бизде 4 LED шакеги бар, ар бир LED шакеги 16 светодиодду камтыйт, демек бардыгы 64 LED. Эгерде сиз төмөнкү санды аныктасаңыз, мисалы 16, анда эскиз биринчи LED шакегиндеги диоддорду гана жарык кылмак.

· "DATA_PIN" өзгөрмөсү: Arduinoго кайсы санариптик пинди LED шакегине маалыматтарды берүү үчүн колдонууну айтат. Бул учурда, мен Digital Pin 9 колдонуп жатам.

· Башка өзгөрмөлөр: Менде LED рандомизациясы жана реңкти көзөмөлдөө үчүн колдонулган бир нече башка өзгөрмөлөр бар. Hue - бул LEDдин түсү. Түстүн өзгөрмөсүн көбөйтүү менен, сиз диоддорду асан-үсөн сыяктуу циклге айландыра аласыз. "Реңк" өзгөрмөсү "байт" болуп саналат, башкача айтканда, ал нөлгө чейин секиргенге чейин 255 максималдуу мааниге чейин көтөрүлөт.

Баштоо коду: Эгерде сизде бул окуу куралындагыдан башка LED шакеги болсо, анда баштапкы кодду өзгөртүүгө туура келиши мүмкүн. Бул LED шакеги WS2812-B чипсетине ээ (ICStation веб-сайтына ылайык), ошондуктан бул линия:

· FastLED.addLeds (leds, NUM_LEDS); FastLED китепканасына кайсы чипсет колдонулуп жатканын (NEOPIXEL), маалыматтарды берүү үчүн колдонулган пин (DATA_PIN), башкарылуучу LED массивин (leds) жана контролдонуучу светодиоддордун санын (NUM_LEDS) айтып берет. · " loop () ": коддун бөлүмү:" hue "өзгөрмөсү асан -үсөн эффектин түзүү үчүн көбөйтүлөт жана FastLED's random8 () функциясын колдонуу менен туш келди LED тандалат.

· Random8 (x) функциясы: 0дон xке чейинки санды туш келди тандап алат.

· RandomSeed () функциясы: санды "чындап кокустукка" бөлүүгө жардам берүү үчүн. Бул өзгөрмөлүү analogPin (A0) туш келди окуусуна жардам берет. Бул analogPin 0 болушу шарт эмес, бул колдонулбаган аналогдук пин болушу мүмкүн.

· Leds [rnd].setHSV (реңк, 255, 255): Бул линия туш келди LEDди "hue" өзгөрмөсүнө барабар кылып, каныктырууну 255ке, жарыктыгы 255ке барабар кылат. LED ак жарык. Нөлдүн жарыктыгы негизинен LEDди өчүрөт.

· FastLED.show (): Ардуинодон LED шакегинин Санарип кирүү пинине билдирүү жөнөтүлмөйүнчө LED шакек дисплейине эч кандай физикалык өзгөрүүлөр киргизилбейт. Бул билдирүү FastLED.show (); функция. Бул LED шакектерине дисплейди LED массивинин ичиндеги маалымат менен жаңыртууну айтат (LED). Ошентип, эгерде сиз бардык LED ди күйгүзүүнү орнотсоңуз, FastLED.show () чейин такта LEDди жарыктандырбайт; функциясы деп аталат. Муну билүү маанилүү - айрыкча, жеке LED тизмектериңизди иштеп чыгууга аракет кылып жатканда.

· Кечиктирүү (50) сызыгы: жарк этүү ортосундагы убакытты 50 миллисекундка чейин коёт. Сиз секундасына жарк этүү санын көбөйтүү же азайтуу үчүн кечигүүнү өзгөртө аласыз.

· Leds .fadeToBlackBy (180) функциясы: негизинен LEDSти 180 бирдикке өчүрөт. Каалаган ылдамдыкка жетүү үчүн бул санды көбөйтө же азайта аласыз. Бирок эскерткиле, эгерде сиз бул функцияны чакырууну унутуп калсаңыз же Светодиоддорду жетишсиз түрдө өчүрө албасаңыз, анда сиз АРДИНО диодун күйгүзүп коюуңуз мүмкүн, бул сиздин Arduino тактаңызды жок кылышы мүмкүн - б.а. ээ жана аларды бийликке кантип тандадыңыз.

4 -кадам: Торт

Торт
Торт

· 1 -слайд - Негизги табак: Тортту койгонго чейин, бардык электроника менен жабдылган жана иштөө тартибинде негизги плитаны түзүү маанилүү. Cake үстүндө зымдарды/кабелдерди LED жана схемаларды базалык табактын астына орнотууга аракет кылуу - бул кырсыктын рецеби. Ошентип, адегенде негизги табакты даярдаңыз, андан кийин торт жасоочу бөлүккө өтүңүз.

· 2 -слайд - Торт бышыруу: Топтун эки тарабын жасоо үчүн сизге жарым шардын торт идиштери керек болот. Сиз торттун жалпы салмагына, глазурга жана помадага туруштук берүү үчүн жана формасын сактоо үчүн салыштырмалуу тыгыз торт жасашыңыз керек. Муздагандан жана муздаткандан кийин, аларды бири -биринин үстүнө коюп, шар түзө аласыз. Аларды муздун катмары кармап турат.

· 3 -слайд - Фондант муздатуу: Фондант глазурун атайын жабышпоочу килемче түрүү керек. Бир аз ун кошуу жабышкактыкты азайтууга жардам бергенин аныктадык. Фонданттын калыңдыгы бүтүндөй ырааттуу болушун камсыз кылуучу атайын роликтер бар. Сиз аларды чарчы бөлүктөргө бөлүшүңүз керек (болжол менен 1 см квадраттар биз үчүн жакшы иштеген). Квадраттар андан кийин Күмүшкө атайын/жегич күмүш фонтан глазуру менен боёлгон. Сиз бир нече пальто колдонушуңуз керек, жана аны пальто ортосунда кургатууга уруксат бериңиз.

· 4 -слайд - Негизиндеги муздалган торт: Тортту муздатууга болот, же аны негизги табакка түшүрүү мүмкүн … балким, аны негизги табактан жасоо жакшыраак. Бирок, эгер сиз муну базалык табакта жасоону чечсеңиз, анда LEDди торттон түшүп калышы мүмкүн болгон муздануудан коргоо керек болот (процессте). Торт толугу менен музга айланган соң (глазурь менен), сиз тортту тактанын борбордук абалына коюшуңуз керек. Торт базадан жылып кетиши мүмкүн … ошондуктан аны сактап калуу үчүн эмне кылыш керек болсо, ошону кылыңыз.

· 5-7 -слайддар - Фондан квадраттарын коюңуз: Глазур дагы эле жумшак болуп турганда, сиз тез, методикалык жана талыкпай торт тегерете горизонталдык сызык менен фомдант квадраттарын коюңуз. Торттун түндүк жана түштүк уюлдарын көздөй бир убакта иштеңиз. Сиз торттун түндүк уюлу үчүн помада тегерегин кесип аласыз. Слайд 7де сиз торттун үстүндө тешикти көрөсүз. Бул муздак пластик канистрге жасалган, ал кийинчерээк торттун үстүндөгү декорацияларды кармоо үчүн колдонулат. Муну торттун үстүнө фондан тегерегин коюудан мурун жасаңыз.

· 8 -слайд - Жылтырак кошуу: Фонтант чарчыларынын бардыгын торттун үстүнө койгондон кийин, күмүш глазурдун айрымдары чарчылардын кээ биринен өчүрүлгөн болушу мүмкүн. Бул жерде дагы бир нече жолу күмүш глазуру менен үстүнөн өтөсүз, ал эми акыркы пальто үстүндө, ал кургатылбай туруп, торттун тегерегине бир аз жалтылдатып чачып, кошумча жылтырак тартуулаңыз.

· Слайд 9 - Акыркы продукт: Акыркы кадам - торттун үстүнө зым жаркыраткычтарды жана башка жасалгаларды кошуу. Түндүк уюлдагы фондан капкагы аркылуу зымдарды ичиндеги канистрге түртүңүз. Бул сиздин бардык талыкпаган эмгегиңизди бузбай зымдарды кармап турат.

· WS2812-B чипсети: Бул LED шакеги WS2812-B чипсетин колдонот жана 4 үзүлүү казыгы бар (GND, 5V, Din, Dout)

· Кубат: Бул модулду иштетүү үчүн 5В жана 1Ага чейин токту камсыз кылуу керек

· Сигналдар: LED шакегин көзөмөлдөө үчүн, ага Digital Input pin (Din) аркылуу сигналдарды жөнөтүү керек.

Санарип Чыкуучу пинди (Dout) колдонуу менен дагы бир LED шакегин туташтырсаңыз болот.

5 -кадам: Power Use Guide

Power Use Guide
Power Use Guide

· Жалпы эреже: Рингдеги ар бир жеке LED кызыл, жашыл жана көк түстөрдү өткөрө алат, бул түстөрдүн айкалышы башка түстү түзө алат. Ак жарык бир эле учурда бул үч түстөн турат. Ар бир түс максималдуу жарыктыкта ошол түстү көрсөткөндө болжол менен 20мА ток тартат. Максималдуу жарыктыкта ак түстө жаркыраганда, бир LED болжол менен 60 мА тартат.

· Күч мультипликатору: Эгерде ар бир LED 60мАга чейин тарта алса жана бир LED шакегинде 16 LED бар болсо, анда LED шакегине 16x60mA = 960mA. Коопсуз болуу үчүн жана математиканы жеңилдетүү үчүн, сиз LED шакегине 1А туура келүүчү агымды камсыз кылышыңыз керек. Ошентип, 4 LED шакеги 5V 4A электр менен камсыздоого муктаж болот, эгерде сиз модулдардан толук функционалдуу болгуңуз келсе.

6 -кадам: Фритинг диаграммасы

Чачтын диаграммасы
Чачтын диаграммасы
Чачтын диаграммасы
Чачтын диаграммасы

Бир LED шакегин Arduino менен туташтыруу

· 3 зым: LED шакегине туташуу үчүн сизге 3 зым гана керек. Эгерде сиз каалаган убакта бир нече светодиодду күйгүзүүнү пландасаңыз, анда баары жакшы болот. · КООПСУЗ ЖОЛ: Мунун эң коопсуз жолу - бул Arduino менен LED шакегин кубаттоо үчүн тышкы электр булагын колдонуу.

· Электролиттик конденсатор: чоң 4700 uF 16V электролитикалык конденсаторду электр менен камсыздоонун оң жана терс терминалдарынын ортосуна туташтыруу менен, конденсатордун терс буту электр менен камсыздоонун терс терминалына тиркелип, сиз LED шакектериңизди ар кандай баштапкы абалдан коргойсуз. токтун агымы.

Коргоочу резистор: Ардуинонун Digital Pin 9 (D9) менен LED Ringдин Digital Input пининин (Din) ортосунда 300-400 ohm резисторун коюу максатка ылайыктуу. Бул потенциалдуу чыңалуудан биринчи LEDды коргойт

Ылайыктуу зымдар: Эгерде сиз бул LED шакектеринин бир нечесин бириктирүүнү пландап жатсаңыз (төмөндө караңыз), анда сиз зымдарды мүмкүн болушунча кыска кармап, алар аркылуу тартылып жаткан токту башкара турган татыктуу зымдарды колдонууну каалайсыз.

7 -кадам: Ардуиного ЭКИ LED шакекти туташтыруу

Эки LED шакегин Arduino менен туташтыруу
Эки LED шакегин Arduino менен туташтыруу

Үч кошумча зым: кошумча LED шакегин туташтыруу үчүн сизге 3 кошумча зым гана керек. Бир зым биринчи LED шакегинин Санарип өндүрүшүн (Dout) 2 -LED LED шакегинин Санариптик киришине (Din) туташтырышы керек.

Коопсуз болуңуз: Дагы бир жолу, муну кылуунун коопсуз жолу-тышкы электр булагын, терминалдарда чоң электролиттик конденсаторду жана Arduino менен биринчи LED шакегинин санариптик кирүү пининин ортосундагы 300-400 омдук резисторду колдонуу.

8 -кадам: Төрт LED шакегин Arduino менен туташтыруу

Төрт LED шакегин Arduino менен туташтыруу
Төрт LED шакегин Arduino менен туташтыруу

Алтымыш төрт LED: Ар бир кошумча LED шакеги үчүн 3 кошумча зым керек. 4 LED шакекчеси жалпы 64 светодиодду камсыз кылат.

AMPSти караңыз: Толук жарыктыкта, бул орнотуу 4 шамалга чейин жетиши мүмкүн (же LED шакегине болжол менен 1 ампер)

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

9 -кадам: Туташуу таблицалары

Туташуу таблицалары
Туташуу таблицалары

ONE LED шакегин Arduino менен кантип туташтыруу керек

10 -кадам: ЭКИ LED шакекти кантип Arduino менен туташтыруу керек

Эки LED шакегин Arduino менен кантип туташтыруу керек
Эки LED шакегин Arduino менен кантип туташтыруу керек

11 -кадам: Жыйынтык

Жыйынтык
Жыйынтык
Жыйынтык
Жыйынтык
Жыйынтык
Жыйынтык

Бул үйрөткүчтө биз сизге Disco Ball тортун кантип жасалгалоону, ошондой эле ICStationдан RGB LED шакектерин кантип колдонууну көрсөткөнбүз.

ICStationдогу төрт продуктунун шилтемеси:

www.icstation.com/icstation-atmega328-board…

www.icstation.com/icstation-ws2812-programm…

www.icstation.com/1pcs-dupont-wire-10cm-254…

www.icstation.com/bread-board-jump-line-jum…

Досторубуз үчүн рахмат Скотт жана анын үй -бүлөсү Led жөнүндө ушундай сонун презентация жасашты.

Мазмундун баштапкы булагы биздин досубуз Скотттон келген:

arduinobasics.blogspot.com.au/2016/06/ardui…

Эгер сизге бул үзүндү жакса, анда күйөрмандарыңыз менен бөлүшүңүз.

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

Эгерде сизде IC продуктулары жөнүндө көбүрөөк идеялар болсо, биз менен байланышыңыз: [email protected]

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