Sunteți pe pagina 1din 5

3.

2 – Partea teoretică 31

3. Importul şi exportul fişierelor de date.


Funcţii de prelucrare a datelor

3.1. Scopul lucrării

Utilizarea funcţiilor MATLAB dedicate achiziţiei, prelucrării şi conversiei


datelor/fişierelor de date; Importul şi exportul fişierelor de date; rezolvarea unor exemple care
apelează diferite tipuri de fişiere text, audio sau de tip imagine. Scrierea şi citirea datelor utilizând
conexiunea serială.

3.2. Partea teoretică

3.2.1. Noţiuni generale de achiziţie şi prelucrare a datelor/fişierelor

Funcţiile „load” şi „save” sunt comenzi MATLAB de încărcare şi salvare a fişierelor de


pe/ pe hard discul curent al calculatorului.
Încărcarea unui fişier de date se face cu funcţia „load” şi se apelează cu sintaxa:

load nume_fişier - format_date

în care „format_date” este formatul datelor (ASCII sau BINAR) din acel fişier.

Funcţia „load” se utilizează atât pentru fişiere MATLAB cu extensia .mat (binar) cât şi
cu extensia .m (ASCII) sau .dat.
De exemplu comanda:
load (’date.dat’)

încarcă datele în format ASCII în directorul curent din fişierul cu numele ’date.dat’.
Dacă fişierul nu are extensie, atunci se foloseşte instrucţiunea:

load date-ascii

În ambele cazuri datele conţinute de fişierul încărcat pe disc se regăsesc în memoria


calculatorului (în fereastra workspace a programului) cu numele date.
De asemenea, datele pot fi salvate/achiziţionate în fişiere Excel (.xls sau .xlsx) şi, apoi,
importate şi salvate în MATLAB (Fig. 3.1).
Importarea datelor în workspace-ul MATLABului din Excel se poate face prin 2 metode.
Prima metodă se poate realiza utilizând Import Wizardul, iar a doua utilizând funcţia:

xlsread(’nume_fişier’).

Fişierul de date importat va conţine mai multe coloane, iar pentru a reprezenta grafic, de
exemplu prima coloană în funcţie de a doua, se poate utiliza funcţia plot(data(:,1),data(:,2)).
32 Importul şi exportul fişierelor de date. Funcţii de prelucrare a datelor - 3
Mai multe detalii despre reprezentările grafice şi funcţiile de reprezentare grafică pot fi
găsite în [1, 16-17].

Datele pot fi sub formă de vectori individuali, stocate sub formă de tabele (coloane) sau de linii.

Fig. 3.1. Diferite tipuri de fişiere salvate/importate în MATLAB în fereastra Current Directory.

Cea mai simplă metodă, de a importa fişiere de date, utilizează editorul grafic Import
Wizard. Accesând fişierul de date din directorul curent, Import Wizard procesează datele şi
recunoaşte cum sunt separate acestea (prin virgulă, spaţiu, coloană sau tabel), indiferent că sunt
plasate ca vectori sau tablouri matriceale, pe linii sau coloane, după care se realizează importul
datelor în fereastra de lucru.
Fişierele de date pot fi importate sau exportate şi prin utilizarea unor funcţii MATLAB
dedicate. Pentru utilizarea acestor funcţii este necesar să se cunoască formatul fişierului (text, dat,
csv, mat).
Cele mai uzuale funcţii pentru importul / exportul de fişiere sunt prezentate în tab. 3.1.

Tabelul 3.1. Funcţii pentru importul / exportul fişierelor de date.


Funcţia Tipul Modul de Nr. Obs
datelor separare valorilor
returnate
load Numeric Doar prin 1 Importul datelor
spaţii
csvread numeric Doar prin 1 Importul datelor
virgule

dlmread Numeric Oricare 1 Importul datelor


3.2 – Partea teoretică 33

daqread Importul datelor

save Numeric Tab sau spaţiu Exportul de date


Doar prin
csvwrite virgule
dlmwrite Delimitarea
numerelor
diary Numeric sau Doar spaţiu Exportul de date
tablou
writetable matriceal
fprintf Alfabetic Orice caracter Exportul de date
sau numeric

3.2.2. Importul şi exportul datelor

