State tracking with object labels

State tracking with object labels

mhosseini457NG
Advocate Advocate
33 Views
6 Replies
Message 1 of 7

State tracking with object labels

mhosseini457NG
Advocate
Advocate

[ FlexSim 24.0.1 ]

Hi @Felix Möhlmann

as you mentioned in this post: https://answers.flexsim.com/content/kbentry/158947/utilization-vs-time-statistics-collector.html the state is tracked via the "On Entry" and "On Exit" triggers. I'm looking to change this setup by incorporating object labels, enabling the state chart to display the "busy" state segmented by each object's label on the floor storage. I mean, I want to create a pie chart that shows the busy state of aggregated floor storage broken down by type of the objects that have been in them. How should I update these triggers below then?

// On Entry
current.setState(STATE_BUSY, 0);
// On Exit
if(current.subnodes.length == 1)
{
    current.setState(STATE_IDLE, 0);
}


0 Likes
Accepted solutions (1)
34 Views
6 Replies
Replies (6)
Message 2 of 7

moehlmann_fe
Observer
Observer
Accepted solution

First off, I'd like to reiterate that a Content vs Time chart (or "Wip by Type" line chart as it is called in the dashboard library) would be a straightforward solution to this.

To use the Utilization vs. Time collector for this you'd need to add a separate state profile to the storage for each type. In the triggers each type then only influences their respective profile. There should be multiple posts on how to add state profiles to objects on this forum. The 'best' solution I think is still to just copy it from the multiprocessor and then customize it to your liking.

Lastly, you would then need to adjust the Statistics Collector itself to work with multiple profiles per object.

utilization-vs-time-collector-24-0-fm-multiprofile.fsm

0 Likes
Message 3 of 7

mhosseini457NG
Advocate
Advocate

@Felix Möhlmann

I understand that creating a content versus time or WIP chart might seem straightforward in this situation, yet it doesn't fully address the question I have in mind. I'm interested in getting the percentage of time each piece of equipment is utilized during a certain time frame (for example, "On Monday, the processor was busy 67% of the time, aggregated"). Even the time plot included in the model you provided does not give this information in an easily interpretable way. While the chart shows fluctuations, I'm looking into to get the aggregated value of this so then I have two queries that would be great if you help me with them:

1 - Is it possible to convert the content versus time or WIP chart into a pie chart? This way, instead of interpreting the fluctuating data, I could directly see the aggregated percentage of time the equipment was busy.

2 - How can I create a pie chart instead of time plot in the model attached?


utilization-vs-time-collector-24-0-fm (1)_autosave.fsm

0 Likes
Message 4 of 7

moehlmann_fe
Observer
Observer

1. Content can be shown as a pie chart as a snapshot of the current information. Over a timeframe only the average would make sense to show that way, though that is not what you want if I understand you correctly.

2. To show the data as pies (or bars) you only need to add two things: A column by which to split the data by (this could just be the time, but using a date string might be easier to read). And a second column that is the idle percentage, so that utilized time + idle time sum to 100%.

utilization-vs-time-collector-24-0-fm-byDay.fsm

Is this what you are after?

0 Likes
Message 5 of 7

mhosseini457NG
Advocate
Advocate

got it. I want to create both a pie chart and a Gantt chart for a multi-profile processor, similar to what you've done before. The pie chart should aggregate and display the number of days each item type utilizes the processor, showing the runtime utilization for Item Type 1, Item Type 2, and so on. The Gantt chart also reflects the same data, highlighting utilization over time for each item type. I got some issues while attempting to replicate this in the attached model and would appreciate if you couls take a look into that. I just wantto make that pie chart aggregated broken down by label and make the gantt chart to show the item types.


Also ist possible to just cjange the processor with a floor storage after modifying the charts, along with creating On Entry, On Exit, and TypeContent Label. my goal is to monitor the aggregated utilization of floor storages, which take items labeled differently and act similarly to processors. I opted for floor storages primarily for the visibility they offer for items, but I can change that to other objects if it's easier.

utilization-vs-time-collector-24-0-fm multiprofile-piegantt_chart.fsm

0 Likes
Message 6 of 7

moehlmann_fe
Observer
Observer

You didn't add any extra profiles to the processor, so I used my originally attached model for this example.

The Statistics Collector for the pie chart is actually quite simple, since you can easily read the time an object has spend in a given state.

object.stats.state(profileRank).getTotalTimeAt(stateNum)

For the State Gantt I modified the existing State Gantt Statistics Collector to track multiple profiles per object. This requires adjustments in almost all aspects of the collector. I'd suggest to install a default state gantt collector and compare the two side by side to see the differences.

stats-collectors-24-0-fm-multiprofile.fsm

And yes, as long as the same state profiles are added to the floor strage, replacing the processor with one should be no problem.

0 Likes
Message 7 of 7

mhosseini457NG
Advocate
Advocate
got it, thanks for your clarification!


0 Likes