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

Դռան զանգի հրում և ջերմաստիճանի տվիչ ՝ 6 քայլ
Դռան զանգի հրում և ջերմաստիճանի տվիչ ՝ 6 քայլ

Video: Դռան զանգի հրում և ջերմաստիճանի տվիչ ՝ 6 քայլ

Video: Դռան զանգի հրում և ջերմաստիճանի տվիչ ՝ 6 քայլ
Video: 40 տարվա մեջ առաջին անգամ Երևանյան լիճը մաքրվել է․ ինչ է խոստանում քաղաքապետարանը 2024, Հուլիսի
Anonim
Դռան զանգի հրում և ջերմաստիճանի ցուցիչ
Դռան զանգի հրում և ջերմաստիճանի ցուցիչ

Սա ուժեղացնում է ստանդարտ կոշտ լարով դռան զանգը esp-12F (esp8266) մոդուլով:

Այն տեղադրվում է զանգի միավորի մեջ `էլեկտրագծերի ցանկացած փոփոխությունից խուսափելու համար: Այն ապահովում է հետևյալ գործառույթները

  • Հայտնաբերեք դռան զանգի հրումները
  • IFTTT- ի միջոցով ծանուցումներ է ուղարկում հեռախոսին
  • Պահում է դռան զանգի գործունեությունը easyIOT սերվերում (ըստ ցանկության)
  • Գործարկել այլ գործողություններ URL- ի միջոցով, երբ դռան զանգը դիպչում է

    Ես լուսանկարում եմ դռան մոտ գտնվող տեսախցիկի նկարը և կարող եմ դիտել իմ հեռախոսի վերջին դռան զանգերը

  • Ընտրովի ներկառուցված ջերմաստիճանի տվիչ (DS18B20), որը կազմում է իմ տան ջերմաստիճանի մոնիտորինգի մի մասը

Քայլ 1: Սարքավորումներ և նյութեր

Սարքավորումներ և նյութեր
Սարքավորումներ և նյութեր
Սարքավորումներ և նյութեր
Սարքավորումներ և նյութեր

Անհրաժեշտ են հետևյալ նյութերը

  • ESP-12F (ESP8266) wifi / cpu մոդուլ
  • DC Buck փոխարկիչ ՝ 3.3 Վ լարման համար
  • Ուղղիչ դիոդ (օրինակ ՝ 1N4001)
  • Էլեկտրոլիտիկ կոնդենսատոր 220uF 35V
  • Էլեկտրոլիտիկ կոնդենսատոր 220uF 16V
  • Zener դիոդ 3.3 կամ 2.6V
  • Ռեզիստորներ
  • Շերտի տախտակի կտոր
  • Անհրաժեշտության դեպքում միակցիչներ
  • Անհրաժեշտության դեպքում DS18B20 թվային ջերմաստիճանի տվիչ

Սխեման ցույց է տալիս օգտագործված սխեման: Այն ենթադրում է ցածր լարման AC- ով աշխատող զանգ, որը կոշտ լարով պարզ զանգի ամենատարածված տեսակն է: ellանգի միավորը էներգիա է ստանում արտաքին զանգի տրանսֆորմատորից, որը սովորաբար տևում է 10 Վ AC: Սա կրիտիկական նշանակություն չունի, քանի որ միակ սահմանափակումը բաք փոխարկիչի առավելագույն լարումն է: Այն, ինչ ես օգտագործում եմ, MP2307- ն է ՝ 23V DC (~ 16V AC) առավելագույն մուտքով:

Սովորաբար կան 3 ակտիվ տերմինալներ: Theանգի մղման միջոցով միացումն ապահովում է AC մատակարարման մի կողմից զանգի էլեկտրահաղորդիչով: Մոդուլը օգտագործում է երկու AC տերմինալներ `DC հոսանքը արտադրելու համար պարզ կիսաալիքային ուղղիչ սարքի միջոցով: Theանգի մղման սենսացիան կատարվում է փաստացի էլեկտրամագնիսական հոսանքի լարումը վերահսկելու միջոցով: Սովորաբար սա հիմնավորված կլինի, բայց երբ զանգը միացված լինի, կլինի ամբողջ AC- ը: Ռեզիստորային / զեներային դիոդը սեղմում է սա, որպեսզի 0 - 3.3 Վ 50 Հց հաճախականությամբ իմպուլսը սնվի GPIO կապում: Theրագրակազմը դա մշակում է `մեկ զանգի սեղմման համար մեկ ակտիվացում ապահովելու համար:

Շղթան կառուցեցի մի փոքր շերտաձև տախտակի վրա, և սա բավական փոքր է, որպեսզի հեշտությամբ տեղավորվի զանգակի միավորի մեջ: Ես օգտագործում եմ պարզ թռիչքային միակցիչներ, որպեսզի ավելի դյուրին տեղադրեմ և միացնեմ հատուկ AC հիմնական աղբյուրին համապատասխան, որպեսզի անհրաժեշտության դեպքում այն կարողանա հեշտությամբ վերականգնվել:

Սխեմատիկ պատկերը ներառում է DS18B20 ջերմաստիճանի տվիչ: Սա ընտրովի չէ: Ես օգտագործում եմ այն որպես ցանցի մի մաս, որը վերահսկում է իմ տան շատ տարածքները: Եթե ներառված է, լավ է միացնել սենսորը մի քանի սանտիմետր մալուխով, որպեսզի այն մեկուսացված լինի տեղական տաքացման ցանկացած ազդեցությունից:

Քայլ 2: Softwareրագրակազմ

Դռան մղման միավորն օգտագործում է Arduino էսքիզ, որը հասանելի է github- ում

Սա պետք է ճշգրտվի, որպեսզի համապատասխանի տեղական պայմաններին, այնուհետև կազմվի esp8266 Arduino միջավայրում: Հետևյալ գրադարաններն անհրաժեշտ են, դրանք ստանդարտ են կամ կարող են ավելացվել:

  • ESP8266WiFi
  • WifiClient
  • ESP8266WebServer
  • ESP8266mDNS
  • ESP8266HTTPUpdateServer
  • ArduinoJson
  • WifiClientSecure
  • IFTTTMaker
  • DNSServer
  • WiFiManager (ըստ ցանկության)
  • OneWire
  • DallasTemperature

Էսքիզում փոփոխվող տարրերը ներառում են

  • Տեղական wifi մուտքի մանրամասներ (ssid, գաղտնաբառ), եթե չեք օգտագործում WifiManager- ը
  • Վեբ մուտքի թույլտվության կոդ AP_AUTHID: Լավ է սա դարձնել արժանապատիվ երկարություն: Այն կարող է պարունակել այբբենական թվեր:
  • որոնվածը OTA գաղտնաբառ update_password
  • WifiManager գաղտնաբառ WM_PASSWORD

    Wifi- ն կարող է ձեռքով կարգավորվել ՝ մեկնաբանելով WM_NAME- ը

  • IFTTT ստեղծողի բանալին (տես ծանուցման քայլը)

Ընտրովի փոփոխությունները ներառում են

  • Դռան զանգի դետեկտորի մուտքային կապի փոփոխում
  • Pinերմաստիճանի տվիչի համար քորոց փոխելը
  • Փոխել վեբ մուտքի պորտը կանխադրված 80 -ից

Երբ դա արվի, այն պետք է նախ կազմվի և վերբեռնվի `օգտագործելով սովորական սերիական վերբեռնում: Հետագա թարմացումը կարող է կատարվել ՝ կազմելով արտահանման երկուական Arduino միջավայրում, այնուհետև մուտք գործելով OTA ինտերֆեյս ip/որոնվածով:

Theրագրային ապահովման մեջ դռան զանգի մղումը հայտնաբերվում է `դետեկտորի շղթայից առաջին զարկերակի բարձրացող եզրը ընդհատելով: Հետագա բոլոր ընդհատումները անտեսվում են: Timeամկետը օգտագործվում է դետեկտորը BELL_MIN_INTERVAL- ից հետո նորից ակտիվացնելու համար, որը սահմանված է 10 վայրկյան:

Այլ գործողություններ կարող են հասանելի լինել esp8266 վեբ սերվերի վրա

  • ip/Recent ցույց է տալիս դռան զանգի վերջին գործունեությունը
  • ip/reloadConfig վերաբեռնում է espConfig
  • ip/bellPush- ը նմանակում է զանգի մղումը

Քայլ 3: Կազմաձևում

Ինչպես կառուցված է, ծրագրակազմը ստանում է իր կազմաձևը տեղական վեբ սերվերից: Մոդուլը բեռնում է կազմաձևման տվյալները ՝ հիմնված իր Mac հասցեի վրա: Սա շատ հարմար է դարձնում մի քանի մոդուլների գործարկումը ՝ օգտագործելով միևնույն երկուական ֆայլը, ինչպես նաև հեշտացնում է կոնֆիգուրացիայի թարմացումն առանց վերակազմավորման: Հնարավոր կլիներ դա բաց թողնել և կազմաձևման տվյալները ուղղակիորեն տեղադրել կոդի մեջ:

Ես պահում եմ կազմաձևման ֆայլը իմ EasyIOT սերվերի վրա, որն ունի թղթապանակ easyIOT/html հասցեով, որտեղ կազմաձևման ֆայլը կարող է հեշտությամբ վերականգնվել:

Ֆայլը կոչվում է espConfig և պարզ տեքստային ֆայլ է, որը պահում է մի շարք պարամետրեր (12) յուրաքանչյուր հնարավոր Mac հասցեի համար: Մոդուլը բեռնում է միայն իր Mac հասցեի համար սահմանված պարամետրերը:

Ֆայլից օրինակ է

#Սրահ

#Մաք հասցե 123456ABCDEF

#մոդուլի անուն

esp8266- դահլիճ

#սերվերի ռեժիմի դիմակ (1 = ջերմաստիճանի զգացում, 4 = կաթսայատուն, 4 = դռան զանգ)

9

#EIOT հանգույց ջերմաստիճանի համար

N9S0

#չօգտագործված

-1

# վայրկյանում ջերմաստիճանի նվազագույն միջակայք

60

#ջերմաստիճանի առավելագույն միջակայքը վայրկյանների ընթացքում

300

#կաթսայի հզորության ընդմիջում

0

#EasyIOT կաթսայի հզորության հանգույց

-1

#EasyIOT զանգի հրում հանգույց

N10S0

# IFTTT ծանուցեք արժեքը

ճակատ

#IFTTT ծանուցել իրադարձության անունը

դռան զանգ

#գործողության URL

192.168.0.2/snap.php

# - ով սկսվող ցանկացած տող անտեսվում է: Բոլոր տողերը պետք է ներկա լինեն: -1 օգտագործվում է պարամետրերի անտեսման համար:

Կազմաձևման ֆայլը կարդացվում է, երբ մոդուլն առաջին անգամ գործարկվում է: Այն կարող է նաև վերաբեռնվել գործող համակարգում (երբ կազմաձևը փոխվել է) ՝ մուտք գործելով ip/reloadConfig

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

Քայլ 4: Notանուցումներ

Երբ դռան զանգի դրդում է հայտնաբերվում, այն փորձում է այդ մասին տեղեկացնել IFTTT- ի կամ PushOver- ի միջոցով: Ես այժմ PushOver- ն եմ տալիս, քանի որ այն ավելի արագ արձագանք է տալիս:

IFTTT- ի համար ձեզ հաշիվ է պետք և ակտիվացրեք Maker WebHoooks ալիքը: Այս ալիքի MakerKey- ը պետք է կազմվի կոդի մեջ:

Ստեղծեք IF գործողություն ՝ օգտագործելով Maker WebHooks- ը և օգտագործեք իրադարձության համանուն անունը, ինչպես կազմաձևում (օրինակ ՝ դռան զանգը): ՀԵՏՈ ակցիան պետք է լինի IFTTT ծանուցում: Կարող եք արժեք 1 ավելացնել ծանուցմանը, որը կլինի կազմաձևման ֆայլում: Սա կարող է օգտակար լինել, եթե ունեք 2 կամ ավելի դետեկտոր:

Դուք պետք է տեղադրեք IFTTT ծրագիրը ձեր հեռախոսի վրա, այնուհետև ծանուցումները կհայտնվեն, երբ դռան զանգը միացվի:

PushOver- ի համար ձեզ հարկավոր է PushOver հաշիվ և հետևեք հրահանգներին ՝ API- ի ծանուցումներ ստանալու համար: Needրագրային ապահովման մեջ պետք է կարգավորեք NOTIFICATION_APP և NOTIFICATION_USER նշանները `ձեր PushOver հաշվի արժեքներով:

Դուք պետք է տեղադրեք PushOver ծրագիրը ձեր հեռախոսի վրա և վճարեք համեստ միանվագ վճար ՝ ծանուցումներ ստանալու համար: Սա, իմ կարծիքով, արժե շատ ավելի արագ արձագանք ստանալու համար:

Քայլ 5. EasyIOT ինտեգրում

Theրագիրը կարող է ջերմաստիճանի և դռան զանգի հաշվետվություններ ուղարկել EasyIOT սերվերին: Այս հաշվետվության հիման վրա լրացուցիչ գործողություններ ձեռնարկելու համար կարող է օգտագործվել EasyIOT ավտոմատացումը:

Տեղադրեք EasyIOT սերվեր (օրինակ ՝ Raspberry Pi- ի վրա): Կարգավորեք ip հասցեն և օգտվողի գաղտնաբառը esp8266 ծրագրաշարի մեջ և կազմեք:

Այժմ ավելացրեք վիրտուալ վարորդ EASYIOT կազմաձևում: Ընտրեք ջերմաստիճանի անալոգային մուտքագրում և նշեք EasyIOT հանգույցի անունը: Սա պետք է տեղադրվի espConfig ֆայլի ջերմաստիճանի հանգույցի անվան մեջ:

Ավելացնել երկրորդ վիրտուալ վարորդ: Ընտրեք դուռի թվային մուտքագրում, նշեք հանգույցի անունը և դրեք espConfig ֆայլում:

Քայլ 6: Այլ զանգի հրում գործողություններ

Theրագրային ապահովումն ունի ռեժիմ, որը կոչվում է actionBellOn: Ինչպես գրված է, դա կարող է անել 3 բան

  • IFTTT- ին ծանուցել
  • EasyIOT հաշվետվություն
  • Կատարել գործողության URL

URL- ը կարող է օգտագործվել այլ վեբ սերվերներից այլ գործողություններ սկսելու համար: Օգտագործված URL- ը espConfig ֆայլում է:

Եթե URL- ի սերվերը վավերացված է, ապա օգտվողի անունն ու գաղտնաբառը պետք է կազմաձևվեն և կազմվեն կոդի մեջ:

Ես սա օգտագործում եմ դռան կողքի տեսախցիկի վրա snap.php կոչվող URL մուտք գործելու համար: Takesանգը սեղմելիս-j.webp

Ես օգտագործում եմ ազնվամորու Pi- ի վրա հիմնված տեսախցիկներ, որոնք շատ հեշտ են կատարում այս գործողությունը: տեսախցիկ

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