Мазмуну:
- 1 -кадам: Бөлүктөрдү чогултуу
- 2 -кадам: Районду чогултуу
- 3 -кадам: ЖК дисплейин жана саатты орнотуу
- 4 -кадам: Коддоо
- 5 -кадам: Тестирлөөнүн убактысы
- 6-кадам: Bluetooth колдонмосун орнотуу
- 7 -кадам: Ишти куруу
- 8 -кадам: Бүттү
Video: LCD дисплейи жана Bluetooth колдонмосу менен Sunrise Ойготкуч саат: 8 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Кыш кайгылуу болушу мүмкүн. Сиз ойгоносуз, караңгы жана сиз төшөктөн турушуңуз керек. Сиз уккусу келген акыркы нерсе - будильниктин тажатма үнү. Эгерде сизде, мага окшоп, эртең менен ойгонуу кыйын болсо, бул будильник сизге керектүү нерсе.
Бул үйрөткүчтө биз Күн чыгышынын Ойготкуч Саатын курабыз. Бул ойготкуңуз келген саатты жана мүнөтүңүздү коё турган башка ойготкуч саат, бирок жарыктын жардамы менен уктоочу бөлмөнү бир аз убакыттын ичинде күндүн чыгышы сыяктуу ойготуп, кыжырдантуунун ордуна ойготот. коңгуроо!
Телефонуңуз аркылуу ойготкучту саатка коё турган колдонмону түзүү үчүн биз Bluetooth модулун колдонобуз. ЖК дисплей убактысын, күнүн жана күнүн көрсөтөт. Sunrise лампалары рынокто бар, бирок алар кымбат болушу мүмкүн (Google'дан тез издөө 100 евролук товарларды кайтарат), морт жана клиникалык көрүнүшү. Ошол себептен мен Arduino мектебимдин долбоорун өз колум менен жасоону чечтим. Бардык бөлүктөр кийинки кадамда тизмеленет. Кодду Github репо күн чыгыш-ойготкуч сааттан жүктөп алсаңыз болот. Баштайлы:)
бардык кодду бул жерден тапса болот:
1 -кадам: Бөлүктөрдү чогултуу
Биз күндүн чыгышын симуляциялоо үчүн саатты өзүбүздүн киришибиз жана ультра жаркыраган LED катары колдонобуз.
Районду куруу үчүн бизге керек болот:
- Arduino Uno- RTC DS3231 саат модулу - жарыктын жарыгын контролдоо үчүн MOSFET - супер жаркыраган LED (мен 2, бир жылуу, бир суук сатып алдым) - 9В батареяны жарыктандыруу үчүн - нан панели - ЖК дисплей (16: 2)- Bluetooth адаптери hc-05, ошондуктан биз ойготкучту орнотуу үчүн колдонмону пайдалана алабыз.
Сизге керектүү нерсенин баарын www.martoparts.nl сайтынан сатып алсаңыз болот
2 -кадам: Районду чогултуу
Сиз менин схемамдын эскизине кайрылсаңыз болот, тилекке каршы, мен программада RTC DS3231ди таба алган жокмун, ошондуктан мен муну менен алектенгем. Байланыштар чындыгында бир аз башкача, бул жерде байланыштар. (bluetooth модулу эскизде жок, бирок мен анын кантип иштээрин түшүндүрөм, анткени бул өтө татаал)
RTC DS3231GND arduino боюнча GNDге барат
VCC 5v барат
SDA arduinoго барат
SCL arduinoго барат Биз SQW & 32KMOSFET колдонбойбуз
Дарбаза пини Arduino Uno ~ 9 пинге барат, анткени ал PWMDrain пин терс жагына барат LED булагы пин Ардуинодо GNDге баратLCD-DisplayGND arduinoдогу GNDге барат.
VCC 5VSDAга өтөт arduino боюнча A4кө баратSKL A5ке барат arduinoLED- mosfetке барат+ 5v9v батареясына барат Сиз каалаган дүкөндөн 9v батарейканы сатып алып, ардуинону туташтыргыч тилкеси менен туташтыра аласыз.
Bluetooth модулу hc-055V arduinoдон 5Vга өтөт
GND arduino боюнча GNDге барат
Азыр дагы 2 кириш бар, бирок бул жерде татаал бөлүгү келип чыкты, биз hc-05тен arduinoTXке карама-каршы келгендерди туташтырышыбыз керек arduinoRX боюнча RXке hc-05тен arduino боюнча TXке өтүшүбүз керек.
Маанилүү: Ардуиного код жүктөп жатканда TC & RXти HC-05тен ажыратканыңызды текшериңиз же компилятордо "кодду жүктөөдө ката кетти" деген ката кетет.
3 -кадам: ЖК дисплейин жана саатты орнотуу
ЖК дисплей үчүн колдонулган китепкана суюк кристалл болуп саналат жана аны төмөнкү жерден тапса болот: https://github.com/fdebrabander/Arduino-LiquidCrys… ZIP файлын жүктөп алып, аны сактап, Arduino/libraries папкаңызга салыңыз.
Мен саатты иштетүү үчүн колдонуп жаткан китепкананы Rinky-Dinky Electronicsтен тапса болот https://www.rinkydinkelectronics.com/library.php?id=73 жана DS3231 бетинде экениңизди текшериңиз. ZIP файлын жүктөп алыңыз, аны сактап, Arduino китепканалар папкасына коюңуз.
Убакыт
Ардуино кодуңузга DS3231 же DS1307 китепканасын кошуңуз
Убакытты белгилөө үчүн коддун 3 сабын комментарийлебеңиз:
// rtc.setDOW (ДҮЙШӨМБҮ); // Жуманын күнүн ЖЕКШЕМЕГЕ коюу // rtc.setTime (23, 57, 0); // Убакытты 12: 00гө коюу (24 саат форматы) // rtc.setDate (14, 1, 2019); // Күндү 2014 -жылдын 1 -январына коюңуз
LCD дисплей
Китепкана liqduicrystal_i2cти arduino кодуңузга кошуңуз
ЖК дисплейде басып чыгаруу үчүн колдонуңуз
lcd.setCursor (кол, катар) // тексттин абалы lcd.print (~) // текст басылган
4 -кадам: Коддоо
Кодду жүктөп алыңыз: github:
ЖК дисплейге саатты коюу үчүн бул 3 сапты комментарийлебеңиз:
// rtc.setDOW (ДҮЙШӨМБҮ); // Жуманын күнүн ЖЕКШЕМЕГЕ коюу // rtc.setTime (23, 57, 0); // Убакытты 12: 00гө коюу (24 саат форматы) // rtc.setDate (14, 1, 2019); // Күндү 2014 -жылдын 1 -январына коюңуз
Lcd.setCuros колдонуңуз (col, row); дисплейдеги тексттин ордун белгилөө үчүн
lcd.setCursor (0, 2);
жана дисплейде бир нерсени басып чыгаруу үчүн ()
lcd.print (rtc.getDateStr ());
Кааласаңыз, бул өзгөрмөлөрдү өзгөртүңүз
int fadeTime = 1; // Жарык канча убакытка чейин жоголот setHour = 02; // Ойготуу үчүн сааттарды коюңуз (аскердик убакыт) int setMin = 49; // int uled = 9 ойгонуу үчүн мүнөт коюңуз; // PWM менен pinout коюңуз
Bluetooth модулунун коду
String firstHalf = getValue (киргизүү, ':', 0); // ":" чейин биринчи киргизүүнү текшериңиз
Сап secondHalf = getValue (киргизүү, ':', 1); // ":" кийин экинчи киргизүүнү текшерүү
// эгер сиз Bluetooth модулун колдонбосоңуз, бул кодду колдонуңуз
// // if (t.hour == setHour && t.min == setMin) // Ойгонууга убакыт келгенин текшериңиз! // {// баштоо (); //}
// биринчи 2 цифралуу киргизүүнү текшериңиз, андан кийин киргизүүнүн экинчи 2 цифрасын текшериңиз
if (t.hour == firstHalf.toInt () && t.min == secondHalf.toInt ()) {start (); }}
// саптарды бөлүү үчүн логика
String getValue (String data, char separator, int index) {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) == separator || i == maxIndex) {found ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i+1: i; }} кайтып табылды> индекс? data.substring (strIndex [0], strIndex [1]): ""; }
5 -кадам: Тестирлөөнүн убактысы
Кодуңузду түзүңүз жана компоненттер иштээрин текшериңиз!
6-кадам: Bluetooth колдонмосун орнотуу
Мен ойготкучту койгум келген сайын кодду казып алууну тажаттым, анткени ойготкучту орното турган колдонмо жасагым келди, бул оңой.
Http: //ai2.appinventor.mit.edu дарегине өтүңүз, анда биз ойготкучту коюуга мүмкүндүк берген жөнөкөй колдонмону жасай алабыз, мен жөнөкөй дизайнды орнотууну киргиздим (муну кийинчерээк оңдоп койсоңуз болот) жана код үчүн колдонулат bluetooth байланышы. Сиз андан кийин колдонмоңузду жарыялай аласыз жана аны телефонуңузга QR кодун колдонуп же түздөн -түз компьютериңизге жүктөп алып, телефонуңузга кабель менен өткөрүп бере аласыз. (скриншот)
7 -кадам: Ишти куруу
Сиз ар дайым ардуино саатыңыздын айланасында башка корпус кура аласыз. Мен өзүмдүн ойготкуч саатымды жасоо үчүн жыгачтан жана күңүрт плексигласс колдончумун. Мен жалтырабаган плексиглассты тандадым, ошондуктан сиз корпустун ичиндеги жарыкты так көрө аласыз, бирок сааттын ичин көрө албайсыз.
8 -кадам: Бүттү
Эми сиз кодду arduinoго жүктөп, корпусту куруп, саатыңызды туура топтогонуңузду текшерип, bluetooth колдонмосуна ойготкуч коюп, табигый түрдө ойгоно баштай аласыз!:)
Сунушталууда:
Акылдуу ойготкуч саат: Raspberry Pi менен жасалган акылдуу ойготкуч саат: 10 кадам (сүрөттөр менен)
Smart Alarm Clock: Raspberry Pi менен жасалган акылдуу ойготкуч: Сиз качандыр бир убакта акылдуу саатты кааладыңыз беле? Андай болсо, бул сиз үчүн чечим! Мен Smart Alarm Clock жасадым, бул веб -сайтка ылайык ойготкуч убактысын өзгөртө турган саат. Ойготкуч өчкөндө, үн чыгат (зумбул) жана 2 жарык күйөт
Ойготкуч саат менен DIY Smart Scale (Wi-Fi, ESP8266, Arduino IDE жана Adafruit.io менен): 10 кадам (Сүрөттөр менен)
Ойготкуч саат менен DIY Smart Scale (Wi-Fi, ESP8266, Arduino IDE жана Adafruit.io менен): Мурунку долбоорумда мен Wi-Fi менен акылдуу ванна таразасын иштеп чыккам. Ал колдонуучунун салмагын өлчөй алат, жергиликтүү түрдө көрсөтөт жана булутка жөнөтөт. Бул тууралуу кененирээк маалыматты төмөнкү шилтемеден ала аласыз: https: //www.instructables.com/id/Wi-Fi-Smart-Scale-wi
Arduino 4 Wheel Drive Bluetooth RC Car UNO R3, HC-05 жана L293D Motorshield коддоо жана Android колдонмосу менен: 8 кадам
Arduino 4 Wheel Drive Bluetooth RC Car UNO R3, HC-05 жана L293D Motorshield менен коддоо жана Android тиркемесин колдонуп: Бүгүн мен сизге HC 05, L293 мотор калканчын колдонуу менен arduino 4 дөңгөлөктүү bluetooth RC машинасын кантип жасоо жөнүндө айтып берейин. 4 DC мотору, коддоону жана андроиддин машинаны башкарууга колдонмосун колдонот. Компонент колдонулат: -1-Arduino UNO R32-Bluetooth HC-053-Motorshield L293
Arduino менен Sunrise Ойготкуч Сааты: 9 Кадам (Сүрөттөр менен)
Күндүн чыгышы Ойготкуч Ардуино менен: Кыш кайгылуу болушу мүмкүн. Сиз ойгоносуз, караңгы, сиз төшөктөн турушуңуз керек. Сиз уккусу келген акыркы нерсе - будильниктин үнү. Мен Лондондо жашайм жана эртең менен ойгонуу кыйын. Ошондой эле, мен ойгонууну сагындым
Өзгөчөлөштүрүлүүчү ыр ойготкучу менен LED Sunrise Ойготкуч Сааты: 7 кадам (Сүрөттөр менен)
Өзгөчөлөштүрүлүүчү Ыр Ойготкуч менен LED Sunrise Ойготкуч Сааты: Менин мотивациям Бул кышта менин сүйлөшкөн кызым эртең менен ойгонууда бир топ кыйынчылыктарга туш болгон жана SAD (Сезондук Аффективдүү Дисциплина) менен ооруп жаткандай сезилген. Ал тургай, күн чыкпагандыктан кышында ойгонуу канчалык кыйын экенин байкайм