Оглавление:
- Шаг 1. Соберите необходимые детали
- Шаг 2: Подключение датчика
- Шаг 3: Подключите датчик к RaspberryPI
- Шаг 4. Настройте RaspberryPI для подключения к датчику
- Шаг 5: Установите плагин Homebridge-bme280
Видео: Создание датчика температуры Apple HomeKit (BME280) с использованием RaspberryPI и BME280: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Я экспериментировал с устройствами IOT в течение последних нескольких месяцев и развернул около 10 различных датчиков для мониторинга условий вокруг моего дома и коттеджа. Изначально я начал использовать датчик умеренной влажности AOSONG DHT22, но обнаружил, что через несколько месяцев значения с датчика влажности сильно разошлись. Я бы посмотрел на влажность, и она была бы на 40% или более выше, чем реальные условия. Я осмотрелся и обнаружил, что датчик температуры / давления / влажности Bosch BME280 имеет очень хорошую репутацию в плане точности (https://www.kandrsmith.org/RJS/Misc/Hygrometers/ca…). Итак, в этом руководстве мы подключим Bosch BME280 к Raspberry PI Model 2 и сделаем информацию доступной для Apple HomeKit через Homebridge.
Шаг 1. Соберите необходимые детали
Чтобы купить запчасти, перейдите в свой любимый магазин запчастей.
-
GY-BME280 3.3 прецизионный высотомер атмосферного давления модуль датчика BME280
Существует множество разновидностей этих коммутационных плат. Схема, которую я использую, основана на коммутационной плате GY-BME / P280, но будет работать и с другими
- 50 см 5-контактный соединительный кабель DuPont с гнездом на гнездо
У меня уже был RaspberryPI, поэтому мне не нужно было его покупать.
В качестве футляра для BME280 я использовал старый держатель карты памяти SD, который у меня был с собой. Вы можете осмотреться и увидеть, что вы найдете похожего.
Шаг 2: Подключение датчика
Чтобы подключить датчик, мы собираемся использовать один конец 5-контактного кабеля Dupont типа мама / гнездо для подключения к RaspberryPI, а другой - к датчику. Для этого потребуется пайка;-)
- Разрежьте 5-контактный кабель Dupont типа «мама» / «мама» примерно пополам, и мы будем использовать один конец для подключения к датчику. Другой конец запасной и может использоваться для второго датчика.
- Обрежьте обрезанные концы проволоки примерно на 3 мм и залудите их.
- Следуя прилагаемой схеме, припаяйте концы проводов к соответствующим соединениям на BME280.
- Контакт 1 разъема Dupont (RPI) (3,3 VCC) подключается к контакту 1 - (VCC) на датчике.
- Контакт 2 (SDA1) разъема Dupont (RPI) подключается к контакту 4 - (SDA) на датчике.
- Контакт 3 (SCL1) разъема Dupont (RPI) подключается к контакту 4 - (SCL) на датчике.
- Разъем Dupont (RPI) Контакт 4 (GPIO4) не используется, и провод должен быть обрезан на конце разъема Dupont.
- Контакт 5 (GND) разъема Dupont (RPI) подключается к контакту 4 - (GND) на датчике.
Контакты 5 (CSB) и 6 (SDO) на стороне датчика не используются
Шаг 3: Подключите датчик к RaspberryPI
Чтобы подключить датчик к RaspberryPI, выключите PI. И подключите разъем dupont к 40-контактному разъему GPIO, выровняв контакты следующим образом. Это будет соответствовать левой стороне 40-контактного разъема, начиная сверху.
1. Подключение датчика
- Контакт 1 разъема Dupont (3,3 VCC) подключается к контакту 1 RPI
- Контакт 2 разъема Dupont (SDA1) подключается к контакту 3 RPI
- Контакт 3 разъема Dupont (SCL1) подключается к контакту 5 RPI
- Контакт 4 разъема Dupont (GPIO4) подключается к контакту 7 RPI
- Контакт 5 разъема Dupont (GND) подключается к контакту 9 RPI.
2. Включите RaspberryPI.
Шаг 4. Настройте RaspberryPI для подключения к датчику
Для этих шагов нам нужно, чтобы ваш RaspberryPI был включен, и вам нужно войти в него.
1. Посмотрите, видите ли вы датчик через шину i2c.
sudo i2cdetect -y 1
И результат должен выглядеть так, важная часть этого вывода - 76 в строке 70:. Это твой датчик
0 1 2 3 4 5 6 7 8 9 а б в г д е
00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- 76 --
В случае, если вы получили команду не найдена или возникли другие ошибки, выполните следующие действия.
Adafruit - Настройка I2C
Для всех моих RaspberryPI мне нужно было выполнить следующие действия.
2. Добавьте разрешения к учетной записи, из которой вы будете запускать homebridge, для подключения к шине i2c на RaspberryPI. Сделайте это как пользователь, от которого вы будете запускать Homebridge.
sudo adduser $ USER i2c
Шаг 5: Установите плагин Homebridge-bme280
Я собираюсь предположить, что у вас уже установлен домашний мост и работает над RaspberryPI, и если у вас нет много руководств в Интернете, чтобы запустить его на RaspberryPI.
1. Установите homebridge-bme280 с помощью команды
sudo npm install -g NorthernMan54 / homebridge-bme280 --unsafe-perm
Если это не удается с этой ошибкой
npm ERR! код 128npm ERR! Ошибка команды: / usr / bin / git clone -q git: //github.com/NintageMan54/homebridge-bme280.git /var/root/.npm/_cacache/tmp/git-clone-7237d51c npm ERR! фатальный: не удалось создать ведущие каталоги '/var/root/.npm/_cacache/tmp/git-clone-7237d51c': отказано в разрешении npm ERR!
Попробуй это
sudo su -
npm install -g NorthernMan54 / homebridge-bme280 --unsafe-perm
2. Создайте файл config.json в ~ /.homebridge со следующим:
{
"мост": {
"name": "Домашний мост",
"username": "CC: 22: 3D: E3: CE: 30", «порт»: 51826,
«штифт»: «031-45-154»
},
"description": "Это пример файла конфигурации с одним поддельным аксессуаром и одной поддельной платформой. Вы можете использовать его в качестве шаблона для создания собственного файла конфигурации, содержащего устройства, которыми вы действительно владеете.",
"аксессуары": [
{
«аксессуар»: «BME280»,
"name": "Датчик", "name_temperature": "Температура",
"name_humidity": "Влажность", "параметры": {
«i2cBusNo»: 1, «i2cAddress»: «0x76»
}
}
], "платформы": [
]
}
3. Запустите homebridge, результат должен выглядеть примерно так.
[11.12.2016, 6:25:29] Загружен плагин: homebridge-bme280 [11.12.2016, 6:25:29] Регистрация аксессуара homebridge-bme280. BME280 [11.12.2016, 6:25:29] --- [11.12.2016, 6:25:30] Загружен config.json с 1 аксессуаром и 0 платформами. [11.12.2016, 6:25:30] --- [11.12.2016, 6:25:30] Загрузка 0 платформ… [11.12.2016, 6:25:30] Загрузка 1 аксессуары… [11.12.2016, 6:25:30] [Датчик] Инициализация аксессуара BME280… [11.12.2016, 6:25:30] [Датчик] Параметры датчика BME280: {"i2cBusNo": 1, «i2cAddress»: 118} Обнаружен идентификатор микросхемы BME280 0x60 на адресе шины i2c-1 0x76 [11.12.2016, 6:25:31] [Sensor] Инициализация BME280 выполнена успешно [11.12.2016, 6:25: 31 AM] [Sensor] data (temp) = {"temperature_C": 18.23, "влажность": 39.1710189421353, "pressure_hPa": 1016.8910377944043} Отсканируйте этот код с помощью приложения HomeKit на устройстве iOS для сопряжения с Homebridge: ^
4. При необходимости выполните сопряжение экземпляра домашнего моста с iPhone.
5. Наслаждайтесь
Обратите внимание, что датчик атмосферного давления виден только в сторонних приложениях Homekit, но не в "Доме", 6. Кредиты
- Спасибо Роберту X. Сегеру за плагин homebridge-bme280.
- Спасибо Skylar Stein за модуль node.js bme280-sensor
- Adafruit за публикацию руководства по настройке I2C.
Рекомендуемые:
Построение графика данных датчика температуры в реальном времени (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. А для отображения
Создание оповещений по электронной почте для беспроводного датчика температуры и влажности NCD с помощью Node-Red: 22 шага
Создание оповещений по электронной почте о беспроводном датчике температуры и влажности NCD с использованием Node-Red: мы используем здесь датчик температуры и влажности NCD, но шаги остаются одинаковыми для любого продукта ncd, поэтому, если у вас есть другие беспроводные датчики ncd, вы можете наблюдайте рядом кроме того. Путем остановки этого текста вам нужно
Создание устройства датчика температуры Apple HomeKit (DHT22) с использованием RaspberryPI и DHT22: 11 шагов
Создайте устройство с датчиком температуры Apple HomeKit (DHT22) с использованием RaspberryPI и DHT22: я искал недорогой датчик температуры / влажности, который я мог бы использовать для отслеживания того, что происходит в моем пространстве для ползания, так как обнаружил, что этой весной было очень влажно , и было много сырости. Поэтому я искал датчик по разумной цене, который я мог бы