MotionView User's Guide

MV-1028: Modeling Point-to-Deformable-Surface (PTdSF) Higher-Pair Constraint

MV-1028: Modeling Point-to-Deformable-Surface (PTdSF) Higher-Pair Constraint

Previous topic Next topic No expanding text in this topic  

MV-1028: Modeling Point-to-Deformable-Surface (PTdSF) Higher-Pair Constraint

Previous topic Next topic JavaScript is required for expanding text JavaScript is required for the print function  

In this tutorial, you will learn how to:

Model a PTdSF (point-to-deformable-surface) joint

A PTdSF (point-to-deformable-surface) joint is a higher pair constraint.  This constraint restricts a specified point on a body to move along a specified deformable surface on another body.  The point may belong to a rigid, flexible, or point body.  The deformable surface for this tutorial is defined on a rigidly supported plate.  A mass is constrained to move on the surface with a PTdSF constraint.

Exercise

Copy the files membrane.h3d and membrane.fem, located in the mbd_modeling\interactive folder, to your <working directory>.

Step 1: Creating points.

Let’s start with creating points that will help us locate the bodies and joints as required.  We will define points for center of mass of the bodies and joint locations.

1.Start a new MotionView Session.  We will work with the default units (kg, mm, s, N).
2.Click the Project Browser tab, right-click on Model and select Add Reference Entity > Point (or right-click the Points icon point-24 on the Model-Reference toolbar).

The Add Point or PointPair dialog is displayed.

3.For Label, enter BallCM.
4.Accept the default variable name and click OK.
5.Click on the Properties tab and specify the coordinates as X = 0.0, Y = 0.0, and Z = 0.0.
6.Follow the same procedure for the other points specified in the following table:

Point

X

Y

Z

PointMembInterface39

-55.00

-55.00

0.0

PointMembInterface40

55.00

-55.00

0.0

PointMembInterface41

55.00

55.00

0.0

PointMembInterface42

-55.00

55.00

0.0

Step 2: Creating Bodies.

We will have two bodies apart from the ground body in our model visualization:  the membrane and the ball.  Pre-specified inertia properties will be used to define the ball.

1.From the Project Browser, right-click on Model and select Add Reference Entity > Body (or right-click the Body icon entityMultibodies-24 on the Model-Reference toolbar).

The Add Body or BodyPair dialog is displayed.

2.For Label, enter Membrane.
3.Accept the default variable name and click OK.

For the remainder of this tutorial - accept the default names for the rest of the variables that you will be asked for.

4.From the Properties tab, check the Deformable box.
5.Click on the Graphic file browser icon file_browser_icon_small and select membrane.h3d from the <working directory>.

The same path will automatically appear next to the H3D file browser icon file_browser_icon_small.

6.Right-click on Bodies in the Project Browser and select Add Body to define a second body.

The Add Body or BodyPair dialog is displayed.

7.For Label, enter Ball and click OK.
8.From the Properties tab, specify the following for the Ball:

Body

Mass

Ixx

Iyy

Izz

Ixy

Iyz

Izx

Ball

1.00

4000.00

4000.00

4000.00

0.0

0.0

0.0

9.For the Ball body, under the CM Coordinates tab, check the Use center of mass coordinate system box.
10.Double click on Point.

The Select a Point dialog is displayed.

11.Choose BallCM and click OK.
12.Accept defaults for axes orientation properties.
13.For the Ball body, from the Initial Conditions tab - check the Vx box under Translational velocity and enter a value of 1 into the text box.

This sets a value of 1 for the translational velocity of the ball in the X direction.

14.Repeat the same for Vy.

Step 3: Creating Markers and a Deformable Surface.

Now, we will define some markers required for the membrane.

1.From the Macros menu, select Create Markers For Deformable Surface.

mv-1028_crte_mrkrs_macro

The Create Markers For Deformable Surface utility is displayed at the bottom of the screen.

2.For Select the body, use the Body input collector to select Membrane.

mv-1028_crte_mrkrs_macro_panel

3.Click on the Select the FEM file file browser icon and select the membrane.fem file.
4.Use the default values for the Maximum number of marker rows and Maximum number of marker columns.
5.Click Generate Surface.

The Markers and Deformable Surface are created.

Step 4: Creating Joints.

Here, we will define all the necessary joints except the PTdSF joint, which will be defined as an advanced joint later.  We require four joints for the model, all of them being fixed joints between the membrane and the ground.

1.From the Project Browser, right-click on Model and select Add Constraint > Joint (or right-click the Joints icon entityJoints-24 on the Model-Constraint toolbar).

The Add Joint or JointPair dialog is displayed.

2.For Label, enter Joint 1.
3.Select Fixed Joint as the type and click OK.
4.From the Connectivity tab, double-click on Body 1.

The Select a Body dialog is displayed.

5.Choose Membrane and click OK.
6.From the Connectivity tab, double-click on Body 2.

The Select a Body dialog is displayed.

7.Choose Ground Body and click OK.
8.From the Connectivity tab, double-click on Point.

The Select a Point dialog is displayed.

9.Choose PointMembInterface39 and click OK.
10.Repeat the same procedure for the other three joints.

A table is provided below for your convenience:

Label

Type of Joint

Body 1

Body 2

Point

Joint 2

Fixed

Membrane

Ground Body

PointMembInterface40

Joint 3

Fixed

Membrane

Ground Body

PointMembInterface41

Joint 4

Fixed

Membrane

Ground Body

PointMembInterface42

Step 5: Creating Advanced Joints.

Now we will define the advanced PTdSF joint.

1.From the Project Browser, right-click on Model and select Add Constraint > Advanced Joint (or right-click the Advanced Joints icon entityAdvancedJoints-24 on the Model-Constraint toolbar).

The Add AdvJoint dialog is displayed.

2.For Label, enter AdvancedJoint 0.
3.Accept the default variable name and click OK.
4.From the Connectivity tab, select:
-PointToDeformableSurface Joint
-Ball for Body
-BallCM for Point
-DeformableSurface 1 for DeformableSurface.

Step 6: Creating Graphics.

Graphics for the ball will now be built here.

1.From the Project Browser, right-click on Model and select Add Reference Entity > Graphic (or right-click the Graphics icon entityGraphics-24 on the Model-Reference toolbar).

The Add Graphics or GraphicPair dialog is displayed.

2.For Label, enter Ball.
3.For Type, choose Sphere from the drop-down menu and click OK.
4.Under the Connectivity tab, double-click on Body.

The Select a Body dialog gets displayed.

5.Choose Ball and click OK.
6.Again under the Connectivity tab, double-click on Point.

The Select a Point dialog gets displayed.

7.Choose BallCM and click OK.
8.Under the Properties tab, enter 1.0 as the radius of the Ball.
9.Under the Visualization tab, select a color for the Ball.

Step 7: Return to the Bodies Panel.

1.Click the Body icon entityMultibodies-24 on the Model-Reference toolbar.
2.For the membrane which has already been defined, click on the Nodes button.

The Nodes dialog is displayed.

3.Uncheck the Only search interface nodes box and then click on Find All.
4.Close the the Nodes dialog.

At the end of these steps your model should look like the one shown in the figure below:

mv-1028_pic1

One final comment before running the model:

This type of constraint does not ensure that the contact point will stay within the range of data specified for the surface.  Additional forces at the end need to be defined by the user to satisfy this requirement.  If the contact point goes out of range of the data specified for this curve, the solver encounters an error (unless additional forces are defined to satisfy this). In that case, one has to change the initial velocities for the ball, or increase the range of data specified for the curve, or run the simulation for a shorter interval of time.

Step 8: Running the Model.

Now we have the model defined completely and it is ready to run.

1.Click the Run icon run-24 on the Model-Main toolbar.

The Run panel is displayed.

2.From the Main tab, specify values as shown below:
-End time = 2.000
-Print interval = 0.0100

mv-1028_pic2

3.Click on the Simulation Settings button.

The Simulation Settings dialog is displayed.

4.Click the Transient tab and as specify the Maximum step size as 0.001 (as the solution is not converged for the default step size of 0.01):

mv-1028_simulation_settings_dialog

5.Click Close to close the dialog.
6.Verify that the Save and run current model radio button is selected.
7.Click on the browser icon file_open_icon_new_mv and save the file as result.xml in the <working directory>.
8.Click Save.
9.Click the Check Model button check_model_icon_mv on the Model Check toolbar to check the model for errors.
10.To run the model, click the Run button on the panel.

The solver will get invoked here.

Step 9: Viewing the Results.

1.Once the solver has finished its job, the Animate button will be active. Click on Animate.

The animationStart-24 icon can be used to start the animation, and the animationPause-24 icon can be used to stop/pause the animation.

One would also like to inspect the displacement profile of the beam and the ball.  For this, we will plot the Z position of the center of mass of the ball.

2.Click on the Add Page icon pageNew-24 and add a new page.
3.Use the Select application drop-down menu to change the application from MotionView clientMotionView-24 to HyperGraph 2D clientHyperGraph-24.
4.Click the Build Plots plotsCreate-24 icon on the Curves toolbar.
5.Click on the browser icon file_browser_icon_small and load the result.abf file from the <working directory>.
6.Make selections for the plot as shown below:

mv-1028_pic3

We are plotting the Z position of the center of mass of the ball.

7.Click Apply.

The profile for the Z-displacement of the ball should look like the one shown below:

mv-1028_pic4