实 验 报 告
实验项目: 系统仿真软件实验
专 业:
学 号:
姓 名:
日 期:
商学院
目 录
实验一 桌子加工厂仿真模型... 1
实验二 综合应用案例模型... 2
实验三 银行仿真模型... 3
实验小结... 4
实验一 桌子加工厂仿真模型
一、 实验内容
本实验仿真一家桌子加工厂的生产流程:包括处理桌面的锯开站(Saw),铣床站(Milling),喷漆站(Lacquer),及质量检验站(Check);桌脚与桌面在组装站(Assembly)被组合成一个桌子,然后进入包装站(Packing)包装,最后送至发货站(Shipping)运离系统。生产流程图如下:
二、 建模步骤分析
1. 铣床站建模分析
层式结构的使用
桌面进入桌面存放区存放,然后依序在锯开站,铣床站这里运用到了层式结构。
2. 喷漆站建模分析
1)对桌面进行质量检验后实现分流
Tabletop的属性设置,质量为GOOD.
指定程序运行一次,counter变量要自动加一, 假如counter 刚好等于10, @(MUs)的属性quality指定为“bad”,并另counter的值归零。否则@(MUs)的属性quality指定为“GOOD”。
- 在此判断对象所带之定制化属性,假如MU对象所带之属性值为GOOD时,将对象移到Part_OK站,若对象所带之属性为Bad则移到Part_nOK。
- 当MU对象通过exame机床时,机床会依照method来判断MU对象所带之属性来分类,当对象所带之属性quality的值是GOOD,则将对象送至Part_OK的机床,若所带之属性值为bad时,则会将对象送至Part_nOK的机床
2)对桌面的涂漆颜色进行指派
Tabletop有五种状态,以代表不同的桌面颜色,分别为red、brown、blue、green和yellow。
在ColorTable中设定1栏,5列,并依序写入blue、red 、 brown 、green、yellow,利用color 的method及变量number来一起控制MU的Icon颜色之转换
开启Plant2进行模拟,观察对象颜色之变化。
3. 组装站建模分析
1)运用Method方法实现桌面与桌脚的组装
使用Method来协助对象组装。首先先确定 Palette及Product是否已经在E1及E2站处理完了,并且已经都各就各位。确定完已经就位之后,再将E1托盘Palette移动至E3站,之后再将E2站上的Product移至E3站上的托盘上。
2)运用Method方法实现将桌面放置到托盘中,在桌面与桌脚组装后再将桌子与托盘分离。
unload的程序,希望在对象到达E4站时,进行对象之分开。Method的內容指定Palette到达E4站上时会触动unload对象,将Palette上之Product对象移至Drain,当Product移走后,再将Palette对象移到Drain1
启动Frame_7模拟时,Product及Palette在E3站结合,在E4分开。
4. 包装站建模分析
1)运用ShiftCalendar对象实现机器的排班
使用ShiftCalendar安排时间。输入排班名称、各班起始时间以及终止时间。选择一星期里运作天数。输入各班起始时间及终止时间、输入中断时间,如休息时间及吃饭时间,若同一时段有许多暂停时间,则再输入时间时,用分号加以区隔开。
2)运用Trigger对象实现机器的排班
周期设定。
工作时间和休息时间的设定。
Pause_Ctrl的Method的触动设定。
状态呈现如图所示。
5. 出货站建模分析
实现对不同颜色桌子的统计
Plant5模拟, 可以从Partstatistics中得到不同颜色的统计。
实验二 综合应用案例模型
一、 实验内容
二、 实验思考题
1.模型中如何实现三种零件按不同的加工顺序依次经过各台机器?请详细说明所用到的方法、对象,并举一个零件的例子说明。
2.模型中收集了哪些统计数据?请列出它们的变量名,并说明其含义。请运行5次仿真模型,分别列出这些统计数据的运行结果。这些结果是否相同?为什么?你认为应该如何提高运行结果的可靠性?
实验三 银行仿真模型
一、 实验内容
二、 建模步骤分析
实验小结
在系统模拟仿真的实训第一个礼拜,我完成了桌子制造流程的系统模拟。整个流程包括了铣床车间、喷漆车间、组装车间、包装车间、出货,这5个部分。
我们跟着老师发的5张PPT一步一步地做。虽然有着PPT做指导,但是在实践的过程中小错误屡次出现。想要能够正确运用eM-Plant这个软件实属不易啊!
在整个系统模拟完成,最后模拟运行的时候,在名为PartMethod的Method中反复报错,多次调试之后,仍是不见好转。最后在老师的帮助下,发现了问题所在—居然是讲语句中的partstatistics错误拼成partstatisics。所以总结下来,还是要细心,不能心急。
桌子制造流程做完后,觉得EM-Plant7.0这个软件的功能相当强大。在对method编程后可以对桌面进行质量分析,然后分流以及桌子的组装和分拆。Trigger可以对加工机器进行排班、工时的设定,呈现状态。TableFile则可以对不同颜色的桌子数量进行统计。在一个礼拜的软件的使用后,我个人感触颇大。它可以对整个工作流程完全进行模拟,从而事先发现流程中的不足和缺陷,避免实际生产过程的资源、材料等浪费。
第二篇:信号与系统仿真实验报告4
上机实验4:非周期信号频域分析
验证试验
1_1
clear all;clc;
syms t w; %定义符号变量
ut=sym('Heaviside(t+0.5)-Heaviside(t-0.5)'); %借助阶跃函数定义门函数
subplot(2,1,1);ezplot(ut);Hold on;
axis([-1 1 0 1.1]); %给定坐标系范围
plot([-0.5 -0.5],[0 1]); %绘制左跳变沿
plot([0.5 0.5],[0 1]); %绘制右跳变沿
Fw=fourier(ut,t,w); %对门函数进行傅立叶变换
FFw=maple('convert',Fw,'piecewise');%将傅立叶变换的符号表达式转换为样条曲线
FFp=abs(FFw); %求幅度频谱
subplot(2,1,2);ezplot(FFp,[-10*pi 10*pi]);%绘制幅度频谱
axis([-10*pi 10*pi 0 1.1]);
1_2
clear all;clc;
syms t w; %定义符号变量
ut1=sym('Heaviside(t+0.5)-Heaviside(t-0.5)')%脉宽为1幅度为1的矩形脉冲信号
subplot(2,1,1); %绘制矩形脉冲信号
plot([-0.5 0.5],[0 1]);
title('脉宽为1矩形脉冲信号');
xlabel('t');
hold on;
plot([-0.2 -0.5],[0 1]);
axis([-1 1 0 1.1]); %给定坐标系范围
Fw1=fourier(ut1,t,w); %用fourier函数求矩形脉冲信号的傅立叶变换
FFw1=maple('convert',Fw1,'piecewise');
FFP1=abs(FFw1); %求幅度频谱
subplot(2,1,2);
ezplot(FFP1,[-10*pi 10*pi]);%绘制幅度频谱
axis([-10*pi 10*pi 0 1.1]); %给定坐标系范围
title('脉宽为1的矩形脉冲信号的幅度频谱');
hold on;
pause; %键盘输入任意键后运行后续程序
ut2=10*sym('Heaviside(t+0.5)-Heaviside(t-0.5)')%脉宽为0.1幅度为10的矩形脉冲信号
subplot(2,1,2); %绘制矩形脉冲信号
plot([0.05 0.05],[10 10]);
plot([-0.05 0.05],[0 10]);
plot([0.05 0.05],[0 10]);
axis([-1 1 0 1.1]);%给定坐标系范围
title('脉宽为0.1矩形脉冲信号');
xlabel('t');
hold on;
Fw2=fourier(ut2,t,w); %用fourier函数求矩形脉冲信号的傅立叶变换
FFw2=maple('convert',Fw2,'piecewise');
FFP2=abs(FFw2); %求幅度频谱
subplot(2,1,2);
ezplot(FFP2,[-10*pi 10*pi]);%绘制幅度频谱
axis([-10*pi 10*pi 0 1.1]); %给定坐标系范围
title('脉宽为0.01的矩形脉冲信号的幅度频谱');
hold on;
pause; %键盘输入任意键后运行后续程序
ut3=100*sym('Heaviside(t+0.005)-Heaviside(t-0.005)')%脉宽为0.01幅度为100的矩形脉冲信号
subplot(2,1,2); %绘制矩形脉冲信号
plot([-0.005 0.005],[100 100]);
plot([-0.005 -0.005],[0 100]);
plot([0.005 0.005],[0 100]);
axis([-1 1 0 110]);%给定坐标系范围
title('脉宽为0.01矩形脉冲信号');
xlabel('t');
hold on;
Fw3=fourier(ut3,t,w); %用fourier函数求矩形脉冲信号的傅立叶变换
FFw3=maple('convert',Fw3,'piecewise');
FFP3=abs(FFw3); %求幅度频谱
subplot(2,1,2);
ezplot(FFP3,[-10*pi 10*pi]);%绘制幅度频谱
axis([-10*pi 10*pi 0 1.1]); %给定坐标系范围
title('脉宽为0.1的矩形脉冲信号的幅度频谱');
hold on;
pause; %键盘输入任意键后运行后续程序
1_3
%直流信号的傅立叶变换
clear all;clc;
display('please input the value of a');
a=input('a=');%键盘输入a的值
syms t; %定义符号变量
f=exp(-a*abs(t));
subplot(1,2,1);
ezplot(t); %绘制双边指数信号的波形
axis([-2*pi 2*pi 0 1]);
ylabel('时域波形');
F=fourier(f);
subplot(1,2,2);
ezplot(abs(F));%绘制幅度频谱
axis([-3 3 0 2/a]);
ylabel('幅度频谱');
1_4
%阶跃信号的傅立叶变换
clear all;clc;
syms w;
xw=1/(j*w); %0.5*sgn(t)的频谱
ezplot(imag(xw)); %绘制其虚部
axis([-3 3 -1.5*pi 1.5*pi]);
hold on;
y=0:0.01:pi;
plot(0,y); %绘制直流部分
y=pi:pi
plot(0,y,'^');
title('阶跃信号频谱');
xlabel('\omega');
axis([-pi pi -6 6]);
x=-pi:0.001:pi;
plot(x,0); %绘制横坐标
y=-6:0.01:6
plot(0,y); %绘制纵坐标
1_5
%单边指数信号的傅立叶变换
clear all;clc;
syms t v w x phae im re; %定义符号变量
f=exp(-2*t)*sym('Heaviside(t)');%f(t)=exp(-2*t)*u(t)
FW=fourier(f);
subplot(3,1,1);
ezplot(f); %绘制时域波形
axis([-1 2.5 0 1.1]);
subplot(3,1,2);
ezplot(abs(FW)); %绘制幅度谱
im=imag(FW);
re=real(FW);
phase=atan(im/re);
subplot(3,1,3);
ezplot(phase); %绘制相位谱
设计实验
%%%%%%%%求傅立叶变换表达式
f1=1+U(t)*exp(-2*t);
f2=exp(-t)*Heaviside(t-1)+(U(t+1)-U(t-1));
f3=2*U(t)+δ(t-4);
clear all;clc;
syms t;
f1=1+Heaviside(t)*exp(-2*t);f1_w=fourier(f1);
f2=exp(-t)*Heaviside(t-1)+(Heaviside(t+1)-Heaviside(t-1));f2_w=fourier(f2);
f3=2*Heaviside(t)+diff(Heaviside(t-4));f3_w=fourier(f3);
%%%%%%%%%%%%%%%%%%%%以下是结果
% >> f1_w
%
% f1_w =
%
% 2*pi*dirac(w)+1/(2+i*w)
%
%
% >> f2_w
%
% f2_w =
%
% 1/(1+i*w)*(exp(-i*w-1)+exp(i*w)-exp(-i*w))+2/(1+i*w)/w*sin(w)
%
%
% >> f3_w
%
% f3_w =
%
% exp(-4*i*w)+2*pi*dirac(w)-2*i/w
%
%
% >>