实时数据一二次值单位
This commit is contained in:
@@ -729,7 +729,7 @@ const handleHarmonicSpectrum = async () => {
|
|||||||
// }
|
// }
|
||||||
realTimeFlag.value = false
|
realTimeFlag.value = false
|
||||||
sonTab.value = 2
|
sonTab.value = 2
|
||||||
harmonicSpectrumRef.value && harmonicSpectrumRef.value.resetData()
|
harmonicSpectrumRef.value && harmonicSpectrumRef.value.resetData(formInline.dataLevel)
|
||||||
// getRealDataMqttMsg()
|
// getRealDataMqttMsg()
|
||||||
await getBasicRealData(lineId.value).then((res: any) => {
|
await getBasicRealData(lineId.value).then((res: any) => {
|
||||||
if (res.code == 'A0000') {
|
if (res.code == 'A0000') {
|
||||||
@@ -991,35 +991,37 @@ const getRealDataMqttMsg = async () => {
|
|||||||
//如果消息返回值是二次值,下拉框是二次值只需要单位换算 除以1000
|
//如果消息返回值是二次值,下拉框是二次值只需要单位换算 除以1000
|
||||||
//如果消息返回值是一次值,下拉框是一次值只需要单位换算 除以1000
|
//如果消息返回值是一次值,下拉框是一次值只需要单位换算 除以1000
|
||||||
if (obj.dataLevel == formInline.dataLevel) {
|
if (obj.dataLevel == formInline.dataLevel) {
|
||||||
|
|
||||||
obj = {
|
obj = {
|
||||||
...obj,
|
...obj,
|
||||||
// 电压有效值
|
// 电压有效值
|
||||||
vRmsA: obj.vRmsA / 1000,
|
vRmsA: obj.vRmsA ,
|
||||||
vRmsB: obj.vRmsB / 1000,
|
vRmsB: obj.vRmsB ,
|
||||||
vRmsC: obj.vRmsC / 1000,
|
vRmsC: obj.vRmsC ,
|
||||||
//基波电压幅值
|
//基波电压幅值
|
||||||
v1A: obj.v1A / 1000,
|
v1A: obj.v1A ,
|
||||||
v1B: obj.v1B / 1000,
|
v1B: obj.v1B ,
|
||||||
v1C: obj.v1C / 1000,
|
v1C: obj.v1C ,
|
||||||
//有功功率
|
//有功功率
|
||||||
pA: obj.pA / 1000,
|
pA: obj.pA ,
|
||||||
pB: obj.pB / 1000,
|
pB: obj.pB ,
|
||||||
pC: obj.pC / 1000,
|
pC: obj.pC ,
|
||||||
pTot: obj.pTot / 1000,
|
pTot: obj.pTot ,
|
||||||
//无功功率
|
//无功功率
|
||||||
qA: obj.qA / 1000,
|
qA: obj.qA ,
|
||||||
qB: obj.qB / 1000,
|
qB: obj.qB ,
|
||||||
qC: obj.qC / 1000,
|
qC: obj.qC ,
|
||||||
qTot: obj.qTot / 1000,
|
qTot: obj.qTot ,
|
||||||
//视在功率
|
//视在功率
|
||||||
sA: obj.sA / 1000,
|
sA: obj.sA ,
|
||||||
sB: obj.sB / 1000,
|
sB: obj.sB ,
|
||||||
sC: obj.sC / 1000,
|
sC: obj.sC ,
|
||||||
sTot: obj.sTot / 1000
|
sTot: obj.sTot
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//如果消息返回值是二次值,下拉框是一次值需要单位换算 除以1000 并且乘以pt ct
|
//如果消息返回值是二次值,下拉框是一次值需要单位换算 除以1000 并且乘以pt ct
|
||||||
if (obj.dataLevel == 'Secondary' && formInline.dataLevel == 'Primary') {
|
if (obj.dataLevel == 'Secondary' && formInline.dataLevel == 'Primary') {
|
||||||
|
|
||||||
obj = {
|
obj = {
|
||||||
...obj,
|
...obj,
|
||||||
// 电压有效值
|
// 电压有效值
|
||||||
@@ -1102,7 +1104,7 @@ const getRealDataMqttMsg = async () => {
|
|||||||
mqttMessage.value = obj
|
mqttMessage.value = obj
|
||||||
|
|
||||||
//更新实时数据主页面值
|
//更新实时数据主页面值
|
||||||
realTimeFlag.value && realTimeRef.value && realTimeRef.value.setRealData(mqttMessage.value)
|
realTimeFlag.value && realTimeRef.value && realTimeRef.value.setRealData(mqttMessage.value,formInline.dataLevel)
|
||||||
tableLoading.value = false
|
tableLoading.value = false
|
||||||
//更新实时趋势折线图数据
|
//更新实时趋势折线图数据
|
||||||
if (sonTab.value == 2) {
|
if (sonTab.value == 2) {
|
||||||
|
|||||||
@@ -144,7 +144,8 @@ let height: any = mainHeight(275).height
|
|||||||
const loading = ref(false)
|
const loading = ref(false)
|
||||||
const allDataList: any = ref([])
|
const allDataList: any = ref([])
|
||||||
const xAixsTimeList: any = ref([])
|
const xAixsTimeList: any = ref([])
|
||||||
const resetData = () => {
|
|
||||||
|
const resetData = (dataLevel: string) => {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
indexOptions.value = [
|
indexOptions.value = [
|
||||||
{
|
{
|
||||||
@@ -155,7 +156,7 @@ const resetData = () => {
|
|||||||
{ name: 'vRmsB', phase: 'B相', data: [], yMethodList: [] },
|
{ name: 'vRmsB', phase: 'B相', data: [], yMethodList: [] },
|
||||||
{ name: 'vRmsC', phase: 'C相', data: [], yMethodList: [] }
|
{ name: 'vRmsC', phase: 'C相', data: [], yMethodList: [] }
|
||||||
],
|
],
|
||||||
unit: 'kV',
|
unit: dataLevel === 'Primary' ? 'kV' : 'V',
|
||||||
data: [],
|
data: [],
|
||||||
yMethodList: []
|
yMethodList: []
|
||||||
},
|
},
|
||||||
@@ -180,7 +181,7 @@ const resetData = () => {
|
|||||||
{ name: 'pC', phase: 'C相', data: [], yMethodList: [] },
|
{ name: 'pC', phase: 'C相', data: [], yMethodList: [] },
|
||||||
{ name: 'pTot', phase: '总', data: [], yMethodList: [] }
|
{ name: 'pTot', phase: '总', data: [], yMethodList: [] }
|
||||||
],
|
],
|
||||||
unit: 'kW',
|
unit: dataLevel === 'Primary' ? 'kW' : 'W',
|
||||||
data: [],
|
data: [],
|
||||||
yMethodList: []
|
yMethodList: []
|
||||||
},
|
},
|
||||||
@@ -193,7 +194,7 @@ const resetData = () => {
|
|||||||
{ name: 'qC', phase: 'C相', data: [], yMethodList: [] },
|
{ name: 'qC', phase: 'C相', data: [], yMethodList: [] },
|
||||||
{ name: 'qTot', phase: '总', data: [], yMethodList: [] }
|
{ name: 'qTot', phase: '总', data: [], yMethodList: [] }
|
||||||
],
|
],
|
||||||
unit: 'kW',
|
unit: dataLevel === 'Primary' ? 'kVar' : 'Var',
|
||||||
data: [],
|
data: [],
|
||||||
yMethodList: []
|
yMethodList: []
|
||||||
},
|
},
|
||||||
@@ -206,7 +207,7 @@ const resetData = () => {
|
|||||||
{ name: 'v1B', phase: 'B相', data: [], yMethodList: [] },
|
{ name: 'v1B', phase: 'B相', data: [], yMethodList: [] },
|
||||||
{ name: 'v1C', phase: 'C相', data: [], yMethodList: [] }
|
{ name: 'v1C', phase: 'C相', data: [], yMethodList: [] }
|
||||||
],
|
],
|
||||||
unit: 'kV',
|
unit: dataLevel === 'Primary' ? 'kV' : 'V',
|
||||||
data: [],
|
data: [],
|
||||||
yMethodList: []
|
yMethodList: []
|
||||||
},
|
},
|
||||||
@@ -255,9 +256,10 @@ const resetData = () => {
|
|||||||
allDataList.value = []
|
allDataList.value = []
|
||||||
xAixsTimeList.value = []
|
xAixsTimeList.value = []
|
||||||
}
|
}
|
||||||
resetData()
|
resetData('Primary')
|
||||||
const mqttMessage: any = ref()
|
const mqttMessage: any = ref()
|
||||||
const setHarmonicSpectrumData = (val: any) => {
|
const setHarmonicSpectrumData = (val: any) => {
|
||||||
|
|
||||||
mqttMessage.value = val
|
mqttMessage.value = val
|
||||||
init()
|
init()
|
||||||
}
|
}
|
||||||
@@ -307,7 +309,6 @@ const init = () => {
|
|||||||
//循环渲染图表
|
//循环渲染图表
|
||||||
const refName = setChildRef(index)
|
const refName = setChildRef(index)
|
||||||
childRefs[refName] = ref(null) // 初始化ref
|
childRefs[refName] = ref(null) // 初始化ref
|
||||||
|
|
||||||
item.echartsData = {
|
item.echartsData = {
|
||||||
title: {
|
title: {
|
||||||
text: item.name
|
text: item.name
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<div class="view_top">
|
<div class="view_top">
|
||||||
<!-- 左侧仪表盘 -->
|
<!-- 左侧仪表盘 -->
|
||||||
<div class="view_top_left">
|
<div class="view_top_left">
|
||||||
<div class="left_charts_title">电压有效值(kV)</div>
|
<div class="left_charts_title">电压有效值({{ voltageUnit }})</div>
|
||||||
<div class="left_charts">
|
<div class="left_charts">
|
||||||
<MyEchart :pieInterVal="true" ref="pieChart1" :options="echartsDataV1"></MyEchart>
|
<MyEchart :pieInterVal="true" ref="pieChart1" :options="echartsDataV1"></MyEchart>
|
||||||
</div>
|
</div>
|
||||||
@@ -45,7 +45,7 @@
|
|||||||
<div class="view_bot">
|
<div class="view_bot">
|
||||||
<vxe-table border height="" :data="realList" :column-config="{ resizable: true, tooltip: true }"
|
<vxe-table border height="" :data="realList" :column-config="{ resizable: true, tooltip: true }"
|
||||||
:tooltip-config="{ enterable: true }">
|
:tooltip-config="{ enterable: true }">
|
||||||
<vxe-colgroup align="center" title="电压有效值(kV)">
|
<vxe-colgroup align="center" :title="`电压有效值(${voltageUnit})`">
|
||||||
<vxe-column align="center" field="vRmsA" title="A相"></vxe-column>
|
<vxe-column align="center" field="vRmsA" title="A相"></vxe-column>
|
||||||
<vxe-column align="center" field="vRmsB" title="B相"></vxe-column>
|
<vxe-column align="center" field="vRmsB" title="B相"></vxe-column>
|
||||||
<vxe-column align="center" field="vRmsC" title="C相"></vxe-column>
|
<vxe-column align="center" field="vRmsC" title="C相"></vxe-column>
|
||||||
@@ -69,11 +69,11 @@
|
|||||||
<br />
|
<br />
|
||||||
<vxe-table border height="" :data="realList" :column-config="{ resizable: true, tooltip: true }"
|
<vxe-table border height="" :data="realList" :column-config="{ resizable: true, tooltip: true }"
|
||||||
:tooltip-config="{ enterable: true }">
|
:tooltip-config="{ enterable: true }">
|
||||||
<vxe-column align="center" field="freq" width="140" title="频率(Hz)"></vxe-column>
|
<vxe-column align="center" field="freqDev" width="140" title="频率(Hz)"></vxe-column>
|
||||||
<vxe-column align="center" field="freqDev" width="120" title="频率偏差(Hz)"></vxe-column>
|
<vxe-column align="center" field="freq" width="120" title="频率偏差(Hz)"></vxe-column>
|
||||||
<vxe-column align="center" width="180" field="vUnbalance" title="电压不平衡度(%)"></vxe-column>
|
<vxe-column align="center" width="180" field="vUnbalance" title="电压不平衡度(%)"></vxe-column>
|
||||||
<vxe-column align="center" width="180" field="iUnbalance" title="电流不平衡度(%)"></vxe-column>
|
<vxe-column align="center" width="180" field="iUnbalance" title="电流不平衡度(%)"></vxe-column>
|
||||||
<vxe-colgroup align="center" title="基波电压幅值(kV)">
|
<vxe-colgroup align="center" :title="`基波电压幅值(${voltageUnit})`">
|
||||||
<vxe-column align="center" field="v1A" title="A相"></vxe-column>
|
<vxe-column align="center" field="v1A" title="A相"></vxe-column>
|
||||||
<vxe-column align="center" field="v1B" title="B相"></vxe-column>
|
<vxe-column align="center" field="v1B" title="B相"></vxe-column>
|
||||||
<vxe-column align="center" field="v1C" title="C相"></vxe-column>
|
<vxe-column align="center" field="v1C" title="C相"></vxe-column>
|
||||||
@@ -102,7 +102,7 @@
|
|||||||
<vxe-column align="center" field="iThdB" title="B相"></vxe-column>
|
<vxe-column align="center" field="iThdB" title="B相"></vxe-column>
|
||||||
<vxe-column align="center" field="iThdC" title="C相"></vxe-column>
|
<vxe-column align="center" field="iThdC" title="C相"></vxe-column>
|
||||||
</vxe-colgroup>
|
</vxe-colgroup>
|
||||||
<vxe-colgroup align="center" title="有功功率(kW)">
|
<vxe-colgroup align="center" :title="`有功功率(${powerUnit})`">
|
||||||
<vxe-column align="center" field="pA" title="A相"></vxe-column>
|
<vxe-column align="center" field="pA" title="A相"></vxe-column>
|
||||||
<vxe-column align="center" field="pB" title="B相"></vxe-column>
|
<vxe-column align="center" field="pB" title="B相"></vxe-column>
|
||||||
<vxe-column align="center" field="pC" title="C相"></vxe-column>
|
<vxe-column align="center" field="pC" title="C相"></vxe-column>
|
||||||
@@ -112,7 +112,7 @@
|
|||||||
<br />
|
<br />
|
||||||
<vxe-table border height="" :data="realList" :column-config="{ resizable: true, tooltip: true }"
|
<vxe-table border height="" :data="realList" :column-config="{ resizable: true, tooltip: true }"
|
||||||
:tooltip-config="{ enterable: true }">
|
:tooltip-config="{ enterable: true }">
|
||||||
<vxe-colgroup align="center" title="无功功率(kVar)">
|
<vxe-colgroup align="center" :title="`无功功率(${reactivePowerUnit})`">
|
||||||
<vxe-column align="center" field="qA" title="A相"></vxe-column>
|
<vxe-column align="center" field="qA" title="A相"></vxe-column>
|
||||||
<vxe-column align="center" field="qB" title="B相"></vxe-column>
|
<vxe-column align="center" field="qB" title="B相"></vxe-column>
|
||||||
<vxe-column align="center" field="qC" title="C相">
|
<vxe-column align="center" field="qC" title="C相">
|
||||||
@@ -122,7 +122,7 @@
|
|||||||
</vxe-column>
|
</vxe-column>
|
||||||
<vxe-column align="center" field="qTot" title="总"></vxe-column>
|
<vxe-column align="center" field="qTot" title="总"></vxe-column>
|
||||||
</vxe-colgroup>
|
</vxe-colgroup>
|
||||||
<vxe-colgroup align="center" title="视在功率(kVA)">
|
<vxe-colgroup align="center" :title="`视在功率(${apparentPowerUnit})`">
|
||||||
<vxe-column align="center" field="sA" title="A相"></vxe-column>
|
<vxe-column align="center" field="sA" title="A相"></vxe-column>
|
||||||
<vxe-column align="center" field="sB" title="B相"></vxe-column>
|
<vxe-column align="center" field="sB" title="B相"></vxe-column>
|
||||||
<vxe-column align="center" field="sC" title="C相"></vxe-column>
|
<vxe-column align="center" field="sC" title="C相"></vxe-column>
|
||||||
@@ -170,6 +170,10 @@ const echartsDataV3: any = ref({})
|
|||||||
const echartsDataA1: any = ref({})
|
const echartsDataA1: any = ref({})
|
||||||
const echartsDataA2: any = ref({})
|
const echartsDataA2: any = ref({})
|
||||||
const echartsDataA3: any = ref({})
|
const echartsDataA3: any = ref({})
|
||||||
|
|
||||||
|
const currentDataLevel = ref('Primary')
|
||||||
|
const previousDataLevel = ref('')
|
||||||
|
|
||||||
//渲染中间相角图
|
//渲染中间相角图
|
||||||
const initRadioCharts = () => {
|
const initRadioCharts = () => {
|
||||||
echartsData1.value = {
|
echartsData1.value = {
|
||||||
@@ -542,7 +546,33 @@ const vRadioList: any = ref([])
|
|||||||
|
|
||||||
const realData = ref<any>({})
|
const realData = ref<any>({})
|
||||||
const realList = ref<any>([])
|
const realList = ref<any>([])
|
||||||
const setRealData = (val: any) => {
|
|
||||||
|
// 计算电压单位
|
||||||
|
const voltageUnit = computed(() => {
|
||||||
|
return currentDataLevel.value === 'Primary' ? 'kV' : 'V'
|
||||||
|
})
|
||||||
|
|
||||||
|
// 计算功率单位
|
||||||
|
const powerUnit = computed(() => {
|
||||||
|
return currentDataLevel.value === 'Primary' ? 'kW' : 'W'
|
||||||
|
})
|
||||||
|
|
||||||
|
// 计算无功功率单位
|
||||||
|
const reactivePowerUnit = computed(() => {
|
||||||
|
return currentDataLevel.value === 'Primary' ? 'kVar' : 'Var'
|
||||||
|
})
|
||||||
|
|
||||||
|
// 计算视在功率单位
|
||||||
|
const apparentPowerUnit = computed(() => {
|
||||||
|
return currentDataLevel.value === 'Primary' ? 'kVA' : 'VA'
|
||||||
|
})
|
||||||
|
|
||||||
|
const setRealData = (val: any,dataLevel:string) => {
|
||||||
|
// 只有当 dataLevel 真正改变时才更新
|
||||||
|
if (dataLevel !== previousDataLevel.value) {
|
||||||
|
currentDataLevel.value = dataLevel
|
||||||
|
previousDataLevel.value = dataLevel
|
||||||
|
}
|
||||||
realData.value = val
|
realData.value = val
|
||||||
realList.value = [val]
|
realList.value = [val]
|
||||||
initRadioCharts()
|
initRadioCharts()
|
||||||
|
|||||||
Reference in New Issue
Block a user