Isi kandungan:

Cara Menggunakan MQTT Dengan Raspberry Pi dan ESP8266 / sonoff: 4 Langkah
Cara Menggunakan MQTT Dengan Raspberry Pi dan ESP8266 / sonoff: 4 Langkah

Video: Cara Menggunakan MQTT Dengan Raspberry Pi dan ESP8266 / sonoff: 4 Langkah

Video: Cara Menggunakan MQTT Dengan Raspberry Pi dan ESP8266 / sonoff: 4 Langkah
Video: ESP8266 (NodeMcu) Raspberry Pi MQTT | ESP8266 Publish/Subscribe 2024, Julai
Anonim
Cara Menggunakan MQTT Dengan Raspberry Pi dan ESP8266 / sonoff
Cara Menggunakan MQTT Dengan Raspberry Pi dan ESP8266 / sonoff

Helo Semua!

Hari ini saya akan menunjukkan kepada anda cara mengkonfigurasi suis relai wifi sonoff berbasis raspberry pi dan ESP8266 untuk mengawal perkakas rumah anda dari mana sahaja di dunia.

Pada akhir arahan ini, jika anda telah mengikuti arahan saya dengan teliti, anda akan dapat mengawal mana-mana perkakas rumah anda dari terminal Raspberry Pi atau dengan menggunakan cengkerang python.

Oleh itu, bersiaplah untuk membuat pengawal Peranti Wifi Sonoff berasaskan MQTT dan Rpi anda sendiri!

Sebelum memulakan pengajaran ini, saya ingin menyebut beberapa perkara yang sangat penting,

  1. Suis relai wifi sonoff dilengkapi dengan firmware kawalannya sendiri. setelah anda memprogramkannya semula, firmware asal akan dipadamkan secara kekal. Oleh itu, pastikan itu.
  2. Suis relai wifi sonoff dihidupkan secara langsung melalui voltan AC 230V, jadi jika anda bukan pakar dalam menangani voltan tinggi seperti itu, tolonglah bantuan ibu bapa atau orang pakar anda.
  3. Suis relai wifi sonoff hanya berdasarkan pada chipset wifi esp8266-01 yang merupakan cip 3.3V, jika anda tidak sengaja menggunakan 5V pada pin + Vnya, anda pasti akan merosakkannya.
  4. Di sini untuk arahan ini, saya telah mempertimbangkan bahawa anda telah menyediakan semua raspberry pi dan wifi anda dengan alamat IP untuk menjalankan perintah mosquitto dan MQTT di Terminal

** Sekiranya anda sudah bersedia dengan semua 4 langkah di atas, anda boleh meneruskannya !!

Langkah 1: Pengenalan + Persediaan

Pengenalan + Persediaan
Pengenalan + Persediaan
Pengenalan + Persediaan
Pengenalan + Persediaan

Apa khabar semua! hari ini kita akan membina projek yang sangat menarik. Di sini, dalam projek ini, kami akan mengawal peranti Rumah kami seperti lampu AC menggunakan broker MQTT.

Catatan: Ini adalah Projek IOT oleh itu anda boleh mengawal peranti AC anda dari mana sahaja di dunia

MQTT (Massage Que Telemetry Transport) adalah protokol Transfer muatan sederhana yang digunakan dalam pelbagai projek Web. Utusan Facebook juga menggunakan MQTT Protocol. cukup pengenalan mari kita mulakan dengan Projek.

Apa yang kita perlukan untuk Projek ini?

1) Sambungan Wifi aktif (penghala lebih baik)

2) Model Raspberry Pi3 yang mempunyai wifi diaktifkan.

3) Suis Sonoff Wifi IOT dengan 10A 220V

4) Sebilangan wayar penyambung

5) Kabel Jumper

6) Penukar CP2102 USB ke TTL

  • Catatan: untuk projek ini, anda mesti menyediakan semua raspberry pi dengan sambungan papan kekunci monitor atau dalam mod tanpa kepala dengan komputer riba anda (sambungan VNC)
  • jika anda tidak menyediakan pi raspberry dengan mod monitor atau tanpa kepala, anda harus mengikuti tutorial saya yang lain mengenai cara menyambungkan raspberry pi dalam mod tanpa kepala.

Langkah 2: Menyiapkan Raspberry Pi

