Isi kandungan:

Jam Ish: 5 Langkah (dengan Gambar)
Jam Ish: 5 Langkah (dengan Gambar)

Video: Jam Ish: 5 Langkah (dengan Gambar)

Video: Jam Ish: 5 Langkah (dengan Gambar)
Video: SATPAM Hero - Seorang Satpam menyelamatkan seorang anak tenggelam 2024, Julai
Anonim
Image
Image
Mengumpulkan Bahagian & Kerja Kayu
Mengumpulkan Bahagian & Kerja Kayu

Saya sering mendapati diri saya membeli barang-barang yang saya tidak tahu apa yang akan saya lakukan. Projek ini adalah hasil pembelian cincin yang mempunyai LED 12x WS2812b. Saya tidak mempunyai rancangan untuk itu tetapi ia kelihatan hebat dalam talian jadi saya menyimpannya di troli saya, bermain dengannya sebentar ketika tiba dan kemudian melupakan semua tentangnya.

Beberapa saat kemudian saya berfikir untuk membuat jam dan teringat ia duduk di sana tidak melakukan apa-apa. Saya berfikir untuk membeli cincin kedua dengan 60 LED untuk menyiapkan minit tetapi kemudian mula berfikir bagaimana kita / saya cenderung melihat masa dan membulatkannya ke 5 minit terdekat.

Dengan ini, saya memasang dengan cincin LED 12 saya untuk membuat jam ish. Ia memaparkan 1 LED pada satu masa selama 1 saat, untuk menunjukkan jam (LED Biru) dan kemudian minit (LED Merah) dibundarkan ke bawah

Langkah 1: Mengumpulkan Bahagian & Kerja Kayu

Mengumpulkan Bahagian & Kerja Kayu
Mengumpulkan Bahagian & Kerja Kayu
Mengumpulkan Bahagian & Kerja Kayu
Mengumpulkan Bahagian & Kerja Kayu
Mengumpulkan Bahagian & Kerja Kayu
Mengumpulkan Bahagian & Kerja Kayu

Saya sangat bertuah kerana tiba di tempat kerja suatu hari dan melihat palet. Palet ini melekat pada saya kerana tidak seperti piawai kilang anda. Ia adalah kayu oak yang bersih, diperlakukan panas dan padat.

Projek ini dibuat dari salah satu kepingan palet itu. (Saya bertanya kepada bos sebelum saya membawanya pulang)

Juga digunakan:

  • Cincin LED 12 piksel ws2812b
  • Modul Jam Masa Sebenar (RTC) (Saya menggunakan DS3231 dengan I2C)
  • Arduino Nano v3.0 serasi
  • Lembaran akrilik (5mm)
  • Wayar Berwarna

Alat

  • Gerudi Kuasa
  • Penghala
  • Bit kayu rata boleh laras
  • Power sander
  • Gergaji tangan
  • Besi pematerian
  • Pistol gam panas
  • Kertas pasir
  • Minyak Denmark

Pengamplasan

Saya mulakan dengan menggunakan power sander untuk meluruskan dan membersihkan bongkah kayu sehingga semua sisi bersih dan licin. Saya meninggalkan beberapa ketidaksempurnaan yang kelihatan dan tidak betul-betul lurus atau persegi kerana saya mahu dapat melihat beberapa sejarah di kayu.

Menandai dan Memotong lubang

Selepas pengamplasan saya memilih sisi yang saya mahukan muka jam dan menandakan pusatnya dengan melukis garis dari setiap sudut. Saya menetapkan kayu laras sedikit lebih besar daripada cincin led sehingga akan ada rak untuk akrilik untuk duduk dan memotong kira-kira 5mm kemudian menyesuaikan pemotong lebih dari ukuran cincin LED dan memotong 5mm lebih kurang.

Laluan dan lubang kabel

