×
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

How to model the rivet connections in airplane fuselage panel?

How to model the rivet connections in airplane fuselage panel?

How to model the rivet connections in airplane fuselage panel?

(OP)
    I am currently modeling the static deformation of an Airbus fuselage part. The part has three main components, shell, frames and stringers. They are connected with rivets.

    At the moment, I model the rivet joints by merge all the nodes in the contact area together. This assumes that the whole contacting areas is moving together not just the rivet joints. Do anybody have a better idea on how to model this connections?

Thank you very much!

RE: How to model the rivet connections in airplane fuselage panel?

Usually when modeling bolt connections I use a macro that takes in the location, radius, and length of the hole, and connects the nodes from each side to the other using beam elements.  If you would like to see the macro let me know.

~Scott

RE: How to model the rivet connections in airplane fuselage panel?

(OP)
Dear Scott,

   Thank you very much for your reply and yes I would like to see the macro. It would be very thankful.

   From what I understand, you connect different parts with beam elements at the holes, right? I think it is a very interesting idea. And how do you model the contacting surfaces between parts. Do you couple the degree of freedom perpendicular to the surface? I have thought about using contact elements like TARGET or CONTACT between the part but I think the computation time will be quite long.

Thanks again for your help!
Note

RE: How to model the rivet connections in airplane fuselage panel?

Here is the code I use to create the bolts.  Usually for the analysis I am doing the contact between the surfaces is not that important so I don't bother modeling it.  Coupling the degrees of freedom sounds like a good idea.  It may also be possible to optomize this code using local coordinate systems rather than moving the working plane and then creating a CS.  Let me know if you have any questions.

~Scott



!***********************************************************
!Bolt  Creates a bolt joint
!**********************************************************

!-----------------------------------------------------------
!Passed arguments
!-----------------------------------------------------------
Xh         =ARG1  !X location
Yh         =ARG2  !Y location
Zh         =ARG3  !Z location
Radius     =ARG4  !Hole Radius
Thickness1 =ARG5  !thickness in direction 1
Thickness2 =ARG6  !Thickness in direction 2
HolePlane  =ARG7  !Hole plane 'XY' or 'XZ' or 'YZ' plane
!Normal to the hole

ignoreNum=3       !Constant set to create only every n beams
/NOPR

!-----------------------------------------------------------
!Setup
!-----------------------------------------------------------

/PREP7
ALLSEL

*GET,Last_ET,ETYP,,NUM,MAX
NextElem = Last_ET+1
*GET,Last_Real,RCON,,NUM,MAX
nReal = Last_Real+1
*GET,Last_Mat,MAT,,NUM,MAX
nMat = Last_Mat+1
*GET,mnode,NODE,,NUM,MAX
PointNode = mnode+1
*GET,csMax,CDSY,,NUM,MAX
*IF,csMax,LE,10,THEN
   CSnum = 11
*ELSE
   CSnum=csMax+1
*ENDIF
CSYS,0
WPCSYS,,0


!-----------------------------------------------------------
!Element definition for beams
!-----------------------------------------------------------
ET,NextElem,4                !Define element as a BEAM4 and set constants
KEYOPT,NextElem,6,1
r,nReal,8,8,8,8,8
MP,EX,nMat,1.000000e+07
MP,NUXY,nMat,0.300000e+00
MP,DENS,nMat,0.00000e+00
!----------------------------------------------------------
!Select nodes from one side to connect
!----------------------------------------------------------

WPOFFS,Xh,Yh,Zh
*IF,HolePlane,EQ,'XY',THEN
   WPROTA,0,0,0
*ELSEIF,HolePlane,EQ,'XZ',THEN
   WPROTA,0,-90,0
*ELSEIF,HolePlane,EQ,'YZ',THEN
   WPROTA,0,0,90
*ENDIF
CSWPLA,CSnum,1
CSnum = CSnum+1
NALL
NSEL,S,LOC,X,0,Radius
NSEL,R,LOC,Z,0,Thickness1
CM,Set1,NODE
!Return to the global coordinate system
ALLSEL


!-----------------------------------------------------------
!Select nodes for second side
!-----------------------------------------------------------

NSEL,S,LOC,X,0,Radius
NSEL,R,LOC,Z,0,-Thickness2
CM,Set2,NODE
CM,Set2Full,NODE
!Return to the global coordinate system
CSYS,0
WPCSYS,,0


!-----------------------------------------------------------
!Connect nodes from both sides
!-----------------------------------------------------------
/NOPR
TYPE,NextElem
REAL,nReal
MAT,nMat
Other1=1
Other2=1
*GET,i2node,NODE,,COUNT
CMSEL,S,Set1
*GET,i1node,NODE,,COUNT
*DOWHILE,i1node
   /NOPR
   CMSEL,S,Set1
   *GET,Low1,NODE,,NUM,MIN
   *DOWHILE,i2node
     *IF,Other2,EQ,ignoreNum,THEN
    Other2=1
    *CYCLE
     *ENDIF
      /NOPR
      CMSEL,S,Set2
      *GET,Low2,NODE,,NUM,MIN
      NSEL,U,NODE,,Low2
      CM,Set2,NODE
      i2node=i2node-1
      *IF,Other1,EQ,ignoreNum,THEN
     Other1=1
     *CYCLE
      *ENDIF
      *IF,Low1,EQ,Low2,THEN
     *CYCLE
      *ELSE
     E,Low1,Low2
      *ENDIF
      Other1=Other1+1
   *ENDDO
   CMSEL,S,Set2Full
   CM,Set2,NODE
   *GET,i2node,NODE,,COUNT
   CMSEL,S,Set1
   NSEL,U,NODE,,Low1
   CM,Set1,NODE
   i1node=i1node-1
   Other2=Other2+1
*ENDDO
/NOPR
!-----------------------------------------------------------
!End
!-----------------------------------------------------------
!Return to the global coordinate system
CSYS,0
WPCSYS,,0
ALLSEL
FINISH
/SHOW,3d
/GOPR
/EOF

RE: How to model the rivet connections in airplane fuselage panel?

(OP)
Thanksss! I will look at the code and try it on my model. ;)

Note

RE: How to model the rivet connections in airplane fuselage panel?

I cleaned up my code a little more and made it a little more adjustible and the output is more informative now.

~Scott

!*****************************************************************
!Bolt  Creates a bolt joint
!*****************************************************************

*GET,StartTime,ACTIVE,0,TIME,CPU

!-----------------------------------------------------------------
!Passed arguments
!-----------------------------------------------------------------
Xh         =ARG1
Yh         =ARG2
Zh         =ARG3
Radius     =ARG4
Thickness1 =ARG5
Thickness2 =ARG6
HolePlane  =ARG7

ignoreNum  =7   !Creates beams only every N Selected nodes.
MaxBeams   =50  !Set to negative if you wish to create all beams
/NOPR

!-----------------------------------------------------------------
!Setup
!-----------------------------------------------------------------

/PREP7
ALLSEL

*GET,Last_ET,ETYP,,NUM,MAX
NextElem = Last_ET+1
*GET,Last_Real,RCON,,NUM,MAX
nReal = Last_Real+1
*GET,Last_Mat,MAT,,NUM,MAX
nMat = Last_Mat+1
*GET,mnode,NODE,,NUM,MAX
PointNode = mnode+1
*GET,csMax,CDSY,,NUM,MAX
*IF,csMax,LE,10,THEN
   CSnum = 11
*ELSE
   CSnum=csMax+1
*ENDIF
CSYS,0
WPCSYS,,0

!-----------------------------------------------------------------
!Element definition for beams
!-----------------------------------------------------------------

ET,NextElem,4                !Define element as a BEAM4 and set constants
KEYOPT,NextElem,6,1
r,nReal,8,8,8,8,8
MP,EX,nMat,1.000000e+07
MP,NUXY,nMat,0.300000e+00
MP,DENS,nMat,0.00000e+00

!-----------------------------------------------------------------
!Select nodes from one side to connect
!-----------------------------------------------------------------

WPOFFS,Xh,Yh,Zh
*IF,HolePlane,EQ,'XY',THEN
   WPROTA,0,0,0
*ELSEIF,HolePlane,EQ,'XZ',THEN
   WPROTA,0,-90,0
*ELSEIF,HolePlane,EQ,'YZ',THEN
   WPROTA,0,0,90
*ENDIF
CSWPLA,CSnum,1
CSnum = CSnum+1
NALL
NSEL,S,LOC,X,0,Radius
NSEL,R,LOC,Z,0,Thickness1
CM,Set1,NODE
*GET,i1node,NODE,,COUNT
/COM,Nodes selected from first side = %i1node%.
!Return to the global coordinate system
NALL

!-----------------------------------------------------------------
!Select nodes for second side
!-----------------------------------------------------------------

NSEL,S,LOC,X,0,Radius
NSEL,R,LOC,Z,0,-Thickness2
CM,Set2,NODE
CM,Set2Full,NODE
*GET,i2node,NODE,,COUNT
/COM,Nodes selected from second side = %i2node%.
!Return to the global coordinate system
CSYS,0
WPCSYS,,0

!-----------------------------------------------------------------
!Connect nodes from both sides
!-----------------------------------------------------------------

TYPE,NextElem
REAL,nReal
MAT,nMat
Other1=1
Other2=1
BeamCount=0
*GET,i2node,NODE,,COUNT
CMSEL,S,Set1
*GET,i1node,NODE,,COUNT
*DOWHILE,i1node
   /NOPR
   CMSEL,S,Set1
   *GET,Low1,NODE,,NUM,MIN
   NSEL,U,NODE,,Low1
   CM,Set1,NODE
   i1node=i1node-1
   *IF,Other1,LT,IgnoreNum,THEN
      Other1=Other1+1
      *CYCLE
   *ENDIF
   CMSEL,S,Set2Full
   CM,Set2,NODE
   *GET,i2node,NODE,,COUNT
   *DOWHILE,i2node
      /NOPR
      CMSEL,S,Set2
      *GET,Low2,NODE,,NUM,MIN
      NSEL,U,NODE,,Low2
      CM,Set2,NODE
      i2node=i2node-1
      *IF,Other2,LT,ignoreNum,THEN
     Other2=Other2+1
     *CYCLE
      *ENDIF
      *IF,Low1,EQ,Low2,THEN
     *CYCLE
      *ENDIF
      E,Low1,Low2
      BeamCount=BeamCount+1
      *IF,BeamCount,EQ,MaxBeams,THEN
        i1node=0
     i2node=0
     *CYCLE
      *ENDIF
      Other2=1
      Other1=1
   *ENDDO
*ENDDO
/NOPR

*GET,EndTime,ACTIVE,0,TIME,CPU
CalcTime=EndTime-StartTime

/COM,-----------------------------------------------------------------
/COM,End with %BeamCount% beams created in %CalcTime% seconds.
/COM,-----------------------------------------------------------------

!Return to the global coordinate system
CSYS,0
WPCSYS,,0
ALLSEL
FINISH
/GOPR
/EOF

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Resources