فهرست مطالب:

ساعت Ish: 5 مرحله (همراه با تصاویر)
ساعت Ish: 5 مرحله (همراه با تصاویر)

تصویری: ساعت Ish: 5 مرحله (همراه با تصاویر)

تصویری: ساعت Ish: 5 مرحله (همراه با تصاویر)
تصویری: دوربین مخفی پیشنهاد سک.س دختر قبول کرد با ۶۰۰یورو باهام بیاد فوق سمی prank 2024, جولای
Anonim
Image
Image
جمع آوری قطعات و کارهای چوبی
جمع آوری قطعات و کارهای چوبی

من اغلب خودم را در حال خرید چیزهایی می دانم که نمی دانم با آنها چه می کنم. این پروژه در نتیجه خرید حلقه ای است که دارای 12 برابر LED های WS2812b است. من هیچ برنامه ای برای آن نداشتم ، اما آنلاین به نظر می رسید جالب است ، بنابراین من آن را در سبد خریدم قرار دادم ، وقتی وارد شد مدتی با آن بازی کردم و سپس همه چیز را فراموش کردم.

مدتی بعد به ساخت ساعت فکر می کردم و یادم آمد آنجا نشسته بود و کاری نمی کرد. من در مورد خرید حلقه دوم با 60 LED روشن برای جبران دقیقه فکر می کردم ، اما سپس شروع به فکر کردم که ما / من چگونه تمایل داریم در آن زمان نگاه کنیم و آن را به نزدیکترین 5 دقیقه نزدیک کنیم.

با استفاده از این در حلقه من با حلقه 12 LED خود راه افتادم تا ساعت قدیمی را بسازم. نمایش 1 LED به طور همزمان برای 1 ثانیه ، برای نشان دادن ساعت (LED آبی) و سپس دقیقه (LED قرمز) به پایین

مرحله 1: جمع آوری قطعات و کارهای چوبی

جمع آوری قطعات و چوب کار
جمع آوری قطعات و چوب کار
جمع آوری قطعات و کارهای چوبی
جمع آوری قطعات و کارهای چوبی
جمع آوری قطعات و چوب کار
جمع آوری قطعات و چوب کار

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

این پروژه از یکی از قطعات آن پالت ساخته شده است. (قبل از اینکه آن را به خانه ببرم از رئیس پرسیدم)

همچنین استفاده می شود:

  • حلقه LED 12 پیکسلی ws2812b
  • ماژول ساعت واقعی (RTC) (از DS3231 با I2C استفاده می کنم)
  • سازگار با آردوینو نانو v3.0
  • ورق اکریلیک (5 میلی متر)
  • سیم رنگی

ابزارها

  • مته قدرت
  • روتر
  • بیت چوبی تخت قابل تنظیم
  • دستگاه ساینده برق
  • اره دستی
  • آهن لحیم کاری
  • چسب حرارتی تفنگی
  • سمباده
  • نفت دانمارکی

سنباده زنی

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

علامت گذاری و برش سوراخ ها

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

مسیریابی و سوراخ های کابل

با استفاده از روتر خود با بیت 12 میلی متری ، یک سوراخ را در پایین بلوک قرار دادم تا RTC و آردوینو پنهان شود. عمق آن حدود 15 میلی متر است و از هر لبه کمتر از 5 میلی متر نیست. من مرکز (ish) را از پایین علامت گذاری کردم و با استفاده از یک بیت 10 میلی متری فقط نیمه راه را حفاری کردم تا سیم های LED را مجاز کنم. سپس با استفاده از یک بیت 5 میلی متری از مرکز حفره LED حفاری کردم تا سوراخ 10 میلی متری را از پایین برآورده کنم.

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

مرحله 2: دایره های اکریلیک

دایره های اکریلیک
دایره های اکریلیک
دایره های اکریلیک
دایره های اکریلیک
دایره های اکریلیک
دایره های اکریلیک

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

این یک روند آهسته و خسته کننده از آزمایش و خطا بود تا زمانی که درست کار کرد ، اما من فکر می کنم نتیجه نهایی ارزش آن را داشت. من با استفاده از یک کاغذ دانه ای بسیار خوب کار را تمام کردم تا جلوه ای از اکریلیک را به صورت مات جلوه دهد.

