8.1 Echtzeit-Wetter von @OpenWeatherMap¶
Das IoT Open Weather Display-Projekt nutzt das ESP32-Board und ein I2C LCD1602-Modul, um eine Wetterinformationsanzeige zu erstellen, die Daten von der OpenWeatherMap-API abruft.
Dieses Projekt dient als hervorragende Einführung in die Arbeit mit APIs, Wi-Fi-Konnektivität und Datenanzeige auf einem LCD-Modul mit dem ESP32-Board. Mit dem IoT Open Weather Display können Sie bequem Echtzeit-Wetteraktualisierungen auf einen Blick abrufen, was es zu einer idealen Lösung für Heim- oder Büroumgebungen macht.
Benötigte Komponenten
Für dieses Projekt benötigen wir folgende Komponenten.
Es ist definitiv praktisch, ein komplettes Set zu kaufen. Hier ist der Link:
Name |
ARTIKEL IN DIESEM KIT |
LINK |
---|---|---|
ESP32 Starter Kit |
320+ |
Sie können sie auch einzeln über die untenstehenden Links kaufen.
KOMPONENTENVORSTELLUNG |
KAUF-LINK |
---|---|
- |
|
OpenWeather API-Schlüssel abrufen
OpenWeather ist ein Online-Dienst von OpenWeather Ltd, der weltweite Wetterdaten über eine API bereitstellt, einschließlich aktueller Wetterdaten, Prognosen, Nowcasts und historischer Wetterdaten für jeden geografischen Standort.
Besuchen Sie OpenWeather, um sich anzumelden/ein Konto zu erstellen.
Klicken Sie in der Navigationsleiste auf die API-Seite.
Finden Sie Current Weather Data und klicken Sie auf Abonnieren.
Abonnieren Sie unter Current weather and forecasts collection den entsprechenden Dienst. In unserem Projekt ist Free ausreichend.
Kopieren Sie den Schlüssel von der Seite API keys.
Vollenden Sie Ihr Gerät
Bauen Sie den Schaltkreis.
Öffnen Sie den Code.
Öffnen Sie die Datei
iot_1_open_weather.ino
, die sich im Verzeichnisesp32-starter-kit-main\c\codes\iot_1_open_weather
befindet, oder kopieren Sie den Code in die Arduino IDE.Nachdem Sie das Board (ESP32 Dev Module) und den passenden Port ausgewählt haben, klicken Sie auf den Upload-Knopf.
Hier werden die Bibliotheken
LiquidCrystal I2C
undArduino_JSON
verwendet, die Sie über den Library Manager installieren können.
Suchen Sie die folgenden Zeilen und ändern Sie sie mit Ihrem
<SSID>
und<PASSWORD>
.// Replace the next variables with your SSID/Password combination const char* ssid = "<SSID>"; const char* password = "<PASSWORD>";
Fügen Sie die zuvor kopierten API-Schlüssel in
openWeatherMapApiKey
ein.// Your Domain name with URL path or IP address with path String openWeatherMapApiKey = "<openWeatherMapApiKey>";
Ersetzen Sie sie mit Ihrem Ländercode und Ihrer Stadt.
// Replace with your country code and city // Fine the country code by https://openweathermap.org/find String city = "<CITY>"; String countryCode = "<COUNTRY CODE>";
Nachdem der Code ausgeführt wird, sehen Sie die Uhrzeit und Wetterinformationen Ihres Standorts auf dem I2C LCD1602.
Bemerkung
Wenn der Code läuft und der Bildschirm leer ist, können Sie das Potentiometer auf der Rückseite des Moduls drehen, um den Kontrast zu erhöhen.