Мазмуну:
Video: Interactive Yard Lights, Walkway Lights: 3 Steps
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Мен арткы короого интерактивдүү короо чырактарын кургум келди. Идея, кимдир бирөө бир жакка басса, ал сиз бараткан тарапка анимацияны коет. Мен Dollar General менен $ 1.00 күн чырактары менен баштадым
1 -кадам: Солор чырактарын өчүрүңүз
Биринчи кадам - кызыктуу нерселерге жол ачуу үчүн жарыкты өчүрүү. Мен баштапкы ледди жана батареяны кесүүдөн баштадым. Бул бөлүктөрдү сактап калууну унутпаңыз, анткени алар башка долбоордо пайдалуу болот, мен дагы күндүн жарыгынын түбүндөгү хром куполун алып салдым жана сүрөттөрдө көрүнгөндөй үстүнө жабыштырдым.
2 -кадам: Жакшы жарыктарды орнотуу
LED үчүн мен бул жерден тапкан суу өткөрбөөчү ws2811b колдондум
www.ebay.com/itm/50-X-12mm-LED-Module-RGB-…
Мен башында PIR сенсорлорун күн чырактарынын ичине киргизүүнү пландап жаткам. бирок бул кандайдыр бир көйгөйлүү болуп чыкты, анткени сенсор негизинен пластиктен өткөндү көрө алган жок. ал кандайдыр бир UV фильтрлөөчү касиетке ээ болушу керек. ошондуктан мен дагы ушул сыяктуу нерсени тандадым
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:: White; leds [FirstLed] = CRGB:: White; кечиктирүү (750); FastLED.show (); Serial.print ("ак ашуу"); Serial.print (i); Serial.println ("of 8"); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Blue; leds [FirstLed] = CRGB:: Blue; кечигүү (250); FastLED.show (); Serial.print ("Көк ашуу"); Serial.print (i); Serial.println ("of 8"); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Purple; leds [FirstLed] = CRGB:: Purple; кечигүү (250); FastLED.show (); Serial.print ("Кызыл ашуу"); Serial.print (i); Serial.println ("of 8"); } FirstLed = -1; LastLed = 16; for (int i = 0; i <8; i ++) {LastLed--; FirstLed ++; leds [LastLed] = CRGB:: Black; leds [FirstLed] = CRGB:: Black; кечигүү (250); FastLED.show (); Serial.print ("Лидерди өчүрүү"); Serial.print (i); Serial.println ("of 8"); } FlagState = 2; // желектин абалын өзгөртүү} void RevLeds () {Serial.println ("тескерисинче"); FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; leds [LastLed] = CRGB:: White; leds [FirstLed] = CRGB:: White; кечиктирүү (750); FastLED.show (); Serial.print ("Ак ашуу"); Serial.print (i); Serial.println ("of 8"); } FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; leds [LastLed] = CRGB:: Blue; leds [FirstLed] = CRGB:: Blue; кечигүү (250); FastLED.show (); Serial.print ("Көк ашуу"); Serial.print (i); Serial.println ("of 8"); } FirstLed = 8; LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; leds [LastLed] = CRGB:: Purple; leds [FirstLed] = CRGB:: Purple; кечигүү (250); FastLED.show (); Serial.print ("Кызыл өтмөк"); Serial.print (i); Serial.println ("of 8"); }
FirstLed = 8;
LastLed = 7; for (int i = 0; i <8; i ++) {LastLed ++; FirstLed--; leds [LastLed] = CRGB:: Black; leds [FirstLed] = CRGB:: Black; кечигүү (250); FastLED.show (); Serial.print ("Led өчүрүү"); Serial.print (i); Serial.println ("of 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 triggered"); FlagState = 1; } Serial.println ("Loop Күтүү аяктады"); }
Сунушталууда:
DIY Long Distance Best Friend Lights: 4 Steps (Сүрөттөр менен)
DIY Long Distance Best Friend Lights: Мен " Best Friend " лампалар. Бул жөн гана алар башка лампанын учурдагы түсү менен шайкештирилип турат дегенди билдирет. Ошентип, эгер сиз бир чыракты жашылга алмаштыра турган болсоңуз, көп өтпөй башка чырак күйүп калат
Smart Walkway Lighting System- командасы Сейлор Мун: 12 кадам
Smart Walkway Lighting System- командасы Сейлор Мун: Салам! Бул Грейс Ри, Срижеш Конаканчи жана Хуан Ланди, жана биз бирге команда Сейлор Мунбуз! Бүгүн биз сизге өзүңүздүн үйүңүздө ишке ашыра турган эки бөлүктөн турган DIY долбоорун алып келебиз. Биздин акыркы акылдуу өтмөк жарыктандыруу тутумуна ул
DIY Vanity Mirror Easy Steps (LED Strip Lights колдонуп): 4 кадам
DIY Vanity Mirror Easy Steps (LED Strip Lights колдонуп): Бул постто мен LED тилкелеринин жардамы менен DIY Vanity Mirror жасадым. Бул чынында эле сонун жана сиз дагы аларды сынап көрүшүңүз керек
Interactive Wind Chimes: 4 Steps (Сүрөттөр менен)
Interactive Wind Chimes: Perpetual Chimes - бул сиздин кызматташтыгыңыз үн пейзажын түзгөн качып кетүү тажрыйбасын сунуштаган, күчөтүлгөн шамал коңгуроолорунун жыйындысы. Имаратта шамал жок болгондуктан, коңгуроолор көрүүчүлөрдүн өз ара аракетин талап кылат, аларды акырын таптап же шыктандырып/n
Yard Siding менен жөнөкөй автоматташтырылган модель темир жолу: 11 кадам
Yard Siding менен жөнөкөй автоматташтырылган темир жол цикли: Бул долбоор менин мурунку долбоорлорумдун биринин жакшыртылган версиясы. Бул Arduino микроконтроллерин колдонот, темир жолдун моделин автоматташтыруу үчүн ачык булактын прототиптештирүү платформасы. Макет жөнөкөй сүйрү укуруктан жана короонун капталынан турат