MATLAB动画制作

MATLAB动画制作
MATLAB动画制作

电影动画的好处就是,运行一次可以多次播放,甚至可以直接生成avi文件,直接独立与Matlab环境播放。这是其它三种动画制作方法所不具备的。

MATLAB中,创建电影动画的过程分为以下四步:

step1:调用moviein函数对内存进行初始化(该步骤在Matlab5.3以上均可省略),创建一个足够大的矩阵,使之能够容纳基于当前坐标轴大小的一系列指定的图形(此处称为帧)。

step2:调用getframe函数生成每个帧。该函数返回一个列矢量,利用这个矢量,就可以创建一个电影动画矩阵。

getframe函数可以捕捉动画帧,并保存到矩阵中。一般将该函数放到for循环中得到一系列的动画帧。

该函数格式有:

(1)F=gefframe,从当前图形框中得到动画帧

(2)F=gefframe(h),从图形句柄h中得到动画帧

(3)F=getframe(h,rect),从图形句柄h的指定区域rec中得到动画帧

step3:调用movie函数按照指定的速度和次数运行该电影动画。

当创建了一系列的动画帧后,可以利用movie函数播放这些动画帧。

该函数的主要格式有:

(1)movie(M),将矩阵M中的动画帧播放一次

(2)movie(M,n),将矩阵M中的动画帧播放n次

(3)movie(M,n,fps),将矩阵M中的动画帧以每秒fps帧的速度播放n次

step4:调用movie2avi函数可以将矩阵中的一系列动画帧转换成视频文件avi文件。这样,即使脱离了matlab环境都可以播放动画。

具体参见:

该方法的经典格式是:

1.%录制电影动画

2. for j=1:n

3. %

4. %这里输入我们的绘图命令

5. %

6. M(j) = getframe;

7. end

8. movie(M)

9.%单帧显示方法

10. f = getframe(gcf);

11. colormap(f.colormap);

12. image(f.cdata);

复制代码

此外,利用immovie函数,我们可以从多帧图像阵列中创建MATALB 电影动画。

需要注意的是:该函数只能应用于索引图象,所以,如果用户希望其他类型的图像阵列转换为电影动画,则首先将该图像类型转换为索引类型。

matlab通信系统仿真

通信系统基于(15,11)汉明编码的matlab仿真 clear m=4; n=2^m-1; k=11; msg1=randint(1,6000*k,[0,1])%产生信息序列 code0=vec2mat(msg1,k); code1=encode(msg1,n,k,'hamming/binary');%进行汉明纠错编码 code2=reshape(code1,90,1000)'; code3=zeros(1000,90);%设置零矩阵,以便储存交织后的序列 for i=1:1000 temp=code2(i,:); temp1=reshape(temp,15,6);%按15*6交织 code3(i,:)=reshape(temp1',1,90); end [row,cloums]=size(code3); code4=code3'; [row1,cloums1]=size(code4); code5=reshape(code4,6,15000)'; %将交织后的序列转换为6行,15000列矩阵msg2=zeros(15000,6); for j=2:6, msg2(:,j)=xor(code5(:,j),code5(:,(j-1))); end msg2(:,1)=code5(:,1);%此时得到的msg2为gray映射后的信号序列 code8=msg2';%转置,便于比特符号转换 A=[32,16,8,4,2,1]; %为比特符合转换所设的序列 msg3=A*code8;%生成符号序列 msg4=qammod(msg3,64);%将符号序列进行64QAM调制 [row2,cloums2]=size(msg4); dB=0:1:20; for k=1:length(dB), snr=10.^(dB(k)./10); %信噪比 sgma=sqrt(63./(6*snr));%标准差 b1=real(msg4)+sgma*randn(row2,cloums2);%分路叠加噪声 b2=imag(msg4)+sgma*randn(row2,cloums2);%分路叠加噪声 rx=complex(b1,b2); %————————量化判决——————————% for m=1:row2, for n=1:cloums2, if ((b1(m,n)<-6)) b11(m,n)=-7;

MATLAB实现通信系统仿真实例

