ورکشاپ آموزشی - آیسی مدار
رفتن به محتوا

ساعت دیجیتال جذاب با توپ پینگ‌پنگ و آردوینو

ابزار و گجت
۰ نظر
۸۳ نفر
کد ۴۴۵۸

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

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

پس دست به کار شو و ابزارهایی که تو قدم اول برات توضیح دادیم رو روی میز کارت آماده کن تا با هم بریم سراغ ساخت این ساعت نوری خیره‌کننده!

مرحله ۱

قطعات و ابزارهای مورد نیاز پروژه

قطعات الکترونیکی و مکانیکی

برای شروع، به یه ورق MDF با ابعاد حدود 80 در 30 سانتی‌متر و چند تکه چوب برای ساخت قاب نیاز داری (با عرض 5 سانتی‌متر و طول کل حداقل 2 متر). ستاره‌های اصلی این پروژه 128 تا توپ پینگ‌پنگ هستن. علاوه بر این‌ها، 4 تا میخ کوچیک، یه کابل USB قدیمی برای تامین برق، یه کابل برق معمولی و یه آداپتور 5 ولت 10 آمپر قدرتمند (مدل‌های با آمپر کمی پایین‌تر هم ممکنه جواب بدن) لازم داریم.

قطعات الکترونیکی شامل یه برد آردوینو Nano، یه حلقه 5 متری نوار ال‌ای‌دی مدل WS2812B با تراکم 30 ال‌ای‌دی در متر (استاندارد IP30)، ماژول ساعت دقیق DS3231، مقداری سیم سه‌رشته، پین هدر مادگی و یه مقاومت بین 300 تا 500 اهم می‌شه.

ابزارها و نکات مهم خرید

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

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

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

مرحله ۲

سوراخ کردن توپ‌های پینگ‌پنگ

پشت هر توپ پینگ‌پنگ قراره یه ال‌ای‌دی قرار بگیره. برای اینکه بیشترین حجم نور به داخل توپ بتابه، باید یه تیکه از پشت توپ رو ببریم. چون ال‌ای‌دی‌ها دقیقا تو مرکز توپ قرار نمی‌گیرن، این سوراخ باید نسبتا بزرگ (حدود 30 میلی‌متر) باشه.

چون توپ‌های پینگ‌پنگ خیلی ظریفن و راحت له می‌شن، بریدنشون روی هوا سخته و به یه تکیه‌گاه نیاز دارن. بهترین راه اینه که با مته گردبر 32 میلی‌متری، یه سوراخ روی یه تیکه MDF باطله ایجاد کنی و ازش به عنوان پایه استفاده کنی.

حالا توپ رو بذار روی این سوراخ و با یه دست فشارش بده تا محکم سر جاش بمونه. چون قطر سوراخ حدود 8 میلی‌متر کوچیک‌تر از قطر توپه، توپ کامل داخلش نمی‌ره و فقط کیپ می‌شه. با دست دیگه و یه اره دستی با دندانه‌های ریز، قسمت بالایی توپ رو دقیقا مماس با سطح چوب ببر.

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

نگران یکی دو میلی‌متر اختلاف تو سایز سوراخ‌ها نباش؛ چون در نهایت این قسمت‌ها پشت قاب پنهان می‌شن و اصلا به چشم نمیان.

مرحله ۳

چسباندن توپ‌ها در ردیف‌های منظم

بعد از اینکه پشت همه توپ‌ها رو بریدی، وقتشه که اون‌ها رو به صورت ردیفی به هم بچسبونی. ما به دو ردیف 17 تایی، یه ردیف 18 تایی، یه ردیف 19 تایی و یه ردیف 20 تایی نیاز داریم. این ردیف‌ها باید کاملا صاف باشن و هیچ فاصله‌ای بین توپ‌ها نیفته. برای این کار می‌تونی از همون چوب‌هایی که برای قاب خریدی به عنوان تکیه‌گاه استفاده کنی.

توپ‌ها رو بین دو تا تیکه چوب قرار بده تا خیالت از بابت تو یه خط بودنشون راحت بشه. سوراخ‌ها رو رو به بالا تنظیم کن و با یه قطره خیلی کوچیک چسب، توپ‌ها رو به هم متصل کن. همین مقدار کم چسب کاملا کافیه.

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

مرحله ۴

اتصال ردیف‌ها به یکدیگر

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

هر بار حدود 8 نقطه اتصال رو چسب بزن و با دستت ردیف‌ها رو به هم فشار بده تا کاملا کیپ بشن و هیچ درزی بینشون باقی نمونه. این کار رو با دقت تکرار کن تا پنلت یکپارچه بشه.

مرحله ۵

ساخت قاب چوبی دور ساعت

قاب این ساعت از 6 قطعه چوب تشکیل شده؛ 2 تا قطعه بلند و 4 تا قطعه کوتاه. لبه‌های همه این چوب‌ها باید با زاویه 60 درجه برش بخورن تا فرم نهایی به دست بیاد.

چون قطر توپ‌های پینگ‌پنگی که من خریدم دقیقا 40 میلی‌متر نبود (حدود 39.5 میلی‌متر بود)، باید طول دقیق چوب‌ها رو حساب می‌کردم (با کمک فرمول‌های ساده هندسی). با محاسبه من، طول داخلی 2 قطعه بلند باید 66.3 سانتی‌متر و طول داخلی 4 قطعه کوتاه باید 14.3 سانتی‌متر باشه.

چون اره‌ای که داشتم خیلی دقیق نبود، سعی کردم چوب‌ها رو یکی دو میلی‌متر بلندتر ببرم تا بعدا به مشکل کوتاهی قاب برنخورم. بعد از بریدن هر 6 قطعه، اونا رو دور پنل توپ‌ها چیدم تا ببینم درست چفت می‌شن یا نه. چون یکم بلند بودن، چند میلی‌متر ازشون رو دوباره اره کردم.

در نهایت، چوب‌ها رو دور همون پنل توپ‌ها به هم چسبوندم تا مطمئن بشم قاب دقیقا فرم پنل رو به خودش گرفته؛ این کار ضروری بود چون زاویه‌ها دقیقا 60 درجه درنیومده بودن و بیشتر شبیه 59.5 درجه بودن.

مرحله ۶

آماده‌سازی و لحیم‌کاری نوارهای LED

تو این مرحله باید نوار ال‌ای‌دی رو به قطعات مختلف تقسیم کنی. ما به یه تیکه 1 تایی، یه تیکه 3 تایی، یه 5 تایی و 17 تا تیکه 7 تایی نیاز داریم. این نوارها باید دقیقا طبق الگو به هم لحیم بشن؛ یعنی اول یه تیکه 1 تایی، بعد 5 تایی، بعد 17 تا نوار 7 تایی و در آخر نوار 3 تایی.

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

مرحله ۷

برش تخته پشتی (MDF)

وقتی قاب چوبی آماده شد، اون رو به همراه پنل توپ‌ها روی تخته MDF که ال‌ای‌دی‌ها رو روش چسبونده بودیم قرار بده. یه بار دیگه چک کن که هر ال‌ای‌دی دقیقا سر جای خودش باشه و بعد پنل توپ‌ها رو بردار. حالا با یه مداد، لبه‌های داخلی قاب چوبی رو روی MDF بکش تا فرم برشت مشخص بشه.

دلیل این کار اینه که ال‌ای‌دی‌ها دقیقا تو مرکز توپ‌ها نیستن و با این روش، موقعیت دقیق نوارها نسبت به قاب حفظ می‌شه. چسب نواری نوارها رو باز کن، تخته رو با اره برش بزن و لبه‌هاش رو سنباده بکش تا نرم بشه و راحت داخل قاب چوبی جا بره. نکته مهم: یادت باشه که جایگاه ال‌ای‌دی‌ها نسبت به مرکز توپ‌ها کمی انحراف داره، پس حتما طبق نقشه و با دقت پیش برو.

مرحله ۸

سوراخ‌کاری و نصب نهایی LEDها روی تخته

سیم‌هایی که ستون‌های ال‌ای‌دی رو به هم وصل می‌کنن، اگه روی کار بمونن خیلی تو ذوق می‌زنن و از جلوی ساعت دیده می‌شن. برای مخفی کردنشون، باید بالا و پایین هر ستون روی تخته MDF یه سوراخ دریل کنی تا سیم‌ها بتونن برن پشت تخته.

سیم‌ها رو از سوراخ‌ها رد کن و موقتا چسب بزن. یه بار دیگه پنل رو چک کن تا مطمئن بشی تراز هستن. وقتی همه‌چیز عالی بود، با کندن روکش چسب پشت نوار ال‌ای‌دی، اونا رو محکم و دائمی روی تخته MDF بچسبون. نکته: موقع دریل کردن MDF خیلی با احتیاط عمل کن، چون این چوب خیلی زود لب‌پر می‌شه یا می‌شکنه.

مرحله ۹

چسباندن پنل توپ‌ها به قاب اصلی

حالا پنل یکپارچه توپ‌های پینگ‌پنگ رو برعکس داخل قاب چوبی قرار بده تا کاملا جا بیفته. هر جایی که توپ‌ها با لبه‌های داخلی قاب چوبی تماس دارن (یا خیلی نزدیکش هستن) رو با دقت چسب بزن. این کار باعث می‌شه کل ساختار محکم بشه و توپ‌ها تکون نخورن.

مرحله ۱۰

نصب تخته LED به پشت قاب

تخته MDF که ال‌ای‌دی‌ها روش نصب شدن رو بردار و دقیقا پشت توپ‌ها قرار بده. برای محکم کردن این تخته به قاب چوبی، از 4 تا میخ کوچیک استفاده کن و اونا رو از لبه‌های داخلی قاب به تخته بکوب.

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

مرحله ۱۱

راه‌اندازی مدار و اتصالات الکترونیکی

مدار این پروژه خیلی ساده و سرراست طراحی شده تا هر کسی بتونه بسازتش. اول پین هدرهای مادگی رو به برد آردوینو Nano لحیم کن. انجام این کار ضروری نیست اما بهت کمک می‌کنه کار تمیزتر دربیاد.

مزیت استفاده از پین هدر اینه که اگه بعدا خواستی دکمه‌ای اضافه کنی، یا یه سنسور نوری (LDR) بذاری تا نور ساعت تو شب کم بشه، می‌تونی خیلی راحت ماژول‌ها رو به برد متصل یا ازش جدا کنی.

حالا ماژول ساعت رو به آردوینو وصل کن؛ دقت کن که پایه‌های SDA و SCL ماژول دقیقا به پایه‌های همنام روی آردوینو متصل بشن. یه مقاومت هم بین پین 9 آردوینو و سیم دیتای (Data in) نوار ال‌ای‌دی قرار بده.

در نهایت، دو رشته سیم تغذیه رو به انتهای نوار ال‌ای‌دی هم وصل کن تا برق از هر دو طرف جریان داشته باشه و دچار افت ولتاژ و کم‌نور شدن انتهای نوار نشی. به همین سادگی!

برای تامین برق کل سیستم، یه کابل USB رو از وسط نصف کن. سیم 5 ولت و گراند رو هم به آردوینو، هم به ابتدای نوار ال‌ای‌دی و هم به کابلی که از سمت آداپتور میاد وصل کن. اینطوری جریان اصلی مستقیم به ال‌ای‌دی‌ها می‌رسه و آردوینو فقط دیتای کنترلی رو می‌فرسته.

از یه کابل برق محکم برای اتصال آداپتور 10 آمپر به مدار استفاده کن. یه سوراخ هم زیر قاب دریل کن تا کابل برق تمیز ازش خارج بشه. حالا ساعتت هم می‌تونه روی میز بایسته و هم خیلی شیک روی دیوار نصب بشه. دیگه کار فیزیکی تموم شد؛ بریم سراغ بخش نرم‌افزار و کدنویسی!

مرحله ۱۲

آپلود کدها روی آردوینو

نکته طلایی اینه که موقع آپلود کد، حتما آداپتور تغذیه خاموش باشه! اول از همه باید زمان دقیق رو به ماژول ساعت بشناسونی. با اضافه کردن یه کتابخونه ساده و اجرای کدهای تنظیم زمان، ساعت آردوینو دقیقا با ساعت کامپیوترت سینک می‌شه و از این بابت خیالت راحت می‌شه.

حالا می‌تونی کدهای اصلی ساعت رو بنویسی. برای راه‌اندازی این نمایشگر، از دو تا کتابخونه خیلی کاربردی یعنی FastLED و DS3232RTC استفاده می‌کنیم.

این دو تا کتابخونه بیشتر کارهای سنگین رو برات انجام می‌دن و باعث می‌شن حتی اگه تجربه زیادی تو برنامه‌نویسی نداشته باشی، خیلی راحت بتونی پروژه رو بالا بیاری. تو کدهای این پروژه، رنگ‌ها و پس‌زمینه رنگین‌کمانی به صورت پیش‌فرض تنظیم شدن تا یه افکت فوق‌العاده جذاب روی توپ‌ها ایجاد بشه.

اساس کار کدها خیلی ساده‌ست؛ زمان از ماژول RTC خونده می‌شه و روی پیکسل‌ها به نمایش درمیاد. جایگاه دقیق LEDهایی که باید برای نمایش هر عدد روشن بشن، داخل یه ماتریس تعریف شده. مثلا ردیف اول این ماتریس دقیقا مشخص می‌کنه که کدوم ال‌ای‌دی‌ها باید روشن بشن تا عدد صفر روی ساعت شکل بگیره.

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

مرحله ۱۳

ایده‌پردازی و ارتقای ساعت هوشمند

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

اگه یه روزی آردوینو رو با یه برد ESP جایگزین کنی، می‌تونی ساعتت رو به وای‌فای متصل کنی و وضعیت آب‌وهوا رو هم روش نمایش بدی.

حالا نوبت توئه که خلاقیتت رو به کار بگیری و این ساعت رو کاملا شخصی‌سازی کنی. وقتی پروژه‌ات کامل شد، حتما یه ویدیو از افکت‌های نوری جذابش بگیر و برای پیج اینستاگرام آیسی‌مدار بفرست تا ما هم از دیدن نتیجه دست‌رنجت لذت ببریم. موفق باشی!

فایل‌های پیوست

INO checkIfLedsAreBehindBalls.ino
INO SetTime_on_ds3231_nano.ino
INO FastledExampleCode.ino

تو میتونی اولین سازنده باشی!

اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر

این آموزش با استانداردهای اختصاصی آیسی‌مدار بازنویسی و بهینه‌سازی شده و تمامی حقوق انتشار آن متعلق به این مجموعه است و در صورت کپی یا بازنشر پیگرد قانونی خواهد داشت.

آموزش‌های مشابه

گفتگو‌های کاربران

هنوز نظری ثبت نشده؛ تو شروع کن!