Catia - contraindre le sens d'une liaison cylindre


Bonjour

je pête un plomb depuis 2 jours.
j'ai créé un hexapod (appelé aussi "stewart Platform" par nos amis anglais) sus catia. je suis passé par DMU kinematic pour animer l'ensemble.
pour que le tout soit le plus polyvalent possible, j'ai un petit groupe de paramètre qui définissent
- l'écartement de deux vérins en bas
- l'écartement de deux vérins en haut
- la taille du vérin
- son épaisseur
- l'angle séparant le second couple de verin du premier en bas
- l'angle séparant le troisieme couple de verin du premier en bas
- l'angle séparant le second couple de verin du premier en haut
- l'angle séparant le troisieme couple de verin du premier en haut

un jeu de contraintes assez complexe me permet de mettre à jour l'ensemble de la géométrie et me permet de faire des hexapod plus ou moins gros, ramassé, voir carrément basé sur des géométrie ni ronde ni triangulaire si ca m'amuse.

a priori, tout fonctionne.
j'ai un cat part en haut et en bas, indépendant, appelé "plateau" (haut et bas), sur lesquels il y a 6 trous dont la position dépends des paramètres sus cité.
6 petits cylindre en haut et en bas ont des contraintes qui les bloquent à l'interieur des alésages.
pour ceux d'en haut, c'est un couple de contrainte : les cylindre sont à la fois "rigide" par rapport a l'ensemble du plateau et conformé en avec un "cylindric joint" avec le trou. étonnament, cela marche très bien.
autre étonnement, en bas, en revanche, vouloir faire un tel système provoque systématiquement une erreure "trop de contrainte". j'ai donc défini en bas un "revolute joint" qui bloque ainsi le déplacement du cylindre dans le trou. l'angle est défini comme "commandable", et je dois évidement ne pas toucher la commande. c'est moche, mais la encore, cela marche parfaitement. je pense que l'utilisation de la meme astuce qu'en haut ne marche pas car mes cylindre ont peut etre été dessiné par mégarde avec des liens dans les squetch, et je n'ai guère le temps ni même le besoin de corriger cela.
le corps de verrin et son tube sont chacun attaché a leur chape avec des joint rigide.
les chappes fonctionnent avec des "revolute" sans commande attaché
enfin, le corps du verin et son tube sont attaché l'un a l'autre par un "cylindrique joint" <===== C'EST LA QUE J'AI UN SOUCIS
pour conclure la description, j'ai un "bras" 6 axe, caché, attaché au plateau haut par un rigid joint, sur lesquels sont attaché les commandes de déplacement de l'hexapod. le plateau bas est ancré, la base de mon bras caché, a l'opposé, est attaché au plateau bas par un joint rigide.
tout marche au poil

sauf que quand j'essaye de mettre à jour des paramètres, cela m'oblige a actualiser à deux endroits, compte tenu de la complexité des liens :
d'une part, je dois actualiser dans "assembly design", et cela ne pose généralement aucun soucis, tant que je met pas des parametre absurde évidement.
ensuite, pour re-rendre le tout animable, je dois aussi faire une actualisation dans "DMU kinematic".
et la, systématiquement, j'ai le plaisir de constater que mes joints cylindriques ne suffisent pas à bloquer les verrins

au terme de l'actualisation, au lieu d'etre le verin DANS le tube
ils partent à l'opposé l'un de l'autre. ce qui, effectivement, est une solution qui n'entre pas en contradiction avec aucune de mes autres règles !
hormis évidement que ca clash totalement, mais ca, catia s'en fou.

je ne vois plus quoi faire pour regler le soucis. je ne vois pas quel contrainte je pourrais ajouter pour regler le probleme.
si je met une contrainte d'offset de deux surface (par exemple sur mes deux chappes haute et basse), cela bloque le verins, donc tout le dispositif.
si je met une contrainte d'angle, il ne fait pas de différence de "sens", entre 0° et 180°, et j'obtiens donc le même résultat.
je sèche totalement. cela fou une m**** pas possible dans mon modele sans que j'entrevois pour l'heure la moindre solution

des idées ?

j'ai aussi assigné des valeurs limite (-60° a +60°) à mes jonctions "revolute" de mes chappes pour (en théorie) les contraindre à ne pas pouvoir se "retourner". mais en fait, faut croire que si cela marche quand on l'anime sans actualiser (les chappes "bloquent" bien), quand il faut réactualiser, comme il semble partir de 0, il n'a plus de référence pour limiter ces bornes. les + - 60° marchant tout aussi bien dans l'autre sens, il retourne encore et toujours tout.

il en va de meme pour presque toute les sur-contrainte que j'ai pu envisager : in fine, rien ne leur interdit de fonctionner aussi bien "normalement" qu'ainsi complètement à l'envers.

je sèche, je tourne en rond avec mon hexapod transformé en deux charmante arraignée. et évidement, le taf avance pas :)

a mon stade, je prends toute bonne idée : j'espère que en vous trouverez (des idées), parce que moi, je craque complètement et deux jours a passer sur ce petit truc moisi commence a sacrément agresser mes nerfs !

cordialement.

personne n'a d'idée, dans DMU kinematic, pour remplacer ou ajouter des liaison sur mes deux sous ensemble de vérins pour éviter que cela ne se transforme en œuvre de picasso ?

je suis réellement coincé ? c'est quand meme un résultat tout ce qu'il y a de plus stupide, il doit bien exister une solution pour conformer ces deux elements ensemble que je ne connais pas ?

dans l'attente d'une réponse, amis spécialiste de catia, je vous salue :)

cordialement

Bonjour

 Je ne connais pas CATIA mais vu ce que vous décrivez on se demande pourquoi est-ce si compliqué.

Un hexapode c'est bête comme choux d'un point de vue mécanique des rotules à chaque bout et des  6 vérins qui sont bloqués en axial par la vis sans fin ce qui assure la non réversibilité en cas de coupure de courant (sauf pour les piezo évidemment et les moteurs linéaires dépourvus de vis). Donc du point de vue simulation une fois que l'on à faite les rotules (type cardan si l'on cherche la précision) ou rotule sphérique.

Après ce qui se corse un peu c'est le pilotage des moteurs, mais avec un simple fichier excel on s'en sort très bien. Le but de la simulation n'est pas de générer un fichier de pilotage à destination du vrai hexapod. mais de voir si tous les mouvements souhaité pourront être exécutés dont les principaux  soucis sont les collisions et la présentation correcte de la pièce ou de l'outil sur le plateau supérieur.

La question que je me pose c'est : est-ce que votre problème n'est pas avant tout mécanique.

Faites des pièces mécaniques et après le pilotage uniquement en axial de chaque vérin devient nettement plus simple. dans les faits (mais ça vous le savez :-)  )c'est :
- ou est le centre du plateau supérieur, ou la référence géométrique qui en fait office.
- à quelle distance le plateau supérieur est par rapport au plateau inférieur
- qu'elle est l'inclinaison du plateau supérieur à tout moment dans une référentiel sphérique.

Cordialement

Bonjour

merci pour ta réponse :)

bah précisément : ce que je décrit n'est pas si compliqué. le soucis est seulement que décrire avec des mots quelque chose de ce type rend vite le truc un peu indigeste, j'en suis désolé.

la complexité éventuelle est lié au fait que la maquette est paramétrique : je peux "jouer" sur l'apparence de l'hexapod, écarter les verins, les grossir....

coté mécanique, mon système est encore plus simple que celui que tu donne : en effet, mon hexapod n'est pas la pour "verrifier" quoi que ce soit. il sert seulement de principe démonstratif visuel. l'interieur de mon verrin est donc totalement vide. il n'y a pas de vis, pas de moteur, rien. j'ai donc mécaniquement et en terme de contrainte quelque chose d'assez simple. et nul besoin d'Excel.

le dernier système un peu "complexe" est que j'ai caché une structure attaché au plateau haut pour bouger celui ci dans l'espace X, Y, Z, rX, rY, rZ. le but est de laisser a DMU kinematic le soin de déplacer les verrins fonction de la postion du plateau haut.

 

mon soucis est celui exprimé, et il est indépendant de la compléxité relative de mon système : une jonction cylindrique n'est pas contrainte en sens et autorise ainsi les verrins à s'éclater en deux comme sur mon image, sans cela ne rentre en contradiction avec aucune de mes règle. les cardan haut et bas ne posent aucun soucis et fonctionnent parfaitement bien.

j'en arrive donc a : comment faire ?

Bonjour

Je n'ai pas KIN et la dernière fois que je l'ai vue cela date.

Je me rappel d'une liaison "Point sur courbe" dans mes souvenir, le point ne pouvait pas ce déplacer en dehors de la courbe cela pourrait peut être résoudre le PB de courses des vérins ?

2 « J'aime »

oooooh si ca dépasse pas de la courbe, clairement, ca peu etre "the" solution !!!! faut que je check ca fissa !

merci :)

bah en fait .... non.

lorsque j'essaye de faire ca, il me dit que je suis sur-contraint a cause de la liaison cylindre

quand je supprime la liaison cylindre, pourtant, cela ne suffit visiblement plus a simuler le comportement, DMU kin m'envois bouler.

j'ai toujours pas résolu la question de la mise a jour : a chaque mise a jour de KIN, j'arrive au résultat sus-présenté. mais j'ai trouvé une astuce dans assembly pour mettre a jour la structure de telle sorte que KIN ne m'en"kin kin" plus a vouloir une MAJ en plus de son coté.

du coup, c'est de la triche, mais j'arrive au moins a faire ce que je veux. mais le problème persiste quand meme. je laisse le sujet ouvert car si j'arrivais a produire un product qui necessite pas de suivre une checklist de pilote pour fonctionner, ca serait quand meme bien mieux :)

cordialement.