Étape 3: Ajout d’un capteur sur le croquis de base
Une fois compris comment fonctionne le code de base, nous pouvons ajouter un capteur et faire envoyer des données à Thingspeak. Nous avons choisi d’ajouter un capteur d’humidité de sol appelé YL-69. Branchez-le, comme illustré dans le schéma Fritzing attaché dans cette étape et puis le coller dans le sol.
Non, nous allons voir comment ajouter chaque capteur unique utilisée dans ce projet parce que fondamentalement, c’est juste une question de répéter la procédure présentée dans cette étape *.
Constants et variables nécessaires
La première chose que nous allons faire est de définir une constante pour l’axe utilisé par la sonde d’humidité du sol. Ensuite, nous déclarons une variable de chaîne nécessaire pour stocker ses données.
Les soilMoisture ()
Maintenant, il faut ajouter une nouvelle fonction qui transforme fondamentalement les valeurs analogiques de la sonde d’humidité du sol un pourcentage et puis les convertit en chaînes. Comme vous devez savoir de l’étape précédente, Thinkspeak accepte uniquement les chaînes, donc cette conversion est strictement nécessaire.
Comment cette conversion se déroulera-t-il ? C’est assez simple. Déclarer un tableau de char de 6 éléments et puis convertir les flotteurs à l’aide de la fonction dtostrf.
dtostrf a la syntaxe suivante :
Bien sûr, vos fonctions devra retourner une chaîne.
Remarque: l’humidité du sol est de 0 % si le capteur détecte le 1023 et 100 % lorsque indique 0, vôtre peut être différente !
Envoie des données Thingspeak
fonction upadateValues est essentiellement semblable à celui vu dans l’étape précédente. En fait, nous avons changé uniquement la valeur à envoyer de valuetosend à moisture_c.
connectWiFi ne change pas du tout.
Fonctions d’installation et de la boucle
Ces deux fonctions ne diffèrent quelque peu de ceux observés avant.
Dans le programme d’installation , nous trouvons une ligne supplémentaire nécessaire pour initialisé la sonde d’humidité du sol.
Dans la boucle nous simplement rappeler soilMoisture et upadateValues. La première fonction détecte et le calcule le taux d’humidité, l’autre envoie à ThingSpeak.
* NOTE : notre croquis final contient une fonction appelée getValue qui est nécessaire pour séparer les chaînes de DHT22. Cette exploitation est appelée texte en unités lexicales. Vérifier la cette page pour plus d’informations sur.