|
et_sleeper |
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 06.10.09
|
|
|
|
Wohnort: Erkelenz
|
|
|
|
Version: R2009a
|
|
|
|
|
|
Verfasst am: 06.10.2009, 11:04
Titel: Modellierung
|
|
|
|
|
Hallo zusammen,
bin direkteinsteiger und neuling was Matlab angeht. Habe schon mal eine kleine Auswertung, d.h. eine x,y grafik erstellt mit plot. und auch schon mal ne simulation mit einem oszi, nem p kanal, nem mux und nem startwertegeber gebastelt, aber nur um mal zu sehen was passiert.
Habe nun folgende aufgabe zubewältigen und stehe aufm Schlauch.
Ich habe Distanzwerte in Excel 2k2 (office xp), distanz a bis d (4stück also grins).
muss jetzt ein model erstellen, ein simples laufband, mit konstanter geschwindigkeit. jetzt kommen die 4 abstandswerte zum spiel. sollte das band näher als 50 cm an das gerüst kommen, an dem man sich festhält, soll es abgeschaltet werden.
Zusammenfassend: Laufband mit konst. geschwindigkeit, 4 Distanzsensoren, deren Werte in Excel vorhanden sind (3 Spalten für Ort des sensors,datum mit uhrzeit und abstand / sowie einige hundert zeilen mit abstandswerten)
was muss ich nun tun? wie geh ich an die sache ran, wie kommen die werte aus excel nach matlab? die sensoren agieren unabhängig voneinander, haben daher auch keinen direkten zeitbezug.
hilfe is das komplex
Danke im voraus für jeden rat, jede hilfestellung
|
|
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 06.10.2009, 14:47
Titel:
|
|
Dann fangen wir mal am Anfang an... XLSREAD ist der bequemste Befehl Daten von Excel nach MATLAB zu bringen.
Andreas
|
|
|
et_sleeper |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 06.10.09
|
|
|
|
Wohnort: Erkelenz
|
|
|
|
Version: R2009a
|
|
|
|
|
|
Verfasst am: 16.12.2009, 16:06
Titel:
|
|
ok, daten habe ich mittels txt datei in matlab eingelesen und in cellen bzw variablen gespeichert.
jetzt wird über eine konstante zeit gemessen, alle 100ms ein wert.
habe vor die simulink simulationszeit dem 100ms-schritt anzupassen und somit eine zeitskala zu erreichen. Aber wie?
desweiteren müssen die werte aus der variablen wärend der simulation ausgelesen werden,
sprich
zeit 0,1 wert 1
zeit 0,2 wert 2
...
aber wie???
danke für die tipps
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 17.12.2009, 11:18
Titel:
|
|
Es ist schwer konkret zu helfen wenn das konkrete Problem unklar ist. Der From-Workspace Block kann das alles.
Andreas
|
|
|
et_sleeper |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 06.10.09
|
|
|
|
Wohnort: Erkelenz
|
|
|
|
Version: R2009a
|
|
|
|
|
|
Verfasst am: 17.12.2009, 13:37
Titel:
|
|
ok, dann werde ich mal was ausführlicher.
Ich habe ein Reales System was eine Abstandsmessung vornimmt. Gemessen werden jeweils 4 Objekte im bezug auf ein bewegliches fliessband.
Die Abtastung erfolg in 0.1 Sekundenschritten, also alle 100ms ein neuer Wert für alle 4 Objekte.
Diese Abstandswerte liegen in einer Celle im Workspace, 4 mal (30000x1 int32)
diese werte werden mit einer Konstanten verglichen und entweder passiert nix, oder eine Warnmeldung kommt.
jetzt soll das Model in 100ms-Schritten einen neuen Wert aus dem Workspace holen, den Vergleich durchführen, und entweder bei unterschreiten einer Konstanten Meldung in txt-Datei schreiben oder bei überschreiten der Konstanten normal weiterarbeiten.
Bsp: Konstante=30
00:00:00,0 35 (weiter)
00:00:00,1 31 (weiter)
00:00:00,2 25 (Meldung in .txt schreiben mit zeitstempel und Wert (bzw welcher wert es war, gibt ja 4)
00:00:00,3 31 (weiter)
...
hilft euch das weiter? Problem soweit verstanden?
|
|
|
et_sleeper |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 06.10.09
|
|
|
|
Wohnort: Erkelenz
|
|
|
|
Version: R2009a
|
|
|
|
|
|
Verfasst am: 04.01.2010, 11:42
Titel:
|
|
Morgen und Frohes neues geehrtes Forum,
habe mich momentan entschlossen ein Matlab-File zu schreiben. Habe aber ein Problem. Ich bekomme einen Fehler:
" ???Attempted to access Time_A(22,: ); index out of bounds because size (Time_A)=[21,6]. "
Mein Prog lautet:
i=1; AZ=1;
while(AZ<=AZ_STOP)
T_Differenz = etime(Time_A(i+5,: ),Time_A(i,: ))
i=i+1;
end
Meine Daten sind enthalten in Time_A (Matlab: <21x6 double>), dies ist mein datevec-Array
grüße et_sleeper
|
|
|
Yoda |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 05.01.2010, 11:19
Titel:
|
|
Hallo, habe zu diesem thema eine angrenzende frage:
ich verwende als eingang dient from workspace, daten sind uhrzeit und value, weitergehend zu einem embedded M-Function block der in ein s r flipflop geht.
embedded hat einen eingang, u, vom workspace block. 2 ausgänge, x für Q und y für Qnicht. wie bekomme ich es hin, dass mein Flipflop booleanwerte erhält um zu schalten?
grüße
yoda
|
|
|
|
|
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 - 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.
|
|