ich bin neu hier. Schon mal vorab, das Forum hat mir schon sehr oft geholfen, ich bin nur grad an einem neuen Thema dran, bei dem ich nicht weiterkomme. Die Suchfunktion konnte mir nicht weiterhelfen.
Vorab will ich klarstellen, dass es sich hier um ein privates Projekt handelt und ich aus Interesse daran arbeite.
Ich versuche mal mein Problem zu schildern:
Ich bekomme Sensordaten einer Objektsensorik auf einen Simulink-Block und kann mit den Signalen in Form von einzelnen Botschaften arbeiten. Diese Daten kommen stets zugehörig zu einem Objekt zu einem festem Zeitschritt in meinem 1. Simulink-Block an und müssen einzeln verarbeitet werden. Ich habe mal ein Blockschaltbild gemacht, siehe Anhang.
Ich möchte die Sortierung per Matlab-File-Block machen, also als ausgeschriebenen Code. Falls jemand eine effizientere Lösung ausfindig machen kann oder kennt, bitte sagen.
Was ich brauche, ist die Sortierung und vorallem Sammlung der Daten eines jeweiligen Zeitschritts. Sagen wir, ich brauche diese Sortierung in Form einer Matrix, welche mir in den Spalten die Daten einsortiert. Dann kommt der nächste Zeitschritt und die Daten müssen wieder geprüft und ggf. einsortiert werden.
Mein Problem liegt an dieser Stelle also an der Datenaquise der zeitlich konstant eintreffenden Daten. Ich hoffe mir kann jemand da Hilfe anbieten oder eine Tipp für einen geeigneten Simulink-Block geben. Das mir jemand meine Arbeit komplett abnimmt, ist nicht Sinn dieses Forumseintrags Wink
Meine gedachten Vorgehensschritte des Matlab-file-Blocks nach Erhalten der Daten sind: (Dabei beziehen sich die Daten jeweils immer nur für einen Zeitschritt!)
Code:
%Objekt-ID herausfiltern und speichern
%Daten des ersten Objekts werden eingelesen
%Zwischenspeicherung der ObjektID
aktuelle_id = Verfolgung.ObjektID
%while-Schleife, solange ein Objekt erkannt wird, sollen die Daten eingespeichert, bzw. sortiert werden
%Zunächst muss aber erst herausgefunden werden, ob das Objekt, welches gerade gesendet wurde, überhaupt relevant ist. Dies geschieht, indem eine Abfrage zur Position erstellt wird. Ist das Objekt nicht relevant, so soll die Schleife verlassen werden, bzw. keine Sortierung der Daten ausgeführt werden.
%Daten in Matrix einsortieren, z.B. über switchcase also: z.B.
%Hier soll dann der Befehl kommen, die relevanten Daten aus den Botschaften in die Matrix einzuspeichern.
%Einspeicherung der in Matrix. In den Zeilen sollen die IDs und in den Spalten jeweils die Daten, z.B. Abstand gespeichert werden.
%Ausgabe der Matrix in Form eines Excel-Files
}
%Weiterführend muss geklärt werden, ob ein erkanntes Objekt mit einer anderen ID vielleicht nicht einem vorhandenen Objekt zugeordnet werden kann. Es muss also auch ein Abgleich zwischen alten, bereits in die Matrix eingespeicherten Daten und den neuen Daten entstehen.
% --> if-schleife
%Am Ende werden die Daten in einem Scope visualisiert
Hi, sorry das war nur weil ich meinen ersten Post falsch eingeordnet hatte.
Danke für das löschen.
Gruß
Leo
Einstellungen und Berechtigungen
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.