Мазмұны:

Интерактивті аула шамдары, өтетін жол шамдары: 3 қадам
Интерактивті аула шамдары, өтетін жол шамдары: 3 қадам

Бейне: Интерактивті аула шамдары, өтетін жол шамдары: 3 қадам

Бейне: Интерактивті аула шамдары, өтетін жол шамдары: 3 қадам
Бейне: They Destroyed Their Childs Life... Abandoned Mansion with a Chilling Tale! 2024, Қараша
Anonim
Интерактивті аула шамдары, жүру жолдары
Интерактивті аула шамдары, жүру жолдары
Интерактивті аула шамдары, өтетін жол шамдары
Интерактивті аула шамдары, өтетін жол шамдары

Мен артқы аулаға интерактивті шамдар жасағым келді. Идея, біреу бір жолмен жүрсе, ол сіз жүрген бағытқа анимация қосады. Мен долларлық күн сәулесінен $ 1.00 доллармен бастадым

1 -қадам: Солор шамдарын өшіріңіз

Солор шамдарын өшіріңіз
Солор шамдарын өшіріңіз
Солор шамдарын өшіріңіз
Солор шамдарын өшіріңіз
Солор шамдарын өшіріңіз
Солор шамдарын өшіріңіз

Алғашқы қадам қызықты нәрселерге жол ашу үшін шамдарды сөндіру болды. Мен бастапқы батарея мен аккумуляторды кесуден бастадым. Бұл бөліктерді сақтауды ұмытпаңыз, себебі олар басқа жобада пайдалы болады, мен күн сәулесінің төменгі жағындағы хром күмбезін алып тастап, фотосуреттерде көрсетілгендей жоғарыға жапсырдым.

2 -қадам: Жақсы шамдарды орнату

Жақсы шамдарды орнату
Жақсы шамдарды орнату
Жақсы шамдарды орнату
Жақсы шамдарды орнату
Жақсы шамдарды орнату
Жақсы шамдарды орнату

светодиод үшін мен су өткізбейтін ws2811b қолдандым, оны мына жерден табуға болады

www.ebay.com/itm/50-X-12mm-LED-Module-RGB-…

Мен бастапқыда күн сәулелерінің ішіне PIR сенсорларын қоюды жоспарладым. бірақ бұл сенсор пластиктен өткенді көре алмайтындықтан, бұл қандай да бір қиын мәселе болды. ол ультракүлгін сүзгілеудің қандай да бір түріне ие болуы керек. сондықтан мен осындай нәрсені таңдадым

www.thingiverse.com/thing:2590216

3 -қадам: кодтау

егер сіз шамдарды сенсорды пайдаланбайтын болсаңыз немесе үнемі жұмыс істегіңіз келсе, «жалаушаның күйін өзгерту» деп жазылған жерді іздеңіз және оны эфирге 1 немесе 0 етіп орнатыңыз, мен мұны өзім үшін аяқтаған кезде қосымша суреттерді қосамын. бұл әлі де жұмыс үстінде, бірақ менің ойымша, оны бірден бөліспеу керек. қарағаныңызға рахмет

жарамсыз орнату () {

// орнату кодын бір рет іске қосу үшін мына жерге қойыңыз: FastLED.addLeds (leds, NUM_LEDS); Serial.begin (9600); pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }

void loop () {

Serial.println (FlagState);

if (FlagState == 0) {ForwardLeds (); } if (FlagState == 1) {RevLeds (); } if (FlagState == 2) {Waiting (); }}

void ForwardLeds () {

FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Ақ; leds [FirstLed] = CRGB:: Ақ; кешіктіру (750); FastLED.show (); Serial.print («ақ өту»); Serial.print (i); Serial.println («8 -ден»); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: көк; leds [FirstLed] = CRGB:: Көк; кешіктіру (250); FastLED.show (); Serial.print («Көк пас»); Serial.print (i); Serial.println («8 -ден»); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Күлгін; leds [FirstLed] = CRGB:: Күлгін; кешіктіру (250); FastLED.show (); Serial.print («Қызыл өту»); Serial.print (i); Serial.println («8 -ден»); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Қара; leds [FirstLed] = CRGB:: Қара; кешіктіру (250); FastLED.show (); Serial.print («Светодиодты өшіру»); Serial.print (i); Serial.println («8 -ден»); } FlagState = 2; // жалауша күйін өзгерту} void RevLeds () {Serial.println («керісінше»); FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed-; leds [LastLed] = CRGB:: Ақ; leds [FirstLed] = CRGB:: Ақ; кешіктіру (750); FastLED.show (); Serial.print («Ақ өту»); Serial.print (i); Serial.println («8 -ден»); } FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed-; leds [LastLed] = CRGB:: көк; leds [FirstLed] = CRGB:: Көк; кешіктіру (250); FastLED.show (); Serial.print («Көк өту»); Serial.print (i); Serial.println («8 -ден»); } FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed-; leds [LastLed] = CRGB:: Күлгін; leds [FirstLed] = CRGB:: Күлгін; кешіктіру (250); FastLED.show (); Serial.print («Қызыл өту»); Serial.print (i); Serial.println («8 -ден»); }

FirstLed = 8;

LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed-; leds [LastLed] = CRGB:: Қара; leds [FirstLed] = CRGB:: Қара; кешіктіру (250); FastLED.show (); Serial.print («Светодиодты өшіру»); Serial.print (i); Serial.println («8 -ден»); } FlagState = 2; // жалауша күйін өзгерту} void Waiting () {buttonState1 = digitalRead (buttonPin1); buttonState2 = digitalRead (buttonPin2); if (buttonState1 == HIGH) {Serial.println («алға басталды»); FlagState = 0; } else if (buttonState2 == HIGH) {Serial.println («Rev іске қосылды»); FlagState = 1; } Serial.println («цикл аяқталды күту»); }

Ұсынылған: