فهرست مطالب:

ساعت کلمه رنگین کمان با جلوه رنگین کمان کامل و بیشتر: 13 مرحله (همراه با تصاویر)
ساعت کلمه رنگین کمان با جلوه رنگین کمان کامل و بیشتر: 13 مرحله (همراه با تصاویر)

تصویری: ساعت کلمه رنگین کمان با جلوه رنگین کمان کامل و بیشتر: 13 مرحله (همراه با تصاویر)

تصویری: ساعت کلمه رنگین کمان با جلوه رنگین کمان کامل و بیشتر: 13 مرحله (همراه با تصاویر)
تصویری: 😉 وقتی شوهرش سرکاره، ربات مرد تمام خواسته های زن را برآورده می کند 2024, نوامبر
Anonim
ساعت کلمه رنگین کمان با جلوه رنگین کمان کامل و موارد دیگر
ساعت کلمه رنگین کمان با جلوه رنگین کمان کامل و موارد دیگر

اهداف

1) ساده

2) گران نیست

3) تا حد امکان از نظر مصرف انرژی

ساعت واژه رنگین کمان با جلوه رنگین کمان کامل.

شکلک روی ساعت کلمه.

کنترل از راه دور IR ساده

03-nov-18 LDR را برای کنترل روشنایی نئوپیکسل ها به روز کنید

به روز رسانی 01-jan-19 کاهش مصرف برق WS2812B.

به روز رسانی 15-jan-19 شکلک.

به روز رسانی 23-ژان -19 کد 1.6

پیوندهای کتابخانه های 10-mar-19 را به روز کنید

به روز رسانی 14-apr-19 نسخه 1.7 انتخاب شکلک روشن/خاموش رنگین کمان رنگی/رفع enz.

آخرین به روز رسانی 01-jun-19 نسخه 2.0 کنترل از راه دور IR و طراحی مجدد کد

مرحله 1: محفظه ساعت

قاب برای ساعت
قاب برای ساعت
قاب برای ساعت
قاب برای ساعت
قاب برای ساعت
قاب برای ساعت

با برخی از ابزارهای ساده و کمی مهارت ، ساختن ساعت مچی سخت نیست

برای مورد من از یک نوار کاج خشن استفاده کردم که در آن چند قاب را اره کردم. این باعث می شود چهار طرف مورد ، که به هم چسبانده شده و با یک تکه چوب کوچک در گوشه ها تقویت شده است ، ساخته شود. سپس چوب نیاز به سنباده زنی و رنگ آمیزی دارد.

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

مرحله 2: نئوپیکسل ها

نئوپیکسل ها
نئوپیکسل ها
نئوپیکسل ها
نئوپیکسل ها
نئوپیکسل ها
نئوپیکسل ها
نئوپیکسل ها
نئوپیکسل ها

LED های Neopixels بر روی یک صفحه چوبی چیده شده اند. در این مرحله ابتدا سوراخ های 3 میلی متری ایجاد می کنید. در جلو آنها به اندازه حرف تا عمق 4/3 بزرگ می شوند. پس از آن 3 میلی متر در پشت به 10 میلی متر افزایش می یابد ، این اندازه یک نئوپیکسل است. برای برخی از کاراکترها از جمله W ، سوراخ باید کمی تنظیم شود.

من از تخته سه لا استفاده کردم که سریع پاره شد ، ممکن است MDF بهتر باشد.

با LED های جداگانه ، شما به یک فاصله ثابت متصل نیستید ، که در مورد نوارهای LED صادق است. LED ها باید به یکدیگر متصل شوند. شما می توانید این کار را با تمام قطعات کوتاه سیم انجام دهید. اما دو اتصال min (-) درست مانند دو اتصال plus (+) داخلی متصل هستند ، بنابراین همان اتصال.

با لحیم کاری یک تکه سیم به LED سمت چپ و سپس به LED سمت راست ، می توانید در کار زیادی صرفه جویی کنید. سپس قسمتهای میانی را لحیم کنید.

البته اتصال داده باید با قطعات کوتاه انجام شود ، زیرا خروجی داده به data-in می رود.

مرحله 3: تنظیم متن جلو

تنظیم متن جلو
تنظیم متن جلو
تنظیم متن جلو
تنظیم متن جلو
تنظیم متن جلو
تنظیم متن جلو

صفحه جلویی اکنون به زبان هلندی است ، اما به سادگی برای تبدیل به هر زبانی است.

چراغ های NeoPixels پی در پی در اینجا از 0-167 تغییر می کنند. شماره گذاری از ردیف اول در بالا سمت چپ به راست و سپس به ردیف دوم از راست به چپ و غیره می رود. تنظیم را می توان با توجه به نیاز خود انجام داد. تعداد NeoPixels بر اساس میزان کاراکترها تعیین می شود. نئوپیکسل های کمتر یا بیشتر را می توان در خط زیر تنظیم کرد

#تعریف NUMPIXELS 168 // چند NeoPixel به آردوینو وصل شده است؟

168 نسبت به یک عدد دیگر است. شماره گذاری از 0 شروع می شود. شما می توانید هر متنی را ایجاد کنید. اگر متن را تغییر دهید ، باید کلمات مربوطه را نیز تنظیم کنید. شماره گذاری همان است.

به عنوان مثال ، DRIE دقیقه ، در کد تعیین می شود

void zetmDrie () {

Led_Aan [56] = 1 ، Led_Aan [57] = 1 ، Led_Aan [58] = 1 ، Led_Aan [59] = 1 ؛ // min-drie

}

اگر می خواهید کلمه آردوینو را بسازید ، به این صورت است:

void zetArduino () {

Led_Aan [38] = 1 ، Led_Aan [50] = 1 ، Led_Aan [56] = 1 ، Led_Aan [93] = 1 ؛

Led_Aan [120] = 1 ، Led_Aan [135] = 1 ، Led_Aan [147] = 1 ؛ // Word-arduino

}

بنابراین می توانید بین آنها کلمات ایجاد کنید.

برای کلمات ساعت اگر یک کلمه مجاور را تشکیل دهند مفید است ، اما کاملاً ضروری نیست. حروف استفاده نشده نیازی به نئون پیکسل ندارند. همه آنها را برای استفاده از امکانات آینده به غیر از زمان نمایش داده شده پر کرده ام.

اگر نقطه شروع را تغییر دهید یا دنباله جانشینی را تغییر دهید ، شماره گذاری باید متناسب با آن تغییر کند.

مرحله 4: جلوه کامل رنگین کمان

جلوه کامل رنگین کمان
جلوه کامل رنگین کمان

اکنون ساعت به قدری برنامه ریزی شده است که تعداد دفعات در ثانیه شمارش تعداد نئوپیکسل های روشن شده وجود دارد.

طیف کل در مورد تعداد تقسیم شده و سپس کمی تغییر یافته است. در نتیجه ، هر Neopixel دارای رنگ متفاوتی است که به طور مداوم تغییر می کند. Neopixel nr 1 و nr 167 در برخی از رنگها شامل یکدیگر می شوند.

اگر رنگهای کمتر متفاوت را همزمان ترجیح می دهید ، تنظیم آن آسان است. رنگ هنوز در تمام طیف تغییر می کند ، اما قسمت کوچکتری از آن. Neopixel nr 1 و nr 167 دیگر در برخی از رنگها شامل یکدیگر نمی شوند.

روشنایی را می توان در خط زیر تنظیم کرد ،

pixels.setBrightness (150) ؛

عدد کوچکتر کمتر و تعداد بیشتر روشنایی بیشتر است.

مرحله 5: اجزای مختلف

اجزای مختلف
اجزای مختلف
اجزای مختلف
اجزای مختلف
اجزای مختلف
اجزای مختلف

اجزای زیر که من استفاده کردم

Arduino Pro Mini ATMEGA328 5V/16MHz

