Проверка/Оформление/Редактирование: Мякишев Е.А.
|
|
|
Черновик
|
Использование ESP8266 вместе с компактным PIR-датчиком[1]
А не хотите собрать систему, способную определять человеческое присутствие? Это можно сделать разными способами, но один из самых популярных – это использование пироэлектрического датчика, который также называют пассивным инфракрасным (на англ. «passive infrared» или просто «PIR») датчиком (более подробно о них можно почитать в Википедии). Датчик, о котором я расскажу в этой статье – это тоже PIR-датчик, но компактный и с поддержкой 3,3-вольтовой логики, что отлично подходит для использования с ESP8266.
PIR-датчик с поддержкой 3,3 вольт
Функции
- Рабочее напряжение – от 2,7 до 12 вольт (постоянный ток)
- Энергопотребление (по моим измерениям) – 0,016 мА (в течение 2 секунд после обнаружения источника движения) и 0,076 мА (когда датчик в активном состоянии)
- Время задержки – обнаружив движение, датчик будет держать выходной контакт в состоянии HIGH в течение 2 секунд
- Угол действия – около 100 градусов
- Дальность действия – около 2 метров
- Размеры – примерно 12 на 25 мм
Как использовать вместе с ESP8266?
Этот датчик может работать с 3,3-вольтовой логикой, поэтому совместим с ESP8266. У него всего три контакта – один для входного напряжения (Vin), один для «земли» (GND) и один для вывода данных (Data). Подключение к плате NodeMCU можно выполнить следующим образом:
Подключение компактного PIR-датчика к NodeMCU
То есть, контакт Vin на PIR-датчике – к контакту 3.3V на плате (слева), контакт Data – к контакту D2 (посередине), а контакт GND – к контакту GND (справа).
Затем скопируйте код, показанный ниже, в IDE Arduino и загрузите его на плату NodeMCU, подключенную к компьютеру:
int oldValue = 0;
void setup() {
// блок setup() предназначен для исходных настроек,
// поэтому проходит всего один цикл:
pinMode(D2, INPUT_PULLUP);
Serial.begin(115200);
}
void loop() {
int value = digitalRead(D2);
if (value != oldValue) {
Serial.println("New Value: " + String(value));
// "Новое значение: "
oldValue = value;
if (value == 1) {
Serial.println("##########################");
}
}
delay(100);
}
Теперь, если датчик определит движение, то отправит соответствующие данные на монитор порта IDE Arduino.
Область применения
Тот факт, что этому датчику не нужны никакие дополнительные компоненты, делает его применимым в самых разнообразных ситуациях. Будучи активным, он потребляет 0,076 мА, а в течение 2 секунд после обнаружения движения энергопотребление и вовсе падает до 0,016 мА. Таким образом, теоретически этот датчик может работать на 1200-миллиамперной батарее около 2 лет. Более того, если смастерить более продвинутую цепь, то подав на контакт CH_EN (т.е. «chip enable», что значит «включение устройства») чипа ESP8266 значение LOW, вы тем самым переключите датчик в режим «ультраглубокого» сна, из которого датчик будет пробуждаться лишь при обнаружении движения. Более подробно о том, как это сделать, можно почитать тут.
Вот так будет выглядеть схема для этого продвинутого проекта. Правда, я ее еще не пробовал.
Преимущества и недостатки
- Плюсы:
- Низкая цена
- Компактность
- Простой интерфейс
- Широкий диапазон входного напряжения (удобно при использовании вместе с ESP8266)
- Минусы:
- Короткая дальность действия (хорошие результаты лишь в пределах 2 метров)
См.также
Партнерские ресурсы |
---|
Криптовалюты |
|
---|
Магазины |
|
---|
Хостинг |
|
---|
Разное |
- Викиум - Онлайн-тренажер для мозга
- Like Центр - Центр поддержки и развития предпринимательства.
- Gamersbay - лучший магазин по бустингу для World of Warcraft.
- Ноотропы OmniMind N°1 - Усиливает мозговую активность. Повышает мотивацию. Улучшает память.
- Санкт-Петербургская школа телевидения - это федеральная сеть образовательных центров, которая имеет филиалы в 37 городах России.
- Lingualeo.com — интерактивный онлайн-сервис для изучения и практики английского языка в увлекательной игровой форме.
- Junyschool (Джунискул) – международная школа программирования и дизайна для детей и подростков от 5 до 17 лет, где ученики осваивают компьютерную грамотность, развивают алгоритмическое и креативное мышление, изучают основы программирования и компьютерной графики, создают собственные проекты: игры, сайты, программы, приложения, анимации, 3D-модели, монтируют видео.
- Умназия - Интерактивные онлайн-курсы и тренажеры для развития мышления детей 6-13 лет
- SkillBox - это один из лидеров российского рынка онлайн-образования. Среди партнеров Skillbox ведущий разработчик сервисного дизайна AIC, медиа-компания Yoola, первое и самое крупное русскоязычное аналитическое агентство Tagline, онлайн-школа дизайна и иллюстрации Bang! Bang! Education, оператор PR-рынка PACO, студия рисования Draw&Go, агентство performance-маркетинга Ingate, scrum-студия Sibirix, имидж-лаборатория Персона.
- «Нетология» — это университет по подготовке и дополнительному обучению специалистов в области интернет-маркетинга, управления проектами и продуктами, дизайна, Data Science и разработки. В рамках Нетологии студенты получают ценные теоретические знания от лучших экспертов Рунета, выполняют практические задания на отработку полученных навыков, общаются с экспертами и единомышленниками. Познакомиться со всеми продуктами подробнее можно на сайте https://netology.ru, линейка курсов и профессий постоянно обновляется.
- StudyBay Brazil – это онлайн биржа для португалоговорящих студентов и авторов! Студент получает уникальную работу любого уровня сложности и больше свободного времени, в то время как у автора появляется дополнительный заработок и бесценный опыт.
- Автор24 — самая большая в России площадка по написанию учебных работ: контрольные и курсовые работы, дипломы, рефераты, решение задач, отчеты по практике, а так же любой другой вид работы. Сервис сотрудничает с более 70 000 авторов. Более 1 000 000 работ уже выполнено.
- StudyBay – это онлайн биржа для англоязычных студентов и авторов! Студент получает уникальную работу любого уровня сложности и больше свободного времени, в то время как у автора появляется дополнительный заработок и бесценный опыт.
|
---|
Внешние ссылки
ESP8266 AT-команды |
---|
Список AT-команд |
---|
Базовые команды |
- AT - Проверка запуска
- AT+RST - Рестарт
- AT+GMR - Просмотр информации о версиях
- AT+GSLP - Активация режима глубокого сна
- ATE - Активация/деактивация эха
- AT+RESTORE - Сброс к заводским настройкам
- AT+UART Настройка UART [Устарела]
- AT+UART_CUR - Настройка UART в текущей сессии
- AT+UART_DEF - Дефолтная настройка UART (записывается на FLASH)
- AT+SLEEP - Режим сна
|
---|
Команды для WiFi |
- AT+CWMODE - WiFi-режим (клиент / точка доступа / клиент + точка доступа).
- AT+CWMODE_CUR - WiFi-режим (клиент / точка доступа / клиент + точка доступа). Запись на FLASH не идет.
- AT_CWMODE_DEF - WiFi-режим (клиент / точка доступа / клиент + точка доступа). Запись идет на FLASH.
- AT+CWJAP - Подключение к точке доступа.
- AT+CWJAP_CUR - Подключение к точке доступа. Запись на FLASH не идет.
- AT+CWJAP_DEF - Подключение к точке доступа. Запись идет на FLASH.
- AT+CWLAP - Вывод списка доступных точек доступа.
- AT+CWQAP - Отключение от точки доступа
- AT+CWSAP - Настройка параметров для режима точки доступа
- AT+CWSAP_CUR - Настройка параметров для режима точки доступа. На FLASH запись не идет.
- AT+CWSAP_DEF - Настройка параметров для режима точки доступа. Запись идет на FLASH.
- AT+CWLIF - Получение IP-адресов клиентов, подключенных к точке доступа ESP8266.
- AT+CWDHCP - Включение/выключение DHCP. [Эта команда устарела].
- AT+CWDHCP_CUR - Включение/выключение DHCP. На FLASH не записывается.
- AT+CWDHCP_DEF - Включение/выключение DHCP. Сохранение идет на FLASH.
- AT+CWAUTOCONN - Автоматическое подключение к точке доступа при включении ESP8266.
- AT+CIPSTAMAC - Задает MAC-адрес для клиента ESP8266
- AT+CIPSTAMAC_CUR - Задает MAC-адрес для клиента ESP8266. На FLASH запись не идет.
- AT+CIPSTAMAC_DEF - Задает MAC-адрес для клиента ESP8266. Запись идет на FLASH.
- AT+CIPAPMAC - Задает MAC-адрес для точки доступа ESP8266.
- AT+CIPAPMAC_CUR - Задает MAC-адрес для точки доступа ESP8266. Запись на FLASH не идет.
- AT+CIPAPMAC_DEF - Задает MAC-адрес для точки доступа ESP8266. Запись идет на FLASH.
- AT+CIPSTA - Задает IP-адрес клиента ESP8266.
- AT+CIPSTA_CUR - Задает IP-адрес клиента ESP8266. Запись на FLASH не идет.
- AT+CIPSTA_DEF - Задает IP-адрес клиента ESP8266. Запись идет на FLASH.
- AT+CIPAP - Задает IP-адрес точки доступа ESP8266
- AT+CIPAP_CUR - Задает IP-адрес точки доступа ESP8266. На FLASH запись не идет.
- AT+CIPAP_DEF - Задает IP-адрес точки доступа ESP8266. Запись идет на FLASH.
- AT+CWSTARTSMART - Запуск SmartConfig
- AT+CWSTOPSMART - Остановка SmartConfig
|
---|
Команды для TCP/IP |
|
---|