Hey SDE,
Thanks for the tip. Had already started down that path as one of my colleagues showed me a demo that he had using MPC184's. I've now spent the day testing with the MPC184 element which appears to be quite handy...Here's the script and some basic instructions for implementing it in workbench. Hope you (and anyone else) find this handy.
Overall process is:
a) create local coordinate system at centre of joint (use cylindrical surfaces or circular edge)
b) manually set the Ansys System ID for the coord system (its needed in the secjoint command)
c) create a remote displacement/force in the modal/structural analysis, 1 for each side/link of the joint and record their ID numbers
d) create a command object with the following script using the ID numbers and coord ID...
! OVERALL STRATEGY FOR JOINT CREATION:
! At each side of the desired joint, we want to create a single node that is tied to the geometry.
! These two nodes can then be coupled together in all DOFs except the rotational one.
! The single nodes are created by defining remote force/displacement, and then the remote force/displacement values are deleted.
! The nodes remain however, and can be coupled as desired.
! This can be done via an MPC element, or directly via Node Coupling using the CP command.
/prep7
! A. IDENTIFY NODES AT WHICH REMOTE FORCE/DISPLACEMENT IS APPLIED
! (Must manually enter the ID numbers from looking at the Remote Force / Displacement WB objects)
n1=_npilot29
n2=_npilot30
! B. DELETE REMOTE FORCE/DISPLACEMENT CONSTRAINTS APPLIED
fdel,n1,all ! fdel for remote forces, ddele for remote displacements
fdel,n2,all
! C. DEFINE NEW MPC184 ELEMENT TYPE, SET TO REVOLUTE JOINT TYPE IN X AXIS OF LOCAL COORD SYSTEM
*get,etmx,etyp,0,num,max
n=etmx+1
et,n,184
keyopt,n,1,6 ! Sets element behaviour as revolute joint x-axis / z-axis
keyopt,n,4,0 ! Sets element configuration as x-axis revolute joint (use keyopt,n,4,1 for z-axis)
sectype,n,joint,revo,my1 ! Associates section type information with a section ID number.
secjoint,,12,12 ! Defines a local coordinate system (created in WB, with Manually Set System Number eg 12) at joint element nodes or relative DOFs to be fixed for a general joint element.
type,n
secnum,n
! D. CREATE ELEMENT OF NEW TYPE BETWEEN NODES
e,n1,n2
/solu
! DON'T KNOW WHAT THE BELOW THING DOES.
!cnvtol,f,100,.1
For those unfamiliar with Classic (like me) you need to edit the keyopt and sectype lines to change the joint type.
In this example I'm creating a 1dof revolute joint with local coord x-axis rotations free.
A similar approach using coupled nodes exists but I think the MPC184 method is better. Here it is anyway - no need for the local coord system just the remote forces/disps and the command script which is:
/prep7
n1=_npilot29
n2=_npilot30
fdel,n1,all
fdel,n2,all
nsel,s,,,n1 ! selecting the two master nodes
nsel,a,,,n2
cp,1,ux,all ! coupled in UX, relative to the Remote Force/Displacement coordinate system
cp,2,uy,all
cp,3,uz,all
cp,4,rotz,all
cp,5,roty,all
allsel,all
/solu
The original purpose was a modal analysis of a structure with 1DOF on the joints. I've been told that I need to look into Component Mode Synthesis. I am actually trying to solve a modal and response spectrum analysis but the evidence/suggestions so far is that I can just lock these joints (ignoring their local 1dof) for these types of analyses.
Cheers,
Rich