ماژول ساعت DS3231

168 عدد Neopixels led's WS2812 LED Chip & Heatsink 5V 5050 RGB WS2811 IC Built-in

شابلون فویل نامه

گیرنده DCF77

مرحله 6: کد برای ساعت

اینجا کد است. اضافه شدن کنترل روشنایی و خاموش شدن در زمان حضور هیچ کس و در شب.

اضافه شده RCWL-0516 سنسور حرکت مایکروویو رادار (جستجو برای RADAR)

پس از 10 دقیقه بدون حرکت ، NeoPixels خاموش می شوند.

در مورد نسخه 2.0

استفاده از حافظه بسیار زیاد بود و هشدارهای حافظه در کامپایلر تمام شد. به همین دلیل است که من کد را کاملاً تغییر داده ام ، اما عملیات به همان صورت باقی مانده و یک گیرنده IR اضافه شده است.

یک قطعه کد برای ارائه داده به EEPROM وجود دارد. این کد را یکبار با حذف موقت / * و * / اجرا کنید. عبارت => را یکبار جستجو کنید تا داده ها به EEPROM ارائه شود

در ابتدای حلقه خالی ، کدی برای خواندن کد از ریموت کنترل خود وجود دارد. می توانید با حذف موقت / * و * / این کار را انجام دهید ، فراموش نکنید که آنها را دوباره قرار دهید. همچنین می توانید دکمه های خود را تعریف کنید. کد خوانده شده باید وارد شود => دکمه های خود را در اینجا مشخص کنید

کنترل از راه دور سامسونگ بهتر از ساده (بسیار ارزان) کار می کند.

مرحله 7: توضیحات سخت افزار

توضیحات سخت افزار
توضیحات سخت افزار
توضیحات سخت افزار
توضیحات سخت افزار
توضیحات سخت افزار
توضیحات سخت افزار

نسخه های مختلفی از Arduino Pro Mini وجود دارد. لطفاً توجه داشته باشید ، ممکن است اتصالات متفاوت باشد.

سنسور حرکت مایکروویو RCWL-0516 اضافه شد.

تا زمانی که حرکتی در نزدیکی ساعت وجود داشته باشد ، NeoPixel روشن می ماند

و به محض اینکه دیگر حرکتی صورت نگرفت ، NeoPixel پس از چند دقیقه خاموش می شود.

در نسخه 2.0 ، گیرنده DCF77 از طریق پین 13 تغذیه می شود. این پین به عنوان خروجی تعریف می شود و هنگامی که روال DCF77 مورد بررسی قرار می گیرد ، بالا تنظیم می شود. گیرنده DCF77 از 0.28 میلی آمپر استفاده می کند و فقط چند دقیقه در روز مورد نیاز است.

خاموش کردن ذخیره ها

5 ولت * 0.28 میلی آمپر / 1000 * 24 ساعت * 365 روز * 1 / 0.85 منبع تغذیه کارآمد = 14.4 وات در سال.

این زیاد به نظر نمی رسد ، اما هر مقدار کمک می کند.

مرحله 8: LDR برای کنترل روشنایی نئوپیکسل ها

LDR برای کنترل روشنایی نئوپیکسل ها
LDR برای کنترل روشنایی نئوپیکسل ها
LDR برای کنترل روشنایی نئوپیکسل ها
LDR برای کنترل روشنایی نئوپیکسل ها

یک LDR برای کنترل روشنایی نئو پیکسل ها اضافه شده است.

من LDR را به فضای neopixel 103 چسبانده ام. این یکی در نمایش زمان استفاده نمی شود و بنابراین بر تنظیمات تأثیر نمی گذارد. کاغذ چراغ را از بین می برد ، اما مشکلی نیست.

تقسیم کننده ولتاژ مقاومت LDR و 20 اهم به A0 Arduino Pro Mini می رسد. ولتاژ نشان دهنده شدت نور است و بنابراین نشان دهنده میزان نوری است که نئوپیکسل ها باید به آن بدهند.

فرمولی که من استفاده می کنم به من کنترل نور خوبی می دهد ، بسته به شرایط می توان آن را تنظیم کرد. بسته به مقدار نور ، ولتاژ می تواند بین 0 تا 5 ولت متغیر باشد که به 0 تا 1024 عدد در "LDRValue" تبدیل می شود.

اگر مقدار اندازه گیری جدید بیشتر از آخرین مقدار محاسبه شده باشد ، شدت آن 1 افزایش می یابد ، اگر کمتر از 1 باشد و اگر برابر باشد هیچ کاری انجام نمی شود. برای اینکه مقدار به آهستگی پیش برود ، به طوری که هیچ اثر چشمک زنی وجود نداشته باشد ، فقط 1 عدد افزایش یا کاهش می یابد و چون محاسبه در حلقه است ، تنها پس از پیمایش حلقه 25 بار دوباره محاسبه می شود.

شدت از نظر تئوری حداقل 20 و حداکثر 1024/7 + 45 = 191 است. حداکثر مقداری که اندازه گیری کردم 902 بود که به شدت 173 می رسد. این با 150 که به عنوان مقدار پیش فرض تعیین کرده ام به خوبی مطابقت دارد. به (pixels.setBrightness (150) را ببینید)

در نسخه 2.0 می توانید کنترل را از طریق کنترل از راه دور تنظیم کنید. پارامترهای زیر اضافه شده است: Brightness_min به عنوان حداقل و Brightness_max به عنوان حداکثر تنظیمات و Brightness_Offset به عنوان پارامتر تنظیم. Brightness_min و _max مقادیری هستند که می توانند به موقعیت شما بستگی داشته باشند. Brightness_Offset مقداری است که می توان آن را با کنترل از راه دور تنظیم کرد و با آن روشنایی کم و بیش را تنظیم کرد.

همچنین یک نوار مرده 3 بین LDRValue اندازه گیری شده و مقادیر BerLDRValue محاسبه شده وجود دارد.

برای بررسی تنظیمات روشنایی از دستورات چاپ در void BrightnessControl استفاده کنید.

مرحله 9: کاهش مصرف برق WS2812B

کاهش مصرف برق WS2812B
کاهش مصرف برق WS2812B

درایورهای نئوپیکسل های آدرس پذیر WS2812B جریان را حتی زمانی که نئوپیکسل ها خاموش هستند ، در حالت فعلی قرار می دهند و روی رنگ 0 تنظیم شده اند (بدون عناصر نئوپیکسلی روشن است).

وقتی همه 169 نئوپیکسل بیرون هستند ، من 69 میلی آمپر را برای نئوپیکسل ها اندازه گیری می کنم. با فرض اینکه ساعت 12 ساعت در روز خاموش است ، کل خاموش می شود: 5 (منبع تغذیه ولت) * 69/1000 (میلی آمپر / 1000 = آمپر) * 12 (تعداد ساعت در روز) * 365 (تعداد روز در یک سال) = 1511 وات ساعت. بنابراین به طور سالانه 1.5 کیلووات ساعت. موافقم ، این به خودی خود زیاد نیست ، اما بسیاری از موارد کوچک یکی بزرگ را ایجاد می کنند.

مدار ساده است. بعلاوه منبع تغذیه توسط MosFet کانال P تغییر می کند. سنسور رادار روشن یا خاموش بودن نئوپیکسل ها را تعیین می کند. من دو پارلل MosFet را قرار داده ام تا مقاومت ON را به دلیل از دست دادن MosFets تا حد ممکن پایین نگه دارید. در استفاده عادی ، 4 ، 5 میلی ولت را بر روی MosFets اندازه گیری می کنم. دروازه با خروجی 4 از آردوینو از طریق مقاومت 470 اهم کنترل می شود. اگر خروجی به صورت دیجیتالی به پایین (0) برسد ، نئو پیکسل ها روشن و در حالت بالای (1) خاموش هستند.

مرحله 10: روی ساعت واژه لبخند بزنید

شکلک روی ساعت کلمه
شکلک روی ساعت کلمه
شکلک روی ساعت کلمه
شکلک روی ساعت کلمه

شکلک روی ساعت کلمه.

گاهی اوقات یک شکلک روی ساعت ظاهر می شود. با این حال ، این شما را خوشحال می کند.

شکلک توسط سنسور رادار فعال می شود. تعداد دفعات حرکت (قابل تنظیم) معیاری برای نشان دادن شکلک است. علائم٪ نشان می دهد که حرکت تشخیص داده شده است. با هر دهمین حرکت (قابل تنظیم) ، شکلک با صورت چشمکی ظاهر می شود و بعد از سه بار صورت چشمی چشمک زده برای چهارمین بار صورت خندان با زبان بیرون می آید.

شکلک یک تغییر کوچک در کد است.

مرحله 11: کدام کتابخانه ها مورد استفاده قرار می گیرند

کدام کتابخانه ها استفاده می شود.

من آنها را در ویندوز 7 با Arduino IDE 1.6 استفاده می کنم و همچنین در ویندوز 10 با Adruino IDE 1.8.8 آزمایش شده اند.

RTClib-master

Arduino-DS3231-master

Adafruit_NeoPixel-master

Arduino-DCF77-master

کتابخانه IRremote کن شریف

از آنجا که همیشه در مورد کتابخانه مورد استفاده سردرگمی وجود دارد ، من کتابخانه ای را که استفاده می کنم اضافه می کنم.

کتابخانه IRremote از حافظه زیادی استفاده می کند. در IRremote.h نشان داده شده است که می توانید هر پروتکل بلا استفاده را غیرفعال کنید

// هر پروتکلی که شامل می شوید هزینه حافظه و در حین رمزگشایی ، زمان را در بر می گیرد // همه پروتکل هایی را که نیازی ندارید/نمی خواهید غیرفعال کنید (روی 0 تنظیم کنید)!

من همه چیز را غیر از پروتکل NEC و سامسونگ غیرفعال کرده ام. این باعث ذخیره 10 memory حافظه می شود. در حال حاضر دیگر مشکلی از نظر میزان حافظه وجود ندارد ، بنابراین فعلاً غیرفعال کردن لازم نیست.

مرحله 12: کنترل از راه دور IR ساده

کنترل از راه دور IR ساده
کنترل از راه دور IR ساده
کنترل از راه دور IR ساده
کنترل از راه دور IR ساده
کنترل از راه دور IR ساده
کنترل از راه دور IR ساده

مجمع

همانطور که در عکس ها مشاهده می کنید ، سوراخ LED 132 کمی بزرگ است. من به خوبی از این استفاده کردم و گیرنده IR را به آن اضافه کردم. پین داده گیرنده IR VS1838 را به پین 7 آردوینو وصل کنید. بعلاوه منبع تغذیه مثبت و منفی را وصل کنید. گیرنده IR از 0.21 میلی آمپر استفاده می کند و همچنین می تواند پس از سوئیچ FET به منبع تغذیه اضافه متصل شود. این امر باعث می شود ، درصورتی که ساعت در 50٪ زمان باشد ، 5 ولت * 0.21 میلی آمپر / 1000 * 12 ساعت * 365 روز * 1 / 0.85 منبع تغذیه = 5.4 وات در سال صرفه جویی شود. این زیاد به نظر نمی رسد ، اما هر مقدار کمک می کند.

عملیات به شرح زیر است

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

پس از کنترل IR ، تعدادی LED برای اطلاعات روشن می شوند ، برای توضیح بیشتر بیشتر بخوانید و اولین تصویر را مشاهده کنید.

توضیحات مربوط به کنترل از راه دور ساده است ، اما می توانید از هر کنترل از راه دور استفاده کرده و کلیدهای خود را تعیین کنید. من از ریموت کنترل سامسونگ هم استفاده کردم.

