Forum: PC-Programmierung MATLAB GUI


von jak (Gast)


Lesenswert?

Ich möchte mit MATLAB ein kleines Tool schrieben, mit dem einen
Tiefpass grafisch ausgeben kann.
Das Programm soll so sein, dass ich den Widerstandswert und
Kondensatorwert immer über die EDIT BOXEN abändern kann.
Wie mache ich dies mit MATLAB?

/******************************************************************/
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
 s = tf('s');
 % Tiefpass 1. Ordnung
 %figure(1)
 % Aufruf Bode-Darstellung
 bode(G);
 grid;
 axis equal;

function edit1_Callback(hObject, eventdata, handles)
% hObject    handle to edit1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of edit1 as text
%        str2double(get(hObject,'String')) returns contents of edit1
as a double

von jak (Gast)


Lesenswert?

Der Tiefpass funktioniert ja soweit.
Ich möchte nur noch die Zeitkonstante R*C=T variable gestalten mit
Hilfe von EDIT Boxen.

von jak (Gast)


Lesenswert?

Der Tiefpass funktioniert ja soweit.
Ich möchte nur noch die Zeitkonstante R*C=T variable gestalten mit
Hilfe von EDIT Boxen.

von jak (Gast)


Lesenswert?

Wie erhalte ich den Wert (string,int) von einer EDIT Box?
Im Internet habe ich nichts gefunden. Die Hilfe von Matlab bringt mir
auch nichts.

von Nils (Gast)


Lesenswert?

Hallo jak,

mit

[c]
deinWert = get(handles.nameDeinerEditBox, 'Value');
[\c]

bekommst Du den gewünschten Wert.

Ich weiß allerdings nicht, ob das Plotten des Bodediagramms aus einem
Callback so einfach möglich ist. Wenn Du ein neues Fenster willst,
könnstest Du mit

[c]
evalin('base', ['figure(1); bode(' G '); grid; axis equal;']);
[\c]

dieses erzeugen. Eleganter ist es aber (wenn Du schon bei GUIs bist),
den Plot in einem in deinem GUI eingebetteten Graphen zu zeichnen.

Die Matlab Hilfe ist doch sehr gut, wieso bringt die Dir nichts? Ich
hjabe zwar zwei Matlab-Bücher hier stehen, aber meistens erwische ich
mich dabei, wie ich in die Matlab-Hilfe schaue. Da sind doch super
Beispiele drin (auch zur GUI-Programmierung)...

Der Nils.

von Nils (Gast)


Lesenswert?

Verdammt, ständig vergesse ich, wie das mit den Tags geht.

Test:

<c>
deinWert = get(handles.nameDeinerEditBox, 'Value');
<\c>

Vielleicht so?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.