补充内容:模拟调制系统的MATLAB 仿真 1.抽样定理 为了用实验的手段对连续信号分析,需要先对信号进行抽样(时间上的离散化),把连续数据转变为离散数据分析。抽样(时间离散化)是模拟信号数字化的第一步。 Nyquist 抽样定律:要无失真地恢复出抽样前的信号,要求抽样频率要大于等于两倍基带信号带宽。 抽样定理建立了模拟信号和离散信号之间的关系,在Matlab 中对模拟信号的实验仿真都是通过先抽样,转变成离散信号,然后用该离散信号近似替代原来的模拟信号进行分析的。 【例1】用图形表示DSB 调制波形)4cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%%一般选取的抽样频率要远大于基带信号频率,即抽样时间间隔要尽可能短。 ts=1/fs; %%根据抽样时间间隔进行抽样,并计算出信号和包络 t=(0:ts:pi/2)';%抽样时间间隔要足够小,要满足抽样定理。 envelop=cos(2*pi*t);%%DSB 信号包络 y=cos(2*pi*t).*cos(4*pi*t);%已调信号 %画出已调信号包络线 plot(t,envelop,'r:','LineWidth',3); hold on plot(t,-envelop,'r:','LineWidth',3); %画出已调信号波形 plot(t,y,'b','LineWidth',3); axis([0,pi/2,-1,1])% hold off% xlabel('t'); %写出图例 【例2】用图形表示DSB 调制波形)6cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%抽样时间间隔要足够小,要满足抽样定理。 ts=1/fs; %%根据抽样时间间隔进行抽样

用matlab制作简单仿真动画

用matlab制作简单仿真动画,并生成.avi格式的电影文件 MATALB知识点2008-05-01 13:17:54 阅读152 评论0 字号:大中小订阅 第一种形式:利用for循环,在一定时间内控制图形窗口图像的显示,产生一段动态的演示过程: 如下: set(gcf,'color','green'); grid on; set(gca,'zlim',[-10,10]'); set(gca,'xlim',[-10,10]); set(gca,'ylim',[-10,10]); for i=1:10 set(gca,'view',[-i*3.75,3*i] ); pause(0.2); end 第二种形式:利用moviein和movie函数,现将生成的动画存入一个由movien 函数定义的数组中,每一帧为数组的一个元素,最后用movie重复演示,movie后面的数字代表演示次数。 x=[-30:0.2:30]; y=[-30:0.2:30]; [x,y]=meshgrid(x,y); n=5; M = moviein(n); for i=1:n z=sin(sqrt(2*(x).^2+2*(y).^2)-2*pi*i/10); zz=plot3(x,y,z,'parent',gca); mesh(x,y,z); grid on; colormap([0,0.9,0.5]); light('position',[1,1,2],'style','local','color','white'); material([0.5,0.4,0.3,10,0.3]); set(gca,'zlim',[-10,10]'); M(i)=getframe(gca); end movie(M,20) 创建电影剪辑文件,并存储起来,如下: aviobj=avifile('文件名.avi','fps',3);%定义一个avi文件, %AVIOBJ = AVIFILE(FILENAME,'PropertyName',VALUE,'PropertyName',VALUE,...) %各属性详细说明见matlab帮助 for i=1:n %在当前窗体上生成一帧图像

MATLAB与系统仿真

学习中心/函授站_ 成都学习中心 姓名赵洪学号7020140122093 西安电子科技大学网络与继续教育学院 2015学年上学期 《MATLAB与系统仿真》期末考试试题 (综合大作业) 考试说明: 1、大作业于2015年4月3日公布,2015年5月9日前在线提交; 2、考试必须独立完成,如发现抄袭、雷同、拷贝均按零分计。 3、程序设计题(三(8,10))要求写出完整的程序代码,并在matlab软件环境调试并运行通过,连同运行结果一并附上。 一、填空题(1? ×25=25?) 1、Matlab的全称为矩阵实验室。 2、在Matlab编辑器中运行程序的快捷键是:F5 。 3、Matlab的工作界面主要由以下五个部分组成,它们分别是:菜单栏、 工具栏、当前工作目录窗口、工作空间管理窗口和命令窗口。 4、在Matlab中inf表示:无穷大;clc表示:清空命令窗口中的显示内容;more表示:在命令窗口中控制其后每页的显示内容行数;who表示:查阅Matlad内存变量名;whos表示:列出当前工作空间所有变量。 5、在Matlab命令窗口中运行命令Simulink 可以打开Simulink模块库浏览器窗口。 6、求矩阵行列式的函数:det ;求矩阵特征值和特征向量的函数eig 。 7、Matlab预定义变量ans表示:没有指定输出变量名;eps表示:系统精度 ;nargin表示:函数输入参数的个数。 8、Matlab提供了两种方法进行程序分析和优化,分别为:通过Profiler工具优化和通过tic和toc函数进行优化。 9、建立结构数组或转换结构数组的函数为:struct ; 实现Fourier变换在Matlab中的对应函数为:fourier() ;Laplace变换的函数:Laplace() 。

MATLABsimulink系统仿真分析仿真报告

仿真报告 课程名称:自动化技术导论 报告题目:MATLAB/simulink系统仿真分析 班级 姓名 学号 xxxxxx自动化学院 2016年4月 软件版本:MATLAB R2010b MATLAB强处理能力 MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而且经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C++ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。 MATLAB图形处理 MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。 MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。MATLAB程序接口

matlab制作雪花动画

%% 设置部分 %***************设置背景****************************% A=imread('bg.jpg');%背景图像 h=figure; imshow(A); %显示背景图像 axes axis([0 1 0 1]); %设置坐标范围,并隐藏坐标 axis off; set(gcf,'color','k'); %设置背景颜色为黑色 %设置显示的雪花数目 N=20; handles=zeros(1,N); x=rand(2,N); % fontsize(大) step 步长 fontsize=floor(rand(1,N)*17+32); %设置字号,32-48之间 new_handles_N=0; %% 绘图部分 for i=1:N handles(i)=text(x(1,i),x(2,i),'*','fontsize',fontsize(i),'color','w'); %handles 存储每一个“雪花”的句柄 end while 1 if ~ishandle(h) return end for i=1:N temp=get(handles(i),'position'); step=get(handles(i),'fontsize')/48*0.05; % 不同大小的雪花,速度不同。 if temp(2)<0 %判断是否飘出坐标范围 new_handles_N=new_handles_N+1; new_handles(new_handles_N)= copyobj(handles(i),gca); if new_handles_N==500 %扫雪了~\(≧▽≦)/~啦啦啦 delete(new_handles); new_handles_N=0; end temp(1)=rand(1); temp(2)=1; else temp(1)=temp(1)+rand(1)*0.1-0.05; temp(2)=temp(2)-step; %速度 end

MATLAB程序设计报告--基于MATLAB动画播放及音乐播放

《MATLAB程序设计》课程设计报告 设计题目:基于MATLAB的动画演示 及背景音乐插入 专业:2011级通信工程 姓名(学号):储兆雄1162310213 邓少林1162310214 徐凯越1162310223 指导教师:倪建军(博士/副教授) 时间:2013年12月20日

目录 1、设计目的 2、总体设计 3、具体设计(功能实现) 4、结果分析 5、改进方向 6、心得体会 文献 附录

1、设计目的 学会运用matlab工具箱实现matlab GUI设计,处理动画运行,以及添加背景音乐,并实现其动态操作,如继续、暂停等功能。 2、总体设计

主要包括:动画模块,音乐模块,动画显示模块 3、具体设计(功能实现) 1) 动画模块 (1)打开动画文件:从文件打开对话框选择动画程序,实现动画播放的可选择性 程序实现代码如下: function btnvopen_Callback(hObject, eventdata, handles) % hObject handle to btnvopen (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global vfname %动画文件名 [vfname vpname vindex]=uigetfile('*.m','choose moive file'); len=length(vfname); if vindex set(handles.txtvname,'string',vfname(1:len-2)) end 打开对话框效果如下:

基于matlab的通信系统仿真

创新实践报告 报告题目: 基于matlab的通信系统仿真学院名称: 信息工程学院 姓名: 班级学号: 指导老师: 二O一四年十月十五日

一、引言 现代社会发展要求通信系统功能越来越强,性能越来越高,构成越来越复杂;另一方面,要求通信系统技术研究与产品开发缩短周期,降低成本,提高水平。这样尖锐对立的两个方面的要求,只有通过使用强大的计算机辅助分析设计技术与工具才能实现。在这种迫切的需求之下,MA TLAB应运而生。它使得通信系统仿真的设计与分析过程变得相对直观与便捷,由此也使得通信系统仿真技术得到了更快的发展。通信系统仿真贯穿着通信系统工程设计的全过程,对通信系统的发展起着举足轻重的作用。通信系统仿真具有广泛的适应性与极好的灵活性,有助于我们更好地研究通信系统性能。通信系统仿真的基本步骤如下图所示: 二、仿真分析与测试 (1)随机信号的生成 利用Matlab中自带的函数randsrc来产生0、1等概分布的随机信号。源代码如下所示: global N N=300; global p

p=0、5; source=randsrc(1,N,[1,0;p,1-p]); (2)信道编译码 1、卷积码的原理 卷积码(convolutional code)就是由伊利亚斯(p 、Elias)发明的一种非分组码。在前向纠错系统中,卷积码在实际应用中的性能优于分组码,并且运算较简单。 卷积码在编码时将k 比特的信息段编成n 个比特的码组,监督码元不仅与当前的k 比特信息段有关,而且还同前面m=(N-1)个信息段有关。 通常将N 称为编码约束长度,将nN 称为编码约束长度。一般来说,卷积码中k 与n 的值就是比较小的整数。将卷积码记作(n,k,N)。卷积码的编码流程如下所示。 可以瞧出:输出的数据位V1,V2与寄存器D0,D1,D2,D3之间的关系。根据模2加运算特点可以得知奇数个1模2运算后结果仍就是1,偶数个1模2运算后结果就是0。 2、译码原理 卷积码译码方法主要有两类:代数译码与概率译码。代数译码主要根据码本身的代数特性进行译码,而信道的统计特性并没有考虑在内。目前,代数译码的主要代表就是大数逻辑解码。该译码方法对于约束长度较短的卷积码有较好的效果,并且设备较简单。概率译码,又称最大似然译码,就是基于信道的统计特性与卷积 码的特点进行计算。在现代通信系统中,维特比译码就是目前使用最广泛的概率 译码方法。 02 1V D D =⊕01232V D D D D =⊕⊕⊕

雷达系统仿真matlab代码

% ======================================================================= ====================% % 该程序完成16个脉冲信号的【脉压、动目标显示/动目标检测(MTI/MTD)】 % ======================================================================= ====================% % 程序中根据每个学生学号的末尾三位(依次为XYZ)来决定仿真参数,034 % 目标距离为[3000 8025 9000+(Y*10+Z)*200 8025],4个目标 % 目标速度为[50 0 (Y*10+X+Z)*6 100] % ======================================================================= ====================% close all; %关闭所有图形 clear all; %清除所有变量 clc; % ======================================================================= ============% % 雷达参数 % % ======================================================================= ============% C=3.0e8; %光速(m/s) RF=3.140e9/2; %雷达射频 1.57GHz Lambda=C/RF;%雷达工作波长 PulseNumber=16; %回波脉冲数 BandWidth=2.0e6; %发射信号带宽带宽B=1/τ,τ是脉冲宽度 TimeWidth=42.0e-6; %发射信号时宽 PRT=240e-6; % 雷达发射脉冲重复周期(s),240us对应1/2*240*300=36000米最大无模糊距离 PRF=1/PRT; Fs=2.0e6; %采样频率 NoisePower=-12;%(dB);%噪声功率(目标为0dB) % ---------------------------------------------------------------% SampleNumber=fix(Fs*PRT);%计算一个脉冲周期的采样点数480; TotalNumber=SampleNumber*PulseNumber;%总的采样点数480*16=; BlindNumber=fix(Fs*TimeWidth);%计算一个脉冲周期的盲区-遮挡样点数; %====================================================================== =============% % 目标参数 % %====================================================================== =============% TargetNumber=4;%目标个数 SigPower(1:TargetNumber)=[1 1 1 0.25];%目标功率,无量纲 TargetDistance(1:TargetNumber)=[3000 8025 15800 8025];%目标距离,单位m 距离参数为[3000 8025 9000+(Y*10+Z)*200 8025] DelayNumber(1:TargetNumber)=fix(Fs*2*TargetDistance(1:TargetNumber)/C); % 把目标距离换算成采样点(距离门) fix函数向0靠拢取整 TargetVelocity(1:TargetNumber)=[50 0 204 100];%目标径向速度单位m/s 速度参数为[50 0 (Y*10+X+Z)*6 100]

Matlab动画及其在物理中的应用

实验报告实验课程名称计算物理 实验项目名称Matlab动画及其在物理中的应用 年级 09级 专业物理学 学生姓名 学号 理学院 实验时间:2012 年 4 月 4 日

学生实验室守则 一、按教学安排准时到实验室上实验课,不得迟到、早退和旷课。 二、进入实验室必须遵守实验室的各项规章制度,保持室内安静、整洁,不准在室内打闹、喧哗、吸烟、吃食物、随地吐痰、乱扔杂物,不准做与实验内容无关的事,非实验用品一律不准带进实验室。 三、实验前必须做好预习(或按要求写好预习报告),未做预习者不准参加实验。 四、实验必须服从教师的安排和指导,认真按规程操作,未经教师允许不得擅自动用仪器设备,特别是与本实验无关的仪器设备和设施,如擅自动用或违反操作规程造成损坏,应按规定赔偿,严重者给予纪律处分。 五、实验中要节约水、电、气及其它消耗材料。 六、细心观察、如实记录实验现象和结果,不得抄袭或随意更改原始记录和数据,不得擅离操作岗位和干扰他人实验。 七、使用易燃、易爆、腐蚀性、有毒有害物品或接触带电设备进行实验,应特别注意规范操作,注意防护;若发生意外,要保持冷静,并及时向指导教师和管理人员报告,不得自行处理。仪器设备发生故障和损坏,应立即停止实验,并主动向指导教师报告,不得自行拆卸查看和拼装。 八、实验完毕,应清理好实验仪器设备并放回原位,清扫好实验现场,经指导教师检查认可并将实验记录交指导教师检查签字后方可离去。 九、无故不参加实验者,应写出检查,提出申请并缴纳相应的实验费及材料消耗费,经批准后,方可补做。 十、自选实验,应事先预约,拟订出实验方案,经实验室主任同意后,在指导教师或实验技术人员的指导下进行。 十一、实验室内一切物品未经允许严禁带出室外,确需带出,必须经过批准并办理手续。

matlab控制系统仿真课程设计

课程设计报告 题目PID控制器应用 课程名称控制系统仿真院部名称机电工程学院专业 班级 学生姓名 学号 课程设计地点 课程设计学时 指导教师 金陵科技学院教务处制成绩

一、课程设计应达到的目的 应用所学的自动控制基本知识与工程设计方法,结合生产实际,确定系统的性能指标与实现方案,进行控制系统的初步设计。 应用计算机仿真技术,通过在MATLAB软件上建立控制系统的数学模型,对控制系统进行性能仿真研究,掌握系统参数对系统性能的影响。 二、课程设计题目及要求 1.单回路控制系统的设计及仿真。 2.串级控制系统的设计及仿真。 3.反馈前馈控制系统的设计及仿真。 4.采用Smith 补偿器克服纯滞后的控制系统的设计及仿真。 三、课程设计的内容与步骤 (1).单回路控制系统的设计及仿真。 (a)已知被控对象传函W(s) = 1 / (s2 +20s + 1)。 (b)画出单回路控制系统的方框图。 (c)用MatLab的Simulink画出该系统。 (d)选PID调节器的参数使系统的控制性能较好,并画出相应的单位阶约响应

曲线。注明所用PID调节器公式。PID调节器公式Wc(s)=50(5s+1)/(3s+1) 给定值为单位阶跃响应幅值为3。 有积分作用单回路控制系统 无积分作用单回路控制系统

大比例作用单回路控制系统 (e)修改调节器的参数,观察系统的稳定性或单位阶约响应曲线,理解控制器参数对系统的稳定性及控制性能的影响? 答:由上图分别可以看出无积分作用和大比例积分作用下的系数响应曲线,这两个PID调节的响应曲线均不如前面的理想。增大比例系数将加快系统的响应,但是过大的比例系数会使系统有比较大的超调,并产生振荡,使稳定性变坏;增大积分时间有利于减小超调,减小振荡,使系统的稳定性增加,但是系统静差消除时间变长,加入微分环节,有利于加快系统的响应速度,使系统超调量减小,稳定性增加。 (2).串级控制系统的设计及仿真。 (a)已知主被控对象传函W 01(s) = 1 / (100s + 1),副被控对象传函W 02 (s) = 1 / (10s + 1),副环干扰通道传函W d (s) = 1/(s2 +20s + 1)。 (b)画出串级控制系统方框图及相同控制对象下的单回路控制系统的方框图。(c)用MatLab的Simulink画出上述两系统。

基于MATLAB的电力系统仿真98514

《电力系统设计》报告 题目: 基于MATLAB的电力系统仿 学院:电子信息与电气工程学院 班级:13级电气1 班 姓名:田震 学号:20131090124 日期:2015年12月6日 基于MATLAB的电力系统仿真 摘要:目前,随着科学技术的发展和电能需求量的日益增长,电力系统规

模越来越庞大,超高压远距离输电、大容量发电机组、各种新型控制装置得到了广泛的应用,这对于合理利用能源,充分挖掘现有的输电潜力和保护环境都有重要意义。另一方面,随着国民经济的高速发展,以城市为中心的区域性用电增长越来越快,大电网负荷中心的用电容量越来越大,长距离重负荷输电的情况日益普遍,电力系统在人们的生活和工作中担任重要角色,电力系统的稳定运行直接影响着人们的日常生活。从技术和安全上考虑直接进行电力试验可能性很小,因此迫切要求运用电力仿真来解决这些问题。 电力系统仿真是将电力系统的模型化、数学化来模拟实际的电力系统的运行,可以帮助人们通过计算机手段分析实际电力系统的各种运行情况,从而有效的了解电力系统概况。本文根据电力系统的特点,利用MATLAB的动态仿真软件Simulink搭建了无穷大电源的系统仿真模型,得到了在该系统主供电线路电源端发生三相短路接地故障并由故障器自动跳闸隔离故障的仿真结果,并分析了这一暂态过程。通过仿真结果说明MATLAB电力系统工具箱是分析电力系统的有效工具。 关键词:电力系统;三相短路;故障分析;MATLAB仿真

目录 一.前言 (4) 二.无穷大功率电源供电系统仿真模型构建 (5) 1.总电路图的设计 (5) 2.各个元件的参数设定 (7) 2.1供电模块的参数设定 (7) 2.2变压器模块的参数设置 (7) 2.3输电线路模块的参数设置 (8) 2.4三相电压电流测量模块 (9) 2.5三相线路故障模块参数设置 (9) 2.6三相并联RLC负荷模块参数设置 (10) 3.仿真结果 (11)

利用MATLAB编程实现动态画图功能

自动化专业综合设计报告 设计题目:利用MATLAB编程实现动态画图功能 所在实验室:自动化系统仿真实验室 指导教师: 学生姓名 班级 学号 撰写时间:2012-02-24 成绩评定:

一、设计目的 a)进一步熟悉Matlab的界面及基本操作; b)了解并掌握Matlab中一些函数的作用与使用; c)学会如何利用Matlab实现绘图功能,并可使坐标系动态设置。 二、设计要求 1.外部输入数据动态设置坐标系,然后绘制图形 2.举例演示 三、设计内容(可加附页) Matlab用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。我们设计的题目是利用matlab编程实现动态的画图功能。具体内容体现在: 1):利用外部输入的数据来设置坐标系,使坐标系能够按照自己想要的方式呈现出来,从而更加直观的分析图形。 2):绘制图形,我们举例绘制了一个正弦函数和一个三维的图形。 设计步骤: 1:打开matlab软件

2:建立一个.m文件,保存到work中 3:进行编程 首先从编程的角度分析,要实现两个功能,一个是可以从外部输入数据来改变坐标系。用到的函数是: axis([])。

其次是实现画图功能并实现图形的动态变化. 具体思路: 1:定义变量 global xmin xmax ymin ymax zmax zmin m n s y a b q p 2建立函数switch() Case0 Case1 3:从外部输入,编译 a=-8:0.1:10; q=a'; a1=ones(size(q))*x; q1=y*ones(size(a)); r=sqrt(a1.^2+q1.^2)+eps; z=sin(r)./r; mesh(z); 四.设计实验结果及分析 结果1:在命令窗口输入n=1; a=-8:0.1:10; q=a'; a1=ones(size(q))*x; q1=y*ones(size(a)); r=sqrt(a1.^2+q1.^2)+eps; z=sin(r)./r; mesh(z);

Matlab与系统仿真试题及答案

Matlab 与系统仿真试题及答案 一、填空题(每空2分,共30分) 1、单位取样序列定义为________________。 2、单位阶跃序列定义为__________________。 3、取样定理中,采样频率和原始信号频率之间至少应该满足公式_______________。 4、实现IIR 滤波器可以采用三种不同的结构:_______________、__________________和_______________。 5、对于理想的滤波特性()jw H e ,相应的()d h n 一般为无限时宽,从而使非因果的。为此,使显示一般通过如下公式__________实现加窗处理,相应的傅里叶表达形式为_________________。 6、设计IIR 滤波器的基础是设计模拟低通滤波器的原型,这些原型滤波器有:_________、________和______________低通滤波器。 7、实现FIR 滤波器可以采用以下4中结构: ________________,_______________,______________和____________。 二、阅读下列Matlab 程序,并回答完成的功能(每题5分,共10分) 1、f=[00.60.61]; m=[1100]; b=fir2(30,f,m); [h ,w]=freqz(b,1,128); Plot(f,m,w/pi,abs) 本段程序的功能是:

2、[b ,a]=butter(9,300/500,’high’); Freqz(b,a,128,1000) 本段程序的功能是: 三、用Matlab 语言编程实现下列各小题(每小题15分,共60分) 1、产生序列0.3,16p s A dB πΩ==55n -≤≤,并绘出离散图,标注图形标题为“Sequence in Example 3.1a”。 实现程序如下:

MATLAB控制系统仿真计算

一、 控制系统的模型与转换 1. 请将下面的传递函数模型输入到matlab 环境。 ]52)1)[(2(24)(322 33++++++=s s s s s s s G ) 99.02.0)(1(568 .0)(22+--+=z z z z z H ,T=0.1s >> s=tf('s'); G=(s^3+4*s+2)/(s^3*(s^2+2)*((s^2+1)^3+2*s+5)); G Transfer function: s^3 + 4 s + 2 ------------------------------------------------------ s^11 + 5 s^9 + 9 s^7 + 2 s^6 + 12 s^5 + 4 s^4 + 12 s^3 >> num=[1 0 0.56]; den=conv([1 -1],[1 -0.2 0.99]); H=tf(num,den,'Ts',0.1) Transfer function: z^2 + 0.56 ----------------------------- z^3 - 1.2 z^2 + 1.19 z - 0.99 2. 请将下面的零极点模型输入到matlab 环境。请求出上述模型的零极点,并绘制其位置。 )1)(6)(5()1)(1(8)(22+++-+++=s s s s j s j s s G ) 2.8() 6.2)(2.3()(1 511-++=----z z z z z H ,T=0.05s >>z=[-1-j -1+j]; p=[0 0 -5 -6 -j j]; G=zpk(z,p,8) Zero/pole/gain: 8 (s^2 + 2s + 2) -------------------------- s^2 (s+5) (s+6) (s^2 + 1) >>pzmap(G)

MATLAB程序的设计报告--基于MATLAB动画播放及音乐播放

. . 《MATLAB程序设计》课程设计报告 设计题目:基于MATLAB的动画演示 及背景音乐插入 专业: 2011级通信工程 (学号):储兆雄 1162310213 邓少林 1162310214 徐凯越 1162310223 指导教师:倪建军(博士/副教授) 时间: 2013年12月20日

目录 1、设计目的 2、总体设计 3、具体设计(功能实现) 4、结果分析 5、改进方向 6、心得体会 文献 附录

1、设计目的 学会运用matlab工具箱实现matlab GUI设计,处理动画运行,以及添加背景音乐,并实现其动态操作,如继续、暂停等功能。 2、总体设计

主要包括:动画模块,音乐模块,动画显示模块 3、具体设计(功能实现) 1) 动画模块 (1)打开动画文件:从文件打开对话框选择动画程序,实现动画播放的可选择性 程序实现代码如下: function btnvopen_Callback(hObject, eventdata, handles) % hObject handle to btnvopen (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global vfname %动画文件名 [vfname vpname vindex]=uigetfile('*.m','choose moive file'); len=length(vfname); if vindex set(handles.txtvname,'string',vfname(1:len-2)) end 打开对话框效果如下:

系统仿真的MATLAB实现.

第七章系统仿真的MATLAB实现 由于计算机技术的高速发展,我们可以借助计算机完成系统的数字仿真。综前所述,数字仿真实质上是根据被研究的真实系统的模型,利用计算机进行实验研究的一种方法。仿真的主要过程是:建立模型、仿真运行和分析研究仿真结果。仿真运行就是借助一定的算法,获得系统的有关信息。 MATLAB是一种面向科学与工程计算的高级语言,它集科学计算、自动控制、信号处理、神经网络和图像处理等学科的处理功能于一体,具有极高的编程效率。MATLAB是一个高度集成的系统,MATLAB提供的Simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持线性和非线性系统,能够在连续时间域、离散时间域或者两者的混合时间域里进行建模,它同样支持具有多种采样速率的系统。在过去几年里,Simulink已经成为数学和工业应用中对动态系统进行建模时使用得最为广泛的软件包。 MATLAB仿真有两种途径:(1)MATLAB可以在SIMULINK窗口上进行面向系统结构方框图的系统仿真;(2)用户可以在MATLAB的COMMAND窗口下,用运行m文件,调用指令和各种用于系统仿真的函数,进行系统仿真。这两种方式可解决任意复杂系统的动态仿真问题,前者编辑灵活,而后者直观性强,实现可视化编辑。 下面介绍在MATLAB上实现几类基本仿真。 7.1 计算机仿真的步骤 在学习计算机仿真以前,让我们先总结一下计算机仿真的步骤。 计算机仿真,概括地说是一个“建模—实验—分析”的过程,即仿真不单纯是对模型的实验,还包括从建模到实验再到分析的全过程。因此进行一次完整的计算机仿真应包括以下步骤:

(1)列举并列项目 每一项研究都应从说明问题开始,问题由决策者提供或由熟悉问题的分析者提供。 (2)设置目标及完整的项目计划 目标表示仿真要回答的问题、系统方案的说明。项目计划包括人数、研究费用以及每一阶段工作所需时间。 (3)建立模型和收集数据 模型和实际系统没有必要一一对应,模型只需描述实际系统的本质或者描述系统中所研究部分的本质。因此,最好从简单的模型开始,然后进一步建立更复杂的模型。 (4)编制程序和验证 利用数学公式、逻辑公式和算法等来表示实际系统的内部状态和输入/输出的关系。建模者必须决定是采用通用语言如MATLAB、FORTRAN、C还是专用仿真语言来编制程序。在本教材中,我们选择的是MATLAB和其动态仿真工具Simulink。 (5)确认 确认指确定模型是否精确地代表实际系统。它不是一次完成,而是比较模型和实际系统特性的差异,不断对模型进行校正的迭代过程。 (6)实验设计 确定仿真的方案、初始化周期的长度、仿真运行的长度以及每次运行的重复次数。 (7)生产性运行和分析 通常用于估计被仿真系统设计的性能量度。利用理论定性分析、经验定性分析或系统历史数据定量分析来检验模型的正确性,利用灵敏度分析等手段来检验模型的稳定性。 (8)文件清单和报表结果 (9)实现

【原创】Matlab中动画的实现、制作和保存

【原创】Matlab中动画的实现、制作和保存 Matlab的确是一个很优秀的工程计算软件,除了强大的矩阵运算,仿真分析外,绘图功能 也是相当的强大。 但是由于Matlab本身的多线程编程缺陷(所谓多线程,就是MATLAB没法同时执行多个回调,只能排队一个一个的按顺序运行,Timer对象除外,它是MATLAB中唯一能够执行多线程的方法),想要动态的画图,并且能够很好的在GUI中得到控制,还不是一件很容易的事情。 但是动画具有生动形象直观的好处,对我的教学、研究等都有不小的作用。那好,我在这里勉为其难的介绍下Matlab中是如何制作动画的。 一、动画的制作 Matlab中动画实现的方法主要有下面三种 1.电影动画:从不同的视角拍下一系列对象的图形,并保存到变量中,然后按照一定的顺序 像电影一样播放。 https://www.360docs.net/doc/e1181208.html,/thread-593-1-1.html 2.擦除动画:画在图形窗口中按照一定的算法连续擦除和重绘图形对象,表现为动画,这个 也是MATLAB中使用最多的方法。 https://www.360docs.net/doc/e1181208.html,/thread-240-1-1.html 3.质点动画:用comet()等函数绘制彗星图,它能演示一个质点的运动 https://www.360docs.net/doc/e1181208.html,/thread-594-1-1.html 二、动画的保存 下面再讲述下生成的动画如何保存。动画保存,只有对电影动画而言才有意义,其他两种谈不上保存,因为他们都是实时的,眨眼就过的 https://www.360docs.net/doc/e1181208.html,/thread-595-1-1.html 三、有关动画制作的实验报告 https://www.360docs.net/doc/e1181208.html,/thread-600-1-1.html

matlab_动画制作

点的简单动画%by dynamic %2008.6.23 % t=0:pi/1000:10*pi; x=30*sin(t); y=30*cos(t); z=t; plot3(x,y,z); hold on %axis equal comet3(x,y,z,0.5) %% %by dynamic %2008.6.13 % vx = 100*cos(1/4*pi); vy = 100*sin(1/4*pi); t = 0:0.001:15; x = vx*t; y = vy*t-9.8*t.^2/2; comet(x,y) %% %by dynamic %2008.6.13 % vx = 100*cos(1/4*pi); vy = 100*sin(1/4*pi); t = 0:0.001:15; x = vx*t; y = vy*t-9.8*t.^2/2; comet(x,y) %% %一般的过程 %擦除重绘模式动画 %选择一个擦除模式

set(h,'erasemode',erasemode)%h是需要执行动画图像的句柄,一般都是由line或者plot创建% %需要执行一些图形计算命令 % %循环语句中更新坐标数据,一般使用for或者while for i=1:n % %必要的MATLAB命令 % set(h,'xdata',xdata,'ydta',ydata)%更新图像的坐标数据 drownnow%刷新屏幕 % %其它Matlab语句 % End %% %运动的小球 %function f=anim_ball(K,ki) % %演示红色小球沿一条封闭旋螺线运动的实时动画 % 仅演示实时动画的调用格式为anim_ball(K) % 既演示实时动画又拍摄照片的调用格式为f=anim_ball(K,ki) % K 红球运动的循环数(不小于1 ) % ki 指定拍摄照片的瞬间,取1 到1034 间的任意整数 % f 存储拍摄的照片数据,可用image(f.cdata) 观察照片 % 产生封闭的运动轨线 % % %by dynamic %all rights reserved by https://www.360docs.net/doc/e1181208.html, %2007.10.26 % t1=(0:1000)/1000*10*pi; x1=cos(t1);y1=sin(t1);z1=-t1; t2=(0:10)/10; x2=x1(end)*(1-t2);y2=y1(end)*(1-t2);z2=z1(end)*ones(size(x2)); t3=t2; z3=(1-t3)*z1(end);x3=zeros(size(z3));y3=x3; t4=t2; x4=t4;y4=zeros(size(x4));z4=y4; x=[x1 x2 x3 x4];y=[y1 y2 y3 y4];z=[z1 z2 z3 z4]; h=figure('numbertitle','off','name','擦除动画演示(运动的小球)——Matlabsky'); plot3(x,y,z,'b') axis off

相关文档
最新文档