Inventor General Discussion

## Inventor General Discussion

Employee
Posts: 115
Registered: ‎06-10-2004
Message 1 of 23 (5,900 Views)

# Variable Pitch Helix by Equation Curve

5900 Views, 22 Replies
06-20-2012 12:36 AM

You can create a variable pitch helix by using the Equation Curve feature introduced in Inventor 2013.

Create a new 3D Sketch. Start the Equation Curve command.

Here are equations that I use to create helical curves. Many other variations exist, but the following should give you some basic ideas.

Cartesian coordinates:

x(t) = radius * sin(360 * num_turns * t)

y(t) = radius * cos(360 * num_turns * t)

z(t) = height * t

= num_turns * pitch * t

Cylindrical coordinates:

theta(t) = 360 * num_turns * t

z(t) = (same as Cartesian)

• To make the pitch variable, replace pitch with pitch * t.

Examples:

num_turns = 5

height = 10

pitch = 2 or 2*t

t ranges from 0 to 1.

Cartesian coordinates:

x(t) = 3*sin(360*5*t)

y(t) = 3*cos(360*5*t)

z(t) = 5*2*t

Cylindrical coordinates:

r(t) = 3

theta(t) = 360*5*t

z(t) = 5*2*t

Cartesian coordinates:

x(t) = 3*sin(360*5*t)

y(t) = 3*cos(360*5*t)

z(t) = 5*2*t*t

Cylindrical coordinates:

r(t) = 3

theta(t) = 360*5*t

z(t) = 5*2*t*t

Cartesian coordinates:

x(t) = 3*t*sin(360*5*t)

y(t) = 3*t*cos(360*5*t)

z(t) = 5*2*t

Cylindrical coordinates:

r(t) = 3*t

theta(t) = 360*5*t

z(t) = 5*2*t

Cartesian coordinates:

x(t) = 3*t*sin(360*5*t)

y(t) = 3*t*cos(360*5*t)

z(t) = 5*2*t*t

Cylindrical coordinates:

r(t) = 3*t

theta(t) = 360*5*t

z(t) = 5*2*t*t

Note: You can use t^2 instead of t*t above.

When you sweep a profile along a helical path, use the plane normal sweep (instead of perpendicular sweep) to orient profiles suitable for coil or spring.  In the example below, the sweep path is a constant radius, variable pitch helix.

HTH,

Glenn

Autodesk T-Splines Component Development
Valued Contributor
Posts: 81
Registered: ‎11-19-2008
Message 2 of 23 (5,857 Views)

# Re: Variable Pitch Helix by Equation Curve

06-20-2012 05:37 AM in reply to: GlennChun

I think you guys just made my day!!

Autodesk Inventor 2012 Certified Assosicate
Autodesk Inventor 2012 Certified Professional
*Expert Elite*
Posts: 4,197
Registered: ‎04-27-2005
Message 3 of 23 (5,848 Views)

# Re: Variable Pitch Helix by Equation Curve

06-20-2012 06:18 AM in reply to: GlennChun

Now if you can flatten that I will be impressed.

Valued Contributor
Posts: 95
Registered: ‎07-06-2011
Message 4 of 23 (5,817 Views)

# Re: Variable Pitch Helix by Equation Curve

06-20-2012 12:20 PM in reply to: GlennChun

FINALLY!!!! Thanks for posting this.

<snark>

Maybe we'll be able to do equation surfaces by 2020.

</snark>

Inventor Professional 2014
Windows 7, x64
Dual-core i7, 8GB RAM
HP Elitebook 8540w
Contributor
Posts: 13
Registered: ‎10-04-2005
Message 5 of 23 (3,529 Views)

# Re: Variable Pitch Helix by Equation Curve

06-26-2013 10:11 AM in reply to: GlennChun

Glen,

Thanks for the equations. Do you know of equations for compression springs?

Employee
Posts: 115
Registered: ‎06-10-2004
Message 6 of 23 (3,517 Views)

# Re: Variable Pitch Helix by Equation Curve

06-26-2013 12:19 PM in reply to: sention

Hi sention,

When you create a coil, spring, or helix sweep, please use the Coil command or Helical Curve command in 3D Sketch whenever you can for optimized performance/capacity.

• To create constant-pitch helix, you'd better use the Coil or Helical Curve command than the Equation Curve command.
• To create variable-pitch helix, use the Equation Curve command since the Coil or Helical Curve command doesn't offer that functionality.

By looking at your drawing, I see everything as a constant-pitch helix.  I would use three Coil features in this case.

I defined the following parameters before I designed this model.  You can see/edit these in the Parameters dialog > User Parameters.

active_coil_pitch = 4 * wire_diameter

active_coil_num_revolution = 5

active_coil_height = active_coil_pitch * active_coil_num_revolution

For the 'dead coils', the pictch is the same as the wire diameter, and this is possible only in Inventor 2014 and later.  See Type 3b in my recent post called Demystifying Self-intersecting Sweep

http://forums.autodesk.com/t5/Autodesk-Inventor/Demystifying-Self-intersecting-Sweep/m-p/4303803

Attached is the part that I created in Inventor 2014.  Every surface in this model is analytic geometry (rather than NURBS), so you can feel the optimized performance.  All planes of the cross-sectional profiles in the three Coil features contain the helical axis (Z-axis in this case).

Hope that helps,

Glenn

Autodesk ShapeManager Development

Autodesk T-Splines Component Development
Employee
Posts: 115
Registered: ‎06-10-2004
Message 7 of 23 (3,494 Views)

# Re: Variable Pitch Helix by Equation Curve

06-26-2013 01:03 PM in reply to: GlennChun

In my example above, the transition between the active coil and each dead coil is not tangent-continuous.  If you want smooth transitions, the above technique is not appropriate.

Glenn

Autodesk T-Splines Component Development
Employee
Posts: 115
Registered: ‎06-10-2004
Message 8 of 23 (3,476 Views)

# Re: Variable Pitch Helix by Equation Curve

06-26-2013 04:35 PM in reply to: GlennChun

If you want smooth transitions between active and dead coils, here's a workflow that you could use.

In the attached compression_spring_2_glenn.ipt, I added the following parameters:

entire_coil_height = active_coil_height + 2 ul * dead_coil_height

active_coil_len = active_coil_num_revolution * sqrt((active_coil_pitch) ^ 2 ul + ( 2 ul * PI * helix_radius ) ^ 2 ul)

entire_coil_height is used as the height of the cylindrical surface (The first feature in the model).  active_coil_len and dead_coil_len are used in the Aligned dimensions for the three lines in the sketch called curves to project.

If you project the three lines to the cylinder, using the Wrap to surface functionality of the Project Curve to Surface command, the sweep path would be the same as compression_spring_glenn.ipt, except for performance/capacity.  To make the projected curves tangent-continuous, I added two sketch fillets as shown below.  I randomly chose R=100 mm for fillets.  Instead of three lines and two fillets, a spline curve could be used.

For the sweep feature, I used the plane normal sweep (aka pull-direction sweep).  The guide surface is the XY plane since the helical axis is the Z-axis in this model.  That makes the planes of all cross-sectional profiles in the sweep body contain the helical axis.

A drawback with using the Wrap to surface functionality of the Project Curve to Surface command is low performance and huge file size.  If you open the compression_spring_2_glenn.ipt, move the End of Part to the bottom, and save the part, then you will see the file size become ~2,300 KB.  The previously attached part, compression_spring_glenn.ipt, is only 360 KB.  The Inventor development team is aware of the performance/capacity issue with the Wrap to surface.

If anyone knows of any equation for the compression spring, please post it.  Performance/capacity of using the Equation Curve command is somewhere between analytic geometry from the Helical Curve/Coil command and the NURBS from Wrap to surface.

Glenn

Autodesk ShapeManager Development

Autodesk T-Splines Component Development
Employee
Posts: 115
Registered: ‎06-10-2004
Message 9 of 23 (3,468 Views)

# Re: Variable Pitch Helix by Equation Curve

06-26-2013 05:20 PM in reply to: GlennChun

The above screenshots using the "Right" view do not really show the difference.

Here's the "Top" view that shows the difference between the two models.  The red arrow below indicates G0 continuity between the dead coil ad active coil.  The second model shows G1 continuity (tangent-continuous).

Glenn

Autodesk T-Splines Component Development
New Member
Posts: 1
Registered: ‎07-06-2013
Message 10 of 23 (3,350 Views)

# Re: Variable Pitch Helix by Equation Curve

07-07-2013 06:38 PM in reply to: GlennChun

When sweeping, can you make it such that the profiles all angle towards a single point, say in the center of the helix at its base? If so, how?? Thanks!

GlennChun wrote:

When you sweep a profile along a helical path, use the plane normal sweep (instead of perpendicular sweep) to orient profiles suitable for coil or spring.  In the example below, the sweep path is a constant radius, variable pitch helix.

Announcements
Are you familiar with the Autodesk Expert Elites? The Expert Elite program is made up of customers that help other customers by sharing knowledge and exemplifying an engaging style of collaboration. To learn more, please visit our Expert Elite website.
Need installation help?

Start with some of our most frequented solutions or visit the Installation and Licensing Forum to get help installing your software.