Съдържание:

Будилник Sunrise с LCD дисплей и приложение за Bluetooth: 8 стъпки
Будилник Sunrise с LCD дисплей и приложение за Bluetooth: 8 стъпки

Видео: Будилник Sunrise с LCD дисплей и приложение за Bluetooth: 8 стъпки

Видео: Будилник Sunrise с LCD дисплей и приложение за Bluetooth: 8 стъпки
Видео: ОБЗОР ТРЕНДОВОГО НОЧНИКА SMART LIGHT SOUND MACHINE С БЫСТРОЙ ЗАРЯДКОЙ IPHONE 15W BLUETOOTH КАЛОНКА 2024, Юли
Anonim
Будилник Sunrise с LCD дисплей и приложение за Bluetooth
Будилник Sunrise с LCD дисплей и приложение за Bluetooth
Будилник Sunrise с LCD дисплей и приложение за Bluetooth
Будилник Sunrise с LCD дисплей и приложение за Bluetooth

Зимата може да бъде тъжна. Събуждате се, тъмно е и трябва да станете от леглото. Последното нещо, което искате да чуете, е досадният звук на будилника. Ако вие, като мен, имате проблеми със събуждането сутрин, този будилник е точно това, от което се нуждаете.

В този урок ще изградим будилник Sunrise. Това е будилник като всеки друг, тъй като можете да настроите часа и минутите, в които искате да се събудите, но с предимството да използвате светлина, за да осветите спалнята си за определен период от време, като изгрев, за да ви събуди, вместо досадно зумер!

Също така ще използваме Bluetooth модул, за да създадем приложение, което ви позволява да настроите алармата чрез телефона си върху часовника. LCD дисплеят ще показва часа, датата и деня от седмицата. Лампите Sunrise съществуват на пазара, но могат да бъдат скъпи (бързото търсене в Google връща продукти в диапазона от 100 евро), крехки и доста клинично изглеждащи. Ето защо реших да направя свой собствен за моя училищен проект Arduino. Всички части ще бъдат изброени в следващата стъпка. Кодът може да бъде изтеглен от моя Github repo изгрев-будилник. Нека да започнем:)

целият код може да бъде намерен на:

Стъпка 1: Събиране на частите

Събиране на частите
Събиране на частите
Събиране на частите
Събиране на частите
Събиране на частите
Събиране на частите

Ще използваме часовник като вход и ултра ярък светодиод като изход, за да симулираме изгрева си.

За да изградим веригата ще ни трябва:

- Arduino Uno - часовник модул RTC DS3231 - MOSFET за контрол на яркостта на светлината - супер ярък светодиод (купих 2, един топъл, един студен) - 9V батерия за захранване на светодиода - чертеж - LCD дисплей (16: 2)- Bluetooth адаптер hc-05, за да можем да използваме приложение за настройка на алармата.

Всичко, от което се нуждаете, може да бъде закупено на www.martoparts.nl

Стъпка 2: Сглобяване на веригата

Сглобяване на веригата
Сглобяване на веригата
Сглобяване на веригата
Сглобяване на веригата

Можете да се обърнете към скицата за моята схема, за съжаление не можах да намеря RTC DS3231 в програмата, така че трябваше да направя това. Връзките са малко по -различни в действителност, ето ги връзките. (Bluetooth модулът не е в скицата, но ще обясня как работи по -долу, защото го прави доста сложно)

RTC DS3231GND отива до GND на arduino

VCC преминава към 5v

SDA отива в arduino

SCL отива на arduino Няма да използваме SQW и 32KMOSFET

Щифтът на портата отива към щифт ~ 9 на Arduino Uno, защото той е PWMDrain щифт отива към отрицателната страна на LED Изходния извод отива към GND на ArduinoLCD-дисплея GND отива към GND на arduino

VCC отива на 5VSDA отива на A4 на arduinoSKL отива на A5 на arduinoLED- отива на mosfet+ отива на батерия 5v9v Можете да си купите 9v батерия във всеки местен магазин, включете в arduino с конектор.

Bluetooth модул hc-055V отива на 5V от arduino

GND отива до GND на arduino

Сега има още 2 входа, но тук идва сложната част, трябва да свържем противоположните входове на тези 2 на arduinoTX от hc-05 отива към RX на arduinoRX от hc-05 отива към TX на arduino

Важно: Уверете се, че ПРЕКРАТЯВАТЕ TX & RX от HC-05, когато качвате код на вашия arduino, или ще получите грешка, казвайки „нещо се обърка с качването на кода“в компилатора.

Стъпка 3: Настройка на LCD дисплея и часовника

Настройка на LCD дисплея и часовника
Настройка на LCD дисплея и часовника
Настройка на LCD дисплея и часовника
Настройка на LCD дисплея и часовника

