Beschreibung
Wichtige Erkenntnisse
- Learn about designing a simple factory layout in Factory Design Utilities (Inventor or AutoCAD) and simulating the part flow in FlexSim.
- Discover short-term plans for Factory Design Utilities and FlexSim.
- Discover Autodesk's vision of Autodesk Fusion digital factory.
Referenten
- PSParker StandingParker Standing is the Product Manager for the Factory Design portfolio at Autodesk, which includes FlexSim and Factory Design Utilities. He has been emersed in the factory space for several years, helping users design factory layouts and improve their manufacturing processes using discrete event simulation. Parker has a B.S. degree in Manufacturing Engineering from Brigham Young University. Outside of work, Parker and his wife live with their 4 daughters in Santaquin, Utah. Parker spends his free time 3D printing animals for his girls, taking walks with his dog, and binging The Office with his wife. Parker and family love living so close to the mountains and try to explore them as much as possible. When Parker has a chance to sneak away by himself, you can find him fly fishing small streams for trout.
- PBPhil BoBoPhil BoBo started working for FlexSim Software Products in 2004. In 2023, FlexSim was acquired by Autodesk. Phil has worked in development, quality assurance, software architecture, management, and leadership roles throughout his time at FlexSim. He is currently managing Factory Design and Simulation software developers in the Product Development and Manufacturing Solutions (PDMS) division. Previously, much of his work has been focused on 3D graphics technology and integration between FlexSim and other software, platforms, and devices.
PARKER STANDING: Hello, everyone. Welcome. This is a quick safe harbor statement. Please don't make any purchasing decisions with any future-looking statements that we might cover in this class. My name is Parker Standing. I'm the Product Manager for Factory Design Utilities and FlexSim here at Autodesk.
PHIL BOBO: And I'm Phil BoBo. I'm a Senior Manager of Software Development over Factory teams.
PARKER STANDING: And we're excited to talk to you about FlexSim and factory design utilities and also share some of the work related to Factory Design in the future Fusion industry cloud.
All right, here's a quick look at some of the topics that we will cover in this class. First, we'll go into an introduction to FlexSim and discrete event simulation. And then we'll have a product demo by Phil. And then we'll do a quick look at the product roadmaps for both FlexSim and Factory Design Utilities. And then we'll end with sharing Autodesk's vision for Fusion factory and what that will look like in the Fusion industry cloud.
All right, so what is FlexSim? Just a quick background, the FlexSim software has been around for over 20 years. And recently, as of November of 2023, FlexSim was acquired by Autodesk. So as of the time of this class recording, it's been about 10 months since that acquisition has happened. And we've done some great work. And some of that work, we want to showcase in the product demo by Phil.
FlexSim is a discrete event simulation software that allows you to simulate any process or flow of goods to identify bottlenecks, balance resource use, and increase throughput in the system. FlexSim is mainly used to model manufacturing processes, warehousing, and material handling, and health care.
Autodesk provides some great tools for 2D and 3D factory layout with AutoCAD and Inventor and Factory Design Utilities. And these tools work really great with designing and laying out factories and facilities and manufacturing processes.
FlexSim provides a way to bring these static layouts to life, animating the flow of the products or the people within the facility. In this way, FlexSim complements other Autodesk tools you may be using, again, like AutoCAD, Inventor, Revit, Factory Design Utilities, allowing you to utilize the 3D and 2D models of your facility to simulate the processes within FlexSim.
All right, and to understand the need for simulation, we first need to understand the problem or the cost of waiting time. And in any business or company, you have three types of waiting time that you need to account for. The first type of waiting time is customer waiting time. This tends to be the most expensive. And this is the time that the customer spends waiting on products or services. And it's the time between when a customer submits an order to when they receive that order.
If your customers have to wait for what they need, products or services, they will start to look for another source to get it. And this is why it's the most expensive type of waiting time. If you have no customers, you have no business.
The second type of waiting time is product waiting time. This is the waiting time that the product experiences while sitting in inventory as raw material, in the process in queues, between operations, or sitting in a warehouse before it goes out to customers. This storage of product can be very costly to a business, and it is the second most expensive type of waiting time.
The third type is resource waiting time or machine or operator waiting time. This is related to a time a machine or an operator or other resource spends sitting idle waiting for items or products to reach them while they are sitting idle waiting for the upstream process.
These waiting times are considered waste because it doesn't provide any value to the company or customer. And it's often this elimination of waste that's at the core of many methodologies in manufacturing, such as lean manufacturing, just in time, queue theory, Six Sigma, and so on. Chances are, if you're viewing this presentation, you're somewhat involved in this elimination of waste.
And these waiting times compete with one another. As one decreases, another increases. For example, if you always have product available going out to customers, that means the product waiting time sitting in the warehouse increases. So it's always a balancing act, and it's always a tug of war between these types of waiting times. And finding this balance can be very challenging for an engineer or a company, but it is achievable through discrete event simulation.
When we use a discrete event simulation software like FlexSim, we can start to look at our processes holistically from start to finish, from raw goods or materials to when it reaches the hands of customers. And we can start to understand where the waiting time is in our process. We can also start to understand the relationship between the different types of the waiting times, between customer waiting time, product waiting time, and resource waiting time.
For example, this chart, this graph shows how resource waiting time relates to product waiting. If we look at the x-axis of this chart, we can see as utilization of a resource increases and rises over 90%-- this would mean that the waiting time for the resource is decreasing-- the waiting time for the products in front of that resource increases exponentially.
I'm going to say that one more time. So as the utilization of a resource, whether it be a machine or operator, rises over 90%, the waiting time for the products in front of that upstream of that resource increases exponentially. So the goal becomes, how do we balance the utilization of our resources with the waiting time of the product as well as having finished product available for our customers? We can achieve this in FlexSim.
And a successful discrete event simulation software will always account for three things. The first is variability. This is variation in tasks done by machines or operators. Or it could be the unexpected breakdowns of a machine.
The second thing is interdependency, so knowing how different elements of your system interact with one another and how changing one of those elements changes the overall system. And the third thing is time, so understanding what issues or insights arise over a period of time.
Here's a quick look at some of the applications that we can do in FlexSim. So warehousing is one that FlexSim does very well with objects like storage racks and being able to model complex conveyance systems or other material handling processes.
It also handles essentially any type of manufacturing scenario, so consumer products, automotive, electronics, medical manufacturing. It does have a very vast 3D library, so you can use certain types of materials in your model. It can model people flows. So think of the flow of patients in a health care facility, like a hospital. It can model those.
And it does have a powerful navigation tool in the software to optimize for travel paths or find likely collisions. And it also can model AGVs or AMRs, which is Automatic Guided Vehicles or other autonomous robots, where you're able to define the behavior and the paths of different types of robots to simulate different interactions and overall optimize the system.
All right, so now I'm going to pass it over to Phil. And he'll give us a product demo and show off some of the work that we've been doing over the past few months.
PHIL BOBO: Thanks, Parker. So one of the main questions we've gotten since acquisition by Autodesk is regarding integration between FlexSim and other Autodesk products. So pretty soon, coming soon to a software product near you by Autodesk is a new add-in for FlexSim that allows us to integrate with more Autodesk products.
So in FlexSim-- this is FlexSim-- on the left, there's various objects you can add to your simulation model. For example, we could add a shape. And if you click on an object, on the right, it shows you the properties for that object. And right here, we can change the 3D shape of the object that we added. And so with the new Autodesk Interop module, we've added support for Revit files, Inventor files, and improved our support for AutoCAD drawing files.
So if, for example, I click on this Revit file, then it will start to load that Revit file. If it uses-- so if you've never run it before, you'll get a dialog that will show you, hey, we need to install the Revit Interop module for you. And so once that is installed once, you won't see that installer again. And instead, it will load just like this, where it loads in the shape. So now we have the shape, and we have this wonderful facility that was made in Revit. And we read it in directly from a Revit file.
So we could check the No Select box. And now we can click right through it in order to build a simulation model right here in our facility. And we will change the shape of this processor to a file from Inventor. So here's a machine that was made in Inventor. It'll take a second. And there we go. We now have Processor, and it loaded this geometric data about this machine directly from an Inventor file without needing to go through an intermediate format. So that's pretty cool.
The next feature that we'll talk about is improved import for AutoCAD drawing. So in FlexSim, typical workflow, you add a model background. You pick an AutoCAD drawing. It loads that drawing in, starts drawing it. You can see the various layers and its properties. And you got this nice 2D layout.
And often what people will do is they'll start building on top of this. For example, we could add people locations like an operating room table and drag it out, rotate it, scale it, size it, position it, put it where we want in the room. Then we do the same thing for each object that we want that's in our drawing. Maybe we got an MRI machine. We drag that out, put it in the room, set it to the right size.
And you can see in this model, we've got a bed layer where we want to put beds on each of those. We've got a wall layer. We want to make some walls where all this stuff is. And now, with the new AutoCAD API and FlexScript, we can actually read that data directly from the file in order to then programmatically create these objects instead of having to drag each of them out.
So in this example model, we have script here that loads a given AutoCAD database drawing file, then goes through the block table. And for stuff in the bed layer, we're going to create a bed. And then we'll set its location to the average point of the lines in that polyline from the AutoCAD.
And then for the wall layer, what we'll do is we'll loop through those, and we'll create walls at those points. Pretty sweet. And then we'll connect all those up to an A-star navigator, which will enable us to have mobile resources run around through here and avoid walking into the walls. So I'll come over here, push this Autobuild Model button. And it will run that script, read all that data, and automatically create all these objects, which is pretty cool.
So each of these beds is an individual object we could select, do various things like add them to a group. So they're currently in the Locations group. Maybe we want them in a Beds group. That's pretty cool. And A-star back here is a series of grid nodes that explain which direction you can go. And so here, you can't go to the right, because you'd run into a wall.
And we don't really need this visualization turned on. It's just kind of showing that those walls are working with A-star. So if we come in here, we can turn off the grid nodes, and we'll have a nice, prettier drawing of our health care facility that we autobuilt using the new AutoCAD API.
Well, that's sweet. Where do we go from there? So in FlexSim, we can add more logic to this model. For example, say we want to add a doctor. So we add a doctor. We take that doctor, we can connect that doctor to the A-star grid so that they avoid the walls. You could also add, say, an entrance and an exit point into our model, where patients will come in. We'll just have them jump in a bed, process, and then get escorted out by the doctor.
And we can do that by adding a person process flow. So in FlexSim, we have this process flow view where we can add logic in a no-code, low-code environment. So we can create a person, and we want to create a person in the Entrance object. And then this flow will start for that person. And we could add some sets of activities, like this one is walking somewhere and then processing.
And so we can connect that up and say, hey, we want him to walk to the Beds group. I think we added a Beds group. Whatever, we'll have a Location group. That's probably fine. Object groups. Oh, they're in both, Locations and Beds-- either way. And so then once they're done processing in the bed, we can send them out of our model. Escort to exit, that sounds like a pretty good way to leave our model.
And we will use this doctor. And we will exit out this object. And then when our person is done, we no longer need their process, we can send it to a sink. If we reset and run our model, the guy shows up. Oh, yeah, he got in the OR. My bad. Let's send him to a bed. We'll send him to Bed1. That'll work.
Yeah, go get in the bed. Yeah, there you go, buddy. He gets in the bed, processes in the bed. The doctor goes and gets him, takes him out of the model. And that's a pretty basic FlexSim model. And now it is a good demonstration of how you can autobuild that kind of model from DWG, DWG data from AutoCAD.
Every AutoCAD drawing is a little different. And so this first iteration of this module gives you the power and flexibility of a FlexScript API. And coming soon, we may improve upon those features to add easier-to-use interfaces to let you build certain things if your drawings follow certain schemas and different rules and things like that. And so that's coming. But this first version, 1.0, is this API.
And now I'd like to demonstrate another example of that API. For this demonstration, we'll fire up AutoCAD so we can look at the drawing. So in this example, we've written code that will read in certain dynamic blocks from AutoCAD. Like I was saying, every drawing is a little different.
And so this particular drawing has a bunch of dynamic blocks. And in those dynamic blocks, they have various paths set up, various intersections and things like that. And so when we load this one in, instead of reading bed layers and creating beds, we read these certain dynamic blocks in. Close that drawing. And we will create AGV paths.
And so here, these are FlexSim AGV paths that are simulation objects that we can then use to build a AGV system. And so we've got these cool little paths. Instead of just lines, they've got simulation logic on them so that we can send AGVs to move around in our model. And we can also take this model, if we run our simulation and we want to change stuff about it, this example demonstrates this API can also be used to write data back.
I moved a path, I pushed the Export button. If I go back to AutoCAD and I open, this drawing I just wrote has that moved path. And that's pretty cool. So we can read and write data to AutoCAD drawings now and not just draw the lines in order to lay stuff on top.
Our AutoCAD Import is also now using FlexSim meshes instead of a third party library to draw it, which makes it so that it will work with more features like our web server and VR and various other features of our graphics engine where DWG drawings weren't coming through correctly before. So that's fun too.
Now, for our last example, I'm going to show a more complicated workflow, and we will start in Inventor. So over here in Inventor-- Inventor, Navisworks, and AutoCAD have a set of plugins that you can install that are part of the product manufacturing and design collection. And if you have those plugins called Factory Design Utilities, sometimes we call them FDU for short, you can create factory layouts in Inventor. And we will do that.
And so here I'm going to start a new factory layout. And it's going to create a new Inventor file based on that template. And that gives us a cool outline of our factory facility. And in Factory Design Utilities, you then have Asset Browser, where you can check out all these cool assets that are part of FDU.
So here's a bunch of material handling equipment. And here's a bunch of process equipment. And the thumbnails will load slower than my patience in this particular demo. And there's cool stuff like robots and safety equipment.
And for this demo, we have this cool feature where we can favorite stuff. And so I favorited some objects like a container mesh that kind of looks like a queue. So we could drag out a container into our model. And we're done making that one, but I want to make another one. I will move it over a bit. Maybe we'll move it up here a bit. Put it right there. And now we're done making that one. We're done making queues.
We can check out our model here. That's fun. We've got some queues. Let's have some machines as well. We can make automatic cosmetic packing machines. So we made one. Let's make a second one. We'll make a third one. And maybe for this third one, we'll rotate it around. That's fun. And we're done rotating it. And we're done making those machines.
And we can add some conveyors. Add some conveyors. So drag out this conveyor, snap it on to the end of these machines. That's pretty fun. And we can be done with that. And when we click on each of these factory objects, we have Factory Properties, where we can change different things about that object. Like, this conveyor has a length. And we could change it from 78 to 178. We push that button, and it will update. And now it's longer. And that's pretty cool.
And so we will save this as an assembly. Call it SimpleFactory4. And that's fun. And then in Factory Design Utilities, we have these buttons where we can open this layout in the other factory applications, such as AutoCAD.
And so I push the button Open in AutoCAD, and then it saves the layout, starts firing up AutoCAD, and opening it as a DWG file. So now we've got a nice 2D layout of all these objects. We can still click on them and change their properties and do all that kind of good stuff. And we will save that. And next, we go-- sure, keep saving. We will minimize this. And we'll go back to FlexSim.
And in FlexSim now, we can use the same stuff we talked about before. We could load in a model background that is the-- Documents, Factory Projects-- simple factory that we just made. That's pretty cool. Wait, and then we can push this button.
What's that going to do? So that button is going to go through the layout that we just saved from Factory Design Utilities. And it will read that data using FlexScript and then create objects at all the points where those objects were in Factory Design Utilities.
And what it will do, in addition to that, is for each of those objects, they're now FlexSim discrete event simulation objects. And so we can start to use them. It has a process time. It also loaded in the Factory Design Utilities properties into labels on the objects so that we can bring our factory to life by using FlexSim.
And so we can connect up from a source that creates products into this queue, into these processors. And then we'll connect from the processors to our conveyors. And connect from our conveyors over to this queue over here or connect from that queue to a sink so that our products can leave our system. And we will see what happens then.
What's going to happen? What's going to happen, we'll have a running simulation. This will process. This will convey. The queues will queue. And we can run a FlexSim simulation to bring to life our factory that we designed in Factory Design Utilities and start doing statistical analysis.
So over here, we have a dashboard. In our dashboard, we could add charts, like a state time chart, maybe a state chart. In the state chart, let's add our processors. Like Parker talked about, wait times and utilization, if we look at the state of our queue in our chart, we now have average state time.
And for each of our processors, we now have their utilization. And you can see their utilizations are pretty low because we haven't put any real data into the system yet. And so if we do do that, we come in here, for example, and set the processing time on these processors to a different value, perhaps one that reflects reality, then when we run this thing, we will start to see-- ah, starting to get some stuff backed up in our queue.
Utilizations are going up. State time is going up. We can start to analyze our system so that we can validate the throughput of reality. We could run what-if scenarios. We could identify bottlenecks using utilization and state times. We can use statistics in order to analyze and optimize our factory design layout. And so that's pretty awesome. And I will turn it back to Parker.
PARKER STANDING: All right, thanks, Phil, for that exciting demo. All right, now we'll look at the product roadmaps for both FlexSim and Factory Design Utilities. I'm going to give you a little bit of insight on what the plan is for both products. So for FlexSim, the main priority for us is to continue developing the Autodesk interoperability with FlexSim.
And this is a big bucket with potentially lots of projects falling into this bucket. And specifically, we can share that we will be adding a user interface for the AutoCAD API, like Phil mentioned, and then also just polishing the import workflow for bringing in FDU layouts. Like Phil showed, that does require doing it through the script window in FlexSim. And we want to eliminate the need to solely use the script.
Another project that we're going to be working on is the ability to change the FlexSim class after the object is placed within the 3D workspace. So for instance, if you drag out a processor and you have different properties assigned to it, you would be able to change it to, let's say, a combiner within FlexSim or dragging out a queue and changing it to a processor after you actually place the object into the 3D workspace.
And then, lastly, we are committed to developing the Omniverse Connector. So this is a feature that has been in the software for some time, and we'll continue to develop, do bug fixes and performance improvements. And then a related project to that is we also want to allow for the writing of the simulation animation from FlexSim to the actual USD file to then be played-- the animation to be played within an Omniverse application like Presenter or Composer.
This is not a comprehensive list of what's on the product roadmap. This is just the main project. So we will still continue to have regular releases with additional features not mentioned here.
All right, for Factory Design Utilities, for this software, we are prioritizing stability. So performance improvements is another big bucket for us here, specifically placing and editing assets or copy and pasting assets or groups of assets. We want to make some improvements specifically in those areas.
There's also a major update on the Connector class user interface. This update will make it much easier to define how and when factory assets connect with each other, such as conveyors, and then being able to save those preferences for future.
Then lastly, there has been some work done with sinking the layout data within Inventor. So this is options to enable or disable sinking the layout data file for cross product use, like into Navisworks or into AutoCAD. So we want to extend that functionality to all three products, Inventor, AutoCAD, and Navisworks. And again, this is not a comprehensive list, so there will be regular updates with additional features not mentioned here.
All right, another project that we have slated-- and this relates to FlexSim and Factory Design Utilities-- we want to-- long-term, we want to migrate to Platform Asset Library on the Fusion industry cloud. But in the interim, we want to change the Factory Design Utilities Library for FlexSim users to have access to that library, as well as being able to add discrete event simulation properties, like max content or process time, set-up time, to those assets and then save those assets back to the cloud library.
So this is something that's really exciting that's, again, kind of connecting Factory Design Utilities with FlexSim, allowing for a simpler workflow to use factory assets or machines.
All right, so now we'll have a quick look at some of the future plans that we have for Fusion factory within the Fusion industry cloud. So hopefully, this is a graphic that you've seen before. This represents the three industry platforms currently being built by Autodesk, Fusion, Forma, and Flow, Fusion being the platform for design and make, manufacturing; Forma being served by AEC, so Autodesk Architecture, Engineering, and Construction; and also Flow, media and entertainment platform.
So our goal with Fusion Factory is to provide a workspace that would connect Fusion with the Forma platform. And it would be a tool for the entire factory life cycle, from designing, building, and operating any factory or facility.
These three industry platforms are being built on a common platform, allowing for easy exchange of data and also collaboration between your team members.
All right, so this graphic is meant to look confusing because it is. This represents the dilemma that we're all facing right now, different team members using different types of tools or maybe different suppliers or contractors using different tools. And it's the issues of figuring out how to export to a certain file type to bring in to a certain type of tool that you're using or wondering if a file or document is out of date, asking for updates from the other collaborators, and also just struggling to work on projects with many different players and many different stakeholders.
Sometimes, this can feel like a mismatching-- trying to shove together mismatching puzzle pieces to get a clearer picture. And it can be very difficult. This is probably something that you're experiencing. And I know that we experience this even at Autodesk. And we are solving some of these issues.
As Phil mentioned in our demo, we are starting to make Autodesk tools work together. With FlexSim, we're integrating with AutoCAD and Factory Design Utilities and Revit, but there are definitely still gaps. And this is what we're trying to solve with the Fusion industry cloud.
So as the Autodesk tools move into Fusion, this is hopefully what the experience will be like, where all the data will be connected and easier for collaboration among team members and suppliers and contractors. Just imagine the tools of Fusion, AutoCAD, Revit, Factory Design Utilities, and FlexSim, among other Autodesk tools, bringing together and connected, while also having the data from your shop floor or manufacturing floor influencing your process or design.
This can automate repetitive tasks and workflows and ultimately leading to better business decisions. We will also provide ways for suppliers and contractors to access the industry clouds as well, specifically with the ability to specify permissions for specific stakeholders in a given project.
All right, and we'll end with the vision and the mission of Fusion Factory. Again, it's all about connected data. So we want to enable users to achieve a self-adapting factory or facility to drive continuous improvement and to ultimately lead to better decision-making from all of the available data from their facility.
And then the mission is more of the how of what we will do. We will achieve this vision by connecting AEC, so the Forma platform, Architecture, Engineering, and Construction, and the manufacturing data platform and tool sets onto one platform, making it easier to coordinate and, again, ultimately lead to better decisions in your businesses.
All right, we hope you got something valuable out of this class, whether it was learning more about FlexSim and its capabilities, getting a sneak peek into the short-term plans for FlexSim and Factory Design Utilities, or the long-term vision of integrating as we move into the Fusion industry cloud. Thank you.