Verfasst am: 05.11.2015, 16:08
Titel: Variablen aus GUI in Simulink Konstante übergeben
Hallo zusammen,
ich habe bereits viele Threads in unterschiedlichen Foren gelesen und bin daraus nicht schlau geworden.
Ich habe ein Simulink Modell mit mehreren Eingängen: eine Datei (.avi) und mehrere Konstanten (als Constand Block). Nun möchte ich eine GUI erstellen, mit der ich diese Eingänge steuern kann. Zum einen also die Auswahl der Datei (funktioniert mit uigetfile und load_system), und zum anderen möchte ich über ein Textfeld Werte eingeben, die der jeweiligen Konstanten übergeben werden soll. Ich habe schon Befehle wie assignin probiert, aber irgendwie zu keinem Erfolg gekommen.
Mit welchem Funktionsaufruf, und wo genau muss dieser stehen, kann ich die GUI Werte an Simulink Constant Block übertragen?
Code:
functionvarargout = GUI_Test_goMatlab(varargin) % GUI_TEST_GOMATLAB MATLAB code for GUI_Test_goMatlab.fig % GUI_TEST_GOMATLAB, by itself, creates a new GUI_TEST_GOMATLAB or raises the existing % singleton*.
%
% H = GUI_TEST_GOMATLAB returns the handle to a new GUI_TEST_GOMATLAB or the handle to % the existing singleton*.
%
% GUI_TEST_GOMATLAB('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in GUI_TEST_GOMATLAB.M with the given input arguments.
%
% GUI_TEST_GOMATLAB('Property','Value',...) creates a new GUI_TEST_GOMATLAB or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before GUI_Test_goMatlab_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to GUI_Test_goMatlab_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help GUI_Test_goMatlab
% Last Modified by GUIDE v2.5 05-Nov-2015 16:04:17
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @GUI_Test_goMatlab_OpeningFcn, ...
'gui_OutputFcn', @GUI_Test_goMatlab_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
ifnargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
% --- Executes just before GUI_Test_goMatlab is made visible. function GUI_Test_goMatlab_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to GUI_Test_goMatlab (see VARARGIN)
% Choose default command line output for GUI_Test_goMatlab
handles.output = hObject;
% UIWAIT makes GUI_Test_goMatlab wait for user response (see UIRESUME) % uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line. functionvarargout = GUI_Test_goMatlab_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure varargout{1} = handles.output;
% --- Executes on button press in radiobutton1. function radiobutton1_Callback(hObject, eventdata, handles) % hObject handle to radiobutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hint: get(hObject,'Value') returns toggle state of radiobutton1
function var1_Callback(hObject, eventdata, handles) % hObject handle to var1 (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 var1 as text % str2double(get(hObject,'String')) returns contents of var1 as a double
assign('base', var1);
% --- Executes during object creation, after setting all properties. function var1_CreateFcn(hObject, eventdata, handles) % hObject handle to var1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');
end
function var2_Callback(hObject, eventdata, handles) % hObject handle to var2 (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 var2 as text % str2double(get(hObject,'String')) returns contents of var2 as a double
assign('base', var2);
% --- Executes during object creation, after setting all properties. function var2_CreateFcn(hObject, eventdata, handles) % hObject handle to var2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');
end
function var3_Callback(hObject, eventdata, handles) % hObject handle to var3 (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 var3 as text % str2double(get(hObject,'String')) returns contents of var3 as a double
assign('base', var3);
% --- Executes during object creation, after setting all properties. function var3_CreateFcn(hObject, eventdata, handles) % hObject handle to var3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in startSim. function startSim_Callback(hObject, eventdata, handles) % hObject handle to startSim (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hint: get(hObject,'Value') returns toggle state of startSim load_system('function');
sim('function');
% --- Executes on button press in radiobutton2. function radiobutton2_Callback(hObject, eventdata, handles) % hObject handle to radiobutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
vielleicht ist es möglich (und ggf. sinnvoller), wenn ich die in die GUI (in Edit Text Feld) eingegebenen Werte meiner Konstanden in den Workspace lade und dann von dort aus meiner Matlab-Function übergebe?
Hat jemand eine Idee, was funktioniert und besser für mein Vorhaben ist?
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.