die Antwort: ja.
Für eine saubere Übergabe der Daten würde ich tendenziell eine Funktion statt eines Skripts bevorzugen.
Im App Designer gibt es auf der Startseite ein "Interactive Tutorial", das bei den ersten Schritten hilft.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Hallo Harald,
"Interactive Tutorial" im App Designer hatte ich angeschaut.
Du sagst, dass ich aus dem Script eine Function erstellen soll. Im Internet habe ich nichts gefunden. Wenn du könntest mir zeigen wie es gemacht wird?
Mein Script ist:
Code:
T = readtable( "C:\Users\Nikolay\Desktop\B51005_Open profile Gaussian filter library\Test 14.06.21\Novikov_3_Flaschenoeffner.csv" ,'Range' , 'A9:A30000', 'ReadVariableNames' ,false, 'Delimiter', ','); % Import Excel-Tabelle mit dem Endung .csv ins Matlab;
y = table2array(T)'; % aus Tabelle wird eine Zeilen-Matrix konstruiert;
x = (0:dx:(length(y)-1)*dx); % die x-Achse Anfang bei 0 und Ende bei (length(y)-1)*dx;
d = ((length(y)-1)*dx)*10^3; % Zuweisungs Variable d Wert (length(y)-1)*dx;
n = length(x); % in Variable n werden Datenzahl der Messungen gespeichert;
M = [ones(n,1), x'];
b = y';
g = M\b;
gerade = g(1) + x * g(2); % gerade Linie durch die Originalprofil;
y_korrigiert = y - gerade; % die Originalprofil wird auf die x-Achse gelegt;
% plotten original Profil's: figure(1);
plot(x, y_korrigiert) grid on
pprofile = y_korrigiert;
lcut = 2.5; % Zuweisung des lcut Wertes aus DIN EN ISO 4288;
[wprofile] = gfltlin( pprofile, dx, lcut); % Erzeugung einer gefilterten Profil durch gausssches offenes Filter;
hold on
plot(x, wprofile)% plotten gefilterten Profil's:
hold off
legend('original wave', 'filtered wave' )% Legende auf dem Plott;
xlabel( 'Distanz in mm')% Beschriftung x-Achse; ylabel( 'Roughness in µm')% Beschriftung y-Achse;
L11 = y_korrigiert(600:1400); % erste Abstand L11 von 600 zu 1400;
L12 = wprofile(600:1400); % erste Abstand L12 von 600 zu 1400;
L1 = L11 - L12; % Abstand L1;
L21 = y_korrigiert(1401:2300); % zweite Abstand L21 von 61401 zu 2300;
L22 = wprofile(1401:2300); % zweite Abstand L22 von 61401 zu 2300;
L2 = L21 - L22; % Abstand L2;
L31 = y_korrigiert(2301:3100); % dritte Abstand L31 von 2301 zu 3100;
L32 = wprofile(2301:3100); % dritte Abstand L32 von 2301 zu 3100;
L3 = L31 - L32; % Abstand L3;
L41 = y_korrigiert(3101:3900); % vierte Abstand L41 von 3101 zu 3900;
L42 = wprofile(3101:3900); % vierte Abstand L42 von 3101 zu 3900;
L4 = L41 - L42; % Abstand L4;
L51 = y_korrigiert(3901:4700); % fünfte Abstand L51 von 3901 zu 4700;
L52 = wprofile(3901:4700); % fünfte Abstand L52 von 3901 zu 4700;
L5 = L51 -L52; % Abstand L5;
als erste Zeile einfügen und die Funktion dann entsprechend aufrufen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.