停机记录
通过此报告,可以根据不同的标准将停机时间为相对百分比,也可以确定为绝对时长。
该报告是停机历史记录图形表示的基础。
注意:
- 结果表包30多个列。有些较短时段的评估可能是空的或仅包含零值。
这些列不应该显示(动态)。
示例:
如果一个震动自停发生在评估时间段,SHOCK_DURATION. 列仅包含<> 0数据。
参数 | 型号 | 描述 |
---|---|---|
__sSchema | text | 辅助数据库表的 schema。 使用临时表时,_sDestSchema 必须始终为 == ‘‘ |
_sTable_Prefix | text, | 辅助数据库表的前缀 |
_aSortorder | text[] | 排序(列标题数组) 示例 。 ARRAY['MC_SORT_ID','START_TIME'] |
_bGroupByMachine | boolean | 按机器分组 |
_bGroupByShift | boolean | 按班次分组 |
_bGroupByUserName | boolean | 按用户分组(在机器上) |
_bGroupByPattern | boolean | 按花型分组 |
_bGroupBySeq | boolean | 按顺序分组 |
_bGroupByTicketUid | boolean | 按工票分组(PPSUID) |
_bGroupByTicketProductionId | boolean | 按工票生产 ID 分组 |
_bGroupByTicketProductionSub1Id | boolean | 按工票生产子 ID1 分组 |
_bGroupByTicketProductionSub2Id | boolean | 按工票生产子 ID2 分组 |
_bGroupByTicketCustomerId | boolean | 按工票客户 ID 分组 |
_bGroupByTicketArticleId | boolean | 按工票货品 ID 分组 |
_bgroupbyday | boolean | 按标签分组 |
_bgroupbyweek | boolean | 按星期分组 |
_bgroupbymonth | boolean | 按月分组 |
_aFilterShift | integer[] | 按班次筛选 示例:仅针对班次1和3: |
_aFilterUsername | text[] | 按用户筛选(挡车工) 示例: ARRAY[‚User_1,'User_3'] |
_aFilterPattern | text[] | 按顺序筛选 示例: ARRAY['S-kUuG01','P-Sjo9v3'] |
_aFilterSeq | text[] | 按顺序筛选 示例: ARRAY['SEQ-WNJhP3','SEQ-wMWzx2'] |
_aFilterTicketUid | bigint[][] | 按内部工票UID 筛选 示例: ARRAY[3374994314,3738720541] |
_aFilterTicketProductionId | text[] | 按生产工票ID筛选 示例: ARRAY['2E0Hl4-H8T803-cId-8','2E0Hl4-H8T803-cId-8'] |
_aFilterTicketProductionsub1Id | text[] | 按工票生产sub1D筛选 示例: ARRAY['SubId_2','SubId_21'] |
_aFilterTicketProductionsub2Id | text[] | 按工票生产sub2D筛选 示例: ARRAY['-'] |
_aFilterTicketCustomerId | text[] | 按工票客户 ID 筛选 示例: ARRAY['cId-2','cId-4'] |
_aFilterTicketArticleid | text[] | 按工票货品 ID 筛选 示例: ARRAY['H8T803'] |
_aFilterUserState | Smallint[] | 按用户状态筛选 示例: ARRAY[4,3] |
_aFilterSintralState | Smallint[] | 按Sintral状态筛选 示例: ARRAY[4,3] |
列 | 型号 | 内容 |
---|---|---|
AGG_MC_ID | integer[] | SKR 机器 ID |
AGG_MC_SORT_ID | smallint[] | 按机器名称按字母顺序排序 (可以借助MC_ID确定机器名) |
AGG_SHIFT_STATE | smallint[] | 班次,或者 NULL,如果_bGroupByShift == false |
AGG_USER_NAME | smallint[] | 用户,或者 NULL,如果_bGroupByShift == false |
AGG_TICKET_CUSTOMER_ID | text[] | 工票UID 或者 NULL,如果_bGroupByTicketCustomerId == false |
AGG_TICKET_ARTICLE_ID | text[] | 工票货品 ID 或者 NULL,如果 _bGroupByTicketArticleId == false |
AGG_TICKET_PRODUCTION_ID | text[] | 工票生产 ID 或者 NULL, 如果_bGroupByTicketProductionId == false |
AGG_TICKET_PRODUCTION_SUB1_ID | text[] | 工票生产子ID1 或者 NULL,如果_bGroupByTicketProductionId == false |
AGG_TICKET_PRODUCTION_SUB2_ID | text[] | 工票生产子ID2 或者 NULL,如果*_bGroupByTicketProductionId == false |
AGG_SEQ_NAME | text[] | 顺序名或者 NULL,如果_bGroupBySeq == false |
AGG_PATTERN_NAME | text[] | 花型名称或NULL,如果_bGroupByPattern == false |
AGG_TICKET_UID | bigint[] | 工票UID 或者 NULL,如果_bGroupByTicketUId == false |
START_TIME | timestamp without time zone | 分组开始时间 |
END_TIME | timestamp without time zone | 分组结束时间 |
OVERALL_DURATION | interval | 所有状态的总时长 |
OVERALL_DURATION_WHILEMCON | interval | 机器开启状态并且有数据时的总时长。 |
TIME_ADJUST | interval | 设定机器上的时间调整,在评估阶段,哪个时间段要由SKR添加。 对于异常的超出石英钟精度的较大时间差异,要确认原因。 不正常的原因有可能是实际时钟有故障,或手动时间设置错误。 为了减小这些值,要确保机器的时区设置正确,而且机器始终与SKR连接。 通过EventList报告(EventType101,EventID1),可以确定较大的时间差异是何时发生的。 |
| ||
RUN _DURATION | interval | 生产时长。 |
STOP_DURATION | interval | 自停时长 |
EFFICIENCY_INCLUDING_POWER_OFF_PC | double | 机器效率% 包括关机时间。 |
STOP_DURATION_WHILEMCON | interval | 机器开启状态并且有数据时的总时长。 |
EFFICIENCY_WHILEMCON_PC | double | 机器处于开启状态并且有数据时的效率 % 。 |
ENGAGING_DURATION | interval | 操作员通过操纵杆停机的时长 |
ENGAGING_PC | double | 操作工使机器处于非必要停机状态的时长 %。 根据以下因素计算: (STOP_DURATION - (NO_DATA_DURATION + OFF_DURATION)) - (ENGAGING_DURATION + PIECE_COUNTER_ZERO_DURATION + PROGRAMMING_DURATION + BOOT_DURATION + MCSTATE_UNKNOWN_DURATION) |
YARN_FEED_DURATION | interval | 纱线控制装置或侧面纱线张力器自停时长 |
YARN_FEED_PC | double | 纱线控制装置或侧面纱线张力器自停时长 % |
PIECE_COUNTER_ZERO_DURATION | interval | 计数器为 0 的时长 |
PIECE_COUNTER_ZERO_PC | double | 计数器为 0 的时长 % |
RESISTANCE_DURATION | interval | 阻力自停时长 |
RESISTANCE_PC | double | 阻力自停时长 % |
POSITION_NEEDLE_SENSOR_DURATION | interval | 探针自停时长 |
POSITION_NEEDLE_SENSOR_PC | double | 探针自停时长 % |
TAKE_DOWN_DURATION | interval | 织物牵拉自停时长 |
TAKE_DOWN_PC | double | 织物牵拉自停时长 % |
PROGRAMMING_DURATION | interval | 机上花型编辑时长 |
PROGRAMMING_PC | double | 机上花型编辑时长 % |
OTHER_DURATION | interval | 其他原因自停时长 |
OTHER_PC | double | 其他原因自停时长 % |
SHOCK_DURATION | interval | 震动自停时长 |
SHOCK_PC | double | 震动自停时长 % |
RACKING_DURATION | interval | 横移错误时长 |
RACKING_PC | double | 横移错误时长 % |
NODATA_DURATION 注意:与MCSTATE_UNKNOWN_...不同 | interval | 符合以下情形的时长: 可能的原因:
SKR 在机器上被临时禁用 |
OFF_DURATION | interval | 关机时长 % |
BOOT_DURATION | interval | 机器启动过程时长 |
BOOT_PC | double | 机器启动过程时长 % |
MCSTATE_UNKNOWN_DURATION | interval | 符合以下情形的时长: 机器状态不为 SKR 所知。 可能的原因:
机器操作系统故障。 |
MCSTATE_UKNOWN_PC | double | 符合以下情形的时长 %: 机器状态不为 SKR 所知。 可能的原因:
机器操作系统故障。 |
| ||
[DEBUG_SRC_MIN_UID] | bigint | 调试信息:<prefix>_collected_filter_rows 中开始时间 UID |
代码示例 "sample_eval_stop_history_report.sql"
重要点:
假设评估辅表report_01.sample_xxxxxxxx已经生成。
创建评估辅表(光标运行- UDF)
为高效工作,输入一个空的字段‘‘而不是report_01,架构。但必须与创建辅表时指定的内容相同。
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
);