Matlab Simulink Serial Receive

Gast #5563548
Lesenswert?

hallo!

Ich würde gerne mit Simulink Daten von einem arduino einlesen.
Funktionieren tut das ganze auch, nur viel zu langsam.
Es scheint so als würde der Block Serial Receive die eingelesenen Werte 
wiedergeben.
Die Übertragung (längerer Datenstrom) ist schon längst zu Ende, es 
werden aber immer noch Daten verzögert vom S.R. Block eingelesen...

Vielleicht kennt sich ja jemand aus und kann mir helfen.

Vielen Dank im vorraus!

mfg
Angehängte Dateien:
Gast #5565102
Lesenswert?

Was ist für dich zu langsam? Wir sind hier im technischen Forum und 
nicht im Kindergarten.

9600 Baut ist nicht schnell. Aber niemand weiß welche Datenpakete 
übertragen werden.

Fakt ist, dass der Serial Block einen Ringbuffer hat. Dadurch werden die 
Daten nacheinander ausgeben bis dieser leer ist. Du könntest auch dazu 
auch mal den Sourcecode bei Matlab anschauen.

Wenn du jetzt was regeln willst dann musst du einen "blockierenden" 
Zustand einstellen.

Die Latenzzeit des bei Matlab ist auch außerirdisch. Ich habe damals 
beim 2012R 60-70 ms gehabt. Egal welche Datenratten & -größen man 
eingestellt hat. Wohlgemerkt beim Receive Block.
#5565982
Lesenswert?

neben der bautrate kannst du mal schauen ob in den einstellungen vom 
serial receive deine block sample time geändert werden muss. da ich 
nciht weiß was für daten du sendest kann ich nciht sagen welchen, aber 
du könntest auch mal schauen welchen daten typ du brauchst und den ggf. 
anpassen. außerdem kannst du überprüfen, dass in den einstellungen von 
simulink dein solver richtig eingestellt ist.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren