Оглавление:

Создание домашних устройств для Интернета вещей или домашней автоматизации: 7 шагов (с изображениями)
Создание домашних устройств для Интернета вещей или домашней автоматизации: 7 шагов (с изображениями)

Видео: Создание домашних устройств для Интернета вещей или домашней автоматизации: 7 шагов (с изображениями)

Видео: Создание домашних устройств для Интернета вещей или домашней автоматизации: 7 шагов (с изображениями)
Видео: Альманах по автоматизации и системе “умный дом” на примере элитного загородного дома от девелопера 2024, Июль
Anonim
Создание домашних устройств для Интернета вещей или домашней автоматизации
Создание домашних устройств для Интернета вещей или домашней автоматизации

Это руководство является частью моей серии «Домашняя автоматизация своими руками», ознакомьтесь с основной статьей «Планирование системы домашней автоматизации своими руками». Если вы еще не знаете, что такое Homie, взгляните на homie-esp8266 + homie от Марвина Роджера.

Датчиков очень много. Я освещаю самые основные из них, чтобы дать читателю требования, чтобы приступить к созданию «чего-то». Возможно, это не ракетостроение, но это действительно должно сработать.

Если у вас нет запчастей, следите за моим грядущим поучением «Получение электронных запчастей из Азии».

Позвольте мне добавить несколько модных слов: IoT, ESP8266, Homie, DHT22, DS18B20, домашняя автоматизация.

Теперь тема должна быть довольно ясной:-)

Кроме того, это руководство теперь также доступно на моей личной странице:

Шаг 1. Начало работы

Начиная
Начиная
Начиная
Начиная

Условные обозначения

В этом руководстве используются клоны D1 Mini. Это контроллеры, совместимые с Arduino с поддержкой Wi-Fi и чипом ESP8266. Они поставляются в очень маленьком форм-факторе (~ 34 * 25 мм) и стоят очень дешево (~ 3-4 доллара за клоны).

Я проиллюстрирую каждую сборку с использованием D1 Mini, макета и некоторых датчиков. Я включаю спецификацию материалов (BOM) для каждого, но пропущу такие очевидные вещи, как перемычки и макет (мини или полный). Я остановлюсь на «активных частях».

Для проводов / кабелей на схемах (библиотека Fritzing + AdaFruitFritzing) я использовал:

  • Красный / оранжевый для питания, обычно 3,3 В. Иногда будет 5В, будьте осторожны.
  • Черный для земли.
  • Желтый для сигналов цифровых данных: биты перемещаются и могут считываться микросхемами как есть.
  • Синий / фиолетовый для аналоговых сигналов данных: здесь нет битов, просто напряжение, которое необходимо измерить и вычислить, чтобы понять, что происходит.

Homie for ESP8266 поставляет с десяток примеров, вот где я начал создавать это руководство.

Макетная плата

D1 вполне совместим с макетной платой, но сохранит только один ряд контактов вверх и вниз. В каждом примере D1 будет с правой стороны, а компоненты - с левой. Верхняя и нижняя шины питания будут использоваться для передачи 3,3 В или 5 В.

Примечание

Примеры Homie построены как скетчи ".ino" для Arduino IDE. Однако мой собственный код построен как ".ccp" для PlatformIO.

Это не будет иметь большого значения, поскольку эскизы достаточно просты, чтобы их можно было копировать / вставлять независимо от выбранного вами инструмента.

Шаг 2: Температура и влажность: DHT22 / DHT11

Температура и влажность: DHT22 / DHT11
Температура и влажность: DHT22 / DHT11
Температура и влажность: DHT22 / DHT11
Температура и влажность: DHT22 / DHT11
Температура и влажность: DHT22 / DHT11
Температура и влажность: DHT22 / DHT11

Сборка устройства

DHT22 использует:

  • Один цифровой контакт для связи с контроллером, подключите его к D3
  • Два провода для питания (3,3 В или 5 В + GND)
  • Цифровой вывод должен быть на высоком уровне (подключен к источнику питания), для этого мы используем резистор между шиной питания и выводом данных.

Код

Проект PlatformIO можно скачать по адресу:

Оригинальный пример Homie здесь (но без датчика):

Для DHT22 используйте библиотеку датчиков DHT (ID = 19)

Спецификация

  • Контроллер: Wemos D1 Mini
  • Резистор: 10 кОм
  • Датчик: (один из этих)

    • DHT22: Я использовал тип с 4 контактами, для которого требуется дополнительный резистор. Модули с 3 контактами, поставляемые как SMD, включают в себя резистор.
    • DHT11: это дешевле, но менее точно, проверьте свои требования

Шаг 3: Водонепроницаемость: DS18B20

Водонепроницаемость: DS18B20
Водонепроницаемость: DS18B20
Водонепроницаемость: DS18B20
Водонепроницаемость: DS18B20
Водонепроницаемость: DS18B20
Водонепроницаемость: DS18B20

Сборка устройства DS18B20 использует:

  • Один цифровой контакт для связи с контроллером, подключите его к D3
  • Два провода для питания (3,3 В или 5 В + GND)
  • Цифровой вывод должен быть на высоком уровне (подключен к источнику питания), для этого мы используем резистор между шиной питания и выводом данных.

