Blocs
Découvrez tous les blocs de simulation BlockWerk : opérations mathématiques, régulateurs PID, fonctions de transfert, intégrateurs, sources et afficheurs. Gratuit dans le navigateur.
Advanced
Le bloc BatterySocEkf estime l'état de charge (State of Charge, SOC) d'une cellule de batterie à partir des deux mesures physiques réelles dont dispos
Le bloc KalmanFilter estime l'état caché d'un système linéaire à partir d'une mesure bruitée. À chaque pas d'échantillonnage, il prédit l'évolution de
Exécutez du code personnalisé en **JavaScript** ou en **Python** au cœur de la boucle de simulation. Définissez vos propres ports d'entrée et de sorti
Analysis
Le bloc BodePlot effectue une analyse de la réponse fréquentielle (diagramme de Bode) d'un système dynamique linéaire. Il génère et affiche simultaném
Le bloc NyquistPlot visualise la réponse fréquentielle d'un système sous la forme d'un tracé polaire dans le plan complexe. Il représente la partie ré
Connectivity
BronkhorstMFC est un bloc **source** (doté d'une fonction de transmission de consigne) qui lit en direct le débit, la température, la fréquence et les
RemoteSensor est un bloc **source** qui diffuse en continu des données inertielles et de capteurs optionnels depuis un appareil mobile appairé vers la
PhoneController est un bloc **source** qui transforme n'importe quel smartphone en joystick sans fil assorti d'une commande de lacet (yaw) indépendant
Continuous
Fonction de transfert standard d'un système du second ordre : ``` G(s) = ωₙ² / (s² + 2ζωₙs + ωₙ²) ``` Ce bloc modélise les systèmes oscillants amort
Le bloc Derivative calcule la dérivée temporelle numérique (le taux de variation) d'un signal d'entrée à l'aide de la méthode des différences finies a
Le bloc Integrator calcule l'intégrale temporelle (la somme accumulée) d'un signal d'entrée. Il s'agit de l'opération inverse du bloc Derivative, indi
Compensateur à avance-retard de phase avec fonction de transfert G(s) = (τ₁s + 1) / (τ₂s + 1). Lorsque τ₁ > τ₂, il agit comme un réseau à avance de ph
Le bloc PIDController implémente un régulateur Proportionnel-Intégral-Dérivé standard pour les systèmes d'asservissement en boucle fermée (commande pa
Le bloc **StateSpace** (représentation d'état) implémente un système dynamique linéaire continu invariant dans le temps (LTI) multivariable décrit par
Le bloc TransferFunction (fonction de transfert) modélise des systèmes dynamiques continus linéaires invariants dans le temps (LTI) formulés dans le d
Le bloc **ZeroPole** représente une fonction de transfert à l'aide de ses pôles et zéros : ``` H(s) = K · (s - z₁)(s - z₂)...(s - zₘ) / (s - p₁)(s -
Discontinuous
Modélise le jeu mécanique (backlash / hystérésis de position). La sortie reste constante tant que l'entrée ne s'écarte pas de plus de la moitié de la
Le bloc DeadZone (zone morte) implémente une non-linéarité à zone neutre. Lorsque le signal d'entrée se situe à l'intérieur de la bande configurée, la
Arrondit le signal d'entrée au multiple le plus proche d'un intervalle spécifié, produisant un signal de sortie en escalier. Modélise la résolution d'
Limite la vitesse de variation (vitesse de balayage ou slew rate) du signal de sortie. La sortie suit l'entrée mais ne peut varier plus vite que les v
Le bloc Relay (relais à hystérésis / trigger de Schmitt) bascule entre deux valeurs de sortie fixes (`onValue` et `offValue`). Le relais s'active dès
Le bloc Saturation (écrêteur / limiteur) contraint le signal d'entrée entre une limite inférieure et une limite supérieure configurables. Ce bloc est
Discrete
Le bloc `DigitalFilter` est un outil de traitement du signal de haute précision conçu pour filtrer des signaux en temps discret au cours d'une simulat
Intégrateur à temps discret qui accumule le signal d'entrée au fil du temps. Équivaut à une somme glissante pondérée par la période d'échantillonnage.
Calcule la dérivée à temps discret (différence arrière) du signal d'entrée. Produit une valeur nulle au premier échantillon.
Le bloc Discrete State-Space implémente un système linéaire en représentation d'état à temps discret. À chaque instant d'échantillonnage, il fait évol
Implémente une fonction de transfert en temps discret H(z) = B(z)/A(z) en utilisant la structure de forme directe II transposée (Direct Form II Transp
Bloc bloqueur échantillonneur (Sample-and-Hold) qui échantillonne l'entrée à intervalles réguliers et maintient ou interpole la valeur entre deux pas
Retarde le signal d'entrée d'exactement une période d'échantillonnage (opérateur z⁻¹). Il s'agit du composant de base indispensable pour les systèmes
Dynamics
Le bloc Delay introduit un retard temporel fixe (retard pur / temps de transport) sur le signal d'entrée. Cela permet de modéliser les délais de commu
Le bloc InputShaper élimine les oscillations résiduelles et le balancement lors des mouvements de positionnement rapides. Lorsqu'un pont roulant dépla
Le prédicteur de Smith compense le temps mort (retard pur de transport) — le délai inévitable entre l'application d'une consigne et l'apparition de se
Layout
Le bloc Area sert de zone de regroupement visuel sur le canevas. Il vous permet d'organiser logiquement les blocs et d'appliquer une couleur d'arrière
Le bloc Text Note est un outil d'annotation textuelle sans cadre permettant d'ajouter des commentaires, des explications ou des libellés directement s
Logic
Le bloc Comparator compare un signal d'entrée à une valeur de seuil et produit un résultat binaire : **1** (vrai) si la condition de comparaison est v
Détecte les transitions (fronts) sur le signal d'entrée. Peut détecter les fronts montants (le signal dépasse le seuil vers le haut), les fronts desce
Vérifie si le signal d'entrée se situe à l'intérieur d'un intervalle défini. Émet par défaut 1 si la valeur se trouve dans l'intervalle, et 0 dans le
Le bloc **LogicGate** (porte logique) regroupe 4 opérations booléennes fondamentales au sein d'un composant unique et polyvalent : - **AND (ET)** : T
Le bloc Switch aiguille entre deux signaux de données en fonction d'un signal de commande (sélecteur). Lorsque le signal de commande satisfait le crit
Math
Le bloc 2-D Lookup Table fait correspondre deux valeurs d'entrée (x, y) à une valeur de sortie au moyen d'une interpolation bilinéaire sur une grille
Le bloc Absolute Value (valeur absolue / redresseur) calcule la magnitude $|u(t)|$ du signal d'entrée. La sortie est toujours non négative ($\ge 0$),
Le bloc Divide effectue la division algébrique de deux signaux d'entrée : le numérateur et le dénominateur. Ce bloc intègre un mécanisme de protection
Le bloc Gain multiplie son signal d'entrée par un facteur de gain constant ($K$). C'est l'un des composants fondamentaux et les plus couramment utilis
Le bloc HillEquation implémente le modèle sigmoïde $E_{\text{max}}$ de la pharmacodynamie : il convertit la concentration d'un médicament au site d'ac
Table de recherche 1D (Lookup Table) avec interpolation linéaire. Fait correspondre des valeurs d'entrée à des valeurs de sortie à l'aide d'un ensembl
Le bloc MathFunction applique une fonction mathématique sélectionnable au signal d'entrée. Il prend en charge les fonctions exponentielles ($e^x$), le
Fournit en sortie le minimum ou le maximum de tous les signaux d'entrée connectés. Utile pour la sélection de signaux, la logique de protection et la
Le bloc Product multiplie plusieurs signaux d'entrée entre eux pour produire leur produit algébrique en sortie. Il s'agit d'une opération mathématique
Le bloc SquareRoot calcule la racine n-ième du signal d'entrée. Bien que nommé SquareRoot pour l'usage courant (où n=2), il s'agit d'un bloc de calcul
Le bloc Subtraction effectue une soustraction algébrique de deux signaux d'entrée : sortie = plus - minus. Cela fournit une alternative explicite et i
Le bloc Sum additionne plusieurs signaux d'entrée et fournit leur somme algébrique en sortie. C'est l'une des opérations mathématiques les plus fondam
Le bloc **Trigonometric** fournit 7 fonctions trigonométriques dans un unique bloc configurable : - **sin(x)** - Sinus - **cos(x)** - Cosinus - **tan
Signal Routing
Le bloc Demux (Démultiplexeur / Fan-out / Distributeur de signal) duplique un signal d'entrée unique vers plusieurs sorties parallèles. Chaque port de
Reçoit un signal sans fil depuis un bloc Goto correspondant. Utilisez des paires Goto/From pour créer des connexions virtuelles réduisant l'encombreme
Transmet un signal sans fil aux blocs From correspondants. Utilisez des paires Goto/From pour créer des connexions virtuelles afin de désencombrer le
Le bloc Mux (Multiplexeur / Combinateur de signaux) regroupe plusieurs signaux d'entrée scalaires en une seule sortie. La valeur de sortie correspond
Sélectionne l'un des multiples signaux d'entrée en fonction d'une valeur d'index.
Sinks
Le bloc **FFT Scope** affiche le spectre de fréquence d'un ou plusieurs signaux en utilisant la transformée de Fourier rapide (FFT). C'est un bloc pui
Le bloc Gauge affiche un cadran semi-circulaire analogique avec une aiguille rotative, indiquant la valeur instantanée du signal connecté par rapport
Le bloc Histogram accumule les valeurs scalaires entrantes au cours de la simulation et affiche leur distribution de fréquence sous la forme d'un hist
Le bloc NumericDisplay fournit un affichage numérique de style LCD pour visualiser en temps réel les valeurs numériques de votre simulation. Il lit la
Le bloc ScatterPlot trace des paires de valeurs scalaires sous forme de points individuels dans un plan bidimensionnel. À chaque pas de simulation, le
Le bloc uPlotDisplay est un traceur de signaux interactif ultra-rapide conçu pour la visualisation en temps réel directement sur le schéma-bloc. Basé
Le bloc XYPlot trace deux signaux scalaires en temps réel l'un par rapport à l'autre dans une vue de plan de phase, en conservant un nombre configurab
Sources
Délivre le temps courant de simulation sous la forme d'un signal. Essentiel pour concevoir des systèmes dépendants du temps, exploiter des tables d'in
Le bloc Constant est une source de signal fondamentale qui fournit une valeur de sortie numérique stable pendant toute la simulation. Il n'a pas de po
Manette 2 axes (joystick) interactive. Déplacez le curseur central — y compris **pendant l'exécution de la simulation** — et les deux sorties suivent
Source d'entrée clavier interactive. Cliquez sur le bloc pour l'**activer**, puis pilotez à l'aide des touches fléchées ou ZQSD / WASD — y compris pen
Le bloc PulseGenerator génère des trains d'impulsions rectangulaires périodiques avec des paramètres configurables avec précision. Le signal alterne e
Le bloc Ramp génère un signal en rampe linéaire qui débute à un instant configuré et croît (ou décroît) à un taux de variation constant (pente). Ce bl
Génère des nombres pseudo-aléatoires à l'aide d'un PRNG déterministe (xorshift64). Prend en charge les lois uniforme et gaussienne (normale). Une grai
Le bloc SignalGenerator est une source de signaux polyvalente capable de générer diverses formes d'ondes périodiques dépendantes du temps pour la simu
Curseur interactif directement intégré sur le canevas. Déplacez le curseur — y compris **pendant l'exécution de la simulation** — et le signal de sort
Le bloc Step génère un signal en échelon (réponse indicielle) qui passe brusquement d'une valeur initiale à une valeur finale à un instant précis. Ce
Subsystems
Le bloc **InPort** (port d'entrée) définit une **interface d'entrée** pour un sous-système (Subsystem). Il reçoit des valeurs extérieures au sous-syst
Le bloc **OutPort** (port de sortie) définit une **interface de sortie** pour un sous-système (Subsystem). Il reçoit des valeurs des blocs internes et
Le bloc Subsystem (sous-système) crée une **encapsulation hiérarchique** de blocs, vous permettant de regrouper une logique de contrôle complexe en un