BlockWerk Documentation
🧊

3D Gimbal

Visualization

Le bloc 3D Gimbal restitue une visualisation WebGL en temps réel de trois anneaux d'une suspension à la Cardan (gimbal) imbriqués, réagissant en direct aux signaux d'entrée de Roulis (Roll), Tangage (Pitch) et Lacet (Yaw). L'anneau externe pivote autour de l'axe vertical (lacet/yaw), l'anneau intermédiaire bascule d'avant en arrière (tangage/pitch), et l'anneau interne tourne autour de l'axe longitudinal (roulis/roll). Un noyau néon pulsant au centre sert de repère visuel pour le repère lié au corps mobile. Les angles d'entrée sont exprimés en degrés.

Ce bloc est un pur puits de visualisation (sink) — il n'a aucun port de sortie et n'influence pas le solveur numérique de la simulation. Utilisez-le pour obtenir un retour spatial intuitif lors de la simulation de dynamiques d'attitude, de systèmes de commandes de vol, d'articulations robotiques ou de tout dispositif dont l'orientation 3D doit être appréciée d'un coup d'œil. Il s'exécute à la fréquence d'affichage de l'animation graphique du navigateur, indépendamment du pas de temps de calcul.

Simuler dans BlockWerk

Bac à sable interactif directement dans votre navigateur — aucune installation, moteur WebAssembly.

Simuler dans BlockWerk →

Entrées & Sorties

Direction ID Label Type Status
→ In roll Roll number Required
→ In pitch Pitch number Required
→ In yaw Yaw number Required

Exemples d'Utilisation

Visualiser l'attitude d'un aéronef issue d'un modèle de mécanique du vol

FlightModel → [roll]  ─┐
FlightModel → [pitch] ─┤ Gimbal3D
FlightModel → [yaw]   ─┘

Surveiller une rotation sur un seul axe (roulis uniquement)

SineWave → [roll]  ─┐
Constant(0) → [pitch]─┤ Gimbal3D
Constant(0) → [yaw] ─┘

Laissez les ports inutilisés non connectés ; ils adoptent par défaut une rotation nulle.

Test d'intégration d'une centrale inertielle (IMU)

Gyro_X → Integrator → [roll]  ─┐
Gyro_Y → Integrator → [pitch] ─┤ Gimbal3D
Gyro_Z → Integrator → [yaw]   ─┘

Remarques & Bonnes Pratiques

  • Unités angulaires : Les trois entrées sont interprétées en degrés. Multipliez par 180/π (≈ 57.296) si votre source de signal produit des radians.
  • Convention de rotation : Le lacet fait tourner l'anneau extérieur autour de Z, le tangage incline l'anneau central autour de X, et le roulis fait tourner l'anneau intérieur autour de Y. Cela correspond à une séquence d'Euler ZXY aéronautique appliquée successivement le long de la chaîne cardanique.
  • Bloc puits (sink) : Le bloc ne produit aucun signal de sortie. Il ne peut pas être employé comme étape intermédiaire dans une chaîne de traitement.
  • Rendu graphique : Le bloc s'appuie sur Three.js avec WebGL. Les performances dépendent de la surface du bloc sur le canevas ; de très grandes dimensions peuvent solliciter davantage le processeur graphique (GPU).
  • Ports non connectés : Tout port non raccordé est traité comme une rotation de zéro degré. Ne connectez que les axes pertinents ; les autres anneaux demeurent dans leur position neutre.
  • Dimensions par défaut : La taille initiale du bloc est de 250×250 px. Vous pouvez le redimensionner à convenance sur le canevas.

Composants Associés

  • uPlotDisplay : Tracez les signaux bruts de roulis, tangage et lacet sous forme de courbes temporelles en regard de la vue 3D pour une lecture chiffrée précise.
  • Display : Affiche la valeur numérique d'un angle individuel lorsqu'une vue 3D intégrale n'est pas nécessaire.
  • Integrator : Intègre les vitesses angulaires gyroscopiques pour générer les angles d'attitude injectés dans ce bloc.