Съдържание:

Как да използвате MQTT с Raspberry Pi и ESP8266/sonoff: 4 стъпки
Как да използвате MQTT с Raspberry Pi и ESP8266/sonoff: 4 стъпки

Видео: Как да използвате MQTT с Raspberry Pi и ESP8266/sonoff: 4 стъпки

Видео: Как да използвате MQTT с Raspberry Pi и ESP8266/sonoff: 4 стъпки
Видео: Easiest way to flash Sonoff, Shelly, Wemos or any ESP8266 + HomeKit support with no Hubs 2024, Ноември
Anonim
Как да използвате MQTT с Raspberry Pi и ESP8266/sonoff
Как да използвате MQTT с Raspberry Pi и ESP8266/sonoff

Здравейте всички!

Днес ще ви покажа как да конфигурирате малинов pi и базиран на ESP8266 sonoff wifi релеен превключвател за управление на вашите домакински уреди от всяка точка на света.

До края на тази инструкция, ако внимателно сте изпълнили инструкциите ми, ще можете да контролирате всеки ваш домашен уред от терминала на Raspberry Pi или с помощта на черупка на python.

Така че се пригответе да направите свой собствен контролер на Sonoff Wifi устройство на базата на MQTT и Rpi!

Преди да започна тази инструкция, бих искал да спомена няколко много важни неща,

  1. Релето за реле на sonoff wifi идва със собствен фърмуер за управление. след като го препрограмирате, оригиналният фърмуер се изтрива за постоянно. Така че се уверете в това.
  2. Релейният превключвател на sonoff wifi се захранва директно чрез 230V AC напрежение, така че ако не сте експерт в боравенето с такова високо напрежение, потърсете помощ от вашите родители или експерт.
  3. Sonoff wifi релейният превключвател просто се базира на wifi чипсет esp8266-01, който е 3.3V чип, ако случайно приложите 5V към неговия +V щифт, ще го повредите със сигурност.
  4. Тук, за тази инструкция, смятах, че имате вашата настройка на raspberry pi и wifi с IP адрес, за да изпълнявате командите mosquitto и MQTT в терминала

** Ако сте готови с всички горепосочени 4 стъпки, можете да започнете !!

Стъпка 1: Въведение + консумативи

Въведение + Консумативи
Въведение + Консумативи
Въведение + Консумативи
Въведение + Консумативи

Здравейте момчета! днес ще изградим един много интересен проект. Тук, в този проект, ние ще контролираме нашите домашни устройства, като AC лампа, използвайки брокер MQTT.

Забележка: Това е IOT проект, следователно можете да контролирате вашето AC устройство от всяка точка на света

MQTT (Massage Que Telemetry Transport) е прост протокол за прехвърляне на полезен товар, използван в редица уеб проекти. Facebook Messenger също използва протокол MQTT. достатъчно въведение, нека започнем с Project.

Какво ни е необходимо за този проект?

1) Активна Wifi (за предпочитане рутер) връзка

2) Raspberry Pi3 модел, на който е активиран wifi.

3) Превключвател Sonoff Wifi IOT с 10A 220V

4) Някои свързващи проводници

5) Кабелни джъмпери

6) CP2102 USB към TTL конвертор

  • Забележка: за този проект трябва да имате настройка на raspberry pi с връзка към клавиатурата на монитора или в режим без глава с вашия лаптоп (VNC връзка)
  • ако не сте настроили малиново пи с монитор или режим без глава, трябва да следвате другия ми урок за това как да свържете малинов пи в режим без глава.

Стъпка 2: Настройване на Raspberry Pi

Настройване на Raspberry Pi
Настройване на Raspberry Pi

В тази стъпка ще настроим нашето малиново пи за проекта.

в този урок използваме sonoff ESP8266 като клиент и малиново пи като брокер на комари.

  1. отворете своя малинов pi терминал и въведете

    1. sudo apt-get update
    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 update
    7. apt-get install mosquitto
    8. apt-get install Mosquitto-clients
  3. След като успешно изпълните всички горепосочени инструкции, вашата машина е готова с настроен брокер против комари и сте готови за следващата стъпка.
  4. Отново във вашия терминал въведете следните команди:
    1. sudo pip инсталирайте paho-mqtt
    2. sudo pip3 инсталирайте paho-mqtt
  5. Сега, за да проверите дали вашият клиент Mosquitto е инсталиран успешно или не е отворил python2 или python3 черупка и въведете следната команда

    1. импортирайте paho.mqtt.client
    2. това не трябва да връща нищо. ако връща някакъв ред или грешка, проверете отново горните стъпки и следвайте стъпките внимателно още веднъж.
  6. Сега вашата част от Raspberry Pi е почти готова и е добре да преминете към частта Sonoff и Arduino сега

Стъпка 3: Настройка на устройството Sonoff Esp8266 за MQTT

Настройка на устройството Sonoff Esp8266 за MQTT
Настройка на устройството Sonoff Esp8266 за MQTT
Настройка на устройството Sonoff Esp8266 за MQTT
Настройка на устройството Sonoff Esp8266 за MQTT
Настройка на устройството Sonoff Esp8266 за MQTT
Настройка на устройството Sonoff Esp8266 за MQTT

Сега в тази стъпка ще настроим нашето клиентско устройство, което е Sonoff.

sonoff е устройство за домашна автоматизация на wifi, което се предлага с предварително инсталиран фърмуер за wifi-базирана домашна автоматизация и приложение android/ios за управление на уредите през wifi.

Ето един прост хак, за да го препрограмирате по начина, по който искаме. след като препрограмирате с Arduino ide, ще загубите оригиналния фърмуер, предварително инсталиран на sonoff.

  1. първо отворете внимателно вашето sonoff устройство и потърсете изводите, показани на изображението ОПАСНОСТ: sonoff устройството работи на 220V директно променлив ток, първо трябва да го изключите преди отваряне или програмиране.
  2. Сега вижте изображението по-долу за неговия извод, от долната страна на печатната платка има чип esp8266, който намирате за подобен на вашия модул esp8266-01.
  3. Сега отворете Arduino IDE и добавете необходимите Zip библиотеки. Библиотека PUBSUB_client
  4. Също така трябва да добавите платката esp8266 към вашия Arduino ide. ако вече не е добавен, следвайте стъпките

    1. Отворете вашата Arduino IDE и кликнете върху „Файл -> Предпочитания“.
    2. "https://arduino.esp8266.com/stable/package_esp8266com_index.json"
    3. В „URL адреси на допълнителен мениджър на табла“добавете горната връзка и кликнете върху „OK“
    4. Отидете на „Инструменти -> Борд -> Мениджър на платки“, въведете „ESP8266“и го инсталирайте.
    5. Отидете отново в „Инструменти -> Борд“и изберете „Общ модул ESP8266“.
    6. Сега успешно добавихте дъската към вашата Arduino IDE.
  5. Сега трябва да запоите един женски конектор към sonoff устройството, както е показано на изображението.
  6. Сега вземете USB към TTL CP2102 или FTDI платка и направете следната връзка, както е показано на изображението по -горе.

    1. RX на FTDI до TX на Sonoff
    2. TX на FTDI до RX на Sonoff
    3. GND на FTDI към GND на Sonoff
    4. 3.3V от FTDI до 3.3V от Sonoff
  7. ЗАБЕЛЕЖКА: Уверете се, че не захранвате звуковата платка с 5V. той е съвместим с 3.3V, ако свържете 5V към неговия захранващ щифт, може да изгорите вашето sonoff устройство. следователно по -добре използвайте 3.3V захранване само на FTDI платка.
  8. сега направете връзката, както е показано на изображението.
  9. Едното от вас е направено с горните стъпки. свържете вашия FTDI/USB към TTL платка към лаптоп/компютър и отворете Arduino IDE.
  10. Копирайте кода.

11. Сега изберете подходящия COM порт от менюто Tools и изберете устройството като общо устройство ESP8266. Сега натиснете бутона за качване. Ще отнеме около минута или по -малко, за да качите кода в чипа esp8266 на устройството sonoff.

12. Сега сте готови със sonoff и Arduino програмиране. и сега би трябвало да видите светодиода на сонофф таблата да мига // както писахме 5 пъти да мига в началото.

13. Добре е да преминете към следващата стъпка.

Стъпка 4: Контролирайте Sonoff от мрежата

Контролирайте вашия Sonoff от мрежата
Контролирайте вашия Sonoff от мрежата

Сега това е последната стъпка към нашия проект.

  1. сега отворете вашата VNC връзка с отдалечен работен плот на raspberry pi, като въведете IP адреса за вашия Pi
  2. сега отворете терминала и започнете да въвеждате следните команди
  3. тук led е тема, а "0" е полезен товар
  4. променете командния IP адрес с вашия IP адрес Rpi
  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 мрежа и raspberry pi към различна wifi връзка. Трябва да можете да контролирате релето от всяка точка на света.

Сега дори по -нататък искате да тествате автоматично ON/OFF на вашия sonoff. Написах малък скрипт на python

който изпраща първо "1" и след 6 секунди изпраща "0" и този процес се повтаря в цикъл.

импортирайте paho.mqtt.publish като публикация време за внос

Докато е вярно:

print ("Изпращане 1 …") публикация.single ("ledStatus", "1", hostname = "Вашият брокер IP") time.sleep (6) print ("Изпращане 0 …") публикация.single ("ledStatus", "0", hostname = "IP на вашия брокер") time.sleep (3)

Горният код просто включва и изключва релето на превключвателя на релето sonoff wifi.

не забравяйте да замените IP адреса на вашия RaspberryPi в горния код на python. сега стартирайте този скрипт, като щракнете върху опция run module и трябва да видите в черупката

изпращане на "1"..

изпращане на "0"..

изпращане на "1".. нещо подобно.

Това е всичко за този Instructable. ще се видим следващия път с нов.

Чао!!!!

и не забравяйте да следвате и споделите тази инструкция и да я изпробвате сами!

всякакви съмнения в секцията за коментари са добре дошли!

Препоръчано: