资源描述:
《二阶状态轨迹的显示实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、....武汉大学教学实验报告电子信息学院通信工程专业2015年9月20日实验名称二阶状态轨迹的显示指导教师姓名年级学号成绩一、预习部分1.实验目的2.实验基本原理3.主要仪器设备(含必要的元器件、工具)1、实验目的⑴.熟悉二阶连续时间系统状态轨迹的概念。⑵.掌握连续时间系统冲激响应、阶跃响应的求解方法。⑶.观察过阻尼,欠阻尼,临界阻尼情况下,RLC电路的状态轨迹。2、实验基本原理系统数学模型的描述方法有输入输出描述法和状态变量分析法。在输入输出描述法中,主要建立系统的输入(激励)与系统的输出(响应)之间的关系,不关心系统内部的变化情况。在状态变量分
2、析法中,需在先确定状态变量后,建立描述系统状态变量与输入之间的关系(状态方程),以及建立系统输出变量与系统状态变量及系统输入之间的关系(输出方程),这种分析法不仅能反映输入与输出的关系,而且能了解系统内部的变化过程。在状态变量分析法中,状态变量是建立状态方程和输出方程的关键变量,是能描述系统动态特性的一组独立完备的变量。对于一个二阶系统,则可以用两个状态变量来描述系统的动态特性,参考....这两个状态变量构成的列矢量称为状态矢量,以这两个状态变量为坐标轴而形成的空间称为二维状态空间。在状态空间中状态矢量端点随时间变化而描述出的路径为状态轨迹。因此状
3、态轨迹对应系统在不同时刻,不同条件下的状态,知道了某段时间内的状态轨迹,则系统在该时间内的变化过程也就知道了,所以二阶状态轨迹的描述方法是一种在几何平面上研究系统动态性能(包括稳定性在内)的方法。用计算机模拟二阶状态轨迹的显示,方法简单直观,且能很方便观察电路参数变化时,状态轨迹的变化规律。3、涉及的MATLAB相关内容⑴.MATLAB图形用户界面(GUI)设计利用MATLAB图形用户界面工具设计修改RLC电路参数及显示RLC电路二阶状态轨迹的界面;并用程序控制界面中的控件,显示RLC电路的二阶状态轨迹。⑵.ss函数功能:建立系统状态空间模型。调用
4、格式:sys=ss(a,b,c,d)其中,a,b,c,d为状态方程和输出方程的矩阵,sys为建立的状态空间模型。⑶.step函数功能:求线性时不变系统的阶跃响应。调用格式:y=step(sys,t)其中,y为系统的阶跃响应,sys为系统的状态空间模型。参考....4.axes函数功能:设置当前轴。调用格式:axes(h)其中,h为已存在轴的句柄一、实验操作部分1.实验数据、表格及数据处理2.实验操作过程(可用图表示)3.实验结论1.验证性实验图1所示为RLC电路,可看作一个二阶连续时间系统。对于该二阶系统,若要用状态变量分析来描述该系统的数学模型,
5、可选用iLt和vCt作为状态变量,这两个状态变量所形成的空间称为状态空间。在状态空间中,状态矢量iLtvCt随时间变化而描出的路径叫状态轨迹。图1RLC电路本实验将利用计算机模拟该系统的状态轨迹,实验步骤如下:参考....(a)在MATLAB命令窗口重输入“guide”,启动GUI(b)利用GUI编辑图2所示界面,并将其保存为trace.fig文件。图2修改RLC电路参数及显示RLC电路二阶状态轨迹的界面(c)运行GUI,并生成trace.m文件。(d)选中图2所示界面中“显示状态轨迹”按钮,点击右键选择菜单上的ViewCallbacks,选择Ca
6、llback,MATLABEditor会自动调到该按钮对用的CallbackFunction上,可以直接在那里填写代码,编程控制GUI。其中“显示状态轨迹”按钮CallbackFunction的参考程序代码如下:functionpushbutton1_Callback(hObject,eventdata,handles)t=0:0.1:100;%从界面上获取电路参数R=str2num(get(handles.edit1,'string'));L=str2num(get(handles.edit2,'string'));参考....C=str2num
7、(get(handles.edit3,'string'));%若系统以iLt和vCt为响应,以et为激励,%确定系统状态方程和输出方程中的a,b,c,d矩阵a=[-R/L-1/L;1/C0];b=[1/L;0];c=[10;01];d=[0];sys=ss(a,b,c,d);%建立系统状态空间模型Response=step(sys,t);%求系统的阶跃响应axes(handles.axes1);plot(t,Response(:,1),'b-','linewidth',3);%显示iLtylabel('il(t)','fontsize',14)ax
8、es(handles.axes2);plot(t,Response(:,2),'r-','linewidth',3);%显