Mục lục:
- Bước 1: Bảng nguyên mẫu
- Bước 2: Arduino UNO
- Bước 3: Gắn Dải LED vào Gỗ
- Bước 4: Phát triển trong tương lai
- Bước 5: Hậu kỳ Kịch bản: 2 Dải
Video: Đồng hồ tuyến tính sử dụng Arduino + DS1307 + Neopixel: Sử dụng lại một số phần cứng.: 5 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:35
Từ các dự án trước, tôi đã để lại một Arduino UNO và một dải đèn LED Neopixel và muốn tạo ra một thứ gì đó khác biệt. Bởi vì dải Neopixel có 60 đèn LED, được cho là sử dụng nó như một chiếc đồng hồ lớn.
Để biểu thị Giờ, đoạn 5 LED màu đỏ được sử dụng (60 LED / 12 đoạn = 5 LED). Các phút được hiển thị bằng một đèn LED màu xanh lá cây và các giây sử dụng một đèn LED màu xanh lam.
Tôi đã thêm bảng Đồng hồ thời gian thực DS1307 để giữ thời gian khi Arduino không được cấp nguồn.
Đây là dải đèn LED Neopixel 60 được sử dụng: https://www.adafruit.com/product/1138 và đây là bảng DS1307:
Ban đầu, dải đèn LED được định treo trên tường phòng ăn, nhưng các con gái của tôi bảo tôi gắn nó vào một miếng gỗ từ pallet, vì vậy chúng đã vẽ các con số và dán vào gỗ.
Bước 1: Bảng nguyên mẫu
Ở đây bạn có mạch được triển khai và BOM.
Nếu bạn không sử dụng bảng DS1307 RTC, nó sẽ không hoạt động. Giờ và phút sẽ được đặt lại khi Arduino không được cấp nguồn vì bo mạch này không có RTC bên trong.
Bảng nguyên mẫu giúp giữ cho RTC DS1307, một vài điện trở và nút ở đúng vị trí.
Một số hàn và cáp là cần thiết.
Nút "H" tăng giờ khi được nhấn. Nút "M" tăng phút. Các giây được đặt lại khi bất kỳ nút nào được nhấn.
Sau 6 tháng hoạt động liên tục, đã có sự chậm trễ 2 phút (theo ý kiến của tôi là khá tốt).
Bước 2: Arduino UNO
Tôi đã sử dụng một bản sao Arduino cũ và một số chân để kết nối bảng nguyên mẫu.
Bạn có thể tìm thấy mã Arduino tại:
github.com/Giroair/Linear-Clock-Arduino/bl…
Gắn Arduino vào mảnh gỗ bằng dây buộc nhựa.
Đã hàn 3 cáp vào dải Neopixel (thận trọng: sử dụng một số băng cách ly hoặc đầu nối).
Trong dự án này, Arduino được cấp nguồn bởi bộ sạc USB 5V 1A tiêu chuẩn.
Thông tin cho các nhà phát triển: Neopixel được cấp nguồn từ chân 5V của Arduino UNO vì chỉ có 7 đèn LED được Bật đồng thời. Nếu bạn định Bật nhiều đèn LED hơn (sẽ hoàn hảo cho màn hình hấp dẫn hơn), hãy cân nhắc cấp nguồn cho Neopixel từ nguồn 5V bên ngoài. Trong trường hợp đó, hãy kết nối nguồn GND với chân GND của bảng Arduino.
Cấp nguồn cho Arduino kết nối nguồn điện bên ngoài và đáng tin cậy vào chân 5V cũng là một lựa chọn.
Bước 3: Gắn Dải LED vào Gỗ
Sử dụng 3 dây buộc nhựa để giữ dải cố định. Cẩn thận không che bất kỳ đèn LED nào.
Một số tờ được dán vào gỗ và sơn các con số.
Các số màu đỏ chỉ Giờ. Các đường được vẽ mỗi 5 LED.
Các con số màu xanh lá cây cho biết Phút. Lưu ý rằng đèn LED đầu tiên cho biết phút đầu tiên và đèn LED cuối cùng cho biết phút thứ 60.
Bước 4: Phát triển trong tương lai
Một số ý tưởng từ dự án này:
1.- Khắc các con số trên gỗ bằng cách sử dụng một cái đục, và sơn và đánh vecni.
2.- Vẽ số Giờ ở một mặt, và số Phút ở mặt khác.
3.- Sử dụng 2 dải đèn LED quay lưng lại: một dải quay sang trái cho Giờ và một dải quay sang phải cho phút.
4.- Thử nghiệm với các phân đoạn và màu sắc khác nhau: trí tưởng tượng là giới hạn (bạn nên sử dụng nguồn 5V bên ngoài cho dải Neopixel).
5.- Hiển thị Giờ và Phút thay thế.
6.- Chia dải LED thành các đoạn và tạo ma trận LED 7x8 để hiển thị số & ký tự kỹ thuật số.
7.- Làm mờ ánh sáng: sử dụng LDR hoặc photodiode để tự động làm mờ ánh sáng.
8.- Kết nối với đám mây để lấy thời gian từ máy chủ.
9.- Bật báo thức: dải này nhấp nháy khi nhận được cuộc gọi điện thoại hoặc tweet, hoặc báo thức thời gian được đặt.
10.-…. hãy cho tôi biết!
Bước 5: Hậu kỳ Kịch bản: 2 Dải
Tôi đã để tệp "neopixel_invers_2_strips.ino" trong
Nó nhằm điều khiển một dải để biểu thị giờ được kết nối với chân số 6 và dải thứ hai để biểu thị phút / giây được kết nối với chân số 7.
Cả 5V DC và Ground của các dải được kết nối với cùng một nguồn.
KHUYẾN CÁO: không thể kiểm tra nó miễn là không có 2 dải. Nếu bạn kiểm tra nó, hãy thông báo lỗi hoặc xác nhận rằng nó hoạt động tốt.
Cảm ơn bạn.