Ejemplo n.º 1
0
    def getFlangeBoltedPlate(self,
                             boltSteel,
                             plateSteel=ASTM_materials.A36,
                             lbls=None):
        ''' Return a suitable bolted plate for the beam flange.

        :param boltSteel: steel type of the bolts that connect the plate with
                          the flange.
        :param plateSteel: steel type of the bolted plate.
        '''
        flangeStrength = self.shape.getFlangeYieldStrength()
        bolt = self.shape.getFlangeMaximumBolt(steelType=boltSteel)
        numberOfBolts = bolt.getNumberOfBoltsForShear(flangeStrength,
                                                      numberOfRows=2,
                                                      threadsExcluded=True)
        spacing = self.shape.getFlangeWidth() / 2.0
        boltArray = ASTM_materials.BoltArray(bolt,
                                             nRows=2,
                                             nCols=int(numberOfBolts / 2),
                                             dist=spacing)
        thicknessRatio = max(self.shape.steelType.fy / plateSteel.fy,
                             self.shape.steelType.fu / plateSteel.fu)
        plateThickness = round(
            thicknessRatio * self.shape.getFlangeThickness() * 1000, 0) / 1000
        retval = ASTM_materials.BoltedPlate(boltArray,
                                            width=self.shape.getFlangeWidth(),
                                            thickness=plateThickness,
                                            steelType=plateSteel)
        print('plate thickness: ', plateThickness * 1e3, ' mm')
        return retval
Ejemplo n.º 2
0
 – BEAM-TO-COLUMN FLANGE) from the document: Design examples version 14.0.
American Institute of Steel Construction. 2011
'''
from __future__ import division
from __future__ import print_function

in2m = 25.4e-3
kip2N = 4448.2216

import xc_base
import geom
from materials.astm_aisc import ASTM_materials

bolt = ASTM_materials.BoltFastener(0.75 * in2m,
                                   steelType=ASTM_materials.A325)  # group A
boltArray = ASTM_materials.BoltArray(bolt, nRows=4, nCols=1, dist=3 * in2m)
eccentr = (4.5 / 2.0 - 1.25) * in2m
finPlate = ASTM_materials.FinPlate(boltArray,
                                   width=11.5 * in2m,
                                   length=4.5 * in2m,
                                   thickness=0.25 * in2m,
                                   steelType=ASTM_materials.A36,
                                   eccentricity=geom.Vector2d(eccentr, 0.0))

Rd = 49.6 * kip2N

## Check bolt strength
CFShear = boltArray.getDesignShearEfficiency(Rd, doubleShear=False)
loadDir = geom.Vector2d(0.0, -1.0)
CF = finPlate.getDesignEfficiency(geom.Vector2d(0.0, -Rd), Ubs=1.0)
CFRef = 49.6 / 52.2
F_flange= Mpr/leverArm
ratio2= abs(F_flange-2908e3)/2908e3

## Maximum bolt diameter.
db= shape.getFlangeMaximumBoltDiameter()
tmpBolt= ASTM_materials.getBoltForHole(db)
ratio3= (tmpBolt.getName()=='M24')
bolt=  ASTM_materials.BoltFastener(tmpBolt.diameter, steelType= ASTM_materials.A490)

## Estimate number of bolts.
N= bolt.getNumberOfBoltsForShear(1.25*F_flange, numberOfRows= 2, threadsExcluded= True)

nRows= 2
nCols= N/nRows

boltArray= ASTM_materials.BoltArray(bolt, nRows, nCols, dist= None)
flangeAsBoltedPlate= ASTM_materials.BoltedPlate(boltArray, width= shape.getFlangeWidth(), thickness= shape.getFlangeThickness(), steelType= shape.steelType)

## Gross section yielding load and net section fracture load
flangeNetSectionFractureLoad= flangeAsBoltedPlate.getNetSectionFractureLoad()
flangeGrossSectionYieldingLoad= flangeAsBoltedPlate.getGrossSectionYieldingLoad()
ratio4= abs(flangeGrossSectionYieldingLoad-1656.207e3)/1656.207e3+abs(flangeNetSectionFractureLoad-1666.98e3)/1666.98e3

## Check local buckling
lambda_hd_flange= shape.getLambdaHDFlange()
flange_buckling_check= shape.flangeLocalBucklingCheck(highlyDuctile= True)
lambda_hd_web= shape.getLambdaHDWeb(N= 0.0, M= Mpr)
web_buckling_check= shape.webLocalBucklingCheck(N= 0.0, M= Mpr,highlyDuctile= True)
ratio5= abs(lambda_hd_flange-7.35)/7.35
ratio6= abs(lambda_hd_web-59.0)/59.0
Ejemplo n.º 4
0
''' Steel bolts according to AISC 360-16 verification test.
    Based on the:
    Example – Design of a Bolted Tension Bearing-Type Connection
    of the course:
    Design of Bolts in Shear-BearingConnections per AISC LRFD 3rdEdition (2001)
'''

in2m = 25.4e-3
kip2N = 4448.2216

import math
from materials.astm_aisc import ASTM_materials

bolt = ASTM_materials.BoltFastener(0.75 * in2m,
                                   steelType=ASTM_materials.A325)  # group A
boltArray = ASTM_materials.BoltArray(bolt, nRows=2, nCols=2)
boltedPlate = ASTM_materials.BoltedPlate(boltArray,
                                         thickness=20e-3,
                                         steelType=ASTM_materials.A36)

Pd = 121.6 * kip2N
CFShear = boltArray.getDesignShearEfficiency(Pd, doubleShear=True)
CFCenterDist = boltArray.checkDistanceBetweenCenters()
CFthickness = boltedPlate.checkThickness(Pd)
minPlateWidth = boltedPlate.getMinWidth()
ratio1 = abs(CFShear - 0.85024866348) / 0.85024866348
ratio2 = abs(CFCenterDist - 0.762) / 0.762
ratio3 = abs(CFthickness - 0.867667222586) / 0.867667222586
'''
print('Pd= ', Pd/1e3, 'kN')
print('CF(Shear)= ', CFShear)
Ejemplo n.º 5
0
# -*- coding: utf-8 -*-
''' Verification of single plate shear and block shear strengths.
Home made test.
'''
from __future__ import division
from __future__ import print_function

import xc_base
import geom
from materials.astm_aisc import ASTM_materials

bolt = ASTM_materials.BoltFastener(20e-3, steelType=ASTM_materials.A490)
boltArray = ASTM_materials.BoltArray(bolt, nRows=2, nCols=1, dist=80e-3)
designHoleDiameter = boltArray.bolt.getDesignHoleDiameter()
plateWidth = 0.14
plateLength = 0.1
eccentr = 5e-3
finPlate = ASTM_materials.FinPlate(boltArray,
                                   width=plateWidth,
                                   length=plateLength,
                                   thickness=10e-3,
                                   steelType=ASTM_materials.A36,
                                   eccentricity=geom.Vector2d(eccentr, 0.0))

Rd = 68e3
shearVector = geom.Vector2d(0.0, -Rd)

# Plate check
## Gross area subjected to shear
Agv = finPlate.getGrossAreaSubjectedToShear(shearVector)
ratio1 = abs(Agv - 1400e-6) / 1400e-6