找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

[嵌入式/ARM] 正弦稳态电路的MATLAB/simulink仿真分析

[复制链接]
admin 发表于 2013-3-21 10:27:47 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
  电路理论中,对电路的分析计算提出了各种方法。但要用这些方法计算一些较为复杂的电路,传统的笔算方法不仅费时费力,且容易出现错误。因此,有必要引进计算机辅助分析。若用传统的计算机语言编写程序,对编程者的计算机语言、算法和数据结构等方面的知识要求较高,而且这些语言的变量类型中没有复数,使得操作者很难直接应用。而利用MATLAB的M文件求解电路方程,程序非常简洁,可读性强,且计算结果准确。同时MATLAB提供的simulink工具可以直接建立电路的仿真模型,可以非常直观地观察电路中的电流、电压和功率的波形,可以随意改变仿真参数且立即得到修改后的仿真结果。将MATLAB和电路教学密切结合,可以把师生从繁琐重复的劳动中解放出来,使他们把更多的时间用于对概念的思考与创造性思维方式的训练。即提高了他们的学习兴趣与热情,也大大提高了教学效率。

     1 用MATLAB编程法分析电路
     如图1所示,已知us=7.07sin(314t)V,is=1.414sin(314t30°)A,R1=R2=R4=2Ω,R3=2.5 Ω,C=0.01 F,L=0.01 H。求各支路电流并作相量图和波形图。
    20121107053315448722221.jpg
     用回路电流法求解。从图1可以看出,i1、i2和i6分别是3个回路Ⅰ、Ⅱ和Ⅵ的回路电流,列方程得:
    20121107053315495602222.jpg
     1.1 用MATLAB语言编程实现上述计算
    20121107053315542472223.jpg
     1.2 绘制电流相量图和波形图
     在上一节的程序中,在计算各支路电流的表达式之后加一条绘制复数相量图的语句:compass(『I1,I2,I3,I4,I5,I6』),就可以绘制出电流I1~I6的相量图,如图2所示。
    20121107053315604972224.jpg
     从图2可以清晰地看出各支路电流的幅值、初相角以及两个电流之间的相位差。I4与I2接近反相,I1与I3相位差近似60°。
     在上一节的程序中,在计算各支路电流的表达式之后加下面的一段程序,就可以绘制出电流i1~i6的波形图。
    20121107053315729972225.jpg
     运行程序,就可以绘制出电流i1(t)-i6(t)的波形图,如图3所示。
    20121107053315776842226.jpg
     本例中,w=314,则f=50 Hz,T=0.02 s。仿真时间设为0.03s,即一个半周期。所以,仿真结果显示了一个半周期的波形。
     从波形图上看,i2与i4近乎反相,与相量图是一致的;i3与i1的峰值在1.5与2之间,而从相量图上看到的相量的模都小于1.5,这两者也是一致的,因为峰值等于SQRT(2)乘以模值。
     2 用分析模块Powergui分析电路
     Powergui是分析电力系统模型的有效的图形化用户接口。该模块可以显示系统稳定状态的电流和电压以及电路(电感电流和电容电压)所有的状态变量值,当电路中出现阻抗测量模块时,Powergui也可以显示阻抗随频率变化的波形。
     建立仿真模型:从电力系统模块库Power System Blockset中提取与图1对应的元件模块,按要求的数值进行参数设置,构成图4所示的电路仿真模型。图中的支路电流i1~i6各用一个电流测量模块Current Measurement测量,i1~i6的波形经过模块Bus Creator送到示波器Scope同时显示。
    20121107053315808092227.jpg
     设置系统的仿真时间和Scope的时间范围均为0~0.03s,启动仿真并查看仿真结果。
     从Scope窗口看到i1~i6的波形如图5所示,将其与图3比较可以看到:编程法和电路模型仿真法得到的结果是一致的。
    20121107053315839342228.jpg
    20121107053315886212229.jpg
     双击图4右下角的Powergui模块,打开图6所示的窗口,同时选择状态变量值‘states’、稳态测量值‘measuren’和电源值‘sources’则可以看到如图6所示的各变量的数值。将它们与编程法计算的结果A(1)-A(6)、rm(1)-rm(6)作比较,说明两者是一致的。
     3 用测量模块Fourier测量电路
     模块fourier可用于测量正弦信号的幅值和初相。在此为简化图形,将图4所示的电路模型进行组合形成一个新的模块,新模块仅引出六个支路电流i1~i6。每个支流电流用一个Fourier模块测量,再输出至两个display模块显示该支路电流的幅值和初相。仿真电路如图7所示。设置相关参数并运行仿真,则i1~i6的幅值和初相分别显示于显示模块rm1~rm6和A1~A6中。
    20121107053315917462230.jpg
     将编程计算结果A(1)~A(6)、rm(1)~rm(6)、Powergui分析结果图6所示与Fourier模块测量结果图7所示进行比较,说明三种电路分析法是一致的。
     4 结论
     从仿真结果可以看到实验数据与理论分析吻合。实例分析说明:用MATLAB的M文件求解电路方程,程序简洁、可读性强且计算结果准确。利用Matlab提供的电力系统工具箱(SimPower Systems),可以方便、快捷地对所研究的电力电子电路进行各种暂态和稳态仿真,这对于电路工作状态分析和电路设计指导都有很大帮助,尤其是Simulink在复杂的具有各种控制策略的电力电子系统方面有很大潜力。把MATLAB
     引入教学活动,将使师生从繁琐重复的低级的劳动中解放出来,把更多的时间用于对概念的思考与创造性思维方式的训练,教学的效率会大大提高。随着仿真技术在电力科学研究中的普及和发展,使用基于图形界面的仿真建模方式的仿真软件(MATLAB)是大势所趋。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-12-23 10:00 , Processed in 0.064298 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表