Jason Lightfoot avatar image
Jason Lightfoot posted Claire Krupp commented

OEE Stats Example


In the attached model we use a Timetable and two MTBF/MTTR objects to define Schedule Loss, Availability Loss (breakdowns) and an element of Performance loss due to short stops (state Down). The processor sends 'bad' items to port 2 based on the send to percentage which account for QualityLosses. The processor's 'best' processing time per part (5 seconds) is stored as a label, while the processing time itself is a triangular distribution with the minumum as 5 seconds - so it also contributes to performance loss. When the Type of the item changes a setup time occurs which is the final contributor to performance loss.

Two state profiles were added to the processor - one to track production time and another for availability. An object process flow on the processor detects production profile state changes (between On and off shift) and regular Flexsim state changes and determines the availability state that should prevail.

A user command getOEEstat is used to access the values which it calculates on demand and stores in a label on the processor called statsMap. The syntax for this command is:


The list of stats:

"ScheduleLoss","AvailabilityLoss","PerformanceLoss","QualityLoss","IdealProdTime","AvailabilityRatio", "QualityRatio","PerformanceRatio", "IdealProdTime", "RunTime", "OEE", "TEE".

A group was used to indicate which objects have their OEE tracked, and a stats Collector reads the group members and adds rows at reset.

Finally Performance Measures were added for the stats for processor 1.


2023-08-22 Update: Added 'TEE' stat.

statistics collectorstate profilesoee
oeestats.gif (2.7 MiB)
processor-oee-2.fsm (64.3 KiB)
· 1
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Claire Krupp avatar image Claire Krupp commented ·

Thanks @Jason Lightfoot this will be extremely useful!

0 Likes 0 ·



jason.lightfoot contributed to this article