Community Tip - You can change your system assigned username to something more personal in your community settings. X
Hello,
I'm trying to estimate the build time by measuring the cross section area for each slice in a model, since I have an approximated melting-time/area [m²/s].
My idea were to use a plane which defines a section and from there measure the area, then move the plane one length unit and take a new measure.
This would go on until the whole part/build is covered then save this data to a .csv or excel file.
My question is: is it possible to write a script within Creo to do such thing or are there anyone with another suggestions?
Thanks!
Solved! Go to Solution.
Implementing automated looping with logic is not well supported within Creo. There are some workarounds using counting of model regeneration iterations or conditional if then else looping in relations but I would not pursue this as my first option.
Mapkeys can semi-automate the process. For instance incrementing the section position and calculating the section area.
If you have access to Behavioral Modeling Extension (BMX) that may be able to handle what you need with the feasibility/optimization studies. BMX plus and Excel analysis feature might do it.
I would take a look at an external application to handle the automation outside of Creo. Take a look at Nitro Cell which is Excel based and might be the fastest way to get what you want. It is purpose built to automate Creo from Excel.
http://www.simplifiedlogic.com/nitro-cell
Implementing automated looping with logic is not well supported within Creo. There are some workarounds using counting of model regeneration iterations or conditional if then else looping in relations but I would not pursue this as my first option.
Mapkeys can semi-automate the process. For instance incrementing the section position and calculating the section area.
If you have access to Behavioral Modeling Extension (BMX) that may be able to handle what you need with the feasibility/optimization studies. BMX plus and Excel analysis feature might do it.
I would take a look at an external application to handle the automation outside of Creo. Take a look at Nitro Cell which is Excel based and might be the fastest way to get what you want. It is purpose built to automate Creo from Excel.
http://www.simplifiedlogic.com/nitro-cell
Thanks a lot for your insight! I will try out both mapkeys and Nitro Cell
If I'm not mistaken, doesn't the software that does the slicing and feeds the data to be built usually give some sort of time estimate? Seems there are a lot of specifics associated with a build (type of plastic, layer thickness, density of internal structure, etc.) that would have a big effect on how long it's going to take to make something. I know it would be useful to have an idea of the time just using the Creo model, but wonder how badly would the estimate miss?
Yes they usually do. The thing is that for this particular project are we developing our own printer and some of it's software. What I'm trying to achieve here is just a rough estimate based on the area per layer since we know our average melting time per area unit, until we have a complete slicer which will give a better estimate.
I have a "cheat" that might be possible, but it will depend on how many sections you want to do as to whether it is useful or not.
It goes like this:
(1) Build the model you're looking for with a plane defining the base of the machine you're going to build it in.
(2) Define a protrusion that cuts all of the model away above a specified height, which creates a "top" planar surface that has the area you want.
(3) Do an analysis of this area, then save that analysis as a feature (i.e. as "areaCut").
(4) Define a parameter for the area of a section, for example, "areaSection"
(5) Define a relation to assign the measured area to the parameter, such as "areaSection = AREA:FID_AREACUT".
(6) Create a family table for the part, with an instance for each depth of slice you are interested in. Define two columns for the instances, one being the height dimension for the cut, the second being the parameter (i.e. areaSection).
(7) In the family table, pick Tools->Verify from the menu bar. It will take a while, but when all the instances have been verified, the column for the area parameter will have been updated with all the area values for each slice.
It's a crude blunt method, but much better than doing it by hand. You can copy/paste the column from the updated family table into an Excel spreadsheet, too.
This sounds like a good method, especially since I want the possibility to export the data! I'll try this during this week or the coming week and come back to you (got new priorities..)
Hello again! I did solve it and it works just as I wanted!
By combinding both your solution and @tbraxton's tips.
What I did was:
1. Create a datum plane along the preferred axis.
2. Use "Solidify" on that datum plane.
3. Create a analysis feature by measuring the area of the cross section revealed by the solidify-plane. I just save the measure as a feature.
4. Right click on the analysis feature choose "Parameters" and then just click "OK" as you se a parameter names "AREA".
5. Create a Family Table and add two columns:
5.a. Dimension: the translation of the datum plane
5.b. Parameter: The Analysis features "AREA"-parameter (filter by "Current and all sublevels")
6. Add new row in Family Table and choose "Edit > Copy with increments.."
7. Specify quantity (number of slices) and press enter (make sure it updates in the Pattern tree)
8. Choose the dimension in the Items-list and move over to the right window (press ">>")
9. Specify the increment. Press enter and then click OK
10. Click: Tools > Verify and Confirm by Clicking VERIFY, this might take a while depending on the number of slices
11. When done, close the small verify window and go to "File > Edit with Excel.." This can then be saved and used as pleased.
Thanks a lot to both of you, @KenFarley and @tbraxton
Do you have a license for the Creo BMX module? That offers some other options inside Creo if you have it.
If you want to review an example of a mapkey used to slice a model, take a look at my response at the bottom of this thread below. It has models and a mapkey definition to semi automate slicing of a model. It may give you some ideas on how to approach the issue. You could in theory, use this mapkey and a trail file generator to automate the complete slicing of the model.
Combining this with the concept offered by @KenFarley to use relations to calculate the area of each slice you should be able to tally a running sum of all of the areas sliced. You would not need the family table if you can calculate the running sum of areas.
BMX brings in analysis features, which will give you (among other tings) ability to generate graph over model how section area changes. From that graph it is quite easy to compute other derived measures as well.
SAMPLE:
The red box contains datum field point, datum plane which defines cross section location and section measurement analysis feature. The idea is, that datum field point lies on curve and goes from top to bottom of model.