چهار کلید اول مربوط به چهار ردیف بالا LED است. چهار LED بسته به تنظیمات به چپ یا راست بپیچد. هنگامی که کلیدهای 1 تا 4 را فشار می دهید ، حالت معکوس شده و در حافظه ذخیره می شود.

1 رنگ ثابت یا جلوه رنگین کمان

فلاش 2 ثانیه خاموش یا فلاش دوم روشن است

3 شکلک خاموش لبخند روی

4 DCF77 خاموش یا DCF77 روشن است

شماره کلید روی کلیدهای زیر نمایش داده می شود

5 شمارنده لبخند

6 طیف رنگین کمان

7 تنظیمات قرمز را برطرف کنید

8 تنظیم سبز را برطرف کنید

9 تنظیم آبی را برطرف کنید

ردیف 6 ، 7 و 8 LED ها در حال حاضر با مقدار تنظیم شده مطابقت دارد ، ردیف 6 واحدها ، ردیف 7 ده ها و ردیف 8 صد نشان می دهد. هر سطر با مقدار صفر شروع می شود. بنابراین اولین رهبری در ردیف 0 است ، دوم 1 است و غیره

0 تنظیم زمان

/\ تنظیم روشنایی

هنگامی که دکمه 0 را فشار می دهید ، LED های "ده" روشن می شوند تا نشان دهند که می خواهید زمان را تنظیم کنید و هنگامی که برای بار دوم 0 را فشار می دهید ، زمان تنظیم شده روی صفحه نمایش ظاهر می شود.

اکنون می توان زمان را تنظیم کرد و در صفحه نمایش داده می شود.

زمان صحیح را تنظیم کنید و سپس اگر دقیقه در ساعت مرجع یکسان است ، دکمه OK را فشار دهید.

زمان تنظیم می شود.

اگر از دکمه دقیقه یا ساعت استفاده نکنید ، تغییر زمان انجام نمی شود. اگر آنها را فشار دهید ، زمان بلافاصله تنظیم می شود.

مقدار کلیدهای 5 تا 9 را می توان با کلیدها تغییر داد

راست بعلاوه 1 است

سمت چپ منهای 1 است

جلو به علاوه 10 است

معکوس منهای 10 است.

و برای تنظیم زمان

سمت راست به علاوه 1 دقیقه است

سمت چپ منهای 1 دقیقه است

جلو 1 ساعت اضافه است

معکوس منهای 1 ساعت است

گاهی اوقات اتفاق می افتد که فشار کلید شناخته نمی شود یا دو بار انجام می شود. بنابراین اگر تنظیمات خوب پیش رفت توجه کنید در غیر این صورت دوباره امتحان کنید یا اصلاح کنید. کنترل از راه دور سامسونگ که من آن را نیز آزمایش کردم ، چندین برابر بهتر از کنترل از راه دور ساده (بسیار ارزان) کار می کرد.

هنگام تنظیم رنگ ، تغییر را مستقیماً در کل صفحه مشاهده می کنید. برای سایتی که نمای کلی رنگ ها را دارد ، به https://www.helderester.nl/kleurentabel.html مراجعه کنید. البته می توانید هر مقداری را تعیین کنید.

اگر مقدار طیف رنگین کمان 0 باشد طیف بسیار باریک است و صفحه نمایش دارای یک رنگ است که به طور مداوم تغییر می کند.

نقطه ضعف تعیین زمان به این ترتیب این است که شما نمی توانید انتقال تابستان / زمستان را محاسبه کنید زیرا ما تاریخ را نادرست داریم. برای خود ساعت مهم نیست زیرا ما در حال حاضر از آن استفاده نمی کنیم.

مرحله سیزدهم: بعدی چیست؟

چه مواردی بعد؟
چه مواردی بعد؟

در ادامه ، صدا ، اگر حافظه آزاد هنوز کافی است.

من قبلاً جعبه های بلندگو را دارم. آنها از یک لپ تاپ قدیمی هستند.

توصیه شده: