Inventor General

## Inventor General

Employee
Posts: 102
Registered: ‎06-10-2004
Message 1 of 19 (3,971 Views)

# Variable Pitch Helix by Equation Curve

3971 Views, 18 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 radius variable, replace radius with radius * t.
• To make the pitch variable, replace pitch with pitch * t.

Examples:

radius = 3 or 3*t

num_turns = 5

height = 10

pitch = 2 or 2*t

t ranges from 0 to 1.

1. constant radius, constant pitch:

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

2. constant radius, variable pitch:

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

3. variable radius, constant pitch:

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

4. variable radius, variable pitch:

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

Please use plain text.
Valued Contributor
Posts: 81
Registered: ‎11-19-2008
Message 2 of 19 (3,930 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
Please use plain text.
*Expert Elite*
Posts: 3,881
Registered: ‎04-27-2005
Message 3 of 19 (3,921 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.

Please use plain text.
Valued Contributor
Posts: 63
Registered: ‎07-06-2011
Message 4 of 19 (3,890 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
NVIDIA Quadro FX 880M
HP Elitebook 8540w
Please use plain text.
Contributor
Posts: 12
Registered: ‎10-04-2005
Message 5 of 19 (1,602 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?

Please use plain text.
Employee
Posts: 102
Registered: ‎06-10-2004
Message 6 of 19 (1,590 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.

helix_radius = 10 mm

wire_radius = 1 mm

wire_diameter = 2 * wire_radius

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

Please use plain text.
Employee
Posts: 102
Registered: ‎06-10-2004
Message 7 of 19 (1,567 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

Please use plain text.
Employee
Posts: 102
Registered: ‎06-10-2004
Message 8 of 19 (1,549 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)

dead_coil_len = dead_coil_num_revolution * sqrt((dead_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

Please use plain text.
Employee
Posts: 102
Registered: ‎06-10-2004
Message 9 of 19 (1,541 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

Please use plain text.
New Member
Posts: 1
Registered: ‎07-06-2013
Message 10 of 19 (1,423 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.

Please use plain text.

### You are not logged in.

Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register

### Need installation help?

Start with some of our most frequented solutions to get help installing your software.

Recently Solved

Inventor