projet capteur connecté ST/SE

Dependencies:   HP206C mbed HMC5883L DHT DS1820

Committer:
Fayge
Date:
Tue Oct 09 12:22:31 2018 +0000
Revision:
60:8b65fdf54d56
Parent:
59:6d48aee9f7d5
Child:
67:3ccbc6a532eb
working on TH_soil;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Fayge 59:6d48aee9f7d5 1 #ifndef T_H_SOIL_H
Fayge 59:6d48aee9f7d5 2 #define T_H_SOIL_H
Fayge 59:6d48aee9f7d5 3
Fayge 59:6d48aee9f7d5 4 #include "mbed.h"
Fayge 59:6d48aee9f7d5 5 #include "DS1820.h"
Fayge 59:6d48aee9f7d5 6
Fayge 60:8b65fdf54d56 7 #define AIR_SOIL_HUMIDITY 0.78 // dry dirt at 0.75 with AnalogIn.read()
Fayge 60:8b65fdf54d56 8 #define WATER_SOIL_HUMIDITY 0.38 // wet dirt at 0.54
Fayge 59:6d48aee9f7d5 9
Fayge 59:6d48aee9f7d5 10
Fayge 60:8b65fdf54d56 11 bool initSoilTemp(DS1820 probe, PinName pin);
Fayge 59:6d48aee9f7d5 12
Fayge 60:8b65fdf54d56 13 float getSoilTemperature(DS1820& probe);//can return DS1820::invalid_conversion
Fayge 59:6d48aee9f7d5 14
Fayge 59:6d48aee9f7d5 15 float getSoilHumidity(AnalogIn& probe,
Fayge 59:6d48aee9f7d5 16 float& airValue,
Fayge 59:6d48aee9f7d5 17 float& waterValue,
Fayge 59:6d48aee9f7d5 18 bool adaptiveCalibration = true);
Fayge 60:8b65fdf54d56 19 /* ## EXAMPLE
Fayge 60:8b65fdf54d56 20 #include "mbed.h"
Fayge 60:8b65fdf54d56 21 #include "T_H_soil.h"
Fayge 60:8b65fdf54d56 22
Fayge 60:8b65fdf54d56 23 DS1820 probe(PA_5);//A4
Fayge 59:6d48aee9f7d5 24 Serial pc(USBTX, USBRX);
Fayge 60:8b65fdf54d56 25 AnalogIn humidSensor(PA_6);// A5 // max: 0.77 min:0.38
Fayge 59:6d48aee9f7d5 26
Fayge 59:6d48aee9f7d5 27 int main() {
Fayge 60:8b65fdf54d56 28 if(initSoilTemp(probe,PA_5))
Fayge 60:8b65fdf54d56 29 pc.printf("unassigned Probe\r\n");
Fayge 59:6d48aee9f7d5 30 float airValue(AIR_SOIL_HUMIDITY);
Fayge 59:6d48aee9f7d5 31 float waterValue(WATER_SOIL_HUMIDITY);
Fayge 59:6d48aee9f7d5 32 while(1) {
Fayge 59:6d48aee9f7d5 33 float humid = getSoilHumidity( humidSensor, airValue,waterValue, true);
Fayge 59:6d48aee9f7d5 34 float temp = getSoilTemperature(probe);
Fayge 60:8b65fdf54d56 35
Fayge 60:8b65fdf54d56 36 if(temp == DS1820::invalid_conversion)
Fayge 60:8b65fdf54d56 37 pc.printf("Error with soil temperature probe : not connected\n\r");
Fayge 60:8b65fdf54d56 38
Fayge 60:8b65fdf54d56 39 pc.printf("Soil ## T:%.2foC ## H :%.2f%% V:%f ##\r\n", temp, humid,humidSensor.read());
Fayge 60:8b65fdf54d56 40
Fayge 60:8b65fdf54d56 41 wait(0.1);
Fayge 59:6d48aee9f7d5 42 }
Fayge 59:6d48aee9f7d5 43 }
Fayge 59:6d48aee9f7d5 44 */
Fayge 59:6d48aee9f7d5 45 #endif