Dengan menggunakan penghala saya dengan bit 12mm, saya mengeluarkan jalan keluar di bahagian bawah blok untuk menyembunyikan RTC dan Arduino. Kedalamannya sekitar 15mm dan tidak kurang dari 5mm dari pinggir mana pun. Saya menandakan bahagian tengah (ish) dari bawah dan menggerudi menggunakan bit 10mm hanya lewat separuh jalan untuk membolehkan wayar LED. Kemudian menggunakan bit 5mm saya menggerudi dari tengah relung LED untuk memenuhi lubang 10mm dari bawah.

Satu lagi lubang belakang 4mm untuk kuasa masuk dan menggunakan bit penghala yang lebih kecil untuk membuat saluran untuk wayar di bahagian belakang cincin LED dan kerja kayu selesai.

Langkah 2: Bulatan Akrilik

Bulatan Akrilik
Bulatan Akrilik
Bulatan Akrilik
Bulatan Akrilik
Bulatan Akrilik
Bulatan Akrilik

Untuk membuat akrilik untuk bahagian depan jam, saya menyatakan memotong sekeping persegi yang lebih besar daripada lubang yang harus diisi. Kemudian menggunakan power sander untuk memulakan saya mula melepaskan sudut sehingga kira-kira bentuk dan ukuran yang betul. Saya kemudian bergerak ke pengamplasan tangan sehingga saya tidak terlalu menembak dan harus memulakannya dari awal.

Itu adalah proses percubaan dan kesilapan yang perlahan dan membosankan sehingga ia betul-betul sesuai tetapi saya rasa hasil akhirnya berbaloi. Saya selesai dengan menggunakan kertas pasir yang sangat halus untuk memberikan bahagian depan akrilik yang kelihatan buram.

Langkah 3: Pematerian

Pematerian
Pematerian
Pematerian
Pematerian
Pematerian
Pematerian
Pematerian
Pematerian

Saya suka menggunakan sistem warna untuk wayar saya pada kesempatan ini saya memilih:

  • Merah untuk Kuasa (5v)
  • Putih untuk Tanah
  • Kuning untuk Data
  • Hijau untuk Jam

Saya mulakan dengan memasangkan 3 wayar yang diperlukan ke cincin LED menggunakan sistem di atas dan menolak wayar ke lubang. Oleh kerana tidak boleh terdedah kepada paksaan, saya menggunakan sedikit lem panas untuk memegang cincin di tempatnya. (Saya mungkin perlu mengubahnya suatu ketika dahulu) dan pasang akrilik dengan sedikit gam panas di sekitar tepi.

Saya kemudian memasangkan 4 wayar ke RTC menggunakan sistem di atas. Untuk memastikan keadaan lebih kemas saya memutuskan untuk mendapatkan kuasa untuk RTC dari Arduino. Kemudian sambungkan semuanya ke Arduino dan 1 kawat terpateri untuk kuasa dan yang lain untuk tanah ke Arduino.

RTC

  • SCL (Jam) ke Pin Analog 5
  • SDA (Data) ke Pin Analog 4
  • VCC hingga 5V
  • GND ke GND mana pun di Arduino

Cincin LED

Din ke Pin Digital 6

Saya mempunyai kabel USB lama yang digantung sehingga memutuskan untuk menggunakannya untuk mengaktifkan jam. Saya memotong hujung yang biasanya menghubungkan ke sesuatu dan mendorongnya melalui lubang di belakang. Kemudian dilucutkan dan ratakan ujungnya sebelum memasangkan VCC ke Arduino dan cincin LED ke sisi positif dan Tanah dari Arduino dan LED ke Tanah. Saya sedikit menyusut kemudian dan kelihatan baik, Pistol gam panas keluar kembali untuk menyimpan segala-galanya. Saya memutuskan untuk meninggalkan Arduino dengan permainan yang cukup sehingga saya dapat mengakses port USB untuk memprogramnya pada masa akan datang tetapi tidak begitu banyak sehingga saya boleh jatuh.

Langkah 4: Kodnya