Menyiapkan Raspberry Pi
Menyiapkan Raspberry Pi

Dalam Langkah ini, kami akan menyediakan pi raspberry kami untuk Projek.

dalam tutorial ini, kami menggunakan sonoff ESP8266 sebagai pelanggan dan raspberry pi sebagai broker nyamuk.

  1. buka terminal dan taip raspberry pi anda
    1. sudo apt-get kemas kini
    2. sudo apt-get upgrade Setelah raspberry Pi anda dikemas kini dengan firmware terkini, anda boleh menggunakan sebarang projek pada pi anda
  2. Sekarang ketik arahan berikut untuk memasang Mosquitto

    1. wget
    2. sudo apt-key tambah mosquitto-repo.gpg.key
    3. cd /etc/apt/sources.list.d/
    4. sudo wget
    5. sudo -i
    6. apt-get kemas kini
    7. apt-get pasang mosquitto
    8. apt-get pasang mosquitto-klien
  3. Setelah berjaya mengikuti semua arahan di atas, mesin anda sudah siap dengan broker mosquitto dan anda sudah bersedia ke langkah seterusnya.
  4. Sekali lagi di terminal anda taipkan arahan berikut:
    1. sudo pip pasang paho-mqtt
    2. sudo pip3 pasang paho-mqtt
  5. Sekarang untuk memeriksa sama ada klien mosquitto anda berjaya dipasang atau tidak membuka shell python2 atau python3 dan ketik perintah berikut

    1. import paho.mqtt.client
    2. ini tidak boleh mengembalikan apa-apa. jika mengembalikan garis atau kesilapan, periksa langkah-langkah di atas sekali lagi dan ikuti langkah-langkahnya dengan berhati-hati sekali lagi.
  6. Sekarang Bahagian Pi Raspberry anda hampir selesai dan anda boleh memilih bahagian Sonoff dan Arduino sekarang

Langkah 3: Menyiapkan Peranti Sonoff Esp8266 untuk MQTT

Menyiapkan Peranti Sonoff Esp8266 untuk MQTT
Menyiapkan Peranti Sonoff Esp8266 untuk MQTT
Menyiapkan Peranti Sonoff Esp8266 untuk MQTT
Menyiapkan Peranti Sonoff Esp8266 untuk MQTT
Menyiapkan Peranti Sonoff Esp8266 untuk MQTT
Menyiapkan Peranti Sonoff Esp8266 untuk MQTT

Sekarang dalam langkah ini, kami akan menyiapkan peranti pelanggan kami yang merupakan Sonoff.

sonoff adalah peranti automasi rumah wifi yang dilengkapi dengan firmware terpasang untuk automasi rumah berasaskan wifi dan aplikasi android / ios untuk mengawal perkakas melalui wifi.

Sekarang di sini terdapat peretasan mudah untuk memprogramkan semula dengan cara yang kita mahukan. sekali memprogramkan semula dengan Arduino ide anda akan kehilangan firmware asal yang telah diinstal pada sonoff.

  1. pertama, buka alat sonoff anda dengan berhati-hati dan perhatikan pinout yang ditunjukkan dalam gambar BAHAYA: peranti sonoff berfungsi pada 220V AC langsung anda mesti memasangnya terlebih dahulu sebelum membuka atau memprogramkan.
  2. Sekarang lihat gambar di bawah untuk pinoutnya, di bahagian bawah PCB terdapat cip esp8266 yang anda dapati serupa dengan modul esp8266-01 anda.
  3. Sekarang buka Arduino IDE dan tambahkan perpustakaan Zip yang diperlukan. Pustaka Pelanggan PUBSUB
  4. Juga, anda mesti menambahkan papan esp8266 pada idea Arduino anda. jika belum ditambah ikuti langkah-langkahnya
    1. Buka Arduino IDE anda dan klik pada "File -> Preferences".
    2. "https://arduino.esp8266.com/stable/package_esp8266com_index.json"
    3. Dalam "URL Pengurus Papan Tambahan" tambahkan pautan di atas dan klik "OK"
    4. Pergi ke "Tools -> Board -> Boards Manager", ketik "ESP8266" dan pasangkannya.
    5. Pergi lagi ke "Alat -> Papan" dan pilih "Modul ESP8266 Generik".
    6. Kini anda berjaya menambahkan papan ke Arduino IDE anda.
  5. Sekarang anda harus menyolder satu penyambung wanita ke peranti sonoff seperti yang ditunjukkan dalam gambar.
  6. Sekarang bawa USB ke papan TTL CP2102 atau FTDI dan buat sambungan berikut seperti Gambar yang ditunjukkan di atas.

    1. RX dari FTDI hingga TX dari Sonoff
    2. TX FTDI hingga RX Sonoff
    3. GND FTDI hingga GND Sonoff
    4. 3.3V FTDI hingga 3.3V Sonoff
  7. CATATAN: Pastikan anda tidak menyediakan papan sonoff 5V. ia bersesuaian dengan 3.3V jika anda menyambungkan 5V ke pin Powernya, anda mungkin akan membakar peranti sonoff anda. oleh itu lebih baik gunakan bekalan 3.3v papan FTDI sahaja.
  8. sekarang buat sambungan seperti yang ditunjukkan dalam gambar.
  9. Satu anda selesai dengan langkah-langkah di atas. sambungkan FTDI / USB ke papan TTL ke komputer riba / PC dan buka Arduino IDE.
  10. Salin kodnya.

