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

Messsignal nutzen -> Lookuptable?

 

Breningar
Forum-Anfänger

Forum-Anfänger


Beiträge: 40
Anmeldedatum: 04.11.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.12.2016, 12:24     Titel: Messsignal nutzen -> Lookuptable?
  Antworten mit Zitat      
Moin,

weils so schön ist, gleich die nächste Frage hinterher schieben. Ich bin ja absoluter Neuling auf dem Gebiet und habe dementsprechend meine Probleme.

Nun habe ich ein Messsignal aufgezeichnet. Das ganze ist in einer csv-Datei gespeichert und ich habe es auch bereits in den Workspace importiert und mit der Samplingzeit gespeichert:



Soweit alles machbar. Nun möchte ich das Signal in Simulink nutze. Der einfache "from Workspace" Block funktioniert ja nicht, da das Signal nicht als timeseries gespeichert ist und entsprechend der Zeitfaktor fehlt. Also wollte ich nun den Lookup Table-Block benutzen. Das hat auch wunderbar funktioniert, die Signale sehen vor und nach dem Lookup Table absolut identisch aus, nur sind die Werte nach dem Lookup Table um den Faktor 0,76 kleiner.



Habe ich den Lookup Table vielleicht falsch verstanden? Google hat mit gesagt, dass der für meinen Zweck das richtige ist und toll aussehen tut es auch. Ich könnte die Werte dahinter natürlich mit 0,76 multiplizieren und komme dann wieder auf das richtige Ergebniss, aber das wäre ja dann auch nur Flickschusterei und keine schöne Lösung.

Im Grunde möchte ich ja nur meine Messwerte 1:1 in Simulink als Eingangswert für einen Block nutzen können. Ich habe auch noch keinen Weg gefunden, die Werte als timeseries zu importieren.



Vielen lieben Dank

LG Bren
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: 07.12.2016, 14:18     Titel:
  Antworten mit Zitat      
Zitat:
Im Grunde möchte ich ja nur meine Messwerte 1:1 in Simulink als Eingangswert für einen Block nutzen können. Ich habe auch noch keinen Weg gefunden, die Werte als timeseries zu importieren.


Ich verstehe den Zusammenhang zu "timeseries" nicht. Ein "From Workspace" Block hat auch die Möglichkeiten für Matric Formate:

Zitat:

For matrix formats, each row of the matrix has a time stamp in the first column and a vector containing the corresponding data sample in the subsequent column(s).

For structure format, use the following kind of structure:
var.time=[TimeValues]
var.signals.values=[DataValues]
var.signals.dimensions=[DimValues]


Das geht auch für nicht-äquidistante Messdaten wie hier. Je nach Anwendung wäre es aber trotzdem sinnvoll vorher zu interpolieren, so dass man äquidistante Daten hat.

Und nicht zuletzt kann man Arbeitsschritte sparen, es gibt ja auch den "From Spreadsheet" Block, oder die Möglichkeit gleich in MATLAB/Simulink in Echtzeit zu messen.

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Breningar
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 40
Anmeldedatum: 04.11.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.12.2016, 15:39     Titel:
  Antworten mit Zitat      
Hallo und danke für deine Antwort

Zitat:
Ich verstehe den Zusammenhang zu "timeseries" nicht. Ein "From Workspace" Block hat auch die Möglichkeiten für Matric Formate:

Ich bin, nachdem hier nix mit "From Workspace" funktioniert hat, davon ausgegangen, dass meine reinen Messwerte eben ohne zeitliche Zuordnung sind und da das entsprechend Problem liegt. Habe ich selber ein Messsignal in Simulink generiert (Sinuswelle mit Rauschen beispielsweise) und das im Workspace gespeichert, wurde das ja als timeseries gespeichert und diese Werte konnte ich problemlos wieder nutzen, daher habe ich dort versucht 1 und 1 zusammenzuzählen.

Zitat:
Und nicht zuletzt kann man Arbeitsschritte sparen, es gibt ja auch den "From Spreadsheet" Block, oder die Möglichkeit gleich in MATLAB/Simulink in Echtzeit zu messen.


Vollkommen richtig. Da ich aber die Daten aus der csv im Workspace und auch bereits richtig bearbeitet hatte, wollte ich natürlich die weiterverwenden. Das Model selber wird später als Plugin auf ein Überwachungstool eines anderen Anbieters geladen, aber zuvor habe ich eine Messwerttabelle um das Model aufzubauen und schon einmal grob zu justieren. Wenn es soweit erst einmal funktioniert (oder scheinbar funktioniert) wird die Feineinstellung direkt mit Echtzeitmessungen an der Maschine vorgenommen.
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: 08.12.2016, 10:09     Titel:
  Antworten mit Zitat      
OK, danke für die Erklärung. Da die Messwerte ja aber wohl aus Zeit / Messwertpaaren bestehen bleiben alle Optionen offen. Bei welcher Implementation kann ich wie helfen?

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Breningar
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 40
Anmeldedatum: 04.11.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.12.2016, 12:10     Titel:
  Antworten mit Zitat      
Ich denke fürs erste hat das hier noch Zeit, ich habe mich gewundert, warum sich die Werte eben um einen gewissen Faktor verändern, wenn ich sie aus der Excelltabelle in den Workspace lade und von dort aus per Lookup Table in nen Simulink modell.
Ich habe das gelöst, indem ich dann alle Werte mit einer Konstanten multipliziert habe, danach waren die Werte wieder richtig. Fürs erste reicht mir das so, aber ich werde demnächst noch eine weit größere Messwerttabelle nutzen und würde die dann eben gerne 1:1 ins Modell übertragen können. Aber zuvor kämpfe ich noch damit die richtigen Dimensionen für die Matrizen meines Kalmanfilters zu finden. Das wird noch dauern (zu wenig Wissen/Erfahrung damit) und dann mache ich mich nochmals daran, die Messwerte aufzunehmen.

Aber nochmals danke, ich werde da nochmal ein wenig rumspielen und probieren, sobald das wieder aktuell wird.
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: 08.12.2016, 13:26     Titel:
  Antworten mit Zitat      
Gut, dann verbleibt einfach noch der Hinweis den MathWorks Support zu kontaktieren wenn man den Verdacht hat es liegt ein Bug vor.

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
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.