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:
- 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.
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: |
_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] |
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 |
END_TIME | timestamp without time zone | End time of the grouping |
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. 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. 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_FEED_PC | double | Stop motion duration in % caused by the yarn control unit or lateral yarn tensioners |
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 |
POSITION_NEEDLE_SENSOR_PC | double | Stop motion duration in % caused by position needle sensor |
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_... | interval | Duration for which applies: Possible causes:
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 | interval | Duration for which applies: Machine status is unknown by the SKR. Possible cause:
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 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
);