Оглавление:

Как использовать MQTT с Raspberry Pi и ESP8266 / sonoff: 4 шага
Как использовать MQTT с Raspberry Pi и ESP8266 / sonoff: 4 шага

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

Видео: Как использовать MQTT с Raspberry Pi и ESP8266 / sonoff: 4 шага
Видео: NodeMCU ESP8266 Send Data to Raspberry Pi Using MQTT Broker 2024, Июль
Anonim
Как использовать MQTT с Raspberry Pi и ESP8266 / sonoff
Как использовать MQTT с Raspberry Pi и ESP8266 / sonoff

Всем здравствуйте!

Сегодня я собираюсь показать вам, как настроить релейный переключатель Sonoff Wi-Fi на базе Raspberry Pi и ESP8266 для управления вашей бытовой техникой из любой точки мира.

К концу этой инструкции, если вы внимательно следовали моим инструкциям, вы сможете управлять любым своим бытовым устройством с терминала Raspberry Pi или с помощью оболочки python.

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

Прежде чем начать это руководство, я хотел бы упомянуть несколько очень важных вещей,

  1. Релейный переключатель sonoff Wi-Fi поставляется с собственной микропрограммой управления. после перепрограммирования исходная прошивка удаляется безвозвратно. Так что убедитесь в этом.
  2. Релейный переключатель Sonoff Wi-Fi напрямую питается от переменного напряжения 230 В, поэтому, если вы не являетесь экспертом в работе с такими высокими напряжениями, обратитесь за помощью к своим родителям или опытному человеку.
  3. Релейный переключатель sonoff Wi-Fi просто основан на наборе микросхем Wi-Fi esp8266-01, который представляет собой микросхему 3,3 В, если вы случайно подадите 5 В на его контакт + V, вы обязательно повредите его.
  4. Здесь для этого поучительно, я посчитал, что у вас есть все настройки raspberry pi и включен Wi-Fi с IP-адресом для запуска команд mosquitto и MQTT в Терминале.

** Если вы готовы выполнить все четыре вышеупомянутых шага, то вперед!

Шаг 1. Введение + расходные материалы

Введение + расходные материалы
Введение + расходные материалы
Введение + расходные материалы
Введение + расходные материалы

Привет ребята! сегодня мы собираемся построить очень интересный проект. В этом проекте мы собираемся управлять нашими домашними устройствами, такими как лампа переменного тока, с помощью брокера MQTT.

Примечание. Это проект IOT, поэтому вы можете управлять своим устройством переменного тока из любой точки мира

MQTT (Massage Que Telemetry Transport) - это простой протокол передачи полезной нагрузки, используемый во многих веб-проектах. Мессенджер Facebook также использует протокол MQTT. достаточно введения, давайте начнем с Project.

Что нам нужно для этого проекта?

1) Активное соединение Wi-Fi (желательно роутер)

2) Модель Raspberry Pi3 с включенным Wi-Fi.

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

4) Некоторые соединительные провода

5) Кабельные перемычки

6) Конвертер USB в TTL CP2102

  • Примечание: для этого проекта у вас должен быть raspberry pi, все настройки с подключением монитора к клавиатуре или в автономном режиме с вашим ноутбуком (подключение VNC)
  • Если у вас нет Raspberry Pi с настроенным режимом монитора или без головы, вам нужно следовать другому моему руководству о том, как подключить Raspberry Pi в режиме без головы.

Шаг 2: Настройка Raspberry Pi

Настройка Raspberry Pi
Настройка Raspberry Pi

На этом этапе мы настроим Raspberry Pi для проекта.

в этом руководстве мы используем sonoff ESP8266 в качестве клиента и raspberry pi в качестве брокера mosquitto.

  1. откройте свой терминал Raspberry Pi и введите

    1. sudo apt-get update
    2. sudo apt-get upgrade После того, как ваш raspberry 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. судо -i
    6. apt-get update
    7. apt-get install mosquitto
    8. apt-get install mosquitto-clients
  3. После того, как вы успешно выполнили все приведенные выше инструкции, у вас есть готовая машина с установленным брокером mosquitto, и вы готовы к следующему шагу.
  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 - это устройство домашней автоматизации с Wi-Fi, которое поставляется с предустановленной прошивкой для домашней автоматизации на основе Wi-Fi и приложением android / ios для управления устройствами через Wi-Fi.

