فهرست مطالب:

چراغ های حیاط تعاملی ، چراغ های راهرو: 3 مرحله
چراغ های حیاط تعاملی ، چراغ های راهرو: 3 مرحله

تصویری: چراغ های حیاط تعاملی ، چراغ های راهرو: 3 مرحله

تصویری: چراغ های حیاط تعاملی ، چراغ های راهرو: 3 مرحله
تصویری: پسر بچه ایرانی که با صداش داورای برنامه گات تلنت رو حیرت زده کرد 2024, نوامبر
Anonim
چراغ های حیاط تعاملی ، چراغ های راهرو
چراغ های حیاط تعاملی ، چراغ های راهرو
چراغ های حیاط تعاملی ، چراغ های راهرو
چراغ های حیاط تعاملی ، چراغ های راهرو

من می خواستم نوعی چراغ حیاط تعاملی برای حیاط پشتی خود بسازم. ایده این بود که وقتی شخصی یک طرف راه می رود ، انیمیشنی را در مسیری که شما در حال حرکت آن هستید ایجاد می کند. من با چراغ های خورشیدی دلار 1.00 دلار دلار شروع کردم

مرحله 1: چراغهای Solor را از بین ببرید

Gut the Solor Lights
Gut the Solor Lights
Gut the Solor Lights
Gut the Solor Lights
Gut the Solor Lights
Gut the Solor Lights

اولین قدم این بود که چراغ ها را از بین ببرید تا راه را برای چیزهای سرگرم کننده تر فراهم کنید. من با قطع کردن لامپ و باتری اصلی شروع کردم. حتماً این قطعات را ذخیره کنید زیرا در پروژه دیگری مفید خواهند بود ، من همچنین گنبد کرومی را که در قسمت پایین نور خورشیدی قرار داشت ، برداشته و همانطور که در عکسها مشاهده می شود ، به بالای آن چسباندم.

مرحله 2: نصب چراغ های بهتر

نصب چراغهای بهتر
نصب چراغهای بهتر
نصب چراغهای بهتر
نصب چراغهای بهتر
نصب چراغهای بهتر
نصب چراغهای بهتر

برای led من از ws2811b ضد آب استفاده کردم که در اینجا یافت می شود

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

من در ابتدا قصد داشتم سنسورهای PIR را در داخل چراغ های خورشیدی قرار دهم. اما این مسئله بسیار مشکل زا بود زیرا سنسور اساساً نمی توانست پلاستیک را ببیند. باید دارای نوعی فیلتر UV باشد. بنابراین من چیزی شبیه به این را انتخاب کردم

www.thingiverse.com/thing:2590216

مرحله 3: کد نویسی

اگر می خواهید چراغ ها را از سنسور استفاده نکنید یا فقط مدام کار کنید فقط به دنبال مکانی باشید که به عنوان "تغییر حالت پرچم" توضیح داده شده و آن را روی اتر 1 یا 0 تنظیم کرده اید وقتی این کار را برای خودم کامل کنم عکس های بیشتری اضافه خواهم کرد. هنوز کار در حال پیشرفت است ، اما من فکر می کنم خیلی مرتب است که نمی توان فوراً آن را به اشتراک گذاشت. ممنون که نگاه کردید

void setup () {

// کد راه اندازی خود را در اینجا قرار دهید تا یکبار اجرا شود: FastLED.addLeds (leds، NUM_LEDS)؛ Serial.begin (9600)؛ pinMode (buttonPin1 ، INPUT) ؛ pinMode (buttonPin2 ، INPUT) ؛ }

حلقه خالی () {

Serial.println (FlagState) ؛

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

void ForwardLeds () {

FirstLed = -1؛ LastLed = 16 ؛ برای (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 ؛ برای (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 ؛ برای (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 ؛ برای (int i = 0 ؛ i <8؛ i ++) {LastLed-- ؛ FirstLed ++؛ leds [LastLed] = CRGB:: سیاه ؛ leds [FirstLed] = CRGB:: سیاه؛ تأخیر (250) ؛ FastLED.show ()؛ Serial.print ("خاموش کردن led") ؛ Serial.print (i) ؛ Serial.println ("از 8") ؛ } FlagState = 2؛ // تغییر حالت پرچم} void RevLeds () {Serial.println ("معکوس") ؛ FirstLed = 8 ؛ LastLed = 7 ؛ برای (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 ؛ برای (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 ؛ برای (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 ؛ برای (int i = 0؛ i <8؛ i ++) {LastLed ++؛ FirstLed-- ؛ leds [LastLed] = CRGB:: سیاه ؛ leds [FirstLed] = CRGB:: سیاه؛ تأخیر (250) ؛ FastLED.show ()؛ Serial.print ("خاموش کردن Led") ؛ 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 ("حلقه انتظار به پایان رسید")؛ }

توصیه شده: