Mục lục:

Đồng hồ báo thức Sunrise với màn hình LCD và ứng dụng Bluetooth: 8 bước
Đồng hồ báo thức Sunrise với màn hình LCD và ứng dụng Bluetooth: 8 bước

Video: Đồng hồ báo thức Sunrise với màn hình LCD và ứng dụng Bluetooth: 8 bước

Video: Đồng hồ báo thức Sunrise với màn hình LCD và ứng dụng Bluetooth: 8 bước
Video: [Đồng hồ] Hướng dẫn sử dụng Đồng hồ đa năng 8082T - Báo thức, Lịch, Nhiệt độ 2024, Tháng mười một
Anonim
Đồng hồ báo thức Sunrise với màn hình LCD và ứng dụng Bluetooth
Đồng hồ báo thức Sunrise với màn hình LCD và ứng dụng Bluetooth
Đồng hồ báo thức Sunrise với màn hình LCD và ứng dụng Bluetooth
Đồng hồ báo thức Sunrise với màn hình LCD và ứng dụng Bluetooth

Mùa đông có thể buồn. Bạn thức dậy, trời đã tối và bạn phải ra khỏi giường. Điều cuối cùng bạn muốn nghe là âm thanh khó chịu của đồng hồ báo thức. Nếu bạn, giống như tôi, gặp khó khăn khi thức dậy vào buổi sáng thì đồng hồ báo thức chính là thứ bạn cần.

Trong hướng dẫn này, chúng ta sẽ xây dựng Đồng hồ báo thức mặt trời mọc. Đó là một chiếc đồng hồ báo thức giống như bất kỳ chiếc đồng hồ báo thức nào khác ở chỗ bạn có thể đặt giờ và phút bạn muốn thức dậy, nhưng với lợi ích của việc sử dụng ánh sáng để làm bừng sáng phòng ngủ của bạn trong một khoảng thời gian như mặt trời mọc để đánh thức bạn thay vì gây phiền nhiễu. còi!

Chúng tôi cũng sẽ sử dụng mô-đun bluetooth để tạo một ứng dụng cho phép bạn đặt báo thức qua điện thoại trên đồng hồ. Màn hình LCD sẽ hiển thị thời gian, ngày và ngày trong tuần. Đènunrise tồn tại trên thị trường nhưng chúng có thể đắt tiền (tìm kiếm nhanh trên Google sẽ trả về các sản phẩm trong phạm vi € 100), mỏng manh và trông khá lâm sàng. Đó là lý do tại sao tôi quyết định làm riêng cho Dự án Trường học Arduino của mình. Tất cả các phần sẽ được liệt kê trong bước tiếp theo. Mã này có thể được tải xuống từ repo Github-đồng hồ báo thức của tôi. Hãy bắt đầu nào:)

tất cả mã có thể được tìm thấy trên:

Bước 1: Thu thập các bộ phận

Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận

Chúng tôi sẽ sử dụng đồng hồ làm đầu vào và đèn LED siêu sáng làm đầu ra để mô phỏng mặt trời mọc.

Để xây dựng mạch, chúng ta sẽ cần:

- Arduino Uno- clockmodule RTC DS3231 - MOSFET để điều khiển độ sáng của đèn - LED siêu sáng (tôi đã mua 2: 2) - Bộ điều hợp Bluetooth hc-05 để chúng tôi có thể sử dụng một ứng dụng để đặt báo thức.

Mọi thứ bạn cần đều có thể mua được trên www.martoparts.nl

Bước 2: Lắp ráp mạch

Lắp ráp mạch
Lắp ráp mạch
Lắp ráp mạch
Lắp ráp mạch

Bạn có thể tham khảo bản phác thảo cho mạch của tôi, rất tiếc, tôi không tìm thấy RTC DS3231 trong chương trình nên tôi phải làm với cái này. Các kết nối thực tế hơi khác một chút, đây là các kết nối. (mô-đun bluetooth không có trong bản phác thảo nhưng tôi sẽ giải thích cách hoạt động của nó bên dưới gây ra nó khá phức tạp)

RTC DS3231GND chuyển đến GND trên arduino

VCC đi đến 5v

SDA chuyển đến arduino

SCL chuyển sang arduinoChúng tôi sẽ không sử dụng SQW & 32KMOSFET

Chân cổng đi đến chân ~ 9 trên Arduino Uno vì đó là chân PWMDrain đi đến cực âm của chân Nguồn LED đi đến GND trên ArduinoLCD-DisplayGND đi đến GND trên arduino

VCC đi tới 5VSDA chuyển đến A4 trên arduinoSKL đến A5 trên arduinoLED- đến mosfet + vào pin 5v9v Bạn có thể mua pin 9v ở bất kỳ cửa hàng địa phương nào, cắm vào arduino bằng một dải đầu nối.

Mô-đun Bluetooth hc-055V đi đến 5V từ arduino

GND chuyển đến GND trên arduino

Bây giờ có thêm 2 đầu vào nữa nhưng ở đây có phần khó khăn, chúng ta phải kết nối các đầu vào đối diện của 2 đầu vào đó trên arduinoTX từ hc-05 đến RX trên arduinoRX từ hc-05 đến TX trên arduino

Quan trọng: Đảm bảo bạn NGẮT KẾT NỐI TX & RX khỏi HC-05 khi tải mã lên arduino của mình, nếu không bạn sẽ gặp lỗi thông báo "đã xảy ra lỗi khi tải mã lên" trong trình biên dịch.

Bước 3: Cài đặt Màn hình LCD & Đồng hồ

Cài đặt Màn hình LCD & Đồng hồ
Cài đặt Màn hình LCD & Đồng hồ
Cài đặt Màn hình LCD & Đồng hồ
Cài đặt Màn hình LCD & Đồng hồ

Thư viện được sử dụng cho màn hình LCD là tinh thể lỏng và có thể được tìm thấy tại: https://github.com/fdebrabander/Arduino-LiquidCrys… Tải xuống tệp zip, lưu nó và đặt nó trong thư mục Arduino's / Library

Thư viện mà tôi đang sử dụng để chạy đồng hồ có thể được tìm thấy tại Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 và đảm bảo rằng bạn đang ở trang DS3231. Tải xuống tệp zip, lưu nó và đặt nó vào thư mục thư viện Arduino của bạn.

Thời gian

Bao gồm thư viện DS3231 hoặc DS1307 trong mã arduino của bạn

Bỏ ghi chú 3 dòng mã này để đặt thời gian:

// rtc.setDOW (THỨ HAI); // Đặt Ngày trong tuần thành CHỦ NHẬT // rtc.setTime (23, 57, 0); // Đặt thời gian thành 12:00:00 (định dạng 24hr) // rtc.setDate (14, 1, 2019); // Đặt ngày thành ngày 1 tháng 1 năm 2014

Màn hình LCD

Bao gồm thư viện liqduicrystal_i2c trong mã arduino của bạn

Để in trên Màn hình LCD, hãy sử dụng

lcd.setCursor (col, row) // vị trí của văn bản printlcd.print (~) // văn bản được in

Bước 4: Mã hóa

Mã hóa
Mã hóa

Tải xuống mã trên: github:

Bỏ ghi chú 3 dòng này để đặt đồng hồ trên màn hình LCD của bạn:

// rtc.setDOW (THỨ HAI); // Đặt Ngày trong tuần thành CHỦ NHẬT // rtc.setTime (23, 57, 0); // Đặt thời gian thành 12:00:00 (định dạng 24hr) // rtc.setDate (14, 1, 2019); // Đặt ngày thành ngày 1 tháng 1 năm 2014

Sử dụng lcd.setCuros (col, row); để đặt vị trí của văn bản trên màn hình

lcd.setCursor (0, 2);

và print () để in thứ gì đó trên màn hình

lcd.print (rtc.getDateStr ());

Thay đổi các biến này nếu bạn muốn

int fadeTime = 1; // Sau bao lâu thì đèn sẽ mờ dần maxint setHour = 02; // Đặt giờ để đánh thức (giờ quân sự) int setMin = 49; // Đặt phút để đánh thức int uled = 9; // Đặt sơ đồ chân bằng PWM

Mã mô-đun Bluetooth

String firstHalf = getValue (input, ':', 0); // kiểm tra đầu vào đầu tiên cho đến khi ":"

String secondHalf = getValue (input, ':', 1); // kiểm tra đầu vào thứ hai sau ":"

// sử dụng mã này nếu bạn không sử dụng mô-đun bluetooth

// // if (t.hour == setHour && t.min == setMin) // Kiểm tra xem đã đến lúc thức dậy chưa! // { // bắt đầu(); //}

// kiểm tra đầu vào 2 chữ số đầu tiên, sau đó kiểm tra 2 chữ số thứ hai của đầu vào

if (t.hour == firstHalf.toInt () && t.min == secondHalf.toInt ()) {start (); }}

// logic để phân tách các chuỗi

String getValue (Dữ liệu chuỗi, dấu phân cách ký tự, chỉ mục int) {int found = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1;

for (int i = 0; i <= maxIndex && found <= index; i ++) {if (data.charAt (i) == dấu phân tách || i == maxIndex) {found ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} trả về tìm thấy> chỉ mục? data.substring (strIndex [0], strIndex [1]): ""; }

Bước 5: Thời gian để kiểm tra

Biên dịch mã của bạn và kiểm tra xem các thành phần có hoạt động không!

Bước 6: Thiết lập ứng dụng Bluetooth

Thiết lập ứng dụng Bluetooth
Thiết lập ứng dụng Bluetooth
Thiết lập ứng dụng Bluetooth
Thiết lập ứng dụng Bluetooth
Thiết lập ứng dụng Bluetooth
Thiết lập ứng dụng Bluetooth

Bởi vì tôi cảm thấy phiền phức khi đào mã mỗi khi tôi muốn đặt báo thức, tôi muốn tạo một ứng dụng đặt báo thức, cách này dễ dàng hơn.

Truy cập https://ai2.appinventor.mit.edu. Tại đây chúng tôi có thể tạo một ứng dụng đơn giản cho phép chúng tôi đặt báo thức, tôi đã bao gồm thiết lập thiết kế đơn giản (bạn luôn có thể chỉnh sửa điều này sau) và mã được sử dụng cho Kết nối bluetooth. Sau đó, bạn có thể xuất bản ứng dụng của mình và kết nối với ứng dụng đó trên điện thoại bằng cách sử dụng mã QR hoặc tải trực tiếp ứng dụng trên máy tính của bạn, sau đó chuyển nó bằng cáp trên điện thoại của bạn. (ảnh chụp màn hình)

Bước 7: Xây dựng trường hợp

Xây dựng trường hợp
Xây dựng trường hợp
Xây dựng trường hợp
Xây dựng trường hợp
Xây dựng trường hợp
Xây dựng trường hợp

Bạn luôn có thể xây dựng một trường hợp khác xung quanh đồng hồ arduino của mình. Tôi đã sử dụng gỗ và plexiglass mờ để làm hộp đựng đồng hồ báo thức của riêng mình. Tôi đã chọn plexiglass mờ để bạn có thể nhìn rõ ánh sáng chiếu qua vỏ nhưng bạn không thể nhìn thấy bên trong đồng hồ.

Bước 8: Đã hoàn thành

Hoàn thành!
Hoàn thành!
Hoàn thành!
Hoàn thành!
Hoàn thành!
Hoàn thành!

Bây giờ bạn đã tải mã lên arduino của mình, hãy xây dựng vỏ và kiểm tra xem bạn đã lắp ráp đồng hồ của mình đúng cách chưa, bạn có thể đặt báo thức trên ứng dụng bluetooth và bắt đầu thức dậy tự nhiên hơn!:)

Đề xuất: