Przeglądaj źródła

桨距角分析

chenminghua 1 rok temu
rodzic
commit
e9baa68495

+ 13 - 148
src/pages/dataAnalysis/bladeAnalysis/index.vue

@@ -1,4 +1,4 @@
-<script setup name="rateAnalysis">
+<script setup name="bladeAnalysis">
 import excelCop from '@/components/excel.vue'
 import treeCop from '@/components/tree.vue'
 import barChartCop from './components/barChart.vue'
@@ -126,8 +126,8 @@ const funCurrentChange = ({ current, currentNode }) => {
 /**chart */
 let chartId = 1
 const powerproductionNum = ref(0)
-const avgSpeed = ref('')
-const avgMrxs = ref('')
+const avgBwAngle = ref('')
+const avgTjAngle = ref('')
 const windName = ref('')
 /**submit */
 const funSubmit = async () => {
@@ -144,40 +144,24 @@ const funSubmit = async () => {
 	if (tempRes.code === 200) {
         console.log('123',tempRes);
 		const xAxisData = [],xAxisData1 = [], barData1 = [], lineData1 = []
-		let avgSpeedSum = 0, avgMrxsSum = 1
+		let avgBwAngleSum = 0, avgTjAngleSum = 1
 
 		const chart = tempRes.data
 		if(chart.bw){
-
-		
             chart.bw.forEach((ele)=>{
                 xAxisData.push(ele.time)
                 barData1.push(ele.value)
-				// lineData1.push(chart.tj.value)
-                avgSpeedSum += ele.value
+                avgBwAngleSum += ele.value
             })
              chart.tj.forEach((ele)=>{
-				//  ele.value.toFixed(2)
-				//  let newArr = arr.map(num => num.toFixed(2));
                 xAxisData1.push(ele.time)
-                // barData1.push(ele.value)
 				lineData1.push(ele.value)
-				// lineData1.value.toFixed(2)
-                avgMrxsSum += ele.value
+                avgTjAngleSum += ele.value
             })
-
-			// xAxisData.push(chart.bw[value])
-            // xAxisData1.push(chart.tj[value])
-			// if (chart.bw) {
-				// barData1.push(chart.bw.value)
-				// lineData1.push(chart.tj.value)
-				// avgSpeedSum += chart.currentData.avgspeed
-				// avgMrxsSum += chart.currentData.mrxs
-			// }
 			
-			avgSpeed.value = (avgSpeedSum / barData1.length).toFixed(2)+'度'
-			avgMrxs.value = (avgMrxsSum / lineData1.length).toFixed(2)+'度'
-			console.log('12',avgMrxs.value);
+			avgBwAngle.value = (avgBwAngleSum / barData1.length).toFixed(2)+'度'
+			avgTjAngle.value = (avgTjAngleSum / lineData1.length).toFixed(2)+'度'
+			console.log('12',avgTjAngle.value);
 			windName.value = chart.wtId
 			barxAxis.data = xAxisData
 			linexAxis.data = xAxisData1
@@ -217,7 +201,7 @@ const lineyAxis = reactive({
 	}
 })
 const lineSeries = reactive([{
-	name: "停机",
+	name: "停机桨距角",
 	type: "line",
 	data: [],
 	symbol: "line", //设定为实心点
@@ -312,7 +296,7 @@ const baryAxis = reactive({
 	}
 })
 const barSeries = reactive([{
-	name: "并网",
+	name: "并网桨距角",
 	type: "line",
 	symbol: "line", //设定为实心点
 	symbolSize: 0, //设定实心点的大小
@@ -364,125 +348,6 @@ const funCheckAll = () => {
 	}
 }
 const chartExcelList = ref([]) //dialog 下拉项
-const funActCop = (obj, type) => {
-	switch(type){
-		case 'barChartCop':
-			actChartName.value = 'barChartCop'
-			obj.actCop = shallowRef(barChartCop)
-			actDiaTitle.value = '风速'
-			break
-		case 'lineChartCop':
-			actChartName.value = 'lineChartCop'
-			obj.actCop = shallowRef(barChartCop)
-			actDiaTitle.value = '毛容量系数'
-			break
-		// case 'CurrentScatterChartCop':
-		// 	actChartName.value = 'CurrentScatterChartCop'
-		// 	obj.actCop = shallowRef(CurrentScatte		// console.log(res)rChartCop)
-		// 	actDiaTitle.value = '静态偏航对风分析图'
-		// 	break
-	}
-	obj.isBrush = false
-	obj.id = chartId
-	chartId ++
-	dialog.value = true
-	actCopListBak.value = []
-	nextTick(() => {
-		actCopList.value = [obj]
-	})
-}
-// const funDiaSubmit = async () => {
-// 	let url = ''
-// 	switch(actChartName.value){
-// 		case 'barChartCop':
-// 			url = '/wind/avg/speed'
-// 			break
-// 		case 'lineChartCop':
-// 			url = '/wind/avg/speed'
-// 			break
-// 		// case 'CurrentScatterChartCop':
-// 		// 	url = '' //暂无接口
-// 		// 	break
-// 	}
-// 	if(url){
-// 		const res = await request.get(url, {
-// 			params: {
-// 				ids: queryForm.checkIds.join(','),
-// 				mode: 0
-// 			}
-// 		})
-// 		if(res.code===200){
-// 			actCopList.value = []
-// 			actCopListBak.value = [] //清空备份
-// 			if(res.data?.length){
-// 				for(const chart of res.data){
-// 					chart.currentData.sort((a,b) => {
-// 						return new Date(a.time).getTime() - new Date(b.time).getTime()
-// 					})
-// 					chart.preData.sort((a,b) => {
-// 						return new Date(a.time).getTime() - new Date(b.time).getTime()
-// 					})
-// 					const xAxisData = [], barData1 = [], barData2 = [], lineData1 = [], lineData2 = []
-// 					let avgSpeedSum = 0, avgMrxsSum = 0
-// 					let avgSpeedDesc = '', avgMrxsDesc = ''
-// 					for(const current of chart.currentData){
-// 						xAxisData.push(current.time)
-// 						barData1.push(current.avgspeed)
-// 						avgSpeedSum += current.avgspeed
-// 						avgMrxsSum += current.mrxs
-// 						lineData1.push((current.mrxs*100).toFixed(2))
-// 					}
-// 					for(const current of chart.preData){
-// 						barData2.push(current.avgspeed)
-// 						lineData2.push((current.mrxs*100).toFixed(2))
-// 					}
-// 					avgSpeedDesc = (avgSpeedSum / barData1.length).toFixed(2)+' m/s'
-// 					avgMrxsDesc = (avgMrxsSum / lineData1.length * 100).toFixed(2)+' %'
-// 					if(actChartName.value==='barChartCop'){
-// 						actCopList.value.push({
-// 							id: chartId,
-// 							isBrush: false,
-// 							actCop: shallowRef(barChartCop),
-// 							// title: chart.windturbine,
-// 							subtext: `${chart.wtId} 平均角度 ${avgSpeedDesc}`,
-// 							xAxis: {
-// 								...barxAxis,
-// 								data: xAxisData
-// 							},
-// 							yAxis: baryAxis,
-// 							series: [{
-// 								...barSeries[0],
-// 								data: barData1
-// 							}]
-// 						})
-// 						chartId++
-// 					}
-// 					if(actChartName.value === 'lineChartCop'){
-// 						actCopList.value.push({
-// 							id: chartId,
-// 							isBrush: false,
-// 							actCop: shallowRef(barChartCop),
-// 							// title: chart.windturbine,
-// 							subtext: `${chart.wtId} 平均角度 ${avgMrxsDesc}`,
-// 							xAxis: {
-// 								...linexAxis,
-// 								data: xAxisData
-// 							},
-// 							yAxis: lineyAxis,
-// 							series: [{
-// 								...lineSeries[0],
-// 								data: lineData1
-// 							}]
-
-// 						})
-// 						chartId++
-// 					}
-// 				}
-// 				actCopListBak.value = actCopList.value
-// 			}
-// 		}
-// 	}
-// }
 const funDiaExport = () => {
 	exportLoading.value = true
 	tools.scrollToPDF(diaPanelRef.value, actDiaTitle.value, () => {
@@ -564,7 +429,7 @@ onActivated(() => {
 							</el-icon> -->
 							<!-- <bar-chart-cop width="100%" height="100%" :subtext="`月平均风速`" :xAxis="barxAxis" :yAxis="baryAxis" :series="barSeries"></bar-chart-cop> -->
 							<!-- </el-icon> -->
-							<bar-chart-cop width="100%" height="100%" :subtext="`平均角度 ${avgSpeed}`"  :xAxis="barxAxis" :yAxis="baryAxis" :series="barSeries"></bar-chart-cop>
+							<bar-chart-cop width="100%" height="100%" :subtext="`平均角度: ${avgBwAngle}`"  :xAxis="barxAxis" :yAxis="baryAxis" :series="barSeries"></bar-chart-cop>
 						</div>
 						<div class="w-[100%] h-[49%] flex flex-col items-end shadow rounded-[6px] shadow-blue-500">
 							<!-- <el-icon class="mr-[10px] mt-[10px] cursor-pointer" size="18"
@@ -574,7 +439,7 @@ onActivated(() => {
 							</el-icon> -->
 							<!-- <bar-chart-cop width="100%" height="100%" :subtext="`毛容量系数`" :xAxis="linexAxis" :yAxis="lineyAxis" :series="lineSeries"></bar-chart-cop> -->
 							<!-- </el-icon> -->
-							<bar-chart-cop width="100%" height="100%" :subtext="`平均角度 ${avgMrxs=='Infinity度'?0:avgMrxs}`" :xAxis="linexAxis" :yAxis="lineyAxis" :series="lineSeries"></bar-chart-cop>
+							<bar-chart-cop width="100%" height="100%" :subtext="`平均角度: ${avgTjAngle=='Infinity度'?0:avgTjAngle}`" :xAxis="linexAxis" :yAxis="lineyAxis" :series="lineSeries"></bar-chart-cop>
 						</div>
 					</div>
 				</el-col>

+ 3 - 6
src/pages/report/index.vue

@@ -185,10 +185,10 @@
       <el-table-column prop="windturbine" align="center" label="风机编号" />
     </el-table>
     <h3 style="font-weight: bolder; font-size: 18px; color: black">
-      4、浆距角分析
+      4、桨距角
     </h3>
     <p class="ml-7">
-      容量系数是风机发电量能力的指标,数值越低,说明发电效率越低
+      桨距角分析并网开桨和停机收桨,并网状态下桨距角趋近于0度最优,停机状态下桨距角趋近于90度最优
     </p>
     <el-table
       :data="blade"
@@ -199,7 +199,7 @@
       <el-table-column
         prop="section"
         align="center"
-        label="距角"
+        label="距角"
         width="180"
       />
       <!-- <el-table-column prop="name" label="偏差率" /> -->
@@ -349,9 +349,6 @@ const handleReport = async (index, row) => {
     ele.module = "偏差率负值";
   });
   }
-  // res.data.info.blade.forEach((ele)=>{
-  //     ele.remark="浆距角"
-  // })
   
   curve.value = res.data.info.curve;
   mrlxs.value = res.data.info.mrlxs;

+ 1 - 1
src/router/index.js

@@ -151,7 +151,7 @@ const routes = [{
                     path: '/dataAnalysis/baldeAnalysis',
                     name: 'dataAnalysisAngleAnalysis',
                     meta: {
-                        title: '距角分析',
+                        title: '距角分析',
                     },
                     component: () =>
                         import(