Mục lục:

Đồng hồ Ish: 5 bước (có hình ảnh)
Đồng hồ Ish: 5 bước (có hình ảnh)

Video: Đồng hồ Ish: 5 bước (có hình ảnh)

Video: Đồng hồ Ish: 5 bước (có hình ảnh)
Video: Clockwise garment inspeciton HƯỚNG DẪN KIỂM ÁO THEO CHIỀU KIM ĐỒNG HỒ 2024, Tháng bảy
Anonim
Image
Image
Thu thập các bộ phận & Công việc gỗ
Thu thập các bộ phận & Công việc gỗ

Tôi thường tự mua những thứ mà tôi không biết mình sẽ làm gì. Dự án này là kết quả của việc mua một chiếc vòng có bật đèn LED 12x WS2812b. Tôi không có kế hoạch cho nó nhưng nó trông rất tuyệt khi trực tuyến vì vậy tôi đã mắc kẹt một cái trong xe của mình, chơi với nó một lúc khi nó đến và sau đó quên hết về nó.

Một lúc sau tôi đang nghĩ về việc làm một chiếc đồng hồ và nhớ ra nó đã ngồi đó không làm gì cả. Tôi đã nghĩ đến việc mua một chiếc nhẫn thứ hai có bật 60 đèn LED để tính giờ nhưng sau đó bắt đầu nghĩ cách chúng ta / tôi có xu hướng xem giờ và làm tròn nó đến 5 phút gần nhất.

Với điều này, tôi đã thiết lập với vòng 12 LED của mình để làm đồng hồ ish. Nó hiển thị 1 đèn LED tại một thời điểm trong 1 giây, để chỉ giờ (Đèn LED màu xanh lam) và sau đó là phút (Đèn LED màu đỏ) được làm tròn xuống

Bước 1: Thu thập các bộ phận & Công việc gỗ

Thu thập các bộ phận & Công việc gỗ
Thu thập các bộ phận & Công việc gỗ
Thu thập các bộ phận & Công việc gỗ
Thu thập các bộ phận & Công việc gỗ
Thu thập các bộ phận & Công việc gỗ
Thu thập các bộ phận & Công việc gỗ

Tôi rất may mắn khi đến nơi làm việc vào một ngày nọ và phát hiện ra một pallet. Cái pallet này làm tôi khó hiểu vì nó trông không giống tiêu chuẩn của bạn, một cái pallet của nhà máy. Đó là gỗ sồi sạch, đã qua xử lý nhiệt và đặc biệt nhất.

Dự án này được làm từ một trong những mảnh của pallet đó. (Tôi đã hỏi ông chủ trước khi tôi mang nó về nhà)

Cũng được dùng:

  • Vòng LED 12 pixel ws2812b
  • Mô-đun Đồng hồ thời gian thực (RTC) (Tôi đang sử dụng DS3231 với I2C)
  • Tương thích Arduino Nano v3.0
  • Tấm acrylic (5mm)
  • Dây màu

Công cụ

  • Máy khoan điện
  • Bộ định tuyến
  • Gỗ phẳng có thể điều chỉnh bit
  • Máy chà nhám điện
  • Cưa tay
  • Hàn sắt
  • Súng bắn keo nóng
  • Giấy cát
  • Dầu Đan Mạch

Chà nhám

Tôi bắt đầu bằng cách sử dụng máy chà nhám để làm thẳng và làm sạch khối gỗ cho đến khi tất cả các mặt sạch và nhẵn. Tôi để lại một số điểm không hoàn hảo có thể nhìn thấy và nó không hoàn toàn thẳng hoặc vuông như tôi muốn để có thể nhìn thấy một số lịch sử trong gỗ.

Đánh dấu và cắt lỗ

Sau khi chà nhám, tôi chọn mặt mà tôi muốn mặt đồng hồ và đánh dấu trung tâm bằng cách vẽ các đường từ mỗi góc. Tôi đặt miếng gỗ có thể điều chỉnh lớn hơn một chút so với vòng đèn LED để sẽ có một giá để acrylic ngồi trên và cắt sâu khoảng 5mm, sau đó điều chỉnh máy cắt vừa bằng kích thước của vòng đèn LED và cắt thêm 5mm nữa.