DS18B20 - это однопроводной датчик. Он использует шину, и поэтому несколько датчиков могут использовать один вывод данных.

Также можно НЕ использовать 3,3 В / 5 В для питания датчика, это называется режимом паразитного питания. Подробности см. В таблице данных.

Код

Проект PlatformIO можно скачать по адресу:

Как и для DHT22, здесь находится оригинальный пример Homie (но без датчика):

Для шины 1-Wire используйте пакет OneWire (ID = 1)

Для DS18B20 используйте температуру Далласа (ID = 54).

Спецификация

  • Контроллер: Wemos D1 Mini
  • Резистор: 4,7 кОм
  • Датчик: DS18B20, на фото - водонепроницаемый
  • 3-контактный винтовой зажим для облегчения подключения кабеля к макетной плате

Шаг 4: Свет: фоторезистор / фотоэлемент (цифровой: вкл. / Выкл.)

Освещение: фоторезистор / фотоэлемент (цифровой: вкл. / Выкл.)
Освещение: фоторезистор / фотоэлемент (цифровой: вкл. / Выкл.)
Освещение: фоторезистор / фотоэлемент (цифровой: вкл. / Выкл.)
Освещение: фоторезистор / фотоэлемент (цифровой: вкл. / Выкл.)
Освещение: фоторезистор / фотоэлемент (цифровой: вкл. / Выкл.)
Освещение: фоторезистор / фотоэлемент (цифровой: вкл. / Выкл.)

Сборка устройства

(Извините, у меня нет компонента Fritzing для цифрового фотоэлемента)

Цифровой модуль фотоэлемента использует:

  • Один цифровой контакт для связи с контроллером, подключите его к D3
  • Два провода для питания (3,3 В + GND)

Можно использовать аналоговый фотоэлемент, но здесь это не описано, см. Отличную статью Adafruit «Использование фотоэлемента».

Примечание. В этом примере на плате датчика есть потенциометр. Он используется для установки границы между «светлым» и «темным» окружающим светом. При чтении 1 индикатор не горит, поэтому чтение 0 означает, что индикатор горит.

Код

Проект PlatformIO можно скачать по адресу:

Спецификация

Контроллер: Wemos D1 Mini

Датчик: светочувствительный модуль / модуль обнаружения света

Шаг 5: Свет: фоторезистор / фотоэлемент (аналог)

Свет: фоторезистор / фотоэлемент (аналог)
Свет: фоторезистор / фотоэлемент (аналог)
Свет: Фоторезистор / Фотоэлемент (аналог)
Свет: Фоторезистор / Фотоэлемент (аналог)
Свет: Фоторезистор / Фотоэлемент (аналог)
Свет: Фоторезистор / Фотоэлемент (аналог)

Сборка устройства

Аналоговый датчик фотоэлемента действует как резистор. Он будет подключаться между аналоговым входом и 3,3 В.

Между GND и выводом данных устанавливается резистор, чтобы создать делитель напряжения. Цель состоит в том, чтобы создать известный диапазон значений:

  • Если нет света, фотоэлемент в основном блокирует VCC, таким образом подключая GND к вашему выводу данных: контакт будет читать почти 0.
  • При большом количестве яркого света фотоэлемент пропускает VCC на вывод данных: вывод будет считывать почти полное напряжение и, следовательно, близкое к максимальному (1023).

Примечание. Значения аналоговых выводов считываются в диапазоне 0-1023 с помощью analogRead. Это нецелесообразно иметь дело с 1-байтовыми значениями, для этого функция карты Arduino поможет уменьшить с 0-1023 до (например) 0-255.

Для калибровки минимальных / максимальных значений вашего датчика используйте эскиз, подобный этому, от Arduino.

Код

Проект PlatformIO можно скачать по адресу:

Спецификация

  • Контроллер: Wemos D1 Mini
  • Датчик: светозависимый резистор (LDR) / фоторезистор
  • Резистор: 1 кОм или 10 кОм, необходимо откалибровать в зависимости от вашей ячейки

использованная литература

  • Исходный код сервера PiDome для условий освещения локации
  • "Использование фотоэлемента" Адафрута
  • "Фоторезисторы" здесь, в инструкциях
  • Какой-то чертовски сумасшедший "Учебник по фотоэлементам", если вам нужна математика и графики.

Шаг 6: Оптический детектор: QRD1114

Сборка устройства

Код

Спецификация

использованная литература

  • Физические вычисления: QRD1114 включает образец кода для чтения датчика и использования прерывания для поворотного энкодера + точный дизайн печатной платы
  • Руководство по подключению оптического детектора QRD1114 в Sparkfun

Шаг 7: Заключительные слова

Заключительные слова
Заключительные слова

Эта инструкция очень короткая, чтобы объяснить базовый мониторинг.

Чтобы пойти дальше, нам нужно подключить реле, ИК-излучатель… Надеюсь, это будет рассмотрено позже, когда у меня будет свободное время. Основное отличие состоит в том, что мы не просто «читаем» (есть ли свет?), Но и «пишем» (включаем свет!).

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