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

mittels "tf" Übertragungsfunktion im Edit-Fenster

 

Dave86
Forum-Century

Forum-Century


Beiträge: 113
Anmeldedatum: 31.07.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.10.2008, 14:40     Titel: mittels "tf" Übertragungsfunktion im Edit-Fenster
  Antworten mit Zitat      
Hallo zusammen,

ich habe da ein kleines Problemchen und hoffe von euch einen Ansatz zu erhalten. Ich möchte mittels dem Befehl
Code:

die Übertragungsfunktion eines beliebigen Systems in einem Edit-Fenster ausgeben.
Nun habe ich es folgendermaßen realisiert:
Code:

tfP=tf(handles.num,handles.den);
set(handles.edit5,'String',tfP);
 

bekomme jedoch folgender Fehlermeldung:
Code:

??? Error using ==> set
error: mxArray must be double, char, or cell.

Error in ==> lti.set at 32
   builtin('set',sys,varargin{:});

Error in ==> Hauptprojekt>pushbutton2_Callback at 211
set(handles.edit5,'String',tfP);

Error in ==> gui_mainfcn at 96
        feval(varargin{:});

Error in ==> Hauptprojekt at 42
    gui_mainfcn(gui_State, varargin{:});

??? Error while evaluating uicontrol Callback
 

Als Ausgabedatentyp hab ich bereits Cell ausprobiert, geht jedoch auch nicht.
Kann mir da vielleicht jemand helfen?

Gruß

Dave
Private Nachricht senden Benutzer-Profile anzeigen


aloc-acoc

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.10.2008, 14:50     Titel:
  Antworten mit Zitat      
Hallo Dave,

genau den selben Fehler habe ich auch, siehe mein Forum Eintraghttp://www.gomatlab.de/loesung-im-g.....tfeld-ausgeben-t3774.html. Nach einiger Recherche habe ich rausgefunden, dass man etwas berechnetes in einem String umwandeln sollte bevor man in einem Textfeld übergibt. Also num2str(...)
In deinem Fall also:

Code:

tfP=tf(handles.num,handles.den);
set(handles.edit5,'String',num2str(tfP));
 


Hoffe, ich lüge nicht. Versuchs mal! Lass mich dann aber zum besseren belehren, da mein Code auch mit der Umwandlung immer noch nicht funzt.

Viel Erfolg
 
Dave86
Themenstarter

Forum-Century

Forum-Century


Beiträge: 113
Anmeldedatum: 31.07.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.10.2008, 15:12     Titel:
  Antworten mit Zitat      
Hallo aloc-acoc,

ich hab deinen Tipp mal befolgt, geht leider auch nicht!

Gruß

Dave
Private Nachricht senden Benutzer-Profile anzeigen
 
aloc-acoc

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.10.2008, 22:17     Titel:
  Antworten mit Zitat      
Hallo,

vor lauter Eifer habe ich endlich mein Code endlich hingekriegt. Das was du ausgeben willst, wird symbolisch dargestellt. In meinem Fall geht es mit char(...). Wenn ich mich nicht täusche, müsste es so funzen:
Code:

tfP=tf(handles.num,handles.den);
set(handles.edit5,'String',char(tfP));
 
 
Dave86
Themenstarter

Forum-Century

Forum-Century


Beiträge: 113
Anmeldedatum: 31.07.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.11.2008, 12:52     Titel:
  Antworten mit Zitat      
Hi aloc-acoc,

ich habs jetzt mal so ausprobiert, wie du es gepostet hast:
Code:

handles.tfP=tf(handles.num_P_Con,handles.den_P_Con);
assignin('base','tfP',handles.tfP)
set(handles.edit5,'String',char(handles.tfP));
 

Wie du siehst, hab ichs davor erstmal ins workspace importiert um sicherzustellen, dass es nicht an der Übertragungsfunktion liegt sondern an der Formatierung der Ausgabe!
Leider bringt er mir immer noch eine Fehlermeldung:
Code:

??? Error using ==> char
Conversion to char from tf is not possible.

Error in ==> Hauptprojekt>pushbutton2_Callback at 212
set(handles.edit5,'String',char(handles.tfP));

Error in ==> gui_mainfcn at 95
        feval(varargin{:});

Error in ==> Hauptprojekt at 42
    gui_mainfcn(gui_State, varargin{:});

??? Error using ==> Hauptprojekt('pushbutton2_Callback',gcbo,[],guidata(gcbo))
Error using ==> char
Conversion to char from tf is not possible.

??? Error while evaluating uicontrol Callback
 

Ich weiß so langsam wirklich nicht mehr weiter...! Crying or Very sad

Gruß

Dave
Private Nachricht senden Benutzer-Profile anzeigen
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.11.2008, 13:43     Titel:
  Antworten mit Zitat      
Hallo,

ich kenne den tf Befehl zwar nicht, aber das Ergebnis ist eine Struktur der Klasse tf (wird ja explizit in der Fehlermeldung so gesagt). Was genau soll den ausgegeben werden? In der Funktion "tf" finde ich die Ausgabe nicht, das muss wohl was Klassenspezifisches sein.

Es sieht wohl so aus, als ob du dir den "Transfer function" String selber zusammenbasteln musst. Die einzelnen Werte (num, den, Variable) erhälst du aus der tf-Struktur (handles.tfP.num usw.).

MfG
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.