Cum apelam simulink din matlab video tutorial

Add comment July 16, 2009

Video tutorial 40minute simulink pas cu pas – notiuni avansate simulink

In acest video tutorial veti invata despre: crearea sistemelor dinamice, crearea sistemelor liniare, solvere, bloc-uri simulink discrete, creare de subsisteme intr-un model (Folosirea componentei Subsystem) crearea unei masti pt.un subsistem , tipuri de simulare si multe altele.

Aceste lucruri nu au fost explicate pe blogul meu si m-am gandit sa impart cu voi acest video tutorial care cuprinde multe lucruri pe care inca nu le-am tratat.

Tipul este din azerbaidjan sau in orice caz din zona Caucazului si explica f.bine.

Enjoy!

http://www.mathworks.com/demos/getting_started_with_simulink_demo_video.html

1 comment July 16, 2009

Functia floor si exponentiala unei valori

Functia floor rotunjeste catre cel mai apropiat intreg spre – infinit.

In modelul de mai jos avem prezentate 2 exemple pt. functia floor pt. o valoare , respectiv exponentiala pt.o valoare calculata si afisata intr-o componenta Display:

Add comment July 16, 2009

Esantionarea unui semnal sinusoidal

Vom folosi urmatoarele componente in modelul nostru:

- 1 componenta SineWave din zona Sources

- 1 componenta Random Number din zona Sources

- 1 componenta sum din zona Math Operations

- 1 componenta Zero-Order Hold din zona Discrete ( componenta folosita pentru esantionarea semnalului sinusoidal din componenta SineWave)

- 1 componenta Tapped Delay din zona Discrete

- 1 componenta Matlab Function din zona User- Defined Functions

- 1 componenta Fcn din zona User- Defined Functions

- 1 componenta Scope din zona Sinks

- 1 componenta Clock din zona Sources

- 1 componenta XYGraph din zona Sinks

Modelul va arata in felul urmator:

Obs. Componentele se leaga intre ele prin tinerea apasata a tastei CTRL si click cu mouse-ul pe prima componenta si a doua componenta iar intre acestea se va face legatura.

Legatura trebuie sa apara cu culoarea neagra in caz contrar (daca apare culoarea rosie) exista o eroare de legatura intre 2 blocuri din schema mare realizata in simulink.

Pentru filtrarea semnalului sinusoidal reprezentat de componenta SineWave vom folosi o functie matlab reprezentata de componenta MatlabFunction din model functie ce are codul sursa asociat si care se numeste Methode1.m:


function signal_out = Methode1(signal)

persistent signal_filtre;
signal_filtre = zeros(300,1);

X = zeros(300,3);
t = 1:1:300;
nb_t = length(t);
u = 1:1:300;
u = u';
x0 = ones(300,1);
x1 = u;
x2 = u.*x1;
X = [x0 x1 x2];
teta = [0;0;0];
P = [1000 0 0;0 1000 0;0 0 1000];
i = 1;

while(i<301)
x = [x0(i);x1(i);x2(i)];
K = P*x*inv(1+x'*P*x);
teta = teta+K*(signal(i)-x'*teta);
P = P-K*x'*P;
i = i+1;
end

signal_filtre = X*teta;

signal_out=signal_filtre;

Add comment July 16, 2009

Integrarea unui semnal sinusoidal

Pentru aceasta vom folosi pe modelul nostru o componenta Sine Wave din categoria Sources (ce reprezinta semnalul nostru sinusoidal cu parametri specificati) , o componenta interator din zona Continuous si o componenta (de afisare de data aceasta nu a unei valori cum era Display din zona Sinks) , ci vom folosi componenta de afisare a unui grafic numita Scope (tot din categoria Sinks):

Modelul este prezentat in figura de mai jos in urma apasarii butonului Start Simulation Free Image Hosting at www.ImageShack.us se obtine:

Free Image Hosting at www.ImageShack.us

Prin dublu click pe componenta Scope vizualizam graficul obtinut pt.semnalul sinusoidal in urma integrarii acestuia :

Parametri semnalului sinusoidal pot fi accesati si modificati prin dublu click pe componenta SineWave din modelul cu numele derivare_sinusoidal.mdl printscreen aratat mai jos:

Obs. Ideea de baza in simulink ca sa modificati parametri unei componente este suficient sa dati dublu-click pe componenta respectiva!!!!

Add comment July 16, 2009

Derivarea unui semnal sinusoidal

Pentru aceasta vom folosi pe modelul nostru o componenta Sine Wave din categoria Sources (ce reprezinta semnalul nostru sinusoidal cu parametri specificati) , o componenta derivative din zona Continuous si o componenta Display din zona Sinks:

Modelul este prezentat in figura de mai jos in urma apasarii butonului Start Simulation Free Image Hosting at www.ImageShack.us se obtine:

Free Image Hosting at www.ImageShack.us

Parametri semnalului sinusoidal pot fi accesati si modificati prin dublu click pe componenta SineWave din modelul cu numele derivare_sinusoidal.mdl printscreen aratat mai jos:

Obs. Ideea de baza in simulink ca sa modificati parametri unei componente este suficient sa dati dublu-click pe componenta respectiva!!!!

Add comment July 16, 2009

Folosirea componentei sign

Folosirea componentei sign (din zona Math Operations) pt. functia trigonometrica cosinus:

Free Image Hosting at www.ImageShack.us

Add comment July 10, 2009

Inversul produsului elementelor unei matrici

Pasul1:

Tastati in command window:

>>simulink %pt.a accesa Simulink Library Browser

Pasul2:

File->New->Model si salvati modelul cu un nume sugestiv si extensia .mdl.

Pentru aceasta avem nevoie de 1 componente Constant din categoria Commonly Used Blocks , 1 componenta u(: )Reshape pt.stocare fiecarui element al matricei intr-un vector(practic se transforma matricea intr-un vector continand aceleasi elemente stocate deja in matrici) din categoria Math Operations , 1 componenta Divide(dati dublu click si la list of signs sa ramana doar semnul / pt.a realiza inversul produsului el.matricei) din categoria Math Operations si o componenta display din categoria Sinks care afiseaza rezultatul.

Daca dati dublu click pe componenta Constant dupa ce ati dragat toate aceste componente pe modelul care doriti sa-l creati in simulink
(cu File->New->Model) puteti modifica valorile de 1 la ce valori doriti dumneavoastra.

Aveti mai jos un printscreen sugestiv care ilustreaza folosirea acestor 4 componente (Constant,Reshape,Divide si Display):

Free Image Hosting at www.ImageShack.us

Ca sa creati un vector scrieti [a11 a12; a21 a22] pt.o matrice 2*2 de exemplu dand dublu-click pe constant si bifati optiunea Intepret vector parameters as 1D. Puteti draga si mari componenta pt.a vedea efectiv pe model valorile care le-ati stocat in matrice.

Apoi apasati pe butonul negru numit Start Simulation pt. a vedea rezultatul simularii dumneavoastra.

Aveti mai jos un printscreen sugestiv care ilustreaza folosirea acestor 4 componente (Constant,Reshape,Divide si Display):

[img]http://img19.imageshack.us/img19/5568/impmatrix.png[/img]

Add comment June 21, 2009

Produsul elementelor unei matrici

Pasul1:

Tastati in command window:

>>simulink %pt.a accesa Simulink Library Browser

Pasul2:

File->New->Model si salvati modelul cu un nume sugestiv si extensia .mdl.

Pentru aceasta avem nevoie de 1 componente Constant din categoria Commonly Used Blocks , 1 componenta u(: )Reshape pt.stocare fiecarui element al matricei intr-un vector(practic se transforma matricea intr-un vector continand aceleasi elemente stocate deja in matrici) din categoria Math Operations , 1 componenta Product of Elements din categoria Math Operations si o componenta display din categoria Sinks care afiseaza rezultatul.

Daca dati dublu click pe componenta Constant dupa ce ati dragat toate aceste componente pe modelul care doriti sa-l creati in simulink (cu File->New->Model) puteti modifica valorile de 1 la ce valori doriti dumneavoastra.

Ca sa creati un vector scrieti [a11 a12; a21 a22] pt.o matrice 2*2 de exemplu dand dublu-click pe constant si bifati optiunea Intepret vector parameters as 1D. Puteti draga si mari componenta pt.a vedea efectiv pe model valorile care le-ati stocat in matrice.

Apoi apasati pe butonul negru numit Start Simulation pt. a vedea rezultatul simularii dumneavoastra.

Aveti mai jos un printscreen sugestiv care ilustreaza folosirea acestor 4 componente (Constant,Reshape,Product of Elements si Display):

Free Image Hosting at www.ImageShack.us

Add comment June 21, 2009

Inversa diferentei elementelor unei matrici

Vom folosi o componenta Constant pt.stocarea matricei, o componenta Reshape (cu proprietatea column vector prin dublu click) , o componenta Function (f(u)) din zona User Defined Functions si o componenta Display.

Dam dublu click pe componenta f(u) si scriem diferenta elem matricei astfel u(1)-u(2)-u(3)-u(4).

Vom inmulti cu -1 acest rezultat prin folosirea unei componente Gain (din zona Math Operations) cu valoarea -1 (prin dublu click pe componenta Gain).

Se da dublu click pe componenta Sum of Elements si la List of signs se scrie – .

Free Image Hosting at www.ImageShack.us

1 comment June 21, 2009

Previous Posts