Оглавление:

Обнаружение вторжений HiFive1 Arduino с помощью предупреждений MQTT с использованием ESP32 или ESP8266: 6 шагов
Обнаружение вторжений HiFive1 Arduino с помощью предупреждений MQTT с использованием ESP32 или ESP8266: 6 шагов

Видео: Обнаружение вторжений HiFive1 Arduino с помощью предупреждений MQTT с использованием ESP32 или ESP8266: 6 шагов

Видео: Обнаружение вторжений HiFive1 Arduino с помощью предупреждений MQTT с использованием ESP32 или ESP8266: 6 шагов
Видео: Что такое IDS/IPS (система обнаружения и предотвращения вторжений)? 2024, Декабрь
Anonim
Обнаружение вторжений HiFive1 Arduino с помощью предупреждений MQTT с использованием ESP32 или ESP8266
Обнаружение вторжений HiFive1 Arduino с помощью предупреждений MQTT с использованием ESP32 или ESP8266

HiFive1 - первая Arduino-совместимая плата на базе RISC-V, построенная с процессором FE310 от SiFive. Плата примерно в 20 раз быстрее, чем Arduino UNO, но, как и плата UNO, у нее отсутствует какое-либо беспроводное соединение.

К счастью, на рынке есть несколько недорогих модулей, позволяющих смягчить это ограничение. В этом руководстве я использовал ESP32 или ESP8266, чтобы получить беспроводное соединение. Несмотря на то, насколько дешев ESP-01, из-за необходимости программировать его с помощью скетча Arduino, ESP-01 был менее практичным решением. Чтобы запрограммировать ESP-01, ему нужен внешний адаптер USB для ESP-01, которого у меня не было на момент написания этого руководства. (Если вы заинтересованы в использовании HiFive1 с ESP-01, перейдите по этой ссылке). Я также думал об использовании Arduino Shield, но в итоге остановился на ESP8266 / 32 из-за относительно дорогой цены, которую имеют большинство экранов.

Этот проект будет сосредоточен на создании системы обнаружения вторжений, которая будет работать, отправляя уведомление MQTT Broker каждый раз, когда ультразвуковой датчик (SRF05) обнаруживает объект, пересекающий его линию обзора.

Материалы, необходимые для этого проекта:

  • Доска HiFive1 (можно купить здесь)
  • Модуль ESP32 Dev или ESP8266 NodeMCU 1.0
  • Резистор 10 кОм x 2
  • Резистор 1к
  • Макетная плата
  • соединительный кабель x 6
  • SRF05 Ультразвуковой модуль
  • Мобильное устройство

Шаг 1. Настройка среды

Настройка среды
Настройка среды

Установите Arduino IDE

1. Следуйте инструкциям по установке пакета Arduino платы HiFive1 и драйвера USB.

2. Установите пакет платы ESP32 или ESP8266, добавив соответствующий URL-адрес в «Файл-> Настройки-> Диспетчер дополнительных плат»:

  • ESP8266 -
  • ESP32 -

Шаг 2: Подключение ESP32

Подключение ESP32
Подключение ESP32
Подключение ESP32
Подключение ESP32

Если вы используете ESP8266, перейдите к шагу 3.

Важно: SRF05 поставляется с двумя версиями распиновки, которые являются зеркальными версиями друг друга. Убедитесь, что у вас такой же модуль, как и у меня, используя ссылку ниже.

Для получения дополнительных технических сведений о SRF05 перейдите по этой ссылке.

GND (HiFive1) -> GND (SRF05) 5v (HiFive1) -> VCC (SRF05) DI / O 11 (HiFive1) -> Триггерный контакт (SRF05) DI / O 12 (HiFive1) -> Echo Pin (SRF05) DI / O 5 (HiFive1) -> Tx (ESP32) DI / O 6 (HiFive1) -> Rx (ESP32)

Примечание. Убедитесь, что перемычка IOREF установлена на 3,3 В.

Шаг 3: Подключение ESP8266

Подключение ESP8266
Подключение ESP8266
Подключение ESP8266
Подключение ESP8266

Важно: SRF05 поставляется с двумя версиями распиновки, которые являются зеркальными версиями друг друга. Убедитесь, что у вас такой же модуль, как и у меня, используя ссылку ниже.

Для получения дополнительных технических сведений о SRF05 перейдите по этой ссылке.

GND (HiFive1) -> GND (SRF05) 5v (HiFive1) -> VCC (SRF05) DI / O 11 (HiFive1) -> Триггерный контакт (SRF05) DI / O 12 (HiFive1) -> Echo Pin (SRF05) DI / O 5 (HiFive1) -> Tx (ESP8266) DI / O 6 (HiFive1) -> Rx (ESP8266)

Примечание. Убедитесь, что перемычка IOREF установлена на 3,3 В.

Шаг 4: Программирование

Код HiFive1:

Перед программированием установите «Tools-> Board» на плату HiFive1, «Tools-> CPU Clock Frequency» на «256MHz PLL», «Tools-> Programmer» на «SiFive OpenOCD» и выберите правильный последовательный порт.

Вам также нужно будет загрузить эту ультразвуковую библиотеку и этот PubSubClient и извлечь их в папку с библиотеками Arduino, расположенную в «Пользователь-> Документы-> Arduino-> Библиотеки».

Код ESP32 / 8266:

Во время программирования на плате ESP должны быть отключены аппаратные выводы Rx и Tx. После успешной загрузки кода повторно подключите выводы Rx и Tx на ESP, чтобы обеспечить связь между HiFive1 и ESP.

Для ESP32 - Установите «Инструменты-> Плата» на «Модуль разработчика ESP32», «Инструменты-> Программист» на «AVRISP mkll» и выберите правильный последовательный порт.

Для ESP8266 - Установите «Инструменты-> Плата» на «NodeMCU 1.0 (модуль ESP-12E)», «Инструменты-> Программатор» на «AVRISP mkll» и выберите правильный последовательный порт.

Код скетча был заимствован отсюда с модификациями, чтобы преобразовать его в систему обнаружения злоумышленников.

Шаг 5: Настройка клиента

Настройка клиента
Настройка клиента
Настройка клиента
Настройка клиента
Настройка клиента
Настройка клиента
Настройка клиента
Настройка клиента

Я использовал облачный брокер MQTT (этот) и телефон Android с этим приложением.

Чтобы все настроить, вам нужно будет открыть счет.

Используйте предоставленные снимки экрана, чтобы настроить CloudMQTT и приложение.

Шаг 6: окончательный результат

Конечный результат
Конечный результат
Конечный результат
Конечный результат
Конечный результат
Конечный результат
Конечный результат
Конечный результат

Примечание: вы должны установить скорость передачи вашего последовательного монитора на 115200, так как это скорость передачи, которую мы используем в нашем скетче.

Ваш окончательный результат должен быть похож на окончательные снимки экрана.

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