用Matlab的模拟电路故障诊断神经网络方法

用Matlab的模拟电路故障诊断神经网络方法
用Matlab的模拟电路故障诊断神经网络方法

万方数据

万方数据

谢涛,何怡刚,姚建刚,等:vB调用Madab的模拟电路故障诊断神经网络方法

2010,46(10)215

looPerfo珊诅n∞is

o.0099997.Go丑liBO.0l

、.

(2)vB调用Matlab方法

这里采用vB调用Matlab的ActiveX自动化技术。在vB6.0中建立—个工程,在窗体中添加6个标签控件、5个文本框控件以及两个命令按钮控件,5个文本框控件分别对应神经网络输入层、隐层、输出层神经元个数、动量因子、学习速率,两个命令按钮的C印tion属性为“开始诊断”和“取消”,诊断系统主要程序代码如下:

PrivateSub

C删d1_click()

Dim叫ldab灿Object

SeI眦tlab=CreateObject(“m日t】8bgpplic8ti仰”)

Dim

s打As晰Ilg

Dim嘟uh鼬S试llg

舡酣“p”+“t”

h=【0l;O1;O1;0l0l】

8h=sh牛“tr”

8tr=str+f.mt_n州圩(tr,【5,18,22】,{‘taI坞ig’,‘t姐sig’,‘pI|relin’},

‘面妯’)

sh=s叶”net.n证nPafam.ep伽h=30000,net.tmiIIP嬲珊.酬=0.01,net.h面nPa姗.L卸.08,舱t.trajIlf‰mc=O.6,net=train(net,p,t)”

瑚IIlt:田bjManab.涨ute(g廿)

EndSub

代码中,“p”和“t”分别为神经网络的输入和输出。诊断运行结

果如图3所示,诊断结果和单独用神经网络来诊断是一致的。

图3vB调用M丑t18b诊断模拟电路结果

5结论

使用VB编写主界面,调用Madab来对模拟电路进行故障

诊断,可以将Madab强大的数值计算功能和vB在图形用户界面开发方面的优势相结合,相互取长补短,从而可以缩短程序的开发周期,减少编程工作量。利用VB调用MaⅡab来对c,IsV滤波器进行故障诊断,结果和单独用神经网络来诊断是一致

的,可对模拟电路故障诊断软件的开发起一定的指导和借鉴

作用。

参考文献:

【l】梁新成,黄志刚,朱慧.VB与Madab混合编程的研究哪.北京工商大

学学报,2007,25(1):38-41.

[2】卢秋蓝.VB与Mallab混合编程的研究叨.计算机仿真,2003,20(12):

115—117.

【3】戴葵.神经网络设计【M】.北京:机械工业出版社,2002:203—233.【4】金瑜,刘红.基于小波神经网络的模拟电路故障诊断叨.仪器仪表学

报。2007,28(9):1600—1603.

(上接192页)

5总结

就高压输电线除冰机器人工作环境的复杂性以及工作任

务的特殊性考虑,结合考虑了机器人运动学和动力学问题,对机器人的数学建模。并根据建立的模型,运用基于粒子群优化

控制参数的PID控制器,对除冰机器人进行运动控制。最后针对除冰机器人在斜坡上爬行的情况,进行了实验仿真,结果验

证了所设计模型和运动控制方法的可行性。参考文献:

【l】‰ida

K,U眦t跚i

Y.Conhd0f叩∞e

f;∞nying幽t【C】,,Pr∞

IEEECoIlfDeci8

C傩nDl。1990。90:97—102.

【2】Mukheijee

R,Nak姗啪Y.F伽训ati帆柚d

e珏ici咖姗pllt8ti佃0f

inv.≥rse

d”aⅡdc8of

8pacerobot8fJ】.IEEE

Thln柚cti咖仰Ro】)aIicB

明dAuto础越on。1992,8(3):400—406.【31YanIadaK,’I’suchiyaK.陆cientc唧utation

ldgofithm

fbr啪ipu—

latorco曲d0fa叩ace

robot【J】.S∞Ills咖t

ContrEIlg

7Ihm,

1990.26(7):765—772.

【4】YbsIIidaK.Expefir唧tal咖dy加thedyIl锄icsand咖hd0f8

印∞eml雠witIIexperiⅡ掂ntalh神一no撕ngmbot姐tellite(EE0一

F0砌弓)si眦l蝴【J】.Adv舳ced

Robotic8,1995,9(6):583—602.

【5】VafaZ,DubowskyS.强el【inematics舳d

dyll锄ic8

0f

8p∞e

m—

nipul曲舯:1k

vimlal咄Illipulator印呻ch叫1leIⅡtemati叫alJ叶

nal0fRDbotic8

Re鸵arch.1990,9(4):3—21.

16】P印adopoIIl∞E,D岫Bky

S.On出e

natllre

of

c蚰tf0_Ial学Dritl枷皓

for

h训oating8pace姗ipIlIat0椰EETr蛐R幽d∞Aut鲫砒,

1991。7(5):750一758.

SahaSK.A

unified

appmach

to

sp∞e

ml埘kine眦tics叨.IEEE

Tr姐s舵tiomon

Robotic8锄dAutomati锄。1996,12(3):401-405.

【8】张运楚,梁自泽,谭民.架空电力线路巡线机器人的研究综述叨.机

器人,2004,26(5):467-473.【9】朱兴龙,王洪光,房立金,等.输电线巡检机器人行走动力特性与位

姿分析叨.机械工程学报,2006,42(12):143一150.

【lO】郭琦,洪炳蓉,吴葳.双臂六自由度空问机器人广义雅可比矩阵的

推导【J1.电子学报,2005,2(2):322—326.

【ll】周风余,李贻斌.高压输电线路自动巡线机器人机构设计及在约束

条件下的逆运动学分析m.中国机械工程,2006,17(1):4_9.

【l2】SilvaGJ,DattaA,Bhatt∞llaryyaSP.N州瑚uh8∞megyntllP

si8

0fPID

c帆tf0(’ue瑁【J】.IEEE

n雌actio璐彻Aut吣tic

C吼一

tml,2002,47(2):241—252.

【13】刘金琨.机器人控制系统的设计与仿真【碉.北京:清华大学出版

社。20【)8一06.【14】Ebe血Ⅱt

C,‰硼edy

J.A

n溯0ptiIni烈u8ingpaIticle

s舢

tlI∞ryIq伊roceedjn铲ofthe

SixtIlIntemation8lSymposi岫帆Mi—

c∞

M∞hi∞

髓d

Hu啪Scie懈.New

York,NY,USA:IEEE,

1995:39—43.

【15】梁玉丹.周国策—种基于Pso干m算法的分稚式机器人实时控制叽.

电气传动,2006,36(11).

富●1

万方数据

模拟电子电路仿真和实测实验方案的设计实验报告111-副本

课程专题实验报告 (1) 课程名称:模拟电子技术基础 小组成员:涛,敏 学号:0,0 学院:信息工程学院 班级:电子12-1班 指导教师:房建东 成绩: 2014年5月25日

工业大学信息工程学院课程专题设计任务书(1)课程名称:模拟电子技术专业班级:电子12-1 指导教师(签名): 学生/学号:涛 0敏0

实验观察R B 、R C 等参数变化对晶体管共射放大电路放大倍数的影响 一、实验目的 1. 学会放大器静态工作点的调式方法和测量方法。 2.掌握放大器电压放大倍数的测试方法及R B 、R C 等参数对放大倍数的影响。 3. 熟悉常用电子仪器及模拟电路实验设备的使用。 二、实验原理 图1为电阻分压式工作点稳定单管放大器实验电路图。偏置电阻R B1、R B2组成分压电路,并在发射极中接有电阻R E ,以稳定放大器的静态工作点。当在放大器的输入端加入输入信号后,在放大器的输出端便可得到一个与输入信号相位相反、幅值被放大了的输出信号,从而实现了电压放大。 三、实验设备 1、 信号发生器 2、 双踪示波器 SS —7802 3、 交流毫伏表 V76 4、 模拟电路实验箱 TPE —A4 5、 万用表 VC9205 四、实验容 1.测量静态工作点 实验电路如图1所示,它的静态工作点估算方法为: U B ≈ 2 11B B CC B R R U R +? I E =E BE B R U U -≈Ic U CE = U CC -I C (R C +R E )

图1 晶体管放大电路实验电路图 实验中测量放大器的静态工作点,应在输入信号为零的情况下进行。 根据实验结果可用:I C ≈I E = E E R U 或I C = C C CC R U U U BE =U B -U E U CE =U C -U E 计算出放大器的静态工作点。 五.晶体管共射放大电路Multisim仿真 在Multisim中构建单管共射放大电路如图1(a)所示,电路中晶体管采用FMMT5179 (1)测量静态工作点 可在仿真电路中接入虚拟数字万用表,分别设置为直流电流表或直流电压 表,以便测量I BQ 、I CQ 和U CEQ ,如图所示。

神经网络学习算法matlab仿真(借鉴参照)

东南大学自动化学院 智能控制概论 神经网络学习算法研究 学院: 姓名: 学号: 日期:

目录 1 任务要求叙述 ..................................................... 错误!未定义书签。 2 系统分析及设计原理 ......................................... 错误!未定义书签。 3 设计实现.............................................................. 错误!未定义书签。4仿真验证.. (6) 5 讨论与分析.......................................................... 错误!未定义书签。

一.任务要求叙述 (1)任务 (a) 运行算法,观察和分析现有学习算法的性能; clear all;close all; nu=20;pi=3.1415926; for i=1:nu p(i)=2*pi*i/nu; t(i)=0.5*(1+cos(p(i))); end minmax=[min(p(:)) max(p(:))] net = newff([ 0 7],[6 1],{'logsig' 'purelin'},'traingd');% traingd traingdm trainlm net.trainParam.epochs = 10000; net.trainParam.goal = 0.0001; net.trainParam.show=200; net.trainParam.lr=0.1; net.trainParam.mc=0.6; %0.9 default value; available for momentum net = train(net,p,t); y1 = sim(net,p); figure(2); plot(p,t,'*-',p,y1,'r--') %************** test data ****************** nu2=nu*3/2; for i=1:(nu2) p2(i)=2*pi*i/(nu2); t2(i)=0.5*(1+cos(p2(i))); end y2 = sim(net,p2); figure(3); plot(t2,'*-');hold on; plot(y2,'r'); xlabel('times');ylabel('outputs'); figure(4); plot(t2-y2); xlabel('times');ylabel('error'); (b) 为了进一步提高学习逼近效果,可以采取那些措施,调节规律如何?根据所提的每种措施,修改算法程序,给出仿真效果验证、过程以及相应的曲线图,给出适当的评述;(c) 联系、结合前向神经网络的算法样本学习、测试等过程,谈谈本人对神经网络系统的一些认识和看法。

(完整版)BP神经网络matlab实例(简单而经典).doc

p=p1';t=t1'; [pn,minp,maxp,tn,mint,maxt]=premnmx(p,t); % 原始数据归一化 net=newff(minmax(pn),[5,1],{'tansig','purelin'},'traingdx'); %设置网络,建立相应的BP 网络net.trainParam.show=2000; % 训练网络 net.trainParam.lr=0.01; net.trainParam.epochs=100000; net.trainParam.goal=1e-5; [net,tr]=train(net ,pn,tn); %调用TRAINGDM 算法训练BP 网络 pnew=pnew1'; pnewn=tramnmx(pnew,minp,maxp); anewn=sim(net,pnewn); anew=postmnmx(anewn,mint,maxt); %对 BP 网络进行仿真%还原数据 y=anew'; 1、 BP 网络构建 (1)生成 BP 网络 net newff ( PR,[ S1 S2...SNl],{ TF1 TF 2...TFNl }, BTF , BLF , PF ) PR :由R 维的输入样本最小最大值构成的R 2 维矩阵。 [ S1 S2...SNl] :各层的神经元个数。 {TF 1 TF 2...TFNl } :各层的神经元传递函数。 BTF :训练用函数的名称。 (2)网络训练 [ net,tr ,Y, E, Pf , Af ] train (net, P, T , Pi , Ai ,VV , TV ) (3)网络仿真 [Y, Pf , Af , E, perf ] sim(net, P, Pi , Ai ,T ) {'tansig','purelin'},'trainrp' BP 网络的训练函数 训练方法 梯度下降法 有动量的梯度下降法 自适应 lr 梯度下降法 自适应 lr 动量梯度下降法弹性梯度下降法训练函数traingd traingdm traingda traingdx trainrp Fletcher-Reeves 共轭梯度法traincgf Ploak-Ribiere 共轭梯度法traincgp

人工神经网络Matlab实现代码

以下是用Matlab中的m语言编写的BP神经网络代码,实现的是一个正弦函数的拟合过程,包括了初始化、BP算法、绘制曲线等过程,可以将代码放到一个M文件中运行,以下是代码: defaultpoints=20; %%%%%%%%%隐含层节点数 inputpoints=1; %%%%%%%%%输入层节点数 outputpoints=1; %%%%%%%%%输出层节点数 Testerror=zeros(1,100);%%%%每个测试点的误差记录 a=zeros(1,inputpoints);%%%%输入层节点值 y=zeros(1,outputpoints);%%%样本节点输出值 w=zeros(inputpoints,defaultpoints);%%%%%输入层和隐含层权值 %初始化权重很重要,比如用rand函数初始化则效果非常不确定,不如用zeros初始化 v=zeros(defaultpoints,outputpoints);%%%%隐含层和输出层权值 bin=rand(1,defaultpoints);%%%%%隐含层输入 bout=rand(1,defaultpoints);%%%%隐含层输出 base1=0*ones(1,defaultpoints);%隐含层阈值,初始化为0 cin=rand(1,outputpoints);%%%%%%输出层输入 cout=rand(1,outputpoints);%%%%%输出层输出 base2=0*rand(1,outputpoints);%%输出层阈值 error=zeros(1,outputpoints);%%%拟合误差 errors=0;error_sum=0; %%%误差累加和 error_rate_cin=rand(defaultpoints,outputpoints);%%误差对输出层节点权值的导数 error_rate_bin=rand(inputpoints,defaultpoints);%%%误差对输入层节点权值的导数 alfa=0.5; %%%% alfa 是隐含层和输出层权值-误差变化率的系数,影响很大 belt=0.5; %%%% belt 是隐含层和输入层权值-误差变化率的系数,影响较小 gama=5; %%%% gama 是误差放大倍数,可以影响跟随速度和拟合精度,当gama大于2时误差变大,容易震荡 %%%%规律100个隐含节点,当alfa *gama =1.5时,效果好,其他值误差变大,belt基本不影响效果 %%%%规律200个隐含节点,当alfa *gama =0.7时,效果好,其他值误差变大,belt基本不影响效果,最小误差和100个隐含点一样 %%%%规律50个隐含节点,当alfa *gama =3时,效果好,其他值误差变大,belt基本不影响效果,最小误差和100个隐含点一样 trainingROUND=200;% 训练次数,有时训练几十次比训练几百次上千次效果要好很多sampleNUM=361; % 样本点数 x1=zeros(sampleNUM,inputpoints); %样本输入矩阵 y1=zeros(sampleNUM,outputpoints); %样本输出矩阵 x2=zeros(sampleNUM,inputpoints); %测试输入矩阵

电子科技大学集成电路原理实验CMOS模拟集成电路设计与仿真王向展

实验报告 课程名称:集成电路原理 实验名称: CMOS模拟集成电路设计与仿真 小组成员: 实验地点:科技实验大楼606 实验时间: 2017年6月12日 2017年6月12日 微电子与固体电子学院

一、实验名称:CMOS模拟集成电路设计与仿真 二、实验学时:4 三、实验原理 1、转换速率(SR):也称压摆率,单位是V/μs。运放接成闭环条件下,将一个阶跃信号输入到运放的输入端,从运放的输出端测得运放的输出上升速率。 2、开环增益:当放大器中没有加入负反馈电路时的放大增益称为开环增益。 3、增益带宽积:放大器带宽和带宽增益的乘积,即运放增益下降为1时所对应的频率。 4、相位裕度:使得增益降为1时对应的频率点的相位与-180相位的差值。 5、输入共模范围:在差分放大电路中,二个输入端所加的是大小相等,极性相同的输入信号叫共模信号,此信号的范围叫共模输入信号范围。 6、输出电压摆幅:一般指输出电压最大值和最小值的差。 图 1两级共源CMOS运放电路图 实验所用原理图如图1所示。图中有多个电流镜结构,M1、M2构成源耦合对,做差分输入;M3、M4构成电流镜做M1、M2的有源负载;M5、M8构成电流镜提供恒流源;M8、M9为偏置电路提供偏置。M6、M7为二级放大电路,Cc为引入的米勒补偿电容。 其中主要技术指标与电路的电气参数及几何尺寸的关系:

转换速率:SR=I5 I I 第一级增益:I I1=?I I2 I II2+I II4=?2I I1 I5(I2+I3) 第二级增益:I I2=?I I6 I II6+I II7=?2I I6 I6(I6+I7) 单位增益带宽:GB=I I2 I I 输出级极点:I2=?I I6 I I 零点:I1=I I6 I I 正CMR:I II,III=I II?√5 I3 ?|I II3|(III)+I II1,III 负CMR:I II,III=√I5 I1+I II5,饱和 +I II1,III+I II 饱和电压:I II,饱和=√2I II I 功耗:I IIII=(I8+I5+I7)(I II+I II) 四、实验目的 本实验是基于微电子技术应用背景和《集成电路原理与设计》课程设置及其特点而设置,为IC设计性实验。其目的在于: 根据实验任务要求,综合运用课程所学知识自主完成相应的模拟集成电路设计,掌握基本的IC设计技巧。 学习并掌握国际流行的EDA仿真软件Cadence的使用方法,并进行电路的模拟仿真。 五、实验内容 1、根据设计指标要求,针对CMOS两级共源运放结构,分析计算各器件尺寸。 2、电路的仿真与分析,重点进行直流工作点、交流AC和瞬态Trans分析,能熟练掌握各种分析的参数设置方法与仿真结果的查看方法。 3、电路性能的优化与器件参数调试,要求达到预定的技术指标。

基于matlab实现BP神经网络模型仿真

基于BP神经网络模型及改进模型对全国历年车祸次数预测 一、背景 我国今年来随着经济的发展,汽车需求量不断地增加,所以全国每年的车祸次数也被越来越被关注,本文首先搜集全国历年车祸次数,接着通过这些数据利用BP神经网络模型和改进的径向基函数网络进行预测,最后根据预测结果,分析模型的优劣,从而达到深刻理解BP神经网络和径向基函数网络的原理及应用。所用到的数据即全国历年车祸次数来自中国汽车工业信息网,网址如下: https://www.360docs.net/doc/778694975.html,/autoinfo_cn/cszh/gljt/qt/webinfo/2006/05/124650 1820021204.htm 制作历年全国道路交通事故统计表如下所示: 二、问题研究 (一)研究方向 (1)通过数据利用BP神经网络模型预测历年全国交通事故次数并与实际值进行比较。(2)分析BP神经网络模型改变训练函数再进行仿真与之前结果进行对比。 (3)从泛化能力和稳定性等方面分析BP神经网络模型的优劣。 (4)利用径向基函数网络模型进行仿真,得到结果与采用BP神经网络模型得到的结果进行比较。

(二)相关知识 (1)人工神经网络 人工神经网络是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的节点(或称神经元)和之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。 人工神经网络有以下几个特征: (1)非线性非线性关系是自然界的普遍特性。大脑的智慧就是一种非线性现象。人工神经元处于激活或抑制二种不同的状态,这种行为在数学上表现为一种非线性网络关系。具有阈值的神经元构成的网络具有更好的性能,可以提高容错性和存储容量。 (2)非局限性一个神经网络通常由多个神经元广泛连接而成。一个系统的整体行为不仅取决于单个神经元的特征,而且可能主要由单元之间的相互作用、相互连接所决定。通过单元之间的大量连接模拟大脑的非局限性。联想记忆是非局限性的典型例子。 (3)非常定性人工神经网络具有自适应、自组织、自学习能力。神经网络不但处理的信息可以有各种变化,而且在处理信息的同时,非线性动力系统本身也在不断变化。经常采用迭代过程描写动力系统的演化过程。 (4)非凸性一个系统的演化方向,在一定条件下将取决于某个特定的状态函数。例如能量函数,它的极值相应于系统比较稳定的状态。非凸性是指这种函数有多个极值,故系统具有多个较稳定的平衡态,这将导致系统演化的多样性。 (2)BP神经网络模型 BP(Back Propagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hide layer)和输出层(output layer)。 (3)径向基函数网络模型 径向基函数(Radial Basis Function,RBF)神经网络由三层组成,输入层节点只传递输入信号到隐层,隐层节点由像高斯函数那样的辐射状作用函数构成,而输出层节点通常是简单的线性函数。 隐层节点中的作用函数(基函数)对输入信号将在局部产生响应,也就是说,当输入信号靠近基函数的中央范围时,隐层节点将产生较大的输出,由此看出这种网络具有局部逼近能力,所以径向基函数网络也称为局部感知场网络。

BP神经网络的数据分类MATLAB源代码.doc

%%%清除空间 clc clear all ; close all ; %%%训练数据预测数据提取以及归一化 %%%下载四类数据 load data1 c1 load data2 c2 load data3 c3 load data4 c4 %%%%四个特征信号矩阵合成一个矩阵data ( 1:500 , : ) = data1 ( 1:500 , :) ; data ( 501:1000 , : ) = data2 ( 1:500 , : ) ; data ( 1001:1500 , : ) = data3 ( 1:500 , : ) ; data ( 1501:2000 , : ) = data4 ( 1:500 , : ) ; %%%%%%从1到2000间的随机排序 k = rand ( 1 , 2000 ) ; [ m , n ] = sort ( k ) ; %%m为数值,n为标号

%%%%%%%%%%%输入输出数据 input = data ( : , 2:25 ) ; output1 = data ( : , 1) ; %%%%%%把输出从1维变到4维 for i = 1 : 1 :2000 switch output1( i ) case 1 output( i , :) = [ 1 0 0 0 ] ; case 2 output( i , :) = [ 0 1 0 0 ] ; case 3 output( i , :) = [ 0 0 1 0 ] ; case 4 output( i , :) = [ 0 0 0 1 ] ; end end %%%%随机抽取1500个样本作为训练样本,500个样本作为预测样本 input_train = input ( n( 1:1500 , : ) )’ ; output_train = output ( n( 1:1500 , : ) )’ ; input_test = input ( n( 1501:2000 , : ) )’ ;

模拟电路_Multisim软件仿真教程

第13章Multisim模拟电路仿真本章Multisim10电路仿真软件, 本章节讲解使用Multisim进行模拟电路仿真的基本方法。 目录 1. Multisim软件入门 2. 二极管电路 3. 基本放大电路 4. 差分放大电路 5. 负反馈放大电路 6. 集成运放信号运算和处理电路 7. 互补对称(OCL)功率放大电路 8. 信号产生和转换电路 9. 可调式三端集成直流稳压电源电路 13.1 Multisim用户界面及基本操作 13.1.1 Multisim用户界面 在众多的EDA仿真软件中,Multisim软件界面友好、功能强大、易学易用,受到电类设计开发人员的青睐。Multisim用软件方法虚拟电子元器件及仪器仪表,将元器件和仪器集合为一体,是原理图设计、电路测试的虚拟仿真软件。 Multisim来源于加拿大图像交互技术公司(Interactive Image Technologies,简称IIT公司)推出的以Windows为基础的仿真工具,原名EWB。 IIT公司于1988年推出一个用于电子电路仿真和设计的EDA工具软件Electronics Work Bench(电子工作台,简称EWB),以界面形象直观、操作方便、分析功能强大、易学易用而得到迅速推广使用。 1996年IIT推出了EWB5.0版本,在EWB5.x版本之后,从EWB6.0版本开始,IIT对EWB进行了较大变动,名称改为Multisim(多功能仿真软件)。 IIT后被美国国家仪器(NI,National Instruments)公司收购,软件更名为NI Multisim,Multisim经历了多个版本的升级,已经有Multisim2001、Multisim7、Multisim8、Multisim9 、Multisim10等版本,9版本之后增加了单片机和LabVIEW虚拟仪器的仿真和应用。 下面以Multisim10为例介绍其基本操作。图13.1-1是Multisim10的用户界面,包括菜单栏、标准工具栏、主工具栏、虚拟仪器工具栏、元器件工具栏、仿真按钮、状态栏、电路图编辑区等组成部分。

神经网络PID控制及Matlab仿真

神经网络PID控制及Matlab仿真 摘要 PID控制技术是一种应用很普遍的控制技术,目前在很多方面都有广泛的应用。论文首先简要介绍了神经网络的理论基础和神经网络的学习算法,传统的常规PID控制器。为了达到改善常规PID控制器在复杂的、动态的和不确定的系统控制还存在着许多不足之处的目的,文中系统的分析了神经网络PID控制器。 本文主要研究了神经网络PID控制。利用神经网络具有强的非线性映射能力、自学习能力、联想记忆能力、并行信息处理方式及优良的容错性能,应用神经网络对PID控制器进行改进后,对于工业控制中的复杂系统控制有着更好的控制效果,有效的改善了由于系统结构和参数变化导致的控制效果不稳定。文中深入研究了基于神经网络的BP神经网络PID控制器及其仿真等。 最后,对常规PID控制器和神经网络PID控制器进行了仿真比较,仿真结果表明,应用神经网络对常规PID控制器进行改进后提高了系统的鲁棒性和动态特性,有 效的改善了系统控制结果,达到了预期的目的前言 在工业控制过程中,PID控制是一种最基本的控制方式,其鲁棒性好、结构简单、易于实现,但常规的PID控制也有其自身的缺点,因为常规PID控制器的参数是根据被控对象数学模型确定的,当被控对象的数学模型是变化的、非线性的时候,PID参数不易根据其实际的情况做出调整,影响了控制质量,使控制系统的控制品质下降。特别是在具有纯滞后特性的工业过程中,常规的PID控制更难满足控制精度的要求。 PID控制是最早发展起来的控制策略之一,按偏差的比例、积分和微分进行控制的调节器称为 PID控制器,它是连续系统中技术成熟,应用最广泛的一种调节器。由于其算法简单,实现简易、鲁棒性能良好和可靠性高,能够对很大一类工业对象进行有效控制等一系列优点,被广泛应用于工业过程控制,尤其适用于可建立精确数学模型的确定性控制系统。但是在实际的工业生产过程中,往往具有非线性,时变不确定性,因而难以建立精确的数学模型,应用常规 PID控制器不能达到理想的控制效果:在实际生产过程中,由于受到参数整定方法繁杂的困扰,常规PID控制器参数往往整定不良,性能欠佳,对运行工况的适应性很差。

BP神经网络地设计实例(MATLAB编程)

神经网络的设计实例(MATLAB编程) 例1 采用动量梯度下降算法训练BP 网络。训练样本定义如下: 输入矢量为 p =[-1 -2 3 1 -1 1 5 -3] 目标矢量为t = [-1 -1 1 1] 解:本例的MATLAB 程序如下: close all clear echo on clc % NEWFF——生成一个新的前向神经网络% TRAIN——对BP 神经网络进行训练 % SIM——对BP 神经网络进行仿真pause % 敲任意键开始 clc % 定义训练样本 P=[-1, -2, 3, 1; -1, 1, 5, -3]; % P 为输入矢量T=[-1, -1, 1, 1]; % T 为目标矢量

clc % 创建一个新的前向神经网络 net=newff(minmax(P),[3,1],{'tansig','purelin'},'traingdm') % 当前输入层权值和阈值 inputWeights=net.IW{1,1} inputbias=net.b{1} % 当前网络层权值和阈值 layerWeights=net.LW{2,1} layerbias=net.b{2} pause clc % 设置训练参数 net.trainParam.show = 50; net.trainParam.lr = 0.05; net.trainParam.mc = 0.9; net.trainParam.epochs = 1000; net.trainParam.goal = 1e-3; pause clc % 调用TRAINGDM 算法训练BP 网络 [net,tr]=train(net,P,T);

Multisim模拟电路仿真实验

实验19 Multisim 数字电路仿真实验 1.实验目的 用Multisim 的仿真软件对数字电路进行仿真研究。 2.实验内容 实验19.1 交通灯报警电路仿真 交通灯故障报警电路工作要求如下:红、黄、绿三种颜色的指示灯在下 列情况下属正常工作,即单独的红灯指示、黄灯指示、绿灯指示及黄、绿灯 同时指示,而其他情况下均属于故障状态。出故障时报警灯亮。 设字母R 、Y 、G 分别表示红、黄、绿三个交通灯,高电平表示灯亮, 低电平表示灯灭。字母Z 表示报警灯,高电平表示报警。则真值表如表 19.1所示。 逻辑表达式为:RY RG G Y R Z ++= 若用与非门实现,则表达式可化为:RY RG G Y R Z ??= Multisim 仿真设计图如图19.1所示: 图19.1的电路图中分别用开关A 、B 、C 模拟控制红、黄、绿灯的亮暗,开关接向高电平时表示灯亮,接向低电平时表示灯灭。用发光二极管LED1的亮暗模拟报警灯的亮暗。另外用了一个5V 直流电源、一个7400四2输入与非门、一个7404六反相器、一个7420双4输入与非门、一个500 表19.1 LED_red LED1 图19.1

欧姆电阻。 在模拟实验中可以看出,当开关A、B、C中只有一个拨向高电平,以及B、C同时拨向高电平而A拨向低电平时报警灯不亮,其余情况下报警灯均亮。 实验19.2数字频率计电路仿真 数字频率计电路(实验13.3)的工作要求如下:能测出某一未知数字信号的频率,并用数码管显示测量结果。如果用2位数码管,则测量的最大频率是99Hz。 数字频率计电路Multisim仿真设计图如图19.2所示。其电路结构是: 用二片74LS90(U1和U2)组成BCD码100进制计数器,二个数码管U3和U4分别显示十位数和个位数。四D触发器74LS175(U5)与三输入与非门7410(U6B)组成可自启动的环形计数器,产生闸门控制信号和计数器清0信号。信号发生器XFG1产生频率为1Hz、占空比为50%的连续脉冲信号,信号发生器XFG2产生频率为1-99Hz(人为设置)、占空比为50%的连续脉冲信号作为被测脉冲。三输入与非门7410(U6A)为控制闸门。 运行后该频率计进行如下自动循环测量: 计数1秒→显示3秒→清零1秒→…… 改变被测脉冲频率,重新运行。

Matlab训练好的BP神经网络如何保存和读取方法(附实例说明)

Matlab训练好的BP神经网络如何保存和读取方法(附实例说明) 看到论坛里很多朋友都在提问如何存储和调用已经训练好的神经网络。 本人前几天也遇到了这样的问题,在论坛中看了大家的回复,虽然都提到了关键的两个函数“save”和“load”,但或多或少都简洁了些,让人摸不着头脑(呵呵,当然也可能是本人太菜)。通过不断调试,大致弄明白这两个函数对神经网络的存储。下面附上实例给大家做个说明,希望对跟我有一样问题的朋友有所帮助。 如果只是需要在工作目录下保到当前训练好的网络,可以在命令窗口 输入:save net %net为已训练好的网络 然后在命令窗口 输入:load net %net为已保存的网络 加载net。 但一般我们都会在加载完后对网络进行进一步的操作,建议都放在M文件中进行保存网络和调用网络的操作 如下所示: %% 以函数的形式训练神经网络 functionshenjingwangluo() P=[-1,-2,3,1; -1,1,5,-3]; %P为输入矢量 T=[-1,-1,1,1,]; %T为目标矢量 net=newff(minmax(P),[3,1],{'tansig','purelin'},'traingdm') %创建一个新的前向神经网络 inputWeights=net.IW{1,1} inputbias=net.b{1} %当前输入层权值和阀值 layerWeights=net.LW{2,1} layerbias=net.b{2} net.trainParam.show=50; net.trainParam.lr=0.05; net.trainParam.mc=0.9;

实验八multisim电路仿真

电子线路设计软件课程设计报告 实验内容:实验八multisim电路仿真 一、验目的 1、进一步熟悉multisim的操作和使用方法 2、掌握multisim做电路仿真的方法 3、能对multisim仿真出的结果做分析 二、仿真分析方法介绍 Multisim10为仿真电路提供了两种分析方法,即利用虚拟仪表观测电路的某项参数和利用Multisim10 提供的十几种分析工具,进行分析。常用的分析工具有:直流工作点分析、交流分析、瞬态分析、傅立叶分析、失真分析、噪声分析和直流扫描分析。利用这些分析工具,可以了解电路的基本状况、测量和分析电路的各种响应,且比用实际仪器测量的分析精度高、测量范围宽。下面将详细介绍常用基本分析方法的作用、分析过程的建立、分析对话框的使用以及测试结果的分析等内容 1、直流工作点分析 直流工作点分析也称静态工作点分析,电路的直流分析是在电路中电容开路、电感短路时,计算电路的直流工作点,即在恒定激励条件下求电路的稳态值。在电路工作时,无论是大信号还是小信号,都必须给半导体器件以正确的偏置,以便使其工作在所需的区域,这就是直流分析要解决的问题。了解电路的直流工作点,才能进一步分析电路在交流信号作用下电路能否正常工作。求解电路的直流工作点在电路分析过程中是至关重要的。 执行菜单命令Simulate/Analyses,在列出的可操作分析类型中选择DC Operating Point,则出现直流工作点分析对话框,如图所示。直流工作点分析对话框包括3页。

Output 页用于选定需要分析的节点。 左边Variables in circuit 栏内列出电路中各节点电压变量和流过电源的电流变量。右边Selected variables for 栏用于存放需要分析的节点。 具体做法是先在左边Variables in circuit 栏内中选中需要分析的变量(可以通过鼠标拖拉进行全选),再点击Plot during simulation 按钮,相应变量则会出现在Selected variables for 栏中。如果Selected variables for 栏中的某个变量不需要分析,则先选中它,然后点击Remove按钮,该变量将会回到左边Variables in circuit 栏中。Analysis Options页 点击Analysis Options按钮进入Analysis Options页,其中排列了与该分析有关的其它分析选项设置,通常应该采用默认的 Summary页

模拟电路仿真实验

模拟电路仿真实验 实验报告 班级: 学号: 姓名:

多级负反馈放大器的研究 一、实验目的 (1)掌握用仿真软件研究多级负反馈放大电路。 (2)学习集成运算放大器的应用,掌握多级集成运放电路的工作特点。 (3)研究负反馈对放大器性能的影响,掌握负反馈放大器性能指标的测试方法。 1.测试开环和闭环的电压放大倍数、输入电阻、反馈网络的电压反馈系数的通频带; 2.比较电压放大倍数、输入电阻、输出电阻和通频带在开环和闭环时的差别; 3.观察负反馈对非线性失真的改善。 二、实验原理及电路 (1)基本概念: 1.在电子电路中,将输出量(输出电压或输出电流)的一部分或全部通过一定的电路形式作用到输入回路,用来影响其输入量(放大电路的输入电压或输入电流)的措施称为反馈。 若反馈的结果使净输入量减小,则称之为负反馈;反之,称之为正反馈。若反馈存在于直流通路,则称为直流反馈;若反馈存在于交流通路,则称为交流反馈。 2.交流负反馈有四种组态:电压串联负反馈;电压并联负反馈;电流串联负反馈;电流并联负反馈。若反馈量取自输出电压,则称之为电压反馈;若反馈量取自输出电流,则称之为电流反馈。输入量、反馈量和净输入量以电压形式相叠加,称为串联反馈;以电流形式相叠加,称为并联反馈。 3.在分析反馈放大电路时,“有无反馈”决定于输出回路和输入回路是否存在反馈支路。“直流反馈或交流反馈”决定于反馈支路存在于直流通路还是交流通路;“正负反馈”的判断可采用瞬时极性法,反馈的结果使净输入量减小的为负反馈,使净输入量增大的为正反馈;“电压反馈或电流反馈”的判断可以看反馈支路与输出支路是否有直接接点,如果反馈支路与输出支路有直接接点则为电压反馈,否则为电流反馈;“串联反馈或并联反馈”的判断可以看反馈支路与输入支路是否有直接接点,如果反馈支路与输入支路有直接接点则为并联反馈,否则为串联反馈。 4.引入交流负反馈后,可以改善放大电路多方面的性能:提高放大倍数的稳定性、改变输入电阻和输出电阻、展宽通频带、减小非线性失真等。实验电路如图所示。该放大电路由两级运放构成的反相比例器组成,在末级的输出端引入了反馈网路C f 、R f2和R f1,构成了交流电压串联负反馈电路。 R110kΩ R2100kΩ R3 10kΩ R43.9kΩ R53.9kΩ R63.9kΩ R7200kΩ R81kΩ R94.7kΩR10300kΩ U1A LM324N 3 2 11 41 U1C LM324N 10 9 11 4 8 C110uF C210uF C3 10uF J1 Key = Space J2 Key = A VCC 10V VEE -10V 1 4 10 8 11 12 13 7 3 6 5VEE VCC 2 9

基于遗传算法的BP神经网络MATLAB代码

用遗传算法优化BP神经网络的Matlab编程实例(转) 由于BP网络的权值优化是一个无约束优化问题,而且权值要采用实数编码,所以直接利用Matlab遗传算法工具箱。以下贴出的代码是为一个19输入变量,1个输出变量情况下的非线性回归而设计的,如果要应用于其它情况,只需改动编解码函数即可。 程序一:GA训练BP权值的主函数 function net=GABPNET(XX,YY) %-------------------------------------------------------------------------- % GABPNET.m % 使用遗传算法对BP网络权值阈值进行优化,再用BP算法训练网络 %-------------------------------------------------------------------------- %数据归一化预处理 nntwarn off XX=[1:19;2:20;3:21;4:22]'; YY=[1:4]; XX=premnmx(XX); YY=premnmx(YY); YY %创建网络 net=newff(minmax(XX),[19,25,1],{'tansig','tansig','purelin'},'tra inlm'); %下面使用遗传算法对网络进行优化 P=XX; T=YY; R=size(P,1); S2=size(T,1); S1=25;%隐含层节点数 S=R*S1+S1*S2+S1+S2;%遗传算法编码长度 aa=ones(S,1)*[-1,1]; popu=50;%种群规模 save data2 XX YY % 是将 xx,yy 二个变数的数值存入 data2 这个MAT-file,initPpp=initializega(popu,aa,'gabpEval');%初始化种群 gen=100;%遗传代数

Multisim数字电路仿真快速上手教程

