How to animate belt drive or chains with gear?

Become a member of the CGSociety

Connect, Share, and Learn with our Large Growing CG Art Community. It's Free!

THREAD CLOSED
 
Thread Tools Search this Thread Display Modes
Old 10 October 2011   #1
How to animate belt drive or chains with gear?

Hello,

I downloaded a model online with many gears and a belt drive. I have all of the gears animating with xpresso just fine, however, the belt in the model is already deformed and I am not sure how I might go about animating the existing model as-is. I did try modeling a small portion of the belt and trying to clone it along a path and that started to work, but the 'teeth' only ever point downward and do not follow the inside curve of the belt as in the attached screen grab.

I was hoping to use rollit, but it doesn't appear to work in r13. I would really like to have this whole assembly working correctly, but I'm stuck on the belt drive portion. There is a similar belt behind this component, but without 'teeth'. Any suggestions for animating this as well?

Thank you!!

Ryan

http://http://orangepeelproductions.com/C4D/belt.jpg

and a render of a section of the assembly:

http://orangepeelproductions.com/C4...reducer_dof.jpg
 
Old 11 November 2011   #2
You could calculate the circumference speed of one of the wheels.
Feed that to a RangeMapper with inputLow 0 and input Hi Length
of the belt (make a spline the shape of the belt).
Have the output at default 0 to 1 (0 - 100%)

Then feed the result into the offset parameter of ie a Cloner or
SplineWrap Deformer.
As you then have transformed Units to percent then the belt's
geometry (again clones or a mesh in the form of your belt
wrapped around the spline) will follow the wheels rotation.

In any case you would most likely redo the actual belt to make it work.

Cheers
Lennart
__________________
MSA | OSX | xfiles ...Cinema4D Tools
 
Old 11 November 2011   #3
Hi,

you could clone your teeth in linear mode (end point), with an appropriate number of clones and a total movement equal to the lenght of the spline. Then instance the cloner and use the instance in a connect object (maybe it works without instancing too) to get a connected surface. Finally you use a splinewrap to deform the teeth chain. With spline wrap you can animate the offset as Lennart says to get it to move.
I did a quick test, hope this helps!

Cheers
Massimiliano
Attached Images
File Type: jpg Schermata 2011-11-02 a 20.44.20.jpg (58.6 KB, 37 views)
Attached Files
File Type: zip belt_gear.c4d.zip (52.6 KB, 36 views)
__________________
www.visualtricks.it - www.c4dzone.com
 
Old 11 November 2011   #4
Howdy,

For something like that where you already have the belt modeled as one piece, I'd simply rig it with a chain of joints and the CD Spline Constraint in my CD Constraints plugin:
http://www.cactus3d.com/CDSplineConst_JointChain.mov

Since the CD Spline Constraint can compensate values beyond the 0% to 100% slider limits, you simply set up the Range Mapper to map degrees to percent, for example figure out what percent the joint chain needs to travel along the spline for every 10 and you're done.

I've used it before to easily setup a bike chain with a single Range Mapper:
http://www.cactus3d.com/BikeChainRig.mov

Adios,
Cactus Dan
__________________
It doesn't matter what people say about you, just as long as they're talking about you.

cactus3d.com, cactus3d-Plugins, CD Character Plugins forum
 
Old 11 November 2011   #5
One thing to read up on when matching belt lugs and pulley teeth is the pitch line between the two.
http://en.wikipedia.org/wiki/Gear
Then always use the same pitch line spline path to drive geometry. Especially if your trying to align multiple objects on a rotational axis. But yea read about pitch lines, it could save you a headache!

Fot the most park, as a ballpark figure, the pitch line you use to calculate circumference is about half the height of the tooth pulley, plus half any tolerance you have between the pulley teeth and belt lugs. As for animating the belt, yea there are a couple ways... you could do spline effected lugs using a cloner. Or use a cloner to generate the lugs, convert it to geometry and spline wrap the geometry ( make sure have proper topology for the deformation. ) . Or you can just use a cloner to distribute out your lugs, and group the cloner itself with a spline wrap ( that skips having to convert to geometry ). I've treated the lugs seperate from the belt thickness before as well, and just used a extruded outlines spline for the belt thickness. Then ran offset lugs ( using the pitch line! ) along the inside surface ( or outside, or both! double sided belts are fun ) using a spline effector.

Of course then there are a few dozen ways to set up the animation controls using xpresso. You could offset the entire belt along the path to 100%. Or you can divide the clone count by 1 to get a single lug index offset % to feed into a range mapper, which you could drive with a float % slider keyed 0-100% and set to loop forever. You could also define a variable distance you need the belt to move, then calculate the offset % based on the arc-length of the belt path spline ( pitch line! ). Or you could...or you could...or you could...

( Haha sorry I animate concepts for a packaging company, and play with belt type loops all day long. )
__________________
www.mayajunky.com

