Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Учебник для начинающих по IoT: стриминг данных температуры с Raspberry Pi

«Hello World!» — скорее всего, это был вывод первой программы, которую вы написали, учась кодить. Настройка устройства для стриминга данных температуры быстро становится де-факто «Hello World!» проектом Интернета вещей (IoT). Если печать «Hello World!» в первый раз была долгой, мучительной задачей, возможно, вы бы никогда не написали вторую программу. Ваш первый IoT-проект должен вызывать только широкую улыбку. Этот весёлый, лёгкий проект познакомит вас с прекрасным миром стриминга IoT-данных.

Видео-туториал всего проекта доступен по адресу:

https://youtu.be/HMqPbfvCshs

Вот список необходимых комплектующих:

Шаг 1: Подключение железа

Датчик температуры DS18B20 хорошо работает с Raspberry Pi, потому что у него цифровой выход, а у Pi нет встроенного АЦП. Raspbian включает интерфейс для чтения выходных данных датчика. Нам просто нужно написать немного кода, чтобы извлечь и разобрать температуру. У Adafruit есть отличное руководство по DS18B20, мы просто следуем ему и модифицируем для стриминга температуры вместо вывода на экран.

Подключение простое: красный провод DS18B20 к 3,3 В, чёрный к GND, синий к подтягивающему резистору и к GPIO 4 Pi.

Шаг 2: Чтение температуры

Для запуска интерфейса чтения датчика нужно выполнить две команды. Откройте командную строку на Pi или зайдите по SSH. Введите:

sudo modprobe w1-gpio
sudo modprobe w1-therm

Вывод датчика теперь записывается в файл на Pi. Чтобы найти этот файл: cd /sys/bus/w1/devices

В этой директории будет поддиректория, начинающаяся на «28-». То, что после «28-» — серийный номер вашего датчика. Зайдите в неё. Внутри файл w1_slave содержит вывод датчика. Содержимое выглядит примерно так:

a2 01 4b 46 7f ff 0e 10 d8 : crc=d8 YES
a2 01 4b 46 7f ff 0e 10 d8 t=26125

Число после «t=» — то, что нам нужно. Это температура в 1/1000 градуса Цельсия (в примере — 26,125 °C). Нужен простой скрипт, читающий этот файл и извлекающий это число. К счастью, Adafruit уже написали Python-скрипт, который делает именно это и выводит температуру на экран. Создайте новый файл на Pi (например, temperature.py) и вставьте туда следующий код:

Нажмите здесь, чтобы увидеть код

Запустите скрипт (sudo python temperature.py) — вы увидите показания датчика на экране.

Шаг 3: Стриминг температуры

Именно здесь мы отклоняемся от руководства Adafruit. Вывод температуры на экран скучно. Мы хотим стримить эти данные куда-то, где можно увидеть не только текущую температуру, но и историю замеров (плюс, кто хочет «читать» кучу температур текстом; хочется красивой визуализации). Сначала установите стример Initial State, чтобы дать нашим измерениям место назначения (инструкции по настройке Initial State streamer — это очень просто и занимает менее двух минут). Мы модифицируем скрипт выше, чтобы стримить температуру в наш аккаунт Initial State вместо вывода на экран. Вот изменения:

Нажмите здесь, чтобы увидеть код

Вам нужно скопировать клиентский ключ вашего аккаунта Initial State в кавычки на строке 6, где написано client_key = "". Ключ можно найти в настройках аккаунта или на лендинге после входа.

Вот сделанные изменения:

Подробнее: IoT 101 Project: Stream Temperature from your Raspberry Pi

Производственный процесс

  1. Сборка логгера температуры на Raspberry Pi с $5 I2C датчиком
  2. Точный температурный профиль Raspberry Pi с Python, SQLite и LabVIEW
  3. Raspberry Pi сетевой монитор температуры и влажности — руководство по DIY сборке
  4. Как считывать температуру с DS18B20 на Raspberry Pi 2
  5. Профессиональный мониторинг температуры на Raspberry Pi с датчиком DS18B20
  6. Измерение температуры на Raspberry Pi с датчиками Maxim 1-Wire и мостом DS2482 I2C
  7. Создание удалённого датчика температуры на Raspberry Pi и Python — пошаговое руководство
  8. Точный мониторинг температуры в серверной на Raspberry Pi
  9. Raspberry Pi BMP085: точные показания температуры и давления по I2C
  10. Создание многодатчиковой системы мониторинга температуры и света с Raspberry Pi и DS18B20