Я превратил свой Raspberry Pi в полноценную метеостанцию ​​— вот как

    0
    0


    Крошечный и недорогой Raspberry Pi станет отличным дополнением к вашему компьютерному пространству, если вы хотите, чтобы универсальный SBC воплотил в жизнь множество впечатляющих проектов. Хотя Raspberry Pi сам по себе вполне способен, вы можете повысить его функциональность, подключив дополнительные модули — например, датчик, способный отображать значения температуры, давления воздуха и даже влажности.


    Хотя метеостанция на базе Raspberry Pi звучит как забавный проект, иногда она может сбивать с толку, особенно если вы новичок в великолепном мире SBC. Итак, мы создали пошаговое руководство, которое поможет вам с этой задачей!

    Связанный
    Обзор Raspberry Pi 5: Святой Грааль DIY-проектов стал еще лучше (и реже)

    Raspberry Pi 5 — один из самых мощных SBC потребительского уровня. К сожалению, его ограниченный ассортимент означает, что вам будет сложно его найти.

    Что вам понадобится

    Само собой разумеется, что Raspberry Pi станет сердцем проекта. Хотя вы можете использовать любую основную модель Raspberry Pi для метеостанции, владельцам некоторых плат RPi Zero необходимо будет припаять контакты GPIO к своим SBC, прежде чем они смогут подключить датчик погоды.

    Говоря о датчике, мы будем использовать доступный модуль BME280 от Waveshare, который поставляется с набором соединительных кабелей. Еще одним преимуществом комплекта BME280 от Waveshare является то, что в нем все контакты предварительно припаяны к плате датчика, поэтому вам не придется тратить целый день на подготовку датчика к бою с помощью паяльной станции.


    Наконец, вам потребуется карта microSD емкостью не менее 8 ГБ. Мы предполагаем, что вы уже установили на карту операционную систему на базе Debian. Для обучения я буду использовать ОС Raspberry Pi, и вы легко сможете ее прошить, следуя общей процедуре, описанной в нашем руководстве по установке Ubuntu.

    Подключение модуля BME280 к Raspberry Pi

    Прежде чем вы сможете начать заниматься программным аспектом проекта, вам необходимо физически подключить датчик BME280 к плате Raspberry Pi.

    1. Подсоедините соединительные кабели к датчику BME280.

    2. Откройте схему распиновки Raspberry Pi на своем ПК или смартфоне. Все основные платы RPi имеют одинаковое расположение контактов, поэтому вы можете использовать одну и ту же схему для справки независимо от вашей модели.

    Схема распиновки Raspberry Pi


    3. С помощью схемы распиновки аккуратно подключите каждую перемычку к соответствующему контакту GPIO на Raspberry Pi.

    Настройка контактов для подключения датчика Waveshare BME280 к Raspberry Pi 5

    Вот краткое описание соединений в моей установке: я соединил ВКК контакт модуля BME280 (красный кабель) к Мощность 5 В Разъем GPIO (контакт 4) на моем Raspberry Pi. Аналогично я прикрепил СКЛ/СКК контакт (желтый провод) к СКЛ/GPIO 3 (контакт 5), ПДД/МОСИ контакт (синий кабель) к СДА/GPIO 2 (контакт 3) и Земля контакт (черный провод) к Земля Контакт GPIO. Однако я оставил АДДР/МИСО (адрес) и CS (выбор микросхемы) контакты отключены, так как в этом проекте не было необходимости использовать их.

    4. Вставьте карту microSD с ОС Raspberry Pi в плату RPi перед ее включением.


    Включение шины I2C в ОС Raspberry Pi

    Затем вам нужно будет включить интерфейс I2C в операционной системе вашего Raspberry Pi, прежде чем вы сможете получить доступ к датчику BME280.

    1. Запустите Терминал приложение.

    Приложение терминала Raspberry Pi

    2. Откройте инструмент настройки Raspberry Pi с помощью команды raspi-config:

    sudo raspi-config

    Терминал в ОС Raspberry Pi, изображающий команду raspi-config

    3. Отправляйтесь в Опции интерфейса вкладка.

    Инструмент raspi-config в ОС Raspberry Pi, показывающий параметры интерфейса.


    4. Выберите настройку и нажмите ХОРОШО когда будет предложено включить интерфейс.

    Процедура включения I2C

    5. Прокрутите до Заканчивать кнопку и нажмите Входить для выхода из меню конфигурации.

    6. Выполните i2cdetect Команда, чтобы проверить, обнаружен ли датчик BME280 Raspberry Pi.

    i2cdetect -y 1

    Команда обнаружения I2C для датчика BME280

    Если терминал отображает 0x76 или 0x77 в таблице адресов, вы можете двигаться дальше. В противном случае вам придется переподсоединить разъемы и повторить попытку.


    Настройка метеостанции

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

    1. Если вы используете версию ОС Raspberry Pi Bookworm, ВНЕШНЕЕ УПРАВЛЕНИЕ может вызвать проблемы при попытке установить пакеты через пункт. Таким образом, вам следует выполнить эти команды, чтобы вставить разрыв-системы-пакеты переменная в pip.conf файл и установите для него значение истинный.

    grep -q '\[global\]' /etc/pip.conf 2> /dev/null || printf '%b' '[global]\n' | sudo tee -a /etc/pip.conf > /dev/null 
    
    

    sudo sed -i '/^\[global\]/a\break-system-packages=true' /etc/pip.conf

    Команда, используемая для редактирования файла pip.conf


    2. Установите пакет BME280, выполнив следующую команду:

    Команда для установки пакета BME280

    3. Перейдите на страницу выпуска WiringPi и загрузите последнюю версию репозитория.

    4. Внутри терминала используйте команду CD команда для перехода к Загрузки папка.

    cd Downloads

    Команда cd для перехода в папку «Загрузки»

    5. Выполните следующую команду для установки WiringPi:

    sudo apt install ./wiringpi_version

    Команда для установки WiringPi


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

    1. Прокрутите вниз до раздела «Код» на веб-сайте Waveshare и загрузите Демо-коди извлеките его в удобное для вас место.

    Процедура извлечения файлов BME280

    2. Использовать CD команда, за которой следует каталог извлеченной папки.

    cd /home/user/BME280_directory_location

    Команда cd для переключения в каталог BME280


    3. Открой main.c файл с помощью Нано редактор и убедитесь, что значение после ADDR_SEC читает 0x77.

    Процедура установки правильного значения ADDR_SEC

    Если терминал отображал 76, когда вы ранее запускали команду i2cdetect, обязательно замените 0x77 на 0x76.

    4. Когда вы закончите, нажмите Ctrl+X чтобы вернуться к терминалу.

    5. Скомпилируйте main.c скрипт, выполнив следующие команды:

    sudo make clean 
    
    

    sudo make

    Команды sudo make и sudo make clean, выделенные в терминале

    6. Наконец, запустите следующую команду, чтобы выполнить сценарий мониторинга погоды, который вы скомпилировали на последнем шаге.

    sudo ./bme280


    Скрипт BME280 в терминале ОС Raspberry Pi

    Ведение погода следите за параметрами окружающей среды с помощью Raspberry Pi

    Терминал Raspberry Pi, отображающий значения температуры, давления и влажности, генерируемые датчиком BME280.

    Если вы все сделали правильно, скрипт bme280 должен работать без проблем, и вы сможете просматривать показания температуры, давления и влажности внутри терминала. По умолчанию скрипт будет отображать новые значения каждую секунду, но вы можете изменить файл main.c, чтобы изменить частоту обновлений.

    Но если вы не можете научиться настраивать метеостанцию, лучше начать с простого проекта и вернуться к этой статье, как только вы освоитесь с Raspberry Pi. Я рекомендую ознакомиться с нашими руководствами по созданию брандмауэра на базе Raspberry Pi и FM-радио, поскольку они помогут вам ознакомиться со всеми тонкостями SBC.


    Связанный
    10 простых проектов Raspberry Pi для начинающих

    Вам не нужно быть мастером DIY, чтобы создавать эти проекты с помощью Raspberry Pi.

    Предыдущая статья5 лучших альтернатив Microsoft Loop
    Следующая статьяЛучший блок питания для игр 2024 года
    Петр Григорин
    Интересуется софтом, разработкой и использование новых приложений, технология искусственного интеллекта. Этот писатель - человек с техническими знаниями, который увлечен разработкой программного обеспечения и использованием новых приложений. Его особенно интересуют технологии искусственного интеллекта и то, как они могут быть использованы для улучшения различных отраслей промышленности и повседневной жизни. Обладая прочной основой в области информатики и острым взглядом на инновации, этот писатель обязательно привнесет ценные идеи и соображения в любую дискуссию на эти темы. Пишет ли он о последних открытиях в области ИИ или исследует потенциал новых программных инструментов, его работа обязательно будет увлекательной и заставляющей задуматься.