|
|
Alle Vektoren mit der Bezeichnung "_2" vergrösser |
|
bensko |

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 01.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.11.2013, 17:49
Titel: Alle Vektoren mit der Bezeichnung "_2" vergrösser
|
 |
|
 |
|
Hallo zusammen,
ich habe gerade folgendes Problem:
Ich habe eine Messung durchgeführt, lade diese dann ins Workspace und rufe die in mein Simulink Modell auf.
Das Problem ist einfach dass meine Messgrössen mit der Endung _1 die länge zb. 9025 haben und meine Kalibrierten Werte mit der Endung "_2" die länge zb. 8271 haben.
Die Werte bei der Kalibriergrössen sind immer die gleiche.
Da aber für die Simulation alle Werte die gleiche Länge haben sollten, wollte ich die Kalibriergrössen auf die gleiche Länge bringen.
Wenn ich zb. folgendes habe:
nTrb_1 <9025x1>
pBP_1 <9025x1>
nEng_1 <9025x1>
nTrbmax_2 <8071x1>
pBPmax_2 <8071x1>
PBPmin_2 <8071x1>
nEngmax_2 <8071x1>
1. Wie kann ich sagen, dass die Kalibrierwerte die gleiche Länge bekommen wie die Messwerte?
2. Da ich sehr viele grössen habe, ist es möglich alle Labels mit der Endung "_2" auf die Länge der Messwerte zui bringen?
Hoffe ich konnte mein Anliegen euch vermitteln
Vielen Dank im vorraus schon mal
Gruss
Benni
|
|
|
|
|
Basqueacoustics |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 14.11.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.11.2013, 19:06
Titel:
|
 |
Servus Benni,
Ich würde an deiner Stelle eifnach alle Vektoren der Größe nach in Matrizen packen. Hier ein kleines Beispiel
a = ones(9025,1);
b_2 = ones(8071,1);
c_2 = ones(8071,1);
B = [b_2,c_2];
for n = 1:size(B,2)
C(:,n) = [B(:,n); zeros(numel(a)-numel(b_2),1)]; % Hier werden deine %Vektoren mit nullen aufgefüllt
end
Das ist vlt nicht die coolste Lösung aber ich würde es erstmal so probieren.
Ich hpffe, das hilft dir irgendwie weiter.
LG,
Ander
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 15.11.2013, 21:03
Titel:
|
 |
Hallo,
wie kommen die Messgrößen mit Endung _1 bzw. _2 denn zustande?
Es ist für die weitere Verarbeitung denkbar ungünstig, viele Variablen automatisiert verarbeiten zu wollen. Es ist viel einfacher, wenn diese in einer Variable, beispielsweise einer Struktur abgelegt sind. Dann kannst du mit fieldnames die Feldnamen zurückholen und analysieren.
Wie sollen die Vektoren auf gleiche Länge gebracht werden?
Welchen Messzeiten entsprechen die einzelnen Komponenten der unterschiedlich langen Vektoren? Ich würde intuitiv sagen, dass Interpolation sinnvoller ist als Auffüllen mit Nullen, aber das hängt natürlich von der Frage der Zuordnung zu Messzeiten ab.
Grüße,
Harald
|
|
|
bensko |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 01.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.11.2013, 10:31
Titel:
|
 |
Guten morgen zusammen,
vielen dank schon mal an euch beiden für euer mitmachen!
Also es gab hier denk ein missverständnis:
Ich möchte nicht die Werte mit Nullen füllen, sondern die Werte die mal drinne standen übernehmen.
Hier mal ein Beispiel:
tEng_1 <9000x1> % Jeder Zeilenwert ist unterschiedlich, da es auch meine Messgrösse ist.
tEngmax_C_2 <8000x1> % Hier sind alle Werte gleich, zB. 65 °C die ich eingestellt habe ist ein Vergleichswert.
Für die verarbeitung der Daten nun in Matlab müssen beide die gleiche Länge haben und daher würde ich gerne tEng_C_2 auf die Länge von tEng_1 bringen.
*_1 bedeutet, dass ich eine Abtastrate von 100 ms habe und leider kann ich meine Kalibriergrössen mit der Endung *_2 auf die gleiche Rate bringen.
Viele Grüsse
Benni
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 18.11.2013, 10:42
Titel:
|
 |
Hallo,
ich finde es generell fragwürdig, einen Vektor mit lauter gleichen Einträgen zu verwenden. Arithmetik kann ja auch mit Vektoren und Skalaren gemischt durchgeführt werden. Wenn du das aber unbedingt brauchst / möchtest:
Grüße,
Harald
|
|
|
bensko |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 01.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.11.2013, 15:43
Titel:
|
 |
Ja das schon aber ich bekomme in Simulink eine Fehlermeldung, dass beide Vektoren die gleiche Länge haben müssen.
Ich kann auch unter Simulink auch Konstantblöcke dafür nehmen und dann handisch den Wert eintragen. Würde aber gerne mein Modell so aufbauen, dass auch jemand der damit nicht gearbeitet hat die simulation durchführen kann.
Danke vielmals Harald!!
Wäre es auch noch möglich, dass es automatisch erkennt ob ein Label die endung *_2 hat und es dann automatisch durchführt?
Denke das es möglich ist, aber denke das man dafür auch programmier kenntnisse benötigt oder?
Viele Grüsse
Benni
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 18.11.2013, 17:51
Titel:
|
 |
Hallo,
da sind wir wieder bei meinen anfänglichen Fragen (15.11., 20:03).
Zitat: |
Wäre es auch noch möglich, dass es automatisch erkennt ob ein Label die endung *_2 hat und es dann automatisch durchführt? |
Ich will nicht sagen, dass es unmöglich ist, aber es wäre aufwändig und unübersichtlich.
Die Speicherung in einer Struktur würde das deutlich vereinfachen.
Grüße,
Harald
|
|
|
bensko |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 01.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.11.2013, 19:00
Titel:
|
 |
Hallo Harald,
ich versehe leider nicht wie ich dann vorgehen soll? Vielleicht liegt es aber auch an mein verständnis über Strukturen
Würdest du es mir eventuell erklären?
Viele Grüsse
Benni
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 18.11.2013, 20:28
Titel:
|
 |
Hallo,
dazu wäre es hilfreich, wenn du die anfängliche Rückfrage beantwortest: woher kommen diese Variablen denn?
Wenn sie beispielsweise aus einer .mat-Datei geladen werden mit
load myfile.mat
dann kannst du die Daten problemlos in eine Struktur laden mit
Dann wie gesagt mit fieldnames arbeiten und das analysieren.
Wenn die Variablen anders entstehen, muss man weitersehen.
Grüße,
Harald
|
|
|
bensko |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 01.10.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 19.11.2013, 10:44
Titel:
|
 |
Aha jetzt. Sorry das ich es nicht beantwortet habe.
Die Daten werden aus einem Motorsteuergerät ausgelesen und mit INCA aufgenommen.
Ich erhalte eine *dat Datei und die lese ich über MATLAB Tool "MDF File Import" ein.
Gruss
Benni
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 19.11.2013, 14:20
Titel:
|
 |
Hallo,
dieses Tool kenne ich zu wenig. Bietet es die Möglichkeit, die Daten in eine Struktur zu schreiben?
Am einfachsten wäre es ansonsten wohl, die Daten in eine .mat-Datei zu speichern (das sollte wohl gehen) und dann wie beschrieben in eine Struktur zu laden.
Grüße,
Harald
|
|
|
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
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.
|
|