24
S6-1 ADM703, Section 6, August 2005 Copyright 2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-1 ADM703, Section 6, August 2005 Copyright 2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

Embed Size (px)

Citation preview

Page 1: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-1ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

SECTION 6

OVER-RUNNING PULLEY

Page 2: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-2ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

Page 3: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-3ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

OVER-RUNNING PULLEY

Model the spring behavior of a one-way clutch in an over-running pulley (ORP) which might be installed, for example, in an engine’s front-end accessory drive.

What’s in this section: Subroutine Use Details of ORP VARSUB Compiling Subroutines Working with Your User Library Hysteresis Modeling SHF Function Requests Workshop 11: Over-Running Pulley

Page 4: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-4ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

SUBROUTINE USE Overview

Linking external FORTRAN, C, or C++ subroutines is a powerful way to perform advanced modeling tasks.

Useful when modeling phenomena dependant on logical procession of events that can’t easily be represented within the standard MSC.ADAMS functions and expressions.

Preferable method for skilled programmers.

Helps avoid cluttered MSC.ADAMS models.

Implementation Procedure: Major Steps Write external subroutine

Associate subroutine with corresponding MSC.ADAMS modeling element (make sure model passes correct number of parameters to subroutine)

Compile subroutine

Link MSC.ADAMS library (.dll, .so, .sl)

Page 5: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-5ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

DETAILS OF ORP VARSUB Initially, when the hub and sheave sit peacefully static (or are at

the exact same rotational velocity), the clutch spring is unloaded. At some point, negative relative velocity occurs (-WZ) between these parts. The spring loads up because relative angular displacement is increasing. At some point, this –WZ slows while the spring is still loading, because it continues to have relative displacement (Q).

Eventually, -WZ slows to -d. At this point, the relative displacement will be some value, Qchange, and the relative velocity will become positive (+WZ). As the relative velocity changes from -d to d, the spring torque is transitioned from the loading torque at Qchange, to the unloading torque at Qchange. This is done with the STEP function. Actually, in this transition change, the targets of the STEP function (loading and unloading torques at Qchange) change slightly because there is still a little relative velocity, and therefore, a little change in the relative angular displacement. Once the positive relative velocity exceeds d, the spring torque exactly follows the unload torque curve.

Page 6: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-6ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

DETAILS OF ORP VARSUB (CONT.) The VARSUB is required because of how the overrunning pulley

works. The overrunning pulley spring will eventually “max-out” at a value, even though it continues to rotate in the same direction. In other words, -WZ could be so large that the loading curve passes Qmax, and the torque levels off to the maximum torque. At some point, however, the relative velocity will change directions (+WZ), and a value must be obtained from the unloading curve. The VARSUB senses the angular displacements and velocities and resets Q = Qmax, and then the correct values are obtained from the unloading curve (since relative velocity is now positive).

Similarly, +WZ can be large enough to cause Q to be less than zero, therefore you are “over-running.” Here, the spring has no resistance torque (or some nominal value for friction). However, the relative velocity can change sign again and the VARSUB will reset Q = 0 for loading.

Page 7: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-7ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

DETAILS OF ORP VARSUB (CONT.)

Following is a description of the VARSUB details to calculate Ө.

Page 8: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-8ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

DETAILS OF ORP VARSUB (CONT.)

Following is a description of the VARSUB details to calculate Ө (Cont.)

Page 9: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-9ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

DETAILS OF ORP VARSUB (CONT.)

Page 10: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-10ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

DETAILS OF ORP VARSUB (CONT.)

Page 11: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-11ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

DETAILS OF ORP VARSUB (CONT.)

Page 12: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-12ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

DETAILS OF ORP VARSUB (CONT.)

Page 13: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-13ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

COMPILING SUBROUTINES

To compile your subroutine, use the compiler flags specified in the documentation, and indicated in the MSC.ADAMS Menu as shown below:

(Continued on next page)

Page 14: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-14ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

COMPILING SUBROUTINES (CONT.)

Notes: The compiler flags are platform-dependent.

Either source code or object files can be entered (for source code, it will be automatically compiled).

Page 15: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-15ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

WORKING WITH YOUR USER LIBRARY

Once you’ve linked the subroutines, you can link them in standalone ADAMS/Solver, or in ADAMS/View.

In ADAMS/View, from the Settings menu, point to Solver, and then select Solver Executable. Specify the file in the Solver Library text box.

Page 16: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-16ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

HYSTERESIS MODELING Many mechanical components have properties that exhibit

hysteresis-based behavior. For example, rotational spring may load up according to one curve, unload according to another, and loop around in frequent transition between the two.

Representing this behavior is not easily done directly with a standard modeling element in MSC.ADAMS. But, you can model it using SPLINE data referenced inside of step functions.

Page 17: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-17ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

HYSTERESIS MODELING (CONT.)

Example

Detail Description of this Hysteresis Function WZ is the independent variable of the STEP function, which is used

to switch back and forth between the two curves, load_curve and unload_curve, so that when the rotational spring changes direction, it does not instantly jump to another curve, causing a discontinuity. The rate at which it changes from one curve to another is controlled by -d and d.

Page 18: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-18ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

HYSTERESIS MODELING (CONT.)

Detail Description of this Hysteresis Function (Cont.) The spring behavior is controlled by Q (calculated by the VARSUB)

as the independent variable of the splines, and torque as the dependent variable in AKISPL. In many cases, the torque may reach a maximum point, at which Q continues to increase, but the torque remains constant. This should be controlled by a VARSUB, so that the Q fed to this AKISPL function will not go past the maximum value, and will reset when the direction reverses.

To Summarize: The torque is dependent on the angular displacement.

The step function is used to transfer between the loading and unloading curves.

A VARSUB is used to reset the angle when the maximum angle is reached and when changing directions.

Page 19: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-19ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

SHF FUNCTION

The motion in this workshop is driven by an SHF function. The SHF function evaluates a simple harmonic function. The following equation defines SHF:

SHF = a*sin(*(x-x0)-phi)+b

Format SHF (x, x0, a, w, phi, b)

Page 20: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-20ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

SHF FUNCTION (CONT.)

Arguments

Page 21: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-21ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

SHF FUNCTION (CONT.)

Examples

This MOTION statement uses SHF to define the harmonic function:

SHF = 5+PI*sin(360D*(time-25D))

The motion has a shift of 25 degrees, has an amplitude of PI, has a frequency of 1 cycle (360D) per time unit, has zero phase shift, and has an average value of displacement of 5 units.

Page 22: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-22ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

REQUESTS

Output requests, like measures, are useful ways to obtain the data from specific output channels. Their advantages include:

Obtaining output data in reference frames other than GCS.

Using comments and labels.

Written out to a separate output file (.req)

Types of Requests Force

Displacement

Velocity

Acceleration

Page 23: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-23ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation

REQUESTS (CONT.)

Types of Requests (Cont.) User-Defined Functions

(Do not use F1 or F5; they are placeholders for magnitude calculations)

Note: ADAMS/View can use F1 and F5, but these will not be valid upon .reg file retrieval.

Subroutine (REQSUB)

Page 24: S6-1 ADM703, Section 6, August 2005 Copyright  2005 MSC.Software Corporation SECTION 6 OVER-RUNNING PULLEY

S6-24ADM703, Section 6, August 2005Copyright 2005 MSC.Software Corporation