مرحله 3: لحیم کاری

لحیم کاری
لحیم کاری
لحیم کاری
لحیم کاری
لحیم کاری
لحیم کاری
لحیم کاری
لحیم کاری

من دوست دارم از یک سیستم رنگی برای سیمهایم در این مناسبت که انتخاب می کنم استفاده کنم:

  • قرمز برای قدرت (5 ولت)
  • سفید برای زمین
  • زرد برای داده ها
  • سبز برای ساعت

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

سپس 4 سیم را با استفاده از سیستم بالا روی RTC لحیم کردم. برای اینکه همه چیز کمی تمیز باشد ، تصمیم گرفتم از RTC از آردوینو نیرو بگیرم. سپس همه چیز را به آردوینو وصل کنید و 1 سیم را برای برق و یک سیم دیگر را برای اتصال به آردوینو لحیم کنید.

RTC

  • SCL (ساعت) به پین آنالوگ 5
  • SDA (داده) به آنالوگ پین 4
  • VCC تا 5V
  • GND به هر GND در آردوینو

حلقه LED

Din to Pin Digital 6

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

تفنگ چسب داغ بیرون آمد تا همه چیز را پایین نگه دارد. من تصمیم گرفتم آردوینو را با بازی کافی ترک کنم تا بتوانم در آینده به پورت USB دسترسی داشته باشم تا آن را برنامه ریزی کنم اما نه آنقدر که بتوانم از آن خارج شوم.

مرحله 4: کد

اکنون باید بتوانید این کد را در آردوینو بارگذاری کنید.

اگر RTC اجرا نمی شود ، این کد زمان را بر اساس زمان تدوین کد تنظیم می کند ، بنابراین فقط دکمه بارگذاری را فشار دهید و تأیید نکنید.

متناوبا این نیز برای تنظیم زمان بسیار خوب عمل می کند.

www.instructables.com/id/Setting-the-DS130…

بیشتر این کد را از کتابخانه Adafruit NeoPixel و برخی دیگر را از کتابخانه RTC که پیدا کردم و برخی دیگر را به تنهایی تهیه کرده ام ، وام گرفته ام.

// شامل کد کتابخانه: #include

#عبارتند از

#عبارتند از

// پین ها را تعریف کنید

#پین 6 را تعریف کنید

#تعریف BRIGHTNESS 20 // حداکثر روشنایی را تنظیم کنید

#تعریف r 5

#تعریف g 5

#تعریف ب 5

RTC_DS3231 rtc؛ // ایجاد شی ساعت

نوار Adafruit_NeoPixel = Adafruit_NeoPixel (12 ، PIN ، NEO_GRB + NEO_KHZ800) ؛ // نوار شی

void setup () {

Wire.begin ()؛ // شروع I2C

rtc.begin ()؛ // شروع ساعت

Serial.begin (9600)؛

// تنظیم پین مودها

pinMode (PIN ، OUTPUT) ؛

if (rtc.lostPower ()) {

Serial.println ("RTC قدرت را از دست داد ، اجازه دهید زمان را تنظیم کنیم!")؛

// خط زیر RTC را به تاریخ و زمان تدوین این طرح تنظیم می کند

rtc.adjust (DateTime (F (_ DATE_) ، F (_ TIME_))) ؛

// این خط RTC را با تاریخ و زمان مشخصی تنظیم می کند ، برای مثال برای تنظیم

// 21 ژانویه 2014 ساعت 3 صبح با این شماره تماس می گیرید:

// rtc.adjust (تاریخ زمان (2014 ، 1 ، 21 ، 3 ، 0 ، 0)) ؛

}

strip.begin ()؛

strip.show ()؛ // مقداردهی اولیه همه پیکسل ها به حالت "خاموش"

DateTime theTime = rtc.now ()؛ // DST را در نظر می گیرد

بایت secondval = theTime.second ()؛ // ثانیه بدست آورید

بایت دقیقه = theTime.minute ()؛ // دریافت دقیقه

int hourval = theTime.hour ()؛

نقطه (نوار رنگ (0 ، گرم ، 0) ، 50) ؛

}

