
Оглавление:
- Шаг 1. Соберите материалы
- Шаг 2: Подключите все компоненты
- Шаг 3: Настройте Raspberry Pi
- Шаг 4: Установите SPI и I2C
- Шаг 5: установите MySQL
- Шаг 6: Запуск сценария базы данных
- Шаг 7. Установка коннектора MySQL для Python3
- Шаг 8: установите Flask
- Шаг 9: скопируйте веб-сервер на свой Raspberry Pi
- Шаг 10: отредактируйте класс базы данных
- Шаг 11: Тестирование
- Шаг 12: Веб-сайт
- Шаг 13: поместите все в корпус
- Шаг 14: ваша метеостанция работает
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:05




Всем привет, Это моя самая первая инструкция! В этом уроке я расскажу вам, как создать метеостанцию Raspberry Pi с собственной базой данных и веб-сайтом. Я сделал эту метеостанцию в контексте школьного задания, я черпал вдохновение в Instructables. Метеостанция может измерять температуру, влажность, атмосферное давление, скорость ветра и уровень освещенности в процентах. Все образцы, собранные Raspberry Pi, будут храниться на сервере MySQL на самом Pi и отображаться на веб-сервере!
Шаг 1. Соберите материалы
Материалы этой станции очень простые. Вам потребуются все необходимые материалы, датчик и корпус.
Материалы
Raspberry Pi
Тип не имеет большого значения, вы даже можете использовать Raspberry Pi Zero W, но не используйте первую ревизию, потому что вам потребуется сетевое подключение для веб-сервера. В этом руководстве я буду использовать Raspberry Pi 3.
www.amazon.com/Raspberry-Model-A1-2GHz-64-…
Некоторые соединительные кабели
Вам понадобятся кабели для подключения всех датчиков и микросхем к Raspberry Pi. Существует три типа соединительных кабелей: от мужчины к женщине, от мужчины к мужчине и от женщины к женщине. Вам понадобится около 15 человек от мужчины к женщине и от мужчины к мужчине. В любом случае не повредит получить всех троих.
www.amazon.com/Elegoo-120pcs-Multicolored-…
Макетная плата
Делать электронику без макета громоздко. Если вы планируете делать больше электроники своими руками, это всегда вам пригодится.
www.amazon.com/dp/B072FC35GT/ref=sxr_pa_cl…
Датчики
Температура и влажность: Grove Temp & Hum v1.0
www.seeedstudio.com/Grove-Temperature%26Hu..
Атмосферное давление: Grove - датчик барометра BMP280 (этот датчик также измеряет температуру)
www.seeedstudio.com/Grove-Barometer-Sensor…
Скорость ветра: Модуль инфракрасного датчика (FC-03) LM393
www.amazon.com/LM393-Measuring-Sensor-Phot…
Освещение: датчик освещенности Grove (примечание: это аналоговый датчик, аналого-цифровой преобразователь, такой как MCP3008, обязательно)
www.seeedstudio.com/Grove-Light-Sensor-v1….
Корпус
Жилье - очень важная часть вашего проекта. Здесь вы разместите всю свою электронику и датчики. Жилье не обязательно должно быть красивым, но оно может быть красивым. В этом руководстве я сделаю скворечник с отсеком внизу, где я могу хранить свой Raspberry Pi.
Вы всегда можете выбрать менее трудоемкий корпус, например, белый ящик для электроники. Единственное условие - должны быть вентиляционные отверстия, чтобы ветер и воздух могли проходить мимо датчиков, иначе вы не получите точных образцов.
Шаг 2: Подключите все компоненты



Когда у вас будут все компоненты, вы можете начать с тестовой настройки. Здесь вы подключаете всю свою электронику к Raspberry Pi. Вы можете найти схему Fritzing в файлах. Когда все подключения будут выполнены, вы можете начать с настройки Raspberry Pi.
Шаг 3: Настройте Raspberry Pi

Если вы впервые работаете с Raspberry Pi, я настоятельно рекомендую вам посетить веб-сайт raspberrypi.org, на нем есть отличная документация и руководства для начинающих.
www.raspberrypi.org
Убедитесь, что у вас установлена последняя версия Debian. Вы можете выполнить обновление, набрав в терминале Raspberry Pi или в сеансе SSH:
sudo apt-get update && sudo apt-get upgrade
Шаг 4: Установите SPI и I2C


После того, как вы полностью обновитесь, нам придется отредактировать некоторые конфигурации на нашем Raspberry Pi. Все различные датчики, кроме датчика освещенности и инфракрасного датчика скорости, используют протокол I2C. Если вы хотите использовать этот протокол вместе с интерфейсом SPI, вам необходимо включить его в настройках Raspberry Pi. Вы можете настроить интерфейс SPI и I2C, следуя этим командам.
sudo raspi-config
Включите как SPI, так и I2C. Затем перезагрузитесь, используя:
перезагрузка sudo
После перезагрузки мы собираемся проверить, есть ли «dtparam = spi = on» и «dtsparam = i2C_arm = on» внутри файла / boot / config. Когда вы найдете эти строки, вам нужно будет их раскомментировать.
судо нано /boot/config.txt
Выйдите из редактора с помощью ctrl + x и сохраните.
Теперь мы собираемся установить различные библиотеки для управления датчиками.
sudo apt-get install python3-spidev
sudo apt-get install python-smbus sudo apt-get install i2c-tools
Шаг 5: установите MySQL



После того, как вы настроили основы Raspberry Pi, такие как подключение к Интернету и обновление программного обеспечения. Мы можем начать настройку нашей системы базы данных, в которой мы будем хранить все наши данные о погоде. Мы будем использовать MySQL. Это простая в использовании система баз данных, в которой мы можем соединять несколько таблиц друг с другом с помощью отношений. Чтобы установить MySQL, введите в терминал:
sudo apt-get установить mysql-server
sudo apt-get установить mysql-client
Во время установки вам будет предложено ввести пароль для пользователя root. Этот пароль понадобится вам позже. После установки этих пакетов вы можете проверить статус вашего сервера MySQL, набрав:
mysql -uroot -p
положение дел
Шаг 6: Запуск сценария базы данных


Как только сервер MySQL заработает, мы можем запустить сценарий базы данных. Этот скрипт создаст модель с разными таблицами в ней. Здесь мы будем хранить все данные, снятые датчиком, и все различные настройки, которые использует веб-сайт.
Чтобы запустить сценарий MySQL с Pi, нам сначала нужно скопировать сценарий на Raspberry Pi. FileZilla - отличный способ копировать файлы между вашим ПК и вашим Pi. Вот отличное руководство, как это сделать.
www.raspberrypi.org/documentation/remote-a…
Как только скрипт будет на вашем Pi, вы можете запустить его, набрав в терминале:
mysql -uroot -p
источник /path/to/script.sql
Шаг 7. Установка коннектора MySQL для Python3

Мы хотим подключить нашу базу данных к веб-серверу, работающему на Python3. Чтобы установить этот соединитель, выполните эту команду.
sudo apt-get install python3-mysql.connector
Шаг 8: установите Flask

Веб-сервер использует Flask. Этот микрофреймворк легко настраивается и прост в использовании. Идеально подходит для нашей метеостанции. Чтобы установить Flask, введите эту команду в окне терминала.
sudo apt-get установить python3-flask
Шаг 9: скопируйте веб-сервер на свой Raspberry Pi

Теперь все пакеты установлены и все настроено. Теперь мы можем скопировать код с GitHub. Есть два способа получить код на Raspberry Pi: вы можете либо загрузить главный zip-файл и скопировать его на свой Pi с помощью FileZilla, либо вы можете клонировать репозиторий прямо на Raspberry Pi. Чтобы клонировать репозиторий, вы вводите эти команды на своем Pi.
cd / путь / вам / нравится /
git clone
Теперь у вас должен быть новый каталог под названием WeatherStation. Вы можете проверить это с помощью следующей инструкции:
ls
Шаг 10: отредактируйте класс базы данных


Теперь весь код находится на вашем Raspberry Pi. Прежде чем мы сможем протестировать, нам нужно настроить MySQL-коннектор. Настройки коннектора хранятся во вновь созданном каталоге. Чтобы перейти к файлу, нам нужно изменить наш текущий каталог. После того, как мы нашли файл, мы вставим в него наш корневой пароль нашего сервера MySQL. Вы можете сделать это, следуя этим командам.
компакт-диск WeatherStation / Flask / Database /
нано pswd.py
Теперь вы можете редактировать файл. Замените your_password своим корневым паролем MySQL. Теперь мы готовы протестировать код.
Шаг 11: Тестирование

Теперь, когда все, наконец, установлено и подключено, мы можем начать тестирование. Перейдите в каталог Flask и введите команду:
python3 Flask.py
Все должно запуститься. Теперь вы можете перейти на свой веб-сайт, набрав в адресной строке: http: IP_RASPBERRY: 5000 /.
Шаг 12: Веб-сайт

При первом открытии сайта вы увидите экран входа в систему. Вы можете войти на сайт, если используете в качестве имени пользователя «Lander» и пароль «Test12». Веб-сайт написан на голландском языке, вы можете перевести веб-сайт, если у вас есть какие-либо знания в области веб-разработки.
Шаг 13: поместите все в корпус




Возьмите корпус и расположите электронику равномерно. Я буду использовать свой недавно сделанный скворечник, дизайн я включил ниже. Это простая коробка с ложным дном для хранения Raspberry Pi.
Примечание: для правильной работы датчика влажности всегда должен быть поток воздуха. Как только вы будете удовлетворены результатом, вы можете закрыть все, и метеостанция готова. Теперь вы можете разместить его где угодно и собирать данные о погоде.
Шаг 14: ваша метеостанция работает



Поздравляем, ваш Raspberry Pi теперь полностью работоспособен. Разместите его где-нибудь под открытым небом и соберите данные!
Рекомендуемые:
Arduino-Teensy4 для Teensy 4.0 - Полная сборка: 10 шагов

Arduino-Teensy4 для Teensy 4.0 - Полная сборка: это руководство проведет вас через сборку платы расширения Arduino-Teensy4 для Teensy 4.0. Вы можете приобрести ее в моем магазине Tindie здесь: https: //www.tindie.com/products/ cburgess129 / arduin … Вы можете заказать Teensy 4 вместе со своим
Метеостанция NaTaLia: метеостанция на солнечной энергии Arduino сделала правильный выбор: 8 шагов (с изображениями)

Метеостанция NaTaLia: метеостанция на солнечной энергии Arduino сделала правильный выбор: после 1 года успешной работы в 2 разных местах я делюсь своими планами по проекту метеостанции на солнечной энергии и объясняю, как она превратилась в систему, которая действительно может выжить в течение длительного времени. периоды от солнечной энергии. Если вы последуете
Полная метеостанция DIY Raspberry Pi с программным обеспечением: 7 шагов (с изображениями)

Полная версия метеостанции DIY Raspberry Pi с программным обеспечением: еще в конце февраля я увидел этот пост на сайте Raspberry Pi. http://www.raspberrypi.org/school-weather-station-… Они создали метеостанции Raspberry Pi для школ. Я очень хотел одну! Но в то время (и я думаю, что на момент написания
CAR-INO: полная переделка старого радиоуправляемого автомобиля с помощью Arduino и Bluetooth: 5 шагов (с изображениями)

CAR-INO: Полная переделка старого радиоуправляемого автомобиля с помощью Arduino и управления Bluetooth: Введение Привет, в моих первых инструкциях я хотел бы поделиться с вами своим опытом преобразования старого радиоуправляемого автомобиля 1990 года в нечто новое. Было Рождество 1990 года, когда Санта подарил мне этот Ferrari F40, самую быструю машину в мире! … в то время.T
Полная автомобильная противоугонная система GPS + GPRS на базе Arduino: 5 шагов (с изображениями)

Полная автомобильная противоугонная система GPS + GPRS на базе Arduino: Привет всем! Я хотел создать полное решение для автомобильного противоугонного устройства GPS, которое было бы: как можно дешевле, настолько полно, насколько это возможно -такого-больше-нечего-то делать, так что я закончил тем, что создал решение на основе Arduino