După cum am prezentat în paragraful precedent există mai multe metode/tehnici cât şi
funcţii dedicate cu ajutorul cărora se pot importa, salva, converti sau exporta date/fişiere în/din
fereastra de lucru a MATLABului.
Datele pot fi importate direct de la dispozitivele/aparatele de măsurat (osciloscoape,
plăci/carduri de achiziţie) cât şi prin internet de la o anumită adresă.
De exemplu, dacă avem un set de date (fişier) salvate deja pe hard-disk sau pe o unitate
de stocare (USB, CD, DVD etc), prin utilizarea funcţiei importdata(’nume fişier’) se încarcă
fişierul respectiv în fereastra de lucru a MATLABului. De asemenea utilizând funcţia: uiimport
datele pot fi importate interactiv.
Datele pot fi importate în MATLAB atât ca fişiere text cât şi ca imagini(bmp, gif, jpeg,
pnt, tiff) sau în format audio (au, snd, wav, mp4) şi video (avi, mpg, wmv, mpg).
Un exemplu de imagine, având extensia jpg, importată ca fişier de date şi reprezentarea
grafică a acesteia se prezintă în cele ce urmează
B=importdata(’ngc6543a.jpg’); image(B)
34 Importul şi exportul fişierelor de date. Funcţii de prelucrare a datelor - 3
Fig. 3.2. Reprezentarea grafica a unei imagini importata ca fisier de date.

Pentru exportul datelor, din fereastra de lucru (workspace) a MATLABului, se poate


utiliza funcţia imwrite. Dacă ne referim la exportul datelor sub formă de imagini, ca cea din Fig.
3.2, acest lucru se poate realiza în format tiff, png sau jpeg.
Presupunând că avem deja salvat în workspace fişierul de date din Fig. 3.2, pe care dorim
să-l convertim (comprimăm) într-o figură cu extensia tiff, scriind următoarea linie de program în
fereastra de comandă:
imwrite(B,'grafic_file.tiff','tiff');
în folderul curent va apare fişierul grafic_file cu extensia tiff, care poate fi utilizat
ulterior pentru a genera o figură sau un fişier de tip function. De asemenea, se pot modifica
numărul de pixeli ai imaginii respective, realizându-se astfel o compresia a datelor sau o
claritate/rezoluţie mai bună a imaginii respective.

3.2.3. Scrierea şi citirea datelor prin conexiune serială

Pentru multe aplicaţii în timp real, achiziţia şi prelucrarea datelor cu ajutorul


MATLABului se poate realiza prin conectarea calculatorului direct la un card de achiziţie
specializat sau la un Osciloscop, prin intermediul unui port serial.
Datele pot fi scrise sau citite utilizând porturile seriale atât sincron cât şi asincron. Cea
mai utilizată metodă software de scriere sau citire a datelor este cea asincronă, datorită avantajelor
sale multiple. În Fig. 3.3 este prezentată diagrama bloc a unei astfel de conexiuni scoţând în
evidenţă unul din avantajele utilizării operaţiei asincrone, şi anume scrierea şi citirea simultană a
datelor utilizând pini separaţi pentru fiecare operaţie în parte:

Fig. 3.3. Diagrama bloc cu elementele componente utilizate pentru scrierea şi citirea datelor
conectate la un Osciloscop prin conexiune serială.

Referitor la scrierea, citirea sau salvarea datelor, achiziţionate prin intermediul unui
Osciloscop, acestea pot fi citite de MATLAB ca şi figuri/imagini (după cum rezultă şi din Fig.
3.2) sau pot fi salvate ca fişier text (în format csv, dat, txt etc) şi prelucrate ulterior utilizând
funcţiile MATLAB dedicate acestui scop.
Pentru comunicarea cu diferite instrumente de măsură se pot scrie diferite fişiere în
MATLAB, de tip script şi/sau function, iar în funcţie de performanţele instrumentului/plăcii de
achiziţie se pot achiziţiona, prelucra sau regla, în timp real sau offline, diferiţi parametrii ai
sistemului (set-up) monitorizat.
Un exemplu de date achiziţionate de la un Osciloscop sub formă de imagine bitmap este
prezentat în Fig. 3.4, iar liniile de cod utilizate sunt prezentate mai jos:
3.3 – Desfăşurarea lucrării 35
fid=fopen(’test1.bmp’,’w’);
fwrite(fid,aut,’uint8’);
fclose(fid);
a=imread(’test1.bmp’,’bmp’);
imagesc(a)

Fig. 3.4. Imaginea de pe monitorul unui Osciloscop achiziţionată cu progr

După cum se poate observa în programul scris mai sus, sau utilizat câteva funcţii
MATLAB dedicate pentru scrierea datelor (fwrite), citirea lor (imread) şi pentru scalarea şi
afişarea acestora (imagesc).

3.3. Desfăşurarea lucrării

În cadrul acestei lucrări se vor utiliza diferite funcţii MATLAB, prezentate în partea
teoretică a lucrării, scriind câteva programe de tip script şi function, pentru achiziţia, salvarea şi
prelucrarea datelor, interne şi externe MATLAB-ului. De asemenea, se va realiza comunicarea şi
achiziţia datelor utilizând un Osciloscop de tip Tektronix TDS 210 şi TDS 1002. Fişierele de date
vor fi achiziţionate şi salvate în diferite formate standard, atât ca fişiere text (txt, dat, asv) cât şi
ca imagini(bmp, gif, jpeg, pnt, tiff) sau în format audio (au, snd, wav, mp4) şi video (avi, mpg,
wmv, mpg).

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