Simple Piston Animation (how to connect it)

Simple Piston Animation (how to connect it)

Hi all,

A wheel turning, driving a piston op and down. How hard can that be?
I'm stuck! Do you know how to get this to work?
The zip file connected to this post is how far I got it going:
- wheel is turning
- rod goes up and down, pointing to the piston
The piston axle should be connected to the upper part of the rod, and the rod driving the piston straight up and down (only up and down, no turning).

Any help would be great.
Thanks,
Giesbert
 

Attachments

  • GN-Simple-Piston-version-A.jas.zip
    20.3 KB · Views: 260
Thanks for the link Frank. I looked at all the examples on all pages of that thread. I thought “yes!” but unfortunately did it not bring a solution. Sometimes the piston is animated instead of driven by the rod… Sometimes it is driven by the rod, in odd ways, with incorrect results. It may look all right, but look at it from the left or right side, in wireframe view, and than you’ll see that the rod is not fix at the one axle it should be on. Instead, the piston is somewhere in the neighborhood, ever changing its position relative to where it should be.

Logic would be to place the piston in the rod, as is the rod in the off-center axle of the wheel. If I could then restrict the motion of the piston, allowing only vertical motions, then it would simply work. But that is simply not possible, or at least; I can’t get it to work. Do you know how to connect the piston to the rod, correctly?

Cheers,
Giesbert
 

Attachments

  • GN-Simple-Piston-version-A.mov.zip
    290.5 KB · Views: 221
From that thread the way to do it is to make the piston a child of the piston axle and put a point constraint tag on the piston axle pointed at the rod.
The point constraint tag should be constrained to the Y axis.
 

Attachments

  • GN-Simple-Piston-version-B.jas.zip
    20.8 KB · Views: 233
In fact it'll work the original way by putting the point constraint on the piston ie. without making the piston a child of the piston axle
 
wobelybobely axle connection

Thanks for your input Kraster. Your solution is similar to the result of the tread mentioned above. It looks all right, but unfortunately it is not exactly right. I made a new version, attached to this reply, a .jas and a movie, placed the camera in the piston so you can see what is going on. Also removed some faces to make it all visible. The axle in the piston and the top of the rod are ..almost connected.
For example the bottom of the rod on to the off-center axle of the wheel, is connected spot on, exactly right, no lose honkaponka at all.
Maybe your solution is right, and is this misbehaved caused by a bug in the Point Constraint-Weight setting. Setting the weight lower makes it wors, causing the piston to drag behind the motion. Maybe the 1.0 setting is actually 0.9?
Could that be the cause of the wobelybobely axle connection?
 

Attachments

  • GN-Simple-Piston-version-C.zip
    235.8 KB · Views: 234
Thanks for your input Kraster. Your solution is similar to the result of the tread mentioned above. It looks all right, but unfortunately it is not exactly right. I made a new version, attached to this reply, a .jas and a movie, placed the camera in the piston so you can see what is going on. Also removed some faces to make it all visible. The axle in the piston and the top of the rod are ..almost connected.
For example the bottom of the rod on to the off-center axle of the wheel, is connected spot on, exactly right, no lose honkaponka at all.
Maybe your solution is right, and is this misbehaved caused by a bug in the Point Constraint-Weight setting. Setting the weight lower makes it wors, causing the piston to drag behind the motion. Maybe the 1.0 setting is actually 0.9?
Could that be the cause of the wobelybobely axle connection?

The trick, I think, is to get the point constraint and the target tags to point at the right axis.
Since the axis of the rod is at the on axle wheel the rotation occurs around this point (which is correct) what's on the other end of the rod needs to rotate around an axis at the other end of the rod.

One possibility is to point to a folder child object so you can move its axis to a different point and point to that.

I did a version with that in mind . I don't know if it's correct. Have a look.

P.S. I don't think the lag is a bug, it says "In animations a mix value smaller than 1 causes a delay of the tracking object" in the manual.
 

Attachments

  • GN-Simple-Piston-version-D.zip
    40.5 KB · Views: 232
Last edited:
… Sometimes it is driven by the rod, in odd ways, with incorrect results. It may look all right, but look at it from the left or right side, in wireframe view, and than you’ll see that the rod is not fix at the one axle it should be on. Instead, the piston is somewhere in the neighborhood, ever changing its position relative to where it should be.
...

I frankly don't see why you say that the solution posted here is incorrect when looking from front or left. During the animation, look at the rod X & Z numbers and you will see that they don't change. Same for the piston !
A screen shot to support what you say would have been helpful. What I think you may see in the preview is induced by the slight misalignment of the rod and the crank. That file was done as a quick demo. Set the value to zero and try again !
On a side note, the rod_end folder and the point constraint tag act as a mechanical link. Maybe virtual but as a real link
 

Attachments

  • Capture d’écran 2014-05-11 à 11.35.30.png
    Capture d’écran 2014-05-11 à 11.35.30.png
    49.7 KB · Views: 306
Success!

Yes! I got it to work. Finally. I was ready to give it up, turning crazy after 3 days of trying. I aligned and double checked everything, copied all of the best examples. The piston moved up and down, but always with a wobelybobely axle connection (as in many of the examples). Today I decided to start fresh, build the whole thing again, because there were some weird position numbers popping up, and because the “Piston (Target-6).zip” file was running correct (showing that it is possible). And now it works perfectly. So it was a combination of the suggested technique, and building a model clean of errors.
So: Frank Beckmann, Kraster, Francois, thank you for your support, and attached to this post is the result.

Giesbert
 

Attachments

  • GN-Simple-Piston-version-Finally.zip
    633 KB · Views: 243
  • GN-Simple-Piston-version-F.jpg
    GN-Simple-Piston-version-F.jpg
    117.2 KB · Views: 296
Glad you got it working. :icon_thumbup:
Compared to François´ solution yours is way more complex than it really needs to. I like the use of spline&lathe-creator in this case. ;)

Cheers
Frank
 
Once Martin gets expressions into Cheetah then setting up things like this will be easier. In fact, I would hate to handle the animation of a complex engine without expressions.
 
Expressions in C3D

Hi KurtF,
I have no idea what expressions ..is, but I love it already!
I do know that the last couple of days, I have often thought "how can such a simple task be so hard to do/learn?". I would love to make much more complex machines/motions in C3D, when it is easier to do.
Though today I am kind of pride that I got it working, instead of giving up.
Iron Man has a good set-up in his basement. Would like something like that Martin. ;)
 
Back
Top