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/2-farm/lessons/2-detect-soil-moisture/translations/virtual-device-soil-moistur...

5.0 KiB

Mesurer l'humidité du sol - Matériel IoT Virtuel

Dans cette partie de la leçon, vous allez ajouter un capteur capacitif d'humidité du sol à votre dispositif IoT virtuel, et lire des valeurs à partir de celui-ci.

Matériel virtuel

Le dispositif IoT virtuel utilisera un capteur d'humidité du sol capacitif Grove simulé. Ainsi, ce laboratoire est identique à l'utilisation d'un Raspberry Pi avec un capteur d'humidité du sol capacitif Grove physique.

Dans un dispositif IoT physique, le capteur d'humidité du sol serait un capteur capacitif qui mesure l'humidité du sol en détectant la capacité du sol, une propriété qui change en fonction de l'humidité du sol. Lorsque l'humidité du sol augmente, la tension diminue.

Il s'agit d'un capteur analogique, qui utilise donc un ADC 10 bits simulé pour rapporter une valeur de 1 à 1023.

Ajouter le capteur d'humidité du sol à CounterFit

Pour utiliser un capteur d'humidité du sol virtuel, vous devez l'ajouter à l'application CounterFit.

Tâche - Ajout du capteur d'humidité du sol à CounterFit

Ajoutez le capteur d'humidité du sol à l'application CounterFit.

  1. Créez une nouvelle application Python sur votre ordinateur dans un dossier appelé soil-moisture-sensor avec un seul fichier appelé app.py et un environnement virtuel Python, et ajoutez les paquets pip de CounterFit.

    ⚠️ Vous pouvez vous référer aux instructions pour créer et configurer un projet Python CounterFit dans la leçon 1 si nécessaire.

  2. Assurez-vous que l'application web CounterFit est en cours d'exécution.

  3. Créez un capteur d'humidité du sol :

    1. Dans la case Create sensor du volet Sensors, déroulez la case Sensor type et sélectionnez Soil Moisture.

    2. Laissez le paramètre Units sur NoUnits.

    3. Assurez-vous que le paramètre Pin est réglée sur 0.

    4. Sélectionnez le bouton Add pour créer le capteur d'humidité sur la broche 0.

    The soil moisture sensor settings

    Le capteur d'humidité du sol sera créé et apparaîtra dans la liste des capteurs.

    Le capteur d'humidité du sol a créé

Programmez l'application du capteur d'humidité du sol

L'application du capteur d'humidité du sol peut maintenant être programmée en utilisant les capteurs CounterFit.

Tâche - programmer l'application du capteur d'humidité du sol

Programmez l'application du capteur d'humidité du sol.

  1. Assurez-vous que l'application "Soil-Moisture-Sensor" est ouverte dans VS Code.

  2. Ouvrez le fichier app.py.

  3. Ajoutez le code suivant au début de app.py pour connecter l'application à CounterFit :

    from counterfit_connection import CounterFitConnection
    CounterFitConnection.init('127.0.0.1', 5000)
    
  4. Ajoutez le code suivant au fichier app.py pour importer certaines bibliothèques requises :

    import time
    from counterfit_shims_grove.adc import ADC
    

    L'instruction import time importe le module time qui sera utilisé plus tard dans ce devoir.

    L'instruction from counterfit_shims_grove.adc import ADC importe la classe ADC pour interagir avec un convertisseur analogique-numérique virtuel qui peut se connecter à un capteur CounterFit.

  5. Ajoutez le code suivant en dessous pour créer une instance de la classe ADC :

    adc = ADC()
    
  6. Ajoutez une boucle infinie qui lit à partir de cet ADC sur la broche 0 et écrit le résultat sur la console. Cette boucle peut ensuite dormir pendant 10 secondes entre les lectures.

    while True:
        soil_moisture = adc.read(0)
        print("Soil moisture:", soil_moisture)
    
        time.sleep(10)
    
  7. Depuis l'application CounterFit, modifiez la valeur de la sonde d'humidité du sol qui sera lue par l'application. Vous pouvez le faire de deux façons :

    • Saisissez un nombre dans la case Value pour le capteur d'humidité du sol, puis sélectionnez le bouton Set. Le nombre que vous saisissez sera la valeur renvoyée par le capteur.

    • Cochez la case Random et saisissez une valeur Min et Max, puis sélectionnez le bouton Set. Chaque fois que le capteur lit une valeur, il lit un nombre aléatoire entre Min et Max.

  8. Exécutez l'application Python. Vous verrez les mesures d'humidité du sol écrites dans la console. Changez les paramètres Value ou Random pour voir la valeur changer.

    (.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
    

💁 Vous pouvez trouver ce code dans le code/virtual-device folder.

😀 Votre programme de capteurs d'humidité du sol a été un succès !