cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Did you get an answer that solved your problem? Please mark it as an Accepted Solution so others with the same problem can find the answer easily. X

Chain assembly link Pattern, 3D cam roller pattern and timing belt tooth pattern

PM_9971370
13-Aquamarine

Chain assembly link Pattern, 3D cam roller pattern and timing belt tooth pattern

We want to assemble a chain in a curve using a curve pattern. But the pitch distance is not equal in the straight line and in the curved path. It is the same along a straight line and varies along curved paths. This is critical assembly and so we should assemble the chain as exactly as they are in real assembly. How to assemble a chain in a curve using a curve pattern without changing the pitch value?

1) There may be a lot of ways to assemble the chain links in a curve. But chain assembly is used universally and so there will be a simple solution to do this (For instance, pattern). So, we want to assemble the chain links using "pattern" along the curve or else a very simple method to do this. Because for a long chain assembly we could not assemble multiple times or go for a lengthy process.
2) There is a way to do this using "pattern". While we search on the internet in all places this method is used. But the problem is the chain links will not assemble in the exact place as the pitch value varies along the curve. But as the assembly is critical we need to assemble the chain exactly in the same place as they will assemble in real life.
 
Our trial and difficulties:
                   We have tried to pattern this using eight patterns.First and second are for top straight line pattern two times for inner links and outer links. 3rd and 4th are for curve patterns. 5th to 8th are mirror patterns.
1) If we change the no of links, the pattern will fail and we need more time to correct them and reassemble the links.
2) If we change the no of links, sometimes the link position will change (the same link comes nearby at the pattern ends) so that we have to reassemble the links once again.
3) Creo Parametric does pattern using number id. For instance, if we do a pattern first time, the number will be 1 to 10. For the second pattern, the number will be 11 to 20. We have connected the "no 10" link to the "no 11" link. When we change the number of links for the first pattern as 1 to 5 and for the second pattern as 6 to 10. The pattern will fail and creo will not change the assembly reference from 10 - 11 to 5 - 6. This is the major problem in Creo which should be fixed or we need to know the solution if any one is there. Because this not only affects the chain pattern but also all other patterns like sprocket teeth pattern, gear teeth pattern, toothed belt pattern,etc. 
4) If we try to assemble other complex curve shapes (using more idler sprockets) this will be very difficult to assemble.
5) Sometimes if the no of teeth on sprocket changes, the last link on sprocket (curve) will not meet at the straight line end it has to be assembled a little inside from the straight line. This is very difficult to assemble using more steps and more patterns. (My given curve to you is like this). We have achieved this using relations. But if we change the no. of teeth this will also fail. We do not have enough time to program this. 
6) Finally, if there is an option to pattern along the curve using equally spaced displacement (not distance along the curve) between points, all this problem can be fixed easily. Using programs it is possible to develop such an option. So, kindly add this pattern option in the curve pattern tools.
 
We also found an udf chain assembly curve and that also was not properly assembled. They only look like a proper chain assembly.
Also, we need to assemble cam roller on cylindrical groove cam using pattern on curve and also creating tooth on curved belts.
Any solution?
30 REPLIES 30
Chris3
20-Turquoise
(To:PM_9971370)

A picture may help, but have you tried a point pattern on a curve? You can control the point spacings with relations or with sketch constraints depending on how you want to set it up. The picture below isn't a chain but it shows that you can pattern on points that are non-equally spaced while following the direction of the curve.

Capture.JPG

 

 

 

Patriot_1776
22-Sapphire I
(To:Chris3)

The problem is that the length of the link is linear (straight line), and that distance can't be done simply using points on a curve spaced on the length of the distance between points on the curve itself.  On a small sprocket radius, the length between points will be a good percentage larger than on a large sprocket radius where the curve is almost a straight line, and then there is the fact that in most runs there IS a straight section.  On a drivetrain that has numerous sprockets it becomes extremely complex.  Therein lies the problem.

PM_9971370
13-Aquamarine
(To:Chris3)

We can pattern on a curve but as you told it is non equally spaced. we need a pattern which is equally spaced.

kdirth
20-Turquoise
(To:PM_9971370)

What you are looking for is a curve pattern based on cord length, which Creo currently does not have.  Even if it was available, I don't think it would be completely accurate, though it may be close enough for your needs.  The length around a chain path varies slightly as the chain rotates around the sprockets because the straights between the sprockets is not tangent to the arc of the sprocket.  The only way to get super accurate is to sketch the path using cord segments around the sprocket curves (only good for that position).  Adjustable tension sprockets are used to make up for manufacturing tolerances, making a super accurate representation less necessary.


There is always more to learn in Creo.
KenFarley
21-Topaz I
(To:kdirth)

I've held off mentioning this, but since you are broaching the subject, there's also the catenary effect on chains or any suspended flexible object. Are they going to model that, too?

Every machine I've worked on that used a chain or timing belt for its drive mechanism either had an adjustable sprocket in at least one position, or a tensioning pulley along one of the straight lengths.

Hey Ken!  Oh man, I had to look up "catenary".  Nice to have a fancy technical word for the effect we all see daily in life!  Yeah, it's not an easy problem for sure.  And you're right, every system of belt or chain drive MUST have an adjustment somewhere to account for changes in overall length as the chains individual links wear (contrary to popular opinion a chain does NOT actually "stretch"), and to account for production tolerance in the chain length and position of the sprockets and idlers.

Hi Frank,

Yeah I had a problem along the lines of this, trying to figure how much cable is needed for a drooping arrangement, etc. and that led me to the catenary curve. It's a nice word and pretty interesting, so I remember it.

Funny you mention the "stretch" thing. I had a somewhat testy argument with someone who was backseat driving when I was rebuilding a machine. Insisted that chain stretches, etc. A measurement of brand new chain for a few hundred links and the removed one for the same number of links showed virtually zero difference in length, even though the old chain had actually broken.

I've thought about this particular modeling endeavor a bit and imagine it would have to be some sort of custom program that lays each link onto the curves. Like a tesselation of the curves with fixed length linear edges. Algorithmically something like:

* Take last end vertex and make it start vertex for new link.

* Find point on curve that is linear edge length distance from start vertex.

* Set that point as last vertex

* Put in link with pins at start and end vertices.

* Repeat for next link, etc.

This would be a toughie, I don't know how you would do it in Creo. Maybe punch the curve data out to an external program that generates a point array? You'd need some sort of feedback to tell you you had the correct setup to yield an integer number of links, etc. Easy to talk about, very difficult to implement.

StephenW
23-Emerald II
(To:KenFarley)

Many years ago when I worked in earthmoving equipment, we used big chain and sprockets. The chain would wear with use and we called it stretch. It was more about the wearing the pins and bearing and rollers and sprocket. We had a manual tensioning pulley that was adjusted as needed to prolong the usable life. For the initial design, we would calculate the length by hand (including catenary sag) and then usually round up to the nearest reasonable number of links. We didn't need anything near perfection, we just needed to be close enough and then we could add a link if needed.  When we moved to Pro/E, we never modeled the full chain, just enough to clarify the installation. A few links usually around the sprocket and the adjust idler and the rest was just a single line curve representation.

Yeah, it's a difficult one for sure.  I think I might have a solution, at least for one particular "degreed" instance in a run.  I mean, you wouldn't me able to drag a link at the assembly level and have the whole chain move....I think, but I think you could pick one particular position of the chain and have all the links be positioned correctly. with all the pins concentric with the holes.

 

Being in the motorcycling world, chains are a simple fact of life.  I took a 114 (I think) link 530 chain that had over 20k miles off and laid it down next to the new chain I was installing, and there was a noticeable difference in overall length when the worn one was pulled tight.  Not a big difference, but I could see it.  I've had the same argument with people that while chains get LONGER, they don't actually stretch.  I've seen some 530 chains listed as having 12,000lbs tensile ratings.  Yeah, you're NOT going to stretch that with a motorcycle engine.  I have to explain to them (usually sloooowly) that what actually happens is that wear at all the 228 different pin/home interfaces accumulates to make the chain longer.  *Sigh*

PM_9971370
13-Aquamarine
(To:KenFarley)

But in chain link hole we assemble mandrel and it's position should be accurate. Also if you take curve 3d pattern in a cam we assemble rollers and all other components will be assembled with respect to that position. So for our application it is important to be accurate.

AFAIK, not possible in basic Creo.  Perhaps you can hire someone who can program a custom solution for you.  You should post on the product ideas form and point out that this is something that Solidworks seems to be able to do.

Patriot_1776
22-Sapphire I
(To:pausob)

CAN Solidquirks actually CORRECTLY do this?

I don't know if it can do it perfectly, or correctly, whatever that means.  I don't have it and so I don't know the details - however, the help link I attached to my comment showcases the tools and options available to a machine designer if they use Solidworks, and I strongly suspect that one can get pretty good accurate results - easily!  In comparison, you have to be a wizard at Creo patterns to get a decent looking result.

PTC, like any other company, should probably review what competitors offer and copy them whenever feasible.

PM_9971370
13-Aquamarine
(To:pausob)

That's what we asking. Also we created a case (case id: 15964039), posted idea, posted topics without any solution yet. This problem is addressed PTC many years ago but no action is taken till now.

This you-tube video shows how you can model idealized chain-links accurately at part level, with some degree of semi-automation (UDFs+mapkeys) - suggesting that the process of generating / updating a good looking representation of a chain does not have to be super painful in Creo.

If you need assembly level modeling, then semi-manual techniques such as copy+paste function / mapkeys / use of interfaces - they could also get you the design and iterative updates fairly quickly.

 

Last thing I would add is that I think perhaps you should keep it simple (and tedious).  Trying to automate everything by stringing together multiple patterns / groups of link-strings and gluing it all with relations seems like a project that is tempting  to undertake and may work but will end up being a nightmare to manage in the future by someone else taking over the design.

Patriot_1776
22-Sapphire I
(To:pausob)

In thinking about it some more, even if a link was exactly 1" between pins, you can't even define the curve path in increments of 1", because you're measuring the curve length between points as if it were a string, but the distance between pins on a link is a strictly linear dimension.  So, while and interesting and quick take on things, it's not "correct", especially where the chain wraps around a small sprocket.  The error gets progressively worse the smaller the sprocket.

TomU
23-Emerald IV
(To:Patriot_1776)

Yep.  Somehow you need to work backwards from chord length x number of links to the sum of the arc lengths along the path those will follow when all connected (wrapped around whatever.)

 

It would be really, really interesting to know if Solidworks actually has this correct in their component pattern.

Patriot_1776
22-Sapphire I
(To:TomU)

Agreed.  This one intrigues me though, might have to play with it...

 

I think Solidquirks "cheats", and has something "close enough" but that's easy to do.  That seems to be the theme with them, don't quite actually do it, just do it close enough to fool the novices, but make it real easy to do.

TomU
23-Emerald IV
(To:Patriot_1776)

Solidworks example.  Notice that the curve length doesn't drive pattern quantity.  It's up to the end user to have total curve length right or the first and last links won't line up correctly.  On the other hand, it's fully mechanized (draggable) with no extra effort.  

https://youtu.be/etEZEP4Lkk0?t=2741

 

Patriot_1776
22-Sapphire I
(To:TomU)

Interesting, and looks pretty easy, but without being able to measure things I'm not sure it's correct.  If it IS this easy and correct, PTC needs to really get their act together....soon.  Between the lack of solid-body cuts and this, S/W is starting to show MORE capability than Creo....not good.

kdirth
20-Turquoise
(To:pausob)

To improve this method, sketch out the cords around the sprockets and make the straight runs a multiple of the link length.  The patterning should work well as long as you start at the start point of the curve.

kdirth_0-1630609424505.png

May take a little time (20 min) to update when the chain length needs to be changed but not a complete redraw.


There is always more to learn in Creo.
PM_9971370
13-Aquamarine
(To:kdirth)

PTC Creo can implement a tool using this concept.

kdirth
20-Turquoise
(To:PM_9971370)

I'm sure they could.  However don't hold your breath.  Writing the code and ensuring it works well with everything else will take plenty of time once it gets to the top of their improvement list.  It will also, most likely, be added only to a new release making the wait even longer for most. (I am still working with 4.0, 8.0 is out, and they are working on 9.0)

Using the "work around" that works best for you until the functionality is created is your only option at this time. 

But, don't give up the fight, it is the squeakiest wheel that gets the grease first (hopefully).


There is always more to learn in Creo.
PM_9971370
13-Aquamarine
(To:pausob)

We have posted it in idea suggestion but only  from Creo parametric, they told to post this in this 3d part assembly design.

Hmmmm, I just had an idea that might solve this...

PM_9971370
13-Aquamarine
(To:PM_9971370)

Any solution from PTC?

LOL  You must be new here...🤣  Don't hold your breath, I've never seen a PTC employee solve any major geometry problem here.

I'm a bit late to the game on this one, but wanted to share an old post I posted years ago for FIRST Robotics teams.
https://community.ptc.com/t5/PTC-Education-Forum/Video-Tip-How-to-model-a-3D-chain-drive-in-Creo-Pro-E/m-p/123088

I finally watched the video.....aaaannnd the guy cheats and makes the last link longer to compensate.  FAIL.

 

I'm not saying there's an easy way to do this, and I'm not saying Solidquirks solution is correct because I haven't seen it, but there has to be a way to do it correctly.  Hmmm....

Top Tags