Red de conocimiento informático - Espacio del host - Quiero escribir un programa utilizando Siemens S7-300. Quiero promediar las señales de corriente o de voltaje recopiladas en tiempo real, es decir, promediar tres valores consecutivos.

Quiero escribir un programa utilizando Siemens S7-300. Quiero promediar las señales de corriente o de voltaje recopiladas en tiempo real, es decir, promediar tres valores consecutivos.

El póster ofrece un programa típico de filtro mediano (puede modificarse adecuadamente según el software de programación utilizado. Recuerde que el STEP7 estándar no es compatible con c, por lo que debe agregar SCL):

int a[11]; define una matriz para guardar cada valor de medición

dint suma; define la variable media

a[0]=se guarda el último valor de medición; en el primer elemento de la matriz en

sum=0; a la media se le asigna cero primero

for (i=0; ilt; 10; i)

{

sum = a[10-i-1]; Acumulación de cada valor de medición

a[10-i]=a[10-i-1];

}

suma /=10; promedio final

La idea básica de este programa es que cada vez que se toma una medición se calcula el promedio junto con los 9 valores de medición anteriores.

"Si a veces tomas 5 números, encuentra el promedio en cualquier momento"——

Simplemente cambia el valor 10 en el programa a una variable y asígnale el valor requerido.