Biblioteca de bloques¶
Página incompleta · fase 2
Esta página es un esqueleto. La biblioteca de bloques no entra en la fase 1 (Fases), y su contenido detallado —parámetros exactos, semántica de reinicio, comportamiento en el primer tick— se redactará al abordarla. Lo que sigue fija el marco, no la especificación.
Qué es un bloque¶
Una unidad de comportamiento reutilizable, instanciada desde la configuración con parámetros y enlazada a señales de entrada y salida. Los bloques son el único sitio donde vive estado temporal del modelo; las expresiones son puras.
Un bloque no conoce el radar. delay_on no sabe que está temporizando un caldeo de magnetrón.
Esa es la condición para que un usuario pueda armar un radar distinto sin tocar código.
Bloques previstos¶
Lista de trabajo, no cerrada.
kind |
Qué hace | Estado interno |
|---|---|---|
delay_on |
Salida a verdadero tras N ms de entrada verdadera | temporizador |
delay_off |
Retiene la salida N ms tras caer la entrada | temporizador |
latch |
Enclavamiento con set y reset, precedencia declarada | booleano |
ramp |
Persigue una consigna a pendiente limitada | valor actual |
first_order |
Retardo de primer orden con constante de tiempo | valor actual |
integrator |
Integra la entrada, con límites y anti-windup | acumulador |
axis |
Integrador de posición con velocidad, aceleración y finales de carrera | posición, velocidad |
noise |
Ruido aditivo sobre una señal analógica | semilla del generador |
threshold |
Comparación con histéresis | último estado |
Cuestiones abiertas¶
Deben resolverse antes de escribir el primer bloque, porque afectan a todos.
Comportamiento en el primer tick. Un delay_on cargado con la entrada ya en verdadero,
¿arranca su temporizador o considera la condición cumplida? Ambas son defendibles y hay que
elegir una y aplicarla a toda la biblioteca.
Semántica de recarga de configuración. Al aplicar una configuración nueva, ¿los bloques
cuyo kind y parámetros no cambiaron conservan su estado interno, o se reinicializan? Conservar
permite ajustar el modelo sin perder una sesión larga; reinicializar es más predecible.
Determinismo. noise introduce un generador pseudoaleatorio. Su semilla debe formar parte
de la configuración y quedar en el registro de sesión, o las trazas dejan de ser reproducibles.
Relación con axis. El bloque de ejes es el único que corre en el lazo de 10 ms
(D-10), lo que lo
convierte en un caso especial dentro de la biblioteca. Queda por decidir si se modela como
bloque con marca de cadencia o como subsistema aparte.
Parámetros de la semilla RD100S¶
Todos los coeficientes que la semilla asigna a estos bloques son invención plausible: tiempo de caldeo (PEND-10), retardos de arranque (PEND-11), ganancias y aceleraciones de los ejes (PEND-15), recorrido de elevación (PEND-16).