微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 基于SLPS的模拟电路故障样本自动获取技术

基于SLPS的模拟电路故障样本自动获取技术

时间:05-10 来源:互联网 点击:

摘要:故障样本数据的获取是模拟电路故障诊断中最基本的步骤。为了实现短时间内多次进行故障注入、获取大量样本数据,提出了基于SLPS的样本数据自动获取技术。利用SLPS将PSpice与Matlab结合,采用Matlab编程,实现故障模拟电路仿真数据获取的自动化。实际应用表明该方法操作简便,自动化程度高。
关键词:模拟电路;故障样本数据;SIPS;Matlab;PSpice

随着电子技术的迅速发展,电子设备的性能得到了很大的提高。模拟电路是电子设备中最易发生故障的薄弱环节,所以对其进行故障诊断具有重要意义。模拟电路故障诊断中最基本的是故障样本数据的获取。最常用的是利用Matlab和PSpice联合仿真提取故障样本数据。PSpi ce是一款电路仿真软件,可以得到精确的仿真结果;Matlab由主开发环境、工具箱、simulink仿真环境等内容组成,具有强大的数据处理功能。将PSpice和Matlab结合,利用各自优势完成模拟电路故障样本的获取,为故障特征提取做准备。
PSpice软件运行的数据结果以.out或.txt文本形式输出,包括输入文件,元件模型参数等内容。吴昊用的方法是先用Str2num函数去掉.out文件中不相干内容,再通过textread函数读取所需内容。满高华先用任选项设置(options)来简化.out文件内容,再用feof等函数读取有价值数据。杨博文先将.txt文件中的第一行字段名删除并保存为.dat格式,再用importdat函数提取有用数据。
上述方法都需要等PSpice仿真文件形成以后再进行数据操作,且后续操作的前提是电路文件不变。如若用故障字典法、神经网络或遗传算法等方法来进行模拟电路故障诊断,需要一次次的手动注入故障再进行仿真获取故障样本数据。尤其是利用遗传算法时需要成千上万次的样本提取,会消耗大量时间,所以故障注入及故障样本数据获取的自动化显得尤为重要。文中采用基于SLPS的模拟电路故障样本获取技术,实现了故障注入,样本提取的自动化。

1 基于SLPS的模拟电路故障样本获取流程
1.1 SLPS功能简介
SLPS是Cadence Design Systems公司针对PSpice模拟仿真器与Mathworks公司的Matlab建模工具推出的接口软件。该接口可用于电路系统的仿真。SLPS主要是链接PSpice至Matlab中的simulink仿真器。对于完整的机电系统的电子仿真,用户可通过一个原型来实现一个系统设计。
1.2 故障样本获取技术流程
故障样本获取技术流程图如图1所示。

1)在PSpiee中建立正常电路
在PSpice内部绘制电路图,设置参数选项。并运行一次仿真,产生.cir文件。
2)建立simulink子系统,加入SLPS模块
在Matlab中新建model文档,打开slpslib,加入SLPS模块,链接其输入输出,运行产生.mdl文件。并产生相应的SLPS_*.cir、SLPS_ *.net文件。在Matlab的Command Window窗口中输入open_system(*)即可打开系统查看,并手动修改设置参数。simulink中simulation-confignration parameters选项可按电路设置slover、max step size,仿真时间等参数,确定仿真时间内的采样点数。数据结果输出的方式可在simulink下sink中选择,选择simout将仿真数据输出到workspace工作区浏览器进行处理。
3)建立电路故障表
按照电路元件编号有序列出所有可能存在的故障,建立电路故障表。
4)运行程序自动读取故障表获取故障样本数据编写.m文件,运行程序自动读取故障表,调用子系统生成故障电路样本数据。

2 程序设计实现流程
上述流程中1)~3),是自动获取技术实现前的准备工作,而4)是自动获取技术的关键步骤。具体的程序设计实现流程如图2所示

1)读取故障表并进行故障注入 读取故障表,按照故障表逐个设置故障。研究发现.cir文件中又调用了.net文件,实验证明,直接修改.net文件内容即可修改元器件名称及参数形成故障电路。编写.m文件,用fopen语句打开.net文档并修改其元件参数,形成故障电路。
2)在Matlab中调用系统并运行 用load_system命令重新载入修改参数后的系统,sim命令运行系统。
3)输出故障样本数据 将输出的故障样本数据存储在一个矩阵中,每一列为一个故障样本,行数由周期内采样点数和采样时间决定。矩阵列数由故障表内故障个数决定,为故障样本个数。
4)恢复正常电路 将故障表中的故障作为变量,调用子程序,将故障电路参数修改回正常电路参数。为下次的故障设置做好准备。

3 应用实例分析
文中采用实例验证上述方法的可行性及样本数据的精准性。实例采取元件级仿真电路,图3电路为低通滤波电路。此电路是Intemation al Test Conference(ITC’97)中发布的一个模拟电路基准测试电路。
在PSpice中画好此电路图,并进行瞬态仿真。建立testmodel系统,加入SLPS模块,双击SLPS模块,打开SLPSsetting,将sine wave代替PSpice中原本的输入,选择simout方式输出到Matlab中。Testmodel系统如图4所示。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top