Anda sekarang boleh memuat naik kod ini ke Arduino.

Sekiranya RTC tidak berjalan, kod ini akan menetapkan waktu berdasarkan kod tersebut disusun jadi pastikan hanya menekan butang muat naik dan tidak mengesahkan.

secara bergantian ini juga berfungsi dengan baik untuk menetapkan masa.

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

Sebilangan besar kod ini saya pinjam dari perpustakaan Adafruit NeoPixel dan beberapa dari perpustakaan RTC yang saya dapati dan beberapa yang saya buat sendiri.

// sertakan kod perpustakaan: #include

#sertakan

#sertakan

// tentukan pin

#tentukan PIN 6

#tentukan BRIGHTNESS 20 // tetapkan kecerahan maksimum

#tentukan r 5

#tentukan g 5

#tentukan b 5

RTC_DS3231 rtc; // Menetapkan objek jam

Adafruit_NeoPixel strip = Adafruit_NeoPixel (12, PIN, NEO_GRB + NEO_KHZ800); // objek jalur

batal persediaan () {

Wire.begin (); // Mulakan I2C

rtc.begin (); // mulakan jam

Serial.begin (9600);

// tetapkan pinmode

pinMode (PIN, OUTPUT);

jika (rtc.lostPower ()) {

Serial.println ("RTC kehilangan kuasa, mari tetapkan masa!");

// baris berikut menetapkan RTC ke tarikh & masa lakaran ini disusun

rtc.adjust (DateTime (F (_ DATE_), F (_ TIME_)));

// Garis ini menetapkan RTC dengan tarikh & waktu yang jelas, misalnya untuk menetapkan

// 21 Januari 2014 jam 3 pagi anda akan menghubungi:

// rtc.adjust (DateTime (2014, 1, 21, 3, 0, 0));

}

jalur.begin ();

strip.show (); // Memulakan semua piksel untuk 'mati'

DateTime theTime = rtc.now (); // mengambil kira DST

byte secondval = theTime.second (); // dapatkan detik

bait minit = theTime.minute (); // dapatkan minit

int hourval = theTime.hour ();

titik (jalur. Warna (0, g, 0), 50);

}

gelung kosong () {

// dapatkan masa

DateTime theTime = rtc.now (); // mengambil kira DST

int minitval = theTime.minute (); // dapatkan minit

int hourval = theTime.hour (); // dapatkan jam

int secondval = theTime.second ();

jika (minit 0) {

strip.setPixelColor (0, r, 0, 0);

strip.show ();}

lain jika (minit <= 9) {

strip.setPixelColor (1, r, 0, 0);

strip.show ();}

lain jika (minit <= 14) {

strip.setPixelColor (2, r, 0, 0);

strip.show ();}

lain jika (minit <= 19) {

strip.setPixelColor (3, r, 0, 0);

strip.show ();}

lain jika (minit <= 24) {

strip.setPixelColor (4, r, 0, 0);

strip.show ();}

lain jika (minit <= 29) {

strip.setPixelColor (5, r, 0, 0);

strip.show ();}

lain jika (minit <= 34) {

strip.setPixelColor (6, r, 0, 0);

strip.show ();}

lain jika (minit <= 39) {

strip.setPixelColor (7, r, 0, 0);

strip.show ();}

lain jika (minit <= 44) {

strip.setPixelColor (8, r, 0, 0);

strip.show ();}

lain jika (minit <= 49) {

strip.setPixelColor (9, r, 0, 0);

strip.show ();}

lain jika (minit <= 54) {

strip.setPixelColor (10, r, 0, 0);

strip.show ();}

lain jika (minit <= 59) {

strip.setPixelColor (11, r, 0, 0);

strip.show ();}

kelewatan (1000);

untuk (int i = 0; i <12; i ++) {

strip.setPixelColor (i, 0, 0, 0);

strip.show ();

}

jika (jam == 0) {

strip.setPixelColor (0, 0, 0, b);

strip.show ();}

lain jika (jam == 1) {

strip.setPixelColor (1, 0, 0, b);

strip.show ();}

lain jika (jam == 2) {

strip.setPixelColor (2, 0, 0, b);

strip.show ();}

lain jika (jam == 3) {

strip.setPixelColor (3, 0, 0, b);

strip.show ();}

lain jika (jam == 4) {

strip.setPixelColor (4, 0, 0, b);

strip.show ();}

lain jika (jam == 5) {

strip.setPixelColor (5, 0, 0, b);

strip.show ();}

lain jika (jam == 6) {

strip.setPixelColor (6, 0, 0, b);

strip.show ();}

lain jika (jam == 7) {

strip.setPixelColor (7, 0, 0, b);

strip.show ();}

lain jika (jam == 8) {

strip.setPixelColor (8, 0, 0, b);

strip.show ();}

lain jika (jam == 9) {

strip.setPixelColor (9, 0, 0, b);

strip.show ();}

lain jika (jam == 10) {

strip.setPixelColor (10, 0, 0, b);

strip.show ();}

lain jika (jam == 11) {

strip.setPixelColor (11, 0, 0, b);

strip.show ();}

lain jika (jam == 12) {

strip.setPixelColor (0, 0, 0, b);

strip.show ();}

lain jika (jam == 13) {

strip.setPixelColor (1, 0, 0, b);

strip.show ();}

lain jika (jam == 14) {

strip.setPixelColor (2, 0, 0, b);

strip.show ();}

lain jika (jam == 15) {

strip.setPixelColor (3, 0, 0, b);

strip.show ();}

lain jika (jam == 16) {

strip.setPixelColor (4, 0, 0, b);

strip.show ();}

lain jika (jam == 17) {

strip.setPixelColor (5, 0, 0, b);

strip.show ();}

lain jika (jam == 18) {

strip.setPixelColor (6, 0, 0, b);

strip.show ();}

lain jika (jam == 19) {

strip.setPixelColor (7, 0, 0, b);

strip.show ();}

lain jika (jam == 20) {

strip.setPixelColor (8, 0, 0, b);

strip.show ();}

lain jika (jam == 21) {

strip.setPixelColor (9, 0, 0, b);

strip.show ();}

lain jika (jam == 22) {

strip.setPixelColor (10, 0, 0, b);

strip.show ();}

lain jika (jam == 23) {

strip.setPixelColor (11, 0, 0, b);

strip.show ();}

kelewatan (1000);

untuk (int i = 0; i <12; i ++) {

strip.setPixelColor (i, 0, 0, 0);

strip.show ();

}

// untuk penyahpepijatan bersiri

Serial.print (jam, DEC);

Cetakan bersiri (':');

Serial.print (minit, DEC);

Cetakan bersiri (':');

Serial.println (secondval, DEC);

}

titik kosong (uint32_t c, uint8_t tunggu) {

untuk (int j = 0; j <3; j ++) {

untuk (int i = 0; i <12; i ++) {

strip.setPixelColor (i, c);

strip.show ();

kelewatan (tunggu);

untuk (int i = 0; i <12; i ++) {

strip.setPixelColor (i, 0, 0, 0);

strip.show ();}

}

}

}

Langkah 5: Minyak Denmark

Minyak Denmark
Minyak Denmark
Minyak Denmark
Minyak Denmark
Minyak Denmark
Minyak Denmark
Minyak Denmark
Minyak Denmark

Langkah terakhir dan pilihan adalah dengan memasukkan sedikit minyak danish ke kayu. Saya sangat suka bagaimana mengeluarkan biji-bijian dan ia menawarkan perlindungan dari noda dan kelembapan. Oleh itu, saya sangat mengesyorkannya.

Anda boleh menyikatnya atau saya hanya menggunakan kain lama untuk mengelapnya.

Yang tinggal sekarang adalah memasangnya dan nikmati.

Disyorkan: