You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
5.2. Architecture du simulateur 75<br />
LagrangianDynamics : Les fonctions concernant les contacts sont rassemblées dans ce<br />
dossier. Elles concernent la détection des contacts [ContactEventDetection] et leur<br />
gestion [ContactEventHandling] qui font appel à d’autres fonctions relatives à la<br />
géométrie de l’environnement et à la gestion des impacts. La routine principale [LagrangianDynamics]<br />
est celle qui calcule les accélérations généralisées en fonction des<br />
variables d’état (positions et vitesses généralisées), des couples actionneurs et de<br />
l’état des contacts.<br />
ActuationModel : Ce module est relatif à la commande. Selon la même organisation<br />
que le module précédent, les fonctions concernent la détection d’événements relatifs<br />
aux actionneurs [ActuationEventDetection] et leur gestion [ActuationEventHandling].<br />
Selon le modèle, le vecteur commande va contenir un voltage pour chacun des<br />
moteurs du robot ou des impulsions et autres informations sur le niveau d’excitation<br />
musculaire. Lors des simulations du mouvement humain sans intégration de la<br />
commande musculaire, l’état des actionneurs est un vecteur vide tout au long de la<br />
simulation. La fonction principale est [ActuationDynamics]. A partir des variables<br />
d’état et de l’état des actionneurs, elle calcule les couples articulaires nécessaires à<br />
la réalisation d’une commande.<br />
A chaque regroupement de fonctions sont associées une fonction de chargement [load]<br />
et, le plus souvent, des définitions [SomeDefinitions]. Des variables utilisables dans toutes<br />
les fonctions sont alors chargées tout comme les fonctions désirées. Sont ainsi définies des<br />
grandeurs comme les butées articulaires, les tensions électriques maximales, ou toute autre<br />
information utile à la représentation graphique et à l’annonciation des événements. Le<br />
script de chaque mouvement simulé se limite à l’appel des fonctions [load], à la génération<br />
des trajectoires désirées puis à l’appel de la fonction de simulation. Après la simulation, les<br />
forces de contact peuvent être calculées. Les paramètres sont enfin illustrés par des courbes<br />
et une animation représente la cinématique du mouvement avec les forces extérieures.