| | |
| | | <script> |
| | | <script setup> |
| | | import HdwBox from "@/components/HdwBox.vue"; |
| | | import { ref } from "vue"; |
| | | import ycLight from "@/components/ycLight.vue"; |
| | | import toFixed from "@/assets/js/toFixed.js"; |
| | | import const_digits from "@/assets/js/const_digits"; |
| | | |
| | | export default { |
| | | name: "StateInfo" , |
| | | components: {HdwBox}, |
| | | data() { |
| | | return { |
| | | title: "标题" |
| | | }; |
| | | const emit = defineEmits(["editParams", 'start', 'stop', 'clearAlarm']); |
| | | const { VOL, CURR, TEMP, FREQ } = const_digits; |
| | | |
| | | const props = defineProps({ |
| | | // title: { |
| | | // type: String, |
| | | // default: "标题", |
| | | // }, |
| | | info: { |
| | | type: Object, |
| | | // default: () => { |
| | | // return {}; |
| | | // }, |
| | | required: true, |
| | | }, |
| | | } |
| | | }); |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <hdw-box :title="title"> |
| | | <hdw-box :title="info.powerName"> |
| | | <template #tools> |
| | | <el-button size="small" type="primary">启动测试</el-button> |
| | | <el-button size="small" type="primary" @click="emit('clearAlarm')">清除故障</el-button> |
| | | <el-button size="small" type="primary" @click="emit('editParams')">修改参数</el-button> |
| | | <el-button size="small" type="primary" v-if="!info.state?.powerWorkstat" @click="emit('start')">开机</el-button> |
| | | <el-button size="small" type="primary" v-else @click="emit('stop')">关机</el-button> |
| | | </template> |
| | | <el-scrollbar> |
| | | <div class="state-info-title">IIC读取数据</div> |
| | | <!-- <div class="state-info-title">IIC读取数据</div> |
| | | <div class="state-info-list-wrapper"> |
| | | <el-row :gutter="0"> |
| | | <el-col :span="8"> |
| | |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | <div class="state-info-title adc">单片机ADC采样</div> |
| | | </div> --> |
| | | <!-- <div class="state-info-title adc">单片机ADC采样</div> --> |
| | | <div class="state-info-list-wrapper"> |
| | | <el-row :gutter="0"> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">A相电压:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.vgridrmsVola, VOL) }} |
| | | </div> |
| | | <div class="state-info-unit">V</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">B相电压:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.vgridrmsVolb, VOL) }} |
| | | </div> |
| | | <div class="state-info-unit">V</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">C相电压:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.vgridrmsVolc, VOL) }} |
| | | </div> |
| | | <div class="state-info-unit">V</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">A相电流:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.igridrmsCurra, CURR) }} |
| | | </div> |
| | | <div class="state-info-unit">A</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">B相电流:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.igridrmsCurrb, CURR) }} |
| | | </div> |
| | | <div class="state-info-unit">A</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">C相电流:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.igridrmsCurrc, CURR) }} |
| | | </div> |
| | | <div class="state-info-unit">A</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-title line"></div> |
| | | <div class="state-info-list-wrapper"> |
| | | <el-row :gutter="0"> |
| | | <el-col :span="8"> |
| | | <!-- <el-col :span="8"> |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">A相功率:</div> |
| | | <div class="state-info-value-wrapper"> |
| | |
| | | <div class="state-info-unit"></div> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | </el-col> --> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">母线电压:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value">{{ toFixed(info.state?.vbusVol, VOL) }}</div> |
| | | <div class="state-info-unit">V</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">交流频率:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value">{{ toFixed(info.state?.gridFreq, FREQ) }}</div> |
| | | <div class="state-info-unit">HZ</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">PCB温度:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.degreeTemppcb, TEMP) }} |
| | | </div> |
| | | <div class="state-info-unit">℃</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">BUS+正电压:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value">{{ toFixed(info.state?.vmidVol, VOL) }}</div> |
| | | <div class="state-info-unit">V</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">A散热器温度:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.degreeTempa, TEMP) }} |
| | | </div> |
| | | <div class="state-info-unit">℃</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">B散热器温度:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.degreeTempb, TEMP) }} |
| | | </div> |
| | | <div class="state-info-unit">℃</div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="state-info-item-wrapper"> |
| | | <div class="state-info-label">C散热器温度:</div> |
| | | <div class="state-info-value-wrapper"> |
| | | <div class="state-info-value">0</div> |
| | | <div class="state-info-value"> |
| | | {{ toFixed(info.state?.degreeTempc, TEMP) }} |
| | | </div> |
| | | <div class="state-info-unit">℃</div> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label">A相电压有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">V</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label">B相电压有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">V</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label">C相电压有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">C</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label large">A相电流有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">A</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label large">B相电流有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">A</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label">C相电流有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">A</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label">A相电压有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">V</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label">B相电压有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">V</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label">C相电压有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">C</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label large">A相电流有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">A</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label large">B相电流有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">A</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="12">--> |
| | | <!-- <div class="state-info-item-wrapper">--> |
| | | <!-- <div class="state-info-label">C相电流有效值:</div>--> |
| | | <!-- <div class="state-info-value-wrapper">--> |
| | | <!-- <div class="state-info-value">0</div>--> |
| | | <!-- <div class="state-info-unit">A</div>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | </el-row> |
| | | </div> |
| | | <div class="state-info-title line"></div> |
| | | <div class="state-info-list-wrapper"> |
| | | <el-row :gutter="0"> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">A相过流</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.acinOverCurra"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">B相过流</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.acinOverCurrb"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">C相过流</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.acinOverCurrc"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">A相过压</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.vgridOverVola"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">B相过压</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.vgridOverVolb"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">C相过压</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.vgridOverVolc"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">A相欠压</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.vgridUnderVola"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">B相欠压</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.vgridUnderVolb"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">C相欠压</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.vgridUnderVolc"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">BUS过压</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.busOverVol"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">BUS欠压</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.busUnderVol"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="8"> </el-col> |
| | | <el-col :span="12"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">A散热器温度过温</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.mosaOverTemp"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">B散热器温度过温</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.mosbOverTemp"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">C散热器温度过温</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.moscOverTemp"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="12"></el-col> |
| | | <el-col :span="12"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">风机故障</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.fanAlarm"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <div class="state-info-item-wrapper alarm"> |
| | | <div class="label">12V辅助电源故障</div> |
| | | <div class="value"> |
| | | <yc-light :error="info.state?.vdc12vFault"></yc-light> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | </el-scrollbar> |
| | |
| | | display: inline-block; |
| | | } |
| | | } |
| | | &.alarm { |
| | | display: flex; |
| | | flex-direction: row; |
| | | align-items: center; |
| | | padding: 0; |
| | | } |
| | | .label { |
| | | flex: 1; |
| | | text-align: right; |
| | | margin-right: 0.6em; |
| | | &::after { |
| | | content: ":"; |
| | | } |
| | | } |
| | | .value { |
| | | margin-right: 0.4em; |
| | | } |
| | | } |
| | | } |
| | | .state-info-title { |