Commit b7819de2 authored by leoXtr3m's avatar leoXtr3m
Browse files

se actualizan las variables de Y y Z en el algoritmo

parent 84f405c6
......@@ -27,7 +27,7 @@ int k =0;
char charY;
char charZ;
uint8_t datos = 150;
uint8_t cantidadDatos = 150;
uint8_t yy = 0;
uint8_t zz = 0;
......@@ -64,7 +64,7 @@ char concatenado;
void recopilarDatos(int16_t* ejeX, int16_t* ejeY, int16_t* ejeZ){
if(q<datos){
if(q<cantidadDatos){
yy = (int)division(ejeY,100);
zz = (int)division(ejeZ,10);
......@@ -79,9 +79,18 @@ void recopilarDatos(int16_t* ejeX, int16_t* ejeY, int16_t* ejeZ){
void procesarDatos(uint8_t* resultado){
sumaY = 0;
sumaZ = 0;
sumaVarY = 0;
sumaVarZ = 0;
maximoY = 0;
maximoZ = 0;
minimoY = 0;
minimoZ = 0;
//Suma
for(k = 0; k<datos ; k++){
for(k = 0; k<cantidadDatos ; k++){
sumaY = sumaY + buffer_Y[k];
sumaZ = sumaZ + buffer_Z[k];
......@@ -106,11 +115,11 @@ void procesarDatos(uint8_t* resultado){
//Promedio
promedioY = sumaY/datos;
promedioZ = sumaZ/datos;
promedioY = sumaY/cantidadDatos;
promedioZ = sumaZ/cantidadDatos;
//Varianza
for(k = 0; k<datos ; k++){
for(k = 0; k<cantidadDatos ; k++){
restaVarY = buffer_Y[k] - promedioY;
sumaVarY = sumaVarY + (restaVarY*restaVarY);
......@@ -118,8 +127,8 @@ void procesarDatos(uint8_t* resultado){
sumaVarZ = sumaVarZ + (restaVarZ*restaVarZ );
}
varianzaY = sumaVarY/(datos-1);
varianzaZ = sumaVarZ/(datos-1);
varianzaY = sumaVarY/(cantidadDatos-1);
varianzaZ = sumaVarZ/(cantidadDatos-1);
......@@ -132,7 +141,7 @@ void procesarDatos(uint8_t* resultado){
promedioFinal = 0;
//PROMEDIO
if(promedioZ > 60){
if(promedioZ > 78){
if(promedioY < 39){
promedioFinal++;
}
......@@ -140,29 +149,29 @@ void procesarDatos(uint8_t* resultado){
//SUMA
if(sumaZ > 9000){
if(sumaY < 5750){
if(sumaZ > 12000){
if(sumaY < 7500){
promedioFinal++;
}
}
//VARIANZA
if(varianzaZ > 2500){
if(varianzaY > 60{
if(varianzaZ > 280){
if(varianzaY > 110){
promedioFinal++;
}
}
//DESVIACION ESTANDAR
if(desEstandarZ > 50){
if(desEstandarY > 7){
if(desEstandarZ > 16){
if(desEstandarY > 9){
promedioFinal++;
}
}
//MAXIMOS
if(maximoZ > 200){
if(maximoY > 57){
if(maximoY > 68){
promedioFinal++;
}
}
......@@ -171,7 +180,7 @@ void procesarDatos(uint8_t* resultado){
promedioFinal = promedioFinal*20;
//si es mayor a 80%
if(promedioFinal >= 80){
if(promedioFinal >= 60){
subiendoEscaleras = 1;
}
else{
......@@ -186,10 +195,6 @@ void procesarDatos(uint8_t* resultado){
}
division(int a, int b)
{
return(a / b);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment