diff --git a/test/Mesure_8_res_therm/Mesure_8_res_therm.ino b/test/Mesure_8_res_therm/Mesure_8_res_therm.ino new file mode 100644 index 0000000..1953965 --- /dev/null +++ b/test/Mesure_8_res_therm/Mesure_8_res_therm.ino @@ -0,0 +1,68 @@ +#define res_mesure 219 +#define v_alim 5070 +#define beta 3650 +#define r_therm 470 + +float VR[8] = {0}; +float R[8] = {0}; +float T[8] = {0}; +int analogPin[8] = {A0,A1,A2,A3,A4,A5,A6,A7}; +float Vi; + +void setup() { + Serial.begin(9600); +} + +void loop() { + float i = mesureI(A0); + Vi = mesureV(A0); + afficheT(); + delay(500); +} +void afficheT(){ + for (int i = 0; i < 8; ++i) + { + Serial.print("T"); + Serial.print(i+1); + Serial.print(" = "); + Serial.print(T[i]); + Serial.println(" degre"); + } + Serial.println(""); +} + +void volt(){ + for (int i = 1; i < 7; ++i) + { + VR[i] = mesureV(analogPin[i+1]) - mesureV(analogPin[i]) ; + } + VR[0] = mesureV(A1) - Vi; + VR[7] = v_alim - mesureV(A7) ; +} + +void res(){ + volt(); + for (int i = 0; i < 8; ++i) + { + R[i] = VR[i] / i; + } +} + +void temp(){ + res(); + for (int i = 0; i < 8; ++i) + { + T[i] = ((298.15*beta)/(beta+298.15*log(R[i]/r_therm)))- 273.15; + } +} + +float mesureI(int pin){ // retourne la valeur du courant en mA + int mes = analogRead(pin); + float v = map(mes, 0,1023, 0, v_alim); + return (v/res_mesure); +} + +float mesureV(int pin){ // retourne la valeur de la tention en mV + int mes = analogRead(pin); + return map(mes, 0,1023, 0, v_alim); +}