Բովանդակություն:

Ockամացույց, LCD էկրան, ինֆրակարմիր ՝ սահմանելու համար ՝ 6 քայլ
Ockամացույց, LCD էկրան, ինֆրակարմիր ՝ սահմանելու համար ՝ 6 քայլ

Video: Ockամացույց, LCD էկրան, ինֆրակարմիր ՝ սահմանելու համար ՝ 6 քայլ

Video: Ockամացույց, LCD էկրան, ինֆրակարմիր ՝ սահմանելու համար ՝ 6 քայլ
Video: HATAY HUMUSU MU ? TARSUS HUMUSU MU ? l Sokak Lezzetleri 2024, Հուլիսի
Anonim
Clամացույց, LCD էկրան, ինֆրակարմիրը կարգավորելու համար
Clամացույց, LCD էկրան, ինֆրակարմիրը կարգավորելու համար
Ockամացույց, LCD էկրան, ինֆրակարմիրը կարգավորելու համար
Ockամացույց, LCD էկրան, ինֆրակարմիրը կարգավորելու համար

Կառուցեք իրական ժամանակի ժամացույց, որը պահպանում է գործարկման ժամանակը տարեկան մի քանի րոպեի ընթացքում: Կոդն ու բաղադրիչները կարող են հեշտությամբ վերափոխվել այլ նախագծերի:

Այս նախագիծը պահանջում է նվազագույն քանակությամբ էլեկտրագծեր և առանց զոդման: Keepամանակապահը իրական ժամանակի DS3231 ժամացույցն է: Timeամանակը ցուցադրվում է էժան 1602 LCD- ով: Երկու մոդուլներն էլ օգտագործում են I2C հաղորդակցություններ: Arduino- ին միանալիս I2C- ն օգտագործում է միայն 2 լար մեկ մոդուլում: Ես օգտագործում եմ Arduino Nano- ն, քանի որ այն հիանալի տեղավորվում է հացահատիկի վրա: Հետևյալ հրահանգները կաշխատեն Arduino Uno- ի հետ, քանի որ այն ունի նույն PIN համարները, ինչ Nano- ն այս նախագծի համար: Մյուս բաղադրիչը ինֆրակարմիր ընդունիչն է: Այն թույլ է տալիս օգտագործել սովորական հեռակառավարման վահանակ, ինչպիսին է հեռուստատեսության հեռակառավարման վահանակը, ժամանակը սահմանելու համար ճիշտ այնպես, ինչպես դուք կսահմանեիք մեր խելացի հեռուստատեսության վրա: Ինֆրակարմիր ընդունիչին անհրաժեշտ է միայն մեկ մետաղալար `այն Arduino- ին միացնելու համար:

Առաջին քայլը Arduino- ի փորձարկումն ու այն տախտակին միացնելն է: Հետևյալ քայլերը, որոնք նախատեսված են ինքնուրույն աշխատելու համար: Յուրաքանչյուր քայլ ունի էլեկտրագծերի և փորձարկման հրահանգներ: Երբ ես կառուցում եմ նախագծեր, ես միացնում և ստուգում եմ յուրաքանչյուր բաղադրիչ `հաստատելու, որ դրանք աշխատում են: Սա օգնում է ինտեգրվել մի շարք բաղադրիչներ, քանի որ գիտեք, որ յուրաքանչյուր աշխատանք և ես կարող ենք կենտրոնանալ ինտեգրման պահանջների վրա:

Այս հրահանգը պահանջում է, որ դուք տեղադրեք Arduino IDE- ն: Ձեզանից պահանջվում է նաև ունենալ հիմնական հմտություններ ՝ այս նախագծի հղումներից ներբեռնելու Arduino էսքիզային ծրագիրը, ստեղծելու տեղեկատու ծրագրի համար (գրացուցակի անունը նույնը, ինչ ծրագրի անունը): Հաջորդ քայլերն են ՝ ծրագիրը բեռնել, դիտել և խմբագրել IDE- ում: Այնուհետև ծրագիրը USB մալուխի միջոցով վերբեռնեք ձեր Arduino տախտակին:

