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

Darstellung eines Vektors mit dem Scope HILFE

 

reborion1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.07.2009, 02:59     Titel: Darstellung eines Vektors mit dem Scope HILFE
  Antworten mit Zitat      
hallo,

ich will einen Vektor,dessen Elemente sich ständig verändern auf dem Scope darstellen. Ich habe die Blöcke From Workspace und Scope gewählt , der Vektor wird vom Workspace gelesen und auf dem Scope geplottet. Nach jeder Sekunde ändern sich die Werte meines Vektors. Aber mein Scope zeigt nur die erste Werte an ,d.h beim Starten der Simulation (auch während der Simulation werden die Start-Werte gezeigt) und wenn ich Stop drücke zeigt er mir die letzte Werte an.
Was kann ich tun ,damit mein Signal während der Simulation sich ändert oder dass der Scope die Werte wähend der Simulation übernimmt und einfach plottet?

Gruß

reborion


Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 09.07.2009, 08:49     Titel:
  Antworten mit Zitat      
Meine spontane Reaktion ist, "das muss gehen", aberes könnten vielen Einstellungen verdreht sein. Das Beispielmodell wird helfen.

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
reborion1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.07.2009, 11:25     Titel:
  Antworten mit Zitat      
Du meinst die Einstellungen könnten in meinem Model verdreht sein? Bei 'Configuration parameters'? Welches Beispielmodell?

reborion
 
Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 09.07.2009, 12:52     Titel:
  Antworten mit Zitat      
Das Beispielmodell welches das Problem verursacht. Ich persönlich bin mir sicher, dass ich es mit einem Beispiel lösen kann, ohne Beispiel ist zuviel Raterei-Aufwand dabei.

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
reborion1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.07.2009, 13:19     Titel:
  Antworten mit Zitat      
Hier einen Ausschnitt des Codes und angehängt das Modell.

data = [12;3;5;7;45;0]
st.signals.values = data
st.time = []
assignin('base','st',st)

example2.mdl
 Beschreibung:

Download
 Dateiname:  example2.mdl
 Dateigröße:  17.28 KB
 Heruntergeladen:  515 mal
 
Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 09.07.2009, 14:30     Titel:
  Antworten mit Zitat      
Jetzt verstehe ich es! Nun, der Rechner und Simulink sind einfach zu schnell! Lösung: Künstliches verlangsamen. Auf meinem Rechner sieht es mit einer Schrittweite um den Faktor 100000 kleiner gut aus. Diese Solution hier ist vielleicht sogar noch besser:

http://www.mathworks.com/support/so.....1-15JAW/?solution=1-15JAW

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
reborion1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.07.2009, 15:25     Titel:
  Antworten mit Zitat      
ich habe meine Schrittweite 0.2 um 100000 verkleinert aber es ist auf dem Scope nichts mehr zu erkennen. Das Bild und die Parameter config. habe ich angehängt. Kannst du mir bitte mal deine Einstellungen posten?

Config.JPG
 Beschreibung:

Download
 Dateiname:  Config.JPG
 Dateigröße:  63.77 KB
 Heruntergeladen:  724 mal
scope.JPG
 Beschreibung:

Download
 Dateiname:  scope.JPG
 Dateigröße:  44.12 KB
 Heruntergeladen:  622 mal
 
Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 09.07.2009, 15:44     Titel:
  Antworten mit Zitat      
Ich habe für das Beispiel einfach nur 1e-5 als Step Size genommen.
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
reborion1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.07.2009, 17:07     Titel:
  Antworten mit Zitat      
jetzt funktioniert das ganze langsam und das Signal ist deutlich zu sehen.Danke
Aber die Werte werden nicht während der Simulation aktualisiert, also es plottet nur einen Vektor, wenn ich restarte dann holt er den nächsten Vektor...
Ich habe etwas mit set_param gelsen und so habe ich es formuliert:

st.signals.values = data
st.time = []
assignin('base','st',st)
set_param([example2,'/','From Workspace'], 'st','st')


leider kriege ich als Fehlermeldung:
Error using ==> horzcat
CAT arguments dimensions are not consistent
 
Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 10.07.2009, 10:08     Titel:
  Antworten mit Zitat      
Ich tippe mal, dass es am Grundverständnis von Simulink liegt. Allein der Gebracu des Wortes Vektor zeigt das. Mit ist unklar, was das in Simulink-Signalsicht sein sollte. Es gibt Signaler die zu jedem Zeitschritt einen Wert annehmen. Die Zeitschritte hängen von der Modellierung und den Solvern ab. Insofern kann man die zeitliche Abfolge der Werte eines Signals schon als Vekti verstehen, allerdings ist ein physikalischer Sinn nur dahinter, wenn auch immer der Zeitschritt mit erfasst.

Eine andere Sicht könnte die Breite der Signale sein. Mehrere Signale können mit Mux und Bus zusammengefasst werden. Auch das könnte man als einen Vektor verstehen, weill zu jedem Zeitschritt immer ein Vektor von Signalwerten (Zuständen des Quellblocks) vorliegt.

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
reborion
Forum-Anfänger

Forum-Anfänger


Beiträge: 17
Anmeldedatum: 07.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.07.2009, 20:09     Titel:
  Antworten mit Zitat      
sry aber das hat mir nicht weiter geholfen....Sad
Private Nachricht senden Benutzer-Profile anzeigen
 
Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 13.07.2009, 08:46     Titel:
  Antworten mit Zitat      
Gut, dann hilft weiter, dass example2 in Hochkommas geschrieben werden muss, so dass nicht die Variable interpretiert wird, sondern das Character Array des Names hergenommen wird.
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
reborion
Forum-Anfänger

Forum-Anfänger


Beiträge: 17
Anmeldedatum: 07.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2009, 12:14     Titel:
  Antworten mit Zitat      
set_param(['example2','/','From Workspace'], 'st',st)
oder
set_param(['example2','/','From Workspace'], 'st','st')

Das hatte ich auch versucht aber ich kriege die fogende Fehlermeldung:

Error using ==> set_param
FromWorkspace block does not have a parameter named 'st'

Obwohl als Parameter für meinen Block 'st' eingetragen ist.....
Private Nachricht senden Benutzer-Profile anzeigen
 
Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 13.07.2009, 13:05     Titel:
  Antworten mit Zitat      
Der Befehl funktioniert z. B. so:

Code:

get_param('example2/From Workspace','Name')
ans =
From
Workspace
 


D.h. man muss zuerst den Namen des Parameters kennen. st ist der Inhalt, nicht der Name. In der Doku steht das hier:

http://www.mathworks.com/access/hel.....link/slref/f23-20073.html

Manchmal ist auch

Code:

get_param('example2/From Workspace','ObjectParameters')
 


hilfreich. In diesem Fall heisst der Parameter VariableName:

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
reborion
Forum-Anfänger

Forum-Anfänger


Beiträge: 17
Anmeldedatum: 07.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2009, 13:59     Titel:
  Antworten mit Zitat      
set_param(['example2','/','From Workspace'], 'VariableName','st')

Das ist richtig aber hier auch wird der Parameter während der Simulation nicht aktualisiert. Nur beim Stop und Start der Simulation wird er aktualisiert ...Es wird keine Fehlermeldung angezeigt ,also ich weiss jetzt nicht woran es liegen könnte. Sad
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.