Оглавление:
- Шаг 1. Концепция, возможности подключения и компоненты
- Шаг 2. Заставьте IDE Arduino работать
- Шаг 3: Подключение датчика температуры, светодиода и ИК-датчика
- Шаг 4: Настройка облачного веб-сервера
- Шаг 5: Настройка базы данных для хранения данных о температуре
- Шаг 6: Создайте "температурную" таблицу
- Шаг 7. Загрузите эскиз датчика температуры в ESP8266
- Шаг 8: доступ к датчику температуры и движения
- Шаг 9: Установите HomeBridge для HomeKit в Raspberry Pi (необязательно)
- Шаг 10: Подключение Homebridge к вашему Iphone
- Шаг 11. Заставьте свой Homebridge работать в фоновом режиме
Видео: Беспроводной датчик температуры и движения IoT: 11 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Меня вдохновили многие проекты IoT, которые есть в Instructables, поэтому в процессе обучения я пытаюсь объединить несколько полезных приложений, которые актуальны. В качестве расширения к моим предыдущим инструкциям, связанным с датчиком температуры IoT, я теперь добавил больше возможностей в подсистему. Дополнительные функции:
- NTP-соединение, чтобы узнать время
- светодиод, которым можно управлять дистанционно
- Датчик PIR для обнаружения движения
- Подключен Raspberry PI под управлением homekit для подключения к iPhone «Home».
Шаг 1. Концепция, возможности подключения и компоненты
Концепция, показанная выше, заключается в том, чтобы обеспечить удаленный мониторинг температуры с дополнительной возможностью обнаруживать движение, если кто-то находится дома, и разрешать уведомление с помощью светодиода. Доступ к устройству можно получить локально в локальной сети или удаленно через веб-сервер. Вы также можете подключить Raspberry pie (необязательно) с установленным аксессуаром Homekit, чтобы обеспечить подключение к приложению iPhone «Home».
Как и в предыдущей версии, в этом проекте требуются следующие компоненты, обратите внимание, что ссылка ниже является партнерской ссылкой, поэтому, если вы не хотите участвовать, просто перейдите напрямую.
- Плата разработчика NodeMcu Lua ESP8266. Я получаю свой от Banggood.
- датчик температуры LM35
- Датчик PIR
- ВЕЛ
- Макетная доска
- Arduino IDE
- Рабочий веб-сервер с включенными скриптами php-сервера
- Raspberry pi (необязательно)
Шаг 2. Заставьте IDE Arduino работать
Подробнее об этом шаге см. В моих предыдущих инструкциях Шаг 2. Датчик температуры IoT с ESP8266.
Шаг 3: Подключение датчика температуры, светодиода и ИК-датчика
Датчик температуры LM35 имеет 3 ножки, первая ножка - VCC, вы можете подключить его к 3,3 В (выход платы ESP8266 - 3,3 В). Средняя ножка - это Vout (откуда считывается температура, вы можете подключить ее к аналоговому входу вывода AD0 ESP8266, он расположен в верхней правой части платы, как показано на рисунке. А правая ножка должна быть подключен к земле.
Датчик PIR также состоит из 3 ножек, вы можете увидеть крошечные отметки +, 0, - на плате рядом с ножкой. Итак, подключите «+» к 3,3 В, «-» к земле, а средний контакт «0» к контакту D6 ESP8266.
У светодиода было только 2 ножки: «+» (анод), более длинная ножка подключила его к контакту D5 ESP8266 и «-» (катод), более короткие ножки должны быть подключены к земле (GND).
Шаг 4: Настройка облачного веб-сервера
Для этого шага есть определенное предположение:
У вас уже есть работающий веб-сервер, размещенный в правильном домене. И вы знакомы с передачей файлов на свой веб-сервер через FTP с помощью Filezilla или какой-либо другой программы FTP.
Загрузите прикрепленный zip-файл в корень вашего веб-сайта. Предположим, для этого упражнения ваш веб-сайт - "https://arduinotestbed.com".
Предполагается, что весь файл находится в корне веб-сервера. Если вы сохранили его в другой папке, отрегулируйте расположение файла соответствующим образом как в файле ArduinoData3.php, так и в эскизе Arduino. Если вы не уверены, дайте мне знать, и я постараюсь помочь.
Шаг 5: Настройка базы данных для хранения данных о температуре
мы используем базу данных sqllite для этого упражнения. Sqllite - это база данных на основе легких файлов, для которой не требуется сервер. База данных находится локально на вашем веб-сервере. Если вас беспокоит безопасность, вам следует изменить код, чтобы использовать правильный сервер базы данных, такой как mysql или MSSQL.
Перед тем, как начать, вам необходимо изменить пароль базы данных, расположенный в файле phpliteadmin.php. Итак, откройте этот файл на своем веб-сервере и измените информацию о пароле в строке 91 на тот пароль, который вам нужен.
Затем укажите phpliteadmin.php на своем веб-сервере. Используя наш пример, прежде чем вы должны указать на
Поскольку на сервере нет базы данных, вам будет представлен экран для создания базы данных. Введите «temperature.db» в поле ввода новой базы данных и нажмите кнопку «Создать». База данных будет успешно создана. На данный момент база данных все еще пуста, поэтому вам понадобится сценарий sql для создания структуры таблицы базы данных для размещения данных.
Шаг 6: Создайте "температурную" таблицу
Чтобы создать таблицу, щелкните вкладку «SQL» и вставьте следующий запрос sql.
НАЧАТЬ СДЕЛКУ;
---- - Структура таблицы для температуры ---- CREATE TABLE 'temperature' ('ID' INTEGER PRIMARY KEY NOT NULL, влажность INT NOT NULL, температура REAL, временная метка DATETIME DEFAULT CURRENT_TIMESTAMP, 'heating' BOOLEAN, 'goaltemp' НАСТОЯЩИЙ); СОВЕРШИТЬ;
Затем нажмите кнопку «Перейти» внизу. Таблица должна быть создана успешно.
Если вы обновите страницу, вы должны увидеть таблицу «температура» под базой данных temperature.db в левой части. Если вы нажмете на таблицу температур, если по-прежнему нет данных.
Теперь, когда у нас есть база данных, вы можете указать следующий URL-адрес
arduinotestbed.com/ArduinoData3.php
Вы увидите шкалу температуры, показывающую фиктивные данные, датчик движения и панель управления для включения светодиода. Нижняя часть графика по-прежнему будет пустой, потому что данных еще нет.
Шаг 7. Загрузите эскиз датчика температуры в ESP8266
Теперь скопируйте весь прикрепленный файл и откройте «ESP8266TempPIRSensor.ino», интерфейс Arduino создаст для вас папку. Переместите остальные файлы в новую папку, созданную интерфейсом Arduino.
При необходимости измените указанный веб-сервер и расположение файла data_store3.php. Затем загрузите скетч в ESP8266.
Если все пойдет хорошо, он должен быть успешно загружен, и в первый раз ESP перейдет в режим AP. Вы можете использовать свой ноутбук или мобильный телефон для подключения к нему. Вы сможете найти точку доступа по имени «ESP-TEMP». - Попробуйте подключиться к ESP-TEMP с помощью портативного компьютера или мобильного телефона. - Узнайте, какой IP-адрес вам назначен, выполнив следующие действия. Команда "ipconfig" в Windows или команда "ifconfig" в Linux или Mac. - Если вы используете iphone, нажмите кнопку i рядом с ESP-TEMP, к которому вы подключены - Откройте браузер и укажите на ESP-TEMP, если вам назначен 192.168.4.10 в качестве IP-адреса, ESP-TEMP имеет IP-адрес 192.168.4.1, поэтому вы можете просто перейти на https://192.168.4.1, и вам должна быть представлена страница настроек, где вы можете ввести ssid своего Wi-Fi роутера и ключ psk. после того, как вы ввели оба этих параметра и отметили галочкой поле «Обновить конфигурацию Wi-Fi», нажмите «обновить», чтобы обновить настройки до вашего ESP8266.
Если вы хотите включить отладку последовательного монитора, вам нужно будет раскомментировать
#define DEBUG
строку в clock.h и прокомментировал
// # undef DEBUG
линия. затем нажмите Инструменты-> Монитор последовательного порта. Окно последовательного монитора покажет вам прогресс подключения Wi-Fi и покажет локальный IP-адрес ESP8266. Внутренний синий светодиод мигнет один раз при считывании температуры. Он также включается при обнаружении движения.
Шаг 8: доступ к датчику температуры и движения
Теперь вы должны снова указать на локальный веб-сервер ESP8266. И это покажет время, температуру и датчик движения.
Теперь вы также можете указать свой внешний веб-сервер, в этом примере
Вы можете сдвинуть кнопку под панелью управления, чтобы включить светодиод. Я использую это, чтобы уведомить своих детей, когда возвращаюсь с работы домой.
Датчик движения обновляется каждые секунды или около того, поэтому вам придется чаще обновлять страницу, чтобы видеть, обнаружено ли движение. На данный момент автоматическое обновление установлено на 60 секунд. Температура будет считываться каждые пару минут, но вы также можете настроить это время на удобное для вас время.
Поздравляем, если вы зашли так далеко !!, похлопайте себя по плечу и наслаждайтесь своим творением. Следующий шаг является необязательным, только если вы хотите иметь возможность управлять светодиодом и контролировать температуру, а также датчик движения с устройств Apple.
Шаг 9: Установите HomeBridge для HomeKit в Raspberry Pi (необязательно)
Меня вдохновили инструкции от GalenW1, которые позволяют мне так много узнать о HomeBridge.
Чтобы установить HomeBridge для HomeKit на Raspberry Pi, вы можете использовать следующую инструкцию.
github.com/nfarina/homebridge
HomeBridge позволяет подключить приложение Home в Iphone к датчикам, которые вы только что создали на предыдущих шагах.
После того, как вы установили HomeBridge, вам необходимо установить несколько плагинов:
- Датчик температуры
- Датчик движения
- Выключатель
sudo npm install -g homebridge-http-temperature
sudo npm install -g homebridge-MotionSensor
sudo npm install -g homebridge-http-simple-switch
После установки плагина вам нужно будет настроить файл config.json, расположенный ниже.
sudo vi /home/pi/.homebridge/config.json
вы можете настроить содержимое файла config.json, как показано ниже, убедитесь, что URL-адрес указывает на правильное место.
Шаг 10: Подключение Homebridge к вашему Iphone
Теперь, когда все аксессуары были настроены, вы можете запустить домашний мост, используя следующую команду
Homebridge
Вы должны увидеть экран, как показано выше. Вы можете выполнить следующий шаг, чтобы добавить Homebridge в свой домашний комплект.
- Теперь запустите приложение "Дом" на своем Iphone.
- Нажмите кнопку «Добавить аксессуары».
- вам будет представлен экран для сканирования кода, вы можете использовать камеру своего телефона для сканирования кода с экрана Raspberry Pi или добавления кода вручную.
Обратите внимание, что для работы Iphone и Raspberry Pi должен быть установлен один и тот же беспроводной маршрутизатор.
- После подключения на экране появится сообщение о том, что ваши аксессуары не сертифицированы. Нажмите кнопку «Все равно добавить», чтобы продолжить.
- Затем у вас будет возможность настроить каждый из аксессуаров, в этом случае у нас есть выключатель света, датчик движения и датчик температуры.
- Последний экран покажет вам все подключенные аксессуары.
После подключения вы можете использовать Siri для проверки датчика движения, температуры и включения и выключения света.
Шаг 11. Заставьте свой Homebridge работать в фоновом режиме
Поздравляю !! вы сделали это. В качестве бонуса вы можете запустить homebridge в фоновом режиме, используя следующую команду:
хоумбридж и
Теперь вы можете повеселиться с Siri и получить удовольствие от своей тяжелой работы.
Спасибо, что следили за этим до конца. Если вам это нравится, оставьте, пожалуйста, несколько комментариев или проголосуйте за меня.
Рекомендуемые:
Интернет вещей - Ubidots - ESP32 + Беспроводной датчик вибрации и температуры большого радиуса действия: 7 шагов
IoT-Ubidots-ESP32 + Беспроводной датчик вибрации и температуры с большим радиусом действия: Вибрация - это действительно движение туда-сюда - или колебание - машин и компонентов в моторизованных гаджетах. Вибрация в промышленной системе может быть симптомом или мотивом неприятностей или может быть связана с повседневной работой. Например, osci
Датчик / датчик температуры двигателя с беспроводным датчиком для классических автомобилей: 7 шагов
Датчик / датчик температуры двигателя с беспроводным датчиком для классических автомобилей: я сделал этот датчик для своего любимого Çipitak. Автомобиль fiat 126 с 2-цилиндровым двигателем с воздушным охлаждением под задним капотом. У ipitak нет датчика температуры, показывающего, насколько горячий двигатель, поэтому я подумал, что датчик будет полезен. Также хотел, чтобы датчик был проводным
Беспроводной датчик температуры и влажности большого радиуса действия IOT с красным узлом: 27 шагов
Беспроводной датчик температуры и влажности большого радиуса действия IOT с Node-Red: Представляем беспроводной датчик температуры-влажности большого радиуса действия NCD, обеспечивающий дальность действия до 28 миль с использованием архитектуры беспроводной ячеистой сети. Датчик температуры-влажности Honeywell HIH9130 передает высокоточные данные о температуре и
Датчик температуры IoT с ESP8266: 6 шагов (с изображениями)
Датчик температуры IoT с ESP8266: я был вдохновлен на создание датчика температуры, который я могу контролировать по Wi-Fi. Этот проект не нов, но мне нравится идея наличия промежуточного уровня безопасности и отсутствия необходимости открывать порт в вашем маршрутизаторе для вашего IoT-устройства. Основная идея позволит
Выходное отверстие с контролем движения - от датчика движения: 6 шагов
Выходное отверстие с контролем движения - от источника света с датчиком движения: Представьте, что вы обманщик, идущий в самый страшный дом в квартале. Пройдя мимо всех гулей, привидений и кладбищ, вы наконец доберетесь до последнего пути. Вы видите перед собой конфету в миске! Но тут вдруг гхо