setup_time_tracking
setup_time_tracking ¤
Setup/changeover time tracking for SMED analysis.
Track setup durations to support Single-Minute Exchange of Die improvement: - Setup event durations - Setup time by product transition - Setup statistics - Setup time trends
SetupTimeTracking ¤
SetupTimeTracking(
dataframe: DataFrame,
*,
time_column: str = "systime",
shift_definitions: Optional[
Dict[str, tuple[str, str]]
] = None
)
Bases: Base
Track and analyze setup/changeover durations.
Each UUID represents one signal: - state_uuid: machine state signal containing a setup indicator value - part_id_uuid: part number / product type signal (optional)
Merge keys: [date, shift] for shift-level, [period] for trend data, [from_product, to_product] for product transition analysis.
Pipeline example::
setup = SetupTimeTracking(df)
durations = setup.setup_durations('machine_state', setup_value='Setup')
# → merge with ShiftReporting.shift_production() on [date, shift]
stats = setup.setup_statistics('machine_state')
# → standalone KPI reporting
Example usage
tracker = SetupTimeTracking(df)
List all setup events¤
events = tracker.setup_durations(state_uuid='machine_state')
Setup time by product transition¤
by_product = tracker.setup_by_product( state_uuid='machine_state', part_id_uuid='part_number', )
setup_durations ¤
setup_durations(
state_uuid: str,
*,
setup_value: str = "Setup",
value_column: str = "value_string"
) -> pd.DataFrame
List every setup event with duration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
state_uuid
|
str
|
UUID for machine state signal. |
required |
setup_value
|
str
|
Value that indicates a setup state. |
'Setup'
|
value_column
|
str
|
Column containing state values. |
'value_string'
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
DataFrame with columns: |
DataFrame
|
|
setup_by_product ¤
setup_by_product(
state_uuid: str,
part_id_uuid: str,
*,
setup_value: str = "Setup",
value_column_state: str = "value_string",
value_column_part: str = "value_string"
) -> pd.DataFrame
Setup time statistics by product transition (from → to).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
state_uuid
|
str
|
UUID for machine state signal. |
required |
part_id_uuid
|
str
|
UUID for part number / product type signal. |
required |
setup_value
|
str
|
Value indicating setup state. |
'Setup'
|
value_column_state
|
str
|
Column containing state values. |
'value_string'
|
value_column_part
|
str
|
Column containing part number values. |
'value_string'
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
DataFrame with columns: |
DataFrame
|
|
setup_statistics ¤
setup_statistics(
state_uuid: str,
*,
setup_value: str = "Setup",
value_column: str = "value_string"
) -> pd.DataFrame
Overall setup time statistics.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
state_uuid
|
str
|
UUID for machine state signal. |
required |
setup_value
|
str
|
Value indicating setup state. |
'Setup'
|
value_column
|
str
|
Column containing state values. |
'value_string'
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
DataFrame (single row) with columns: |
DataFrame
|
|
setup_trend ¤
setup_trend(
state_uuid: str,
*,
setup_value: str = "Setup",
value_column: str = "value_string",
window: str = "1W"
) -> pd.DataFrame
Track setup time trend over time.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
state_uuid
|
str
|
UUID for machine state signal. |
required |
setup_value
|
str
|
Value indicating setup state. |
'Setup'
|
value_column
|
str
|
Column containing state values. |
'value_string'
|
window
|
str
|
Time window for aggregation (default '1W'). |
'1W'
|
Returns:
| Type | Description |
|---|---|
DataFrame
|
DataFrame with columns: |
DataFrame
|
|