WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

App Designer Matlab

 

Anfänger1977
Forum-Anfänger

Forum-Anfänger


Beiträge: 23
Anmeldedatum: 07.06.21
Wohnort: Frielendorf
Version: R2021a
     Beitrag Verfasst am: 28.06.2021, 10:59     Titel: App Designer Matlab
  Antworten mit Zitat      
Hallo liebe Community,

habe folgende Frage: "Kann ich zu geschriebenen Script einen app in App Designer entwickeln?
_________________

Liebe Grüße
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 28.06.2021, 11:19     Titel:
  Antworten mit Zitat      
Hallo,

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 ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Anfänger1977
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 23
Anmeldedatum: 07.06.21
Wohnort: Frielendorf
Version: R2021a
     Beitrag Verfasst am: 05.07.2021, 14:11     Titel:
  Antworten mit Zitat      
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;

N = readtable( "C:\Users\Nikolay\Desktop\B51005_Open profile Gaussian filter library\Test 14.06.21\Novikov_3_Flaschenoeffner.csv" ,'Range' , 'B4:B4', 'ReadVariableNames' ,false, 'Delimiter', ';'); % Import einer Zelle Excel-Tabelle B4;

z = table2array(N); % aus dem Zellen-Wert wird ins cell-array konvertiert;

dz = str2double(z); % aus den cell-array wird ins double konvertiert;

dx = dz*10^-5; % Wert dx aus Excel-Tabelle;

K = readtable( "C:\Users\Nikolay\Desktop\B51005_Open profile Gaussian filter library\Test 14.06.21\Novikov_3_Flaschenoeffner.csv" ,'Range' , 'B6:B6', 'ReadVariableNames' ,false, 'Delimiter', ';'); % Import einer Zelle Excel-Tabelle B6;

u = table2array(K);

du = str2double(u)*10^-2;

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;


Ra = trapz(abs(wprofile))/du;  % Berechnung arithmetischer Mittenrauwert Ra.
fprintf('Ra =  %1.3f µm \n', Ra)

Rz_1 = max(L1) - min(L1); % Berechnung die Rautiefe Rz_1;
Rz_2 = max(L2) - min(L2); % Berechnung die Rautiefe Rz_2;
Rz_3 = max(L3) - min(L3); % Berechnung die Rautiefe Rz_3;
Rz_4 = max(L4) - min(L4); % Berechnung die Rautiefe Rz_4;
Rz_5 = max(L5) - min(L5); % Berechnung die Rautiefe Rz_5;

Rz = (Rz_1+Rz_2+Rz_3+Rz_4+Rz_5)/5; % Berechnung gemittelten Rautiefe Rz;
fprintf('Rz =  %1.3f µm \n', Rz)

Rp = (max(L1) + max(L2) + max(L3) + max(L4) + max(L5))/5; % Höhe der größten Profilspitze Rp;
fprintf('Rp =  %1.3f µm \n', Rp)

Rv = abs((min(L1 )+ min(L2) + min(L3) + min(L4) + min(L5)))/5; % Tiefe des größten Profiltales Rv;
fprintf('Rv =  %1.3f µm \n', Rv)
 


Wie konstruiere ich daraus eine Function?

Für deine Antwort wäre ich sehr dankbar.
_________________

Liebe Grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 05.07.2021, 16:41     Titel:
  Antworten mit Zitat      
Hallo,

siehe z.B. hier:https://www.mathworks.com/help/matl.....e-functions-in-files.html

Im wesentlichen musst du eine Zeile der Form
Code:
function [out1, out2, ...] = function_name(in1, in2,...)
 
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 ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.