Arduino & IoT Academy · Lektion

Fehlgeschlagene Messungen behandeln

Erkennen Sie NaN und versuchen Sie es erneut, ohne dass das Programm abstürzt.

Lektion 4 von 413 Schritte

Fehlgeschlagene Messungen behandeln ist eine kostenlose Arduino & IoT Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Arduino & IoT Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Arduino & IoT Academy-Kurs umfasst insgesamt 4 Lektionen.

Messungen können fehlschlagen

Selbst ein guter Sensor liefert manchmal keinen brauchbaren Wert. Lose Kabel, zu häufiges Abfragen oder Störungen können zu einem failed read führen. Planen Sie diesen Fall daher ein. ⚠️

NaN kennenlernen

Wenn eine Messung fehlschlägt, gibt die Bibliothek NaN zurück. Das bedeutet „Not a Number“ und ist die Art des Sensors zu sagen: Es konnte kein Wert ermittelt werden.

Warum NaN schwierig ist

Ein NaN ist niemals gleich irgendetwas, nicht einmal sich selbst. Sie können es daher nicht einfach mit einer normalen Zahl vergleichen, um den Fehler zu erkennen.

Mit isnan erkennen

Verwenden Sie die integrierte Funktion isnan(), um einen Messwert zu prüfen. Sie gibt true zurück, wenn der Wert das fehlerhafte NaN-Ergebnis ist.

if (isnan(t)) {
}

Vor der Verwendung prüfen

Prüfen Sie einen Messwert immer bevor Sie ihn ausgeben oder damit arbeiten. Wenn Sie diese Prüfung überspringen, können fehlerhafte Daten unbemerkt in Ihre Logik gelangen.

Beide Werte prüfen

Prüfen Sie temperature und humidity gemeinsam, da jeder der beiden Werte fehlschlagen kann. Wenn einer davon NaN ist, behandeln Sie den gesamten Messwert als fehlerhaft und überspringen ihn.

if (isnan(t) || isnan(h)) {
  return;
}

Eine Warnung ausgeben

Wenn ein Messvorgang fehlschlägt, geben Sie statt eines Werts eine klare message aus. Ihr zukünftiges Ich wird Ihnen für diesen hilfreichen Hinweis dankbar sein.

Serial.println("Failed to read DHT!");

Erneut versuchen, nicht abstürzen

Ein einzelner Fehler ist normal, daher sollten Sie das Programm nicht anhalten. Versuchen Sie es einfach im nächsten Schleifendurchlauf erneut – meistens gelingt der Messvorgang dann.

Den letzten gültigen Wert behalten

Für eine gleichmäßige Anzeige speichern Sie den last good reading und verwenden ihn erneut, wenn ein Messvorgang fehlschlägt. So zeigt Ihr Bildschirm niemals eine unschöne leere Fläche.

Fehler durch Verlangsamen beheben

Wenn sich die Fehler häufen, lesen Sie möglicherweise zu schnell oder Ihre Verkabelung ist locker. Eine längere delay und eine feste Verbindung beheben das Problem oft.

Von Anfang an robust

Fehler elegant zu behandeln, unterscheidet ein Spielzeug von einem echten device. Ihr Sensor übersteht gelegentliche kurze Aussetzer nun gelassen.

Schnelltest

Ein DHT-Messvorgang schlägt fehl. Wie sollte Ihr Sketch das im Code erkennen?

Zusammenfassung

Sie haben gelernt, dass fehlgeschlagene Messungen NaN zurückgeben, sie mit isnan erkennen, statt eines Absturzes eine Warnung ausgeben und Ihr Gerät stabil halten. 🎉

Kostenlos starten

Lerne C++ mit einem KI-Tutor — kostenlos

Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.

Kurse
30
Lektionen
120

Häufig gestellte Fragen

Ist die Lektion „Fehlgeschlagene Messungen behandeln“ kostenlos?

Ja — der vollständige Text von „Fehlgeschlagene Messungen behandeln“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Arduino & IoT Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Arduino & IoT Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Fehlgeschlagene Messungen behandeln“?

Erkennen Sie NaN und versuchen Sie es erneut, ohne dass das Programm abstürzt. Du übst Arduino & IoT Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Arduino & IoT Academy zu starten?

Keine Vorkenntnisse erforderlich. Arduino & IoT Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Fehlgeschlagene Messungen behandeln“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Arduino & IoT Academy-Lektion Code schreiben und ausführen?

Ja. Jede Arduino & IoT Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. DHT11/DHT22 anschließen
  2. Die DHT-Bibliothek installieren
  3. Temperatur und Luftfeuchtigkeit auslesen
  4. Fehlgeschlagene Messungen behandeln
← Zurück zu Arduino & IoT Academy