Foutmelding Matlab

Moderators: jkien, Xilvo

Reageer
Berichten: 18

Foutmelding Matlab

In Matlab heb ik een functie gemaakt, maar krijg continu een foutmelding, in de bijlage zit een printscreen. Heeft iemand dit eerder gehad, of tips? fft hoort wel standaard in Matlab te zitten. Alvast bedankt!
Matlab.JPG
Matlab.JPG (83.59 KiB) 592 keer bekeken

Gebruikersavatar
Berichten: 2.609

Re: Foutmelding Matlab

Om een of andere reden is je data van het type 'char'. Probeer de vector eens om te zetten naar een numeriek type.

Berichten: 18

Re: Foutmelding Matlab

okee, bedankt! Het gaat hier om een .wav bestand. Weet jij misschien ook hoe we het naar numeriek om kunnen zetten?

We kunnen het geluid trouwens wel gewoon plotten.

Gebruikersavatar
Berichten: 68

Re: Foutmelding Matlab

Volgens mij heb je je geluids bestand verkeerd geladen. Je vult direct 'A.wav' in je programma. Volgens mij moet je eerst A.wav laden (A=wavread('A.wav') ). En daarna kan je er fft op uitvoeren.

Berichten: 18

Re: Foutmelding Matlab

oké, dankje, ik heb het geprobeerd, maar kreeg weer een foutmelding, hier een printscreen:
Naamloos.jpg
Naamloos.jpg (79.76 KiB) 572 keer bekeken

Gebruikersavatar
Berichten: 2.609

Re: Foutmelding Matlab

Nu ik er beter naar kijk klopt je eerste poging inderdaad al helemaal niet. Je probeer daar fft('A.wav') te doen.

Ik heb de indruk dat je de neiging hebt van teveel ineens te willen doen.

Probeer meer stap voor stap te werken:

x = wavread(...)

notereader(x)

Op die manier zal je veel makkelijker fouten kunnen opsporen.

Berichten: 18

Re: Foutmelding Matlab

Als we een frequentie willen meten, geeft hij de verkeerde aan (bijvoorbeeld voor a geeft hij 15.6025), waarschijnlijk klopt er iets niet in onze functie, ziet iemand van jullie misschien de fout?
Bijlagen
note_reader.JPG
note_reader.JPG (43.4 KiB) 573 keer bekeken

Gebruikersavatar
Berichten: 2.609

Re: Foutmelding Matlab

Kloppen je vectoren wel? Als je het spectrum plot (met de frequentie-as in Hz), zijn die waarden dan correct?

PS: post in de toekomst gewoon je code hier als tekst, op die manier kunnen mensen ze eventueel snel copy/pasten om eens uit te testen

Kijk eens of je onderstaand script begrijpt.

Code: Selecteer alles

close all; clear all; clc;

fs = 200; % sampling frequentie

f0 = 50; % signaal frequentie

t = 0:1/fs:1; % tijdsas

x = sin(2*pi*f0*t); % signaal

figure; plot(t,x);

X = fft(x)/(length(x)/2); % neem FFT en herschaal

X = X(1:floor(length(X)/2)); % gooi de 2de helft van het spectrum weg

f = linspace(0,1,length(X))*fs/2; % stel de frequentie as in Hz op

figure; plot(f,abs(X));

Berichten: 18

Re: Foutmelding Matlab

Sorry voor mijn late reactie! maar het heeft erg geholpen! bedankt!

Reageer