Định tuyến và lỗ cáp

Sử dụng bộ định tuyến của tôi với bit 12mm, tôi định tuyến ra một hốc ở dưới cùng của khối để ẩn RTC và Arduino. Sâu khoảng 15mm và không ít hơn 5mm từ bất kỳ cạnh nào. Tôi đánh dấu trung tâm (ish) từ phía dưới và khoan lên bằng cách sử dụng một bit 10mm chỉ vừa qua một nửa để cho phép các dây LED. Sau đó, sử dụng một lỗ 5mm, tôi khoan từ trung tâm của hốc đèn LED để gặp lỗ 10mm tính từ phía dưới.

Thêm một lỗ 4mm ở mặt sau để cấp điện vào và sử dụng một bit bộ định tuyến nhỏ hơn để tạo kênh cho các dây ở mặt sau của vòng đèn LED và công việc gỗ được hoàn thành.

Bước 2: Vòng tròn acrylic

Vòng tròn acrylic
Vòng tròn acrylic
Vòng tròn acrylic
Vòng tròn acrylic
Vòng tròn acrylic
Vòng tròn acrylic

Để làm acrylic cho mặt trước của đồng hồ, tôi đã nói rằng cắt một miếng hình vuông vừa lớn hơn rồi lấp đầy lỗ mà nó phải lấp đầy. Sau đó, sử dụng máy chà nhám điện để bắt đầu, tôi bắt đầu loại bỏ các góc cho đến khi nó có hình dạng và kích thước phù hợp. Sau đó, tôi chuyển sang chà nhám bằng tay để không bắn quá mức và phải bắt đầu lại.

Đó là một quá trình thử và sai chậm và tẻ nhạt cho đến khi nó vừa vặn nhưng tôi nghĩ kết quả cuối cùng là xứng đáng. Tôi đã hoàn thành bằng cách sử dụng một loại giấy sạn rất mịn để tạo cho mặt trước của acrylic một cái nhìn mờ.

Bước 3: Hàn

Hàn
Hàn
Hàn
Hàn
Hàn
Hàn
Hàn
Hàn

Tôi thích sử dụng một hệ thống màu sắc cho dây của mình trong dịp này, tôi chọn:

  • Màu đỏ cho nguồn (5v)
  • Màu trắng cho mặt đất
  • Màu vàng cho dữ liệu
  • Màu xanh lá cây cho Đồng hồ

Tôi bắt đầu bằng cách hàn 3 dây cần thiết vào vòng đèn LED bằng cách sử dụng hệ thống ở trên và đẩy dây xuống lỗ. Vì nó không được tiếp xúc với bất kỳ sự cưỡng bức thực sự nào, tôi đã sử dụng một chút keo nóng nhỏ để giữ chiếc nhẫn ở đúng vị trí. (Tôi có thể cần phải thay đổi nó một lúc nào đó) và lắp acrylic chỉ với một ít keo nóng xung quanh mép.

Sau đó tôi hàn 4 dây vào RTC bằng hệ thống trên. Để giữ cho mọi thứ gọn gàng hơn một chút, tôi quyết định lấy điện cho RTC từ Arduino. Sau đó, kết nối mọi thứ với Arduino và hàn 1 dây cho nguồn và một dây khác nối đất với Arduino.

RTC

  • SCL (Đồng hồ) sang Chân tương tự 5
  • SDA (Dữ liệu) sang Chân tương tự 4
  • VCC đến 5V
  • GND đến bất kỳ GND nào trên Arduino

Vòng LED

Din đến chân số 6

Tôi có một cáp USB cũ bị treo xung quanh nên quyết định sử dụng nó để cấp nguồn cho đồng hồ. Tôi cắt phần cuối thường kết nối với cái gì đó và đẩy nó qua lỗ ở phía sau. Sau đó, tước và gắn các đầu cuối trước khi hàn VCC vào Arduino và vòng LED vào cực dương và nối đất từ Arduino và LED xuống đất. Sau đó nhiệt sẽ co lại một chút và nó có vẻ tốt, Súng bắn keo nóng quay trở lại để giữ mọi thứ xuống. Tôi đã quyết định để Arduino chơi đủ trò mà tôi sẽ có thể truy cập vào cổng USB để lập trình nó trong tương lai nhưng không đến nỗi tôi có thể rơi ra ngoài.

Bước 4: Mã

Bây giờ bạn có thể tải mã này lên Arduino.

Nếu RTC không chạy, mã này sẽ đặt thời gian dựa trên thời điểm mã được biên dịch, vì vậy hãy đảm bảo chỉ nhấn nút tải lên và không xác minh.

luân phiên điều này cũng hoạt động thực sự tốt để thiết lập thời gian.

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

Phần lớn mã này tôi đã mượn từ thư viện Adafruit NeoPixel và một số từ thư viện RTC mà tôi tìm thấy và một số mã do tôi tự tạo ra.

// bao gồm mã thư viện: #include

#bao gồm

#bao gồm

// xác định các chân

#define mã PIN 6

#define BRIGHTNESS 20 // đặt độ sáng tối đa

#define r 5

#define g 5

#define b 5

RTC_DS3231 rtc; // Thiết lập đối tượng đồng hồ

Dải Adafruit_NeoPixel = Adafruit_NeoPixel (12, PIN, NEO_GRB + NEO_KHZ800); // đối tượng dải

void setup () {

Wire.begin (); // Bắt đầu I2C

rtc.begin (); // bắt đầu đồng hồ

Serial.begin (9600);

// đặt pinmodes

pinMode (PIN, OUTPUT);

if (rtc.lostPower ()) {

Serial.println ("RTC bị mất nguồn, hãy đặt thời gian!");

// dòng sau đặt RTC thành ngày và giờ mà bản phác thảo này được biên dịch

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

// Dòng này đặt RTC với ngày và giờ rõ ràng, chẳng hạn để đặt

// Ngày 21 tháng 1 năm 2014 lúc 3 giờ sáng, bạn sẽ gọi:

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

}

dải.begin ();

dải.show (); // Khởi tạo tất cả các pixel thành 'tắt'

DateTime theTime = rtc.now (); // có tính đến DST

byte secondval = theTime.second (); // lấy giây

byte phútval = theTime.minute (); // lấy phút

int giờval = theTime.hour ();

dot (dải. Color (0, g, 0), 50);

}

void loop () {

// dành thời gian

DateTime theTime = rtc.now (); // có tính đến DST

int phútval = theTime.minute (); // lấy phút

int giờval = theTime.hour (); // lấy giờ

int secondval = theTime.second ();

nếu (giá trị phút 0) {

dải.setPixelColor (0, r, 0, 0);

dải.show ();}

khác nếu (phút <= 9) {

dải.setPixelColor (1, r, 0, 0);

dải.show ();}

khác nếu (giá trị phút <= 14) {

dải.setPixelColor (2, r, 0, 0);

dải.show ();}

khác nếu (phút <= 19) {

dải.setPixelColor (3, r, 0, 0);

dải.show ();}

khác nếu (giá trị phút <= 24) {

dải.setPixelColor (4, r, 0, 0);

dải.show ();}

khác nếu (giá trị phút <= 29) {

dải.setPixelColor (5, r, 0, 0);

dải.show ();}

khác nếu (giá trị phút <= 34) {

dải.setPixelColor (6, r, 0, 0);

dải.show ();}

khác nếu (phút <= 39) {

dải.setPixelColor (7, r, 0, 0);

dải.show ();}

khác nếu (giá trị phút <= 44) {

dải.setPixelColor (8, r, 0, 0);

dải.show ();}

khác nếu (giá trị phút <= 49) {

dải.setPixelColor (9, r, 0, 0);

dải.show ();}

khác nếu (giá trị phút <= 54) {

dải.setPixelColor (10, r, 0, 0);

dải.show ();}

khác nếu (giá trị phút <= 59) {

dải.setPixelColor (11, r, 0, 0);

dải.show ();}

chậm trễ (1000);

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

dải.setPixelColor (i, 0, 0, 0);

dải.show ();

}

if (hourval == 0) {

dải.setPixelColor (0, 0, 0, b);

dải.show ();}

khác nếu (giờ == 1) {

dải.setPixelColor (1, 0, 0, b);

dải.show ();}

khác nếu (giờ == 2) {

dải.setPixelColor (2, 0, 0, b);

dải.show ();}

khác nếu (giờ == 3) {

dải.setPixelColor (3, 0, 0, b);

dải.show ();}

khác nếu (giờ == 4) {

dải.setPixelColor (4, 0, 0, b);

dải.show ();}

khác nếu (giờ == 5) {

dải.setPixelColor (5, 0, 0, b);

dải.show ();}

khác nếu (giờ == 6) {

dải.setPixelColor (6, 0, 0, b);

dải.show ();}

khác nếu (giờ == 7) {

dải.setPixelColor (7, 0, 0, b);

dải.show ();}

khác nếu (giờ == 8) {

dải.setPixelColor (8, 0, 0, b);

dải.show ();}

khác nếu (giờ == 9) {

dải.setPixelColor (9, 0, 0, b);

dải.show ();}

khác nếu (giá trị giờ == 10) {

dải.setPixelColor (10, 0, 0, b);

dải.show ();}

khác nếu (giờ == 11) {

dải.setPixelColor (11, 0, 0, b);

dải.show ();}

khác nếu (giá trị giờ == 12) {

dải.setPixelColor (0, 0, 0, b);

dải.show ();}

khác nếu (giờ == 13) {

dải.setPixelColor (1, 0, 0, b);

dải.show ();}

khác nếu (giờ == 14) {

dải.setPixelColor (2, 0, 0, b);

dải.show ();}

khác nếu (giờ == 15) {

dải.setPixelColor (3, 0, 0, b);

dải.show ();}

khác nếu (giờ == 16) {

dải.setPixelColor (4, 0, 0, b);

dải.show ();}

khác nếu (giờ == 17) {

dải.setPixelColor (5, 0, 0, b);

dải.show ();}

khác nếu (giờ == 18) {

dải.setPixelColor (6, 0, 0, b);

dải.show ();}

khác nếu (giờ == 19) {

dải.setPixelColor (7, 0, 0, b);

dải.show ();}

khác nếu (giá trị giờ == 20) {

dải.setPixelColor (8, 0, 0, b);

dải.show ();}

khác nếu (giờ == 21) {

dải.setPixelColor (9, 0, 0, b);

dải.show ();}

khác nếu (giá trị giờ == 22) {

dải.setPixelColor (10, 0, 0, b);

dải.show ();}

khác nếu (giá trị giờ == 23) {

dải.setPixelColor (11, 0, 0, b);

dải.show ();}

chậm trễ (1000);

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

dải.setPixelColor (i, 0, 0, 0);

dải.show ();

}

// để gỡ lỗi nối tiếp

Serial.print (giá trị giờ, DEC);

Serial.print (':');

Serial.print (giá trị phút, DEC);

Serial.print (':');

Serial.println (secondval, DEC);

}

void dot (uint32_t c, uint8_t wait) {

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

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

dải.setPixelColor (i, c);

dải.show ();

trì hoãn (chờ đợi);

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

dải.setPixelColor (i, 0, 0, 0);

dải.show ();}

}

}

}

Bước 5: Dầu Đan Mạch

Dầu Đan Mạch
Dầu Đan Mạch
Dầu Đan Mạch
Dầu Đan Mạch
Dầu Đan Mạch
Dầu Đan Mạch
Dầu Đan Mạch
Dầu Đan Mạch

Bước cuối cùng và tùy chọn là thoa một ít dầu Đan Mạch lên gỗ. Tôi thực sự thích cách nó làm nổi bật hạt cộng với nó cung cấp một số bảo vệ khỏi vết bẩn và độ ẩm. Vì vậy, tôi rất khuyên bạn nên nó.

Bạn có thể chải nó lên hoặc tôi chỉ cần sử dụng một miếng vải cũ để lau nó.

Tất cả những gì còn lại bây giờ là cắm nó vào và tận hưởng.

Đề xuất: