Stop History

With this report the downtimes can be determined relatively as a percentage and also as the absolute duration according to different criteria.

This report is the basis for the graphical representation of the stop history.

Notes:

  1. The result table contains over 30 columns. With evaluations over shorter time periods, some will be empty or contain only zeros.
    These columns should not be displayed (dynamically).
    Example:
    The SHOCK_DURATION. column only contains <> 0 data if a shock stop motion occurred in the evaluation time period.
Call-up parameters

Parameter

Type

Description

__sSchema

text

Schema of the secondary database tables.

When working with temporary tables, _sDestSchema must always be == ‘‘

_sTable_Prefix

text,

Prefix of the secondary database tables

_aSortorder

text[]

Sorting (Array of column names)

Example. ARRAY['MC_SORT_ID','START_TIME']

_bGroupByMachine

boolean

Group by machine

_bGroupByShift

boolean

Group by shift

_bGroupByUserName

boolean

Group by user (at the machine)

_bGroupByPattern

boolean

Group by pattern

_bGroupBySeq

boolean

Group by sequence

_bGroupByTicketUid

boolean

Group by ticket (PPS UID)

_bGroupByTicketProductionId

boolean

Group by ticket production ID

_bGroupByTicketProductionSub1Id

boolean

Group by ticket production sub ID 1

_bGroupByTicketProductionSub2Id

boolean

Group by ticket production sub ID 2

_bGroupByTicketCustomerId

boolean

Group by ticket customer ID

_bGroupByTicketArticleId

boolean

Group by ticket article ID

_bgroupbyday

boolean

Group by tags

_bgroupbyweek

boolean

Group by weeks

_bgroupbymonth

boolean

Group by months

_aFilterShift

integer[]

Filter by shift(s)

Example: Issue only shift 1 and 3:
ARRAY[1,3]

_aFilterUsername

text[]

Filter by users (knitter)

Example: ARRAY[‚User_1,'User_3']

_aFilterPattern

text[]

Filter by sequences

Example: ARRAY['S-kUuG01','P-Sjo9v3']

_aFilterSeq

text[]

Filter by sequences

Example: ARRAY['SEQ-WNJhP3','SEQ-wMWzx2']

_aFilterTicketUid

bigint[][]

Filter by internal ticket UID

Example: ARRAY[3374994314,3738720541]

_aFilterTicketProductionId

text[]

Filter by ID production ticket

Example: ARRAY['2E0Hl4-H8T803-cId-8','2E0Hl4-H8T803-cId-8']

_aFilterTicketProductionsub1Id

text[]

Filter by ticket production sub1ID

Example: ARRAY['SubId_2','SubId_21']

_aFilterTicketProductionsub2Id

text[]

Filter by ticket production sub2ID

Example: ARRAY['-']

_aFilterTicketCustomerId

text[]

Filter by ticket customer ID

Example: ARRAY['cId-2','cId-4']

_aFilterTicketArticleid

text[]

Filter by ticket article ID

Example: ARRAY['H8T803']

_aFilterUserState

Smallint[]

Filter by user state

Example: ARRAY[4,3]

_aFilterSintralState

Smallint[]

Filter by Sintral state

Example: ARRAY[4,3]

Return Table

Column

Type

Content

AGG_MC_ID

integer[]

SKR machine ID

AGG_MC_SORT_ID

smallint[]

For alphabetical sorting by machine name

(The machine name can be determined with the help of the MC_ID)

AGG_SHIFT_STATE

smallint[]

Shift or NULL if _bGroupByShift == false

AGG_USER_NAME

smallint[]

User or NULL if _bGroupByShift == false

AGG_TICKET_CUSTOMER_ID

text[]

Ticket UID or NULL if _bGroupByTicketCustomerId == false

AGG_TICKET_ARTICLE_ID

text[]

Ticket article ID or NULL if _bGroupByTicketArticleId == false

AGG_TICKET_PRODUCTION_ID

text[]

Ticket production ID or NULL if _bGroupByTicketProductionId == false

AGG_TICKET_PRODUCTION_SUB1_ID

text[]

Ticket production Sub1 ID or NULL if _bGroupByTicketProductionId == false

AGG_TICKET_PRODUCTION_SUB2_ID

text[]

Ticket production Sub2 ID or NULL if *_bGroupByTicketProductionId == false

AGG_SEQ_NAME

text[]

Sequence name or NULL if _bGroupBySeq == false

AGG_PATTERN_NAME

text[]

Pattern name or NULL if _bGroupByPattern == false

AGG_TICKET_UID

bigint[]

Ticket UID or NULL if _bGroupByTicketUId == false

START_TIME

timestamp without time zone

Start time of the grouping
(Output line)

END_TIME

timestamp without time zone

End time of the grouping
(Output line)

OVERALL_DURATION

interval

Total duration of all states

OVERALL_DURATION_WHILEMCON

interval

Total duration where the machine is switched on and there are data available.

TIME_ADJUST

interval

Specifies the time adjustments at the machine during the evaluated time period, which were added up by the SKR.
Due to summer / standard time changeovers the days were actually shorter or longer. For times beyond this, the value serves only for estimating the time errors that exist. A correction of the times output is very complex and requires a detailed analysis of all the performed time changeover events and their reasons.

With unusual large times that are far beyond the precision of a quartz clock, you should determine the cause.

Unusual causes can be defects of the real time clocks or incorrect manual changes of the time settings.
In principle, for a correction, the TIME_ADJUST value must be added partially or in total to the times that are to be determined.

To maintain these times small, ensure that the time zone setting of the machine is correct and that the machine is always connected with SKR.

Via the EventList report (EventType 101, EventID 1), you can determine when larger time differences occurred.

 

RUN _DURATION

interval

Duration of the productive time.

STOP_DURATION

interval

Duration of the stop motion

EFFICIENCY_INCLUDING_POWER_OFF_PC

double

Efficiency of the machine in %.

Contains times, where the machine was switched off.

STOP_DURATION_WHILEMCON

interval

Total duration where the machine is switched on and there are data available.

EFFICIENCY_WHILEMCON_PC

double

Efficiency of the machine in % while the machine was switched on and there are data available.

ENGAGING_DURATION

interval

Stop motion duration by the operator via the engaging rod

ENGAGING_PC

double

Duration in % where the operator possibly left the machine unnecessarily at standstill.

Calculated based on:

(STOP_DURATION - (NO_DATA_DURATION + OFF_DURATION)) -

(ENGAGING_DURATION +

PIECE_COUNTER_ZERO_DURATION +

PROGRAMMING_DURATION +

BOOT_DURATION +

MCSTATE_UNKNOWN_DURATION)

YARN_FEED_DURATION

interval

Stop motion duration caused by the yarn control unit or lateral yarn tensioners
Yarn breakage, big knot

YARN_FEED_PC

double

Stop motion duration in % caused by the yarn control unit or lateral yarn tensioners
Yarn breakage, big knot

PIECE_COUNTER_ZERO_DURATION

interval

Duration with the piece counter on zero

PIECE_COUNTER_ZERO_PC

double

Duration in % with the piece counter on zero

RESISTANCE_DURATION

interval

Duration of the stop by resistance

RESISTANCE_PC

double

Duration in % of the stop by resistance

POSITION_NEEDLE_SENSOR_DURATION

interval

Stop motion duration by position needle sensor
Needle breakage

POSITION_NEEDLE_SENSOR_PC

double

Stop motion duration in % caused by position needle sensor
Needle breakage

TAKE_DOWN_DURATION

interval

Stop motion duration by fabric take-down

TAKE_DOWN_PC

double

Stop motion duration in % caused by fabric take-down

PROGRAMMING_DURATION

interval

Duration of the pattern editing on the machine

PROGRAMMING_PC

double

Duration in % of the pattern processing on the machine

OTHER_DURATION

interval

Stop motion duration for other reasons

OTHER_PC

double

Stop motion duration in % caused for other reasons

SHOCK_DURATION

interval

Duration of shock stop motions

SHOCK_PC

double

Duration in % of shock stop motions

RACKING_DURATION

interval

Duration of Racking Error

RACKING_PC

double

Duration by % of Racking Error

NODATA_DURATION

Note: Differentiation to MCSTATE_UNKNOWN_...
= Machine is in an unknown state.

interval

Duration for which applies:
Machine status is unknown by the SKR as there are no data for that time period

Possible causes:

  • The machine was not yet included in the SKR during the entire time period, which was specified when generating the secondary database.
  • The data buffer of the machine was not sufficient to store the events, during the larger time, when the machine had no connection to the SKR.

SKR was temporarily deactivated at the machine

OFF_DURATION

interval

Duration where the machine is switched off

BOOT_DURATION

interval

Duration for boot processes of the machine

BOOT_PC

double

Duration in % for boot processes of the machine

MCSTATE_UNKNOWN_DURATION
Note: Differentiation to NODATA_...
= State of the machine is unknown to the machine due to missing data.

interval

Duration for which applies:

Machine status is unknown by the SKR.

Possible cause:

  • The machine notifies a new state, which is not yet known by the SKR

The machine operating system is faulty

MCSTATE_UKNOWN_PC

double

Duration in % for which applies:

Machine status is unknown by the SKR.

Possible cause:

  • The machine notifies a new state, which is not yet known by the SKR

The machine operating system is faulty

 

[DEBUG_SRC_MIN_UID]

bigint

Debug info: Start time UID in <prefix>_collected_filter_rows

Code example "sample_eval_stop_history_report.sql"

Important:

It is assumed that the evaluation auxiliary tables report_01.sample_xxxxxxxx are already generated.
Generating evaluation auxiliary tables (cursor run - UDF)

For a productive system, enter an empty field ‘‘ instead of report_01, schema. But it must be identical to that which was specified when generating the auxiliary tables.

select skrpps_02.skr_mcid2mcname( "MC_ID",'skr'::cstring) AS "MC_NAME"

,* from skrpps_02.eval_stop_history_report

(

'report_01' -- Schema

,'sample' –-Prefix name of help tables

, NULL -- ARRAY['MC_SORT_ID','START_TIME DESC'] – Sorting according to…

,true -- GroupBy Machine ?

,false -- GroupBy Shift ?

,false -- GroupBy UserName

,true -- GroupBy Pattern ?

,false -- GroupBy Sequence

,false -- GroupBy "TICKET_UID" bigint,

,false -- GroupBy "TICKET_PRODUCTION_ID" text,

,false -- GroupBy "TICKET_PRODUCTION_SUB1_ID" text,

,false -- GroupBy "TICKET_PRODUCTION_SUB2_ID" text,

,false -- GroupBy "TICKET_CUSTOMER_ID" text,

,false -- GroupBy "TICKET_ARTICLE_ID" text,

,false -- GroupBy "Day" text,

,false -- GroupBy "Week" text,

,false -- GroupBy "Month" text,

,NULL -- ARRAY[2,3] -- Filter by shift

,NULL -- ARRAY['User_3','User_4'] -- Selection/Filter UserName

,NULL -- ARRAY['S-kUuG0','P-Sjo9v3'] -- Selection/Filter Pattern

,NULL -- ARRAY['SEQ-WNJhP3','SEQ-9bEqD1'] -- Selection/Filter Sequence

,NULL -- ARRAY[3374994314,3738720541] -- Selection/Filter FilterTicketUid bigint[]

,NULL -- ARRAY['2E0Hl4-H8T803-cId-8','2E0Hl4-H8T803-cId-8'] -- Selection/Filter FilterTicketProductionId text[]

,NULL -- ARRAY['SubId_2','SubId_21'] -- Selection/Filter FilterTicketProductionSub1Id text[]

,NULL -- ARRAY['-'] -- Selection/Filter FilterTicketProductionSub2Id text[]

,NULL -- ARRAY['cId-2','cId-4'] -- Selection/Filter FilterTicketCustomerId text[]

,NULL -- ARRAY['H8T803'] -- Selection/Filter FilterTicketArticleId text[]

,NULL -- ARRAY[4,3] -- Selection/Filter UserState

,NULL -- ARRAY[4,3] -- Selection/Filter SintralState

);