当前位置:文档之家› 控制系统仿真课程设计

控制系统仿真课程设计

控制系统仿真课程设计(2014级)题目控制系统仿真课程设计学院专业班级学号学生姓名指导教师完成日期实验一 交流异步电机动态仿真一.设计目的1.了解交流异步电机的原理,组成及各主要单元部件的原理。

2. 设计交流异步电机动态结构系统;3.掌握交流异步电机调速系统的调试步骤,方法及参数的整定。

二.设计原理异步电机工作在额定电压和额定频率下,仿真异步电机在空载启动和加载过程中的转速和电流变化过程。

仿真电动机参数如下: 1.85, 2.658,0.2941,0.2898,0.2838s r s r m R R L H L H L H =Ω=Ω===,20.1284Nm s ,2,380,50Hz p N N J n U V f =⋅===,此外,中间需要计算的参数如下:21m s rL L L σ=-,r r r L T R =,222s r r mt rR L R L R L +=,10N m TL =⋅。

αβ坐标系状态方程:其中,状态变量:输入变量:电磁转矩: 2p m p s r s Lr d ()d n L n i i T t JL J βααωψψβ=--r m r r s r rd 1d L i t T T ααβαψψωψ=--+r m r r s r r d 1d L i t T T ββαβψψωψ=-++22s s r r m m m s r r s s 2r r r r d d i R L R L L L L i u t L T L L ααβαασψωψ+=+-+22s s r r m m m s r r s s 2r r r r d d i R L R L L L L i u t L T L L ββαββσψωψ+=--+[ ]Tr r s s X i i αβαβωψψ=[ ]Ts s L U u u T αβ=()p m es s s s rn LT i i L βααβψψ=-步骤1:打开simulink仿真程序。

见上页图0.步骤1:首先,绘制如下图框图(见附图1)。

步骤2:封装图2中的框图。

选择图2中所有模块,单击鼠标右键,点击create subsystem,获得如下的子系统,把subsystem名字改为AC Motor图3 异步电机simulink结构图封装步骤3:绘制3/2转换环节。

在上图3封装基础上,添加三相交流UA、UB、UC输入,该输入经过3/2坐标变换,作为 坐标系的输入,如下图4。

步骤4:添加2/3转换环节,如下图4和图6。

图4 带3相输入的异步电机框图其中,3/2 transform 子系统框图如下图5;2/3 transform 见下图6:图5. 3/2图6. 2/3转换子系统步骤5:运行simulink 仿真程序。

三、仿真结果及分析 1、空载时:分析:动态:在空载启动0-0.4s内是交流异步电机动态过程。

转矩Te初始为0。

由于启动电矩和起动电流很大,较大的启动转矩维持一段时间使电机转速快速提升至稳定值,动态时间持续0.4s左右。

稳定:0.4s之后交流异步电机空载启动完成进入稳定阶段。

由于电机负载TL=0所以最终转矩稳定为0。

转速稳定现在320左右,电机开始稳定运行。

2、负载时分析:从图中看出,空载和负载启动时,转速在动态过程逐渐增加,而转矩呈现出震荡特性;经过0.4秒变成稳态,转速维持在一定的速度(约320),转矩维持在0;在1s时加上负载,此时转速略微增加,负载转矩增加,稳定时转速稳定在345左右,而转矩稳定在50N.m。

从图中可以看出空载转速略高于负载转速,。

三相电流在0.4秒前呈现剧烈的震荡的现象,而后稳定。

图中也可以看出空载输出的三相电流幅值大于负载输出的三相电流幅值。

仿真一总结及心得通过实验一,我了解交流异步电机的原理,组成及各主要单元部件的原理;通过老师给出并讲解的交流异步电机动态结构系统,初步掌握交流异步电机调速系统的调试步骤,方法及参数的整定。

不过在实验中还是遇到了很多问题。

第一个问题是,按状态方程搭建框图。

在框图搭建过程中,由于粗心,第一次仿真时结果未能实现,在不断的检查后改正了错误。

第二个问题是参数的设置。

在所有框图确认无误并且将3/2转换环节、2/3转换环节等环节封装完成之后,依旧得不出理想的仿真结果,原来是我忽视了一个最基本的问题:三相交流异步电机的UA、UB、UC应依次相差2/3pi,即120°。

实验二 多目标跟踪仿真一、设计原理1. 系统方程试验一:线性高斯例子(CV 运动)监测区域为,目标出生点为,检测概率为0.98,杂波密度为,既平均20个杂波点,状态协方差阵,,目标的初始分布为,其中,0,10,1[900,30,900,30],[900,30,900,30]T T x x =--=--,。

2. 跟踪方法⑴初始条件为: 00|00|000|000|0)~cov(,ˆ~,ˆP x x x x x x=-== ⑵一步提前预测值和预测误差的协方差阵分别是预测状态: 1|1111|ˆ)|(ˆ-----==k k k k k k k x F Z x E x预测状态协方差阵:T k k k T k k k k k k k k Q F P F x P 11111|111|1|)~cov(---------+==ΓΓ其中1|1|ˆ~---=k k k k k xx x 是一步预测误差; ⑶获取新的量测k z 后,滤波更新值和相应的滤波误差的协方差阵分别是 量测误差协方差阵:|1Tk k k k k k S H P H R -=+滤波增益: 1|1Tk k k k k K P H S --= 状态协方差阵: |||1cov()Tk k k k k k k k k P x P K S K -==-状态估计: )ˆ(ˆ)|(ˆ1|1||---+==k k k k k k k k k k k x H z K x Z x E x 3.数据关联方法滤波方法将在统计意义上与被跟踪目标预测位置最近的量测作为与目标关联的回波信号。

统计距离定义为新息向量的加权系数:1|11|2~~---=k k k T k k k z S z d |1|1ˆk k k k k k z z H x--=-其中,1|~k k z 表示滤波新息(滤波残差向量),k S 为新息协方差矩阵,2k d 为残差向量的范数,理解为目标预测位置与有效回波之间的统计距离。

最近邻算法便于实现,且计算量小,主要适用于信噪比高、目标密度小的情况。

但是由于抗干扰能力差,在目标回波密度较大的情况,容易产生关联错误。

4. 杂波产生方法:zc=unifrnd(-1000,1000,[2 100]);%产生100个杂波点¨二、仿真程序及结果clc;clear all;%数据定义;F = [1 1 0 0;0 1 0 0;0 0 1 1;0 0 0 1];G = [0.5 0;1 0;0 0.5;0 1];H = [1 0 0 0;0 0 1 0];%数据初始化;z = zeros(2,1,2);x = zeros(4,100,2); %4行100列2个(x1,x2);x(:,1,1) = [-900 30 900 -30]; %[x位置,x轴速度,y位置,y速度];x(:,1,2) = [-900 30 -900 30];Tt = 100;for n = 1:2for k = 1:Ttwk = 5 * randn(2,1);x(:,k+1,n) = F * x(:,k,n) + G * wk;vk = 10 * randn(2,1);z = H * x(:,k,n) + vk;pause(0.01); %暂停0.01s,显示动态变化过程;if n == 1;plot(x(1,1:k,n),x(3,1:k,n),'+r');hold on;elseplot(x(1,1:k,n),x(3,1:k,n),'*g');endaxis([-1000,1000,-1000,1000]); %设置坐标刻度;endendfigureplot(x(1,:,1),x(3,:,1),'*r'); hold on; %绘制位置;plot(x(1,:,2),x(3,:,2),'+g'); hold on;zc = unifrnd(-1000,1000,[2 50]); %产生50个杂波点;plot(zc(1,:),zc(2,:),'ob');axis([-1000,1000,-1000,1000]);xlabel('x轴');ylabel('y轴');grid on;legend('一组位置','二组位置','噪点');title('一组、二组轨迹');figureplot(0:Tt,x(2,:,1),'-k',0:Tt,x(4,:,1),'x-k'); hold on;plot(0:Tt,x(2,:,2),'ob',0:Tt,x(4,:,2),'o-b'); hold on;xlabel('时间t');ylabel('速度v');grid on;legend('一组x方向速度','一组y方向速度','二组x方向速度','二组y方向速度')title('一组、二组速度');总结及心得经过这两个星期的短学期,在之前的前期理论学习和一定的实验基础上,我对Matlab在控制系统仿真方面有了新的认识。

之前的认识主要在于,传递函数在Matlab中的实现方法,是通过系统框图的各个部件组合实现;现今的认识在于,对于一个实际案例的实现,更多地在于系统框图的构建,在合理构建的基础上用Similink仿真,并且进行参数调整。

而在在运动控制仿真中,我熟悉了如何构造某个对象的模型,并且把它封装成一个模型;过程中我还学会了如何导入数据:除了可以直接赋值、直接编写Matlab代码外,一般常用带入.m文件来导入数据。

非常感谢学校的课程安排,给予我一个将理论知识付诸实践的机会;同时非常感谢老师不厌其烦的指导,才让我的整个实践过程变得相对顺利;同时我还想感谢室友和同学在各个方面的帮助,替我解了不少困惑。

这次实验让我对之后的深入学习有了一定的认识和基础。

相关主题