Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations IDS on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Applying displacement as active contraint rather than force or moment

Status
Not open for further replies.

maheshh

Mechanical
Aug 27, 2003
61
In my problem, I want to rotate a lever and engage it into a hook. This lever while rotating applies certain loading onto a piece of plastic.

My goal is to supply this lever rotational displacement as input and then deduce the reaction forces on the plastic and the hook in which the lever is finally engaged. How can I set it up in Workbench?

I tried to attach the fixed supports and then apply displacement in X and Y direction to the lever end to simulate the motion of th elever. But Ansys does not like this setup. I needs a force or a pressure as an active load to run the model.

Help please.

Thanks
Mahesh
 
Replies continue below

Recommended for you

Hi,
strange that Ansys doesn't like your D constraint... I already performed simulations with D constraints and they worked fine (in Classical, however).
You have two (maybe three) different ways:

1- direct application of D constraints to part's nodes

Theoretically, the key is that if you want a part to rotate around an axis, you should have a local CSYS with an axis on this (let's say it's the Z-axis). The CSYS must be CYLINDRICAL. Then, rotate all the nodes of your part in this CSYS:
CSYS,n_csys
cmsel,s,PART
NROTAT,all
Finally, apply the D constraint which, for a rotation, will be a DY.
I don't know how WB interprets a DY; in Classical it's tricky because D are always linear distances, so if you have to rotate nodes at different radii, you must specify the D constraints for each node after having issued a *GET in order to know the node's X coordinate.
But generally D-constraining more than one node in the same body is "dangerous": you must absolutely be sure of the position of the nodes you are constraining (or, as said, insert the D command in a loop together with a *GET). Of course, on the other hand, if you D-constrain one single node, you will get stress overshoot there, which can be a problem if you are interested in the stresses in the "drive end" side of your part... Choose the best balance for you...

2- "contact-target" MPC solution

This is probably the preferred solution.
Apply a Remote Displacement condition on the entity you want to drive: the "position" will be the center of rotation, then the rotation will be input as "rotZ" value; the behaviour should be "rigid", I suppose. In this way, WB should build MPC connecting the part's nodes to a pilot node to whom the rotation is applied.
You can also do that by Commands snippet if you are unsure of what WB is doing or if the results aren't what you expect.

3- flexible dynamics analysis with v.11

If you are using v.11, you have the new "joints" feature and the opportunity to perform a Flexible Dynamics Analysis. This is the "maximum in life" for you, but you need v.11...

Hope this helps, regards
 
I have already set it up as a contact-target problem in workbench. I was not aware of remote displacement contraint, but will try it out. Unfortunately I will have to go back to Solidworks to setup the CSYS coordinate system - as I have not been able to find this feature in Workbench (am still new to this interface).

Right now I have just applied a force to the lever and set up contact-target regions so that it will rotate and apply the pressure onto the plastic. Am worried about the convergence here - since the displacement is large, the contact status changes frequently. Am solving this as a large diplacement, non-linear, problem with PCG solver.

Hopefully it will converge and results will be good enough for rough analysis. I have not included all the components of the assembly and plan to complicate the analysis in steps - understanding the effect of each component.

My initial feeling is that I like the workbench interface and it is surely easy to setup the contact-target problems. There is no 3D modeling in Workbench though. Will post again whether my problem converges or not.

Thanks,
Mahesh
 
Hi,
the CSYS can be added in WB: select the "Model" branch level in the tree: you will see the "Coordinate systems" bar appear in the "action bar" (or however they call it... I'm still not familiar with WB-interface's terminology...).
The first CSYS WB will create is the global cartesian (it is implicit in the analysis if you don't add CSYS by yourself), then you can right-click "add coordinate system" and set it up as you like.

Regards
 
Am hitting lots of roadblocks in this simulation. Am using Workbench interface (ver 10) which I have never used before. But like I mentioned before, it does make life very easy when setting up a multi component complex contact problem. Following are the issues I am facing:

1) Message:
MAXIMUM NUMBER OF EQUILIBRIUM ITERATIONS HAS BEEN MODIFIED
TO BE, NEQIT = 26, BY SOLUTION CONTROL LOGIC.

I know how to set this NEQIT parameter to a higher number in the classic interface. How can I do it in workbench?

2) Message:
*** ERROR *** CP = 95.297 TIME= 15:26:42
One or more elements have become highly distorted. Excessive distortion of elements is usually a symptom indicating the need for corrective action elsewhere. Try incrementing the load more slowly (increase the number of substeps or decrease the time step size). You may need to improve your mesh to obtain elements with better aspect
ratios. Also consider the behavior of materials, contact pairs, and/or constraint equations. If this message appears in the first iteration of first substep, be sure to perform element shape checking.

Right now I am using fairly fine mesh on most of the solid bodies. Also there is no need for excessive deformation and most of the contacting components are metal (steel, copper, etc.) and very little plastic (am sure the plastic is not deforming too much as there isn't much loading on the plastic).

I am not able to debug this problem since I am not used to WB interface. What are teh few steps I should go through to tackle this prblem and get it to converge (even if with wrong output)?

Thanks in advance,
Mahesh.
 
Hi,
the messages you get are nothing different than in Classical (the solver is the exact same):
- in order to manually control NEQIT, you have to insert a Commands snippet under the Analysis branch (just "before" the Solution branch), and input "NEQIT,50" for example (together with as many other commands as you want or need). If you don't specify otherwise, these commands will be applied AFTER Workbench's /SOLU internal command, but BEFORE the internal SOLVE command.
- the troubleshooting of the misconvergence involving contacts is as tricky as in Classical: almost impossible to advise you about this without seeing your simulation. The first thing I would try is to allow for automatic bissection (auto time stepping) or, if this is already active, allow for more substeps / shorter timesteps, and see if it helps.

Hope this helps a little...

Regards
 
Do you mind sharing the exact syntax for it? Like I said I am very new to Workbench interface and struggling with it. I tried inserting:
NEQIT,100

in the commands element of the tree, but it still defaults to 26.

Thanks,
Mahesh
 
Actually in the solution information output, I can see the following line:
PARAMETER NEQIT = 100.0000000

So it does set NEQIT. but then I have tried both PCG and Sparse Direct solvers and both change this parameter back to 26 as the solution progresses. Why is that?

Thanks.
 
Hi,
it may be because the Commands snippet has not been inserted in the right place.
The Project tree looks like that:

Project
|
|--- Model
|
|----Geometry
|----Coordinate Systems (if any defined)
|----Contacts (v.10) / Connections (v.11)
|----Mesh
|----Named Selections (if any)
|----AMBIENT
|---- Boundary Condition 1
|---- Boundary Condition 2
...
|---- Boundary Condition n
|---- SOLUTION
|----Solution Information
|----Result 1
...
|----Result n

So, the Commands snippet you need must be read just before the SOLVE, that means it has to be inserted in the "AMBIENT" together with the Boundary Conditions (ANSYS will place it automatically after all the BCs).

Btw, if you needed to insert a /PREP7 command, the snippet would need to be placed in the same location, but you'd have to begin with
/PREP7
and end with
/SOLU

Regards
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor