Rebar schedules for box culverts
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Be nice to others! Respect the FreeCAD code of conduct!
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Rebar schedules for box culverts
Not that I mean to make more work for us around here, but...
I was just thinking the other day about how the rebar tool and the arch workbench are really well-suited for reinforced concrete design. More specifically, in my line of work, we often do custom rebar layouts for bridge decks and cast in place drainage structures (box culverts that pass underneath roads, manholes, and other junction-type structures).
Below is a link to a PDF of a standard box culvert design we use at the Illinois Department of Transportation (IDOT). It's a nice example of an industry-standard design document that FreeCAD is, in my opinion, capable of with a little extra effort... maybe.
http://www.idot.illinois.gov/Assets/upl ... tails.pdf
In any case, I don't know that it's worth pursuing at the moment - I'm trying to sort out how one could use these tools to do custom structure design in the transportation engineering sector. Still, I don't see much in the PDF plan sheets that FreeCAD couldn't reasonably produce if someone put their mind to generating the python code for it. The question is, how useful would it be to others outside my use case?
If there's any low-hanging fruit in this, it might be the ability to generate a rebar schedule (I don't see evidence this functionality exists yet). Essentially, it calls out each bar's name (usually designated by one or two characters like "h", "s1", "v", etc.), the number of bars that occur in the design, the bar size, the bar length, and a depiction of it's shape. There's also a tally of the structure's volume, the total weight of the rebar steel, the number of splicers required to join the rebar, and the square footage of permanent sheet piling (steel barriers used to retain earth while the hole is dug and the culvert is constructed). Some of that is determined by formulas or quantities that are a part of the design.
Anyway, see page 4 of the PDF link for details on the schedule of quantities.
Apart from that, I was wondering, has there been thought given to using FEM to analyze reinforced concrete structures?
Just for the sake of completeness, this ties into the Civil Engineering Workbench / Transportation Engineering discussions:
Civil Engineering Workbewnch wiki:
https://www.freecadweb.org/wiki/Civil_E ... rkbench/en
Transportation Engineering topic:
https://forum.freecadweb.org/viewtopic. ... &start=330
General Civil Engineering topic:
https://forum.freecadweb.org/viewtopic. ... &start=170
I was just thinking the other day about how the rebar tool and the arch workbench are really well-suited for reinforced concrete design. More specifically, in my line of work, we often do custom rebar layouts for bridge decks and cast in place drainage structures (box culverts that pass underneath roads, manholes, and other junction-type structures).
Below is a link to a PDF of a standard box culvert design we use at the Illinois Department of Transportation (IDOT). It's a nice example of an industry-standard design document that FreeCAD is, in my opinion, capable of with a little extra effort... maybe.
http://www.idot.illinois.gov/Assets/upl ... tails.pdf
In any case, I don't know that it's worth pursuing at the moment - I'm trying to sort out how one could use these tools to do custom structure design in the transportation engineering sector. Still, I don't see much in the PDF plan sheets that FreeCAD couldn't reasonably produce if someone put their mind to generating the python code for it. The question is, how useful would it be to others outside my use case?
If there's any low-hanging fruit in this, it might be the ability to generate a rebar schedule (I don't see evidence this functionality exists yet). Essentially, it calls out each bar's name (usually designated by one or two characters like "h", "s1", "v", etc.), the number of bars that occur in the design, the bar size, the bar length, and a depiction of it's shape. There's also a tally of the structure's volume, the total weight of the rebar steel, the number of splicers required to join the rebar, and the square footage of permanent sheet piling (steel barriers used to retain earth while the hole is dug and the culvert is constructed). Some of that is determined by formulas or quantities that are a part of the design.
Anyway, see page 4 of the PDF link for details on the schedule of quantities.
Apart from that, I was wondering, has there been thought given to using FEM to analyze reinforced concrete structures?
Just for the sake of completeness, this ties into the Civil Engineering Workbench / Transportation Engineering discussions:
Civil Engineering Workbewnch wiki:
https://www.freecadweb.org/wiki/Civil_E ... rkbench/en
Transportation Engineering topic:
https://forum.freecadweb.org/viewtopic. ... &start=330
General Civil Engineering topic:
https://forum.freecadweb.org/viewtopic. ... &start=170
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
-
- Veteran
- Posts: 3156
- Joined: Sat May 20, 2017 12:06 pm
- Location: Germany
Re: Rebar schedules for box culverts
No, because it is difficult.Joel_graff wrote: ↑Wed Apr 04, 2018 12:34 pm Apart from that, I was wondering, has there been thought given to using FEM to analyze reinforced concrete structures?
In concrete engineering the structure (lets say a beam) is calculated at the limit state.
In the tension zone the concrete is cracked, you will need special programms to simulate
the cracks with FEM.
epsilon-c: compression-zone with elastic/plastic material behaviour (blue curve)
epsilon-s: tension zone, cracked, only the rebars can take tension loading (red).
The height of the cracked zone depends on the loading and the epsilon strain, wich must be
calculated iterative.
Re: Rebar schedules for box culverts
cannot access the pdf link... can you check?
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Re: Rebar schedules for box culverts
That's what I suspected. It's been 20 years since I sat through a structural design class - your diagram brings back a lot of memories, lol. Anyway, I didn't expect there would be an FEM solution, but I thought it was worth asking.thschrader wrote: ↑Wed Apr 04, 2018 1:38 pm No, because it is difficult.
In concrete engineering the structure (lets say a beam) is calculated at the limit state.
In the tension zone the concrete is cracked, you will need special programms to simulate
the cracks with FEM.
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Re: Rebar schedules for box culverts
Downloads the pdf to my phone without an issue.
You can go to www.idot.illinois.gov, click on "Resources" at the top, then "Manuals and Guides" and scroll down until you see "Culvert End Section Details.pdf"
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
Re: Rebar schedules for box culverts
Test create culvert object.
Code: Select all
#-*- coding=utf8 -*-
"""
4 Apr 2018
"""
import ArchComponent
import Part
from FreeCAD import Vector
data = [
{'S':1200 , 'R':1200 , 'Ts':125, 'Tt':190 , 'Tb':150 , 'L':1000}
]
class Culvert(ArchComponent.Component):
def __init__(self, obj):
ArchComponent.Component.__init__(self,obj)
obj.addProperty("App::PropertyLength","Length","Culvert","Length of the box culvert").Length=1000
obj.addProperty("App::PropertyLength","S","Culvert","").S=1200
obj.addProperty("App::PropertyLength","R","Culvert","").R=1200
obj.addProperty("App::PropertyLength","Ts","Culvert","").Ts=125
obj.addProperty("App::PropertyLength","Tt","Culvert","").Tt=190
obj.addProperty("App::PropertyLength","Tb","Culvert","").Tb=150
obj.Proxy = self
def execute(self, fp):
L = fp.Length
S = fp.S
R = fp.R
Ts = fp.Ts
Tb = fp.Tb
Tt = fp.Tt
B = S+2*Ts
H = R +Tb + Tt
Box = Part.makeBox(fp.Length , B , H )
points = [
Vector(0, 2*Ts , Tb),
Vector(0, S , Tb),
Vector(0, S+Ts , Tb+Ts),
Vector(0, S+Ts , R),
Vector(0, S , R+Tb),
Vector(0, Ts+Ts , R+Tb),
Vector(0, Ts , R),
Vector(0, Ts , Tb+Ts),
]
L1 = Part.LineSegment(points[0] , points[1] )
L2 = Part.LineSegment(points[1] , points[2] )
L3 = Part.LineSegment(points[2] , points[3] )
L4 = Part.LineSegment(points[3] , points[4] )
L5 = Part.LineSegment(points[4] , points[5] )
L6 = Part.LineSegment(points[5] , points[6] )
L7 = Part.LineSegment(points[6] , points[7] )
L8 = Part.LineSegment(points[7] , points[0] )
line = Part.Shape([L1,L2,L3,L4,L5,L6,L7,L8])
Wire = Part.Wire(line.Edges)
face = Part.Face(Wire)
void = face.extrude(Vector(L,0,0))
concrete = Box.cut(void)
fp.Shape = concrete
def makeCulvert( CulvertData , name='Culvert' ):
S = CulvertData['S']
Ts = CulvertData['Ts']
R = CulvertData['R']
Tb = CulvertData['Tb']
Tt = CulvertData['Tt']
L = CulvertData['L']
B = S+2*Ts
H = R +2*Tb
obj = FreeCAD.ActiveDocument.addObject("Part::FeaturePython",name)
Culvert(obj)
obj.Length = L
obj.S = S
obj.R = R
obj.Tt = Tt
obj.Tb = Tb
obj.Ts = Ts
obj.ViewObject.Proxy=0
if __name__=='__main__':
makeCulvert(data[0])
FreeCAD.ActiveDocument.recompute()
Msg('Done!\n\n')
Last edited by chakkree on Thu Apr 05, 2018 2:23 am, edited 1 time in total.
-
- Veteran
- Posts: 3156
- Joined: Sat May 20, 2017 12:06 pm
- Location: Germany
Re: Rebar schedules for box culverts
my 2 cents. Should be possible...Joel_graff wrote: ↑Wed Apr 04, 2018 12:34 pm I was just thinking the other day about how the rebar tool and the arch workbench are really well-suited for reinforced concrete design.
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Re: Rebar schedules for box culverts
Definitely looks good. I've been kicking around the best approach - some of the designs are strctures that have angles and holes in them - which would suggest a CSG approach might be best. Also, is there a way to constrain the rebar positions with respect to the structure, such that if the structure resizes, the rebar adjusts with it?
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
-
- Veteran
- Posts: 3156
- Joined: Sat May 20, 2017 12:06 pm
- Location: Germany
Re: Rebar schedules for box culverts
Yes, the rebars are based on sketches.Joel_graff wrote: ↑Wed Apr 04, 2018 7:58 pm Also, is there a way to constrain the rebar positions with respect to the structure, such that if the structure resizes, the rebar adjusts with it?
Tons of rebar stuff:
https://forum.freecadweb.org/viewtopic.php?f=8&t=22760
- Joel_graff
- Veteran
- Posts: 1949
- Joined: Fri Apr 28, 2017 4:23 pm
- Contact:
Re: Rebar schedules for box culverts
Ok, thanks. That gives me enough to get started.
FreeCAD Trails workbench for transportation engineering: https://www.github.com/joelgraff/freecad.trails
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers
pivy_trackers 2D coin3D library: https://www.github.com/joelgraff/pivy_trackers