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

Ինչպես օգտագործել MQTT- ը Raspberry Pi- ի և ESP8266- ի հետ/sonoff: 4 քայլ
Ինչպես օգտագործել MQTT- ը Raspberry Pi- ի և ESP8266- ի հետ/sonoff: 4 քայլ

Video: Ինչպես օգտագործել MQTT- ը Raspberry Pi- ի և ESP8266- ի հետ/sonoff: 4 քայլ

Video: Ինչպես օգտագործել MQTT- ը Raspberry Pi- ի և ESP8266- ի հետ/sonoff: 4 քայլ
Video: Home Assistant. Դաս 9.4 ADD-ON - Xiaomi Gateway 3, zigbee2mqtt ինտեգրում 2024, Նոյեմբեր
Anonim
Ինչպես օգտագործել MQTT- ը Raspberry Pi- ի և ESP8266/sonoff- ի հետ
Ինչպես օգտագործել MQTT- ը Raspberry Pi- ի և ESP8266/sonoff- ի հետ

Բարև Բոլորին

Այսօր ես ձեզ ցույց կտամ, թե ինչպես կարելի է կարգավորել ազնվամորի pi և ESP8266 հիմնված sonoff wifi ռելեի անջատիչ ՝ ձեր տնային տեխնիկան աշխարհի ցանկացած վայրից վերահսկելու համար:

Այս հրահանգի ավարտից հետո, եթե դուք ուշադիր հետևեք իմ հրահանգին, դուք կկարողանաք վերահսկել ձեր ցանկացած կենցաղային տեխնիկա Raspberry Pi- ի տերմինալից կամ պիթոնի պատյան օգտագործելով:

Այսպիսով, պատրաստ եղեք պատրաստել ձեր սեփական MQTT և Rpi վրա հիմնված Sonoff Wifi սարքի վերահսկիչ:

Նախքան այս ուսանելի աշխատանքը սկսելը, ես կցանկանայի նշել մի քանի շատ կարևոր բան,

  1. Sonoff wifi ռելեի անջատիչը գալիս է իր սեփական կառավարման ծրագրակազմով: այն նորից ծրագրավորելուց հետո օրիգինալ որոնվածը ընդմիշտ ջնջվում է: Այսպիսով, համոզվեք դրանում:
  2. Sonoff wifi ռելեի անջատիչն ուղղակիորեն սնուցվում է 230V AC լարման միջոցով, այնպես որ, եթե դուք նման բարձր լարման հետ աշխատելու մասնագետ չեք, դիմեք ձեր ծնողների կամ փորձագետի օգնությանը:
  3. Sonoff wifi ռելեի անջատիչը պարզապես հիմնված է esp8266-01 wifi չիպսեթի շուրջ, որը 3.3 Վ չիպ է, եթե պատահաբար 5 Վ դնես նրա +V պինին, անպայման կվնասես այն:
  4. Այստեղ այս ուսանելիի համար ես համարեցի, որ դուք ունեք ձեր ազնվամորու պի բոլոր կարգավորումները և WiFi- ն միացված IP հասցեով ՝ տերմինալում մոծակների և MQTT հրամանները գործարկելու համար:

** Եթե պատրաստ եք վերը նշված 4 քայլերին, ապա լավ կլինի գնալ:

Քայլ 1: Ներածություն + պարագաներ

Ներածություն + պարագաներ
Ներածություն + պարագաներ
Ներածություն + պարագաներ
Ներածություն + պարագաներ

Բարև տղերք: այսօր մենք կառուցելու ենք շատ հետաքրքիր նախագիծ: Այս նախագծում մենք պատրաստվում ենք վերահսկել մեր տան սարքերը, ինչպիսիք են AC լամպը ՝ օգտագործելով MQTT միջնորդը:

Նշում. Սա IOT ծրագիր է, հետևաբար կարող եք վերահսկել ձեր AC սարքը աշխարհի ցանկացած վայրից:

MQTT (Massage Que Telemetry Transport) պարզ բեռի փոխանցման արձանագրություն է, որն օգտագործվում է վեբ նախագծերի իսկության մեջ: Facebook մեսենջերը նաև օգտագործում է MQTT արձանագրությունը: բավականաչափ ներածություն, սկսենք Projectրագրից:

Ի՞նչ է մեզ պետք այս forրագրի համար:

1) Ակտիվ Wifi (նախընտրելի է երթուղիչ) միացում

2) Ազնվամորի Pi3 մոդելը, որի վրա միացված է wifi- ն:

3) Sonoff Wifi IOT անջատիչ 10A 220V- ով

4) Որոշ կապող լարեր

5) Jumper մալուխներ

6) CP2102 USB- ից TTL փոխարկիչ

  • Նշում. Այս նախագծի համար դուք պետք է ունենաք ազնվամորի պի բոլոր կարգավորումները կամ մոնիտորի ստեղնաշարի միացումով, կամ ձեր նոութբուքի անգլուխ ռեժիմով (VNC միացում)
  • Եթե դուք չունեք ազնվամորու պի, որն ամբողջությամբ կարգավորված է մոնիտորով կամ անգլուխ ռեժիմով, ապա պետք է հետևեք իմ մյուս ձեռնարկին, թե ինչպես միացնել ազնվամորու պին անգլուխ ռեժիմում:

Քայլ 2: Ազնվամորու Pi- ի կարգավորում

Ազնվամորու Pi- ի կարգավորում
Ազնվամորու Pi- ի կարգավորում

Այս Քայլում մենք կստեղծենք մեր ազնվամորու pi- ն forրագրի համար:

այս ձեռնարկում մենք օգտագործում ենք sonoff ESP8266- ը որպես հաճախորդ և ազնվամորի pi- ն ՝ որպես մոծակների միջնորդ:

  1. բացեք ձեր ազնվամորի pi տերմինալը և մուտքագրեք

    1. sudo apt-get թարմացում
    2. sudo apt-get upgrade Երբ ձեր ազնվամորու Pi- ն թարմացվի վերջին որոնվածով, դուք պատրաստ եք ցանկացած նախագծով զբաղվել ձեր pi- ով
  2. Այժմ մուտքագրեք հետևյալ հրամանները ՝ Mosquitto- ն տեղադրելու համար

    1. wget
    2. sudo apt-key ավելացնել mosquitto-repo.gpg.key
    3. cd /etc/apt/sources.list.d/
    4. sudo wget
    5. sudo -i
    6. apt-get թարմացում
    7. apt-get տեղադրել մոծակ
    8. apt-get տեղադրել մոծակների հաճախորդներ
  3. Երբ դուք հաջողությամբ կատարեք վերը նշված բոլոր հրահանգները, ձեր մեքենան պատրաստ կլինի մոծակների միջնորդի միջոցով և պատրաստ եք հաջորդ քայլին:
  4. Կրկին ձեր տերմինալում մուտքագրեք հետևյալ հրամանները.
    1. sudo pip տեղադրել paho-mqtt
    2. sudo pip3 տեղադրել paho-mqtt
  5. Այժմ ստուգելու համար, թե արդյոք ձեր մոծակների հաճախորդը հաջողությամբ տեղադրված է, թե ոչ, բացեք python2 կամ python3 shell և մուտքագրեք հետևյալ հրամանը

    1. ներմուծել paho.mqtt.client
    2. սա ոչինչ չպետք է վերադարձնի: եթե վերադարձնում է որևէ տող կամ սխալ, կրկին ստուգեք վերը նշված քայլերը և ևս մեկ անգամ ուշադիր հետևեք քայլերին:
  6. Այժմ ձեր Raspberry Pi Part- ը գրեթե ավարտված է, և այժմ լավ է գնալ Sonoff և Arduino մասերի

Քայլ 3. Sonoff Esp8266 սարքի տեղադրում MQTT- ի համար

MQTT- ի համար Sonoff Esp8266 սարքի տեղադրում
MQTT- ի համար Sonoff Esp8266 սարքի տեղադրում
MQTT- ի համար Sonoff Esp8266 սարքի տեղադրում
MQTT- ի համար Sonoff Esp8266 սարքի տեղադրում
MQTT- ի համար Sonoff Esp8266 սարքի տեղադրում
MQTT- ի համար Sonoff Esp8266 սարքի տեղադրում

Այժմ այս քայլում մենք կստեղծենք մեր հաճախորդի սարքը, որը Sonoff- ն է:

sonoff- ը wifi տան ավտոմատացման սարք է, որը գալիս է նախապես տեղադրված որոնվածով `wifi- ով հիմնված տան ավտոմատացման և android/ios հավելվածի համար` սարքերը WiFi- ով վերահսկելու համար:

Այժմ ահա մի պարզ կոտրում ՝ այն վերապրագրավորելու մեր ուզած ձևով: Arduino ide- ի հետ մեկ անգամ ծրագրելուց հետո կկորցնեք sonoff- ում նախապես տեղադրված նախնական որոնվածը:

  1. նախ, ուշադիր բացեք ձեր sonoff սարքը և ուշադրություն դարձրեք պատկերում պատկերված pinouts ՎՏԱՆԳՈԹՅԱՆ.
  2. Այժմ տե՛ս ստորև բերված պատկերը ՝ իր pinout- ի համար, PCB- ի ներքևում կա esp8266 չիպ, որը դուք գտնում եք նման ձեր esp8266-01 մոդուլին:
  3. Այժմ բացեք Arduino IDE- ն և ավելացրեք անհրաժեշտ Zip գրադարանները: PUBSUB_ հաճախորդների գրադարան
  4. Բացի այդ, դուք պետք է esp8266 տախտակն ավելացնեք ձեր Arduino ide- ին: եթե արդեն ավելացված չէ, հետևեք քայլերին

    1. Բացեք ձեր Arduino IDE- ն և կտտացրեք «Ֆայլ -> Նախապատվություններ»:
    2. "https://arduino.esp8266.com/stable/package_esp8266com_index.json"
    3. «Լրացուցիչ խորհուրդների մենեջերի հասցեներում» ավելացրեք այս վերը նշված հղումը և կտտացրեք «Լավ»
    4. Գնացեք «Գործիքներ -> Տախտակ -> Տախտակների կառավարիչ», մուտքագրեք «ESP8266» և տեղադրեք այն:
    5. Կրկին գնացեք «Գործիքներ -> տախտակ» և ընտրեք «Ընդհանուր ESP8266 մոդուլ»:
    6. Այժմ դուք հաջողությամբ ավելացրել եք տախտակը ձեր Arduino IDE- ին:
  5. Այժմ դուք պետք է միացնեք մեկ կին միակցիչ sonoff սարքին, ինչպես ցույց է տրված նկարում:
  6. Այժմ միացրեք USB- ը TTL CP2102 կամ FTDI տախտակին և կատարեք հետևյալ կապը ՝ վերևում պատկերված նկարի համաձայն:

    1. FTDI- ի RX- ից Sonoff- ի TX- ին
    2. FTDI- ի TX- ից Sonoff- ի RX- ին
    3. GND of FTDI- ից GND Sonoff
    4. 3.3V FTDI- ից 3.3V Sonoff- ին
  7. ՈEՇԱԴՐՈԹՅՈՆ. Համոզվեք, որ դուք չեք մատակարարում sonoff տախտակին 5 Վ լարումով: այն համատեղելի է 3.3 Վ -ի հետ, եթե ձեր 5 Վ -ը միացնում է իր Power pin- ին, կարող եք այրել ձեր sonoff սարքը: հետևաբար, ավելի լավ է օգտագործել միայն FTDI տախտակի 3.3 վ մատակարարումը:
  8. այժմ կապ հաստատեք, ինչպես ցույց է տրված նկարում:
  9. Մեկն արդեն ավարտված է վերը նշված քայլերով: միացրեք ձեր FTDI/USB- ը TTL տախտակին նոութբուքին/համակարգչին և բացեք Arduino IDE- ն:
  10. Պատճենեք կոդը:

11. Այժմ Գործիքների ցանկից ընտրեք համապատասխան COM նավահանգիստը և ընտրեք սարքը որպես ընդհանուր ESP8266 սարք: Այժմ սեղմեք բեռնման կոճակը: Մոտ մեկ րոպե կամ ավելի քիչ ժամանակ կպահանջվի sonoff սարքի ծածկագիրը esp8266 չիպի մեջ վերբեռնելու համար:

12. Այժմ դուք արդեն պատրաստ եք sonoff և Arduino ծրագրավորումներին: և այժմ դուք պետք է տեսնեք, որ led- ը sonoff տախտակին թարթում է // ինչպես սկզբում գրել էինք 5 անգամ թարթելով:

13. Լավ է գնալ հաջորդ քայլին:

Քայլ 4. Վերահսկեք ձեր Sonoff- ը համացանցից

Վերահսկեք ձեր Sonoff- ը վեբից
Վերահսկեք ձեր Sonoff- ը վեբից

Հիմա սա մեր նախագծի վերջին քայլն է:

  1. այժմ բացեք ձեր VNC հեռավոր աշխատասեղանի կապը ազնվամորի pi- ի հետ ՝ մուտքագրելով ձեր Pi- ի IP հասցեն
  2. այժմ բացեք տերմինալը և սկսեք մուտքագրել հետևյալ հրամանները
  3. այստեղ led- ը թեման է, իսկ «0» -ը ՝ բեռնվածություն
  4. փոխել հրամանի IP հասցեն ձեր Rpi IP հասցեով
  5. Եվ «0» -ի փոխարեն գրեք «1», որը ձեր ռելեոնը միացնելու է sonoff wifi անջատիչին:

mosquitto_pub -h 192.168.0.104 -t led -m "0"

Վերոնշյալ հրահանգը անջատելու է ձեր ռելեն:

mosquitto_pub -h 192.168.0.104 -t led -m "1"

Այս հրահանգը կմիացնի ձեր ռելեն:

Այժմ դուք ավարտել եք ձեր sonoff- ի վերահսկումը Rpi տերմինալից:

կարող եք ստուգել ՝ sonoff wifi անջատիչը միացնելով այլ wifi ցանցի, իսկ ազնվամորու pi- ն ՝ այլ wifi կապի: Դուք պետք է կարողանաք վերահսկել փոխանցման տուփը աշխարհի ցանկացած վայրից:

Հիմա էլ ավելի եք ուզում ստուգել ձեր sonoff- ի ON/OFF- ը, ես գրել եմ փոքր պիթոնի սցենար

որն առաջինն ուղարկում է «1» -ը, իսկ 6 վայրկյանից հետո ուղարկում է «0», և այս գործընթացը կրկնում է մի հանգույց:

ներմուծել paho.mqtt. հրապարակել որպես հրապարակման ներմուծման ժամանակ

Թեև ճշմարիտ է.

տպել («Ուղարկում է 1 …») publik.single ("ledStatus", "1", hostname = "Ձեր միջնորդի IP") time.sleep (6) print ("Sending 0 …") published.single ("ledStatus", "0", hostname = "Ձեր բրոքերի IP") time.sleep (3)

Վերոնշյալ կոդը պարզապես միացնում և անջատում է sonoff wifi ռելեի անջատիչի ռելեն:

մի մոռացեք փոխարինել ձեր RaspberryPi- ի IP հասցեն վերը նշված պիթոնի ծածկագրում: այժմ գործարկեք այս սցենարը `կտտացնելով ընտրանքային գործարկման մոդուլին և այն պետք է տեսնեք պատյանում

ուղարկելով «1»..

ուղարկվում է «0»..

ուղարկելով «1».. այսպիսի մի բան.

Դա այս Instructable- ի համար է: կհանդիպենք հաջորդ անգամ նորի հետ:

Yeտեսություն !!!!

և մի մոռացեք հետևել և կիսվել այս հրահանգով և փորձել այն ինքնուրույն:

մեկնաբանությունների բաժնում տեղադրված որևէ կասկածի դեպքում ողջունելի է:

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