Պարագաներ

  • Nano V3 ATmega328P CH340G Միկրո վերահսկիչ տախտակ Arduino- ի համար: Որպես այլընտրանք, կարող եք օգտագործել Uno:
  • DS3231 իրական ժամանակի ժամացույց և CR2032 մարտկոց:
  • 1602 LCD I2C մոդուլով
  • Ինֆրակարմիր ընդունիչ և հեռակառավարիչ: Ես օգտագործեցի IR անլար հեռակառավարման մոդուլի հավաքածուներ, որոնք գալիս էին ինֆրակարմիր ընդունիչով և ինֆրակարմիր հեռակառավարմամբ:
  • Breadboard
  • Հաղորդալար մալուխներ
  • 5 վոլտ պատի ադապտեր

Ես մասերը գնել եմ eBay- ում, հիմնականում Հոնկոնգից կամ Չինաստանից դիստրիբյուտորներից: Երբեմն ամերիկյան դիստրիբյուտորներն ունեն նույն կամ նմանատիպ մասերը `մատչելի գներով և ավելի արագ առաքմամբ: Չինական մասերի առաքումը տևում է 3 -ից 6 շաբաթ: Իմ օգտագործած դիստրիբյուտորները բոլորը հուսալի են եղել:

Մոտավոր ծախսեր. Nano $ 3, DS3231 $ 1, LCD $ 3, ինֆրակարմիր հավաքածու $ 1, տախտակ $ 2, փաթեթ 40 մետաղալար մալուխների համար $ 1, $ 1 ՝ 5 վոլտ պատի ադապտերի համար: Ընդհանուր ՝ մոտ $ 11: Ուշադրություն դարձրեք, ես գնել եմ Nano- ն և LCD- ը `սեղանի գամասեղներով, որոնք արդեն իսկ ամրացված են տեղում, քանի որ իմ զոդման հմտությունները թույլ են: Theամացույցի մարտկոցի համար ես գնել եմ 5 տուփ լիթիումի CR2032 մարտկոց ՝ մոտ 1.25 դոլարով: Ես նաև գնել եմ 5 փաթեթ DS3231s, քանի որ սիրում եմ ժամանակի կտորներ: Այս նախագիծը օգտագործում է 1 տախտակ: Ես գնել եմ 3 տախտակի փաթեթ ՝ մոտ 7 դոլարով; ավելի լավ գործարք, քան առանձին տախտակ գնելը:

Քայլ 1. Ավելացրեք Arduino Nano- ն Breadboard- ին

Ավելացրեք Arduino Nano- ին Breadboard- ին
Ավելացրեք Arduino Nano- ին Breadboard- ին

Միացրեք Arduino Nano- ին Breadboard- ին: Կամ, եթե նախընտրում եք, կարող եք օգտագործել Arduino Uno այս նախագծի համար. նրանք երկուսն էլ օգտագործում են նույն կապում այս ծրագրի համար: Միացրեք Nano- ն (կամ Uno) ձեր համակարգչին USB մալուխի միջոցով:

Միացրեք հոսանքն ու սնուցողը Arduino- ից դեպի հացահատիկի հոսանքի բար: Միացրեք Arduino 5+ քորոցը տախտակի դրական բարին: Միացրեք Arduino GRN (աղացած) քորոցը տախտակի բացասական (աղացած) սանդղակին: Սա կօգտագործվի այլ բաղադրիչների կողմից:

Ներբեռնեք և գործարկեք Arduino- ի հիմնական թեստային ծրագիրը `arduinoTest.ino: Runningրագիրը գործարկելիս, LED լուսարձակը կմիացվի 1 վայրկյան, այնուհետև կփակվի 1 վայրկյան: Բացի այդ, տեղադրվում են հաղորդագրություններ, որոնք կարելի է դիտել Arduino IDE գործիքների/սերիական մոնիտորի մեջ:

+++ Կարգավորում:

+ Նախագծեց ելքի համար նախատեսված LED թվային քորոցը: LED- ն անջատված է: ++ Անցեք հանգույց: + Օղակների հաշվիչ = 1 + Օղակի հաշվիչ = 2 + Օղակների հաշվիչ = 3…

Որպես վարժություն փոխեք թարթող լույսի ժամանակի հետաձգումը, վերբեռնեք փոխված ծրագիրը և հաստատեք փոփոխությունը:

Վերոնշյալ լուսանկարում պատկերված է 140 կտորից պատրաստված առանց տախտակի թռիչքի մետաղալարերի հավաքածուի տուփ, որը կարող եք ձեռք բերել 3 -ից 5 դոլարով: Նրանք վահանակներն ավելի կոկիկ են դարձնում, որոնք օգտագործում են երկար մալուխներ կարճ միացումների համար:

Քայլ 2: Ավելացրեք DS3231 ժամացույցի մոդուլը և միացրեք այն Arduino- ին

Ավելացրեք DS3231 ժամացույցի մոդուլը և միացրեք այն Arduino- ին
Ավելացրեք DS3231 ժամացույցի մոդուլը և միացրեք այն Arduino- ին

Միացրեք ժամացույցի մոդուլը տախտակի մեջ: Միացրեք ժամացույցի մոդուլի GND կապը ՝ տախտակի գրունտային բարերի ժապավենին: Միացրեք ժամացույցի մոդուլի VCC կապը ՝ հացաթխիկի դրական բարերի ժապավենին: Միացրեք SDA (տվյալների) ժամացույցի մոդուլը Arduino- ի A4 կապին (I2C տվյալների քորոց): Միացրեք ժամացույցի մոդուլը SCL (ժամացույց) քորոցին Arduino- ի A5 (I2C ժամացույցի քորոց) կապին:

Arduino IDE- ում տեղադրեք DS3231 ժամացույցների գրադարան: Ընտրեք Գործիքներ/Գրադարանների կառավարում: Terտեք ձեր որոնումը ՝ մուտքագրելով «rtclib»: Ընտրեք RTClib ըստ Adafruit (տեղեկանքի համար ՝ գրադարանի հղում):

Ներբեռնեք և գործարկեք հիմնական թեստային ծրագիրը ՝ clockTest.ino: Runningրագիրը գործարկելիս տեղադրվում են ժամացույցի ժամային հաղորդագրություններ, որոնք կարելի է դիտել Arduino IDE գործիքների/սերիական մոնիտորի մեջ:

+++ Կարգավորում:

+ Clամացույցի հավաքածու: ++ Անցեք հանգույց: ---------------------------------------- + Ներկայիս ամսաթիվը և ժամը ՝ 2020/3/ 22 (կիրակի) 11: 42: 3 + Ընթացիկ ամսաթիվ և ժամ ՝ 2020/3/22 (կիրակի) 11: 42: 4 + ընթացիկ ամսաթիվ և ժամ ՝ 2020/3/22 (կիրակի) 11: 42: 5…

Որպես վարժություն, օգտագործեք rtc.adjust () ժամացույցի ժամը և ամսաթիվը սահմանելու համար, վերբեռնեք փոխված ծրագիրը և հաստատեք փոփոխությունը:

rtc.adjust (DateTime (2020, 3, 19, 10, 59, 50)); // Գարնան առաջին օրը, 2020 թ.

Քայլ 3: Ավելացրեք 1602 LCD ցուցադրման մոդուլ և միացրեք այն Arduino- ին

Ավելացրեք 1602 LCD ցուցադրման մոդուլ և միացրեք այն Arduino- ին
Ավելացրեք 1602 LCD ցուցադրման մոդուլ և միացրեք այն Arduino- ին

Միացրեք LCD մոդուլը տախտակի մեջ: Միացրեք ժամացույցի մոդուլի GND կապը ՝ տախտակի գրունտային բարերի ժապավենին: Միացրեք ժամացույցի մոդուլի VCC կապը ՝ հացաթխիկի դրական բարերի ժապավենին: Միացրեք SDA (տվյալների) ժամացույցի մոդուլը Arduino- ի A4 կապին (I2C տվյալների քորոց): Connectամացույցի մոդուլի SCL (ժամացույց) կապը միացրեք Arduino- ի A5 (I2C ժամացույցի քորոց) կապին:

Arduino IDE- ում տեղադրեք 1602 LCD գրադարան: Ընտրեք Գործիքներ/Գրադարանների կառավարում: Filտեք ձեր որոնումը ՝ մուտքագրելով «LiquidCrystal»: Ընտրեք LiquidCrystal I2C- ը ՝ Ֆրանկ դե Բարբանդերի կողմից (հղման համար, գրադարանի հղումը):

Ներբեռնեք և գործարկեք հիմնական թեստային ծրագիրը ՝ lcd1602Test.ino: Runningրագիրը գործարկելիս տեղադրվում են ժամացույցի ժամային հաղորդագրություններ, որոնք կարելի է դիտել Arduino IDE գործիքների/սերիական մոնիտորի մեջ:

+++ Կարգավորում:

+ LCD պատրաստ է օգտագործման համար: +++ Գնալ դեպի հանգույց: + theCounter = 1 + theCounter = 2 + theCounter = 3…

Որպես վարժություն փոխեք LCD- ի ցուցադրման հաղորդագրությունները, վերբեռնեք փոխված ծրագիրը և հաստատեք փոփոխությունը:

Քայլ 4: Ավելացրեք ինֆրակարմիր ընդունիչ և միացրեք այն Arduino- ին

Ավելացրեք ինֆրակարմիր ընդունիչ և միացրեք այն Arduino- ին
Ավելացրեք ինֆրակարմիր ընդունիչ և միացրեք այն Arduino- ին

Միացրեք էգին արական մալուխային լարերը ինֆրակարմիր ընդունիչին (էգ ծայրերը): Միացրեք ժամացույցի մոդուլի գրունտային քորոցը `հացահատիկի գրունտային բարերի ժապավենին: Միացրեք ժամացույցի մոդուլի հոսանքի քորոցը ՝ տախտակի դրական բարերի ժապավենին: Միացրեք ինֆրակարմիր ընդունիչի ելքային կապը ՝ Arduino A1 կապին:

Միացրեք ինֆրակարմիր ընդունիչին, կապում վերևից ձախ ՝ աջ.

Ձախ մասը (X- ի կողքին) - Nano pin A1 կենտրոն - 5V Աջ - հող

A1 + - - Նանո կապի միացումներ

| | | -ինֆրակարմիր ստացողի կապում --------- | S | | | | --- | | | | | | --- | | | ---------

Arduino IDE- ում տեղադրեք ինֆրակարմիր գրադարան: Ընտրեք Գործիքներ/Գրադարանների կառավարում: Terտեք ձեր որոնումը ՝ մուտքագրելով «IRremote»: Ընտրեք IRremote by Shirriff (տեղեկանքի համար ՝ գրադարանի հղումը):

Ներբեռնեք և գործարկեք հիմնական թեստային ծրագիրը ՝ infraredReceiverTest.ino: Runningրագիրը գործարկելիս ձեր հեռակառավարման վահանակը նշեք ընդունիչի վրա և սեղմեք տարբեր կոճակներ, ինչպիսիք են 0 -ից 9 -ը համարը: Սերիական հաղորդագրությունները դուրս են գալիս (տպվում են), որոնք կարելի է դիտել Arduino IDE գործիքների/սերիական մոնիտորի մեջ:

+++ Կարգավորում:

+ Նախնականացված ինֆրակարմիր ընդունիչ: ++ Անցեք հանգույց: + Բանալին OK - Փոխել + Բանալին> - հաջորդ + Բանալին < - նախորդ + Բանալին վերև + Բանալին ներքև + Բանալին 1: + Բանալին 2: + Բանալին 3: + Բանալին 4: + Բանալին 6: + Բանալին 7: + Բանալին 8: + Բանալին 9: + Բանալին 0: + Բանալին * (վերադարձ) + Բանալին # (Ելք)

Որպես վարժություն, օգտագործեք հեռուստատեսության հեռակառավարիչը `տպված արժեքները տեսնելու համար: Այնուհետեւ կարող եք փոփոխել ծրագիրը `infraredSwitch () ֆունկցիայի անջատիչ հայտարարության արժեքները օգտագործելու համար: Օրինակ, սեղմեք «0» ստեղնը և ստացեք արժեքը ձեր հեռակառավարման վահանակի համար, օրինակ ՝ «0xE0E08877»: Այնուհետև անջատիչ հայտարարության մեջ ավելացրեք պատյան, ինչպես հետևյալ կոդի հատվածում:

գործ 0xFF9867:

գործ 0xE0E08877: Serial.print ("+ Key 0:"); Serial.println (""); ընդմիջում;

Քայլ 5. Բեռնել ժամացույցի նախագիծը Arduino Sketch ծրագիրը և փորձարկել այն

Բեռնեք ockամացույցի նախագիծը Arduino Sketch ծրագիրը և փորձարկեք այն
Բեռնեք ockամացույցի նախագիծը Arduino Sketch ծրագիրը և փորձարկեք այն
Բեռնեք ockամացույցի նախագիծը Arduino Sketch ծրագիրը և փորձեք այն
Բեռնեք ockամացույցի նախագիծը Arduino Sketch ծրագիրը և փորձեք այն
Բեռնեք ockամացույցի նախագիծը Arduino Sketch ծրագիրը և փորձարկեք այն
Բեռնեք ockամացույցի նախագիծը Arduino Sketch ծրագիրը և փորձարկեք այն

Այժմ, երբ բոլոր բաղադրիչներն ավելացվում են հացահատիկի վրա, լարերով և փորձարկվում են. ժամանակն է բեռնել հիմնական ժամացույցի ծրագիրը և գործարկել այն: Theամացույցի ծրագիրը ստանում է ժամանակը ժամացույցի մոդուլից, ցուցադրում է ժամանակը LCD- ով և թույլ է տալիս ժամանակը սահմանել ինֆրակարմիր հեռակառավարման վահանակի միջոցով:

Ներբեռնեք և գործարկեք նախագծի ժամացույցի ծրագիրը ՝ clockLcdSet.ino:

Երբ ծրագիրը սկսվում է, այն ցուցադրելու է DS3231 ժամանակը 1602 LCD էկրանին: Հաղորդագրությունները դիտելի են Arduino IDE գործիքների/սերիական մոնիտորի մեջ:

+++ Կարգավորում:

+ LCD հավաքածու: + syncCountWithClock, theCounterHours = 13 theCounterMinutes = 12 theCounterSeconds = 13 + ockամացույցը դրված և համաժամեցված է ծրագրի փոփոխականների հետ: + Ինֆրակարմիր ընդունիչը միացված է: ++ Անցեք հանգույց: + clockPulseMinute (), theCounterMinutes = 15 + clockPulseMinute (), theCounterMinutes = 16 + clockPulseMinute (), theCounterMinutes = 17…

Ուղղեք ձեր հեռակառավարման վահանակը ընդունիչի վրա և սեղմեք աջ սլաքի կոճակը: Տարին կցուցադրվի կարգավորման համար: Մի քանի անգամ սեղմեք աջ սլաքի կոճակը ՝ տեսնելու համար, որ կարող եք սահմանել տարին, ամիսը, օրը, ժամը, րոպեն և վայրկյանները: Timeամկետային արժեք սահմանելու համար անցեք արժեքին: Օգտագործեք վեր և վար սլաքները `ցուցադրման արժեքը սահմանելու համար: Այնուհետեւ օգտագործեք «OK» ստեղնը `ժամացույցի արժեքը սահմանելու համար: Մեկ արժեքը սահմանվում է միաժամանակ:

Քայլ 6: Արտաքին էներգիայի մատակարարում

Արտաքին էներգիայի մատակարարում
Արտաքին էներգիայի մատակարարում

Այժմ, երբ ձեր ժամացույցը փորձարկվել և աշխատում է, կարող եք այն անջատել ձեր համակարգչից և օգտագործել անկախ սնուցման աղբյուր: Պարզության համար ես օգտագործում եմ 5 վոլտ պատի ադապտեր, որը կարելի է գնել մոտ մեկ դոլարով, և USB մալուխ ՝ մեկ այլ դոլար: Մալուխը Arduino- ն միացնում է +5V պատի ադապտերին: Քանի որ Arduino- ի հոսանքի և գրունտի կապիչները միացված են հացահատիկին, այն սնուցում է մյուս բաղադրիչները:

Պարզության և ցածր գնի պատճառով ես օգտագործում եմ այս նույն համադրությունը `այլ նախագծեր ապահովելու համար:

Հուսով եմ, որ դուք հաջողակ եք եղել և ձեզ դուր է եկել ինֆրակարմիր վերահսկվող LCD ժամացույցի կառուցումը:

Խորհուրդ ենք տալիս: