0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用SLPS实现故障模拟电路仿真数据获取的自动化

电子设计 作者:电子设计 2018-11-21 07:53 次阅读

随着电子技术的迅速发展,电子设备的性能得到了很大的提高。模拟电路是电子设备中最易发生故障的薄弱环节,所以对其进行故障诊断具有重要意义。模拟电路故障诊断中最基本的是故障样本数据的获取。最常用的是利用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所示。

利用SLPS实现故障模拟电路仿真数据获取的自动化

图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所示。

利用SLPS实现故障模拟电路仿真数据获取的自动化

图2 程序设计流程图

1)读取故障表并进行故障注入 读取故障表,按照故障表逐个设置故障。研究发现。cir文件中又调用了。net文件,实验证明,直接修改。net文件内容即可修改元器件名称及参数形成故障电路。编写。m文件,用fopen语句打开。net文档并修改其元件参数,形成故障电路。

2)在Matlab中调用系统并运行 用load_system命令重新载入修改参数后的系统,sim命令运行系统。

3)输出故障样本数据 将输出的故障样本数据存储在一个矩阵中,每一列为一个故障样本,行数由周期内采样点数和采样时间决定。矩阵列数由故障表内故障个数决定,为故障样本个数。

4)恢复正常电路 将故障表中的故障作为变量,调用子程序,将故障电路参数修改回正常电路参数。为下次的故障设置做好准备。

3 应用实例分析

文中采用实例验证上述方法的可行性及样本数据的精准性。实例采取元件级仿真电路,图3电路为低通滤波电路。此电路是Intemation al Test Conference(ITC'97)中发布的一个模拟电路基准测试电路。

利用SLPS实现故障模拟电路仿真数据获取的自动化

图3 低通滤波电路

在PSpice中画好此电路图,并进行瞬态仿真。建立testmodel系统,加入SLPS模块,双击SLPS模块,打开SLPSsetting,将sine wave代替PSpice中原本的输入,选择simout方式输出到Matlab中。Testmodel系统如图4所示。

利用SLPS实现故障模拟电路仿真数据获取的自动化

图4 Testmodel系统

设置输入VAMPL为1 V,FREQ为1 k的信号源。maxstep size为1 μs,仿真时间设为2 ms,即仿真两个周期。系统建立完成后根据电路图建立故障表。文中以硬故障为例,每个元件有短路、开路、正常3种状态,现考虑R1、R2、R3、C4 4个元件,一共是34=81种状态,其中80种故障,一种正常状态。在PSpice中不得出现节点悬空,否则无法通过编译,所以故障建模时开路状态选用99 999kΩ的电阻表示,短路则用0.0 05 5μΩ的电阻表示。打开Matlab运行程序,每个状态能在workspace中得到2002x1的样本数据矩阵,即单个故障样本。故障表为81种状态,则最后得到2002x81的矩阵,即电路样本数据集。

画图对比验证样本数据获取的准确性。举例设置故障电路:R1开路,R2开路,R3短路,C4正常,将此故障电路在PSpice中画出,同样设置最大步长为1μs,仿真时长为2 ms,并进行瞬态仿真得出图5.在matlab中运行系统,得到的样本数据用plot(tout,testvout)命令画出波形图如图6所示。由对比图可见,文中采用的方法可以获得正确的样本数据。且程序运行结果表明本文采用的方法获得的数据精准度高,且程序运行一次完成81种故障样本数据的采集。从修改电路到完成仿真,获取故障样本仅需不到30s的时间。

利用SLPS实现故障模拟电路仿真数据获取的自动化

图5 PSpice中故障电路波形图

利用SLPS实现故障模拟电路仿真数据获取的自动化

图6 自动获取技术波形图

4 结论

经实例验证,文中采用的方法操作简便,收集到的样本数据精准,自动化程度高。此方法大大提高了模拟电路故障样本获取的速度,为建立故障字典及模拟电路故障诊断提供了极大的方便。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4765

    浏览量

    100571
  • 仿真器
    +关注

    关注

    14

    文章

    1016

    浏览量

    83651
  • 电子技术
    +关注

    关注

    18

    文章

    885

    浏览量

    55876
收藏 人收藏

    评论

    相关推荐

    基于PSpice的模拟电路故障知识获取新方法

    命令行作为结合点,实现故障知识获取的"自动化",该方法的实质是通过计算机用穷举法自动在所有可能故障
    发表于 05-13 09:08

    LF353仿真电路仿真数据为什么和理论值相差很大

    本帖最后由 经纬_cauc 于 2012-11-5 19:53 编辑 LF353仿真电路仿真数据为什么和理论很大,是哪里出问题了呢?仿真数据电路放大倍数是1.6左右,而理论值应该
    发表于 11-05 12:11

    电子设计自动化电路设计电路板设计报告~谁能帮我弄下或....

    封面(一页) 最低要求:电子设计自动化电路设计***电路板设计报告姓名,学号,年级专业,日期较高要求:封面设计的艺术图片,用艺术字等(应与电路相关) 正文一律用小四号字体,标题可用四号
    发表于 12-08 17:23

    基于仿真的军用电路故障诊断系统研究

    最大的效能,极大地限制了电子设备智能故障诊断系统的发展,而基于电路故障仿真正是解决该问题的最佳选择。电路
    发表于 12-13 10:13

    如何利用电路仿真程序测试模拟电路

    电路仿真程序的特点如何利用电路仿真程序测试模拟电路
    发表于 04-06 08:15

    电控发动机微机控制故障模拟系统的研制

    介绍了电控发动机微机控制故障模拟系统的组成和工作原理,阐述了微机控制故障模拟系统的微机控制单元、故障模拟电路电路显示板的结构特征和设计。该
    发表于 06-16 15:55 14次下载

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

    故障样本数据获取模拟电路故障诊断中最基本的步骤。为了实现
    发表于 01-31 17:31 46次下载
    基于<b class='flag-5'>SLPS</b>的<b class='flag-5'>模拟</b><b class='flag-5'>电路</b><b class='flag-5'>故障</b>样本<b class='flag-5'>自动</b><b class='flag-5'>获取</b>技术

    Simulink模拟电路仿真

    利用MATLAB编写M文件和利用Simulink搭建仿真模型均可实现电路仿真,在
    发表于 12-21 14:42 0次下载

    MT-099:模拟电路仿真

    MT-099:模拟电路仿真
    发表于 03-21 09:05 15次下载
    MT-099:<b class='flag-5'>模拟</b><b class='flag-5'>电路仿真</b>

    模拟电子:电路仿真的作用

    电路仿真是指使用计算机模拟电路的过程,它可以帮助电路设计者更好地理解电路的行为,并可以检测出电路
    发表于 02-17 14:04 5349次阅读

    matlab仿真逆变器故障模拟 牵引逆变器IGBT故障模拟系统

    matlab仿真逆变器故障模拟牵引逆变器IGBT故障模拟系统
    发表于 02-23 15:38 2次下载
    matlab<b class='flag-5'>仿真</b>逆变器<b class='flag-5'>故障模拟</b> 牵引逆变器IGBT<b class='flag-5'>故障模拟</b>系统

    牵引逆变器IGBT故障模拟系统

    matlab仿真逆变器故障模拟牵引逆变器IGBT故障模拟系统
    发表于 02-24 10:54 1次下载
    牵引逆变器IGBT<b class='flag-5'>故障模拟</b>系统

    matlab仿真逆变器故障模拟 牵引逆变器IGBT故障模拟系统

    matlab仿真逆变器故障模拟牵引逆变器IGBT故障模拟系统YID:8850 629480936977 小俊(●—●)
    发表于 02-24 15:22 0次下载
    matlab<b class='flag-5'>仿真</b>逆变器<b class='flag-5'>故障模拟</b> 牵引逆变器IGBT<b class='flag-5'>故障模拟</b>系统

    modelsim自动化仿真实验 利用脚本实现modelsim自动化仿真

    ,然后编译,再添加波形,这样是非常麻烦的。在实际工作中一般不会这样操作,通常我们都会利用脚本实现modelsim的“自动化”编译。实现一键完成电脑
    的头像 发表于 07-19 10:10 1608次阅读
    modelsim<b class='flag-5'>自动化</b><b class='flag-5'>仿真</b>实验 <b class='flag-5'>利用</b>脚本<b class='flag-5'>实现</b>modelsim<b class='flag-5'>自动化</b><b class='flag-5'>仿真</b>

    电路仿真模拟器怎么用

    电路仿真模拟器是电子工程师和学生必备的一类软件工具。通过使用电路仿真模拟器,用户可以在计算机上模拟和分析各种
    的头像 发表于 05-04 10:53 2146次阅读