Proyecto Wifi ESP8266 Como Servidor WEB

Vale, perdón, justo estaba comentando cuando hiciste el post y no lo vi.

Estoy utilizando un acelerómetro de 3 ejes ADXL335. Los valores esos que me comentas sólo son para poder medir bien los valores con el sensor, valores de datasheet (aunque no eran los ideales). Espero que haya quedado claro lo que quiero medir, es la velocidad a la que levanto la barra en la fase concéntrica (en la que se hace fuerza).

Respecto a Simpson, he hablado con un amigo que está haciendo doble grado de física y matemáticas y me ha dicho que esa regla sólo sirve para interpolar 5 valores, es cierto? porque claro, no me serviría, esto mide mucho valores por segundo.

De todas formas os dejo el código completo.

float medida;
float acc;
float vi=3.3;
float ceroG= 1.42;
float sensibilidad= 0.289;
float margen= 0.7; //margen que doy para que no mida nada mas moverlo, si estoy haciendo fuerza la acc!= 9.8, cuando deje de hacer fuerza volverá a ser 9.8
float suma=0; //Iniciamos la suma que luego será el promedio de acc
double transcurrido=0;
unsigned long inicio, fin;  // Mide el tiempo
void setup() {
  // put your setup code here, to run once:
  
  pinMode(A0,INPUT);
  Serial.begin(115200);
  
}

void loop() {
  // put your main code here, to run repeatedly:
  
 medida=analogRead(A0);
 acc= ((medida/1024.0) *vi -ceroG)/sensibilidad; //Aceleración en Gs
 float acc2= acc*9.8066; //Aceleración en m/s^2
 acc2= abs(acc2);
 int iter=0;
 suma=0;
 Serial.println("Paso1");
 if (acc2> (9.8+margen) || acc2<(9.8-margen)){
  inicio=millis();  //Consulta los milisegundos desde que se inició el sketch
      
  while(acc2> (9.8+margen) || acc2<(9.8-margen) ){
    delay(1);
    medida=analogRead(A0);
    acc= ((medida/1024.0) *vi -ceroG)/sensibilidad;
    acc2= acc*9.8066; 
    acc2=abs(acc2);
    suma=acc2+suma;
    iter=iter+1;
    Serial.println(acc2);
    delay(1);
 }
   
   fin=millis();  //Consulta los milisegundos desde que se inició el sketch
   transcurrido=(fin-inicio);
   Serial.println("tiempoA:");
   Serial.println(transcurrido);
   transcurrido=transcurrido*0.001;//Calcula el tiempo en segundos desde la última lectura
   Serial.println("tiempoB:");
   Serial.println(transcurrido);
   float vel= ((abs(suma-9.8066))/iter)*transcurrido; 
   float pos= vel*transcurrido;   
   Serial.println("Aceleración:");
   Serial.println(suma/iter);
   Serial.println("Velocidad:");
   Serial.println(vel);
   Serial.println("Posición:");
   Serial.println(pos);

   delay(2000);
 }
  delay(50); 

}
/* 1g= 9,8066 m/s^2 300mv/g  0G= 1.5V conversor ADC de 10 bits  */