Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Всем здравствуйте. В этом руководстве я расскажу вам, как создать персонализированную мини-метеостанцию. Кроме того, мы будем использовать ThingSpeak API для загрузки наших данных о погоде на их серверы, иначе какова цель метеостанции, если мы даже не можем отслеживать наши данные о погоде. Вы можете создать его для своих школьных / университетских проектов или для своих личных интересов, это полностью зависит от вас. Итак, начнем.
Прежде всего, нам нужно подготовить следующие предметы, прежде чем мы начнем строить нашу мини-метеостанцию. Для ссылок на булавки вы можете проверить изображения в этом разделе инструкции.
Запасы
Arduino Uno R3
Модуль Wi-Fi ESP8266
BMP180 Датчик атмосферного давления
Датчик дождя FC37
Датчик температуры и влажности DHT22
Перемычки и блок питания
Аккаунт ThingSpeak
IDE Arduino
Шаг 1. Создание и настройка учетной записи ThingSpeak
1. Для создания учетной записи ThingSpeak перейдите по этой ссылке.
2. Если у вас уже есть учетная запись, войдите в систему, в противном случае создайте новую учетную запись.
3. После того, как вы окажетесь на панели управления, нажмите «Новый канал», чтобы создать новый канал.
4. Введите название канала по вашему выбору в поле «Имя».
5. Отметьте первые четыре поля и назовите их «Температура», «Влажность», «Барометрическое давление» и «Дождь» соответственно. Остальные поля оставьте пустыми, так как они нам не нужны для этого проекта. Нажмите кнопку «Сохранить» внизу.
6. Теперь вы попадете на экран канала. Перейдите на вкладку «Ключи API».
7. Вы увидите «Запись ключа API» и «Чтение ключа API». Для этого проекта нас интересует ключ Write API. Запишите этот ключ, так как он нам понадобится позже.
(Для справки см. Изображения этого раздела, пронумерованные от 1 до 3)
Шаг 2: Подключения
Это очень важный и ответственный шаг. Выполняйте подключения осторожно, поскольку датчики чувствительны к источникам питания. Если подается избыточное напряжение, датчики могут необратимо повредиться. Для удобства ознакомьтесь с изображением этого раздела. Он содержит все связи.
BMP180 ---- Arduino Uno R3 SDA PIN - A4
ПИН-код SCL - A5
GND - GND
3V0 - 3,3 В
DHT22 ----------- Arduino Uno R3
1-й контакт (VCC) ---------- Источник питания 5 В
2-й ПИН (ДАННЫЕ) -------- D4
3-й ПИН (NC) --------- НЕ ИСПОЛЬЗУЕТСЯ
4-й контакт (GND) --------- GND
Подключения датчика дождя (датчик дождя поставляется с сенсорной панелью)
I) Датчик дождя ----------- Arduino UNO R3:
VCC ----------- Вывод питания 5 В
A0 ----------- A1
D0 ----------- D7
GND ----------- GND
II) Датчик дождя -------------- Панель датчиков
+ ve терминал ------------- +
-ve терминал ------------- -
ESP8266 ------------------ Arduino Uno R3
RX ------------------ D3
TX ------------------- D2
VCC и CH_EN ------------------- 3,3 В
GND ------------------- GND
Примечания: * 3-й контакт DHT не используется.
* Перекрестно проверьте соединение контактов питания и заземления каждого датчика с платой Arduino.
* Ваш BMP180 может иметь или не иметь 5 контактов. Это потому, что он имеет один вывод для питания +5 В, а другой - для + 3,3 В. Если у вас только один, просто подключите контакт питания к + 3,3 В.
Шаг 3. Код и заключительные шаги
1. На первом этапе вы записали ключ API записи от ThingSpeak. Назначьте этот ключ в качестве значения моей переменной API в коде.
2. Введите ваш WiFi SSID (имя вашего Wi-Fi-соединения) и пароль в переменные mySSID и myPWD в коде.
3. Нажмите кнопку «Проверить», чтобы убедиться, что код работает правильно.
4. Загрузите код. Кроме того, я предлагаю удалить контакты, которые обеспечивают питание датчиков (3,3 В и 5 В), перед загрузкой кода и повторно подключить их после успешной загрузки на плату Arduino.
* Примечание: перед компиляцией кода вам может потребоваться загрузить и установить библиотеки, которые я использовал. Загрузите их по следующим ссылкам
Библиотека DHT
Библиотека BMP180
После загрузки установите их, выбрав Sketch -> Include Library -> Add. Zip Library… в вашей Arduino IDE.
* Вы также можете искать включенные библиотеки в Google.
Шаг 4: видео
Особое примечание: я построил этот проект год назад. Когда я записал это видео в день публикации этой инструкции, я обнаружил, что мой датчик BMP сломался. Поэтому мне пришлось закомментировать код BMP и удалить поле давления из ThingSpeak. Но код BMP должен работать нормально, если у вас есть работающий датчик BMP, в отличие от меня. Плюс, я проверил месяц назад, и все работает нормально. Спасибо.