GIS状态检测新技术——振动分析法
提示:唐老师好,我之前因为“阳”了,所以就没有参与汇报,给老师带来不便,请老师见谅。以此篇文章代替课堂汇报。
文章目录
- 前言
- 一、不同故障对应的振动频谱和故障特征量
- 二、GIS设备振动特征估计
- 1.GIS设备状态空间
- 2.粒子滤波
- 三、GIS故障检测指标与自适应阈值
- 四、案例分析与仿真
- 总结
- 附录
前言
提示:这里可以添加本文要记录的大概内容:
本文是自己硕士研究生“电气设备智能感知与诊断”课上原本要汇报的内容,但因自己准备期间“阳”了而耽误,故补上一篇博客来代替汇报,写这篇博客一方面是为了代替汇报交作业,另一方面就是单纯想写点东西,加深一下自己对这个问题的理解,也给其他准备处理类似问题的人一点借鉴,本文适合自学,祝你们好运。对根据课堂安排,我们是4个人组成一个小组,每个小组对应一个主题,具体到我所在的小组,主题是GIS组合电气状态监测,分到自己的则是GIS状态检测新技术。当时我准备汇报的新技术是X射线,X射线拍到了照片后,后面研究的重点是各种各样的图像算法,觉得繁杂,且并不能说明某种算法引入以后的意义,就找其他的一些方法(中间看过红外检测等),最后换成基于GIS设备振动特性来判断设备的故障,最主要的文献来自于华电(保定)赵洪山老师团队发表在《高压电器》期刊上的《基于振动特征估计的GIS设备故障检测与分析》,作者是赵洪山老师和高玉峰师兄。这篇文章的主题是基于不同故障时引起的GIS设备振动特征不一样,提出了一种算法,基于这种算法可以判断出发生的故障究竟是放电性故障还是机械性故障,最后作者通过在保定特高压变电站的数据验证这种方法的可行性。这篇文章的重点就在于这个故障检测算法这里(之前还没有抓住这篇文章的重点),如图所示。
内容是按照以下步骤进行:
- 提取GIS外壳振动的数据(有历史上的,也有最新的)的特征量,基于通用自回归建模方法建立GNAP模型。
- 将GNAR模型作为状态转移方程,应用于粒子滤波算法中,构建系统特征估计器。
- 计算振动特征实际测量值与GNAR-PF估计值之间的残差。
- 选择故障检测指标并结合自适应阈值方法检测故障。
提示:以下是本篇文章正文内容,下面案例可供参考
一、不同故障对应的振动频谱和故障特征量
首先,我们要知道GIS设备工作正常时以及工作异常时,金属外壳上的振动频谱是不一样的,有区别的,有差异的,这是我们后面算法分析的大前提。
然后,我们详细分析这两种情况:GIS设备正常工作时,外壳振动基频为100Hz。正常运行时,GIS开关设备振动主要由电磁力与磁致伸缩引起,这两个原因引起的100Hz稳定振动是可以通过理论分析得到的,前者有一个重要的模型就是空心式电流互感器模型,利用这个模型(虽然模型不精确,但一些文献计算外壳功率损耗仍然用这个模型)方便理解GIS设备外壳环流,这个环流在磁场中,设备会受到力的作用,这个力的大小是与电流大小有关,自然就会问环流大小与什么有关,后面自己调研相关文献,知道分三相共箱型和三相分箱型(运行电压等级不一样),具体影响因素也不一样,总体上是三相共箱型外壳环流小,三相分箱型外壳环流大,后面依次列写出三相分箱与三相合箱的电磁力的作用表达式(吐槽一下:CSDN博客插入LaTex公式不是很好用),无论什么哪种情况,在工频情况下,其振动频率自然是100Hz。
三相分箱型:F=BiL(B=μ0I0sin(ωTt)2πR)=μ0kLI02sin2(ωt)2πR三相分箱型:F=BiL\left ( B=\frac{\mu _{0}I_{0}\sin \left ( \omega Tt \right ) }{2\pi R} \right ) \\ = \frac{\mu _{0}kLI_{0}^{2} \sin^{2} \left ( \omega t \right ) }{2\pi R} 三相分箱型:F=BiL(B=2πRμ0I0sin(ωTt))=2πRμ0kLI02sin2(ωt)
三相合箱型:f=Fala=B合Ialala=3×10−7×I2d∣sinωt∣三相合箱型:f=\frac{F_{a} }{l_{a} } =\frac{B_{合} I_{a}l_{a} }{l_{a} } =\frac{\sqrt{3} \times 10^{-7}\times I^{2} }{d}\left | \sin \omega t \right | 三相合箱型:f=laFa=laB合Iala=d3×10−7×I2∣sinωt∣
在后者磁致伸缩引起的振动中,磁畴的理解很关键,本科期间学习电机学时,一开始学习铁磁材料磁滞回线,特别是饱和特性就学到了这个概念,这里在其上的基础拓展了一点,什么是磁致伸缩?通俗理解磁致伸缩就是铁磁材料在磁场下会发生形变,撤掉磁场,形变就消失了(教科书上的定义 磁致伸缩:铁磁性和亚铁磁性物质在外磁场作用下,在磁化方向上会发生伸长或缩短,去掉外加磁场后又恢复其原来的尺寸),理解这种形变。先理解成弹簧模型(见附录我做的PPT),后面深入的话,就会谈到磁畴,可以将其看作成一个个超微型的小磁铁,而且是椭圆形的小磁铁,当外界磁场方向变化时,椭圆形的小磁铁之前由正长轴方向相互连接,后变成反方向相互连接,中间就有个“长-短-长”的变化过程(变化过程见附录我的PPT),工频的话,变化次数就是工频的两倍,这个倍数关系同时也可以由磁学相关公式推导出来(公式见附录PPT)。下面这一页PPT是我原来准备课堂汇报的主体框架,我原本重点是要讲这个正常工作时100Hz是怎么来的,然后提一下异常工作下的振动频率是怎么样的,再简单提一下算法(感觉不好讲,里面由一系列的公式推导,逻辑推断,就打算简单化处理),介绍一下过程,看看仿真结果,就算大致说明了一下这个新方法,后面与唐老师交流,才知道自己是没有抓住核心部分(核心部分是算法部分,不把算法讲清楚,你无法说明这个新方法),对这给新方法是理解是极其肤浅的,根本就没有达到研究生的水准。反思这个过程,这对应自己之前的博客书写是为了更好的思考里面的内容,多渠道与人交流,能加深自己对事物的理解。
异常情况下的外壳震动频率并没有什么明显的特征频率,只有个特征范围。GIS设备常见的缺陷类型统计如下表所示。GIS设备最主要的故障类型就是两种:绝缘型故障和机械型故障。
机械故障包括紧固螺栓松动、机械卡涩、触头接触不良等,会引起低频振动;绝缘故障主要是由金属突出物、悬浮金属颗粒等局部放电破坏设备内部绝缘引起,振动频率主要在2kHz以上。经过统计,日本学者Okutsu N等学者得到了如下的不同故障类型下GIS设备金属外壳上的振动信号频率、幅值分布情况。 这个图来自于他在上IEEE于1981发表的论文,原论文虽然内容不多,但这篇文章被引较高,我在知网查阅文献时,几乎有关GIS振动的诊断方法的文章都会提到原文章,或这张图。
从上图我们可以看出机械故障与放电故障的频谱差异,我们选用什么参数来表征这个差异呢?原文作者选用“频段能量比”作为振动特征量(即下面公式中的 xxx ),具体将振动频谱图以 2kHz为界,分为“高频段”(同上 EHE_{H}EH )与“低频段”(同上 ELE_{L}EL ),每一个频段累加每一个频率点幅值(同上 A(f)A(f)A(f) )的平方,然后这上下两个频段之比取对数。具体如下
x=lgEHELEH=∑f=2001maxA2(f)EL=∑f=12000A2(f)x=lg\frac{E_{H} }{E_{L} } \\E_{H}=\sum_{f=2001}^{max} A^{2}(f) \\E_{L}=\sum_{f=1}^{2000} A^{2}(f) x=lgELEHEH=f=2001∑maxA2(f)EL=f=1∑2000A2(f)
原文作者选用的分界线是 2kHz,为什么选用这个频率作为分界线呢?2.5kHz行不行?电科院高压所郭碧红老师与张汉华老师的文章《利用GIS外壳典型振动的频率特性检测内部故障潜伏性故障》中给出了自由导电粒子运动和由固定杂质的局部放电时的外壳振动频谱图,如下就是振动放电引起的振动谱图,文章中的图太多了,不一一截图,主要为高频分量。
徐志钮老师等的文章《机械缺陷对GIS外壳振动影响》中讨论了螺栓松动和导杆不对中这两种缺陷时的振动信号分别与无缺陷正常运行时的差别,里面给出了螺栓松动时和导杆不对中时的振动信号图,如下所示,主要为低频分量
从上面的图以及我没有截过来的图可以看出,高频分量与低频分量分界线有多种选择,不一定要用这个2kHz,用这个也行,我们顺着作者的思路就用这个分界线继续分析。
二、GIS设备振动特征估计
我们已经选择好了振动特征量,现在想一想GIS正常运行(基频是100Hz等,低频分量较小,几乎无高频分量)、机械故障时(低频分量较多,高频分量不多)、放电性故障(低频分量没有高频分量那么多)这三种情况,用频段能量比也差不多可以区别出来,这样故障发生前后,这个振动特征量就发生了变化,即把故障发生后的振动特征量与故障发生前的振动特征量进行比较,具体操作的话,原文作者是基于故障发生前的数据来预测故障发生时的数据,然后用这个估计值来与故障发生时实际测量的数据进行比对,我们前面说了振动特征量在故障发生前后是不一样的,所以这个估计值与实际值是有区别的,一有区别就可以判断出故障, 除了这种方法以外,还有没有别的方法?我还没有弄清楚,此处存疑,后面的结果显示,我们可以隔离放电性故障与及机械性故障。这里涉及两个比较重要的概念:GNAR模型和粒子滤波,下面进行说明。
1.GIS设备状态空间
这里我们使用GNAR模型建立状态空间。先做个解释,GNAR是英文general expression for liner and nonliner auto-regressive time series model(线性和非线性自回归时间序列模型的一般表达式)的缩写,然后这里就谈及了时间序列这一概念i,好像通信的研究生期间有门课程就叫做“现代时间序列”,专门讲这个的,我没有系统学过,只能谈及肤浅的内容。先从时间序列这个概念说起,百度上定义为是指将同一统计指标的数值按其发生的时间先后顺序排列而成的数列,即我们随着时间变化,统计每一个时间点附近的振动特征量,把这些振动统计特征量按照时间的前后顺序排成一个数列就是所谓的时间序列。时间序列分析的主要目的是根据已有的历史数据对未来进行预测。即我们这里振动特征估计值,这里建模的话需要分系统是线性模型还是非线性模型,建模之前需要对系统进行线性检验,不同类型的模型需要用不同的方法,然后原文作者根据陈茹雯老师等的文章《线性/非线性时间序列模型一般表达式及工程应用》,认识到这个GNAR模型的好处在于无须对未知时间序列进行线性/非线性检验(同时使适用于线性与非线性系统),可以直接建模和预测,所以就用这种方法来建模, GIS振动系统明显为非线性系统, 除了这种方法以外,还有没有别的方法?原文没有谈到这种建模方法与其他建模方法的特别指出,此处存疑,表达式如下
式中:
- nj(j=1,2,−,p)n_{j} (j=1,2,-,p)nj(j=1,2,−,p)为各子项的记忆步长;ppp为多项式展开阶数。
- Wi1,Wi1,i2,−,Wi1,i2,−,ipW_{i1},W_{i1,i2} ,-,W_{i1,i2,-,ip}Wi1,Wi1,i2,−,Wi1,i2,−,ip为子项的模型参数,一般未知,需要求。
- xtx_{t}xt表示系统t时刻特征量(振动特征量)的取值 。
- ata_{t}at为模型误差,满足正态分布。
将上式写成如下的矩阵表达式。这里我们就要就要求解这个模型参数(即下面中WWW,即由模型参数组成的矩阵),用什么方法求呢,原文作者用最小二乘估计来求的,的确最小二乘法可以解决这个问题,常见于回归分析做参数估计, 这里有没有什么非用不可的道理呢?,此处存疑。做参数估计需要数据,数据哪里来,这里要么来自之前统计的数据,要么就是做实验测得的数据,然后经过一系列公式推导(中间涉及一些变量代换等过程,我又没有数据,无法将变化过程给表示出来,故略过这一步)
xt=GtTW+atx_{t} =G_{t}^{T}W+a_{t} xt=GtTW+at
可以得到状态方程如下:
Xt+1=EXt+A{tr[(XtXtT)(BX)]}+C[tr(DXtXtT)]+FatX_{t+1} =EX_{t} +A\left \{ tr\left [ \left ( X_{t}X_{t}^{T} \right ) \left ( BX \right ) \right ] \right \}+C\left [ tr\left ( DX_{t}X_{t}^{T} \right ) \right ] +Fa_{t} Xt+1=EXt+A{tr[(XtXtT)(BX)]}+C[tr(DXtXtT)]+Fat
式中:
- Xt+1=[xt,xt−1,−,xt−p]X_{t+1} =[x_{t},x_{t-1},-,x_{t-p} ]Xt+1=[xt,xt−1,−,xt−p]为ttt时刻特征变量,Xt=[xt−1,xt−2,−,xt−p−1]X_{t} =[x_{t-1},x_{t-2},-,x_{t-p-1} ]Xt=[xt−1,xt−2,−,xt−p−1]为t−1t-1t−1时刻特征变量。
- A=C=F=[1,0,⋅⋅⋅,0]TA=C=F=[1,0,···,0]^{T}A=C=F=[1,0,⋅⋅⋅,0]T为p×1p\times 1p×1 维向量。
- XXX表示p×pp\times pp×p维子项都为XtX_{t}Xt的分块矩阵。
- BBB表示p×pp\times pp×p分块参数矩阵,各子项Bij=[Wi,j,1,⋅⋅⋅,Wi,j,p]B_{ij} =\left [ W_{i,j,1},···,W_{i,j,p} \right ]Bij=[Wi,j,1,⋅⋅⋅,Wi,j,p]。
- D=[w1,1⋯w1,p00⋱⋮000wp,p00000]D=\begin{bmatrix} w_{1,1} & \cdots & w_{1,p} & 0\\ 0& \ddots & \vdots &0 \\ 0& 0& w_{p,p}& 0\\ 0& 0& 0&0 \end{bmatrix}D=w1,1000⋯⋱00w1,p⋮wp,p00000
- E=[w1w2⋯wp10000⋱000010]E=\begin{bmatrix} w_{1} & w_{2} & \cdots & w_{p}\\ 1& 0 & 0&0 \\ 0& \ddots & 0& 0\\ 0& 0& 1&0 \end{bmatrix}E=w1100w20⋱0⋯001wp000
输出方程如下:
Yt+1=HXt+vtY_{t+1} =HX_{t} +v_{t} Yt+1=HXt+vt
式中:
- Yt+1Y_{t+1}Yt+1为t+1t+1t+1时刻观测值。
- H=[10⋯0]T{H=\begin{bmatrix} 1 & 0& \cdots &0 \end{bmatrix}} ^{T}H=[10⋯0]T为p×1p\times 1p×1维参数向量。
- vtv_{t}vt为系统参数误差。
2.粒子滤波
将从上式知t+1t+1t+1时刻观测值,即 大约就是我们振动变量估计值,为什么说是’大约就是‘?这里要介绍几种概念,对于观测方程,需要进一步说明,任何观测方程都涉及3个量的问题,分别是真实值,测量值和滤波值。真实值是绝对存在但永远无法获得的;测量值是我们用传感器等观测工具获得能反映真实值大小的值,这个值与真实值相比是携带误差的;测量值经过滤波器优化之后得到的数值为滤波值。滤波的目的在于降低噪声的干扰,使滤波结果接近真实值,这三个量的关系如下图所示。
粒子滤波在这里的作用就是为了获得更加接近实际的状态估计值,即振动特征量。原文作者这里只大致提到了状态预测、状态更新和重采样这三个过程,都只是列了几道公式来说明这个过程,这对于新手来说,很难看懂,网上不少博客内容也是这样问题,本来就是很复杂的内容,偏偏要用繁琐,高深的语言来讲解,我看了不少文献,没有看懂多少,只找到黄小平老师等的《粒子滤波原理及应用》还算可以,适合自学,这本书封面如下。下面我尽可能用通俗易懂的语言来讲解什么是粒子滤波。
三、GIS故障检测指标与自适应阈值
前面经过结合粒子滤波的通用回归模型的特征估计器,得到的数值就是我们状态估计值,然后这给状态估计值与实际测量值之间差为残差,残差有正有负,估计值不一定刚好估计在真实值上,选择残差作为检测指标有问题,故选择残差的绝对值作为检测指标。考虑到设备振动的波动性,选择固定阈值会有问题比如误报警,故选择自适应阈值,什么是自适应阈值?就是阈值不是固定,而是随着时间在发生变化。以原文中图来说明。
这样就没有问题了
四、案例分析与仿真
原文作者经过保定特高压变电站的数据分析,先进行故障检测,有机械故障的检测结果图
放电性故障的结果图
后面进行故障隔离检测,结果图如下
仿真结果证明了这种算法的可行。
因为赵洪山老师是保定校区的老师,我其实是和赵老师发过电子邮件,我向赵老师提了一些问题,比如数据能不能发给我,机械性故障时所有常见的缺陷吗?比如螺栓松动,导杆不对中,放电性故障也是如此等,但赵老师至今没有回我,下面是邮件截图
总结
今天是2023年1月21日,除夕之夜
愿天上人间,占得欢娱,年年今夜 -宋·柳永《二郎神·炎光谢》
祝大家福启新岁,万事顺遂
附录
相关文章:
GIS状态检测新技术——振动分析法
提示:唐老师好,我之前因为“阳”了,所以就没有参与汇报,给老师带来不便,请老师见谅。以此篇文章代替课堂汇报。 文章目录前言一、不同故障对应的振动频谱和故障特征量二、GIS设备振动特征估计1.GIS设备状态空间2.粒子滤…...
Python进阶篇(一)-- Django快速上手
1 Django概述 Web框架,就是用于开发Web服务器端应用的基础设施,说得通俗一点就是一系列封装好的模块和工具。事实上,即便没有Web框架,我们仍然可以通过socket或CGI来开发Web服务器端应用,但是这样做的成本和代价在商业…...
读书笔记//来自公众号(1)
——【9大数据分析方法】—— 总结1:多部分方法用于定位问题,相关分析法与指标拆解法可以解释问题。 总结2:抓住两个关键因素:维度(类别)、指标 一、周期性分析 1.常见的周期包括2种:自然周期…...
10款让程序员用了会上瘾的工具
程序员必定会爱上的10款工具,相信肯定有不少是你的心头好,尤其是第4款。 第一款:TrueCryptTrueCrypt 可能很多人没用过,它是一个加密软件,能够对磁盘进行加密。还在担心自己电脑中的重要文件、私密档案被人查看&…...
类和对象(下)(一)
类和对象(下)(一)1.再谈构造函数1.1构造函数体赋值1.2初始化列表1.3explicit关键字2.static成员2.1概念2.2特性3.匿名对象🌟🌟hello,各位读者大大们你们好呀🌟🌟 &#x…...
46.在ROS中实现global planner(2)
前文实现了一个global planner的模板,并且可以工作,本文将实现astar算法,为后续完成一个astar global planner做准备 1. AStar简介 1.1 AStar Astar算法是一种图形搜索算法,常用于寻路。Astar算法原理网上可以找到很多,简单的说…...
05- 泰坦尼克号海难生死预测 (机器学习集成算法) (项目五)
Kaggle: 一个数据建模和数据分析竞赛平台sns画柱状图: sns.barplot(datatrain,xPclass,ySurvived)查看数据分布(survived 和 fare): sns.FacetGrid(train,hueSurvived,aspect3) ageFacetsns.FacetGrid(train,hueSurvived,aspect3) ageFacet.map(sns.kdeplot,Fare,shadeTrue) …...
【python百炼成魔】python运算符的使用与输入输出函数
文章目录前言一. python 运算符1.1 算术运算符1.2 .赋值运算符1.3 比较运算符1.4. 布尔运算符二. 输入和输出函数2.1 print函数2.1.1 help函数查看帮助文档2.1.2 print的格式化输出2.2 format函数2.3 input数据接收函数写在最后前言 Python 中的运算符主要分为算术运算符、比较…...
uniapp实现app检查更新与升级-uni-upgrade-center详解
app检查更新与升级 参考链接: 升级中心uni-upgrade-center - App uni-admin h5 api App资源在线升级更新 uni-app使用plus注意事项 关于在线升级(WGT)的几个疑问 什么是升级中心uni-upgrade-center uniapp官方开发的App版本更新的插件&#…...
公司项目引入这种方式,开发应用真是又快又准!
试想一下,你开足马力提了一串需求,给开发精英团队也好,给外包也行,都要等个半年甚至更久才会给到你一个满意的产品,你是否还有动力? 这还不止,业务越来越复杂,最初的需求也在随着着…...
virtuoso数据库介绍
在国内,对海量 RDF 数据的管理有着迫切的实际需求; RDF:Resource Description Framework,是一个使用XML语法来表示的资料模型(Data model),用来描述Web资源的特性,及资源与资源之间的关系。 Virtuoso可以对…...
linux高级命令之编辑器 vim
编辑器 vim学习目标能够说出vim的三种工作模式能够说出vim对应复制和粘贴命令1. vim 的介绍vim 是一款功能强大的文本编辑器,也是早年 Vi 编辑器的加强版,它的最大特色就是使用命令进行编辑,完全脱离了鼠标的操作。2. vim 的工作模式命令模式…...
分布式光伏储能系统的优化配置方法(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
Grafana loki部署及使用及问题处理方法(超详细)
一、下载软件 因为我是本地测试,所以用的windows版本的包,loki服务window版本的安装包下载地址:下载地址,选择 promtail-windows版本的安装包下载地址:下载地址 Grafana服务的下载地址:下载地址 二、配置…...
vue项目如何使用 SheetJS(xlsx)插件?
简言 SheetJS是一款非常好用的前端处理表格文件的工具。它分社区版和专业版,我们今天来介绍如何简单使用它的社区版。 SheetJS社区版官网 介绍 你应该打开官网浏览具体使用详情。 安装 打开官网在如上图的Installation板块中可以找到各种运行模块的使用方式。 …...
项目管理工具dhtmlxGantt甘特图入门教程(九):支持哪些数据格式(上篇)
dhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表,可满足项目管理控件应用程序的所有需求,是最完善的甘特图图表库这篇文章给大家讲解 dhtmlxGantt 的数据属性和数据库结构。 DhtmlxGantt正版试用下载(qun:764…...
iView Table合并单元格(行、列)
行/列合并设置属性 span-method 可以指定合并行或列的算法。该方法参数为 4 个对象:row: 当前行column: 当前列rowIndex: 当前行索引columnIndex: 当前列索引该函数可以返回一个包含两个元素的数组,第一个元素代表 rowspan,第二个元素代表 co…...
如何用P6软件编制项目进度计划(下)
卷首语 根据项目合同包含的工作范围进行工作分解(WBS),按照业主的要求及项目管理的需要,考虑不同阶段和层次,适时编制出项目管理所要求的的各级进度计划。 4搜集项目计划与进度控制相关信息 搜集与项目计划编制与进…...
环境配置完整指导——Installing C++ Distributions of PyTorch
目录一、前言二、动手开始做1. 安装cuda 11.42. 安装visual studio 2019 community3. 安装libtorch4. 安装mingw-w645. 配置环境变量6. 打开vscode开始写程序7. 运行程序8. 其他报错信息文章简介:这篇文章用于介绍在windows10 vscode中,跑通如下代码的全…...
深度学习——自注意力机制和位置编码(笔记)
1.自注意力: ①在深度学习中,经常使用卷积神经网络或者循环神经网络对序列进行编码 ②对于key,value和query,自注意力有一套自己的选法,因为key,value和query的值来自同一组输入。因此被称为自注意力或内部注意力 2…...
内网渗透(三十)之横向移动篇-利用远控工具向日葵横向移动
系列文章第一章节之基础知识篇 内网渗透(一)之基础知识-内网渗透介绍和概述 内网渗透(二)之基础知识-工作组介绍 内网渗透(三)之基础知识-域环境的介绍和优点 内网渗透(四)之基础知识-搭建域环境 内网渗透(五)之基础知识-Active Directory活动目录介绍和使用 内网渗透(六)之基…...
自动化测试中,该如何高效管理测试数据?
今晚在某个测试群,看到有人问了一个问题:把测试数据放配置文件读取和放文件通过函数调用读取有什么区别? 当时我下意识的这么回答:数据量越大,配置文件越臃肿,放在专门的数据文件(比如excel&am…...
Qt中项目A调用另一个项目B的方法汇总
在开发一个软件项目时候,当涉及到一个模块,已经有过类似的项目开发,为了避免重复开发,涉及到在该项目的工程中调用已开发的项目作为子项目,有很多种方法。 一、将项目编译成库文件然后进行调用 调用库文件通常有两种…...
【项目精选】基于Javaee的影视创作论坛的设计与实现(视频+论文+源码)
点击下载源码 基于Javaee的影视创作论坛的设计与实现主要用功能包括: 首页推荐、用户管理、影片管理、评论管理、 预告片管理、海报管理、公告管理、数据检索、用户注册与登录等等功能、统结构如下 (1)后台管理: 管理模块:管理员…...
深入【虚拟列表】动态高度、缓冲、异步加载... Vue实现
前言🎀 在前文中我们了解到: 1.在某种特殊场景下,我们需要将 大量数据 使用不分页的方式渲染到列表上,这种列表叫做长列表。 2.因为事件循环的机制,一次性大量的渲染耗时较长,并且渲染期间会阻塞页面交互…...
Windows 11 + WSL(ubuntu 20.04) + CLion(2022.3) 编译OpenJDK12
编译OpenJDK12 目录编译OpenJDK12前言一、下载OpenJDK源码二、编译OpenJDK参考https://openjdk.org/groups/build/doc/building.html1:安装编译所需的组件2:执行编译命令3:验证编译结果三、在Clion中调试OpenJDK源码1:Clion中配置…...
Freemarker 语法精粹
文章目录说明基本用法宏加载宏定义宏文件写法import和include区别内置方法注册全局共享变量处理空值和默认值获得hashmap的键值从map中拿对象遍历Map其它小技巧迁移事项参考说明 Freemarker 还存在我的一些老项目中,比起前端框架,自有它的简便之处&…...
使用Benchto框架对Trino进行SQL性能对比测试
有时需要对魔改源码前后的不同版本Trino引擎进行性能对比测试,提前发现改造前后是否有性能变差或变好的现象,避免影响数据业务的日常查询任务性能。而Trino社区正好提供了一个性能测试对比框架:GitHub - trinodb/benchto: Framework for runn…...
Redis之哨兵模式
什么是哨兵模式? Sentinel(哨兵)是用于监控Redis集群中Master状态的工具,是Redis高可用解决方案,哨兵可以监视一个或者多个redis master服务,以及这些master服务的所有从服务。 某个master服务宕机后,会把这个master下…...
Selenium自动化测试Python二:WebDriver基础
欢迎阅读WebDriver基础讲义。本篇讲义将会重点介绍Selenium WebDriver的环境搭建和基本使用方法。 WebDriver环境搭建 Selenium WebDriver 又称为 Selenium2。 Selenium 1 WebDriver Selenium 2 WebDriver是主流Web应用自动化测试框架,具有清晰面向对象 API&…...
ecs和wordpress/今日重点新闻
属于( A )A、过程控制 B、数据处理C、科学计算 D、CAD/CAM14、与十进制数0.625D等值的二进制数是( A )A、0.1010B B、0.1101B C、0.1111B D、0.1011B15、世界上最先实现的程序存储的计算机是( B )A、ENIAC B、EDSAC C、EDVAC D、UNIVAC16、性能价格比也是一种用来衡量计算机产品…...
做医院网站公司/线上销售平台如何推广
单播:单播MAC地址是从源到目的的唯一地址。 广播:就是一个主机向所有主机发送一个数据包。 组播:就是把数据发送给一组主机或者发送给感兴趣的主机。(组播的MAC地址是以:01-00-5E开头的,组播的IP地址224.0.…...
浙江建站优化品牌/青岛网站推广公司排名
1、ARRAY_SIZE 用来判断一个数组的 size,若传入的参数不是一个数组,编译将会报错。 使用此宏来安全的获取一个数组的 size。 include/linux/kernel.h#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) __must_be_array(arr))2、__must_be_arr…...
服务器可以做自己网站用吗/搜索引擎营销ppt
WhiteBoard白板功能很强大。 可以直接在网页上进行圈画,然后截图。 ImageEditor是一个很好用的画图功能,比windows画图的箭头好看。 转载于:https://www.cnblogs.com/Tpf386/p/8876973.html...
建网站的公司哪里有/百度推广关键词
我正在使用Python绑定到通过以下instructions安装的OpenCV 2.4。我的问题类似于this one,但是我需要Windows计算机解决方案。问题:当我尝试使用时cap cv2.VideoCapture(0)print cap.grab()它工作正常,但是以下代码cap cv2.VideoCapture(filename)print…...
做网上推广/seo关键词优化的技巧
最短Hamilton路径 给定一张 n 个点的带权无向图,点从 0~n-1 标号,求起点 0 到终点 n-1 的最短Hamilton路径。 Hamilton路径的定义是从 0 到 n-1 不重不漏地经过每个点恰好一次。 输入格式 第一行输入整数n。 接下来n行每行n个整数,其中第i…...