• Aucun résultat trouvé

Dans cette section nous d´ecrivons le formalisme unifi´e que nous utilisons pour g´erer, au sein de la mˆeme simulation, les diff´erentes contraintes qui nous int´eressent. Nous pr´esentons ici les familles de contraintes `a partir desquelles nous d´eclinerons toutes celles que nous utiliserons dans nos simulations. Nous reviendrons plus en d´etail sur chaque type de contrainte dans la suite pour pr´esenter leur r´esolution ainsi que leurs applications, mais nous voulons montrer ici que toutes ces contraintes partagent un ensemble commun de param`etres.

Ces param`etres sont les suivants :

– la dimension de la contrainte : nous introduisons un peu abusivement ce terme dans ce travail pour d´ecrire le nombre de degr´es de libert´e concern´es par la contrainte. – la ou les directions de la contrainte.

– les violations de la contrainte suivant chacune des directions.

– la loi de la contrainte, qui donne le comportement, issu des lois physiques, que l’on cherche `a faire appliquer par la contrainte.

Nous d´etaillons rapidement dans cette section chaque type de contrainte et montrons qu’elles peuvent toutes ˆetre enti`erement d´efinies en sp´ecifiant leur loi, dimension, direction(s) et violation(s).

3.2.1 Contraintes bilat´erales

Les contraintes bilat´erales sont souvent utilis´ees pour simuler les points fixes ou les arti-culations. Elles peuvent ˆetre exprim´ees en projetant la contrainte suivant des direction pr´ed´ e-finies (en utilisant la technique de la r´eduction de coordonn´ees) : pour chaque dimension, le mouvement est contraint selon une direction sp´ecifique. En fonction du nombre de dimensions de la contrainte et du nombre de degr´es de libert´e des nœuds, des applications vari´ees peuvent ˆ

etre cr´e´ees.

Ainsi, une contrainte bilat´erale de dimension 1 pourra repr´esenter un point contraint `a se d´eplacer sur un plan. En effet, on empˆeche tout mouvement de l’objet suivant la normale `a ce plan, tout en laissant libre les d´eplacements tangents au plan. Une contrainte de dimension 2 correspond `a l’assemblage de deux contraintes de dimension 1, chacune limitant le d´eplacement `

`

a l’intersection des deux plans, c’est `a dire une ligne. Enfin, un objet peut ˆetre contraint `a un point fixe dans l’espace ou sur un autre objet grˆace `a l’utilisation d’une contrainte de dimension 3. On peut envisager de cr´eer des contraintes de dimensions sup´erieures, mais dont l’usage est moins courant. On peut n´eanmoins citer la contrainte de dimension 6 qui consiste `a contraindre un objet rigide `a la fois en position et en rotation. Des exemples de ces diff´erentes contraintes sont pr´esent´es dans la section3.5.

Figure 3.1 – Les contraintes bilat´erales peuvent utiliser plusieurs directions selon l’application d´esir´ee. Pour un point fixe en 2D, n’importe quelle combinaison de deux vecteurs orthogonaux est valide.

Pour d´efinir une contrainte bilat´erale, nous devons en premier lieu choisir sa dimension. Pour chaque degr´e de libert´e d’un nœud que nous voulons contraindre, il faudra pr´eciser une direction (voir figure 3.1). Dans le cas particulier o`u l’ensemble des degr´es de libert´e d’un nœud sont contraints, nous pouvons utiliser le rep`ere orthonorm´e de l’espace pour d´efinir la contrainte. En plus de cela, pour chaque dimension la violation δ doit ˆetre calcul´ee. Elle est associ´ee `a un vecteur dans la direction de la contrainte, orient´e de tel fa¸con que, si on la consid`ere comme une force, elle tend `a v´erifier la contrainte. De fa¸con g´en´erale, δ est la distance entre les deux objets avant la r´esolution du syst`eme, et qui doit id´ealement ˆetre nulle apr`es la r´esolution de ce pas de temps.

3.2.2 Contraintes unilat´erales

Les contraintes unilat´erales peuvent sembler au premier abord plus simple puiqu’elles ne font intervenir qu’une seule dimension (voir figure 3.2), mais la loi qui r´egit leur comporte-ment est non lisse. Elles sont utilis´ees le plus souvent pour la r´eponse `a la collision, car leur comportement signifie que l’interp´en´etration de deux objets sera corrig´ee lors de la r´esolution de la contrainte, mais la force entre les deux objets ne peut pas ˆetre attractive. On peut ainsi parfaitement mod´eliser des contacts sans frottement.

Une diff´erence marquante par rapport aux contraintes bilat´erales est le fait que pour ces contraintes unilat´erales le signe de la violation est d’une importance majeure pour la r´esolution. En effet, il dicte si la contrainte est effectivement active ou non. Ainsi, r´esoudre une contrainte simple de contact lorsque la violation est n´egative est ´equivalent `a la r´esolution

Figure 3.2 – Les contraintes unilat´erales d´efinissent une direction n perpendiculaire `a la surface de contact.

d’une contrainte bilat´erale. Une violation positive signifie que les deux objets ne sont plus en contact, et la force calcul´ee durant la r´esolution doit alors ˆetre nulle. Lors de la r´esolution des contraintes, le couplage m´ecanique existant entre celles-ci compliquera le probl`eme, puisque la r´esolution d’une contrainte peut modifier le signe de la violation d’une seconde.

3.2.3 Contraintes de frottement

Les contraintes de frottement sont rarement utilis´ees seules, car elles apportent le compor-tement dissipatif suivant les directions tangentielles aux contraintes bilat´erales ou unilat´erales auxquelles elles sont combin´ees. On peut vouloir introduire du frottement d`es lors que l’on mod´elise le d´eplacement d’un objet en contact avec un autre, que ce soit un point glissant le long d’une courbe ou le contact frottant entre les objets. Ajouter du frottement n´ecessite de connaˆıtre la valeur de la force suivant la direction normale, le plus souvant la ou les directions de la contrainte bilat´erale ou unilat´erale qui est associ´ee avec cette contrainte de frottement (voir figure 3.3).

Figure 3.3 – Les contraintes de frottement utilisent, dans le cas des contraintes de contact, la normale n et les directions t tangentielles `a la surface de contact.

Pour mod´eliser le frottement, nous proposons d’utiliser la loi de frottement de Coulomb (voir figure3.4). Celle-ci dicte que lorsque les forces de r´eponse dans les directions tangetielles fT~ sont plus basses que la force normale f~n multipli´ee par le coefficient de frottement µ, les deux objets sont en adh´erence et que le d´eplacement tangentiel δT~ est ainsi nul (on l’appelle le frottement statique). Dans le cas contraint, les objets glissent l’un contre l’autre (δT~ 6= ~0), et les forces de r´eponse sont r´eduites `a un comportement dissipatif fT~ = −µ ||f~n|| ~T (c’est le frottement dynamique). Puisque nous utilisons un mod`ele de Coulomb int´egr´e, nous travaillons en d´eplacement et non en vitesse.

Figure 3.4 – Repr´esentation de la loi de frottement de Coulomb. La force de r´eaction est strictement `a l’int´erieur du cˆone de frottement lorsque les objets sont en adh´erence, et est sur la bordure du cˆone lorsqu’ils sont en glissement.