Cargando el progreso local…
PLC Gym
Inicio de PLC GymNivel 1, 0 XP · tu progreso
Misión 58 · PRO (requiere Pro)

Ejercicio de Promedia las últimas cuatro lecturas: promedio móvil

Suaviza un nivel con ruido. Guarda cuatro lecturas y deja que cada lectura nueva sustituya a la más antigua.

Calcula SmoothedLevel como el promedio de las últimas cuatro lecturas de Level. Guárdalas en Readings, un arreglo REAL de cuatro posiciones, de 0 a 3. Mientras Sample esté en ON, toma una lectura en cada escaneo. Ponla en la posición que señala WriteIndex y luego avanza WriteIndex una posición. Después de la posición 3, vuelve WriteIndex a 0, para que la lectura más nueva sustituya a la más antigua. Suma las cuatro posiciones con un bucle FOR y divide entre 4.

Esta misión es parte de ProCrea una cuenta gratis: cada cuenta tiene una prueba de Pro gratis hasta el 5 de diciembre.

Sin tarjeta. Nada que pagar. Nada que cancelar.

Official release: 5 December. Queda primero en la clasificación ese día y gana 3 meses de Pro, más 2 semanas de Pro para regalar a un amigo. El 2.º puesto gana 4 semanas. El 3.er puesto gana 2 semanas. Reglas

  • Todas las lecciones, desde cero
  • Todas las misiones y lecciones, a medida que subes de nivel
  • Una prueba práctica para cada título, con un certificado
  • Rebobina cualquier prueba, escaneo a escaneo
  • Soluciones resueltas cuando te atascas
  • El convertidor de código, todo lo que quieras
La instalación 3D tanque de proceso en la que se ejecuta esta misiónPRO (requiere Pro) misión
Cómo se ejecuta la prueba

Cuatro lecturas llenan la ventana

Prueba 1 de 4
Fijado por la pruebaComprobado por la pruebaPaso 6 de 6 · 120 ms
Level
Aplicado
Tiempo
Acerca de 15 min
Recompensa
+350 XP
Instalación
tanque de proceso en 3D
Editores de Siemens
SCL
Editores de Rockwell
Texto estructurado
Editores de Beckhoff
Texto estructurado
Etapa
18. Guardar las últimas lecturas
Comportamiento requerido

Promedia las últimas cuatro lecturas: qué debe hacer tu código

Una lectura de nivel con ruido salta de un lado a otro. Suavizarla evita que la lógica posterior reaccione a cada parpadeo. Tendencias muestra Level y SmoothedLevel lado a lado, escaneo a escaneo. Esta es la primera de dos misiones sobre el mismo filtro. Aquí la ventana, el número de lecturas que promedias, está fija en cuatro. Las cuatro posiciones empiezan en 0.0, así que los tres primeros resultados salen bajos. La misión siguiente lo arregla y deja que la ventana cambie de tamaño. Tu filtro solo calcula un número para la lógica posterior. No conmuta la bomba ni la válvula.

Sample
Sample en ON toma una lectura de Level en cada escaneo. Sample en OFF deja SmoothedLevel como está.
Guardar y volver al principio
Cada lectura va a la siguiente de las cuatro posiciones. Después de la cuarta, vuelve a la primera, para que la lectura más nueva sustituya a la más antigua. Cómo organices el búfer es cosa tuya.
Promedio
Después de cada lectura, SmoothedLevel es la suma de las cuatro posiciones dividida entre 4. Conserva los decimales.
Las tres primeras lecturas
Las cuatro posiciones empiezan en 0.0, y SmoothedLevel también. Una posición vacía sigue contando como 0. Así que con solo 10% y 30% guardados, el resultado es 10%: 40 dividido entre 4.
Tabla de variables

Promedia las últimas cuatro lecturas: entradas y salidas

Tu programa lee 2 entradas y escribe 1 salida. Los nombres son los mismos en el editor de cada fabricante.

VariableTipo de datosTu códigoQué significa en la máquina
LevelREALLeeUna entrada que tu código necesitaNivel del tanque, %
SampleBOOLLeeUna entrada que tu código necesitaMientras esté en ON, toma una lectura de Level en cada escaneo.
SmoothedLevelREALEscribeUna salida que tu código fijaPromedio de las últimas cuatro lecturas, en %.

En SCL de Siemens, escribe las variables propias de un bloque con # delante, como hace TIA Portal: #Level. Rockwell y TwinCAT usa el nombre solo: Level.

Pruebas automáticas

Promedia las últimas cuatro lecturas: qué comprueban las pruebas

  1. Después de cada lectura, SmoothedLevel es la suma de las cuatro posiciones dividida entre 4. Conserva los decimales de las lecturas.
  2. La quinta lectura sustituye a la primera, y así sucesivamente dando la vuelta a las cuatro posiciones, lleguen las lecturas que lleguen.
  3. Con Sample en OFF, el promedio se mantiene. Con Sample mantenido en ON, cada escaneo añade una lectura.
  1. Pruébalo Usa los botones de debajo del modelo y mira cómo responde la instalación.
  2. Probar solución Todas las comprobaciones se ejecutan sobre tu código con una sola pulsación.
  3. Rebobinar PRO (requiere Pro) Si una falla, retrocede por ella escaneo a escaneo para ver por qué.

¿Atascado en esta misión? Pregunta a los miembros en el Vestuario.

Por qué importa

Dónde verías esto en planta

Las ondas en la superficie hacen saltar la lectura de nivel del tanque de una fábrica. El operador quiere un número más estable en la pantalla.

Promediar las últimas cuatro lecturas suaviza las ondas. Una lectura en la posición equivocada, o que nunca se sustituye, da un número falso que esconde un cambio real.

Dónde encontrarías estoHacer un lote de bebida

En una fábrica de bebidas, unas válvulas dejan entrar cantidades medidas de agua y jarabe en un tanque de mezcla. Un mezclador eléctrico las combina en un lote. Luego una válvula de salida manda la bebida a un tanque de espera. Las llenadoras la embotellan desde ahí.

  1. Tanques de ingredientesContienen el agua y el jarabe
  2. Tanque de mezclaLlena, mezcla y mide un loteEstás aquí
  3. Tanque de esperaGuarda la bebida terminada lista
  4. Llenadora de botellasPone la bebida en botellas
En una planta real: lugares, piezas y seguridad
  • Fábrica de bebidas: mezclar agua y jarabe
  • Fábrica de pintura: mezclar ingredientes para un color uniforme
  • Planta de tratamiento de agua: preparar una mezcla química medida
  • Cervecería: calentar agua para lavar los equipos

Un tanque lleno no cierra su propia entrada. El agua sigue llegando hasta que se cierra la válvula, así que una entrada abierta puede inundar la sala.

Un calentador que no está cubierto de líquido puede sobrecalentarse. Los tanques reales tienen dispositivos de seguridad aparte, además del programa del PLC.

Los tamaños, los tiempos y los cortes son decisiones didácticas, no el plano de ninguna instalación real concreta.

Sigue así

Lo siguiente en el camino