11. Sekarang pilih port COM yang betul dari menu Alat dan pilih peranti sebagai peranti ESP8266 generik. Sekarang tekan butang muat naik. Ia akan mengambil masa sekitar satu minit atau kurang untuk memuat naik kod tersebut ke dalam cip esp8266 peranti sonoff.

12. Sekarang anda sudah siap dengan pengaturcaraan sonoff dan Arduino. dan sekarang anda mesti melihat papan pemuka di papan sonoff berkedip // kerana kita telah menulis 5 kali berkelip pada mulanya.

13. Anda baik untuk melangkah ke langkah seterusnya.

Langkah 4: Kawal Sonoff Anda Dari Web

Kawal Sonoff Anda Dari Web
Kawal Sonoff Anda Dari Web

Sekarang, ini adalah langkah terakhir untuk projek kami.

  1. sekarang buka sambungan desktop jarak jauh VNC anda dari raspberry pi dengan memasukkan alamat IP untuk Pi anda
  2. sekarang buka terminal dan mula menaip perintah berikut
  3. di sini dipimpin adalah topik dan "0" adalah muatan
  4. ubah alamat IP sesuai dengan alamat IP Rpi anda
  5. Dan bukannya "0" tulis "1" yang akan menghidupkan geganti anda pada suis wifi sonoff.

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

Arahan di atas akan mematikan geganti anda.

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

Arahan ini akan menghidupkan geganti anda.

Sekarang anda sudah selesai mengendalikan putra anda dari terminal Rpi.

anda boleh memeriksa dengan menyambungkan suis wifi sonoff ke rangkaian wifi yang berbeza dan raspberry pi ke sambungan wifi yang berbeza. Anda seharusnya dapat mengawal geganti dari mana sahaja di dunia.

Sekarang lebih jauh anda mahu menguji ON / OFF dari sonoff anda secara automatik saya telah menulis skrip python kecil

yang menghantar "1" pertama dan selepas 6 saat ia menghantar "0" dan proses ini berulang dalam satu gelung.

import paho.mqtt.penerbitan sebagai waktu importport

Walaupun Benar:

print ("Menghantar 1…") publish.single ("ledStatus", "1", hostname = "IP broker anda") time.sleep (6) print ("Sending 0…") publish.single ("ledStatus", "0", nama host = "IP broker anda") time.sleep (3)

Kod di atas hanya menghidupkan dan mematikan geganti pada suis relai wifi sonoff.

jangan lupa ganti alamat IP RaspberryPi anda dalam kod python di atas. sekarang jalankan skrip ini dengan mengklik pada modul pilihan opsyen dan anda akan melihat pada shell

menghantar "1"..

menghantar "0"..

menghantar "1".. seperti ini.

Itu sahaja untuk Instructable ini. sampai jumpa lagi dengan yang baru.

Bye !!!!

dan jangan lupa untuk mengikuti dan berkongsi arahan ini dan mencubanya sendiri!

sebarang keraguan dipaparkan di bahagian komen adalah dialu-alukan!

Disyorkan: