Оглавление:
- Шаг 1: Список деталей
- Шаг 2: Подготовьте конец кабеля RPI
- Шаг 3. Датчик на конце кабеля
- Шаг 4: Подключение кабелей
- Шаг 5: Установка программного обеспечения Homebridge
- Шаг 6: Установите Homebridge-dht
- Шаг 7: Установка PIGPIO
- Шаг 8: Мониторинг температуры процессора Raspberry PI - необязательно
- Шаг 9: Запустите Homebridge
- Шаг 10: Тестирование с домашним комплектом
- Шаг 11: Дополнительная глава - Двойные датчики
Видео: Создание устройства датчика температуры Apple HomeKit (DHT22) с использованием RaspberryPI и DHT22: 11 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
Я искал недорогой датчик температуры / влажности, который я мог бы использовать для отслеживания того, что происходит в моем пространстве для ползания, так как обнаружил, что этой весной было очень сыро и было много сырости. Поэтому я искал датчик по разумной цене, который можно было бы поставить и контролировать удаленно. После того, как мы немного покопались в сети, чтобы узнать, что было доступно локально и показало, что оно работает с RaspBerry PI и NodeMCU (подробнее об этом позже). Я остановился на датчике DHT22. Это было дешево, предлагалось как по температуре, так и по влажности, и было доступно на месте.
Обновление, апрель 2019 г. - После нескольких лет использования библиотеки pigpiod я переключился на библиотеку bcm2835 и опубликовал здесь новые инструкции.
Обновление, декабрь 2016 г. - После нескольких месяцев работы с ними я обнаружил, что точность датчика влажности сильно меняется со временем, и перестал доверять им для получения достаточно точной информации о влажности. И я меняю все свои устройства на датчик температуры / влажности / барометрического давления Bosch BME280. Итак, я создал новое руководство, показывающее, как подключить этот датчик к RaspberryPI (Подключите RaspberryPI к BME280 Temperature и NodeMCU / ESP8266 (Homebridge-MCUIOT).
Шаг 1: Список деталей
Я пошел в местный магазин запчастей и купил
1 - Датчик температуры / влажности DHT22 / AM2303
1 - резистор 4,7 кОм
4-контактный разъем с внутренней резьбой (сторона датчика)
5-контактный гнездовой разъем (сторона RPI)
Термоусадочная трубка узкая и широкая
Старая серийная мышь
Чтобы подключить датчик к PI, я использовал кабель от старой мыши с последовательным интерфейсом, которая у меня была. Можно использовать любой используемый кабель, если у него 3 жила. Тот, который я использовал, имел пару проводов, но для простоты я использовал красный, желтый и черный.
Шаг 2: Подготовьте конец кабеля RPI
Затем я припаял контакты к своему проводу. Пины, которые у меня были, были обжимными, но я не мог заставить их обжиматься правильно, поэтому вместо этого выбрал припой.
После пайки контактов я вставил их в 5-контактный разъем «мама», поместив красный в 1, желтый в 4 и черный в 5.
Подключение RPI устроено так
RPI -> 5-контактный заголовок -> Описание -> Цвет провода
1 -> 1 -> Питание 3,3 В постоянного тока -> Красный
7 -> 4 -> GPIO4 -> Желтый
9 -> 5 -> Земля -> Черный
Шаг 3. Датчик на конце кабеля
Для этого мы используем 4-контактный гнездовой разъем, резистор и термоусадочную трубку.
Припаяйте красный и желтый провода к контакту и поместите резистор между ними. Также накройте их термоусадочной пленкой, чтобы не допустить короткого замыкания. Затем припаяйте черный провод к контакту. Вставьте контакты в 4-контактный разъем следующим образом
1 - Красный
2 - желтый
3 - Пустой
4 - Черный
Затем накройте провода термоусадочной трубкой большего размера.
Шаг 4: Подключение кабелей
Когда ваш RPI выключен, осторожно подключите 5-контактную розетку к разъему GPIO, при этом красный провод на контакте 1 совместится с контактом 1 на разъеме GPIO. Заголовок должен охватывать только первые 5 контактов графического процессора с нечетными номерами.
Со стороны датчика совместите штыри на датчике с жаткой и убедитесь, что контакт 1 датчика (с левой стороны) соединяется с контактом 1 жатки (с красным проводом).
После установки термоусадки я больше не мог видеть цвет провода, поэтому пометил его маркером.
Шаг 5: Установка программного обеспечения Homebridge
Поскольку существует множество других руководств по настройке Raspberry Pi, я не собираюсь повторять это здесь, но предполагаю, что у вас есть настройка RPI с Raspbian Jessie, с установленным Node. JS и запущенным домашним мостом. Это ряд руководств по началу работы, которые уже рассказывают об этом.
Шаг 6: Установите Homebridge-dht
1. Установите homebridge-dht с помощью команды
sudo npm install -g homebridge-dht
2. Обновите файл config.json в ~ /.homebridge следующим образом:
{ "мост": {
"name": "Penny", "username": "CC: 22: 3D: E3: CD: 33", "port": 51826, "pin": "031-45-154"}, "description": " HomeBridge "," платформы ": ," аксессуары ": [{" аксессуары ":" Dht "," name ":" dht22 "," name_temperature ":" Температура "," name_humidity ":" Влажность "," service ":" dht22 "}]}
Шаг 7: Установка PIGPIO
1. Установите библиотеку pigpiod с помощью этих команд.
sudo apt-get update
sudo apt-get install pigpio python-pigpio python3-pigpio
2. Скопируйте dht22 в / usr / local / bin / dht22 и сделайте исполняемым.
При установке на моем RPI он находится в / usr / lib / node_modules / homebridge-dht. Ваша установка может разместить его в другом месте. Пожалуйста, сверьтесь с
ls -l / usr / lib / node_modules / homebridge-dht / dh22
sudo cp / usr / lib / node_modules / homebridge-dht / dht22 / usr / local / bin / dht22
sudo chmod a + x / usr / local / bin / dht22
3. На этом этапе вы сможете протестировать датчик DHT22 с помощью команды
dht22
И он должен ответить
0 18,4 С 51,0%
Шаг 8: Мониторинг температуры процессора Raspberry PI - необязательно
Это необязательный шаг, который также позволяет удаленно контролировать температуру вашего процессора Raspberry PI.
1. Создайте файл в / usr / local / bin / cputemp, содержащий
#! / bin / bashcpuTemp0 = $ (cat / sys / class / therm / Thermal_zone0 / temp) cpuTemp1 = $ (($ cpuTemp0 / 1000)) cpuTemp2 = $ (($ cpuTemp0 / 100)) cpuTempM = $ (($ cpu % $ cpuTemp1)) echo $ cpuTemp1 "C"
2. Сделайте файл исполняемым
chmod a + x / usr / local / bin / cputemp
3. Обновите файл config.json в ~ /.homebridge и замените раздел аксессуаров следующим:
"аксессуары": [{"аксессуар": "Dht", "name": "cputemp", "service": "Температура"}, {"аксессуар": "Dht", "name": "Датчик температуры / влажности", "service": "dht22"}]
Шаг 9: Запустите Homebridge
Запустите homebridge, и ваш файл журнала должен выглядеть так
[21.06.2016, 21:37:31] Загружен плагин: homebridge-dht [21.06.2016, 21:37:31] Регистрация аксессуара 'homebridge-dht. Dht'
[21.06.2016, 21:37:31] ---
[21.06.2016, 21:37:31] Загружен config.json с 2 аксессуарами и 0 платформами.
[21.06.2016, 21:37:31] ---
[21.06.2016, 21:37:32] Загрузка 0 платформ…
[21.06.2016, 21:37:32] Загрузка 2 аксессуаров…
[21.06.2016, 21:37:32] [cputemp] Инициализация аксессуара Dht…
[21.06.2016, 21:37:32] [cputemp] INIT: cputemp
[21.06.2016, 21:37:32] [Датчик температуры / влажности] Инициализация дополнительного устройства Dht…
[21.06.2016, 21:37:32] [Датчик температуры / влажности] INIT: Датчик температуры / влажности
Отсканируйте этот код с помощью приложения HomeKit на устройстве iOS для сопряжения с Homebridge:
┌────────────┐
│ 031-45-154 │
└────────────┘
[21.06.2016, 21:37:32] Homebridge работает на порту 51826.
Шаг 10: Тестирование с домашним комплектом
Запустите свой любимый клиент homekit и соедините его с новым аксессуаром. Затем вы должны увидеть новый датчик температуры / влажности.
Если у вас есть проблемы или проблемы, поднимите вопрос на GitHub.
Шаг 11: Дополнительная глава - Двойные датчики
После того, как меня спросили несколько человек, я подумал, что добавлю примечания, необходимые для добавления второго датчика.
Что касается проводки, посмотрите на прикрепленное изображение, это то, что я поделился с Hector305 для подключения второго датчика.
А для обновленного файла конфигурации это config.json.
Рекомендуемые:
Создание устройства для измерения энергии с использованием электронов частиц: 5 шагов (с изображениями)
Создание устройства для контроля энергии с использованием электронов с частицами: в большинстве предприятий мы считаем, что энергия является коммерческими расходами. Счет появляется в нашей почте или по электронной почте, и мы оплачиваем его до даты отмены. С появлением Интернета вещей и интеллектуальных устройств Energy начинает занимать новое место в бизнесе
Построение графика данных датчика температуры в реальном времени (TMP006) с использованием MSP432 LaunchPad и Python: 9 шагов
Построение графика данных датчика температуры в реальном времени (TMP006) с использованием MSP432 LaunchPad и Python: TMP006 - это датчик температуры, который измеряет температуру объекта без необходимости соприкасаться с ним. В этом руководстве мы построим график данных температуры в реальном времени из BoosterPack (TI BOOSTXL-EDUMKII) с использованием Python
Данные беспроводного датчика вибрации и температуры в MySQL с использованием Node-RED: 40 шагов
Данные беспроводного датчика вибрации и температуры в MySQL с использованием Node-RED: Представляем промышленный беспроводной датчик вибрации и температуры для Интернета вещей большого радиуса действия от NCD, обеспечивающий радиус действия до 2 миль за счет использования беспроводной ячеистой сетевой структуры. Это устройство, оснащенное прецизионным 16-битным датчиком вибрации и температуры, может
Создание устройства датчика температуры Apple HomeKit с использованием ESP8266 и BME280: 10 шагов
Создание устройства датчика температуры Apple HomeKit с использованием ESP8266 и BME280: в сегодняшней инструкции мы будем создавать недорогой датчик температуры, влажности и влажности на основе датчика температуры / влажности AOSONG AM2302 / DHT22 или BME280, датчика влажности YL-69. и платформа ESP8266 / Nodemcu. А для отображения
Создание датчика температуры Apple HomeKit (BME280) с использованием RaspberryPI и BME280: 5 шагов
Создайте датчик температуры Apple HomeKit (BME280) с использованием RaspberryPI и BME280: последние несколько месяцев я экспериментировал с устройствами IOT и развернул около 10 различных датчиков для мониторинга условий вокруг моего дома и коттеджа. И изначально я начал использовать датчик умеренной влажности AOSONG DHT22