Оглавление:

Сеть датчиков температуры: 6 шагов
Сеть датчиков температуры: 6 шагов

Видео: Сеть датчиков температуры: 6 шагов

Видео: Сеть датчиков температуры: 6 шагов
Видео: Датчики температуры для ectoControl. Основные возможности и отличия. 2024, Ноябрь
Anonim
Image
Image

Температура и влажность - важные данные в вашей лаборатории, кухне, производственной линии, офисе, роботах-убийцах и даже в вашем доме. Если вам нужно контролировать несколько мест, комнат или пространств, вам нужно что-то надежное, компактное, точное и доступное. Вы можете купить дорогие датчики, но если вы контролируете несколько комнат, это может привести к резкому увеличению ваших расходов. Из этого туториала Вы узнаете, как создать эти датчики и отслеживать данные, не нарушая при этом денег.

Это идеальное приложение для Raspberry Pi Zero WH за 14 долларов, поскольку это устройство компактное, недорогое, мощное и имеет встроенный Wi-Fi. Установка каждого сенсорного узла будет стоить ~ 31 доллар плюс доставка, налоги и футляр. Вы можете легко получить каждый товар оптом, чтобы минимизировать расходы на доставку, за исключением Raspberry Pi Zero WH, который может быть более сложным за пределами Великобритании. Вы не можете найти поставщика, который позволил бы вам приобрести более одного Zero по правилам Raspberry Pi Foundation.

Мы используем Zero WH за 14 долларов вместо Zero W за 10 долларов, так как Zero WH имеет предварительно припаянный коллектор, что сделает сборку нашего проекта очень быстрой и простой. Мы используем датчик температуры / влажности DHT22 из-за его точности измерения температуры (+/- 0,5 ° C), диапазона влажности (0–100%) и низкой стоимости. Нам также нужно что-то действительно простое в подключении без использования подтягивающего резистора.

Запасы

  • Raspberry Pi Zero WH (14 долларов)
  • Карта Micro SD (4 доллара США)
  • Блок питания Raspberry Pi (8 долларов)
  • Датчик температуры / влажности DHT22 (5 долларов США)
  • (Необязательно) чехол Raspberry Pi Zero W (6 долларов США)

Шаг 1: Сборка

сборка
сборка

DHT22 будет иметь три контакта, которые вам нужно будет подключить к вашему Pi Zero WH: 5 В, земля и данные. Вывод питания на DHT22 будет обозначен «+» или «5V». Подключите его к контакту 2 (верхний правый контакт, 5 В) Pi Zero WH. Контакт заземления на DHT22 будет обозначен «-» или «Gnd». Подключите его к контакту 6 (два контакта ниже контакта 5V) на Pi Zero WH. Оставшийся вывод на DHT22 является выводом данных и будет обозначен как «out», «s» или «data». Подключите его к одному из контактов GPIO на Zero WH, например, GPIO4 (контакт 7). Ваши соединения должны выглядеть, как на картинке.

Шаг 2: установка программного обеспечения

Для первой настройки Pi Zero WH вам понадобятся монитор и клавиатура. После настройки вам не понадобится ни монитор, ни клавиатура для работы при развертывании в вашем пространстве. Мы хотим, чтобы каждый узел был как можно меньше и компактнее.

  1. Вам необходимо установить стандартную операционную систему Raspbian, чтобы ваш Pi Zero WH загрузился. Вы можете следовать инструкциям на веб-сайте Raspberry Pi, чтобы настроить Pi Zero WH.
  2. Подключите Pi Zero WH к сети Wi-Fi. Вы можете следовать инструкциям на веб-сайте Raspberry Pi, чтобы подключить Pi Zero WH к Wi-Fi.
  3. Установите модуль Adafruit DHT Python на свой Pi, чтобы упростить чтение данных датчика DHT22. Введите в командной строке следующее:

$ sudo pip install Adafruit_DHT

Теперь у вас есть все необходимое для связи с датчиком. Затем вам понадобится место назначения для данных вашего датчика, чтобы вы могли превратить эти данные в потрясающую панель управления или оповещение по SMS / электронной почте. На этом этапе проекта мы будем использовать Initial State.

  1. Зарегистрируйте учетную запись на
  2. Установите модуль ISStreamer в командной строке:

$ sudo pip установить ISStreamer

Шаг 3: скрипт Python

Установив нашу операционную систему вместе с двумя модулями Python для чтения данных датчиков и отправки данных в начальное состояние, мы готовы написать сценарий Python. Следующий сценарий создаст / добавит в корзину данных начального состояния, прочитает данные датчика DHT22 и отправит эти данные на панель управления в реальном времени. Все, что вам нужно сделать, это изменить строки 6–11.

импортировать Adafruit_DHT

из ISStreamer. Streamer import Время импорта Streamer # --------- Настройки пользователя --------- SENSOR_LOCATION_NAME = "Office" BUCKET_NAME = ": partly_sunny: Комнатные температуры" BUCKET_KEY = "rt0129" ACCESS_KEY = «РАЗМЕСТИТЕ СВОЙ КЛЮЧ НАЧАЛЬНОГО СОСТОЯНИЯ ДОСТУПА ЗДЕСЬ» MINUTES_BETWEEN_READS = 10 METRIC_UNITS = False # --------------------------------- стример = Streamer (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY), а True: влажность, temp_c = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) if METRIC_UNITS: streamer.log (SENSOR_LOCATION) "Temperaturer.log (SENSOR_LOCATION)" else: temp_f = format (temp_c * 9.0 / 5.0 + 32.0, ".2f") streamer.log (SENSOR_LOCATION_NAME + "Temperature (F)", temp_f) влажность = формат (влажность, ".2f") streamer.log (SENSOR_LOCATION_NAME) + "Влажность (%)", влажность) streamer.flush () time.sleep (60 * MINUTES_BETWEEN_READS)

  • Строка 6 - это значение должно быть уникальным для каждого узла / датчика температуры. Это может быть название комнаты вашего сенсорного узла, физическое местоположение, уникальный идентификатор или что-то еще. Просто убедитесь, что он уникален для каждого узла, чтобы гарантировать, что данные из этого узла поступают в собственный поток данных на вашей панели управления.
  • Строка 7 - это имя сегмента данных. Это можно изменить в любое время в пользовательском интерфейсе начального состояния.
  • Строка 8 - Это ключ от вашего ведра. Это должен быть один и тот же ключ сегмента для каждого узла, который вы хотите отображать на одной панели инструментов.
  • Строка 9 - это ключ доступа к вашей учетной записи в исходном состоянии. Скопируйте + вставьте этот ключ из своей учетной записи начального состояния.
  • Строка 10 - это время между считыванием показаний датчика. Измените соответственно.
  • Строка 11 - вы можете указать метрические или британские единицы.

После того, как вы установили строки 6–11 в скрипте Python на Pi Zero WH, сохраните и выйдите из текстового редактора. Запустите сценарий с помощью следующей команды:

$ python tempsensor.py

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

Шаг 4: Панель управления

Щиток приборов
Щиток приборов
Щиток приборов
Щиток приборов

Перейдите в свою учетную запись начального состояния, щелкните имя сегмента на полке корзины и просмотрите свои данные на панели управления. Вы можете настроить свою панель управления и настроить триггеры по SMS / электронной почте. На прилагаемом изображении показана приборная панель с тремя узлами датчиков, измеряющими температуру и влажность для трех разных комнат.

Вы можете добавить фоновое изображение на свою панель управления.

Шаг 5: автоматический запуск и мониторинг процесса и IP

Автозапуск и мониторинг процесса и IP
Автозапуск и мониторинг процесса и IP

После того, как у вас будет развернуто несколько узлов, вам понадобится способ контролировать каждый узел, чтобы убедиться, что он работает. Вы, вероятно, будете запускать каждый сенсорный узел без монитора или клавиатуры / мыши, чтобы он оставался компактным. Это означает, что вам нужно, чтобы каждый узел загружался и запускал ваш скрипт автоматически. Вы можете использовать свою учетную запись в исходном состоянии для создания удобной панели управления процессом / IP-адресом, как показано выше. Подробное руководство по созданию этой панели инструментов и настройке Pi Zero WH для автоматического запуска скрипта Python при загрузке можно найти здесь.

Шаг 6: Заключение

Заключение
Заключение

После того, как вы запустите и запустили единственный сенсорный узел, будет легко и относительно недорого дублировать вашу настройку столько раз, сколько потребуется. Использование Pi Zero WH дает вам гибкость для выполнения других задач, поскольку у него очень много лошадиных сил. Например, вы можете использовать один из Pi Zero WH для извлечения локальных данных о погоде из API погоды и добавления их на панель управления сенсором. Если вы решите списать свои сенсорные узлы, вы можете повторно использовать свои Pi Zero WH для других проектов. Эта гибкость помогает защитить ваши инвестиции в проект в будущем.

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