第一篇:基于simulink的車輛行駛控制系統(tǒng)建模與仿真
基于Simulink的車輛行駛控制系統(tǒng)建模與仿真
汽車行駛控制系統(tǒng)是應(yīng)用非常廣泛的控制系統(tǒng)之一,其主要的目的是對汽車的速度進(jìn)行合理的控制。系統(tǒng)的工作原理如下:通過速度操縱機(jī)構(gòu)的位置發(fā)生改變以設(shè)置汽車的速度,再測量汽車當(dāng)前的速度,并求取它與指定速度的差值,最后由速度差值信號驅(qū)動(dòng)汽車產(chǎn)生相應(yīng)的牽引力,并由此牽引力改變汽車的速度直到其速度穩(wěn)定在指定的速度為止。本文采用Simulink建模,對行駛控制系統(tǒng)進(jìn)行仿真,并采用Simulink自帶的signal constraint模塊對PID參數(shù)進(jìn)行優(yōu)化,仿真結(jié)果表明,該系統(tǒng)能在短時(shí)間內(nèi)平穩(wěn)的達(dá)到指定的速度,提高了汽車的操縱性。
1.汽車行駛控制系統(tǒng)的物理模型與數(shù)學(xué)描述
1)速度操縱機(jī)構(gòu)的位置變換器
位置變換器是汽車行駛控制系統(tǒng)的輸入部分,其目的是將速度操縱機(jī)構(gòu)的位置轉(zhuǎn)換為相應(yīng)的速度,二者之間的數(shù)學(xué)關(guān)系如下所示:
其中x速度操縱機(jī)構(gòu)的位置,v為與之相應(yīng)的速度。
2)離散行駛控制器
行駛控制器是整個(gè)汽車行駛控制系統(tǒng)的核心部分。簡單來說,其功能是根據(jù)汽車當(dāng)前的速度與指定速度的差值,產(chǎn)生相應(yīng)的牽引力。行駛控制器為一典型的PID控制器,其數(shù)學(xué)描述為:
積分環(huán)節(jié):
微分環(huán)節(jié):
系統(tǒng)輸出:
其中u(n)為系統(tǒng)的輸入,相當(dāng)于汽車當(dāng)前速度與指定速度的差值。y(n)為系統(tǒng)輸出,相當(dāng)于汽車牽引力,x(n)為系統(tǒng)的狀態(tài)。Kp,Ki,Kd為PID控制器的比例、積分與微分控制參數(shù)。
3)汽車動(dòng)力機(jī)構(gòu)
汽車動(dòng)力機(jī)構(gòu)是行駛控制系統(tǒng)的執(zhí)行機(jī)構(gòu)。其功能是在牽引力的作用下改變汽車的速度,使其達(dá)到指定的速度。牽引力與速度之間的關(guān)系為:
其中v為汽車的速度,F(xiàn)為汽車的牽引力,m=1000kg為汽車的質(zhì)量,b=20為阻力因子。
2.系統(tǒng)Simulink模型與參數(shù)設(shè)置
行駛控制系統(tǒng)仿真模型如圖1所示:
圖1 行駛控制系統(tǒng)仿真模型 Set speed子系統(tǒng)模型如圖2所示:
圖2 Set speed子系統(tǒng)模型
Discrete cruise controller子系統(tǒng)模型如圖3所示:
圖3 Discrete cruise controller子系統(tǒng)模型
Car dynamics子系統(tǒng)模型如圖4所示:
圖4 Car dynamics子系統(tǒng)模型
我們預(yù)設(shè)Kp=1,Ki=0.01,Kd=0.3.系統(tǒng)仿真與分析
當(dāng)Kp=1,Ki=0.01,Kd=0時(shí)仿真結(jié)果如圖5所示:
圖5 預(yù)設(shè)參數(shù)的仿真速度曲線
這時(shí)我們運(yùn)行signal constraint模塊對PID參數(shù)進(jìn)行優(yōu)化,優(yōu)化結(jié)果如圖6所示:
圖6 優(yōu)化后仿真速度曲線
優(yōu)化后的Kd=-5.64×10-4,Ki=0.0089,Kp=10.我們把仿真數(shù)據(jù)輸出到Workspace,程序和對比圖如下: >>plot(ScopeData(:,1),ScopeData(:,2),'LineWidth',1.5);>>hold on;>>plot(ScopeData1(:,1),ScopeData1(:,2),'r:','LineWidth',1.5);>>hold off;>>grid;
圖6 通過對比可以發(fā)現(xiàn)優(yōu)化后的參數(shù)可以更好的使汽車在較短的時(shí)間內(nèi)平穩(wěn)的達(dá)到指定的速度。
4.小結(jié)
這種使用Simulink的仿真方法,可以有效模擬汽車行駛控制系統(tǒng)的作用過程,比較真實(shí)地反映汽車速度控制系統(tǒng)的實(shí)際工作情況。通過對仿真結(jié)果的分析,表明汽車行駛控制系統(tǒng)在車輛速度控制方面的顯著功能,也證明了這種仿真方法的合理性及實(shí)用性。并且仿真系統(tǒng)中的參數(shù)可以根據(jù)具體車型的改變而改變,非常簡單、明了,便于對汽車行駛控制系統(tǒng)的設(shè)計(jì)以及系統(tǒng)參數(shù)的優(yōu)化。
第二篇:Matlab與Simulink仿真學(xué)習(xí)心得
Matlab與Simulink仿真學(xué)習(xí)心得
班級:07610 學(xué)號:072016 姓名:呂天雄
一 Matlab學(xué)習(xí)心得體會(huì)與編程實(shí)踐
<1>學(xué)習(xí)Matlab的心得體會(huì)
真正開始接觸Matlab是大二上就開始了,到現(xiàn)在已經(jīng)一年多了,在此之間,Matlab的確為我提供了很多便利。Matlab的確不愧成為是草稿紙上的語言。我們不必去為很簡單的顯示效果圖形去找一些什么其他軟件或者研究比較復(fù)雜的計(jì)算機(jī)圖形學(xué),一個(gè)plot或者別的函數(shù)往往就可以得到很滿意的效果。
其實(shí)最初開始學(xué)習(xí)matlab的時(shí)候感覺這個(gè)東西和C沒什么兩樣,但是后來具體到一些 東西,比如信號處理和數(shù)學(xué)建模上以后才感覺到使用matlab編寫程序去驗(yàn)證結(jié)果比C要節(jié) 省很多時(shí)間,而且matlab寫東西基本都是按照自己的思路平鋪直敘很少去考慮什么函數(shù)的 嵌套調(diào)用或者指針等等很頭疼的東西。
關(guān)于matlab的學(xué)習(xí),我感覺其實(shí)百度和matlab自帶的help基本能夠解決絕大數(shù)問題,而且一些比較好的論壇比如004km.cn都會(huì)為你產(chǎn)生很大的幫助,關(guān)鍵是在于多動(dòng)手實(shí)踐,多思考。但是matlab畢竟只是一個(gè)工具,原理和一些基本的編程素質(zhì)還是必須有的,否則matlab最多也只能是驗(yàn)證一些別人的東西而已,根本幫不上什么忙的。
<2>遇到的一些問題的思考方式與解決辦法
最開始用matlab的時(shí)候是在大物實(shí)驗(yàn),實(shí)驗(yàn)要求去根據(jù)測量得到的數(shù)據(jù)作出圖。但是 手動(dòng)用鉛筆去畫確實(shí)很麻煩,所以用matlab確實(shí)可以省去很大的麻煩。但是第一次遇到問 的時(shí)候是有關(guān)極化坐標(biāo)下的曲線擬合。
首先是一個(gè)物理實(shí)驗(yàn)的問題;在做一個(gè)關(guān)于光的偏振的實(shí)驗(yàn)的時(shí)候,最后的結(jié)果要在一個(gè)極化坐標(biāo)下顯示出來;因?yàn)閿?shù)據(jù)是離散的,所以顯示出來的圖像是一個(gè)折來折去的一個(gè)東東; 然后很自然的想法是對這個(gè)曲線進(jìn)行插值處理。
但是極化坐標(biāo)下MATLAB并未提供插值處理的函數(shù),interp1這個(gè)函數(shù)只能在笛卡爾坐標(biāo)系,也就是直角坐標(biāo)系下使用。
然后就想到把極坐標(biāo)的數(shù)據(jù)轉(zhuǎn)換的直角坐標(biāo)系下,pol2cart可以實(shí)現(xiàn)這個(gè)想法,但是隨后而來,也就是最后導(dǎo)致整個(gè)問題失敗的關(guān)鍵也在這里。
pol2cart以后產(chǎn)生的一串?dāng)?shù)據(jù)中出現(xiàn)了重復(fù)的數(shù)據(jù),那么interp1這個(gè)東西也就無能為力了,因?yàn)閕nterp1不能處理一串?dāng)?shù)據(jù)中有重復(fù)出現(xiàn)的情況。最后的處理辦法是把這些數(shù)據(jù)c os,sin這些東西變換一下后,使其大致規(guī)則,然后再用polar畫出極坐標(biāo)下的圖形。
接下來這個(gè)問題就有點(diǎn)超過我的范圍了,可能會(huì)有點(diǎn)敘述不清楚。問題可以概要為:人臉網(wǎng)格插值。
這是一個(gè)用三角形網(wǎng)格表示的一個(gè)人臉模型。需要通過插值使其變得光滑,當(dāng)然問題的復(fù)雜之處在于,插值會(huì)改變原本的網(wǎng)格結(jié)構(gòu)。
對于這個(gè)問題許多人都給出了解決的辦法,當(dāng)然是一些關(guān)于人臉識(shí)別技術(shù)和運(yùn)動(dòng)圖像處理的范疇之內(nèi)的。
主要有兩種,第一種是face—ls算法。這種算法是基于RBF(徑向插值函數(shù))和loop細(xì)分原則的一種算法,當(dāng)然其精確程度比較差點(diǎn)。但是速度挺好。原理是:基于網(wǎng)格上的點(diǎn),產(chǎn)生出頂點(diǎn)的迭代函數(shù),從而產(chǎn)生出新的定點(diǎn),進(jìn)行細(xì)化。然后進(jìn)行插值。也就是引進(jìn)新的頂點(diǎn)。分為兩個(gè)過程內(nèi)部插值和邊緣插值。具體可以去看蘭州大學(xué)信息工程學(xué)院的學(xué)報(bào)。
第二種也就是基本的老辦法RBF。首先解釋一下什么叫做徑向插值 徑向基函數(shù)
主要是考慮多維空間的數(shù)據(jù)插值問題,徑向基函數(shù)在三維圖形的變形中常常被采用,用其來變分三維人臉的時(shí)候還應(yīng)結(jié)合人臉的固有特征。確定該方法來實(shí)現(xiàn)三維人臉變形是可行的,但要構(gòu)造好的基函數(shù),以及解這些高維方程的解仍是難點(diǎn)。插值方法:
假設(shè)大多數(shù)人臉的形狀都可以由一個(gè)拓?fù)湓妥兓脕?,那么,通過調(diào)整一個(gè)一般模型的構(gòu)造參數(shù)可以建立不同的面部模型。但是,這種參數(shù)模型僅僅局限于那些構(gòu)造參數(shù)已知的情況,并且對特定人臉參數(shù)的調(diào)整非常困難。在離散數(shù)據(jù)的多變量插值問題方面,徑向基函數(shù)(radial basis function,RBF)插值方法是一個(gè)行之有效的工具,所以也適用于類似人臉這樣高維曲面的近似或平滑插值?,F(xiàn)有的許多方法使用了基于RBF的插值技術(shù),將一般人臉網(wǎng)格變化到特定人臉的形狀。這種方法的優(yōu)點(diǎn)在于:(1)通過插值可以得到丟失的數(shù)據(jù)點(diǎn),所以源網(wǎng)格和目標(biāo)網(wǎng)格不需要相同數(shù)目的結(jié)點(diǎn);(2)如果選擇了合適的匹配點(diǎn),數(shù)學(xué)上可以保證能夠?qū)⒃淳W(wǎng)格變形到目標(biāo)網(wǎng)格。
當(dāng)然我也不是很懂,只是理解了部分。這種方法的關(guān)鍵是找到一個(gè)很好的核函數(shù)來計(jì)算出新的頂點(diǎn)。
最后問題解決的方式是查著了一些圖書館的學(xué)報(bào)。然后而且在網(wǎng)上找到了部分代碼。然后做出來的。這是我校大四一個(gè)同學(xué)畢設(shè)中的一個(gè)東西。
其實(shí)這個(gè)事件最好的解決辦法是在3D-MAX中,不過因?yàn)闆]能找到MATLAB與3D-MAX是怎么接口的,所以作罷了。
第三次遇到的問題是我在數(shù)學(xué)建模課上遇到的一個(gè)關(guān)于矩陣LU分解的問題:
Matlab作出的結(jié)果和手算的結(jié)果竟然不一樣。
10??1????1???1?
U=?1? ?一個(gè)矩陣 A=? 經(jīng)過三角分解為L=101????????11?因?yàn)?/?為一個(gè)極大數(shù) 則1—1/?可以看成—1/?;
設(shè)?=0.***000000001%10的負(fù)24次方
從而L*U=則最后一位1沒有了 變成了0
其中L=
U=Matlab 程序?yàn)?/p>
epusino=0.***000000001;U=[epusino 1;0-1/epusino];L=[1 0;1/epusino 1];L*U ans =
0.***
1.***
1.***
0 而直接用lu函數(shù)對矩陣A分解的結(jié)果為
A=[epusino 1;1 1] A =
0.0000
1.0000
1.0000
1.0000
>> [L,U]=lu(A)L =
0.0000
1.0000
1.0000
0
U =
0 我們老師當(dāng)時(shí)的解釋是這是由于我們所用matlab是破解版的緣故,破解版的計(jì)算精度 沒正版的高所以導(dǎo)致運(yùn)算結(jié)果的錯(cuò)誤,后來我看了一些LU這個(gè)函數(shù)的help文檔 psychologically lower triangular matrix"(i.e.a product of lower triangular and permutation matrices)in L。翻譯過來是L是一個(gè)心理上的下三角矩陣,其實(shí)是下三角矩陣和置換矩陣也就是最后的結(jié)論。P*A = L*U.。由此可見這并不是什么精度的問題導(dǎo)致的結(jié)果只是LU分解的矩陣意義和書本上的不同而已。
以下是我自己寫的一些程序的代碼
1:網(wǎng)絡(luò)隨機(jī)拓?fù)鋱D
目的是要生成一個(gè)度數(shù)隨機(jī)、權(quán)值隨機(jī)的拓?fù)鋱D。首先的理解是利用鄰接矩陣,先隨機(jī)生成一個(gè)矩陣,該矩陣為一個(gè)對稱矩陣。然后畫出這個(gè)矩陣就行了。
隨機(jī)拓?fù)鋱D10026516398191 ***0430 ***065
%產(chǎn)生數(shù)組A用來存放表示兩點(diǎn)之間權(quán)值的矩陣A,也就是臨接矩陣,那么兩點(diǎn)之間權(quán)值不為零元素的個(gè)數(shù)即為該點(diǎn)的度數(shù)
DEF=5;%設(shè)定一個(gè)東東 方便改變隨機(jī)點(diǎn)的個(gè)數(shù) A=rand(DEF,DEF);%產(chǎn)生DEF*DEF的隨機(jī)矩陣 for i=1:DEF A(i,i)=0%將對角線上的數(shù)置為0 end A=10*A;A=floor(A);%向下去整 for i=1:DEF for j=1:i A(j,i)=A(i,j)%將A矩陣變?yōu)橐粋€(gè)上三角或者下三角矩陣 end end x=100*rand(1,DEF);y=100*rand(1,DEF);%產(chǎn)生10個(gè)隨機(jī)的點(diǎn) plot(x,y,'r+');
for i=1:DEF a=find(A(i,:)>0)%將A矩陣每行大于0的數(shù)的在該行的地址找出來放在a中
for j=1:length(a)
c=num2str(A(i,j));%將A中的權(quán)值轉(zhuǎn)化為字符型
if c~='0'%不顯示為0的值 因?yàn)锳矩陣為零代表兩點(diǎn)不相連 text((x(i)+x(j))/2,(y(i)+y(j))/2,c,'Fontsize',18);%將權(quán)值顯示在兩點(diǎn)連線中間 end hold on;
line([x(i)x(a(j))],[y(i)y(a(j))]);%連線 end end
title('隨機(jī)拓?fù)鋱D');e=num2str(DEF);legend(e);%左上角顯示節(jié)點(diǎn)的個(gè)數(shù) for m=1:DEF A(m,m)=m;f=num2str(A(m,m));hold on;text((x(m)+x(m))/2,(y(m)+y(m))/2,f,'Fontsize',18);%將權(quán)值顯示在兩點(diǎn)連線中間 end 接下來是一個(gè)在信息安全課上寫的一個(gè)關(guān)于256色圖分層的程序,一副圖像有m*n個(gè)像素然后每個(gè)像素是一個(gè)8bit的二進(jìn)制數(shù)據(jù)換算為十進(jìn)制是0-255之間。要做的就是把每bit的信息提取出來。
I=imread('bupt副本.bmp');%讀入源圖像
I=double(I);%將圖像轉(zhuǎn)換為double類型便于MATLAB中的計(jì)算 %確定圖像的長寬 M=size(I,1);%長 N=size(I,2);%寬 l=M*N;%圖像長寬之積 for n=1:8;%剔除每層 for i=1:M
for j=1:N
B=numdec2bin(I(i,j),8);%先將每個(gè)像素轉(zhuǎn)換為8位2進(jìn)制序列
B(n)=[];%刪除相應(yīng)位置的元素
y(i,j)=numbin2dec(B);%將剩下的7個(gè)元素轉(zhuǎn)換為10進(jìn)制數(shù)放入y矩陣中
end end
y=uint8(y);%將10進(jìn)制的矩陣轉(zhuǎn)換為無符號整形
subplot(4,2,9-n);%顯示n個(gè)圖像,每層是相應(yīng)的剔除該層的結(jié)果
imshow(y);%顯示這個(gè)圖像
title(strcat('去除第',num2str(9-n),'層后的結(jié)果'));%顯示標(biāo)題 end
附帶的兩個(gè)函數(shù):
function y=numdec2bin(x,n);%從函數(shù)將十進(jìn)制數(shù)x轉(zhuǎn)化為n位二進(jìn)制 y=zeros(1,n);a=x;i=n;while a>0 y(i)=mod(a,2);a=floor(a/2);i=i-1;end function y=numbin2dec(x)%將二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù) a=0;lx=length(x);for i=1:lx a=a+x(i)*2^(lx-i);end y=a;
去除第1層后的結(jié)果去除第2層后的結(jié)果去除第3層后的結(jié)果去除第4層后的結(jié)果去除第5層后的結(jié)果去除第6層后的結(jié)果去除第7層后的結(jié)果去除第8層后的結(jié)果
Matlab的RGB轉(zhuǎn)換為YCbCr之后轉(zhuǎn)換回來和原圖不符
這個(gè)是做JPEG圖像壓縮的時(shí)候遇到的一個(gè)問題,當(dāng)時(shí)的代碼是用C寫的但是結(jié)果不對,后來想到用matlab進(jìn)行驗(yàn)證結(jié)果發(fā)現(xiàn)通過公式轉(zhuǎn)換得到的圖是錯(cuò)的。
原理:BMP圖像壓縮為JPEG的第一步是將RGB色彩空間通過這個(gè)公式映射到Y(jié)CbCr空間上。
Y=0.299 R + 0.587 G + 0.114 B Cb =0.3313G + 0.5 B + 128 Cr = 0.5 R0.0813 B + 128 然后再進(jìn)行量化,DCT,編碼等等步驟。JPEG解壓時(shí)需要將YCbCr空間的圖像又轉(zhuǎn)化回來到RGB上。
R = Y + 1.402(Cr0.34414(Cb-128)128)
B = Y + 1.772(Cb-128)
但是通過書上給的公式和網(wǎng)上大部分公式卻發(fā)現(xiàn)根本轉(zhuǎn)化不會(huì)來。下面是寫的程序代碼以及測試得到的結(jié)果圖像。
clc,clear;Source=imread('hl.jpg');%讀入原始RGB圖像
figure(1);subplot(1,2,1);imshow(Source):title('original image');%顯示圖像 [r c d]=size(Source);%計(jì)算圖像大小 %------計(jì)算紅色分量并顯示分解圖------% R(:,:,1)=Source(:,:,1);R(:,:,2)=zeros(r,c);R(:,:,3)=zeros(r,c);R=uint8(R);whos;figure(2);subplot(1,3,1);imshow(R)title('Red Component');%-------計(jì)算綠色分量并顯示分解圖-------% G(:,:,2)=Source(:,:,2);G(:,:,1)=zeros(r,c);G(:,:,3)=zeros(r,c);G=uint8(G);figure(2);subplot(1,3,2);imshow(G)title('Green Component');%--------計(jì)算藍(lán)色分量并顯示分解圖-------% B(:,:,3)=Source(:,:,3);B(:,:,1)=zeros(r,c);B(:,:,2)=zeros(r,c);B=uint8(B);figure(2);subplot(1,3,3)imshow(B)title('Blue Component');%------------合成-------------% Comp(:,:,1)=R(:,:,1);Comp(:,:,2)=G(:,:,2);Comp(:,:,3)=B(:,:,3);figure(1);subplot(1,2,2);imshow(Comp):title('composition image');Y=0.229*R+0.587*G+0.114*B;Cb=0.5*B-0.1687*R-0.3313*G+128;Cr=0.5*R-0.4187*G-0.0813*B+128;red=Y+1.402*(Cr-128);green=Y-0.34414*(Cb-128)-0.71414*(Cr-128);blue=Y+1.772*(Cb-128);Comp2(:,:,1)=red(:,:,1);Comp2(:,:,2)=green(:,:,2);Comp2(:,:,3)=blue(:,:,3);figure(3);imshow(Comp2);title('RGB轉(zhuǎn)換為YCrCb后又轉(zhuǎn)換為RGB的圖像');RD=R(:,:,1)-red(:,:,1);GD=G(:,:,2)-green(:,:,2);BD=B(:,:,3)-blue(:,:,3);figure(4);subplot(1,3,1);imshow(RD);title('紅色分量差異');subplot(1,3,2);imshow(GD);title('綠色分量差異');subplot(1,3,3);imshow(BD);title('藍(lán)色分量差異');
然而可以通過figure(4)的圖像清楚看到R 和G分量轉(zhuǎn)換后恢復(fù) 與以前的差別很大。而且看了一下matlab自帶的rgb2ycbcr和ycbcr2rgb并且用了這兩個(gè)函數(shù)測試后圖像是一樣的。很是不解
實(shí)驗(yàn)得到的圖為: original imagecomposition image
將源圖像分為RGB三個(gè)部分。
Red ComponentGreen ComponentBlue Component
將源圖像的RGB分量轉(zhuǎn)換到Y(jié)CbCr上后又轉(zhuǎn)化為RGB得到的三個(gè)分量差異的圖。
紅色分量差異綠色分量差異藍(lán)色分量差異 公式轉(zhuǎn)換的y分量公式轉(zhuǎn)換的cb分量公式轉(zhuǎn)換的Cr分量matlab函數(shù)轉(zhuǎn)換的y分量matlab函數(shù)轉(zhuǎn)換的Cb分量matlab函數(shù)轉(zhuǎn)換的Cr分量
從最后的結(jié)果可以看出原圖轉(zhuǎn)換到Y(jié)CbCr空間之后又轉(zhuǎn)化回來得到的圖像與原圖不符….RGB轉(zhuǎn)換為YCrCb后又轉(zhuǎn)換為RGB的圖像
以上只是我自己用Matlab做過的部分問題,還有一些比如場聲源定位Music算法仿真,DES加密算法。神經(jīng)網(wǎng)絡(luò)濾波器等等,鑒于代碼量太大,就不再敖述。二 Simulink學(xué)習(xí)心得與編程實(shí)踐
SIMILINK模塊庫按功能進(jìn)行分類,包括以下8類子庫: Continuous(連續(xù)模塊)Discrete(離散模塊)
Function&Tables(函數(shù)和平臺(tái)模塊)Math(數(shù)學(xué)模塊)
Nonlinear(非線性模塊)
Signals&Systems(信號和系統(tǒng)模塊)Sinks(接收器模塊)Sources(輸入源模塊)
對于simulink來說其實(shí)沒什么好說的,需要什么就把什么拖到Model里面,連線之后設(shè)定參數(shù)。不是很麻煩的。但是重要的是對于系統(tǒng)的設(shè)計(jì)與仿真思想才是最重要的。而且里面的S-Function也是比較好的一個(gè)設(shè)計(jì),用S-Function可以自定義一些組件,使自己的仿真看上去更加清晰與精簡。
Simulink的工作方式:
(1)模塊內(nèi)的參數(shù)值首先會(huì)送到Matlab中進(jìn)行計(jì)算,得到的參數(shù)值會(huì)用來當(dāng)做以后需要調(diào)用的參數(shù)。
(2)模型系統(tǒng)中的各個(gè)層級將被平展開來,每一個(gè)子系統(tǒng)將被相應(yīng)的模塊所代替。(3)模塊按被處理的順序排列,此時(shí)代數(shù)回路結(jié)構(gòu)也被檢查出來,此種排列產(chǎn)生一個(gè)列表,以確保具有代數(shù)回路的模塊驅(qū)動(dòng)輸入的模塊被更新后才更新。
(4)檢查塊之間的鏈接,是否每一個(gè)塊的輸出端口與它所連接的模塊輸入端口有相同的信號寬度。
現(xiàn)在可以準(zhǔn)備執(zhí)行仿真操作,仿真時(shí)使用數(shù)值迭代求的的結(jié)果,每種數(shù)值積分模型提供的連續(xù)狀態(tài)的微分能力。
Simulink中的模型都是分級的,因此可以通過自上而下或者自下而上的方式建立模型。定義了一個(gè)模型以后,就可以通過Simulink的菜單或者在Matlab的Command中輸入命令進(jìn)行仿真。
關(guān)于學(xué)習(xí)的心得就寫到這里了,接下來是一些自己做的仿真。
1:觀察一個(gè)信號與積分之后的區(qū)別,目的是了解Scope的功能和用法。
仿真結(jié)果,左邊為原始信號,右邊為積分后的信號。
用XYGraph看到的對比
Rossler吸引子產(chǎn)生仿真:
Rossler 吸引子產(chǎn)生是服從下面這個(gè)方程的 1
212 331
仿真圖 ???(x?x)x??x?axx??b?x(x?c)xa?b?0.2c?5.7
仿真結(jié)果
LMS自適應(yīng)濾波器: 仿真圖:
遇到的問題
問題的解決辦法:
將Spectrum Scope中的buffer input打勾就行了。
仿真結(jié)果圖形:
1:Spectrum Scope的輸出圖形
2:Vector Scope的輸出結(jié)果
3:Scope的輸出結(jié)果圖形
第三篇:MATLAB與控制系統(tǒng)仿真實(shí)驗(yàn)報(bào)告
《MATLAB與控制系統(tǒng)仿真》
實(shí)驗(yàn)報(bào)告
2013-2014學(xué)年 第 1 學(xué)期
專業(yè): 班級: 學(xué)號: 姓名:
實(shí)驗(yàn)三 MATLAB圖形系統(tǒng)一、實(shí)驗(yàn)?zāi)康模?/p>
1.掌握繪制二維圖形的常用函數(shù)。2.掌握繪制三維圖形的常用函數(shù)。3.熟悉利用圖形對象進(jìn)行繪圖操作的方法。4.掌握繪制圖形的輔助操作。
二、實(shí)驗(yàn)原理:
1,二維數(shù)據(jù)曲線圖
(1)繪制單根二維曲線 plot(x,y);(2)繪制多根二維曲線 plot(x,y)當(dāng)x是向量,y是有一維與x同維的矩陣時(shí),則繪制多根不同顏色的曲線。當(dāng)x,y是同維矩陣時(shí),則以x,y對應(yīng)列元素為橫、縱坐標(biāo)分別繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。(3)含有多個(gè)輸入?yún)?shù)的plot函數(shù) plot(x1,y1,x2,y2,…,xn,yn)(4)具有兩個(gè)縱坐標(biāo)標(biāo)度的圖形 plotyy(x1,y1,x2,y2)2,圖形標(biāo)注與坐標(biāo)控制 1)title(圖形名稱); 2)xlabel(x軸說明)3)ylabel(y軸說明)4)text(x,y圖形說明)5)legend(圖例1,圖例2,…)
6)axis([xmin xmax ymin ymax zmin zmax])3, 圖形窗口的分割 subplot(m,n,p)4,三維曲線
plot3(x1,y1,z1,選項(xiàng)1,x2,y2,選項(xiàng)2,…,xn,yn,zn,選項(xiàng)n)5,三維曲面
mesh(x,y,z,c)與surf(x,y,z,c)。一般情況下,x,y,z是維數(shù)相同的矩陣。X,y是網(wǎng)格坐標(biāo)矩陣,z是網(wǎng)格點(diǎn)上的高度矩陣,c用于指定在不同高度下的顏色范圍。6,圖像處理
1)imread和imwrite函數(shù) 這兩個(gè)函數(shù)分別用于將圖象文件讀入matlab工作空間,以及將圖象數(shù)據(jù)和色圖數(shù)據(jù)一起寫入一定格式的圖象文件。
2)image和imagesc函數(shù) 這兩個(gè)函數(shù)用于圖象顯示。為了保證圖象的顯示效果,一般還應(yīng)使用colormap函數(shù)設(shè)置圖象色圖。
三、實(shí)驗(yàn)儀器和設(shè)備:
計(jì)算機(jī)一臺(tái)(帶有MATLAB6.5以上的軟件環(huán)境)。
四、預(yù)習(xí)要求:
1.復(fù)習(xí)二維與三維圖形的繪圖函數(shù)。2.復(fù)習(xí)圖形輔助操作。
五、實(shí)驗(yàn)內(nèi)容及步驟:
1,設(shè)y?[0.5?3sinx]cosx,在x=0~2π區(qū)間取101點(diǎn),繪制函數(shù)曲線。21?x
2,已知y1=x2,y2=cos(2x),y3=y1*y2,完成下列操作:
(1)在同一坐標(biāo)系下用不同的顏色和線型繪制三條曲線;
(2)分別用條形圖、階梯圖、桿圖和填充圖繪制三條曲線。
3,已知
?x??,?x?02?e y???1In(x?1?x2),x?0??2在-5<=x<=5區(qū)間繪制函數(shù)曲線。
4,繪制函數(shù)的曲面圖和等高線
z?cosxcosye?x2?y24
其中x的21個(gè)值均勻分布在[-5,5]范圍,y的31個(gè)值均勻分布在[0,10],要求使用subplot(2,1,1)和subplot(2,1,2)將產(chǎn)生的曲面圖和登高圖畫在同一個(gè)窗口上。
5.畫出函數(shù)
z?x2?y2?sin(xy)的曲面及等高線圖。
x2y2?1繪制平面曲線,并分析參數(shù)a對其形狀的影響。6.根據(jù)2?a25?a2
四、心得體會(huì):
通過這次實(shí)驗(yàn)我能熟練掌握二維和三維圖以及其他特殊圖形的制作,弄清楚了基本的圖形操作規(guī)則,大大加深了我對matlab的興趣。
實(shí)驗(yàn)二 MATLAB程序設(shè)計(jì)
一、實(shí)驗(yàn)?zāi)康?/p>
1.掌握利用if語句實(shí)現(xiàn)選擇結(jié)構(gòu)的方法。
2.掌握利用switch語句實(shí)現(xiàn)多分支選擇結(jié)構(gòu)的方法。3.掌握利用for語句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的方法。4.掌握利用while語句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的方法。
二、實(shí)驗(yàn)設(shè)備及條件
計(jì)算機(jī)一臺(tái)(帶有MATLAB6.5以上的軟件環(huán)境)。
三、實(shí)驗(yàn)內(nèi)容
1.編寫求解方程ax2?bx?c?0的根的函數(shù)(這個(gè)方程不一定為一元二次方程,因a、b、c的不同取值而定),這里應(yīng)根據(jù)a、b、c的不同取值分別處理,有輸入?yún)?shù)提示,當(dāng)a?0,b?0,c~?0時(shí)應(yīng)提示“為恒不等式!”。并輸入幾組典型值加以檢驗(yàn)。
clear,clc a=input('請輸入一個(gè)數(shù)a=');b=input('請輸入一個(gè)數(shù)b=');c=input('請輸入一個(gè)數(shù)c=');m=b^2-4*a*c;if a==0
if b==0
'為恒不等式'
end end
m=b^2-4*a*c;if m>0
x1=(-b+sqrt(m))/(2*a)
x2=(-b-sqrt(m))/(2*a)elseif m==0
x=(-b)/(2*a)else
'不存在正實(shí)根' end
2.輸入一個(gè)百分制成績,要求輸出成績等級A+、A、B、C、D、E。其中100分為A+,90分~99分為A,80分~89分為B,70分~79分為C,60分~69分為D,60分以下為E。
要求:(1)用switch語句實(shí)現(xiàn)。
(2)輸入百分制成績后要判斷該成績的合理性,對不合理的成績應(yīng)輸出出錯(cuò)信息。
clear,clc for k=1:10
a(k)={89+k};b(k)={79+k};
c(k)={69+k};d(k)={59+k};end A=cell(3,6);A(1,:)={'a','b','c','d','e','f'};A(2,:)={85,76,95,100,40,65};for k=1:6
switch A{2,k}
case 100
r='A+';
case a
r='A';
case b
r='B';
case c
r='C';
case d
r='D';
otherwise
r='E';
end
A(3,k)={r};end A A =
'a'
'b'
'c'
[85]
[76]
[95]
'B'
'C'
'A'
'd'
'e'
[100]
[40]
'A+'
'E'
'f' [65] 'D'
3.利用for循環(huán)語句編寫計(jì)算n!的函數(shù)程序,取n分別為-89、0、3、5、10驗(yàn)證其正確性(輸入n為負(fù)數(shù)時(shí)輸出出錯(cuò)信息)。
clear,clc n=input('請輸入一個(gè)正數(shù)n=');if n<0
'輸入錯(cuò)誤' elseif n==0
'n!=0' elseif n==1
'n!=1' else
y=1;
for i=1:1:n
y=y*i;
i=i+1;
end
y end 請輸入一個(gè)正數(shù)n=-89
ans =輸入錯(cuò)誤 請輸入一個(gè)正數(shù)n=0
ans =n!=0 請輸入一個(gè)正數(shù)n=1
ans =n!=1 請輸入一個(gè)正數(shù)n=3
y =6 請輸入一個(gè)正數(shù)n=10
y =3628800
四、實(shí)驗(yàn)心得體會(huì):
通過本次實(shí)驗(yàn)課,我能熟練運(yùn)用for循環(huán)語句,switch條件語句以及if條件語句的新用法,和在C中的區(qū)別。盡管如此,但是在實(shí)驗(yàn)中依然容易把for循環(huán)跟C語言中的for語句弄混,最后經(jīng)過不懈努力下,終于弄明白了兩者之間的差別,使我能更好的運(yùn)用這些指令語句。
第四篇:實(shí)驗(yàn)報(bào)告 5 Simulink仿真
實(shí)驗(yàn)五 Simulink仿真
(一)一、實(shí)驗(yàn)?zāi)康?/p>
1、熟悉Simulink仿真環(huán)境
2、了解Simulink基本操作
3、了解Simulink系統(tǒng)建?;痉椒?/p>
3、熟悉Simulink仿真系統(tǒng)參數(shù)設(shè)置和子系統(tǒng)封裝的基本方法
二、實(shí)驗(yàn)內(nèi)容
1、在matlab命令窗口中輸入simulink,觀察其模塊庫的構(gòu)成;
2、了解模塊庫中常用模塊的使用方法;
3、已知單位負(fù)反饋系統(tǒng)的開環(huán)傳遞函數(shù)為
G?100s?2s(s?1)(s?20)
建立系統(tǒng)的模型,輸入信號為單位階躍信號,用示波器觀察輸出。
4、建立一個(gè)包含Gain、Transfer Fcn、Sum、Step、Sine Wave、Zero-Pole、Integrator、Derivative等模塊構(gòu)成的自定義模塊庫Library1;
5、建立如圖7-12所示的雙閉環(huán)調(diào)速系統(tǒng)的Simulink的動(dòng)態(tài)結(jié)構(gòu)圖,再把電流負(fù)反饋內(nèi)環(huán)封裝為子系統(tǒng),建立動(dòng)態(tài)結(jié)構(gòu)圖。
三、實(shí)驗(yàn)結(jié)果及分析:
圖5-1
圖5-2
圖5-3
圖5-4雙閉環(huán)調(diào)速系統(tǒng)的Simulink的動(dòng)態(tài)結(jié)構(gòu)圖
圖5-5把電流負(fù)反饋內(nèi)環(huán)封裝為子系統(tǒng)的動(dòng)態(tài)結(jié)構(gòu)圖
雙擊Subsystem模塊,編輯反饋電流環(huán)Subsystem子系統(tǒng),如圖5-6所示:
圖5-6
分析:Simulink是Mathworks開發(fā)的MATLAB中的工具之一,主要功能是實(shí)現(xiàn)動(dòng)態(tài)系統(tǒng)建模、仿真與分析??梢栽趯?shí)際系統(tǒng)制作出來之前,預(yù)先對系統(tǒng)進(jìn)行仿真與分析,并可對系統(tǒng)做適當(dāng)?shù)倪m時(shí)修正或按照仿真的最佳效果來調(diào)試及整定控制系統(tǒng)的參數(shù),達(dá)到提高系統(tǒng)性能。減少涉及系統(tǒng)過程中的反復(fù)修改的時(shí)間、實(shí)現(xiàn)高效率地開發(fā)系統(tǒng)的目標(biāo)。Simulink提供了建模、分析和仿真各種動(dòng)態(tài)系統(tǒng)的交互環(huán)境,包括連續(xù)系統(tǒng)、離散系統(tǒng)和混雜系統(tǒng),還提供了采用鼠標(biāo)拖放的方法建立系統(tǒng)框圖模型的圖形交互界面。
第五篇:建模與仿真實(shí)驗(yàn)報(bào)告
重 重 慶 慶
大 大 學(xué) 學(xué)
學(xué) 學(xué) 生 生
實(shí) 實(shí) 驗(yàn) 報(bào) 告 實(shí)驗(yàn)課程名稱
物流系統(tǒng)建模與仿真
開課實(shí)驗(yàn)室
物流工程實(shí)驗(yàn)室
學(xué) 學(xué)
院
自動(dòng)化
年級
專業(yè)班
程 物流工程 2 班
學(xué) 學(xué) 生 生
姓 姓 名
段競男
學(xué)
號
201 24 912
開 開 課 時(shí) 間
2014
至15
學(xué)年第 二
學(xué) 學(xué)期 期 總 總
成 成 績 績
教師簽名
自動(dòng)化 學(xué)院制 《 物流系統(tǒng)建模與仿真 》實(shí)驗(yàn)報(bào)告
開課實(shí)驗(yàn)室:
****年**月**日 日 學(xué)院 自動(dòng)化 年級、專業(yè)、班 12級物流工程2班 姓名 段競男 成績
課程 名稱 物流系統(tǒng)建模與仿真 實(shí)驗(yàn)項(xiàng)目 名
稱 產(chǎn)品測試工藝仿真與分析實(shí)驗(yàn) 指導(dǎo)教師 張瑩瑩 教師評語
成績
一、實(shí)驗(yàn)?zāi)康?通過建立單存放區(qū)域、單處理工作臺(tái)得簡單模型,了解 5 個(gè)基本建模步驟。學(xué)習(xí)使用統(tǒng)計(jì)分析工具.二、實(shí)驗(yàn)原理 某工廠車間對三類產(chǎn)品進(jìn)行檢驗(yàn)。這三種類型得產(chǎn)品按照一定得時(shí)間間隔方式到達(dá)。隨后,不同類型得產(chǎn)品被分別送往三臺(tái)不同得檢測機(jī)進(jìn)行檢測,每臺(tái)檢測機(jī)只檢測一種特定得產(chǎn)品類型.其中,類型 1 得產(chǎn)品到第一臺(tái)檢測機(jī)檢測,類型2得產(chǎn)品到第二臺(tái)檢測機(jī)檢測,類型 3 得產(chǎn)品到第三臺(tái)檢測機(jī)檢測。產(chǎn)品檢測完畢后,由傳送帶送往貨架區(qū),再由叉車送到相應(yīng)得貨架上存放。類型 1 得產(chǎn)品存放在第 2 個(gè)貨架上,類型 2 得產(chǎn)品存放在第 3 個(gè)貨架上,類型 3 得產(chǎn)品存放在第 1 個(gè)貨架上。
三、使用儀器、材料
一臺(tái)PC機(jī),flexsim軟件 四、實(shí)驗(yàn)步驟
1)創(chuàng)建模型布局
使用鼠標(biāo)將需要得對象從對象庫中拖放到正視圖窗口中,根據(jù)需要使用鼠標(biāo)改變對象位置、大小與轉(zhuǎn)角。
2)連接端口
按下鍵盤上得“A“鍵,用鼠標(biāo)拖放在對象間建立輸出端口-輸入端口連接;方向?yàn)閺牧鞒鰧?shí)體得對象到流入實(shí)體得對象;模型中得對象發(fā)出與接收實(shí)體需要這種連接。
3)編輯外觀、設(shè)置對象行為
(1)參數(shù)窗口(Parameters Window)
雙擊對象(或在右鍵菜單選擇 Parameters)
;用于對各種對象得自身特性得設(shè)置、編輯。
(2)屬性窗口(Properties Window)
右鍵單擊對象,在彈出菜單中選擇 Properties;用于編輯與查瞧所有對象都擁有得一般性信息。
(3)模型樹視圖(Model Tree View)模型中得所有對象都在層級式樹結(jié)構(gòu)中列出;包含對象得底層數(shù)據(jù)結(jié)構(gòu);所有得信息都包含在此樹結(jié)構(gòu)中。
4)重置運(yùn)行
(1)重置模型并運(yùn)行
(2)控制仿真速度(不會(huì)影響仿真結(jié)果)
檢測機(jī)器 1 檢測機(jī)器 2 檢測機(jī)器 3 傳送帶 傳送帶 傳送帶 貨架 1 貨架 2 貨架 3 產(chǎn)品 1 產(chǎn)品 2 產(chǎn)品 3
(3)設(shè)置仿真結(jié)束時(shí)間
5)觀察結(jié)果
(1)使用“Statistics”(統(tǒng)計(jì))菜單中得 Reports and Statistics(報(bào)告與統(tǒng)計(jì))生成所需得各項(xiàng)數(shù)據(jù)統(tǒng)計(jì)報(bào)告.(2)其她報(bào)告功能包括:對象屬性窗口得統(tǒng)計(jì)項(xiàng);記錄器對象;可視化工具對象;通過觸發(fā)器記錄數(shù)據(jù)到全局表。
五、實(shí)驗(yàn)過程原始記錄((數(shù)據(jù)、圖表、計(jì)算等))
1、運(yùn)行結(jié)果得平面視圖:
2、運(yùn)行結(jié)果得立體視圖
3、運(yùn)行結(jié)果得暫存區(qū)數(shù)據(jù)分析結(jié)果圖:
第一個(gè)暫存區(qū)
第二個(gè)暫存區(qū) 由報(bào)表分析可知 5 次實(shí)驗(yàn)中,第一個(gè)暫存區(qū)得平均等待時(shí)間為 11、46,而第二個(gè)暫存區(qū)得平均等待時(shí)間為13、02,略大于第一個(gè)暫存區(qū),由此可見,第二個(gè)暫存區(qū)得工作效率基本上由第一個(gè)暫存區(qū)決定。
4、運(yùn)行結(jié)果三個(gè)檢測臺(tái)得數(shù)據(jù)分析結(jié)果圖,三個(gè)檢測臺(tái)得 state餅圖:
(1)處理器一:
由實(shí)驗(yàn)結(jié)果分析可得,處理器一只有53%得時(shí)間處于工作狀態(tài),有32、3%得時(shí)間就是處于閑置狀態(tài),并且該處理器得準(zhǔn)備時(shí)間較長,占總時(shí)間得 14、7%,這些數(shù)據(jù)表明該處理器得運(yùn)行速度完全能滿足,甚至超過系統(tǒng)得要求,可以適當(dāng)?shù)眠x擇更處理速度慢一點(diǎn)得處理器來降低系統(tǒng)成本。
(2)處理器二:
由實(shí)驗(yàn)結(jié)果分析可得,處理器二只有 16、9%得時(shí)間處于工作狀態(tài),有66%得時(shí)間就是處于閑置狀態(tài),并且有 17、1%得時(shí)間處于準(zhǔn)備時(shí)間,以上數(shù)據(jù)說明處理器二閑置時(shí)間過長,工作效率低,不能很好地配合物料二得到達(dá)速度。
(3)處理器三
由實(shí)驗(yàn)結(jié)果分析可得,處理器三得只有16、9%得時(shí)間處于工作狀態(tài),有 66、1%得時(shí)間就是處于閑置狀態(tài),并且有 16、9%得時(shí)間處于準(zhǔn)備時(shí)間,以上數(shù)據(jù)說明處理器三得工作效率低,不能很好地配合物料三得到達(dá)速度,可以適當(dāng)?shù)媒档吞幚砥魅锰幚硭俣取?/p>
六、實(shí)驗(yàn)結(jié)果及分析
1))對得到得數(shù)據(jù)做簡單分析,提出改進(jìn)措施。
答:通過對實(shí)驗(yàn)數(shù)據(jù)分析,發(fā)現(xiàn)現(xiàn)有得機(jī)器設(shè)備得設(shè)置基本能滿足系統(tǒng)得要求,但工作效率低,大大浪費(fèi)了設(shè)備得工作能力,可以適當(dāng)?shù)锰岣呶锪系玫竭_(dá)速度,或者降低三臺(tái)處理器得處理速度.2 2)
討論:本實(shí)驗(yàn)根據(jù)三個(gè)處理器得統(tǒng)計(jì)信息,通過狀態(tài)圖分析各處理器得工作狀態(tài),通過暫存區(qū)材料得平均等待時(shí)間,分析這個(gè)檢測流程得效率如何?就是否存在瓶頸?如果存在,怎樣才能改善整個(gè)系統(tǒng)得績效呢? 答:由報(bào)表分析可知5次實(shí)驗(yàn)中,第一個(gè)暫存區(qū)得平均等待時(shí)間為 11、46,而第二個(gè)暫存區(qū)得平
均等待時(shí)間為 13、02,略大于第一個(gè)暫存區(qū),由此可見,第二個(gè)暫存區(qū)得工作效率基本上由第一個(gè)暫存區(qū)決定。處理器一只有53%得時(shí)間處于工作狀態(tài),有 32、3%得時(shí)間就是處于閑置狀態(tài),并且該處理器得準(zhǔn)備時(shí)間較長,占總時(shí)間得14、7%,這些數(shù)據(jù)表明該處理器得運(yùn)行速度完全能滿足,甚至超過系統(tǒng)得要求,可以適當(dāng)?shù)眠x擇更處理速度慢一點(diǎn)得處理器來降低系統(tǒng)成本。由實(shí)驗(yàn)結(jié)果分析可得,處理器二只有 16、9%得時(shí)間處于工作狀態(tài),有 66%得時(shí)間就是處于閑置狀態(tài),并且有 17、1%得時(shí)間處于準(zhǔn)備時(shí)間,以上數(shù)據(jù)說明處理器二閑置時(shí)間過長,工作效率低,不能很好地配合物料二得到達(dá)速度。由實(shí)驗(yàn)結(jié)果分析可得,處理器三得只有 16、9%得時(shí)間處于工作狀態(tài),有 66、1%得時(shí)間就是處于閑置狀態(tài),并且有16、9%得時(shí)間處于準(zhǔn)備時(shí)間,以上數(shù)據(jù)說明處理器三得工作效率低,不能很好地配合物料三得到達(dá)速度,可以適當(dāng)?shù)媒档吞幚砥魅锰幚硭俣?。整體來瞧,整個(gè)檢測流程效率不高,但就是并不存在瓶頸,能夠達(dá)到系統(tǒng)得要求,但工作效率低,大大浪費(fèi)了設(shè)備得工作能力,可以適當(dāng)?shù)锰岣呶锪系玫竭_(dá)速度,或者降低三臺(tái)處理器得處理速度.《物流系統(tǒng)建模與仿真》實(shí)驗(yàn)報(bào)告
開 :
開 課 實(shí) 驗(yàn) 室 :
年 年
月 月
日 日 學(xué)院 自動(dòng)化 年級、專業(yè)、班 12級物流工程2班 姓名 段競男 成績
課程 名稱 物流系統(tǒng)建模與仿真 實(shí)驗(yàn)項(xiàng)目 名
稱 多產(chǎn)品多階段制造系統(tǒng)仿真與分析實(shí)驗(yàn) 指導(dǎo)教師 張瑩瑩 教師評語
成績
一、實(shí)驗(yàn)?zāi)康?假定在保持車間逐日連續(xù)工作得條件下,對系統(tǒng)進(jìn)行 365 天得仿真運(yùn)行(每天按8 小時(shí)計(jì)算),計(jì)算每組機(jī)器隊(duì)列中得平均產(chǎn)品數(shù)以及平均等待時(shí)間。通過仿真運(yùn)行,找出影響系統(tǒng)得瓶頸因素,并對模型加以改進(jìn)。
二、實(shí)驗(yàn)原理 某制造車間由 5 組機(jī)器組成,第 1,2,3,4,5 組機(jī)器分別有3,2,4,3,1 臺(tái)相同得機(jī)器。這個(gè)車間需要加工三種原料,三種原料分別要求完成4、3 與5 道工序,而每道工序必須在指定得機(jī)器組上處理,按照事先規(guī)定好得工藝順序進(jìn)行。
概念模型參考如下:
三、使用儀器、材料
一臺(tái)PC 機(jī),flexsim 軟件 四、實(shí)驗(yàn)步驟
1)創(chuàng)建模型布局 使用鼠標(biāo)將需要得對象從對象庫中拖放到正視圖窗口中,根據(jù)需要使用鼠標(biāo)改變對象位置、大小與轉(zhuǎn)角。
2)連接端口 按下鍵盤上得“A”鍵,用鼠標(biāo)拖放在對象間建立輸出端口—輸入端口連接;方向?yàn)閺牧鞒鰧?shí)體得對象到流入實(shí)體得對象;模型中得對象發(fā)出與接收實(shí)體需要這種連接。本實(shí)驗(yàn)此步驟為關(guān)鍵環(huán)節(jié),連接線較復(fù)雜,故連接端口時(shí)應(yīng)注意保持清晰思路.機(jī)器 1 機(jī)器 1 機(jī)器 1 暫存區(qū) 機(jī)器 2 機(jī)器 2 暫存區(qū) 機(jī)器 3 機(jī)器 3 機(jī)器 3 機(jī)器 3
暫存區(qū) 機(jī)器 4 機(jī)器 4 機(jī)器 4 暫存區(qū) 機(jī)器 5
暫存區(qū) 1 2 3
3)定義對象參數(shù)(1)定義Source 在模型中,共有 3 個(gè)Source 實(shí)體,每個(gè)Source 對應(yīng)一類原料,也就就是說,一個(gè) Source 生成一類原料.我們需要設(shè)置每個(gè) Source 實(shí)體,使得每類原料得到達(dá)間隔時(shí)間滿足系統(tǒng)得要求。
(2)分別按照要求定義機(jī)器組1、機(jī)器組 2、機(jī)器組 3、機(jī)器組 4、機(jī)器組 5、暫存區(qū)參數(shù)。
4)模型運(yùn)行
(1)設(shè)置 Experimenter
(2)重置模型并運(yùn)行 5)觀察結(jié)果 仿真進(jìn)行過程中,可以瞧到紅、黃、藍(lán)三種不同顏色得原料從系統(tǒng)中流過,經(jīng)過不同機(jī)器組得加工,最后離開系統(tǒng)。
仿真運(yùn)行到175200 單位時(shí)間得時(shí)候,自動(dòng)停止。
五、實(shí)驗(yàn)過程原始記錄((數(shù)據(jù)、圖表、計(jì)算等)
1、運(yùn)行結(jié)果得平面視圖: 2、提供運(yùn)行結(jié)果得立體視圖:
3、提供運(yùn)行結(jié)果五個(gè)暫存區(qū)數(shù)據(jù)分析結(jié)果圖
由數(shù)據(jù)圖可知第一個(gè)暫存區(qū)得為 物料輸入量為 888 8,平均數(shù)量為 0、63, 最大等待時(shí)間達(dá)到了 241、、94,平均等待時(shí)間為 12、5,由此可見暫存區(qū)一得貨物 狀態(tài)較為空閑,不就是 系統(tǒng)得瓶頸。
為 由數(shù)據(jù)圖可知第二個(gè)暫存區(qū)得物料輸入量為 1117 3,平均容量為 1 967、0 4, 最大等待時(shí)間為 6301 17、14 4為,平均等待時(shí)間為 303 3 88、42, 由此可見暫存區(qū)二得貨物周轉(zhuǎn)率較高, 處于比較忙碌得狀態(tài),非常 容易成為系統(tǒng)得瓶頸。
由數(shù)據(jù)圖可知第三個(gè)暫存區(qū)得物料輸入量為5 58 35,平均數(shù)量為 0、11,最大等待時(shí)間達(dá)到了 12 24、25,平均等待時(shí)間為 3、40, 由此可見暫存區(qū)三得效率較高,較為適應(yīng)系統(tǒng)得要求。
為 由數(shù)據(jù)圖可知第四個(gè)暫存區(qū)得物料輸入量為 3604,平均數(shù)量為 5、62 2,最大等待時(shí)間為1 164 2、37,平均等待時(shí)間為 273、55,由此可見暫存區(qū)四貨物周轉(zhuǎn)率高,并且運(yùn)行效率高, 能夠適應(yīng)系統(tǒng)得要求,安排合理。
由數(shù)據(jù)圖可知第五 個(gè)暫存區(qū)得物料為 輸入量為 7 208,平均數(shù)量為2 243、75, 最大等待時(shí)間為 1 0936、85,平均等待時(shí)間為 5956, 由此可見暫存區(qū)五 容易造成貨物得堆積與等待,不 能夠適應(yīng)系統(tǒng)得要求,安排 不夠 合理, 為該系統(tǒng)得瓶頸.六、實(shí)驗(yàn)結(jié)果及分析
對得到得數(shù)據(jù)做簡單分析,提出改進(jìn)措施:
暫存區(qū) 1 2 3 4 5平均等待時(shí)間 12、50 30388、42 3、40 273、55 5956
平均數(shù)量 0、63 1967、04 0、11 5、62 243、75 由數(shù)據(jù)圖可知第一個(gè)暫存區(qū)得物料輸入量為 8888,平均數(shù)量為 0、63,最大等待時(shí)間達(dá)到了241、94,平均等待時(shí)間為12、5,由此可見暫存區(qū)一得貨物狀態(tài)較為空閑,不就是系統(tǒng)得瓶頸.由數(shù)據(jù)圖可知第二個(gè)暫存區(qū)得物料輸入量為11173,平均容量為 1967、04,最大等待時(shí)間為 63017、14,平均等待時(shí)間為 30388、42,由此可見暫存區(qū)二得貨物周轉(zhuǎn)率較高,處于比較忙碌得狀態(tài),非常容易成為系統(tǒng)得瓶頸.由數(shù)據(jù)圖可知第三個(gè)暫存區(qū)得物料輸入量為 5835,平均數(shù)量為0、11,最大等待時(shí)間達(dá)到了 124、25,平均等待時(shí)間為 3、40,由此可見暫存區(qū)三得效率較高,較為適應(yīng)系統(tǒng)得要求。由數(shù)據(jù)圖可知第四個(gè)暫存區(qū)得物料輸入量為 3604,平均數(shù)量為 5、62,最大等待時(shí)間為 1642、37,平均等待時(shí)間為 273、55,由此可見暫存區(qū)四貨物周轉(zhuǎn)率高,并且運(yùn)行效率高,能夠適應(yīng)系
統(tǒng)得要求,安排合理.由數(shù)據(jù)圖可知第五個(gè)暫存區(qū)得物料輸入量為 7208,平均數(shù)量為 243、75,最大等待時(shí)間為 10936、85,平均等待時(shí)間為 5956,由此可見暫存區(qū)五容易造成貨物得堆積與等待,不能夠適應(yīng)系統(tǒng)得要求,安排不夠合理,為該系統(tǒng)得瓶頸.由數(shù)據(jù)分析可知暫存區(qū)二、五就是系統(tǒng)得瓶頸所在,應(yīng)該提高暫存區(qū)二、暫存區(qū)五得處理前一道工序速度,即增加工序一與工序二得機(jī)器數(shù)量,以此來提高工序 1、2 得處理速度,或者調(diào)整物料加工得順序,從而提高整個(gè)系統(tǒng)得運(yùn)營效率。
《物流系統(tǒng)建模與仿真》實(shí)驗(yàn)報(bào)告
開課實(shí)驗(yàn)室:
****年**月**日 日 學(xué)院 自動(dòng)化 年級、專業(yè)、班 12 級物流工程 2班 姓名段競男 成績
課程 名稱 物流系統(tǒng)建模與仿真 實(shí)驗(yàn)項(xiàng)目 名
稱 混合流水線系統(tǒng)仿真與分析實(shí)驗(yàn) 指導(dǎo)教師 張瑩瑩 教師評語
成績
一、實(shí)驗(yàn)?zāi)康?主要掌握單臺(tái)處理器在處理多種產(chǎn)品時(shí)對于處理順序以及時(shí)間參數(shù)得設(shè)置.熟悉先進(jìn)先出這種存儲(chǔ)模式得控制方法.二、實(shí)驗(yàn)原理 多對象流水線生產(chǎn)有兩種基本形式。一種就是可變流水線,其特點(diǎn)就是:在計(jì)劃期內(nèi),按照一定得間隔期,成批輪番生產(chǎn)多種產(chǎn)品;在間隔期內(nèi),只生產(chǎn)一種產(chǎn)品,在完成規(guī)定得批量后,轉(zhuǎn)生產(chǎn)另一種產(chǎn)品。另一種就是混合流水線,其特點(diǎn)就是:在同一時(shí)間內(nèi),流水線上混合生產(chǎn)多種產(chǎn)品。按固定得混合產(chǎn)品組組織生產(chǎn),即將不同得產(chǎn)品按固定得比例與生產(chǎn)順序編成產(chǎn)品組。一個(gè)組一個(gè)組地在流水線上進(jìn)行生產(chǎn)。
三、使用儀器、材料
PC 機(jī)一臺(tái),flexsim 軟件 四、實(shí)驗(yàn)步驟
1)創(chuàng)建模型布局
從左邊得實(shí)體庫中依次拖拽出所有實(shí)體(一個(gè) Source,5個(gè) Queue,12個(gè) Processor,一個(gè)Conveyor,一個(gè)Sink)放在右邊模型視圖中,調(diào)整至適當(dāng)?shù)梦恢?如圖所示:
2)連接端口
根據(jù)流動(dòng)實(shí)體得路徑來連接不同實(shí)體得端口.按住鍵盤上得“A”鍵,與前面章節(jié)得操作一樣,按上圖中得箭頭所指向依次連接各個(gè)實(shí)體.分別(注意方向)從 Source 連到 GeneralQueue,GeneralQueue 連到GeneralMachine1,GeneralQueue連到 GeneralMachine2, GeneralQueue 連到 GeneralMachine3,GeneralMachine1 連到 DrillingQueue,GeneralMachine2 連到 DrillingQueue,GeneralMachine3 連到 DrillingQueue,DrillingQueue 連到 DrillingMachine1,DrillingQueue連到 DrillingMachine2,DrillingQueue連到DrillingMachine3,DrillingMachine1連到MillingQueue,DrillingMachine2 連到 MillingQueue,DrillingMachine3 連到MillingQueue,MillingQueue 連到 MillingMachine1,MillingQueue連到MillingMachine2,MillingMachine1 連到 GrindingQueue,MillingMachine2連到 GrindingQueue,GrindingQueue連到 GrindingMachine1,GrindingQueue 連到 GrindingMachine2,GrindingQueue 連到GrindingMachine3,GrindingMachine1 連到 T
estingQueue,GrindingMachine2連到TestingQueue,GrindingMachine3連到TestingQueue,TestingQueue 連到 TestingMachine,TestingMachine 連到 Conveyor,Conveyor 連到Sink。完成后,如圖所示:
3)定義對象參數(shù)
分別按照要求定義 Source、各機(jī)器工位、暫存區(qū)參數(shù)。
4)模型運(yùn)行
(1)重置模型并運(yùn)行(2)加快仿真模型運(yùn)行速度 如果我們只就是關(guān)心仿真結(jié)果,而對仿真得過程不感興趣,則我們可以加快仿真速度,迅速得到結(jié)果.圖 3、1仿真速度控制比例條 如圖 3、1,鼠標(biāo)左鍵一直按住比例尺,移動(dòng)到合適得比例位置,以便迅速得到結(jié)果。
5)觀察結(jié)果
仿真進(jìn)行過程中,可以瞧到紅、綠、藍(lán)三種不同顏色得產(chǎn)品從系統(tǒng)中流過,經(jīng)過不同機(jī)器組得加工,最后離開系統(tǒng),如下圖:
6)結(jié)果分析
當(dāng)仿真運(yùn)行自動(dòng)結(jié)束后,我們打開 Flexsim得工具欄里得 Stat(yī)s 目錄下得Standard Report 選項(xiàng),如圖所示:
我們通過來增加、以及來減少需要輸出得報(bào)告內(nèi)容,使得報(bào)告包含以上所列得 5 個(gè)部分得數(shù)據(jù):idle就是空閑時(shí)間,processing 就是工作時(shí)間,blocked就是產(chǎn)品在設(shè)備等待時(shí)間,stats_staytimeavg就是平均停留時(shí)間,stats_input 就是輸入產(chǎn)品數(shù),stats_output 就是輸出產(chǎn)品數(shù),設(shè)置完成后,如圖所示:
點(diǎn)擊后生成如圖所示表格:
從上表中我們可以很方便得瞧到總運(yùn)行時(shí)間就是 7728min,以及各個(gè)設(shè)備得輸入輸出產(chǎn)品數(shù),處理時(shí)間等信息.錄記始原程過驗(yàn)實(shí)、五? 五、實(shí)驗(yàn)過程原始記錄((數(shù)據(jù)、圖表、計(jì)算等)
1、運(yùn)行結(jié)果得二維平面圖
2、運(yùn)行結(jié)果得三維立體圖
4、投產(chǎn)按照 1、2、3 得順序進(jìn)行得仿真報(bào)告 Flexsim Summary Report Time: 7728
Object Class stats_output stats_staytimemin stats_input idle blocked processing
Source1 Source 1700 0 0 0 7720 0 Queue2 Queue 1700 0 1700 0 0 0 Processor3 Processor 500 4 500 594 0 2400 Processor4 Processor 600 4 600 297 0 2700 Processor5 Processor 600 4 600 297 0 2700 ConCon17010 1700 0 0
veyor6 veyor 0 0 Processor7 Processor 600 4 600 203 0 2800 Processor8 Processor 600 4 600 203 0 2800 Processor9 Processor 500 4 500 599 0 2400 Queue10 Queue 1700 0 1700 0 0 0 QueQue1700 1700 0 0
ue11 ue 0 0 Processor12 Processor 850 3 850 10 0 3050 Processor13 Processor 850 3 850 11 0 3050 Processor14 Processor 567 4 567 796 0 2268 ProcessorProcessor 567 4 567 797 0 2268 Processor16 Processor 566 4 566 798 0 2264 Queue17 Queue 1700 0 1700 0 0 0 Queue18 Queue 1700 0 1700 0 0 0 Processor19 Processor 1700 1 1700 18 0 7700 Sink20 Sink 0 0 1700 0 0 0 由報(bào)表分析可知,按照 1 1、2 2、3得順序投產(chǎn)得總得處理時(shí)間為77 7 28 8。
投產(chǎn)按照1、3、2 得順序進(jìn)行得仿真報(bào)告:
Flexsim Summary Report Time: 7728
Object Class stats_input stats_output stats_staytimeavg idle processing blocked Source1 Source 0 1700 0 0 0 7720 Queue2 Queue 1700 1700 4、588235 0 0 0 ProcProc502 502 4、79586 2408 0
essor3 essor 6813 Processor4 Processor 600 600 4、5 298 2700 0 Processor5 Processor 598 598 4、501672 306 2692 0 Queue6 Queue 1700 1700 0、411765 0 0 0 Processor7 Processor 600 600 4、666667 203 2800 0 PrPr60604、20280
ocessor8 ocessor 0 0 666667 3 00 Processor9 Processor 500 500 4、8 599 2400 0 Queue10 Queue 1700 1700 28、32294 0 0 0 Processor11 Processor 850 850 3、588235 10 3050 0 ProcessorProcessor 850 850 3、588235 11 3050 0 Queue13 Queue 1700 1700 0 0 0 0 Processor14 Processor 567 567 4 796 2268 0 Processor15 Processor 567 567 4 797 2268 0 Processor16 Processor 566 566 4 798 2264 0 QueuQueu1700 1700 23290 0 0
e17 e、648 Conveyor19 Conveyor 1700 1700 10 0 0 0 Sink20 Sink 1700 0 0 0 0 0 Processor21 Processor 1700 1700 4、529412 18 7700 0 由報(bào)表分析可知,按照 1、3、2 得順序投產(chǎn)得總得處理時(shí)間為 7728.投產(chǎn)按照 2、1、3 得順序進(jìn)行得仿真報(bào)告:
Flexsim Summary Report Time:
7725 Object Class stats_input stats_output stats_staytimeavg idle processing blocked Source1 Source 0 1700 0 0 0 7720 Queue2 Queue 1700 1700 4、588235 0 0 0 Processor3 Processor 503 503 4、795229 588 2412 0 Processor4 Processor 600 600 4、5 299 2700 0 Processor5 Processor 597 597 4、502513 311 2688 0
Queue6 Queue 1700 1700 0、408824 0 0 0 Processor7 Processor 600 600 4、666667 205 2800 0 Processor8 Processor 600 600 4、666667 205 2800 0 Processor9 Processor 500 500 4、8 605 2400 0 Queue10 Queue 1700 1700 28、16529 0 0 0 Processor11 Processor 851 851 3、587544 11 3053 0 Processor12 Processor 849 849 3、588928 15 3047 0 Queue13 Queue 1700 1700 0 0 0 0 Processor14 Processor 567 567 4 796 2268 0 Processor15 Processor 567 567 4 798 2268 0 Processor16 Processor 566 566 4 804 2264 0 Queue17 Queue 1700 1700 2317、985 0 0 0 Conveyor19 Conveyor 1700 1700 10 0 0 0 Sink20 Sink 1700 0 0 0 0 0 Processor21 Processor 1700 1700 4、529412 15 7700 0 由報(bào)表分析可知,按照 2 2、1、3得順序投產(chǎn)得總得處理時(shí)間為 772 5.析分及果結(jié)驗(yàn)實(shí)、六? 六、實(shí)驗(yàn)結(jié)果及分析1)
實(shí)驗(yàn)結(jié)果: :由以上報(bào)表分析可知 6 種投產(chǎn)順序中,按照 2、1、3 得順序投產(chǎn)得總得處理時(shí)間最短為7725,故以這種投產(chǎn)順序作為最佳投產(chǎn)方式。
2)討論: :系統(tǒng)還存在很多可以改善得地方,請指出有哪些地方就是有待改善得,理由就是什么.答:可以適當(dāng)?shù)媒档吞幚砥鞯眠\(yùn)行速度,除了第三組得處理器空閑時(shí)間較短外,其余各組處理器得空閑時(shí)間過長。尤其就是,其中暫存區(qū) 17 得平均等待時(shí)間過長,可以適當(dāng)?shù)谜{(diào)整運(yùn)行速度,以提高整個(gè)系統(tǒng)得運(yùn)行效率。
實(shí)驗(yàn)報(bào)告打印格式說明 1.標(biāo)題:三號加粗黑體 2.開課實(shí)驗(yàn)室:5 號加粗宋體 3.表中內(nèi)容:(1)標(biāo)題:5號黑體(2)正文:5 號宋體
4.紙張:16 開(20cm×26.5cm)5.版芯 上距:2cm 下距:2cm 左距:2.8cm 右距:2.8cm 說明: 1、“年級專業(yè)班”可填寫為“00 電子 1 班",表示 2000 級電子工程專業(yè)第1班.2、實(shí)驗(yàn)成績可按五級記分制(即優(yōu)、良、中、及格、不及格),或者百分制記載,若需要將實(shí)驗(yàn)成績加入對應(yīng)課程總成績得,則五級記分應(yīng)轉(zhuǎn)換為百分制。