Catia - constrain the direction of a cylinder connection


Hello

I've been freaking out for 2 days.
I created a hexapod (also called "Stewart Platform" by our English friends) on top of catia. I went through DMU kinematic to animate the whole thing.
To make it as versatile as possible, I have a small group of parameters that define
- the spacing of two cylinders at the bottom
- the spacing of two cylinders at the top
- the size of the cylinder
- its thickness
- the angle separating the second pair of cylinders from the first at the bottom
- the angle separating the third pair of cylinders from the first at the bottom
- the angle separating the second pair of cylinders from the first at the top
- the angle separating the third pair of cylinders from the first at the top

A rather complex set of constraints allows me to update the whole geometry and allows me to make hexapods more or less big, compact, or even based on geometry that is neither round nor triangular if I have fun.

A priori, everything works.
I have a cat part at the top and bottom, independent, called "plateau" (top and bottom), on which there are 6 holes whose position depends on the above parameters.
6 small cylinders at the top and bottom have stresses that lock them inside the bores.
For those at the top, it's a stress torque: the cylinders are both "rigid" in relation to the whole platter and conformed with a "cylindric jointed" with the hole. Surprisingly, it works very well.
Another surprise, at the bottom, on the other hand, wanting to make such a system systematically causes a mistake "too much constraint". So I defined at the bottom a "revolute joint" which blocks the displacement of the cylinder in the hole. The angle is set as "controllable", and I obviously have to not touch the control. It's ugly, but again, it works perfectly. I think that using the same trick as above doesn't work because my cylinders may have been drawn by mistake with links in the squetches, and I hardly have the time or even the need to correct this.
The body of the cylinder and its tube are each attached to their clevis with rigid joints.
The clevis work with "revolute" without control attached
finally, the body of the cylinder and its tube are attached to each other by a "cylindrical joint" <===== THIS IS WHERE I HAVE A PROBLEM
To conclude the description, I have a 6-axis "arm", hidden, attached to the top platter by a rigid joint, on which the hexapod movement controls are attached. The low deck is anchored, the base of my hidden arm, on the other hand, is attached to the bottom deck by a rigid joint.
everything works well

Except that when I try to update settings, it forces me to refresh in two places, given the complexity of the links:
On the one hand, I have to update in "Assembly Design", and this is usually not a problem, as long as I don't put absurd parameters of course.
then, to make everything animable, I also have to do a refresh in "DMU kinematic".
And there, systematically, I have the pleasure of noting that my cylindrical joints are not enough to block the verrins

at the end of the update, instead of being the jack IN the tube
they start opposite each other. which, indeed, is a solution that does not contradict any of my other rules!
Except of course that it totally clashes, but that, Catia doesn't care.

I don't see what to do to solve the problem. I don't see what constraint I could add to solve the problem.
If I put an offset constraint of two surfaces (for example on my two top and bottom screeds), it blocks the cylinders, and therefore the whole device.
If I put an angle constraint, it doesn't make a difference in "direction", between 0° and 180°, and I therefore get the same result.
I am totally dry. This is a s**** not possible in my model without me seeing for the moment the slightest solution

Any ideas?

I also assigned limit values (-60° to +60°) to my "revolute" junctions of my screeds to (in theory) force them not to be able to "turn around". But in fact, I guess that if it works when you animate it without updating (the chappes "block" well), when you have to refresh, as it seems to start from 0, it no longer has a reference to limit these limits. The + - 60° works just as well in the other direction, so it turns everything over and over again.

The same goes for almost all the over-constraints that I have been able to consider: in the end, nothing prevents them from functioning as well "normally" as thus completely upside down.

I dry, I go around in circles with my hexapod transformed into two charming arraignée. And obviously, the work is not moving forward:)

At my stage, I'm taking any good idea: I hope that you will find (ideas), because I'm completely cracking and two days of spending on this little moldy thing is starting to attack my nerves!

Kind regards.

Does anyone have an idea, in DMU kinematic, to replace or add links on my two sub-assemblies of cylinders to prevent it from turning into a Picasso work?

Am I really stuck ? It's still a very stupid result, there must be a solution to conform these two elements together that I don't know?

While waiting for an answer, friends CATIA specialist, I salute you:)

Kind regards

Hello

 I don't know CATIA but given what you describe, one wonders why it's so complicated.

A hexapod is as stupid as hell from a mechanical point of view, the ball joints at each end and the  6 cylinders that are blocked in the axis by the worm screw, which ensures non-reversibility in the event of a power cut (except for piezo obviously and linear motors without screws). So from a simulation point of view, once you have made the ball joints (cardan type if you are looking for precision) or spherical ball joints.

After that, what gets a little tricky is the control of the engines, but with a simple excel file you can do very well. The purpose of the simulation is not to generate a control file for the real hexapod. but to see if all the desired movements can be executed, whose main  concerns are collisions and the correct presentation of the part or tool on the upper plate.

The question I ask myself is: isn 't your problem primarily mechanical?

Making mechanical parts and then the only axial control of each cylinder becomes much simpler. in fact (but you know that :-)  )it's:
- or is the center of the upper plate, or the geometric reference that serves as it.
- how far the top tray is from the bottom tray
- that it is the inclination of the upper plate at any time in a spherical frame of reference.

Kind regards

Hello

thank you for your answer:)

Well, precisely: what I'm describing is not that complicated. The problem is only that describing in words something like this quickly makes the thing a bit indigestible, I'm sorry about that.

The possible complexity is linked to the fact that the model is parametric: I can "play" on the appearance of the hexapod, spread the cylinders, enlarge them....

On the mechanical side, my system is even simpler than the one you give: indeed, my hexapod is not there to "check" anything. it serves only as a visual demonstrative principle. The inside of my verrin is therefore totally empty. There are no screws, no motor, nothing. So I have mechanically and in terms of constraint something quite simple. and no need for Excel.

the last system a little "complex" is that I hid a structure attached to the high platter to move it in the space X, Y, Z, rX, rY, rZ. the goal is to leave it to DMU kinematic to move the verrins according to the position of the high plate.

 

My concern is the one expressed, and it is independent of the relative complexity of my system: a cylindrical junction is not constrained in the direction and thus allows the glasses to burst in two as in my image, otherwise it does not contradict any of my rules. The top and bottom gimbals are no problem and work perfectly well.

So I come to the question: how to do it?

Hello

I don't have KIN and the last time I saw her was there.

I remember a "Point on curve" link in my memory, the point could not move outside the curve it could perhaps solve the PB of cylinder strokes?

2 Likes

oooooh if it doesn't protrude from the curve, clearly, it can be "the" solution!!! I have to check it out!

Thank you:)

well in fact .... No.

When I try to do this, he tells me that I'm over-constrained because of the cylinder connection

when I remove the cylinder connection, however, it is obviously no longer enough to simulate the behavior, DMU kin sends me crazy.

I still haven't solved the question of the update: with each KIN update, I get to the above result. but I found a trick in assembly to update the structure so that KIN doesn't "kin kin" me anymore to want an update on top of his side.

So, it's cheating, but at least I can do what I want. But the problem still persists. I'll leave the subject open because if I could produce a product that doesn't require you to follow a driver checklist to work, it would still be much better:)

Kind regards.