Создание удалённого датчика температуры на Raspberry Pi и Python — пошаговое руководство
Создание удалённого датчика температуры на Raspberry Pi и Python — пошаговое руководство
После лет доработок на основе отзывов сообщества это обновлённое руководство предоставляет готовое к использованию IoT-устройство для измерения температуры, работающее на любой встроенной Linux-плате с Python и поддержкой 1-Wire. От простой демонстрации с LED до полнофункционального удалённого монитора — вы научитесь собирать, настраивать и развёртывать свой датчик всего за несколько часов.
Что вы создадите
Используя Raspberry Pi, датчик температуры DS18B20 с интерфейсом 1-Wire и обычный LED, вы построите:
- Удалённый логгер температуры, расширяемый датчиками влажности или освещённости.
- Wi‑Fi-устройство, отправляющее данные в облачную платформу (DeviceHive) и управляемое через мобильное приложение.
- Пример замены LED на реле для управления освещением в комнате.
Список оборудования
- Raspberry Pi Rev. B (или любая недорогая встроенная Linux-плата — Gumstix, BeagleBone).
- Датчик температуры DS18B20 1-Wire (широко доступен).
- Любой стандартный LED.
- Резисторы: 510 Ом для LED и ~4,7 кОм для подтяжки DS18B20.
- Макетная плата и перемычки.
Схема проста: датчик питается от 5-В вывода Pi (контакт 2). Внешнее питание не требуется.
Шаг 1 — Настройка Raspberry Pi
- Запишите свежий образ Raspbian на SD-карту и загрузите Pi.
- Используйте надёжный зарядный блок 5 В/1 А micro-USB (обычно подходит от смартфона).
- Настройте сеть: можно обойтись без HDMI и USB-периферии, подключившись по Ethernet, получив адрес по DHCP и заходя по SSH (учётные данные по умолчанию: pi/raspberry).
- Соберите датчик и LED на макетной плате по схеме.
- Загрузите модули ядра 1-Wire:
sudo modprobe w1-gpio sudo modprobe w1_therm
- Сделайте модули постоянными при перезагрузках, добавив в
/etc/modules:echo "w1-gpio" | sudo tee -a /etc/modules echo "w1_therm" | sudo tee -a /etc/modules
- Определите ID датчика:
ls /sys/bus/w1/devices/
Директория будет похожа на28-00000393268a. - Проверьте работу датчика:
cat /sys/bus/w1/devices/28-00000393268a/w1_slave
Шаг 2 — Установка DeviceHive на Pi
- Скачайте последний пакет DeviceHive с devicehive.com.
- Зайдите на Pi по SSH и создайте рабочую директорию:
mkdir ~/devicehive
- Перенесите исходники Python с хост-машины через
scp:scp -r ~/Downloads/devicehive/python/device/Source/* [email protected]:~/devicehive
- Перейдите на DeviceHive Playground и зарегистрируйте бесплатный аккаунт для получения API-ключа.
Шаг 3 — Запуск примера
Перейдите в папку devicehive/python/device/Source, отредактируйте конфигурацию, вставив свой API-ключ, и запустите скрипт. Данные датчика начнут стримиться в DeviceHive, где их можно визуализировать на веб-дашборде или управлять через мобильное приложение.
Расширение проекта
Имея базовый каркас, можно:
- Заменить LED на 5-В реле для управления освещением.
- Подключить дополнительные 1-Wire датчики (влажность, свет) на ту же шину.
- Добавить MQTT или HTTP-эндпоинты для кастомных интеграций.
- Реализовать OTA-обновления прошивки для долгих развёртываний.
Наслаждайтесь созданием своего первого IoT-устройства и исследуйте безграничные возможности Raspberry Pi и Python!
Производственный процесс
- Сборка логгера температуры на Raspberry Pi с $5 I2C датчиком
- Точный температурный профиль Raspberry Pi с Python, SQLite и LabVIEW
- Подключение нескольких DS18B20 1-Wire датчиков к Raspberry Pi для точного мониторинга температуры
- ИК-датчик температуры TMP006 с Raspberry Pi: библиотека Python и руководство по настройке
- Бесшовный мониторинг температуры и влажности на Raspberry Pi с EzTemp
- Как подключить однопроводный датчик температуры DS1820 к Raspberry Pi через GPIO
- Управление светодиодом с PIR-датчиком движения на Raspberry Pi
- Подключение цифрового термометра DS18B20 1-Wire к Raspberry Pi — пошаговое руководство
- Создание монитора температуры ThingSpeak с Raspberry Pi и BrickPi
- Создание многодатчиковой системы мониторинга температуры и света с Raspberry Pi и DS18B20