فهرست مطالب:
تصویری: LightMeUp! a Realtime Cross-platformed LED Strip Control: 5 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:53
LightMeUp! سیستمی است که من برای کنترل RGB LED-Strip در زمان واقعی اختراع کردم ، در حالی که هزینه را پایین و عملکرد را بالا نگه می داشت.
سرور در Node.js نوشته شده است و بنابراین قابل اجرا در سراسر جهان است.
در مثال من ، من از Raspberry Pi 3B برای استفاده طولانی مدت استفاده می کنم ، اما از رایانه شخصی Windows خود به خاطر تظاهرات و اشکال زدایی استفاده می کنم.
نوار 4 پین توسط یک برد آردوینو نانو کنترل می شود ، که دستورات پی در پی را برای ارسال سیگنال های PWM به سه ترانزیستور اجرا می کند که +12VDC را به پین رنگ مربوطه تبدیل می کند.
LightMeUp! سیستم همچنین دمای خود را بررسی می کند ، هنگامی که بیش از 60 درجه سانتی گراد (140 درجه فارنهایت) است ، دو فن کامپیوتر 12VDC تعبیه شده در بدنه را روشن می کند تا خود را خنک کند تا طول عمر مدار بهبود یابد.
یکی دیگر از ویژگی های LightMeUp! این است که یک بطری Bombay-Sapphire Gin را روشن کنید ، اما این دستورالعمل مورد توجه نیست.
از خواندن لذت ببرید:)
تدارکات
- آردوینو نانو (یا هر میکروکنترلر ATmega328 / بالاتر)
- Raspberry Pi 3 Model B با نصب Node.js (یا هر رایانه دیگر)
- نوار LED 12 ولت RGB 4 پین
- منبع تغذیه 12 ولت 3 آمپر
- کابل های جامپر (البته اگر از تخته نان استفاده می کنید مرد یا مرد)
- تخته نان (اختیاری)
- 2 فن کامپیوتر 12 ولت DC (اختیاری)
- 3x TIP120 ترانزیستور دارلینگتون بدون هیت سینک (4 عدد اگر می خواهید پنکه های خنک کننده را نیز وارد کنید)
- 2 LED وضعیت قرمز و سبز (اختیاری)
- 6 ، مقاومت 7K NTC مبتنی بر دما + 6 ، مقاومت 7K (اختیاری)
- کابل داده USB-Mini به USB 2.0 (برای ارتباط رزبری پای با آردوینو)
- USB-Hub دارای منبع تغذیه خارجی (اختیاری ، فقط برای رزبری پای)
مرحله 1: درک سیستم
LightMeUp! بر اساس مدارهای الکترونیکی بسیار ساده است.
ما یک نوع کامپیوتر (در این مورد Raspberry Pi) داریم که به صورت سری با برد میکروکنترلر ما ارتباط برقرار می کند. این برد سپس دستورات سریال خاصی مانند "RGB (255 ، 255 ، 255)" را اجرا می کند که LED-Strip ما را سفید می کند.
هنگامی که سه مقدار خود را برای RED ، GREEN و BLUE لازم برای LED-Strip 4pin دریافت کردیم ، analogWrite (پین ، مقدار) را برای تأمین ترانزیستور TIP120 خود با سیگنال PWM اجرا می کنیم.
این سیگنال PWM به ترانزیستور اجازه می دهد تا پین رنگ مربوطه را که جمع کننده آن به زمین متصل است ، به میزان خاصی یا به طور کامل روشن / خاموش کند. بله ، تعداد زیادی "به":)
با ترکیب سه خروجی ترانزیستور با پین های رنگی نوارهای LED می توانیم اساساً هر رنگی را که می خواهیم ایجاد کنیم!
اکنون با این درک ، می توانیم به بزرگترین چالش این پروژه ، وب سرور و اتصال سریال آن به آردوینو ، حمله کنیم.
مرحله 2: نوشتن WebSocketServer
در حال حاضر ، ما باید نوع خاصی از وب سرور را ایجاد کنیم که به ما اجازه می دهد داده ها را بدون بارگذاری مجدد به جلو و عقب انتقال دهیم تا به یک کنترل نوار LED در زمان واقعی دست پیدا کنیم.
لطفاً توجه داشته باشید که ارتباطات در زمان واقعی البته غیرممکن است ، همیشه حداقل چند میلی ثانیه تاخیر وجود خواهد داشت ، اما برای چشم انسان به عنوان زمان واقعی قابل توجه است.
اگر مانند من از Node.js استفاده می کنید ، می توانید با استفاده از کتابخانه socket.io به راحتی این کار را انجام دهید. با این حال ، البته شما همیشه می توانید به زبان برنامه نویسی مورد علاقه خود پایبند باشید.
ما با یک اتصال شبکه در ارتباط خواهیم بود که به ما امکان می دهد داده های ورودی مانند نوار LED را بر روی کدام رنگ و یا داده های وضعیتی مانند "LED روشن" را به صورت دو طرفه بدون تازه سازی منتقل کنیم.
یکی دیگر از ویژگیهای بسیار مهم که سرور باید داشته باشد اما نیازی به آن نیست یک ورود ساده است. من ورود خود را بر اساس یک نام کاربری و رمز عبور ساده انجام دادم. این قطعات اطلاعات سپس در مسیر /ورود به سرور ارسال می شوند و سپس نام کاربری را با لیستی از کاربران (فایل.txt) و رمز عبور مربوطه در شکل رمزگذاری شده SHA256 مقایسه می کند. شما نمی خواهید همسایه ها با نوار LED شما درگیر شوند در حالی که از نوشیدنی مورد علاقه خود بر روی راحت ترین صندلی خود لذت می برید ، درست است؟
در حال حاضر قلب سرور ، ارتباط سریال می آید.
سرور شما باید بتواند به صورت سری ارتباط برقرار کند - در Node.js این امر با باز کردن پورت با استفاده از کتابخانه "serialport" قابل دستیابی است. اما ابتدا نام پورت arduino خود را در رایانه خود که میزبان سرور است تعیین کنید. بسته به سیستم عامل شما ، پورت ها نام های متفاوتی خواهند داشت ، a.e. در ویندوز این پورت ها پورت های "COMx" و در لینوکس آنها "/dev/ttyUSBx" نامیده می شوند ، جایی که x تعداد پورت USB است.
مرحله 3: ایجاد پروتکل دستورات سریال
در تصویر بالا ، کد واقعی Arduino IDE که مسئول کنترل RGB است را مشاهده می کنید. هدف این مرحله این است که سرور خودکار و برد آردوینو خود را با موفقیت با یکدیگر صحبت کنید.
هنگامی که پورت سریال خود را با موفقیت باز کردید ، باید بتوانید دستوراتی را به هیئت مدیره ارسال کنید که به خواسته های شما رسیدگی می کند. به عنوان مثال ، اگر در صفحه وب HTML انگشتی را در بالای انتخاب کننده رنگ بکشیم ، کد RGB باید به سرور ارسال شود و سپس آن را به Arduino شما ارسال می کند تا مقادیر تعیین شده را پردازش کند.
من از jscolor استفاده کردم ، آنها از یک عنصر انتخاب رنگ با کیفیت بالا استفاده می کنند ، که دارای یک رویداد به نام "onFineChange" است که به شما امکان می دهد داده های پردازش خود را به محض تغییر مقادیر رنگ انتخاب کنید.
توصیه شده:
RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control: 6 مرحله (همراه با تصاویر)
RGB Led Strip Bluetooth Controller V3 + Music Sync + Ambient Light Control: این پروژه از آردوینو برای کنترل نوار LED RGB با تلفن شما از طریق بلوتوث استفاده می کند. می توانید رنگ را تغییر دهید ، چراغ ها را با موسیقی همگام سازی کنید یا آنها را به طور خودکار برای روشنایی محیط تنظیم کنید
ESP8266 RGB LED STRIP WIFI کنترل - NODEMCU به عنوان یک کنترل از راه دور IR برای نوار LED کنترل شده بر روی Wifi - کنترل تلفن هوشمند RGB LED STRIP: 4 مرحله
ESP8266 RGB LED STRIP WIFI کنترل | NODEMCU به عنوان یک کنترل از راه دور IR برای نوار LED کنترل شده بر روی Wifi | RGB LED STRIP Smartphone Control: سلام بچه ها در این آموزش می آموزیم که چگونه از nodemcu یا esp8266 به عنوان ریموت IR برای کنترل نوار LED RGB استفاده کنید و Nodemcu توسط تلفن هوشمند از طریق وای فای کنترل می شود. بنابراین اساساً می توانید RGB LED STRIP را با تلفن هوشمند خود کنترل کنید
نحوه ایجاد جلوه های شگفت انگیز RGB LED Strip Circuit: 6 مرحله (همراه با تصاویر)
نحوه ایجاد جلوه های شگفت انگیز RGB LED Strip Circuit: سلام دوست عزیز ، امروز می خواهم یک مدار بسازم که نوار LED را کنترل می کند. این مدار جلوه های شگفت انگیزی از نوار LED را ایجاد می کند. این مدار بسیار آسان و ارزان است. ما فقط به 3- نیاز داریم RGB LED. بیایید شروع کنیم ،
رمز ارز رمزنگاری / شمارنده مشترک یوتیوب Realtime: 6 مرحله (همراه با تصاویر)
Cryptocurrency Ticker / Realtime Youtube Subscriber Counter: واحد صفحه نمایش LED فشرده که به عنوان تیک تیک ارزهای رمزنگاری شده عمل می کند و به عنوان پیشخوان مشترک کاربران YouTube در زمان واقعی عمل می کند. در این پروژه ، ما از Raspberry Pi Zero W ، برخی از قطعات چاپ سه بعدی و چند واحد نمایش حداکثر 7219 استفاده می کنیم. برای ایجاد یک زمان واقعی
دوربین IR IR/Cross Trigger: 5 مرحله (همراه با تصاویر)
Cross IR IR Beamamera/Flash Trigger: این دستگاه باعث می شود که یک دوربین یا واحد فلش هنگام ورود یک شی (هدف) به یک مکان خاص به طور خودکار عکس بگیرد. از دو پرتو مادون قرمز متقاطع برای تشخیص وجود هدف و بستن رله ای که به سمت جلو می رود استفاده می کند