Bloques
Explore todos los bloques de simulación de BlockWerk: operaciones matemáticas, controladores PID, funciones de transferencia, integradores, fuentes de señales y pantallas. Gratis en su navegador.
Advanced
El bloque BatterySocEkf estima el estado de carga (State of Charge, SOC) de una celda de batería utilizando las dos señales de telemetría disponibles
El bloque KalmanFilter estima el estado oculto de un sistema lineal a partir de una medición ruidosa. En cada paso de muestreo predice la evolución de
Ejecute lógica personalizada en **JavaScript** o **Python** dentro del bucle de simulación. Defina sus propios puertos de entrada y salida; estos se c
Analysis
El bloque BodePlot realiza un análisis de respuesta en frecuencia (diagrama de Bode) de un sistema dinámico lineal. Genera y grafica dos curvas simult
El bloque NyquistPlot visualiza la respuesta en frecuencia de un sistema como un diagrama polar en el plano complejo. Representa la parte real de la r
Connectivity
BronkhorstMFC es un bloque **fuente** (con capacidad opcional de asignación de consigna) que lee en tiempo real datos de flujo, temperatura, frecuenci
RemoteSensor es un bloque de tipo **fuente (source)** que transmite telemetría inercial y datos de sensores opcionales en directo desde un dispositivo
PhoneController es un bloque **fuente** que transforma cualquier teléfono móvil en un joystick inalámbrico con selector independiente de guiñada (yaw)
Continuous
Función de transferencia estándar de un sistema de segundo orden: ``` G(s) = ωₙ² / (s² + 2ζωₙs + ωₙ²) ``` Este bloque modela sistemas oscilatorios a
El bloque Derivative calcula la derivada temporal numérica (la tasa de variación) de una señal de entrada mediante el método de diferencias finitas re
El bloque Integrator calcula la integral en el tiempo (la suma acumulada continua) de una señal de entrada. Es la operación inversa del bloque Derivat
Compensador de adelanto-atraso de fase con función de transferencia G(s) = (τ₁s + 1) / (τ₂s + 1). Cuando τ₁ > τ₂ actúa como red de adelanto de fase (l
El bloque PIDController implementa un controlador Proporcional-Integral-Derivativo estándar para sistemas de control por retroalimentación en bucle ce
El bloque **StateSpace** (espacio de estados) implementa un sistema dinámico lineal e invariante en el tiempo (LTI) multivariable continuo descrito po
El bloque TransferFunction (función de transferencia) implementa sistemas dinámicos continuos lineales e invariantes en el tiempo (LTI) descritos en e
El bloque **ZeroPole** representa una función de transferencia a partir de sus polos y ceros: ``` H(s) = K · (s - z₁)(s - z₂)...(s - zₘ) / (s - p₁)(s
Discontinuous
Modela el juego mecánico (holgura o histéresis mecánica). La salida permanece constante hasta que la entrada se desplaza más de la mitad del ancho de
El bloque DeadZone (zona muerta / banda muerta) modela una no linealidad de zona muerta. Cuando la señal de entrada permanece dentro del intervalo esp
Redondea la señal de entrada al múltiplo más cercano de un intervalo especificado, produciendo una salida escalonada. Modela la resolución de converti
Limita la velocidad de cambio (slew rate) de la señal de salida. La salida sigue a la entrada pero no puede cambiar más rápido que la tasa de subida o
El bloque Relay (relé con histéresis / disparador Schmitt) conmuta entre dos valores fijos de salida (`onValue` y `offValue`). El relé se activa cuand
El bloque Saturation (saturación / limitador) restringe la señal de entrada dentro de un rango delimitado por un límite inferior y un límite superior
Discrete
El bloque `DigitalFilter` es una herramienta avanzada de procesamiento de señales diseñada para filtrar señales en tiempo discreto durante una simulac
Integrador en tiempo discreto que acumula la señal de entrada a lo largo del tiempo. Equivale a una sumatoria progresiva escalada por el tiempo de mue
Calcula la derivada en tiempo discreto (diferencia hacia atrás) de la señal de entrada. Emite cero en la primera muestra.
El bloque Discrete State-Space implementa un sistema lineal en espacio de estados en tiempo discreto. En cada instante de muestreo, actualiza el vecto
Implementa una función de transferencia en tiempo discreto H(z) = B(z)/A(z) utilizando la estructura de forma directa II transpuesta (Direct Form II T
Bloque muestreador y retenedor (Sample-and-Hold) que toma muestras de la entrada a intervalos regulares y mantiene o extrapola su valor entre instante
Retarda la señal de entrada exactamente un período de muestreo (operador z⁻¹). Constituye el bloque fundamental para sistemas de tiempo discreto, filt
Dynamics
El bloque Delay introduce un retardo temporal fijo (tiempo de transporte / retraso puro) a la señal de entrada. Modela retardos de comunicación, laten
El bloque InputShaper elimina el balanceo y las vibraciones mecánicas residuales en movimientos de posicionamiento rápido. Cuando el carro de una grúa
El Predictor de Smith compensa el tiempo muerto (retardo de transporte) — el desfase temporal inevitable entre la acción de control y la primera respu
Layout
El bloque Area funciona como una zona de agrupación visual en el lienzo. Permite organizar bloques de forma lógica y aplicar un color de fondo para di
El bloque Text Note es una herramienta de anotación de texto sin marco diseñada para incorporar comentarios, explicaciones o rótulos directamente sobr
Logic
El bloque Comparator compara una señal de entrada con un valor de umbral y genera un resultado binario: **1** (verdadero) si se cumple la condición de
Detecta transiciones y flancos en la señal de entrada. Permite identificar flancos de subida (la señal cruza el umbral en sentido ascendente), flancos
Comprueba si la señal de entrada cae dentro de un intervalo especificado. Por defecto, emite 1 si se encuentra dentro del rango y 0 si se encuentra fu
El bloque **LogicGate** (puerta lógica) integra 4 operaciones booleanas fundamentales en un único bloque configurable: - **AND (Y)**: Todas las entra
El bloque Switch selecciona entre dos señales de datos en función de una señal de control (selector). Si la señal selectora satisface la condición de
Math
El bloque 2-D Lookup Table mapea dos valores de entrada (x, y) a un valor de salida mediante interpolación bilineal dentro de una rejilla predefinida
El bloque Absolute Value (valor absoluto / rectificador) calcula la magnitud $|u(t)|$ de la señal de entrada. La salida es siempre no negativa ($\ge 0
El bloque Divide realiza la división algebraica de dos señales de entrada: el numerador y el denominador. Incorpora protección integrada contra la div
El bloque Gain multiplica la señal de entrada por un factor de ganancia constante ($K$). Es uno de los bloques fundamentales y más utilizados en proce
El bloque HillEquation implementa el clásico modelo sigmoidal $E_{\text{max}}$ de la farmacodinámica: convierte la concentración de un fármaco en el s
Tabla de búsqueda unidimensional (1-D) con interpolación lineal. Mapea valores de entrada a valores de salida mediante un conjunto de puntos de corte
El bloque MathFunction aplica una función matemática estándar configurable a la señal de entrada. Admite funciones exponenciales ($e^x$), logaritmos n
Entrega como salida el mínimo o el máximo de todas las señales de entrada conectadas. Resulta útil para la selección de señales, lógica de protección
El bloque Product multiplica varias señales de entrada entre sí, generando su producto algebraico como salida. Es una operación matemática fundamental
El bloque SquareRoot calcula la raíz n-ésima de la señal de entrada. Aunque recibe el nombre de SquareRoot por el caso de uso habitual (donde n=2), es
El bloque Subtraction realiza la resta algebraica de dos señales de entrada: salida = plus - minus. Esto proporciona una alternativa explícita e intui
El bloque Sum suma algebraicamente múltiples señales de entrada, generando su suma total como señal de salida. Es una de las operaciones matemáticas m
El bloque **Trigonometric** ofrece 7 funciones trigonométricas en un único bloque configurable: - **sin(x)** - Seno - **cos(x)** - Coseno - **tan(x)*
Signal Routing
El bloque Demux (Demultiplexor / Distribuidor de señal / Fan-out) replica una señal de entrada única hacia múltiples salidas paralelas. Cada puerto de
Recibe una señal de forma inalámbrica desde un bloque Goto coincidente. Utilice pares Goto/From para crear conexiones virtuales que reduzcan el desord
Transmite una señal de forma inalámbrica a los bloques From coincidentes. Utilice pares Goto/From para crear conexiones virtuales que reduzcan el deso
El bloque Mux (Multiplexor / Agrupador de señales) reúne múltiples señales escalares de entrada en una única salida. La señal de salida resulta de la
Selecciona una entre varias señales de entrada en función de un valor de índice.
Sinks
El bloque **FFT Scope** visualiza el espectro de frecuencia de una o más señales mediante la Transformada Rápida de Fourier (FFT). Se trata de un bloq
El bloque Gauge representa un indicador analógico semicircular con aguja giratoria, mostrando el valor instantáneo de la señal conectada en relación c
El bloque Histogram acumula los valores escalares entrantes a lo largo de la simulación y representa su distribución de frecuencias en forma de histog
El bloque NumericDisplay proporciona una lectura digital de estilo LCD para visualizar en tiempo real valores numéricos de la simulación. Lee el valor
El bloque ScatterPlot grafica pares de valores escalares como puntos individuales en un plano bidimensional. En cada paso de simulación, los valores a
El bloque uPlotDisplay es un trazador de señales interactivo y ultrarrápido diseñado para la visualización en tiempo real directamente sobre el diagra
El bloque XYPlot grafica dos señales escalares en tiempo real una frente a otra en una vista de plano de fase, conservando una cantidad configurable d
Sources
Emite el tiempo actual de simulación como una señal continua. Esencial para construir sistemas dependientes del tiempo, tablas de consulta (lookup tab
El bloque Constante es una fuente de señal fundamental que proporciona un valor de salida numérico estable durante toda la simulación. No tiene puerto
Palanca de mando (joystick) interactiva de 2 ejes. Arrastre el selector — incluso **mientras la simulación se encuentra en ejecución** — y ambas salid
Fuente interactiva de entrada por teclado. Haga clic en el bloque para **habilitarlo** y controle la salida mediante las teclas de flecha o WASD — inc
El bloque PulseGenerator genera trenes de pulsos periódicos de onda cuadrada con parámetros configurables de alta precisión. La señal alterna entre un
El bloque Ramp genera una señal de rampa que se incrementa o decrementa de forma lineal a partir de un instante de tiempo configurado y a una tasa de
Genera números pseudoaleatorios utilizando un generador determinista PRNG (xorshift64). Admite distribuciones uniforme y gaussiana (normal). Una misma
El bloque SignalGenerator es una fuente de señal versátil que genera diversas formas de onda periódicas dependientes del tiempo para fines de simulaci
Control deslizante interactivo integrado en el lienzo de trabajo. Mueva el control — incluso **mientras la simulación se encuentra en ejecución** — y
El bloque Step genera una función escalón que cambia bruscamente de un valor inicial a un valor final en un instante de tiempo determinado. Este bloqu
Subsystems
El bloque **InPort** (puerto de entrada) define una **interfaz de entrada** para un subsistema (Subsystem). Recibe valores desde fuera del subsistema
El bloque **OutPort** (puerto de salida) define una **interfaz de salida** para un subsistema (Subsystem). Recibe valores de los bloques internos y lo
El bloque Subsystem (subsistema) proporciona un **encapsulamiento jerárquico** de bloques, lo que permite agrupar lógica de control compleja en unidad