Sunteți pe pagina 1din 3

SEM 2 - Laborator D.

Fodorean

SEM2-Lucrare de laborator

Introducere in Matlab – Modelari circuite si prelucrari semnale folosind functii specifice

Scopul lucrarii: initiere in Matlab, pe baza modelarii unor circuite electromagnetice, prelucrare semnale și trasare
caracteristici cu funcții specifice.

1. Interfata Matlab si fisierul .m:


a. compusa din urmatoarele ferestre de lucru: fereastra dosarului curent (Current Folder), fereastra de
comanda (Command Window, unde se ruleaza modelarile Matlab), spatiul de lucru (Workspace) unde
se pot vizualiza parametrii incarcati in memoria Matlab. Trebuie retinut ca o aplicatie poate fi rulata in
Matlab daca este vizibila in dosarul curent.
b. Aplicatiile Matlab pot fi create direct in fereastra de comanda sau folosind un fisier cu extensia « .m ».
In figura de mai jos sunt prezentate definitii de parametrii si operatii matematice direct in fereastra de
comanda. Aici se pot distinge cateva caracteristici ale programarii in Matlab (ex. : operatiile finalizate
cu caracterul « ; » nu ofera rezultatul imediat in fereastra de comanda). Pentru aplicatii complexe si
incarcarea parametrilor folositi in simularile Simulink se foloseste un fisier specific Matlab, numit .m
(File -> New) sau .
c. Un fisier .m nu poate avea aceeasi denumire cu o functie predefinita in Matlab (spre exemplu sqrt), iar
numele fisierului NU poate contine spatii sau cratima.

Dosarul Spatiul de
curent lucru

Fereastra de
comanda

2. Prima aplicatie in Matlab.


Pentru o prima aplicatie folosind Matlab se va utiliza enuntul legii Biot-Savart prezentat la curs. Se propune modelarea
problemei folosind un fisier .m care se poate rula – incarca in fereastra de comanda – folosind tasta F5 sau butonul
corespunzator .
Implementarea aplicatiei in Matlab arata astfel :

1
SEM 2 - Laborator D. Fodorean

3. Plotari si definirea vectorilor in Matlab.


Se va implementa programul urmator, care defineste caracteristical B(H) a otelului folosit la constructia masinilor
electrice, M530-50A. (Rularea aplicatiei presupune existenta unui fisier care contine valorile caracteristice B(H) a
otelului considerat.)

clear all, clc


% data realizarii fisierului - ultimei modificari: 9/09/2010 - 3/03/2014
FS=12; % parametru de plotare
disp([' '])
disp(['Caracteristica B(H) otel M530-50A '])
otelstat=load('otel_M530_50A.txt');
Botels=otelstat(:,2); Hotels=otelstat(:,1);

figure
plot(Hotels,Botels,'r*-');
title('caracteristica B(H) pentru otel M530','FontSize',FS);
xlabel('intensitate camp magnetic (A/m)','FontSize',FS);
ylabel('inductie (T)','FontSize',FS);
grid on

2
SEM 2 - Laborator D. Fodorean

% pierderi specifice in functie de frecventa


% [T] W/kg VA/kg A/m W/kg W/kg W/kg
% 50Hz 50Hz 50Hz 100Hz 200Hz 400Hz
Bsp=[0.1 0.04 0.11 56.1 0.14 0.23 0.56
0.2 0.14 0.31 74.1 0.42 0.82 2.07
0.3 0.30 0.54 85.8 0.81 1.70 4.29
0.4 0.48 0.81 95.6 1.24 2.80 7.09
0.5 0.69 1.10 105 1.58 4.09 10.5
0.6 0.92 1.43 114 2.14 5.56 14.6
0.7 1.17 1.80 123 2.83 7.20 19.5
0.8 1.44 2.20 133 3.49 9.09 25.5
0.9 1.74 2.65 145 4.28 11.3 32.6
1.0 2.07 3.15 158 5.52 13.8 40.8
1.1 2.43 3.75 174 6.46 16.7 50.4
1.2 2.84 4.48 200 7.38 20.0 61.5
1.3 3.30 5.48 243 8.73 23.8 74.1
1.4 3.84 7.06 333 10.2 28.2 89.1
1.5 4.46 10.8 573 12.0 32.8 105
1.6 5.16 23.6 1345 14 38 123
1.7 5.81 62.3 3367 16.5 44 145
1.8 6.30 144 6964 19.5 52 175];

figure
plot(Bsp(:,1),Bsp(:,2), Bsp(:,1),Bsp(:,5), Bsp(:,1),Bsp(:,6), Bsp(:,1),Bsp(:,7))
title('Pierderi otel M530-50A','FontWeight','Bold','FontSize',FS)
ylabel('pierderi specifice de material (W/kg)','FontSize',FS)
xlabel('inductie (T)','FontSize',FS)
legend('50Hz','100Hz','200Hz','400Hz','FontSize',FS); grid on;

4. Prelucrarea semnalelor in Matlab folosind diverse functii specifice.


Se va implementa programul urmator, care urmareste prelucrarea semnalului unor tensiuni masurate la functionarea in
regim de generator a unei masini electrice. (Pentru rulare aveti nevoie de fisierul Eabc.txt, situat in acelasi director cu
fisierul .m.)

clear all, clc

Eabc=load('Eabc.txt'); % semnalul de verificat este incarcat dintr-un fisier text


Ea=Eabc(:,2); minEa=min(Ea); maxEa=max(Ea); medEa=mean(Ea); % mai multi parametri pot
% pot fi definiti in aceeasi linie daca se foloseste caracterul “;”
EaRMS=sqrt(sum(Ea.*conj(Ea))/size(Ea,1)); % linie de cod pentru calculul valorii efective
disp(['- Ea_min:',num2str(minEa),'V'])
disp(['- Ea_max:',num2str(maxEa),'V'])
disp(['- Ea_med:',num2str(medEa),'V'])
disp(['- Ea_rms:',num2str(EaRMS),'V'])

figure; subplot(1,2,1);
plot(Eabc(:,1),Eabc(:,2),Eabc(:,1),EaRMS,Eabc(:,1),Eabc(:,4),Eabc(:,1),Eabc(:,6))
ylabel('tem (V)')
xlabel('timp (s)')
grid on

fftsemnal=fft(Eabc(:,2)); % FFT la semnal de verificat


f0=abs(fftsemnal); % amplitudine semnal
np0=length(Eabc(:,2)); % esantion
armonicile2=f0/(np0/2); % armonici

subplot(1,2,2)
bar([0:29],armonicile2(1:30))
axis([0 30 0 maxEa]);
xlabel('ordinul armonicii')
ylabel('amplitudine tem (V)')
grid on

S-ar putea să vă placă și