All my favorites ~ Cinema 4D R13, After Effects, Photoshop CS5, Lightroom, Photomatic

Last edited by mayajunky : 11 November 2011 at 11:11 PM.
 
Old 11 November 2011   #6
Thanks for the responses, everyone! Definitely some food for thought and I've got some things to try out. I'll let you know what I come up with and post a render.

Thanks again!

Ryan
 
Old 11 November 2011   #7
One example with old XPresso way.

http://www2.11moon.com/sample_files...belt_system.mp4
http://www2.11moon.com/sample_files...belt_system.zip


Another example in which cogs are arranged by MoGraph. Much more simple.

http://www2.11moon.com/sample_files...tem_MoGraph.mp4
http://www2.11moon.com/ample_files/...tem_MoGraph.zip


This System is driven by 2 XPressos and one MoGraph Cloner.

1. XPresso on "cogwheels"

This rotates "sub" and "idler" wheels, according to angle of "main" wheel. So you can run the system by rotating the "main" wheel by hand or keys.


2. XPresso on "belt"

This runs "belt_run" spline on "belt_org" spline, according to angle of "main" wheel. Since the spline itself runs properly, SweepNURBS with the spline runs automatically. Also cloned cogs which are targetted to the spline run automattically without any trick. Very simple.


3. MoGraph Cloner

This clones "cog" object, and arranges them on "belt_run" spline. Also I made an instance of "belt_run" spline (belt_run_rail), and place it aside of original, to align face of cogs.

Note. This scene could be open in R12, but may not work properly by bug, though it was made by R12.

Last edited by tofuji : 11 November 2011 at 03:09 PM.
 
Old 11 November 2011   #8
Wow, thanks for the excellent example and project file!! This software impresses me more and more every day!

Ryan
 
Old 03 March 2012   #9
Hello Cactus Dan!

I am using your CD Spline Constraint to animate a bike chain. So far, so good!

http://www.orangepeelproductions.co...e_chain-web.mov

However, I have a problem that I can't seem to figure out. I did the following steps to get to this point:

1-created a spline based on the already modeled bike chain by creating a point at every joint in the chain. Selected all points and made them soft tangents and evenly spaced.

2- copy/paste first 2 chain links and group them in a null and create a hierarchy - null->link1->link2 (outer and inner link) & hide full chain.

3- Apply CD Spline Constraint to null parent and setup plugin to be align the objects on the spline. Duplicate spline and use it as the up vector (which I had to move WAY down the Y axis in order to correct the orientation of the chain links -the Up vector thing sort of eludes me)

4) Duplicate my chain hierarchy until the chain is complete and adjust offset to align them as close as I can.

In this test, the chain position option is animated. The problems starts in step 3.



a) As soon as I align the 2 objects to the spline, both links sort of pop up at an angle out of its original position and I can't seem to find a way to position/rotate the object itself after constraining to the spline to match the original link position so the chain looks flush and not a stair step alignment.

b) If you step through the animation, look at the chain as it moves toward the camera going down - the outer link sort of 'pops' from it's position on the spline and I'm not sure how to prevent this from happening. The animation works and the popping is barely noticeable, but I'd like to correct it if I can.

Any thoughts? Thank you!

Ryan

Originally Posted by Cactus Dan: Howdy,

For something like that where you already have the belt modeled as one piece, I'd simply rig it with a chain of joints and the CD Spline Constraint in my CD Constraints plugin:
http://www.cactus3d.com/CDSplineConst_JointChain.mov

Since the CD Spline Constraint can compensate values beyond the 0% to 100% slider limits, you simply set up the Range Mapper to map degrees to percent, for example figure out what percent the joint chain needs to travel along the spline for every 10 and you're done.

I've used it before to easily setup a bike chain with a single Range Mapper:
http://www.cactus3d.com/BikeChainRig.mov

Adios,
Cactus Dan

Last edited by gdogfunk : 03 March 2012 at 04:17 PM.
 
Old 03 March 2012   #10
Gosh, you stare at something long enough and the solution comes to you. The alignment problem started because the 2 links needed to have their rotations zeroed out first. I do believe I fixed it!
 
Old 03 March 2012   #11
Howdy,

Hehe, sometimes it's the simplest little thing that gets overlooked. I'm glad you got it figured out.

Adios,
Cactus Dan
__________________
It doesn't matter what people say about you, just as long as they're talking about you.

cactus3d.com, cactus3d-Plugins, CD Character Plugins forum
 
Old 03 March 2012   #12
Thread automatically closed

This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.
__________________
CGTalk Policy/Legalities
Note that as CGTalk Members, you agree to the terms and conditions of using this website.
 
Thread Closed share thread



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
CGSociety
Society of Digital Artists
www.cgsociety.org

Powered by vBulletin
Copyright 2000 - 2006,
Jelsoft Enterprises Ltd.
Minimize Ads
Forum Jump
Miscellaneous

All times are GMT. The time now is 12:00 PM.


Powered by vBulletin
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.