236 lines
5.7 KiB
JSON
236 lines
5.7 KiB
JSON
{
|
||
"$schema": "iAOP-cockpit-layout-v1",
|
||
"title": "吸附树脂车间驾驶舱",
|
||
"theme": "dark",
|
||
"themeTokens": {
|
||
"--cockpit-bg": "#0b1220",
|
||
"--cockpit-surface": "#13203a",
|
||
"--cockpit-fg": "#e6edf6",
|
||
"--cockpit-fg-muted": "#8aa0bd",
|
||
"--cockpit-accent": "#18d3c8",
|
||
"--cockpit-warn": "#f5a623",
|
||
"--cockpit-grid-line": "rgba(255,255,255,0.06)"
|
||
},
|
||
"grid": {
|
||
"columns": 12
|
||
},
|
||
"widgets": [
|
||
{
|
||
"id": "process_view-0",
|
||
"component": "ProcessView",
|
||
"type": "process_view",
|
||
"grid": {
|
||
"columnStart": 1,
|
||
"columnSpan": 12,
|
||
"rowStart": 1,
|
||
"rowSpan": 4,
|
||
"widthPct": 100.0,
|
||
"style": "grid-column: 1 / span 12; grid-row: 1 / span 4;"
|
||
},
|
||
"description": "四状态工艺流程(合成 → 交联 → 洗涤 → 干燥)",
|
||
"props": {
|
||
"src": "resin_four_state.svg",
|
||
"states": [
|
||
"running",
|
||
"warning",
|
||
"alarm",
|
||
"offline"
|
||
]
|
||
},
|
||
"perf": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
}
|
||
},
|
||
{
|
||
"id": "trend-1",
|
||
"component": "TrendChart",
|
||
"type": "trend",
|
||
"grid": {
|
||
"columnStart": 1,
|
||
"columnSpan": 6,
|
||
"rowStart": 5,
|
||
"rowSpan": 2,
|
||
"widthPct": 50.0,
|
||
"style": "grid-column: 1 / span 6; grid-row: 5 / span 2;"
|
||
},
|
||
"description": "反应釜温度实时趋势",
|
||
"props": {
|
||
"series": "R-801.TEMP",
|
||
"window": "PT30M"
|
||
},
|
||
"perf": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
}
|
||
},
|
||
{
|
||
"id": "trend-2",
|
||
"component": "TrendChart",
|
||
"type": "trend",
|
||
"grid": {
|
||
"columnStart": 7,
|
||
"columnSpan": 6,
|
||
"rowStart": 5,
|
||
"rowSpan": 2,
|
||
"widthPct": 50.0,
|
||
"style": "grid-column: 7 / span 6; grid-row: 5 / span 2;"
|
||
},
|
||
"description": "搅拌转速实时趋势",
|
||
"props": {
|
||
"series": "R-801.AGIT",
|
||
"window": "PT30M"
|
||
},
|
||
"perf": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
}
|
||
},
|
||
{
|
||
"id": "kpi_card-3",
|
||
"component": "KpiCard",
|
||
"type": "kpi_card",
|
||
"grid": {
|
||
"columnStart": 1,
|
||
"columnSpan": 3,
|
||
"rowStart": 7,
|
||
"rowSpan": 2,
|
||
"widthPct": 25.0,
|
||
"style": "grid-column: 1 / span 3; grid-row: 7 / span 2;"
|
||
},
|
||
"description": "当批平均交换容量(mmol/g)",
|
||
"props": {
|
||
"metric": "resin_exchange_capacity",
|
||
"label": "交换容量"
|
||
},
|
||
"perf": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
}
|
||
},
|
||
{
|
||
"id": "kpi_card-4",
|
||
"component": "KpiCard",
|
||
"type": "kpi_card",
|
||
"grid": {
|
||
"columnStart": 4,
|
||
"columnSpan": 3,
|
||
"rowStart": 7,
|
||
"rowSpan": 2,
|
||
"widthPct": 25.0,
|
||
"style": "grid-column: 4 / span 3; grid-row: 7 / span 2;"
|
||
},
|
||
"description": "当批平均交联度(%)",
|
||
"props": {
|
||
"metric": "resin_crosslink_degree",
|
||
"label": "交联度"
|
||
},
|
||
"perf": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
}
|
||
},
|
||
{
|
||
"id": "kpi_card-5",
|
||
"component": "KpiCard",
|
||
"type": "kpi_card",
|
||
"grid": {
|
||
"columnStart": 7,
|
||
"columnSpan": 3,
|
||
"rowStart": 7,
|
||
"rowSpan": 2,
|
||
"widthPct": 25.0,
|
||
"style": "grid-column: 7 / span 3; grid-row: 7 / span 2;"
|
||
},
|
||
"description": "当批产率(%)",
|
||
"props": {
|
||
"metric": "batch_yield",
|
||
"label": "批产率"
|
||
},
|
||
"perf": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
}
|
||
},
|
||
{
|
||
"id": "kpi_card-6",
|
||
"component": "KpiCard",
|
||
"type": "kpi_card",
|
||
"grid": {
|
||
"columnStart": 10,
|
||
"columnSpan": 3,
|
||
"rowStart": 7,
|
||
"rowSpan": 2,
|
||
"widthPct": 25.0,
|
||
"style": "grid-column: 10 / span 3; grid-row: 7 / span 2;"
|
||
},
|
||
"description": "单吨树脂综合能耗(kWh/t)",
|
||
"props": {
|
||
"metric": "energy_per_ton",
|
||
"label": "单吨能耗"
|
||
},
|
||
"perf": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
}
|
||
},
|
||
{
|
||
"id": "alarm_panel-7",
|
||
"component": "AlarmPanel",
|
||
"type": "alarm_panel",
|
||
"grid": {
|
||
"columnStart": 1,
|
||
"columnSpan": 9,
|
||
"rowStart": 9,
|
||
"rowSpan": 3,
|
||
"widthPct": 75.0,
|
||
"style": "grid-column: 1 / span 9; grid-row: 9 / span 3;"
|
||
},
|
||
"description": "告警面板(温度/交联度/质量预测异常)",
|
||
"props": {
|
||
"subscribe": "alarm_stream"
|
||
},
|
||
"perf": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
}
|
||
},
|
||
{
|
||
"id": "nl_query-8",
|
||
"component": "NlQuery",
|
||
"type": "nl_query",
|
||
"grid": {
|
||
"columnStart": 10,
|
||
"columnSpan": 3,
|
||
"rowStart": 9,
|
||
"rowSpan": 3,
|
||
"widthPct": 25.0,
|
||
"style": "grid-column: 10 / span 3; grid-row: 9 / span 3;"
|
||
},
|
||
"description": "自然语言查询入口(配方/质量/能耗问答)",
|
||
"props": {
|
||
"placeholder": "输入自然语言查询(配方 / 质量 / 能耗)"
|
||
},
|
||
"perf": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
}
|
||
}
|
||
],
|
||
"widgetCount": 9,
|
||
"perfFlags": {
|
||
"virtualScroll": false,
|
||
"downsample": false,
|
||
"worker": false
|
||
},
|
||
"perfHint": null
|
||
} |