Multisim快速上手教程 每一次数电实验都要疯了有木有!!!全是线!!!全是线!!!还都长得要命!!!完全没地方收拾啊!!!现在数电实验还要求做开放实验,还要求最好先仿真!!!从来没听说过仿真是个什么玩意儿的怎么破!!! 以下内容为本人使用仿真软件的一些心路历程,可供参考。 所谓仿真,以我的理解,就是利用计算机强大的计算能力,结合相应的电路原理(姑且理解为KVL+KCL)来对电路各时刻的状态求解然后输出的过程。相较于模拟电路,数字电路的仿真轻松许多,因为基本上都转化为逻辑关系的组合了。有人用minecraft来做数字电路,都到了做出8bitCPU的水平(https://www.360docs.net/doc/778694975.html,/v_show/id_XMjgwNzU5MDUy.html、https://www.360docs.net/doc/778694975.html,/v_show/id_XNjEwNTExODI4.html)。这个很神奇。 以下进入正文 首先,下载Multisim安装程序。具体链接就不再这里给出了(毕竟是和$蟹$版的软件),可以到BT站里搜索,有一个Multisim 12是我发的,里面有详细的安装说明,照着弄就没问题了。 好,现在已经安装上Multisim 12了。 然后运行,在Circuit Design Suite12.0里,有一个multisim,单击运行。 进去之后就是这样的。 那一大块白的地方就是可以放置元件的地方。 现在来以一个简单的数字逻辑电路为例:

菜单栏下一排是这些东西,划线的是数字电路仿真主要用得上的元件。 来个7400吧 点击TTL那个图标(就是圈里左边那个)。出来这样一个东西: 红圈里输入7400就出来了,也可以一个一个看,注意右边“函数”栏目下写的“QUAD 2-INPUT NAND”即是“四个双输入与非门”的意思。 点击确认,放置元件。 A、B、C、D在这里指一块7400里的四个双输入与非门,点击即可放置。 看起来很和谐,那就做个RS触发器吧。 这里输出用的是一种虚拟器件PROBE,在Indicators组,图标就是个数码管的那个。功能相当于实验箱上那些LED,也是高电平就点亮。元件旋转方向的方法是选中元件然后按Ctrl+R(otate)。还可以选中元件后点击右键,选择“水平翻转”等。

人工神经网络作业MATLAB仿真(共3篇)

人工神经网络作业M A T L A B 仿真(共3篇) -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

人工神经网络仿真作业(3篇) 人工神经网络仿真作业1: 三级倒立摆的神经网络控制 人工神经网络仿真作业2: 基于模型整体逼近的机器人RBF网络自适应控制 人工神经网络仿真作业3: 基于RBF的机械手无需模型自适应控制研究

神经网络仿真作业1:三级倒立摆的神经网络控制 摘要:建立了基于人工神经网络改进BP 算法的三级倒立摆的数学模型,并给 出了BP 网络结构,利用Matlab 软件进行训练仿真,结果表明,改进的BP 算法控制倒立摆精度高、收敛快,在非线性控制、鲁棒控制等领域具有良好的应用前景。 1.引言 倒立摆系统的研究开始于19世纪50年代,它是一个典型的非线性、高阶次、多变量、强耦合和绝对不稳定系统.许多抽象的控制概念,如系统的稳定性、可控性、系统的收敛速度和抗干扰能力都可以通过倒立摆直观地表现出来。随着现代控制理论的发展,倒立摆的研究对于火箭飞行控制和机器人控制等现代高科技的研究具有重要的实践意义。目前比较常见的倒立摆稳定控制方法有线性控制,如LQR,LQY 等;智能控制,如变论域自适应模糊控制,遗传算法,预测控制等。 2.系统的数学模型 2.1三级倒立摆的模型及参数 三级倒立摆主要由小车,摆1、摆2、摆3组成,它们之间自由链接。小车可以在水平导轨上左右平移,摆杆可以在铅垂平面内运动,将其置于坐标系后如图1 所示: 规定顺时针方向的转角和力矩均为正。此外,约定以下记号:u 为外界作用力,x 为小车位移,i (i =1,2,3)为摆i 与铅垂线方向的夹角, i O 分别为摆i 的链接点位置。其它的系统参数说明如下:

实验一 典型环节的电路模拟与数字仿真实验

实验一典型环节的电路模拟与数字仿真实验 一实验目的 通过实验熟悉各种典型环节传递函数及其特性,掌握电路模拟和数字仿真研究方法。 二实验内容 1.设计各种典型环节的模拟电路。 2.编制获得各种典型环节阶跃特性的数字仿真程序。 3.完成各种典型环节模拟电路的阶跃特性测试,并研究参数变化对典型环节阶跃特性的影响。 4.运行所编制的程序,完成典型环节阶跃特性的数字仿真研究,并与电路模拟研究的结果作比较。 三实验步骤 1.熟悉实验设备,设计并连接各种典型环节的模拟电路; 2.利用实验设备完成各典型环节模拟电路的阶跃特性测试,并研究参数变化对典型环节阶跃特性的影响; 3.用MATLAB编写计算各典型环节阶跃特性的数字仿真研究,并与电路模拟测试结果作比较。分析实验结果,完成实验报告。 四实验结果 1.积分环节模拟电路、阶跃响应

仿真结果: 2.比例积分环节模拟电路、阶跃响应 仿真结果:

3.比例微分环节模拟电路、阶跃响应 仿真结果: 4.惯性环节模拟电路、阶跃响应

仿真结果: 5.实验结果分析: 积分环节的传递函数为G=1/Ts(T为积分时间常数),惯性环节的传递函数为G=1/(Ts+1)(T为惯性环节时间常数)。 当时间常数T趋近于无穷小,惯性环节可视为比例环节, 当时间常数T趋近于无穷大,惯性环节可视为积分环节。

实验二典型系统动态性能和稳定性分析的电路模拟与数 字仿真研究 一实验目的 1.学习和掌握动态性能指标的测试方法。 2.研究典型系统参数对系统动态性能和稳定性的影响。 二实验内容 1.观测二阶系统的阶跃响应,测出其超调量和调节时间,并研究其参数变化对动态性能和稳定性的影响。 三实验步骤 1.熟悉实验设备,设计并连接由一个积分环节和一个惯性环节组成的二阶闭环系统的模拟电路; 2.利用实验设备观测该二阶系统模拟电路的阶跃特性,并测出其超调量和调节时间; 3.二阶系统模拟电路的参数观测参数对系统的动态性能的影响; 4.分析结果,完成实验报告。 四实验结果 典型二阶系统 仿真结果:1)过阻尼

相关文档
最新文档