Community Tip - Did you get called away in the middle of writing a post? Don't worry you can find your unfinished post later in the Drafts section of your profile page. X
I am designing a linkage system and want to investigate its force output while some of its parts geometry vary, e.g. lengths, angles etc.
I seek to optimize the mechanism over its entire range of motion.
After I run a Motion Analysis in the Analysis tab, based on an existing Mechanism Analysis performed in a step before, I choose to create, as output, new Series Parameters for some of the parameters I am investigating.
But I cannot find a way where I can use these newly created Motion Analysis Series Parameters in the Sensitivity, Feasibility or Multi-Objective Optimization. Although I do see the series parameters in the stored Parameters within the resulting Analysis feature. Within these tools all parameters I see are from MDO and are discrete ones, like min_parameter or max_parameter, and this does not help in my case.
Is it possible to optimize an entire series parameter within Creo Behavior (like an arbitrary polynomial curve function linear or quadratic whatever e.g. y(x)=ax+b...)?
E.g. the mechanism in the example outputs a force that varies over its range of motion depending on its components geometry, initial conditions etc. I want to vary the mechanism parts design features, lengths etc,, initial conditions, and check how the force outputs behave for each and every single point varied in the variable's domain.
I am imagining having a graph containing several plots of all output curves that were generated as a result of the variation of an independent variable in the domain field. like plotting all y(x) functions for x varying from 1 to 10.
The objective is to optimize the desired force function over the range of motion and in this context maximize it.
If not, can I at least export to Excel the entire series of the parameters I want to study for every single design study points I vary in the domain variable I am studying?
Thank you very much
Daniel
Hi Daniel,
You will need to define your objective as a single discrete number "merit" output. It sounds like the objective is not clear to you in terms of a single number. You need to find the math on the y(x) function that conveys a single number representing how it performs. For example you might desire to maximize the area under that curve, or you might desire to maximize the minimum force ever seen or you could desire a constraint on the minimum force along with a maximization of the area under the curve. It is normal for any optimization that a single number merit is needed. When multiple objectives are involved, weightings are used when combining them into one merit function such that the importance of the various objectives are balanced as desired.
As far as more specific help on your particular model, it seems complex enough that apart from my above advice, we would probably need a copy of your model to significantly contribute help. I don't think BMX can output full result graphs for each iteration. Someone might know how to use a toolkit to automate Creo instead of BMX, that could do that for you, but I have only dabbled with the free vba toolkit and have my doubts.
Thank you for your reply SweetPeasHub.
I am thinking about how to implement your suggestion.
If I did understand it as well am capable of creating a function that would synthesize the optimum of another function, and output as a result a discrete, single value.
If you could elaborate more, that would be helpful.
Kind regards
Daniel
I've been interested in the same capability for about 20 years now...and have been asking for it all these years as well. There is an output parameter from a "Motion Analysis" in Behavioral Modeling whose name seems to suggest the entire set of data for the MDX/MDO output measure will be returned. Its BMX parameter name begins with "SERIE_" followed by the MDX/MDO output measure name. Its description states "All values of parameter attained during motion". When I test this out, I find no data anywhere in any directory my colleagues and I imagined it might be. A simple query of this BMX Motion Analysis feature from the model tree for "Feature Information", simply lists this output's "Current value" as a "series", compared to the typical individual numeric values returned for the other output options (max or min, or time at max/min, etc.).
I've placed a question about this topic with our PTC technical expert. I will share any useful feedback here.
Minor Update:
I happen to have found where the array of data is stored - through a very strange accident! When you select to capture the "SERIE_XXXXXXX" motion measure - as seen here in my example while creating/editing the "Motion Analysis" feature:
it does get saved inside the assembly model itself as a parameter that is only seen from within the "Parameter" dialog box. Here is a sample of the Parameter dialog showing the 3 different measures I asked for, on top of the feature's "Feature info: ANALYSIS" page:
Notice how the words "Series" are italicized in blue - this is a link to open a dialog that contains the entire array of output from MDO. You can then click the word "Series" and get a box that looks like this:
The only way to export this for further use is to click the lower left icon to view the plot, and then export the plot data to Excel or a text file. I have not found out how to recover each one of these data arrays if you run a MODS or a Sensitivity study, since each run would generate a unique data array...or if they are even stored for each individual run.
I hope this makes sense and if PTC sheds further light I'll post another follow-up.
Edit - I used Creo 9.0.4.0 for this example, but I think it works back to Creo 7 as well....
Cheers!
Hi ChrisKaswer, thank you for your reply too.
I am still investing time and effort pursuing handling the series parameter and wanted to share with you and SweetPeasHub, and everyone, what I found out.
In config. editor, add I changed the config bm_graph_tool from "default" to "excel_linked".
This leads Creo 7 to open Excel when plotting the results of the Motion Analysis. There I see a graph as well as two columns with respective parameters.
Check the attached video.
Not sure if this path will take me where I am trying to reach regarding optimization, although at least the datapoints are available for manual manipulation.
It is also possible to export, manually within the default Creo graph tool, an excel, csv file for each parameter over time, but still, manual work, a little more effort than the above way. You should already very well know this.
But the plotting of all Y(x) values for x varying from A to B, automatically for a sensitivity/feasibility or optimization study is unknown, unclear to me.
Best
Daniel