From d67e4a9da815559eba2a85e5b960b713662c44bf Mon Sep 17 00:00:00 2001 From: Clement Date: Tue, 2 May 2023 13:44:41 +0200 Subject: [PATCH] add humitemp class for DHT capteur --- IOT/lib/Capteur/include/HumiTemp.h | 34 ++++++++++++++++++++++++++++++ IOT/lib/Capteur/src/HumiTemp.cpp | 27 ++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 IOT/lib/Capteur/include/HumiTemp.h create mode 100644 IOT/lib/Capteur/src/HumiTemp.cpp diff --git a/IOT/lib/Capteur/include/HumiTemp.h b/IOT/lib/Capteur/include/HumiTemp.h new file mode 100644 index 0000000..71a8632 --- /dev/null +++ b/IOT/lib/Capteur/include/HumiTemp.h @@ -0,0 +1,34 @@ +#ifndef HUMI_TEMP_H +#define HUMI_TEMP_H + +#include +#include +#include "Capteur.h" + +class HumiTemp : public Capteur{ + +public: + + /** + * @brief Construct a new Humi Temp object + * + * @param pin pin du capteur dht + * @param type type de capteur dht (11,22,...) + * @param fullVal valeur au quel la poubelle est considéré comme pleinne + */ + HumiTemp(int pin, String type, String fullVall); + + /** + * @brief lit le capteur d'humi/temp + * + * @return String valeur format "XX/YY" X% et Y°C + */ + String read(); +private: + + DHT* capteur; + +}; + + +#endif //HUMI_TEMP_H \ No newline at end of file diff --git a/IOT/lib/Capteur/src/HumiTemp.cpp b/IOT/lib/Capteur/src/HumiTemp.cpp new file mode 100644 index 0000000..65e0ac3 --- /dev/null +++ b/IOT/lib/Capteur/src/HumiTemp.cpp @@ -0,0 +1,27 @@ +#include "../include/HumiTemp.h" + + +HumiTemp::HumiTemp(int pin, String type, String fullVall): + Capteur("H/T",fullVall){ + this->capteur = new DHT(pin,type); + this->capteur->begin(); +} + +String HumiTemp::read(){ + String sortie = ""; + int hum = this->capteur->readHumidity(true); + int temp = this->capteur->readTemperature(false,true); + + //valeur pour un élevage d'astico de pèche selon chatGPT + if((temp > 20 && temp < 30) && (hum > 60 && hum < 80)){ + this->full = true + }else{ + this->full = false + } + + sortie += String(hum); + sortie += "/"; + sortie += String(temp); + return sortie; +} +//TODO: faire en soirte qu'il y ai un nombre de cycle pour l'aparition d'asticots (entre 1 et 3 jours) \ No newline at end of file