حلقه خالی () {

// زمان بگیرید

DateTime theTime = rtc.now ()؛ // DST را در نظر می گیرد

int minuteval = theTime.minute ()؛ // دریافت دقیقه

int hourval = theTime.hour ()؛ // ساعت دریافت کنید

int secondval = theTime.second ()؛

if (دقیقه دقیقه 0) {

strip.setPixelColor (0 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 9) {

strip.setPixelColor (1 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه <<14) {

strip.setPixelColor (2 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 19) {

strip.setPixelColor (3 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 24) {

strip.setPixelColor (4 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 29) {

strip.setPixelColor (5 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 34) {

strip.setPixelColor (6 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 39) {

strip.setPixelColor (7 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 44) {

strip.setPixelColor (8 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 49) {

strip.setPixelColor (9 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 54) {

strip.setPixelColor (10 ، r ، 0 ، 0) ؛

strip.show ()؛}

else if (دقیقه دقیقه <= 59) {

strip.setPixelColor (11 ، r ، 0 ، 0) ؛

strip.show ()؛}

تاخیر (1000) ؛

برای (int i = 0 ؛ i <12؛ i ++) {

strip.setPixelColor (i ، 0 ، 0 ، 0) ؛

strip.show ()؛

}

if (hourval == 0) {

strip.setPixelColor (0 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 1) {

strip.setPixelColor (1 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 2) {

strip.setPixelColor (2 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 3) {

strip.setPixelColor (3 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 4) {

strip.setPixelColor (4 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 5) {

strip.setPixelColor (5 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 6) {

strip.setPixelColor (6 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 7) {

strip.setPixelColor (7 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (ساعت ساعتی == 8) {

strip.setPixelColor (8 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 9) {

strip.setPixelColor (9 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (ساعت ساعتی == 10) {

strip.setPixelColor (10 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (ساعت ساعتی == 11) {

strip.setPixelColor (11 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (ساعت ساعتی == 12) {

strip.setPixelColor (0 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 13) {

strip.setPixelColor (1 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 14) {

strip.setPixelColor (2 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 15) {

strip.setPixelColor (3 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 16) {

strip.setPixelColor (4 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 17) {

strip.setPixelColor (5 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 18) {

strip.setPixelColor (6 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (ساعت ساعتی == 19) {

strip.setPixelColor (7 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (ساعت ساعتی == 20) {

strip.setPixelColor (8 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 21) {

strip.setPixelColor (9 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 22) {

strip.setPixelColor (10 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

else if (hourval == 23) {

strip.setPixelColor (11 ، 0 ، 0 ، ب) ؛

strip.show ()؛}

تاخیر (1000) ؛

برای (int i = 0 ؛ i <12؛ i ++) {

strip.setPixelColor (i ، 0 ، 0 ، 0) ؛

strip.show ()؛

}

// برای اشکال زدایی سریال

Serial.print (ساعتی ، DEC) ؛

Serial.print (':')؛

Serial.print (دقیقه ، DEC) ؛

Serial.print (':')؛

Serial.println (درجه دوم ، DEC) ؛

}

نقطه خالی (uint32_t c ، uint8_t منتظر بمانید) {

برای (int j = 0 ؛ j <3؛ j ++) {

برای (int i = 0 ؛ i <12؛ i ++) {

strip.setPixelColor (i ، c) ؛

strip.show ()؛

تأخیر (صبر) ؛

برای (int i = 0 ؛ i <12؛ i ++) {

strip.setPixelColor (i ، 0 ، 0 ، 0) ؛

strip.show ()؛}

}

}

}

مرحله 5: روغن دانمارکی

نفت دانمارکی
نفت دانمارکی
نفت دانمارکی
نفت دانمارکی
نفت دانمارکی
نفت دانمارکی
نفت دانمارکی
نفت دانمارکی

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

می توانید آن را مسواک بزنید یا من فقط از یک پارچه قدیمی برای پاک کردن آن استفاده می کنم.

تنها چیزی که اکنون باقی مانده این است که آن را به برق متصل کرده و از آن لذت ببرید.

توصیه شده: