Оглавление:

Персональный метеоролог: 5 шагов
Персональный метеоролог: 5 шагов

Видео: Персональный метеоролог: 5 шагов

Видео: Персональный метеоролог: 5 шагов
Видео: Bl || Что ты со мной сотворил? || I go to school not by bus || 2024, Ноябрь
Anonim
Персональный метеоролог
Персональный метеоролог

Вы когда-нибудь задумывались, говорит ли ваш метеоролог правду? Вы хотите незаметный, дешевый и быстрый способ стать собственным метеорологом… и, может быть, небольшой проект? Не смотрите дальше! Это упрощенное устройство будет отслеживать погодные условия из любого места, которое вы пожелаете, и даст вам возможность следить за погодой одним нажатием кнопки.

Этот проект даст вам возможность попрактиковаться в работе с Flask, Raspberry Pis, датчиками GPIO и HTML! Его не только весело строить, но и очень полезно. Ваш метеоролог может просто остаться без работы …

Запасы

  • Малина Pi 3
  • Карта Micro SD
  • 1 объемный провод
  • 4 провода между мужчинами и женщинами
  • 1 датчик DHT11
  • 1 аккумулятор

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

  • Компьютерный монитор
  • USB-клавиатура
  • Комплект для зарядки Micro USB

Шаг 1. Подключение

Проводка
Проводка
Проводка
Проводка

Используя Raspberry Pi, нам нужно интегрировать основной датчик в источник питания Raspberry Pi, чтобы он мог выполнять необходимые измерения. Главный датчик, используемый в этом проекте, изображенный выше, регистрирует температуру и влажность окружающей физической среды. Вы можете использовать макетную плату или другое монтажное устройство, чтобы разместить этот датчик и пропустить через него наши провода, или просто подключите его с помощью проводов «мама-мама» непосредственно к контактам на устройстве Raspberry Pi.

Следуйте схеме подключения, показанной выше, чтобы правильно подключить датчик к Raspberry Pi. Обратите внимание, что необходим источник питания, аккумулятор или в непосредственной близости от розетки.

Шаг 2: настройка

Поздравляем, оборудование собрано!

Теперь мы собираемся начать работать непосредственно с Raspberry Pi и программным обеспечением проекта. Все перечисленное можно сделать на Raspberry Pi с помощью клавиатуры и монитора или через SSH. Следующие библиотеки необходимы для того, чтобы все программное обеспечение могло работать на вашем Raspberry Pi. Использование команды «pip install», чтобы позволить вашему программному обеспечению в дальнейшем использовать следующие библиотеки:

  • Запросы
  • RPi. GPIO
  • фляга
  • flask_restful
  • flask_wtf
  • wtforms

Обратите внимание, что погода может несколько раз измениться, пока эти библиотеки установлены … проявите терпение, вы так близки к тому, чтобы разблокировать свои метеорологические возможности!

Теперь, когда вы установили все свои библиотеки, давайте познакомимся с Flask, легким фреймворком, который обеспечивает простой обмен данными между узлами в среде нашего проекта. В этом проекте Raspberry Pi становится сервером. Вы можете освоиться с Flask на простом примере приложения здесь.

Шаг 3. Код и запуск

Теперь, когда вы собрали аппаратные и программные библиотеки, вы готовы приступить к созданию файлов проекта.

Сервер: в этом проекте Raspberry Pi, подключенный к датчику, действует как сервер. Сервер ожидает, пока пользователь завершит почтовый запрос температуры, влажности и / или графика. Мы создали HTML-шаблоны, которые настроены для правильного взаимодействия с запросом приложения о температуре, влажности, графике или любой их комбинации (см. Папку шаблонов). Это означает, что если пользователю нужна только температура, он не увидит ничего о влажности, кроме опции формы для получения показания влажности. После создания сообщения сервер собирает информацию из сообщения и выполняет действие, запрошенное пользователем. Датчик DHT получает показания, которые затем сохраняются и передаются в качестве аргумента словаря с новой формой html, которую мы визуализируем. Сервер также сохраняет эти показания для создания графика предыдущих показаний по запросу пользователя.

Приложение: приложение отправляет HTTP-запросы на сервер Flask, чтобы получить и отобразить температуру, влажность и визуальное представление температуры и влажности последних двадцати четырех запросов, установленных из формы по запросу пользователя. Приложение использует форму Flask с тремя логическими полями ввода для каждого. Пользователь может установить флажок для любой комбинации из трех полей, которые он хочет видеть. Они не могут контролировать ничего, кроме да / нет, они хотят видеть эту информацию. Мы создали уникальный html-файл, который мы используем для рендеринга в зависимости от запроса пользователя. Это сделано для того, чтобы отображались только показания, запрошенные пользователем. Мы не хотим, чтобы пользователь запрашивал температуру и просматривал пустой шаблон для влажности или пустой график.

Шаг 4: Тестирование

Устройство работает через файл: mainsense.py. Это приводит к появлению файла formSense.py, который содержит наш класс Flask Form, который используется приложением. Сервер сначала отображает «sense.html», а затем ожидает, пока пользователь сделает запрос. Затем mainsense.py ожидает получения показаний датчика в любой момент, когда GET-запрос от приложения запрашивает температуру или влажность и сохраняет предыдущие 24 показания от пользователей. Существует также опция графика, с помощью которой пользователь может выбрать, какие графики предыдущие показания, максимум 24, сделанные пользователем. Вы также можете видеть, что html включает только параметры формы, которые пользователь может использовать для выполнения другого запроса, и показания, запрошенные пользователем.

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

Шаг 5: Монтаж

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

Примечание: устройство должно быть размещено с датчиком в безопасном месте от суровых погодных условий в вашем регионе. Как только это будет завершено, вы сможете подключиться к устройству по SSH и запустить сервер. Откройте веб-сайт и знайте, что вы получаете самые последние измерения погоды из того места, где был размещен ваш сервер Raspberry Pi.

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