文章信息
- 董海迪, 刘刚, 何兵, 李永强, 王世涛
- DONG Haidi, LIU Gang, HE Bing, LI Yongqiang, WANG Shitao
- 基于系统搜索的容差模拟电路多参数故障诊断
- Multiple parameter fault diagnosis on analog circuits with tolerance based on system search algorithm
- 中国测试, 2019, 45(7): 134-139
- CHINA MEASUREMENT & TEST, 2019, 45(7): 134-139
- http://dx.doi.org/10.11857/j.issn.1674-5124.2018010039
-
文章历史
- 收稿日期: 2018-01-18
- 收到修改稿日期: 2018-05-20
2. 96861部队,河南 洛阳 471600;
3. 海军研究院,北京 100161
2. Unit 96861, Luoyang 471600, China;
3. Naval Academy of Armament, Beijing 100161, China
模拟电路故障诊断是电子设备有效性验证的重要问题[1-2],模拟电路故障诊断方法依据仿真进行的时间划分为测前仿真方法和测后仿真方法[3-4]。参数故障诊断通常采用测后仿真方法,通过求解测试方程得到待测元件的参数值,与标称值比对进行故障隔离定位。参数辨识法分为伴随网络法和多频诊断法[5-6]。伴随网络法是根据Tellegen定理计算得到测点处各元件的灵敏度值,采用牛顿迭代方法和区间法等求解被测电路构成的多元非线性方程组,该方法计算量大。多频诊断法是指通过增加测试频率,得到更多的故障方程数,据此来确定元件值,该方法收敛效果差。近几年来参数辨识法取得了新的进展,He等[7]将L1最优范数引入到非线性电路的参数估计,采用神经网络方法求解;Guo和Savir[8]采用自回归模型和系统辨识工具进行模拟电路故障参数辨识;LONG等[9]采用改进的灵敏度计算方法进行模拟电路的故障参数辨识。
对于复杂线性电路或非线性电路,电路代数方程很难求取或不存在、求解效率低等问题仍然存在,困扰着参数辨识方法的进一步发展。此外,由于元件容差影响,存在故障掩盖现象。同时,考虑方程的非线性,测试方程可能存在多解情况。综上分析,有必要寻求新技术途径来实现对模拟电路的故障参数辨识,本文针对容差条件下模拟电路的多软故障诊断问题开展研究,提出一种基于系统搜索的故障诊断和参数辨识方法。
1 算法原理假设某被测电路中可能存在
${{f}}({{x}}) = 0$ | (1) |
式中:
实际电路中,往往无法得到非线性函数
为了找到式(1)的多个解,将该问题转化为初值问题。设计差分方程为
$\left\{ {\begin{aligned} &{\frac{{{\rm d}{f_i}({{x}}(t))}}{{{\rm d}t}} = - {f_i}({{x}}(t)),{f_i}({{x}}(0)) = 0,i = 1,\cdots,n - 1} \\ & {\frac{{{\rm d}{f_n}({{x}}(t))}}{{{\rm d}t}} = \pm {f_n}({{x}}(t)),{f_n}({{x}}(0)) = {f_{n0}}} \end{aligned}} \right.$ | (2) |
由式(2)得到:
$\left\{ {\begin{aligned} & {{f_i}({{x}}(t)) = {f_i}({{x}}(0)){{\rm e}^{ - t}} = 0,i = 1,\cdots,n - 1} \\ & {{f_n}({{x}}(t)) = {f_{n0}}{{\rm e}^{ \pm t}}} \end{aligned}} \right.$ | (3) |
初值条件
由于
$\frac{{{\rm d}{{x}}}}{{{\rm d}t}} = {{{J}}^{ - 1}}({{x}}){{w}}({{x}})$ | (4) |
式中:
在文献[11]中,已经证明了
${f'_n}({{x}}) = \frac{{\partial {f_n}({{x}})}}{{\partial l}} = \frac{{\det {{J}}({{x}})}}{{\sqrt {\sum\nolimits_{i = 1}^n {\Delta _{ni}^2({{x}})} } }}$ | (5) |
式中:
由式(3)可知,式(2)中
兼顾截断精度和计算量,采用四阶显式龙格库塔法[12]求解初值问题式(4)的数值解。因为隐式积分方法要求对电路进行二阶灵敏度分析,其无法对式(4)进行求解。考虑到测试式(1)的代数方程无法准确得到,测点电压
为了找到测试方程的所有可行解,本文提出采用系统搜索方法,关键是找到简单的空间曲线
$\left\{ {\begin{aligned} & {{f_1}({x_1},{x_2},\cdots,{x_{n - 1}},{x_n}) = 0} \\ & {{f_2}({x_1},{x_2},\cdots,{x_{n - 1}},{x_n}) = 0} \\ & \quad\quad\quad\quad\vdots \\ & {{f_{n - 1}}({x_1},{x_2},\cdots,{x_{n - 1}},{x_n}) = 0} \end{aligned}} \right.$ | (6) |
选择某参数取标称值,其余参数为变量,对该方程组进行
为简化说明,式(6)的系统用以下形式描述:
实际应用中测量精度有限,且考虑元件存在容差,因此对上述方法进行修正。对于曲线上的任何点
诊断的目的是找到电路中满足测试方程的可能发生故障的参数
考虑电路中所有元件参数在容差范围内扰动,由文献[13]得到:
$ y_{i}=\sum\limits_{j=1}^{n} a_{i j} x_{j}, i=1,2, \cdots, m $ | (7) |
式中:yi——第i个激励信号下测量值与标称参数下测量值的偏差;
xj——第j个元件的参数偏差;
aij——第i个激励信号下电压ei对第j个元件参数的电压灵敏度;
m——激励信号数量。
容差模拟电路正常状态下的元件参数偏差满足
引入变量
$ \left\{ {\begin{array}{*{20}{l}} {\displaystyle\sum\limits_{j = 1}^n {{a_{ij}}} {{\tilde x}_j} = {y_i} + \sum\limits_{j = 1}^n {{a_{ij}}} \varepsilon _j^ - }\quad \left( {i = 1, \cdots ,m} \right)\\ {0 \leqslant {{\tilde x}_j} \leqslant \varepsilon _j^ + + \varepsilon _j^ - } \end{array}} \right. $ | (8) |
为判断式(8)解的存在性,采用单纯形法的第一阶段方法进行求解。引入人工变量zi,对疑似故障元件k和l的参数偏差限值
$ \begin{array}{l} \min Z = \displaystyle\sum\limits_{i = 1}^m {{{\textit z}_i}} \\ s.t.\\ \left\{ {\begin{array}{*{20}{l}} {\displaystyle\sum\limits_{j = 1}^n {{a_{ij}}} {{\tilde x}_j} + {{\tilde x}_k} + {{\tilde x}_l} + {{\textit z}_i} = {y_i} + \displaystyle\sum\limits_{j = 1}^n {{a_{ij}}} \varepsilon _j^ - + \gamma _k^ - }\\ {0 \leqslant {{\tilde x}_j} \leqslant \varepsilon _j^ + + \varepsilon _j^ - }\\ {0 \leqslant {{\tilde x}_k} \leqslant \gamma _k^ + + \gamma _k^ - }\\ {0 \leqslant {{\tilde x}_l}\leqslant \gamma _l^ + + \gamma _l^ - }\\ {{{\tilde x}_j} \geqslant 0,{{\tilde x}_k} \geqslant 0,{{\tilde x}_l} \geqslant 0,{{\textit z}_i} \geqslant 0}\\ {(i = 1, \cdots ,m;j = 1, \cdots ,n,j \ne k,l)} \end{array}} \right. \end{array} $ | (9) |
若修正后的式(9)存在最小目标值Z≈0,则表示元件k和l确实发生故障。电路中存在更多故障的诊断过程与此类似。
4 实例验证本文提出的算法使用大量BJT和CMOS电路进行测试。为了说明算法的有效性,考虑两个数值例子。在所有例子中,BJT电路的步长为0.01,CMOS的步长为0.05,M=20 000。
4.1 案例一在实验室条件下搭建的BJT电路[14]如图1所示。该电路含5个BC108B晶体管,测试电压精度为1 mV。考虑到电阻R2、R5和R6的参数变化对输出电压的影响很小,故障无法检测,因此仅考虑电阻R1、R3和R4可能发生故障情况。实际测量电阻值为R2=5.024 kΩ,R5=10.12 kΩ,R6=99.8 kΩ。采用算法仿真计算时,采用它们的标称值。晶体管采用G-P模型,参数设置如下:IS=7.59×10−15 A,BF=480,NF=1,VAF=19.3 V,IKF=0.071 A,ISE=7.477×10−15 A,NE=1.2,BR=5,NR=1,VAR=12.5 V,ISC=2.00×10−13 A,NC=1.3808,RB=0 Ω,RE=0 Ω,RC=0 Ω。选择
故障电阻 | R1 | R3 | R4 | |
故障电阻
值/kΩ |
故障一 | 9.100 | 0.822 | 0.834 |
故障二 | 6.882 | 0.477 | 0.391 | |
计算得到的电阻范围/kΩ | 故障一 | 8.789~9.155 | 0.818~0.820 | 0.804~0.841 |
故障二 | 6.519~6.764 | 0.467~0.469 | 0.366~0.382 | |
平均电阻值/
kΩ |
故障一 | 8.977 | 0.819 | 0.823 |
故障二 | 6.647 | 0.468 | 0.374 |
如果提高电压测量精度到0.01 mV,更多数量的参数故障能够被诊断出来。考虑R1、R2、R3、R4和R5参数,激励信号、测量电压及计算结果如表3所示。可以看出,计算电阻范围基本涵盖了故障电阻实值,计算得最大误差为1.38%。在上述讨论的例子中,计算得到的结果都在曲线
输入电压/V | 测量电压/V | 故障电阻/kΩ | 计算电阻范围/kΩ | 均值/kΩ |
12 | 0.727 59 | R1=7.400 | 7.233~7.362 | 7.298 |
12 | 4.652 59 | R2=4.870 | 4.772~4.849 | 4.811 |
6 | 0.325 74 | R3=0.526 | 0.516~0.524 | 0.520 |
6 | 2.375 10 | R4=0.526 | 0.515~0.524 | 0.520 |
18 | 6.920 79 | R5=12.000 | 12.034~12.036 | 12.035 |
仿真实验包括30个不同的故障模式,实验结果为:计算得到19个故障模式的参数值位于曲线
考虑如图2所示的含CMOS电压跟随器电路[15]。MOS晶体管仿真采用PSPICE中的LEVEL 1模型,标称参数设置:pMOS-GAMMA=0.53 V0.5,IS=10−16 A,KP=28.3 μA/V2,PHI=0.58 V,RD=RS=94 Ω,VTO=−0.84 V;nMOS-GAMMA=0.38 V0.5,IS=10−16 A,KP=79.7 μA/V2,PHI=0.53 V,RD=RS=63 Ω,VTO=0.79 V。
晶体管标称每米的通道宽度和长度如图2所示。考虑沟道的宽度与长度的比值(W/L)偏差。晶体管的标称比值(W/L)为:3.750,8.750,50.000,15.000,15.000,6.875,6.875,75.000。
假设测点为1和2,测量精度取0.1 mV,测试安排如表4所示。假定晶体管T1、T5、T6、T7、T8可能发生故障,晶体管T2、T3、T4的宽度与长度的比值(W/L)取标称值,故障参数值位于曲线
输入电压/V | 输出电压/V | ||||
|
|
|
V1 | V2 | |
2.50 | 1.00 | 2.50 | −1.426 5 | −1.370 7 | |
3.00 | −1.00 | 3.00 | −1.774 1 | −1.704 8 | |
2.00 | 0.50 | 3.00 | − | −1.840 3 |
标号 | W/L实值 | W/L计算范围 | W/L平均值 |
T1 | 3.490 | 3.485~3.497 | 3.490 |
T5 | 13.950 | 13.117~15.086 | 14.101 |
T6 | 6.390 | 5.907~6.742 | 6.325 |
T7 | 6.390 | 6.016~6.892 | 6.454 |
T8 | 69.770 | 69.586~69.846 | 69.716 |
将测量精度提高到0.001 mV,测试安排如表6所示。假设所有的晶体管可能发生故障,该方法得到参数值范围(位于曲线
|
|
|
2.50 | 1.00 | 2.50 |
3.00 | −1.00 | 3.00 |
2.00 | 0.50 | 3.00 |
3.00 | −0.50 | 2.00 |
标号 | W/L实值 | W/L计算范围 | W/L平均值 |
T1 | 3.490 | 3.489~3.490 | 3.490 |
T2 | 8.140 | 8.164~8.181 | 8.178 |
T3 | 46.510 | 46.503~46.511 | 46.507 |
T4 | 13.950 | 14.089~14.125 | 14.107 |
T5 | 13.950 | 13.885~13.922 | 13.903 |
T6 | 6.390 | 6.457~6.470 | 6.464 |
T7 | 6.390 | 6.360~6.375 | 6.368 |
T8 | 69.770 | 69.772~69.772 | 69.772 |
仿真实验包括30个不同故障模式,实验结果为:计算得到24个故障模式的参数值位于曲线
模拟电路参数故障诊断的关键是求解可能存在多解的非线性测试方程组,并从所有解中辨识出真解。本文研究将非线性测试方程的多解求解转化为差分方程的初值问题,提出一种系统搜索算法求解故障元件参数,将故障验证转化为线性规划问题最优解的存在性判断,BJT和CMOS电路实验验证了算法的有效性。本方法能够有效处理非线性模拟电路的软故障诊断问题,后续将进一步完善工程化的试验研究和对比分析。
[1] |
TADEUSIEWICZ M, HALGAS S, KUCZYNSKI A. New aspects of fault diagnosis of nonlinear analog circuits[J].
International Journal of Electronics and Telecommunications, 2015, 61(1): 83-93.
DOI:10.1515/eletel-2015-0011 |
[2] |
唐小峰, 许爱强, 李文海. 多层次模拟电路随机变异生成方法研究[J].
中国测试, 2016, 42(1): 12-15,64.
|
[3] |
周启忠, 谢永乐, 毕东杰, 等. 一种模拟电路参数型故障诊断新方法[J].
电子科技大学学报, 2017(2): 386-391.
DOI:10.3969/j.issn.1001-0548.2017.02.012 |
[4] |
XIE Y, LI X, XIE S, et al. Soft fault diagnosis of analog circuits via frequency response function measurements[J].
Journal of Electronic Testing, 2014, 30(2): 243-249.
DOI:10.1007/s10836-014-5445-9 |
[5] |
RAPISARDA L A, CARLO R D. Analog multi -frequency fault diagnosis[J].
IEEE Transactions on Circuits and Systems, 1983, 30(4): 223-234.
DOI:10.1109/TCS.1983.1085352 |
[6] |
BANDLER J W, BIERNACKI R M, SALAMA A E, et al. Fault isolation in linear analog circuits using the L1 norm[C]//Proc. IEEE Int. Symp. Circuits and Systems, 1982: 1140-1143.
|
[7] |
HE Y, SUN Y C. Neural network-based l1-norm optimisation approach for fault diagnosis of nonlinear circuits with tolerance[J].
IEE Proceedings-Circuits Devices and Systems, 2001, 148(4): 223-228.
DOI:10.1049/ip-cds:20010418 |
[8] |
GUO Z, SAVIR J. Coefficient-based test of parametric faults in analog circuits[J].
IEEE Transactions on Instrumentation and Measurement, 2006, 55(1): 150-157.
DOI:10.1109/TIM.2005.861490 |
[9] |
LONG T, WANG H, LONG B. A classical parameter identification method and a modern test generation algorithm[J].
Circuits Systems and Signal Processing, 2011, 30(2): 391-412.
DOI:10.1007/s00034-010-9228-y |
[10] |
BRANIN F H. Widely convergent method for finding multiple solutions of simultaneous nonlinear equations[J].
IBM Journal of Research and Development, 1972, 16(5): 504-522.
DOI:10.1147/rd.165.0504 |
[11] |
CHAO K, LIU D, PAN C. A systematic search method for obtaining multiple solutions of simultaneous nonlinear equations[J].
IEEE Transactions on Circuits and Systems, 1975, 22(9): 748-753.
DOI:10.1109/TCS.1975.1084122 |
[12] |
CHUA L O, LIN P M. Computer-aided analysis of electronic circuits: algorithms and computational techniques[M].Upper Saddle River: Prentice Hall , 1975.
|
[13] |
董海迪, 刘刚, 何兵, 等. 容差模拟电路参数故障诊断[J].
中国测试, 2017, 43(9): 128-133.
|
[14] |
TADEUSIEWICZ M, HALGAS S. A new approach to multiple soft fault diagnosis of analog BJT and CMOS circuits[J].
IEEE Transactions on Instrumentation and Measurement, 2015, 64(10): 2688-2695.
DOI:10.1109/TIM.2015.2421712 |
[15] |
TADEUSIEWICZ M, HALGAS S. Multiple soft fault diagnosis of nonlinear circuits using the continuation method[J].
Journal of Electronic Testing, 2012, 28(4): 487-493.
DOI:10.1007/s10836-012-5306-3 |