Բովանդակություն:
- Քայլ 1: Սարքավորումը
- Քայլ 2: Ստեղծեք LCD էկրան
- Քայլ 3: tingրագրակազմի տեղադրում
- Քայլ 4. Լրացուցիչ `էկրանն անջատելը
- Քայլ 5: Կախեք օրացույցը
Video: Խելացի պատի օրացույց `5 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Ես և կինս ունեինք դասական թղթե պատի օրացույց, որի վրա մենք նշեցինք կարևոր ամսաթվերը: Մենք նաև օգտագործում ենք Google օրացույցը մեր սմարթ հեռախոսների վրա ՝ իրադարձությունները նշելու համար, ուստի դա նշանակում էր կրկնակի աշխատանք: Այսպիսով, ես որոշեցի կառուցել խելացի պատի օրացույց, որը կցուցադրի մեր հիշեցումները, իրադարձությունները և որոշ այլ տվյալներ: Քանի որ ես ունեմ տարբեր հին էլեկտրոնային մասեր, իմ նպատակն էր դրանք հնարավորինս շատ օգտագործել և հնարավորինս քիչ ծախսերով կազմել օրացույցը:
Այս ձեռնարկում ես ձեզ ցույց կտամ, թե ինչպես կառուցել խելացի պատի օրացույց ՝ ցուցադրելով իրադարձություններ մի քանի Google հաշիվներից: Այն նաև կցուցադրի ժամանակը, ամսաթիվը, եղանակը, ջերմաստիճանը և որոշ լրացուցիչ տեղեկություններ: Այն սնուցվելու է Raspberry Pi համակարգչով, որին կցված է Պասիվ ինֆրակարմիր սենսոր (PIR) շարժման սենսոր, որպեսզի էկրանը միանա, երբ շարժումը հայտնաբերվի սենյակում, բայց անջատվի մի քանի րոպե անգործությունից հետո: Այս ձեռնարկը հիմնված է մի քանի այլ ձեռնարկների վրա, որոնք ես գտել եմ ինտերնետում, և ես նրանց հղումները կտամ ավելի լավ հասկանալու համար: Պահանջվում են ծրագրավորման որոշ հիմնական գիտելիքներ (HTML, Python,…):
Քայլ 1: Սարքավորումը
Ինչպես արդեն նշվեց, ես փորձեցի նորից օգտագործել նույնքան հին էլեկտրոնային մասեր, որպեսզի ծախսերը նվազեցվեն: Այնուամենայնիվ, ես որոշ իրեր պետք է գնեի, ուստի ես թվարկեմ այն ամենը, ինչ անհրաժեշտ է շինարարության համար:
- Raspberry Pi հավաքածու: Սկզբում ես օգտագործեցի իմ հին մոդելը 2 այլ նախագծերից: Այն աշխատեց, բայց վեբ էջի խմբագրումն ու վերաբեռնումը ինձ շատ ժամանակ տևեց, ուստի ես ի վերջո անցա 3 -րդ մոդելին, որն ավելի սահուն է աշխատում https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313 & _nkw = ազնվամորի+pi+kit & _sacat = 0
- LCD էկրան: Ես օգտագործել եմ իմ հին նոութբուքի էկրանը, ուստի ինձ միայն անհրաժեշտ էր գնել LVDS վարորդի տախտակ և դրա համար էլեկտրամատակարարում https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=hdmi+ վարորդ+LVDS+տախտակ & _sacat = 0
Պլաստիկ պահեստատուփ էլեկտրոնիկայի համար
- Պասիվ ինֆրակարմիր շարժման տվիչ
- AM2302 ջերմաստիճանի/խոնավության տվիչ
- Սև պլաստմասե սլայդ-ամրացուցիչ LCD շրջանակի համար
- Տարբեր մալուխներ (HDMI, 5.5 մմ DC հոսանքի համար, առանց զոդման տախտակի jumper մալուխներ, …)
Քայլ 2: Ստեղծեք LCD էկրան
Ես օգտագործեցի LCD էկրանը իմ հին հնացած նոթբուքից: Կան մի քանի ձեռնարկներ, թե ինչպես դա անել, ես հետևեցի այս մեկին.
www.instructables.com/id/How-to-reuse-the-old-LCD-Screen-of-your-broken-Lap/
Ես ապամոնտաժեցի իմ հին նոութբուքի կափարիչը, հանեցի LCD էկրանը, այնուհետև պատվիրեցի ճիշտ LVDS վարորդական տախտակը: Ես վաճառողին տրամադրեցի ապրանքի կոդը, որը կարելի է գտնել LCD- ի հետևի մասում, իմ դեպքում դա LP171WE3 (TL) (A2) է. Տես վերջին նկարի ներքևի պիտակը, այնուհետև նա ինձ ուղարկեց համապատասխան LVDS: Խնդրում ենք նկատի ունենալ, ցուցադրման համար ձեզ նույնպես պետք է սնուցման աղբյուր, ուստի խնդրեք վաճառողին այն նույնպես ուղարկել: Ես նաև գնել եմ 14,5 × 7,5 × 2 սմ չափս ունեցող գեղեցիկ պլաստիկ տուփ, որը գեղեցիկ տեղավորելու է վարորդի տախտակը և ամրացնելու այն LCD- ի հետևի կողմում:
Այժմ LCD էկրանն ունի մետաղական շրջանակ, որը գեղեցիկ տեսք չունի: Սկզբում ես այն ներկեցի սևով, բայց ներկը սկսեց պոկվել: Այսպիսով, ես վերցրեցի չորս սև պլաստմասե սլայդեր, որոնք սովորաբար օգտագործվում են թղթի թերթերը ամրացնելու համար, համապատասխանաբար կտրեցի դրանք և ամրացրեցի դրանք շրջանակը ծածկելու համար: Սա լավ տեսք ուներ, այնպես որ ես միացրեցի բոլոր մալուխները, միացրեցի HDMI- ն իմ հին Raspberry Pi- ին և Voila- ին, այն աշխատեց: Theուցադրման վրա պատկեր կար, այնպես որ ես պատրաստ էի անցնել հաջորդ քայլին `ինչ տեղեկատվություն ցուցադրել էկրանին և ինչպես ցուցադրել այն:
Քայլ 3: tingրագրակազմի տեղադրում
Երբ ես ինտերնետով փնտրում էի որոշ հուշումներ, թե ինչպես կառուցել օրացույցը, ինձ ոգեշնչեց այս էջը ՝ https://dakboard.com/site: Նրանք ապահովում են պատրաստի արտադրանքը (էկրանը, համակարգիչը և աշխատանքային ծրագրակազմը), բայց նրանք նաև ունեն հիանալի ձեռնարկ ՝ DIY լուծման համար (https://blog.dakboard.com/diy-wall-display/): Խորհուրդ եմ տալիս հետևել այս ձեռնարկին, գոնե առաջին մասի վրա Raspberry- ում համակարգը պատրաստելու և տեղադրելու վերաբերյալ հրահանգներով, որպեսզի բրաուզերը բեռնման ժամանակ ինքնաբերաբար բեռնի ցանկալի վեբ էջը:
Սա լավ աշխատեց, սակայն ես փնտրում էի ինչ -որ լուծում, որը կարող էր ավելի հարմարեցված լինել ըստ իմ ցանկությունների: Ես որոշեցի ստեղծել իմ սեփական վեբ սերվերը և ստեղծել վեբ էջ, որը օրացույցից բացի կցուցադրի լրացուցիչ տեղեկություններ: Ես ընտրել եմ Wordpress.org- ը, քանի որ այն լավ փաստաթղթավորված է և ունի լավ աջակցություն և մեծ համայնք ՝ ձեզ օգնելու համար: Ահա ձեռնարկը, թե ինչպես տեղադրել Wordpress- ը Raspberry Pi- ի վրա ՝ https://projects.raspberrypi.org/hy/projects/lamp-web-server-with-wordpress: Wordpress- ի տեղադրմամբ, ժամանակն էր նախագծել իմ գլխավոր էջը: Դուք կարող եք օգտագործել բազմաթիվ մատուցվող թեմաներից մեկը կամ զրոյից ձևավորել: Ինչևէ, դրա համար անհրաժեշտ է HTML ծրագրավորման որոշակի գիտելիքներ:
Ես նախագծել եմ իմ էջը, որպեսզի ձախ կողմում ցուցադրվի օրացույցը (https://sl.wordpress.org/plugins/google-calendar-events/), իսկ աջ կողմում ՝ ժամանակը և ամսաթիվը (https ՝ //www.timeanddate.com/clocks/free.html և https://www.arclab.com/hy/kb/htmlcss/display-date-time-javascript-php-ssi.html): Եղանակի կանխատեսումն այս էջից է (https://www.1a-vreme.si/vremensko-okno/), որը տրամադրում է կանխատեսման վիջեթ Սլովենիայի քաղաքների համար, բայց ես ենթադրում եմ, որ այլ երկրների վիջեթներ կարելի է գտնել նաև ինտերնետում: Temերմաստիճանը հավաքվում է AM2302 սենսորով (https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=AM2302+&_sacat=0), ինչպես բացատրված է այս գլխի վերջում: Ներքևում տեղադրված է ամենօրյա հետհաշվարկի ժամաչափ, որը ցույց է տալիս, թե քանի օր է մնացել ինչ -որ իրադարձության (իմ երեխաների համար հետաքրքիր է իմանալ, թե քանի օր նրանք պետք է սպասեն ինչ -որ բանի): Վերին աջ եզրում MetaSlider հավելվածն է (https://wordpress.org/plugins/ml-slider/), որը պատահականորեն սահում է դեպի իմ ընտանիքի ընտրված նկարները: Բացի այդ, ես օգտագործել եմ Background Slider plugin- ը (https://sl.wordpress.org/plugins/background-slider-master/) ՝ ավելի գեղեցիկ ֆոնի համար պատահական պատկեր ցույց տալու համար:
Ինչպես արդեն նշվեց, ներքին ջերմաստիճանը հավաքվում է AM2302 սենսորով: Կան բազմաթիվ ձեռնարկներ, թե ինչպես կարելի է ջերմաստիճան ստանալ, ես հետևեցի սրան ՝ https://www.modmypi.com/blog/am2302-temphumidity-sensor: Հետագայում այս սենսորը տեղափոխեցի մեկ այլ Raspberry Pi, որի վրա աշխատում էր Home Assistant- ը, որովհետև ավելի հեշտ է կարդալ և հրապարակել արժեքները ՝ օգտագործելով DHT Sensor բաղադրիչը (https://www.home-assistant.io/components/sensor.dht/). Տնային օգնականը կարող է նաև հավաքել արտաքին ջերմաստիճանը ՝ օգտագործելով եղանակի տարբեր բաղադրիչներ, ես օգտագործել եմ YR.no բաղադրիչը (https://www.home-assistant.io/components/sensor.yr/): Դրանով ես գրել եմ ավտոմատացման սցենար `այս բաղադրիչներից ներքին/արտաքին ջերմաստիճանը հավաքելու և դրանք տեքստային ֆայլ մուտքագրելու համար, որն այնուհետև ցուցադրվում է իմ պատի օրացույցում: Տնային օգնականի մասին լրացուցիչ տեղեկությունների համար տես գլխավոր էջը (https://www.home-assistant.io/):
Քայլ 4. Լրացուցիչ `էկրանն անջատելը
Այժմ մենք ունենք մեր օրացույցը կազմված և գործարկված, այնպես, ինչպես դա մեզ դուր է գալիս: Բայց մենք չենք ցանկանում, որ էկրանը միացված լինի 24/7 ռեժիմով: Մենք ցանկանում ենք, որ այն շարունակվի, երբ ինչ -որ մեկը տանը է: Բացի այդ, մենք չենք ուզում, որ այն միացված լինի գիշերվա կեսին, երբ զուգարան ենք գնում, այն շատ պայծառ է: Այսպիսով, մենք կցենք ինֆրակարմիր սենսոր `նկատելու համար, երբ ինչ -որ մեկը կանգնած է դրա դիմաց, և որոշ ժամանակային սահմանափակումներ ենք ավելացնում, երբ այն պետք է միանա:
Խնդրում եմ նկատի ունենալ, որ իմ ծրագրավորման հմտությունները բավականին սահմանափակ են, ուստի հետևյալը չի կարող օպտիմալ լինել, քանի որ ես այն ընտրել եմ տարբեր առցանց ֆորումներից և ձեռնարկներից, բայց ըստ էության այն աշխատում է: Այնուամենայնիվ, ցանկացած առաջարկություն դեռ ողջունելի է: Սկզբից մենք կսկսենք մոնիտորը ձեռքով միացնելու/անջատելու թեստով: Դրա համար մենք կստեղծենք երկու ֆայլ (օրինակ ՝ monitor_on.sh և monitor_off.sh) և դրանում կգրենք որոշակի ծածկագիր: Դա անելու ամենահեշտ ձևը ձեր Ազնվամորի մուտք գործելն է ՝ օգտագործելով SSH և մուտքագրեք
sudo nano monitor_on.sh
և մուտքագրեք հետևյալ ծածկագիրը
tvservice -նախընտրելի;
startx/usr/bin/graphical_launcher `fgconsole`
Սեղմեք CTRL+X ՝ պահելու և դուրս գալու համար, այնուհետև ստեղծեք երկրորդ ֆայլը
sudo nano monitor_off.sh
և մուտքագրեք հետևյալ ծածկագիրը
tvservice -անջատված;
Կրկին սեղմեք CTRL+X ՝ պահելու և դուրս գալու համար: Այս նոր ստեղծված ֆայլերը գործարկելի դարձրեք.
sudo chmod +x monitor_on.sh
sudo chmod +x monitor_off.sh
Այժմ փորձելու համար, եթե այս հրամանները գործում են, մուտքագրեք
sudo./monitor_off.sh
sudo./monitor_on.sh
Այժմ մոնիտորը պետք է համապատասխանաբար անջատվի և միանա: Ես նկատեցի, որ Raspberry Pi 2 -ում մոնիտորը միացնելու համար տևեց գրեթե 10 վայրկյան: Raspberry Pi 3-ի վրա տևում է 1-2 վայրկյան: Հաջորդը մենք կմիացնենք ինֆրակարմիր սենսոր, որը կաշխատի այս սցենարների վրա: Կրկին, կան բազմաթիվ ձեռնարկներ, թե ինչպես ստեղծել Raspberry Pi և PIR, ես հետևեցի այս մեկին ՝ https://www.instructables.com/id/PIR-Sensor-Interfacing-With-Raspberry-Pi/: Հիմնականում ստեղծեք ֆայլ ՝ օգտագործելով nano խմբագիր (օրինակ ՝ motion_sensor.py) և մուտքագրեք դրան համապատասխան Python ծածկագիրը: Ստորև բերված է իմ ֆայլի օրինակը.
ներմուծել RPi. GPIO որպես GPIOimport timeimport sysimport subprocessimport datetime as dtimport osGPIO.setwarnings (false) # GPIO.setmode (GPIO. BOARD) GPIO.setmode (GPIO. BCM) GPIO.setup (17, GPIOt_min = time.time () SHUTOFF_DELAY = 180 # վայրկյան իսկ True: i = GPIO.input (17) if i == 0: # Երբ շարժման սենսորից ելքը OWԱՐ է, անջատեք մոնիտորը OFF SHUTOFF_DELAY). Տպել «No intruders», iturned_off = Truetime.sleep (1) subprocess.call (['/home/pi/monitor_off.sh'], shell = True) elif i == 1: #Երբ շարժվում է շարժման սենսորից բարձր է, միացրեք մոնիտորը Տպել «Intruder found», itime.sleep (1) last_motion_time = time.time () sys.stdout.flush () if turn_off և dt.datetime.now (). ժամ> 5 և dt.datetime: այժմ (). ժամ <23: turn_off = Falsesubprocess.call (['/home/pi/monitor_on.sh'], shell = True), եթե _name_ == '_main _': try: main () բացառությամբ KeyboardIntrupt: GPIO.cleanup ()
Նկատի ունեցեք, որ «GPIO.setup (17, GPIO. IN)» - ը ցույց է տալիս, որ PIR- ից ելքային կապը միացված է Raspberry Pi- ի 17 -րդ կապին: Ո՞ր քորոցն է դա կախված ՝ սահմանում եք GPIO.setmode (GPIO. BOARD) կամ GPIO.setmode (GPIO. BCM): Տարբերությունը բացատրվում է այստեղ ՝ https://raspberrypi.stackexchange.com/questions/12966/what-is-the-difference-between-board-and-bcm-for-gpio-pin-numbering Ես # ունեմ GPIO. BOARD- ի դիմաց, այնպես որ այն անտեսվում է, և GPIO. BCM- ն օգտագործվում է:
Ուշադրություն դարձրեք տողին
SHUTOFF_DELAY = 180 #վայրկյան
Այստեղ նշվում է, թե որքան ժամանակ է մոնիտորը միացված վերջին շարժման հայտնաբերումից ի վեր, նախքան այն անջատելը: Սա օգտակար է, քանի որ ես չեմ ուզում, որ մոնիտորը անընդհատ անջատվի/միանա, երբ ես անցնում եմ դրանով, այլ ուզում եմ մի որոշ ժամանակ պահել այն միացված լինելուց առաջ: Ես ընտրել եմ 180 վայրկյանի ընդմիջումը, որպեսզի մոնիտորը անջատվի վերջին շարժումը հայտնաբերելուց մոտ 3 րոպե անց:
Վերջապես, այս տողը
եթե turn_off և dt.datetime.now (). ժամ> 6 և dt.datetime.now (): ժամ <23:
նշում է, որ մոնիտորը միանում է միայն 6: 00 -ից 23: 00 -ն ընկած ժամանակահատվածում, այնպես որ այն ինձ չի խանգարում գիշերային ժամերին: Տողերը
տպել «Ոչ մի ներխուժող», i
եւ
տպել «Հայտնաբերվել է ներխուժող», i
նախատեսված են միայն սցենարը փորձարկելու համար, կարող եք դրանք ջնջել ավելի ուշ, երբ այն աշխատի: Այժմ փորձարկեք սցենարը.
sudo python motion_sensor.py
Դուք պետք է տեսնեք «Ներխուժողը հայտնաբերված է» հաղորդագրությունները, եթե ալիքը բարձրացնեք սենսորից վերև, հակառակ դեպքում դա կլինի «Ոչ մի ներխուժող»: Երբ այս սցենարը փորձարկվի և աշխատի, սահմանեք, որ այն սկսվի boot- ից.
sudo nano ~/.config/lxsession/LXDE-pi/autostart
և ավելացնել հետևյալ տողը
@sudo/usr/bin/python /home/pi/motion_sensor.py
Իհարկե, դուք պետք է նշեք ձեր ստեղծած Python սցենարի ճիշտ ֆայլի անունը:
Քայլ 5: Կախեք օրացույցը
Ամեն ինչ կարգավորված է, ժամանակն է պատը կախել պատից:
Սկզբում ես մտածում էի Raspberry Pi- ն թաքցնել LCD էկրանին հետևում, որպեսզի միայն մեկ մալուխ (DC հոսանք) անհրաժեշտ լինի: Բայց քանի որ ազնվամորին աշխատում է 5V- ով, իսկ LCD էկրանը ՝ 12V- ով, ինձ լրացուցիչ տրանսֆորմատոր կպահանջվի: Բացի այդ, Ազնվամորու պատյանը բավականին հաստ է, ինչը նշանակում է, որ LCD- ը պատից մոտ 3 սանտիմետր հեռավորության վրա կլինի: Այսպիսով, ես թողեցի սա և միայն LCD էլեկտրոնիկան թողեցի LCD- ի հետևում, այնպես որ այն այժմ պատից 1 սանտիմետրից պակաս հեռավորության վրա է: Ես ձեռք բերեցի երկու 5 մետր երկարությամբ մալուխ, մեկ HDMI և մեկ 5, 5 մմ DC հոսանքի համար: Երկու մալուխները սպիտակ են, ինչպես պատը, ինչը նշանակում է, որ դրանք առանձնապես աչքի չեն ընկնում: Ես տեղադրեցի LCD պատը և ազնվամորին դրեցի հակառակ պատի սառնարանի վերևում, այնպես որ այն հիմնականում թաքնված է, բայց դեռ հեշտությամբ հասանելի:
Խորհուրդ ենք տալիս:
DIY LED Advent Օրացույց. 3 քայլ
DIY LED Advent Calendar. Ես նկարագրելու եմ, թե ինչպես ենք պատրաստել այս անալոգային ժամացույցը, որը կրկնապատկում է որպես գալուստի օրացույց: Շուրջօրյա կան 24 ws2811 լուսարձակներ, որոնցից յուրաքանչյուրը կանաչ լույս է տալիս Սուրբ Christmasնունդին նախորդող օրերին: Սուրբ Christmasննդյան օրը բոլոր լույսերը վառվում են
Խելացի գրասեղանի LED լույս - Խելացի լուսավորություն W/ Arduino - Neopixels Workspace: 10 քայլ (նկարներով)
Խելացի գրասեղանի LED լույս | Խելացի լուսավորություն W/ Arduino | Neopixels Workspace. Այժմ մի օր մենք շատ ժամանակ ենք անցկացնում տանը ՝ ուսումնասիրելով և աշխատելով վիրտուալ կերպով, ուստի ինչու՞ մեր աշխատանքային տարածքն ավելի մեծ չդարձնել Arduino և Ws2812b լուսադիոդների վրա հիմնված սովորական և խելացի լուսավորության համակարգով: Ահա ես ձեզ ցույց եմ տալիս, թե ինչպես կառուցել ձեր Smart Գրասեղանի LED լույս, որը
IoT- ի վրա հիմնված խելացի այգեգործություն և խելացի գյուղատնտեսություն ՝ օգտագործելով ESP32: 7 քայլ
IoT- ի վրա հիմնված խելացի այգեգործություն և խելացի գյուղատնտեսություն ՝ օգտագործելով ESP32. Աշխարհը փոխվում է ժամանակի և գյուղատնտեսության հետ միասին: Այսօր մարդիկ ամենուր ինտեգրում են էլեկտրոնիկան, և գյուղատնտեսությունը դրանում բացառություն չէ: Էլեկտրոնիկայի այս միաձուլումը գյուղատնտեսությունում օգնում է ֆերմերներին և այգիներ կառավարող մարդկանց: Այս
Խելացի հավաքեք - Ավտոմատ ուղղիչ խելացի ավանդական հեռախոս ՝ 8 քայլ
Smart Dial- ը խելացի ավանդական հեռախոսի ավտոմատ ուղղում է Միայն տեղի տարեցների խնամքի կենտրոնում կամավորության միջոցով ես
Raspberry Pi: Պատի վրա տեղադրված օրացույց և ծանուցման կենտրոն. 5 քայլ (նկարներով)
Ազնվամորի Պի. Պատի վրա տեղադրված օրացույց և ծանուցման կենտրոն. Նախքան “ թվային դարաշրջանը ” շատ ընտանիքներ օգտագործում էին պատի օրացույցներ `գալիք իրադարձությունների ամսական տեսքը ցուցադրելու համար: Պատի վրա տեղադրված օրացույցի այս ժամանակակից տարբերակը ներառում է նույն հիմնական գործառույթները. Ընտանիքի անդամների ամսական օրակարգի ակտիվացում