Revit Structure & Dynamo – Piled Wall Systems Tutorial

When creating Piled wall systems within Revit you either have to create a structural wall and then 2D detail this in plan to look like a piled wall system or more commonly place each male and female pile and at best, use the array or copy commands. Although this is not too complex for linear piling it can get quite time consuming when curves and turns are encountered within the path.

Link to video: https://youtu.be/EWsMnTbkIWE

Piled wall systems with Revit and Dynamo

Dynamo does provide a very neat solution to this problem and could also be used for sheet piling as well as secant and contiguous systems. In this example I have created a chain of model lines which represents the path of the piling in plan. I then project these lines onto the surface which gives the correct Z levels. The path is then divided into segments and each coordinate pair is then extracted from this list. Finally an adaptive component is placed at each set of coordinates.

This tutorial starts with a quick look at the anatomy of an adaptive component. Adaptive components are very useful when you need to control the placement of elements along a path and have the element rotate to stay aligned. A good example of this is sheet piling.Revit Sheet Piling - Connected clasps

The Adaptive Sheet Pile is basically a standard foundation family that is nested into an adaptive component template. The below image shows the nested family and the adaptive points that control the placement of the pile.Adaptive Component

The first stage is to create a path for you piling layout, in this example I have done this with Model lines. Start Dynamo and then create a new workspace.
The first section of the dynamo graph will allow the user to create a selection of model lines. The Element Curves node will get all the curves/lines within the selections. The list is then flattened and the individual curves/lines are joined into a single poly curve. The last node reports on the total curve length.Sheet Piling with Dynamo - Select model elements

The next stage is to get a selection of your topography and then convert this into a poly surface. The node I have used below if the Python implementation which is much faster than the original conversion tool. (This is found in the Spring Nodes package).

You can then take the surface and the joined curve from the top example and then project this onto the poly surface (Your Topograpghy). Note that the Vector.ZAxis simply projects down the Z axis.Sheet Piling with Dynamo - Get topo

The graph should now look similar to the below image.

Sheet Piling with Dynamo - first part of graph

We now take the new poly curve and divide this into a series of points. In my case the sheet pile in 900mm from point to point. I want to have a start and end point for each pile so I am simply going to divide this by 2.

Sheet Piling with Dynamo - Code Blocks

I have now created a Code Block to divide the curve length into the half distance of my sheet pile.Sheet Piling with Dynamo - Create the Divisions

This will of course create a real number (65.4950), what we need is to round this value down to the nearest integer (65). The output of this is then used to divide the curve into the required number of points. The output of the Points node now contains all the coordinates.

Sheet Piling with Dynamo - create the division Points

These coordinates need to be split into pairs. The List.Chop will then create pairs but if there is a single coordinate left then the Adaptive Component will fail to be placed. The filter looks at the length of the sub lists and then only gets the lists that have more than one set of coordinates.Sheet Piling with Dynamo - Split into Pairs

This is more of a high level overview of the process and the Dynamo script but I will do a video showing and explaining each stage.

LawrenceH

Posted in Tutorials | Tagged , , , , , , | 7 Comments

Autodesk Revit 2017 – What’s New for Structures

It’s that time of year again when Autodesk start to release all the new 2017 software, and a very interesting release for Revit 2017. The first most significant change is the discontinuation of the singular discipline Revit software such as Revit Architecture, Revit Structure and Revit MEP; these are now replaced with Revit 2017 which contains all three products in one ‘box’. The application icon will now simply read Revit 2017 as shown below. Notice that the logos have also had a makeover!

Link to video: Link to Revit 2017 whats new Video

Revit 2017 Icon

In this review I will just focus on the structural changes that have happened in Revit 2017 which I have broken down into the following:

  • Reinforcement (RC Detailing)
  • Structural Columns
  • Structural Connections

Let’s start with the new features for reinforcement features which are very significant in this release! The first feature to look at is varying range rebar. You can now easily add rebar to tapered beams and also to cranked slabs.Revit 2017 - Varying Range Rebar
You will notice that the structural rebar now has a new Rebar Set type for Varying Rebar. This can be used in all sorts of situations where the bar is not parallel to a particular surface or face.varying range rebar
The varying range bar can also be detailed and scheduled as shown below. The varying bars can be called up separately or with a ‘sub mark’ such as letters or numbers. These options can be set within the reinforcement settings.

Varying Range rebar - Range indicator and schedule
Next up are the new reinforcement bar couplers which add not just couplers but also anchors and any product which aids the continuity of concrete systems. The rebar couplers have a new category and can also have a 2D symbolic representation as well as a 3D model.

Revit 2017 - Structure Ribbon

The couplers will attach to reinforcement bar that matches the bar diameters and can also be added to rebar ranges and also scheduled.

Revit 2017 - Rebar Couplers
Bent fabric is now incorporated within this release and can be simply sketched onto any element that can host rebar.

Revit 2017 - Bent Fabric

Structural Columns

A small new feature is now the ability to attach a structural column to an isolated foundation. This can be useful if you have situations where the foundations are changing level as the columns automatically lengthen or shorten based on the moves. If a concrete column is attached to the foundation then these elements will become monolithic.

Columns can now be split which again is very useful for situations where a column has been modelled through many different levels and then requires section changes as the design progresses. Another use is for analysis where nodes are required at floor plates.

Structural Connections

Revit 2017 now adds 22 structural connection types into the product which are directly taken from the Autodesk Advance Steel product. This is obviously a very big improvement as many structural consultants will not directly design connections but want to show design intent within a steel frame to communicate better with the client and the fabricators. Another advantage is that early design coordination can now be realised by modelling items such as haunches and gusset plates that could cause clashes with other elements.

Structural Connections

The connections can be designed to EC3 and will directly take design loads from the results of an analysis that are stored within Revit.

Structural Connection Settings

At present you cannot create fabrication drawings from the various members and plates but this could be a direction that Autodesk move into in the future. At present Revit is not very good at dealing with small elements so perhaps this is a little way off into the future.

Connections - Coordination with rebar

Coordination with connection holding down bolts and anchors with reinforcement.

Click the below link for a full video review.

https://www.youtube.com/watch?v=5IO3Hq0DBts

Enjoy,

lawrenceh

Posted in Uncategorized | Tagged , , , , , | 3 Comments

Autodesk Inventor 2016 R2- Shape Optimisation for Structural Connections

Within the release of Autodesk Inventor 2016 R2 is the Shape Generator tool for the design of efficient, light weight structural systems based on typical boundary conditions and loads that you specify. Although this technology is currently not within the traditional structural design products from Autodesk such as Autodesk Robot and Autodesk Advance Steel it is worth noting that manufacturers of mass produced structural systems can benefit from the optimisation of traditional products.Structural Optimisation of Fabricated Structural Support Systems

In this simple example shown above I have taken a simple bracket fabricated from 6mm thick steel plate with a simple gusset plate added for stiffness. The bracket needs to be designed to take a load of 500KN/m² with a safety factor of 1.2. The first step is to model the bracket with its basic form with all fixing positions.

Basic Bracket modelled in Autodesk Inventor.jpg

The next stage is to launch the Shape Generator. Within the Shape Generator toolset you then add your Boundary Conditions (Constraints) and desired loads. You will also notice that an option is present to preserve regions. This tool will enable you to select regions where fixings will occur such as bolts and plated connections. Inventor will then take this into account during the optimisation process and preserve these vital areas.

Autodesk Inventor Shape Generator - Analysis Ribbon.jpg

Inventor Shape Generator - Loads Added and Regions Preserved

Once this is done you then run the Generate Shape command. Inventor will then optimise the shape based on the Shape Generator Settings. In the below example we have set a material reduction of 30%.

Note that the result now shows the original mass and the new mass based on the optimisation. The resolution of the mesh can also be refined within the Shape Generator settings dialog box.Autodesk Inventor Shape Generator - Optimised Shape

The next stage is to promote the shape to the part modelling environment where you sketch and model a refined and logical shape based on the mesh. The below image shows the promoted mesh over the original Inventor part. Bear in mind that with the affordability of LASER cutting for mass production this form of optimisation becomes a necessity based on higher material costs and customer expectations.

Laser Cutting Mild Steel Plate

Inventor Shape Generator - Sketch Optimal Profiles over mesh

Below is the finished part.

Finished Part

You can then check the new bracket with the original loads and boundary conditions. In this example the bracket now shows a safety factor of 1.1, this could further be refined by changing some of the fillet radii on the profiles.

Inventor Shape Generator - FEA Check.jpg

A very interesting process and surely the future?

LawrenceH

Posted in Tips and Tricks | Tagged , , , , | 1 Comment

Revit Space Trusses using AutoCAD and Dynamo

Way back in 2011 I wrote an article on the use of AutoCAD and Revit Structure to create a space truss structure. This was using AutoCAD meshes to facet a smooth lofted surface and then involved picking each line and converting these into structural members. At the time this was a valid workflow but, five years on and with the introduction of Dynamo we now have much quicker, productive and robust method to create 3D trusses or space frames.

https://revitstructureblog.wordpress.com/2011/11/09/engineering-the-impossible-with-the-revit-structure-suite/

Revit Strcuture Roof Geometry

In this tutorial I will just outline the main toolsets and processes used to create the above space truss. You will need the following software before you can attempt the tutorial:

  • Autodesk Revit 2016
  • Autodesk AutoCAD
  • Autodesk Dynamo 9.1
  • Lunchbox Package for Dynamo

The geometry is first created in AutoCAD as a polyline curve as shown below. The front curves are mirrored and then copied to the rear 50 meters back.

AutoCAD Roof Profile

You can then create some arcs on the side of the roof structure and then create a lofted surface. Your AutoCAD model will then look similar to the below image.

AutoCAD Geometry.jpg

The real fun then begins in Revit and Dynamo. Here is what the finished graph looks like! As you can see there won’t be scope to create a full, click by click tutorial on this but I will produce a video tutorial if there is enough demand!

Dynamo Graph

The first step is to start a new Revit Structure project and start Dynamo. You then need to import the AutoCAD wireframe. I used the centre of the roof structure as the origin and inserted this Origin to Origin.

You then need to select this geometry in dynamo and then generate dynamo faces from the AutoCAD surface. The dynamo surfaces are then passed into the LunchBox Space Truss node. This creates all the line work and the faceting strategy for the top and bottom chords as well as the braces. Notice that you can also set the truss depth. I have chosen to utilise sliders for all these operations.

Dynamo Graph - Selecting the AutoCAD geometry

Once the centre lines are generated then you can start to assign structural members. This is done with the following. I have used a level to associate the members and then a structural framing type node to select different CHS members for each structural system.

Dynamo Graph - Adding Structural Framing to the curves

The next step is to add some information into the members. I have set the Z justification to centre and also set some type comments so I can filter specific systems within Revit. Of course you could also number the members using dynamo as well!

Dynamo Graph - Setting the instance parameters for the structural framing.jpg

You will then have a space truss. You can of course then edit the structure within AutoCAD and then the new members will generate.

All in all a much quicker and more productive workflow!

LawrenceH

Posted in Tutorials | Tagged , , , , | 5 Comments

Revit Structure – Controlling the stick symbol location for Beams

Earlier this week a client contacted me and asked about how to control the position of the stick symbol in climbing beams (see image below). Now this actually has a very simple solution but this was something that I had never noticed before and hence I thought I would share the knowledge and the tip and trick! The model had a mono pitch roof with secondary beams that were set out parallel to the rafter’s top flange. See model below.Revit - Climbing Beams

The problem arose in a course plan view as, by default, the symbolic lines are generated from the centre of the structural framing member and not the top plane. In the image below I have shown where the symbolic line should appear with the red reference planes and where the stick symbol is actually shown with default settings.Revit Stick symbols in plan and section

This obviously causes many issues with dimensioning and detailing of the structure as well as ambiguous results when adjacent beams with a differing section size are displayed in a seemingly different location!

Select your framing members and in the Properties Palette set the Stick Symbol Location to Top of Geometry. As you can see in the image below, the default setting is the centre of the member

.Stick Symbol Centre - Revit

Here is the before and after result. The shift is more pronounced on deeper sections but it does show the issue and the solution.

Revit - Stick Symbol Centre on beam

Revit - Stick Symbol Top on beam

lawrenceH

Posted in Tips and Tricks | Tagged , , , | 2 Comments

Modelling Piling from Microsoft Excel using Revit & Dynamo

Happy New Year to everyone and straight back into the deep end with more Dynamo! Way back in 2013 I reviewed the Excel Model generation tool that allowed the creation of Revit elements based on a spreadsheet. This allowed the modelling of various objects but was limited to generation of only geometry and did not allow the user to add data to the objects.

Link to YouTube Video: YouTube Tutorial

Revit Piling from Dynamo and Excel

I used this tool to create a Revit piling layout derived from AutoCAD geometry. See Post Below.

https://revitstructureblog.wordpress.com/2013/03/17/modelling-revit-piling-from-microsoft-excel/

I have since used Dynamo to achieve a better method for the setting out of piling as well as setting the Pile number and even loading.

In this post I will step you through the Dynamo node so that you can create a similar routine. Let’s start with the raw Excel data. In my example I have the Pile Number, the Easting and Northing Coordinates, the Level, Depth (Length of Pile) and the Pile Diameter.Excel - Piling Data

The following image below shows how to select the Excel file and then pass the filename and sheet name into the Excel.ReadFromFile node. Note that I have used a Code Block for the Excel Sheet Name but you can of course use the string node instead.Dynamo - Get Excel Data

The next stage is to remove the unwanted headers from the Excel data. The List.DropItems node is removing the first list. Note that list is a ‘nested’ list so will remove the [0] index as shown below.

Dynamo - Remove Headers from Excel

Next the transpose node is used to sort the data into the correct columns. The current data is stored as rows. The List.Transpose node converts rows to columns as shown below.Dynamo - Transpose the List

The next task is to get all the required data into separate lists so that we can later ‘feed’ this into the nodes to create the piles and also add data to each Revit Element. Dynamo has a node called List.GetItemAtIndex which gets the relevant data. In the below example I am getting the data from index 1 which is the Eastings Coordinates. Index 0 is the first column which is the Pile Number.Dynamo - Get Item At Index

This then leads me onto the next problem. By default the piles will be modelled from the origin (0,0,0) and Revit has a geometry limit of 20 miles which will clearly be broken by the large numbers (This project is around 200 miles from the OS base). In the below image you can see the ‘effect’ of geometry modelled a long way from the origin. This is referred to as graphical degradation and will affect the visual and also the accuracy of snaps etc.

Revit - degradation of Graphics

In the Project I have set the Project Base Point of a known Pile coordinateSet Project Base Point

I have then subtracted these values from the Eastings and Northings to give me coordinates relative to my project base point. In the below example I have the known Easting and Northing setting out point set. I then pass this value into a code block (marked with red boxes). The Code block is taking two variables and then subtracting the set out from the real coordinate. The nodes with the blue frames are the original coordinates.Dynamo - Transpose the Coordinates

The next step is to then model each pile based on a pre-defined Foundation Family. In this example I have created a round pile with an instance parameter to control the Diameter and another to control the depth. I have named this family ‘Concrete Pile’. The FamilyTypes node will list all loaded Families in your current Revit project. We then use the FamilyInstance.By.Coordinates node to generate each family from the two code blocks that generate the X and Y position and the third which is the ‘raw’ Z levels.Dynamo - Create the Piling

It is now time to make use of the ‘metadata’ such as the Pile Number and the Diameter by utilising the Element.SetParameterByName node. This needs the elements from our FamilyInstance.By.Coordinates node and also a string for the Parameter Name. Again I have used a Code Block for this example. In the image below I am using the instance parameter ‘Mark’ to read the Pile number and then add this into each Pile. This is then repeated for the Pile diameter and if required, the loading.

Dynamo - Setting the Pile Number

So anther interesting use for Dynamo in a structural project. I will produce a video tutorial to accompany these notes in the next day or so.

Enjoy,

LawrenceH

Posted in Tutorials | Tagged , , , , , | 16 Comments

Happy Holidays!

Hope you all have a good holiday season and a great New Year!

Christmas Image

Posted in Uncategorized | 1 Comment