Библиотеката, използвана за LCD дисплея, е течен кристал и може да бъде намерена на: https://github.com/fdebrabander/Arduino-LiquidCrys… Изтеглете zip файла, запазете го и го поставете в папката/библиотеките на Arduino

Библиотеката, която използвам за пускане на часовника, може да бъде намерена на Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 и се уверете, че сте на страницата DS3231. Изтеглете zip файла, запазете го и го поставете в папката на библиотеките на вашия Arduino.

Време

Включете библиотеката DS3231 или DS1307 във вашия код на arduino

Декомментирайте тези 3 реда код, за да зададете часа:

// rtc.setDOW (ПОНЕДЕЛНИК); // Задайте Ден от седмицата на НЕДЕЛЯ // rtc.setTime (23, 57, 0); // Задайте часа на 12:00:00 (формат 24 часа) // rtc.setDate (14, 1, 2019); // Задайте датата на 1 януари 2014 г.

ЛСД дисплей

Включете библиотеката liqduicrystal_i2c във вашия код на arduino

За отпечатване на LCD дисплея използвайте

lcd.setCursor (колона, ред) // позиция на отпечатания текст lcd.print (~) // текст отпечатан

Стъпка 4: Кодиране

Кодиране
Кодиране

Изтеглете кода на: github:

Декомментирайте тези 3 реда, за да настроите часовника на вашия LCD дисплей:

// rtc.setDOW (ПОНЕДЕЛНИК); // Задайте Ден от седмицата на НЕДЕЛЯ // rtc.setTime (23, 57, 0); // Задайте часа на 12:00:00 (24 -часов формат) // rtc.setDate (14, 1, 2019); // Задайте датата на 1 януари 2014 г.

Използвайте lcd.setCuros (колона, ред); за да зададете позицията на текста на дисплея

lcd.setCursor (0, 2);

и print (), за да отпечатате нещо на дисплея

lcd.print (rtc.getDateStr ());

Променете тези променливи, ако искате

int fadeTime = 1; // Колко дълго светлината ще избледнява до maxint setHour = 02; // Задаване на часове за събуждане (военно време) int setMin = 49; // Задайте минута за събуждане int uled = 9; // Задаване на извеждане с PWM

Код на Bluetooth модул

Низ firstHalf = getValue (вход, ':', 0); // проверявам първия вход до ":"

Низ secondHalf = getValue (вход, ':', 1); // проверете второто въвеждане след ":"

// използвайте този код, ако не използвате Bluetooth модула

// // if (t.hour == setHour && t.min == setMin) // Проверете дали е време за събуждане! // {// start (); //}

// проверяваме първите 2 цифри на входовете, след това проверяваме вторите 2 цифри на входа

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

// логика за разделяне на низове

Низ getValue (Данни за низ, разделител на символи, 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) == разделител || i == maxIndex) {намерен ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i+1: i; }} връщане намерено> индекс? data.substring (strIndex [0], strIndex [1]): ""; }

Стъпка 5: Време за тестване

Компилирайте вашия код и тествайте дали компонентите работят!

Стъпка 6: Настройка на Bluetooth приложение

Настройка на Bluetooth приложение
Настройка на Bluetooth приложение
Настройка на Bluetooth приложение
Настройка на Bluetooth приложение
Настройка на Bluetooth приложение
Настройка на Bluetooth приложение

Тъй като ми беше досадно да копая в кода всеки път, когато исках да задам аларма, исках да направя приложение, което да зададе алармата, което е много по -лесно.

Отидете на https://ai2.appinventor.mit.edu, където можем да направим просто приложение, което ни позволява да настроим алармата, аз включих простата настройка на дизайна (винаги можете да промените това по-късно) и кода, използван за Bluetooth връзка. След това можете да публикувате приложението си и да се свържете с него на телефона си, като използвате QR код или директно изтегляте приложението на компютъра си, след което го пренасяте с кабел на телефона си. (екранна снимка)

Стъпка 7: Изграждане на случая

Изграждане на случая
Изграждане на случая
Изграждане на случая
Изграждане на случая
Изграждане на случая
Изграждане на случая

Винаги можете да изградите различен калъф около вашия часовник arduino. Използвах дърво и матов плексиглас, за да конструирам свой собствен калъф за будилник. Избрах матов плексиглас, така че можете да видите светлината, която ясно проблясва през корпуса, но не можете да видите вътрешността на часовника.

Стъпка 8: Готово

Готово!
Готово!
Готово!
Готово!
Готово!
Готово!

Сега, след като сте качили кода на вашия arduino, изградете кутията и проверихте дали правилно сте сглобили часовника си, можете да настроите аларма в приложението bluetooth и да започнете да се събуждате по -естествено!:)

Препоръчано: