diff --git a/.gitignore b/.gitignore index bcbb513..ba44d09 100644 --- a/.gitignore +++ b/.gitignore @@ -78,4 +78,4 @@ crashlytics-build.properties # End of https://www.toptal.com/developers/gitignore/api/unity -IOT/docs/doxygen output/* \ No newline at end of file +IOT/docs/doxygen output/* diff --git a/IOT/config.ini b/IOT/config.ini index 4ae1361..1a4201b 100644 --- a/IOT/config.ini +++ b/IOT/config.ini @@ -14,17 +14,24 @@ build_flags = -D MONITOR_SPEED=${config.monitor_speed} ; DO NOT TOUCH --- END - -D API_HOST=\"iot.epi.cb85.software\" + ; DHT pin and type + ; 5v + -D DHTTYPE=\"DHT11\" + -D DHTPIN=2 + ; ULTRASON pin + ; 5v -D ULTRA_SOUND_TRIGD=12 -D ULTRA_SOUND_ECHO=13 + ; Capteur poids -D POID_DOUT=14 -D POID_SCK=15 -D MOYENNE_CALIBRATION=20 + ; trash can ID -D TRASHCAN_ONE=\"gdnuxl0wlgurtj3\" -D TRASHCAN_TWO=\"4brip5fwm001bs9\" diff --git a/IOT/include/Program.h b/IOT/include/Program.h index 9e34e98..4b50a8d 100644 --- a/IOT/include/Program.h +++ b/IOT/include/Program.h @@ -1,6 +1,7 @@ #ifndef PROGRAM_H #define PROGRAM_H +#include #include #include @@ -24,6 +25,12 @@ public: private: /* data */ + /** + * @brief capteur humi/temp + * + */ + DHT *dht; + /** * @brief capteur ultra son pour le niveau de remplissage de la poubelle * diff --git a/IOT/platformio.ini b/IOT/platformio.ini index bb6b258..c0a72ad 100644 --- a/IOT/platformio.ini +++ b/IOT/platformio.ini @@ -38,6 +38,8 @@ monitor_flags = lib_deps = bportaluri/WiFiEsp@^2.2.2 ; gestion des commande 'AT' de l'esp01 arduino-libraries/Arduino_JSON@^0.2.0 ; gestion des json + adafruit/DHT sensor library@^1.4.4 ; DHT11 lib + adafruit/Adafruit Unified Sensor@^1.1.9 ; adafruit sensor lib (required by DHT11) ericksimoes/Ultrasonic@^3.0.0 ; lib capteur ultra son bogde/HX711@0.7.5 ; lib pour la balance ; example: diff --git a/IOT/src/Program.cpp b/IOT/src/Program.cpp index 8235270..7d25d5f 100644 --- a/IOT/src/Program.cpp +++ b/IOT/src/Program.cpp @@ -3,32 +3,39 @@ int distance; -Program::Program(){ - Serial.begin(MONITOR_SPEED); //motitor pour debug - Serial1.begin(MONITOR_SPEED); //port serie pour l'esp +Program::Program() + // Serial + Serial.begin(MONITOR_SPEED); // motitor pour debug + Serial1.begin(MONITOR_SPEED); // port serie pour l'esp ///////INITIALISATION OBJ////// this->api = new API(USER_NAME, USER_PASSWORD, API_HOST); this->ultrasonic = new Ultrasonic(ULTRA_SOUND_TRIGD, ULTRA_SOUND_ECHO); this->balance = new Balance(POID_DOUT,POID_SCK); + this->dht = new DHT(DHTPIN, DHTTYPE); ///////INITIALISATION OK////// - this->api->wifiBegin(WIFI_SSID, WIFI_PASSWORD, &Serial1); - Serial.print("start calibr : "); this->balance->initCalibration(); + this->balance->setCalibrationFact(1077); Serial.println("OK"); - this->balance->setCalibrationFact(1077); + //this->api->wifiBegin(WIFI_SSID, WIFI_PASSWORD, &Serial1); + dht->begin(); } void Program::loop(){ distance = this->ultrasonic->read(); + //TODO: envoyer les infos des capteur par la suite + + Serial.println("Temperature = " + String(dht->readTemperature())+" °C"); + Serial.println("Humidite = " + String(dht->readHumidity())+" %"); + //this->api->sendValue(JSONVar::stringify(distance), TRASHCAN_ONE, "W", false); //TODO: faire estimation poubelle plenne - this->api->sendValue(this->balance->getValue(), TRASHCAN_TWO, ,false) + //this->api->sendValue(this->balance->getValue(), TRASHCAN_TWO, ,false); //TODO: faire estimation poubelle plenne Serial.print("Distance in CM: "); Serial.println(distance); - delay(10000); + delay(1000); } \ No newline at end of file