Вот простой способ перепрограммировать его так, как мы хотим. после перепрограммирования с помощью Arduino ide вы потеряете исходную прошивку, предустановленную на sonoff.

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

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

    1. RX FTDI в TX Sonoff
    2. Передача FTDI в RX Sonoff
    3. GND FTDI к GND Sonoff
    4. От 3,3 В FTDI до 3,3 В Sonoff
  7. ПРИМЕЧАНИЕ. Убедитесь, что на плату sonoff не подается напряжение 5 В. он совместим с 3,3 В, если вы подключаете 5 В к его контакту питания, вы можете сжечь свое устройство sonoff. Следовательно, лучше использовать питание 3,3 В только платы FTDI.
  8. Теперь сделайте соединение, как показано на изображении.
  9. Один из них выполнен с указанными выше шагами. подключите плату FTDI / USB к TTL к ноутбуку / ПК и откройте Arduino IDE.
  10. Скопируйте код.

11. Теперь выберите соответствующий COM-порт в меню «Инструменты» и выберите устройство как обычное устройство ESP8266. Теперь нажмите кнопку загрузки. Загрузка кода в микросхему esp8266 устройства sonoff займет около минуты или меньше.

12. Теперь вы готовы к программированию на Sonoff и Arduino. и теперь вы должны увидеть, как светодиод на плате sonoff мигает // как мы писали 5 раз, мигая в начале.

13. Вы можете перейти к следующему шагу.

Шаг 4. Управляйте своим Sonoff через Интернет

Управляйте своим Sonoff из Интернета
Управляйте своим Sonoff из Интернета

Теперь это последний шаг к нашему проекту.

  1. теперь откройте подключение Raspberry Pi к удаленному рабочему столу VNC, введя IP-адрес своего Pi
  2. теперь откройте терминал и начните вводить следующие команды
  3. здесь светодиод - это тема, а "0" - полезная нагрузка
  4. измените IP-адрес в команде с вашим IP-адресом Rpi
  5. И вместо «0» напишите «1», который включит ваше реле на переключателе Sonoff Wi-Fi.

mosquitto_pub -h 192.168.0.104 -t светодиод -m "0"

Приведенная выше инструкция выключит ваше реле.

mosquitto_pub -h 192.168.0.104 -t светодиод -m "1"

Эта инструкция включит ваше реле.

Теперь вы закончили управлять своим sonoff с терминала Rpi.

вы можете проверить, подключив переключатель Wi-Fi sonoff к другой сети Wi-Fi и raspberry pi к другому подключению Wi-Fi. Вы должны иметь возможность управлять реле из любой точки мира.

Теперь еще больше вы хотите протестировать включение / выключение вашего sonoff автоматически. Я написал небольшой скрипт на Python.

который сначала отправляет «1», а через 6 секунд отправляет «0», и этот процесс повторяется в цикле.

import paho.mqtt.publish as publishimport time

Пока правда:

print («Отправка 1…») publish.single («ledStatus», «1», hostname = «IP-адрес вашего брокера») time.sleep (6) print («Отправка 0 …») publish.single («ledStatus», "0", hostname = "IP вашего брокера") time.sleep (3)

Приведенный выше код просто включает и выключает реле на переключателе реле sonoff Wi-Fi.

не забудьте заменить свой IP-адрес RaspberryPi в приведенном выше коде Python. теперь запустите этот скрипт, нажав на опцию запуска модуля, и вы должны увидеть в оболочке

отправка "1"..

отправка "0"..

отправка "1".. что-то вроде этого.

Вот и все для этого руководства. увидимся в следующий раз с новым.

До свидания!!!!

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

любые сомнения в комментариях приветствуются!

Рекомендуемые: