فهرست مطالب:
- مرحله 1: تابلوی نمونه اولیه
- مرحله 2: Arduino UNO
- مرحله 3: اتصال نوار LED به چوب
- مرحله 4: توسعه آینده
- مرحله 5: پست اسکریپت: 2 نوار
تصویری: ساعت خطی با استفاده از Arduino + DS1307 + Neopixel: استفاده مجدد از برخی سخت افزارها: 5 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:57
در پروژه های قبلی ، من یک Arduino UNO و یک نوار LED Neopixel داشتم و می خواستم چیزی متفاوت ایجاد کنم. از آنجا که نوار Neopixel دارای 60 چراغ LED است ، تصور می شود از آن به عنوان یک ساعت بزرگ استفاده می کند.
برای نشان دادن ساعت ها ، از یک قسمت 5 LED قرمز استفاده می شود (60 LED / 12 بخش = 5 LED). دقیقه ها با یک LED سبز رنگ و ثانیه ها با یک LED آبی نشان داده می شوند.
من یک تخته DS1307 Real Time Clock را اضافه کردم تا بتوانم زمان تغذیه نکردن آردوینو را حفظ کنم.
این نوار LED Neopixel 60 است: https://www.adafruit.com/product/1138 و این برد DS1307:
در ابتدا قرار بود نوار LED روی دیوار اتاق غذا آویزان شود ، اما دخترانم به من گفتند که آن را به یک تکه چوب از پالت وصل کن ، بنابراین آنها اعداد را کشیدند و به چوب چسباندند.
مرحله 1: تابلوی نمونه اولیه
در اینجا شما مدار را برای اجرا و BOM دارید.
اگر از برد DS1307 RTC استفاده نمی کنید ، کار نمی کند. هنگامی که آردوینو روشن نیست ساعت و دقیقه تنظیم مجدد می شود زیرا این برد RTC داخلی ندارد.
برد نمونه اولیه به حفظ RTC DS1307 ، چند مقاومت و دکمه در محل کمک می کند.
مقداری لحیم کاری و کابل کشی مورد نیاز است.
دکمه "H" با فشار دادن ساعت را افزایش می دهد. دکمه "M" دقیقه را افزایش می دهد. با فشردن هر دکمه ثانیه ها بازنشانی می شوند.
پس از 6 ماه کار مداوم ، 2 دقیقه تاخیر وجود داشت (به نظر من نسبتاً خوب است).
مرحله 2: Arduino UNO
من از یک کلون قدیمی آردوینو و چند پین برای اتصال نمونه اولیه استفاده کردم.
کد آردوینو را می توانید در آدرس زیر بیابید:
github.com/Giroair/Linear-Clock-Arduino/bl…
آردوینو را با استفاده از کراوات پلاستیکی به تکه چوب وصل کنید.
3 کابل را به نوار Neopixel لحیم کنید (احتیاط: از نوار یا اتصال جداکننده استفاده کنید).
در این پروژه آردوینو از یک شارژر USB استاندارد 5V 1A تغذیه می کند.
اطلاعات برای توسعه دهندگان: Neopixel از پین 5 ولت Arduino UNO تغذیه می کند زیرا فقط 7 LED به طور همزمان روشن است. اگر قصد دارید LED های بیشتری را روشن کنید (که برای نمایشگرهای جذاب تر مناسب خواهد بود) ، Neopixel را از منبع خارجی 5 ولت تغذیه کنید. در این حالت ، منبع GND را به پین GND برد برد آردوینو وصل کنید.
تغذیه منبع تغذیه خارجی و قابل اعتماد Arduino به پین 5 ولت نیز یک گزینه است.
مرحله 3: اتصال نوار LED به چوب
از 3 بند پلاستیکی برای نگه داشتن نوار در محل استفاده شده است. مراقب باشید هیچ LED را نپوشانید.
برخی از ورق ها به چوب چسبانده شده و اعداد را رنگ آمیزی کردند.
اعداد قرمز نشان دهنده ساعت است. خطوط هر 5 LED کشیده می شود.
اعداد سبز نشان دهنده دقیقه است. توجه داشته باشید که اولین LED اولین دقیقه را نشان می دهد و آخرین نشان دهنده دقیقه 60 است.
مرحله 4: توسعه آینده
چند ایده از این پروژه:
1.- اعداد موجود در چوب را با استفاده از اسکنه حک کنید و آن را رنگ آمیزی و لاک بزنید.
2.- اعداد Hours را در یک طرف و اعداد Minutes را در طرف دیگر بکشید.
3.- از 2 نوار LED پشت به پشت استفاده کنید: یکی رو به چپ برای Hours و دیگری رو به راست برای چند دقیقه.
4-- با بخشها و رنگهای مختلف آزمایش کنید: تخیل محدودیت دارد (به شما توصیه می شود از برق 5 ولت خارجی برای نوار Neopixel استفاده کنید).
5.- به طور متناوب ساعت و دقیقه را نمایش دهید.
6.- نوار LED را به بخشها تقسیم کرده و یک ماتریس LED 7x8 برای نشان دادن اعداد و کاراکترهای دیجیتال بسازید.
7.- نور را کم کنید: از LDR یا فوتودیود برای کم کردن خودکار نور استفاده کنید.
8.- برای دریافت زمان از سرور به ابر متصل شوید.
9.- فعال کردن زنگ هشدار: هنگامی که تماس های تلفنی یا توییت ها دریافت می شود ، نوار چشمک می زند یا زنگ ساعت تنظیم می شود.
10.-…. فقط به من خبر بده!
مرحله 5: پست اسکریپت: 2 نوار
من فایل "neopixel_invers_2_strips.ino" را در https://github.com/Giroair/Linear-Clock-Arduino گذاشتم
در نظر گرفته شده است که یک نوار برای نشان دادن ساعتهای متصل به پین شماره 6 و نوار دوم برای نشان دادن دقیقه/ثانیه متصل به پین 7 کنترل شود.
هر دو 5V DC و Ground نوارها به یک منبع متصل هستند.
سلب مسئولیت: تا زمانی که 2 نوار نداشته باشد نمی توان آن را آزمایش کرد. اگر آن را آزمایش می کنید ، لطفاً اشکالات را گزارش دهید یا تأیید کنید که خوب کار می کند.
متشکرم.