Valeur moyenne

Bonjour,

Je suis actuellement en train de travailler sur un projet de télémétrie où je récupère 4 données de température, 2 de courants, 1 débit et 1 pression ( dans un tuyau ).

Tout fonctionne mais j’aimerais faire une moyenne de 20 valeurs au lieu d’en mesurer qu’une, puis en faire la moyenne.
J’ai déjà essayé de moi-même, mais sans succès. Pourriez-vous me proposer la partie de code pour la valeur moyenne?

Ci-joint la partie du code qui récupère les températures par exemple:

void lireMesTemp()
{
 byte cpt;
 String affichOrdi;
 
 for (cpt = 0; cpt < NbCapT ; cpt++)                   // Parcourir un à un les capteurs
 { 
   if(MAX31850K.isConnected(IDsTemp[cpt]) == true)    
   {
     MesTemp[cpt] = MAX31850K.getTempC(IDsTemp[cpt]);
     
     /* Affichage Ordinateur */
     affichOrdi = "Capteur Temp-" + cpt; 
     affichOrdi = " " + affichOrdi + " : " + MesTemp[cpt];   
     Serial.print(affichOrdi);                   
     Serial.println(" °C");                      
   }
   else
   {
     MesTemp[cpt] = 0.0;

     /* Affichage Ordinateur */
     affichOrdi = "Capteur Temp-" + cpt; 
     affichOrdi = affichOrdi + " déconnecté !";      
     Serial.println(affichOrdi);                   // Affichage Ordinateur
   }
 }
   MAX31850K.requestTemperatures();  
   delay(5000);
}

Merci d’avance ! 8)

Ce n’est pas la peine de multiplier les fils de discussion sur le même sujet → http://forum.arduino.cc/index.php?topic=474590.msg3244760#msg3244760

Tableau de 20 valeurs
Acquisition de 20 valeurs → je pense humblement qu’une boucle for(uint8_t n =0; n<20 ; n++) devrait faire l’affaire.
Quand la 20ème valeur est atteinte :
moyenne arithmétique des 20 valeurs → tu additionne les 20 valeurs et tu divise par 20

Ensuite que veut-tu faire ?

Nouvelle acquisition de 20 valeur ?

  • raz du tableau
  • dès que la 20ème valeur est atteinte moyenne arithmétique

Moyenne glissante ?
La valeur 1 remplace la valeur 0
La valeur 2 remplace la valeur 1

La valeur19 remplace la valeur 18
Encore une fois une boucle for devrait faire l’affaire.
On acquière la nouvelle valeur 19
On fait la moyenne.