You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/de/2-farm/lessons/2-detect-soil-moisture/virtual-device-soil-moistur...

6.1 KiB

Bodenfeuchtigkeit messen - Virtuelle IoT-Hardware

In diesem Teil der Lektion fügen Sie Ihrem virtuellen IoT-Gerät einen kapazitiven Bodenfeuchtigkeitssensor hinzu und lesen Werte von diesem aus.

Virtuelle Hardware

Das virtuelle IoT-Gerät verwendet einen simulierten Grove kapazitiven Bodenfeuchtigkeitssensor. Dies hält diese Übung identisch mit der Verwendung eines Raspberry Pi mit einem physischen Grove kapazitiven Bodenfeuchtigkeitssensor.

In einem physischen IoT-Gerät wäre der Bodenfeuchtigkeitssensor ein kapazitiver Sensor, der die Bodenfeuchtigkeit misst, indem er die Kapazität des Bodens erkennt eine Eigenschaft, die sich mit der Bodenfeuchtigkeit ändert. Mit zunehmender Bodenfeuchtigkeit sinkt die Spannung.

Dies ist ein analoger Sensor, der einen simulierten 10-Bit-ADC verwendet, um einen Wert zwischen 1 und 1.023 zu melden.

Den Bodenfeuchtigkeitssensor zu CounterFit hinzufügen

Um einen virtuellen Bodenfeuchtigkeitssensor zu verwenden, müssen Sie ihn zur CounterFit-App hinzufügen.

Aufgabe - Den Bodenfeuchtigkeitssensor zu CounterFit hinzufügen

Fügen Sie den Bodenfeuchtigkeitssensor zur CounterFit-App hinzu.

  1. Erstellen Sie eine neue Python-App auf Ihrem Computer in einem Ordner namens soil-moisture-sensor mit einer einzigen Datei namens app.py und einer Python-virtuellen Umgebung, und fügen Sie die CounterFit-Pip-Pakete hinzu.

    ⚠️ Sie können die Anweisungen zum Erstellen und Einrichten eines CounterFit-Python-Projekts in Lektion 1 bei Bedarf nachlesen.

  2. Stellen Sie sicher, dass die CounterFit-Web-App läuft.

  3. Erstellen Sie einen Bodenfeuchtigkeitssensor:

    1. Wählen Sie im Feld Create sensor im Bereich Sensors im Dropdown-Menü Sensor type die Option Soil Moisture aus.

    2. Lassen Sie die Units auf NoUnits eingestellt.

    3. Stellen Sie sicher, dass der Pin auf 0 gesetzt ist.

    4. Wählen Sie die Schaltfläche Add, um den Soil Moisture-Sensor auf Pin 0 zu erstellen.

    Die Einstellungen des Bodenfeuchtigkeitssensors

    Der Bodenfeuchtigkeitssensor wird erstellt und erscheint in der Sensorliste.

    Der erstellte Bodenfeuchtigkeitssensor

Das Bodenfeuchtigkeitssensor-Programm schreiben

Das Programm für den Bodenfeuchtigkeitssensor kann nun mit den CounterFit-Sensoren geschrieben werden.

Aufgabe - Das Bodenfeuchtigkeitssensor-Programm schreiben

Schreiben Sie das Programm für den Bodenfeuchtigkeitssensor.

  1. Stellen Sie sicher, dass die soil-moisture-sensor-App in VS Code geöffnet ist.

  2. Öffnen Sie die Datei app.py.

  3. Fügen Sie den folgenden Code am Anfang von app.py hinzu, um die App mit CounterFit zu verbinden:

    from counterfit_connection import CounterFitConnection
    CounterFitConnection.init('127.0.0.1', 5000)
    
  4. Fügen Sie den folgenden Code in die Datei app.py ein, um einige erforderliche Bibliotheken zu importieren:

    import time
    from counterfit_shims_grove.adc import ADC
    

    Die Anweisung import time importiert das time-Modul, das später in dieser Aufgabe verwendet wird.

    Die Anweisung from counterfit_shims_grove.adc import ADC importiert die ADC-Klasse, um mit einem virtuellen Analog-Digital-Wandler zu interagieren, der mit einem CounterFit-Sensor verbunden werden kann.

  5. Fügen Sie den folgenden Code darunter ein, um eine Instanz der ADC-Klasse zu erstellen:

    adc = ADC()
    
  6. Fügen Sie eine Endlosschleife hinzu, die von diesem ADC auf Pin 0 liest und das Ergebnis in die Konsole schreibt. Diese Schleife kann dann 10 Sekunden zwischen den Lesevorgängen pausieren.

    while True:
        soil_moisture = adc.read(0)
        print("Soil moisture:", soil_moisture)
    
        time.sleep(10)
    
  7. Ändern Sie in der CounterFit-App den Wert des Bodenfeuchtigkeitssensors, der von der App gelesen wird. Sie können dies auf zwei Arten tun:

    • Geben Sie eine Zahl in das Feld Value des Bodenfeuchtigkeitssensors ein und klicken Sie auf die Schaltfläche Set. Die eingegebene Zahl wird der vom Sensor zurückgegebene Wert sein.

    • Aktivieren Sie das Kontrollkästchen Random und geben Sie einen Min- und Max-Wert ein, und klicken Sie dann auf die Schaltfläche Set. Jedes Mal, wenn der Sensor einen Wert liest, wird eine Zufallszahl zwischen Min und Max gelesen.

  8. Führen Sie die Python-App aus. Sie werden die Bodenfeuchtigkeitsmessungen in der Konsole sehen. Ändern Sie den Value- oder die Random-Einstellungen, um die Werte zu ändern.

    (.venv) ➜ soil-moisture-sensor $ python app.py 
    Soil moisture: 615
    Soil moisture: 612
    Soil moisture: 498
    Soil moisture: 493
    Soil moisture: 490
    Soil Moisture: 388
    

💁 Sie finden diesen Code im Ordner code/virtual-device.

😀 Ihr Bodenfeuchtigkeitssensor-Programm war ein Erfolg!

Haftungsausschluss:
Dieses Dokument wurde mit dem KI-Übersetzungsdienst Co-op Translator übersetzt. Obwohl wir uns um Genauigkeit bemühen, beachten Sie bitte, dass automatisierte Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner ursprünglichen Sprache sollte als maßgebliche Quelle betrachtet werden. Für kritische Informationen wird eine professionelle menschliche Übersetzung empfohlen. Wir übernehmen keine Haftung für Missverständnisse oder Fehlinterpretationen, die sich aus der Nutzung dieser Übersetzung ergeben.