Description
Key Learnings
- Learn how to solve efficiency challenges with Autodesk Forge automation.
- Learn how to translate multiple file types for conditioning.
- Learn how to apply standards requirements to vendor models.
- Learn about reducing non-value-add activities using Autodesk Forge automation.
Speakers
- TCTimothy ChavezTimothy is an experienced technical consultant with over 8 years' of experience in the software industry and over 6 years' directly with AEC software. Education in Civil Engineering and with a focus on AEC software has given Timothy a unique perspective of how AEC software can help and enhance workflows in the industry. He has spent the last two years with the Autodesk Consulting team, developing custom integrations that focus on cross product integrations, demonstrating the power of connected workflows leveraging the on-premise and the cloud environments.
JUSTIN RICE: Welcome to using Forge to automate model simplification using BIM coordination-- used for BIM coordination I'm Justin Rice. I'm a principal senior solution architect with the consulting organization. I've got more than 20 years of working with automating engineering and automotive workflows, spend a lot of time trying to understand how to pass information from one system to the next without reducing the amount of steps necessary. And I'll be walking you through this Forge workflow
COREDA EHRHART: Hi, everyone. I'm Coreda Ehrhart. I'm a principle customer success manager at Autodesk and with the company five years. But I've got about 15 years of experience working with customers to understand challenges, provide solutions, and then ensure that the success of deploying that solution is quantified and captured.
All right, I think you've probably seen this a lot. This is our safe harbor statement. Any forward-looking statements, opinions, or comments should not be construed as a promise or guarantee and should not be considered in any purchase or business decisions. Essentially, please do not copy, post or distribute this content without permission.
All right, our objectives for the day. Digitizing your workflows drives efficiency and collaboration, but it also introduces some new challenges. What we'll show today is how we address one of those challenges using Forge automation. We'll address working with multiple file types, enforcing standards, and reducing nonvalued added activities.
The agenda today is short. I'll provide a quick overview of the project. Justin will walk us through the demonstration of the workflow and the process. And then we'll talk about results and some lessons learned.
All right. So one of the challenges in working with 3D factory equipment layouts is the high level of detail in the equipment models that we receive from the vendors. This large file size can degrade the performance of the federated model making it very cumbersome to work with. So reducing the level of detail to a manageable size often takes hours and hours of manual editing.
To solve this, we developed an application using Autodesk Forge that automates the process of conditioning the equipment models and lightweighting them for use in a 3D environment. This diagram depicts the customer's back or existing manual workflow identifying the file types and that we receive from the suppliers, converting those files, simplifying the equipment models, and then using them to perform clash detection.
The process often took a long time. And they usually did not meet the deadlines for the model coordination meetings. So with that, we identified the most time-consuming areas of the workflow and introduced the automation to shorten the time to reduce the manual effort.
JUSTIN RICE: All right, so I'll now walk you through the workflow that we use to automate these processes. And we're going to introduce three different options throughout the course of this demonstration where we were able to use model simplification on Forge Design Automation for model coordination-- model coordination. This first option we're going to be looking at is just directly leveraging the design automation workflow to generate factory design assets to ultimately generate a Navisworks cache file or NWC file that we can introduce into model coordination.
The second will introduce exporting that factor design layout to a Revit project file or an RVT. Then generating the Navisworks NWC file, which will allow the model to then be also take part in automated clash within model coordination. In the third option, we'll take a look at leveraging a DWG that is exported off of Forge Design Automation and leveraging that directly in model coordination after the model has been simplified.
Before we get into the model coordination workflows, we'll first review the process that's going to take place on design automation by running the application locally. We'll kick this off by starting a command line application. This application will start up a plug-in inventor and then read a parameters file that will provide all the inputs for processing the model.
The first thing that will happen is the model will be imported. Then the application will traverse through each reference part and assembly. In this case, I have nothing but reference parts included.
It will start evaluating the bodies in the parts to determine if the solid body is going to meet the criteria to be replaced with a bounding box or cylinder. Now, the application will add bounding box and cylinder options into memory to later determine the best fit. Those options are bounding box, oriented bounding box, bounding cylinder, or oriented bounding cylinder.
Design automation will then identify the best fitting option so that feature can be generated based on the selected options inputs. It is worth noting that the application is logging the value of each body's face to volume ratio and width to length percentage for which those bodies met the criteria.
Next, the application will start creating envelope features for the body, which could be a bounding box or cylinder. The boxer cylinder feature created will depend on which option has the closest volume to the actual body.
So the process is first, the options are identified. Then the best matching option is selected. And finally, the feature is created. The original features are then suppressed in the low level of detail model state to eliminate duplicate geometry. Finally, the application will link all the model states. And we'll see the model get updated to reflect that low level of detail.
Once the model states are linked, the application will then create a shrink-wrapped part, a Revit family model, and a 3D AutoCAD DWG.
With the process now complete, we'll first look at the shrink-wrapped part where we can see the shrink-wrapped feature has been created resulting in a single part file.
Now, we'll look at the details in the stringer in the rail part. This is a unique part and the fact that it was a multi-body component that has 13 separate bodies included.
Because we want to get to the lowest level of detail, the application is evaluating each body and determining if the standard box or cylinder will be selected. Looking at the primary model state, we can-- see, the body contains fillets and holes. However, switching to the low level of detail model state, you'll see an oriented bounding box has been added. This is accomplished with an oriented UCX and rectangular extrusion resulting in good visual fidelity and a good representation to be used within model coordination for clash.
Now, we'll take a look-- we'll walk through option one step by step. We'll later highlight the changes to this processes for the other two options. So first, we're going to be reviewing the process to an integrator or a vendor to upload the models to model into Autodesk Construction Cloud docs. And then the process engineer who requested the model will request that model to be uploaded or to be processed. So this will give the process engineer and the equipment vendor an opportunity to collaborate around the model.
You can see the model is now uploaded. And we'll be able to switch roles to the process engineer. So again, by having that model uploaded to Autodesk Construction Cloud would give that space to coordinate.
Next, we'll start reviewing the process engineer process. So there, we're going to actually review that model, validate that the model actually meets all the requirements of the design specification. But then they're also reviewing the model that it meets the requirements for model coordination. Once that review is complete, they will then move the model into a different location, a different folder within Autodesk Construction Cloud, and schedule the job to be run.
Process engineer will review the process. From the Review Model's folder, the process engineer will visually inspect the model and determine what level of detail's been provided if the level of detail will impact the ability to perform clash when federating a million square foot facility. Or does this model need to be simplified leveraging the simplification tool? I'm going to look closer at the details that are currently in this catwalk design.
A much smaller facility, we'll use in this demonstration. Looking at this model, I can see there's a vast amount of detail that will impact the performance of a federated model that will have little impact on the ability to run clash. These components give us an opportunity to do lightweighting, specifically by replacing the bodies with bounding boxes or cylinders.
To do that, I will kick off the process by changing the Simplify attribute to Run. Selecting Run will enable the model to be picked up on the application's next scheduled job. The application is triggered on a schedule and configured to watch a specified folder for files with specific extensions, like STEP, IGES, SAT and the Simplify attribute set to Run.
I will manually trigger the job and refresh my browser. You'll see the file has been picked up. And the Simplify attribute is now set to be in progress. While the model is processing, let's review the inputs used by design automation. I'll bring up the Hangfire dashboard that is used to schedule the jobs.
Specifically, we have a Create Model State value set equal to True. There's also a lot of other model state inputs. The first is the model state name as well as the face to volume ratio, which we have set to 0.05, which is a relatively low face to volume ratio of five faces to 100 cubic centimeters.
To calculate that ratio, you take the number of faces in the body divided by the volume of the body in cubic centimeters. If the ratio for a body is greater than 0.05, it will then be included. The other criteria used to identify bodies to simplify is a width percentage of length. This is calculated by dividing the longest bounding box dimension by the second longest dimension.
So in this case, if the width is less than 25% of the length of the body, it will be simplified. If either criteria is met, that body will be simplified into a bounding box or cylinder.
So now let's review in the model how these criteria are calculated. We'll use a simple logic form. Face to volume again is the face/body count divided by the body's volume in cubic centimeters. So 100 faces divided by 1,000 cubic centimeters is a 0.01.
Remember, we configured the application to run the face to volume of 0.05. So let's use this iLogic utility to calculate the face to volume ratio of a selected body. We can see the component has a face to volume ratio of 0.9. So that is greater than the 0.05 and would be simplified. If I select this other body, you can see the results is 0.01.
So that's not a lot of faces relative to the body's volume. However, if I select the same component to calculate the width percentage of length, again, that is the second-longest dimension divided by the longest dimension. The body results in a 0.03, or width is 3% of the length looking at the inputs on the application specified value of 25%. So that body has a width percentage of length that is less than the 25% and would be simplified. During this vertical component, we can see it also has a 3% width percentage of length and will also be simplified.
Now, let's take a look at the results in Autodesk Build, which were created by Forge Design Automation. To do that, I'll first duplicate my browser window to allow me to open the input STEP file and the output IPT or part file at the same time.
Now, I need to quickly reorient the STEP file to match the part file-- the STEP file on the left and the part file on the right. I zoom in to the same component on both. You can see all the details on the STEP on the left have been removed in the part on the right. So you can see how many bodies met either the face to volume or the width percentage of length criteria allowing us to replace those bodies with bounding boxes dramatically reducing the number of facets in this model.
Now, let's look at the file size. The original step was 29.2 megabytes. And the IPT is 14.2 megabytes. So a reduction of over 50% in file size resulting in a dramatic reduction in the facets, which will also improve the performance and model coordination as well as dramatically reducing the file size.
Now, we'll review the process engineer's workflow for sinking that model into Vault allowing us to use that simplified model as a Factory Design asset. With the results from design automation and Autodesk docs, I'll switch to Vault and sync the files. To do that, I will select the Download from cloud drive based on the configured collaboration folder using the project sync capabilities involved. Then it will specify which folder and files I want to sync and download and click Download.
Now, I'll bring up the job queue, and I will see the job is pending. Then I'll bring up the Job Processor where I can see that the job is going to be picked up or force the job to run by pausing and resuming my Job Processor. Now, we'll see the Desktop Connector download the files. So what's happening right now is the files are being downloaded based on the collaboration folder I set up. These files are added into Vault from Autodesk Construction Cloud or BIM360.
Now, we'll get the zip file created by design automation into my local workspace. While the zip is downloading, it's worth pointing out zip is definitely larger than the original STEP file by almost three times. This is a result of the original STEP file being included in the zip, plus each simplified body now has geometry for two separate model states.
With the zip downloaded, I will navigate to that working folder and extract it. Then from Inventor, I will open the top level assembly that will have the same name as the STEP file. You can see all the files that were created as a result of importing the STEP file on design automation.
The assembly will automatically open in the low-level of detail model state. All parts and subassemblies will have the low level of detail model state activated. This can be seen based on the word Low in parentheses next to all occurrence names in the bounding box or cylinder geometry to reduce the level of detail.
So let's interrogate some of the parts that were simplified on design automation. If you remember, the treads had traction dimples. The frame members were sheet metal components. And the posts were square tubes. As you can see, the level of detail has been dramatically reduced. We can see all the components that met the specified criteria, many of which were based on the width percentage of length.
Many of these components were very long relative to the cross-sectional dimensions. Even this handrail that was originally a piece of pipe has been replaced with a cylinder. However, maintaining the visual fidelity of the model when we zoom out since my goal is to be able to use this model to identify clash with another aspect of the project. So I'll be able to identify major clashes with the design without dragging down the performance of the federated model.
Next, let's look at what has occurred at a part level to achieve this reduction. When we look at the part, we can see two model states-- primary and low. The application evaluated the body. So let's look at the primary model state.
You could see the part has a sheet metal-- was a sheet metal component with all the details of the dimples. But the number of occurrences this model would have had impacted the performance of model coordination. This body, as we saw earlier, met the face to volume criteria. Therefore, was simplified in the low level of detail model state.
We have switched to the low level of detail model state. And we will see a new UCS and extrusion feature have been added to the part and named to match the body's name. In this case, there was only one body that has been reviewed. However, if there were multiple bodies, they would have also been reviewed and potentially added new simplified geometry.
By adding the UCS to the position of the bounding box, it's fully parametric. Giving the end user of the model parameter for x, y, and z translation as well as rotation and the length, width, and height parameters of the bounding box.
If the oriented option ended up being selected, we would see the rotational values reflected in the x, y, or z rotation parameters. The bounding box is created by traditional features. First, a sketch based on a UCS plane is created. Then an extrusion feature is created.
Now, walk through the steps that the process engineer will walk through to create the NWC to be included in model coordination. We will review this model in ACC to determine if this model is in good state to use as a factor design asset. This part file is a result of shrink wrapping the simplified assembly. After reviewing this model, looks to be in the correct level of detail to create an asset from. If key details were lost during simplifying or shrink wrapping, the model could be added back in from the simplified assembly.
Now, I'm content with the level of detail in the part file. I'm going to open the part file from Vault. I'll navigate to the folder that was sent from ACC into Vault and select and open that file. And I'll go to the asset builder. Then I will publish the asset into a Vault library.
Publishing that asset will make it available for us to use in layouts. Now, I'll place this asset into a 2D layout. I will select the Catwalk asset, insert it into the layout. Then I will click Open in Inventor, which will force the layout to be saved. In Inventor, we will see the newly placed asset has been added to the model.
Now, I can see in the Inventor layout in Navisworks and share this file. I will move the NWC from the Design Communication folder to the Model Management folder. [INAUDIBLE] Using File Explorer, I will simply cut the NWC file from the Design Communication folder and paste it into the Model Management folder.
Next, I'll add the file to Vault. To do that, I will select Add Files in the File menu and select the NWC file. Then I'll click OK to add the file on the Add Dialog box. This model was being managed internally. We could have also added this file via the Vault add-in in Navisworks to maintain the correct links.
Since this is a file I want to share with the Model Manager, I will also change the state to release to manually trigger sinking of this file up to ACC. Project Sync can also be configured to run on a schedule via the Job Processor to upload files to ACC. Switching to the Model Manager role, I'll now navigate to the file on Autodesk Construction Cloud where I can see where I've configured the coordination space.
I'm able to view the uploaded NWC Federated with an NWC created from a Revit file. However, the NWC file created from Inventor, files are not supported in automated clash detection. I will be able to visually inspect and add issues to the factory layout in the context of the building model in Revit.
So I can see the facility-- and if I zoom inside the building, I'm able to see the factory layout enabling walkthroughs and saving specific views. I will now show how to append the NWC model in ACC to Navisworks. First, I will click on the Collaboration tab and select Open.
This will allow me to append models in the coordination space for the selected account and project. As you can see, I've appended the factory layout and the building. With both models appended, I can now run clash detective allowing the Model Manager to identify clashes between the equipment and the facility. We can see there are quite a few locations where the inserted catwalk interferes with the building model. So either the building, the catwalk design, or both will need to be modified.
Now, we'll look at option two where we're going to first export the factory layout into Revit before we generate the NWC, which will allow us to automate the clash detection. To do that, I will click Simplify-- the click the Simplify button and select Revit model as the type.
This Revit file will not be populated with metadata, and it'll just be convert each top level and vendor component into a generic family. However, the model will meet our needs to perform clash detection.
By appending the Revit file into Navisworks, I'll create a new NWC by appending-- [CLEARS THROAT] I will now go through the same process to release the NWC created from the Revit file.
I'll move the new NWC into the Model Management Folder, add the file to Vault, and release it. Finally, I will upload the model to Autodesk Construction Cloud. From ACC, I will quickly review the new NWC.
You can see all the contents of the model are still intact. However, switching to model coordination, I'll demonstrate the new NWC was able to participate in automatic clash detection.
Now, we can expect all the clashes that have occurred, unlike the previous NWC that had a symbol next to it indicating it could not participate in automatic clash.
Here, we're able to see each clash that has occurred between the factory layout and the facility.
Now, we will review option three where we can leverage an exported 3D DWG. So again, this option, we'll be leveraging a DWG that was exported directly from Inventor in design automation within model coordination. So we won't have to do any local or desktop processing. We'll just need to move that DWG folder into a model coordination space.
So we can leverage the 3D DWG created by design automation directly in model coordination.
First, we'll copy the Catwalk DWG into the Coordination Models folder, which has been configured as a coordination space. Switching over to Model Coordination, we will see the model will now participate in automatic clash detection.
Now, we'll federate the building and the system to validate the system is correctly located, again, treating that DWG as a system. During the model, we can see that the system integrator has not properly positioned the system. And I'll? Need to address and will need to address this issue.
However, if I switch the roles to being the Model Manager, [CLEARS THROAT] I'm able to transform this model into the proper location and still run clash detection.
With the model moved in the proper location, I will save the transform along as the check for clashes based on the new model position.
Now, we're able to review all the clashes that were detected. It's worth noting that since this is an exported DWG, we will lose all the components in that names. But we will be left with generic solids with no metadata. But we still can identify clash. However, this provides a high-level process to validate the entire system relative to other systems or the facility.
In the future, we plan on building some of these capabilities as a desktop application where we'll be able to generate the model states and the parts on Forge from the desktop. Then we'll be able to create the model states in the assemblies locally and sync the model states locally. So that would look something like this. We would go through the parts model state, dialog box. Select the face to volume ratio and the width, the length with percentage of length ratio we wanted as well as the name of those new model states we'd want to introduce. Then we traverse all of the parts within a given assembly.
Once we identified all the parts, we would generate a JSON for each one of those parts and upload that file to Forge Design Automation Or Forge Data Management, then process that file through design automation. Again, doing that, introducing those new bounding boxes or bounding cylinders once each one of those parts had been processed. And the nice thing about this is we're now processing all the parts in parallel. So we're really enabling a much faster path to getting that simplification because we're able to parallelize all those processes.
Once the files are simplified, they would be downloaded INT. And the new assembly would open referencing those updated parts. With the assembly now referencing the new assembly or the new parts that have been simplified, we would then process the assembly itself where we would go through each one of the assemblies looking for parts that are smaller than a certain bounding box length. So that's corner to corner length.
Any of those components would be suppressed in that model state. And then finally, the user would be able to click Select Link Model States, which would recursively go through the entire model linking that low level of detail model state at every level of the model.
Last couple of things I wanted to talk through is just how does the application get administered? So thus far, we've leveraged mainly Azure app services to deploy this application, which gives us a nice advanced set of tools where we can actually edit the configuration of this application pretty much live.
We'd have to pause it shortly and restart it to make it reread. But we're able to make changes. So specifically if we want to add a new project, all we need to do is add that new element to the JSON, specify the project ID and the folder ID, and specify all the additional inputs.
And so here's all with those additional inputs are in that configuration so we can specify what's the attribute that we're watching, the value that will trigger the process, which extensions to watch. These are some of the Forge activities that we use to do some of the design automation. And then all those same model state or simplification criteria that we identified earlier in the demonstration.
The other thing is we're leveraging a Hangfire dashboard to schedule the jobs. So this is included in the deployment to the app service where we're actually specifying and able to see which jobs ran and which folders are we watching, and what were the results when a job was ran. So with that, I'm going to go ahead and hand it over to Coreda to talk about the results.
COREDA EHRHART: Thanks, Justin. So as Justin showed through this automation, we've achieved about a 97% reduction in time to prepare those equipment models for the use in the federated model. The result of the file reduction is anywhere from 51% to 74% so far that we've seen. And the output still maintains the high level of detail and the low level of detail representation for use of the equipment model.
So this frees up the engineers to work on more value-add activities and also allows for more or improved reviewable data during the Model Coordination meetings. Of course, that leads to increased accuracy of the model layouts and requirements and then also reduces the amount of issues found in the field, which is a cost savings. It also aligns internal and external modeling expectations to improve future model submissions from those vendors. Justin?
JUSTIN RICE: Just a couple of quick lessons learned as we went through this process. Processing, especially importing extremely large files and files that are larger than 500 megabytes, have caused some challenges with the processing or importing those files on Forge, which is part of the reason why we're looking at that additional feature workflow where we can still leverage some of the Forge application to paralyze and offload some of that workflow and giving us some more refined input into the individual processes.
But we also want to make sure that we have a clear definition of standards and expectations from vendors, which will reduce the chance of modeling failures, right? So the goal is ultimately to get those vendors to really start understanding what is this other use case that we're trying to provide, which is trying to get into model coordination in the layout of the equipment, not designing, not to the level of detail necessary to actually build that piece of equipment?
Some of the other things that we've identified is that surface and mesh models are not going to be picked up as bodies to be simplified. So those are not going to be identified as candidates to replace with bounding boxes or cylinders. And one of the best thing-- one of the biggest lessons learned that we learned throughout this-- and it's why that future workflow is starting to look or starting to be identified is-- when we're working with design automation, the way we can take the best advantage of it is looking for running smaller parallel jobs.
So if we can run those part files on an individual job and have those all run in parallel, we'll dramatically reduce the amount of time it takes to generate the results, but also allows a lot more likelihood of success.
And so the last thing I'll share is we provided a way for you to request a trial of running this simplification on your own. Please note that this is going to end up being giving you access to a Autodesk Construction Cloud project that will allow you to run the certification. However, because this is going to be a very public project with a lot of different companies, do not upload anything that is confidential into that Autodesk Construction Cloud project.
But if you follow this URL or use the QR code, it will bring you to this form. If you fill out the form with your name and your email, company and role, as well as your use case, we'll then add you into that project and allow you to upload files to test out the simplification.
That concludes our demonstration. Thank you.