ich hab da ein Problem, ich versuche zu Testzwecken einen Sinus mit einer Abtastzeit von 1ms an einem Scope auszugeben.
Wenn ich ein dementsprechendes Simulink Modell erzeuge und auf dem Arduino Mega 2560 laufen lasse (mittels external mode), so ist der angezeigte Sinus nicht mehr wie erwartet sonder wie im Anhang dargestellt.
Hat dieses Problem schon mal jemand gehabt?
Weiß jemand woran es liegt?
Jemand eine Idee wie ich den gewünschten Sinus anzeigen kann?
Die Zeitskala zeigt die Zeit an, also in einer Sekunde eine Periode.
Also ca. 14 Werte pro sekunde statt 1000 ?
Stimmt, da wird wohl jemand irgendwo schlafen
Einen Wert per analogRead abfragen und ein byte per Serial senden, innerhalb von 1ms, geht ab 9600 Bd.
Ich hab ein anderes Programm bei dem dieses Problem aufgetreten ist. Deshalb hab ich es auf das simpelste reduziert.
Ich fürchte, die Beschreibung was du machst, ist zu sehr reduziert ...
michael_x:
Also ca. 14 Werte pro sekunde statt 1000 ?
Stimmt, da wird wohl jemand irgendwo schlafen
Einen Wert per analogRead abfragen und ein byte per Serial senden, innerhalb von 1ms, geht ab 9600 Bd.
Aber warum ist dann kein Unterschied ob ich 9600 Bd einstelle oder 115200 Bd?
Ich habe inzwischen mit einem Ethernet Shield einen Test gemacht, es geht zwar besser aber mit 1 ms gehts noch immer nicht, erst ab ca. 35ms.
Kann es sein, dass es nicht möglich ist so "viele" Daten zu senden?
Ich werds mal mit Serial receive und serial transmit versuchen!
Es gibt in Simulink die Blöcke "Serial Receive" und "Serial Transmit".
Hier kann man die kommunikation steuern, das heißt es werden nur die Daten übertragen, die man will. (zumindest hab ich das so verstanden)
michael_x:
Ich fürchte, die Beschreibung was du machst, ist zu sehr reduziert ...
Mein Aufbau:
Sinus Block (Abtastzeit von 0.001) verbunden mit Scope
Simuliert ergibt das einen diskretisierten sinus mit einer Abtastzeit von 1ms
Auf Arduino mittels "external mode" ergibt das den "sinus" wie in der Abbildung dargestellt.
Wenn es nicht an der Baudrate liegt und auch nicht an den Datenmengen, weiß ich nicht woran es noch liegen könnte.
Ich hab auch im Internet noch keine ähnlichen Fälle gesehen, oder das ist normal.
michael_x:
Das hat ja nichts mit Arduino zu tun, und sollte dank deiner Abtastrate 1ms ein stufenloses Bild geben ?
Macht es auch wenn ich es in Simulink laufen lasse!
michael_x:
Dann sendest du diese Werte auch seriell an einen Arduino ?
Ich lasse das gleiche noch mal im external mode laufen, das heißt, es wird auf arduino geladen und Simulink kommuniziert während das programm läuft mit arduino (Scope).
michael_x:
Warum überhaupt und wie ( was kommt im Arduino an ?),
und warum stört das dann deine Simulink Scope Anzeige ?
?
Es kommt nichts im Arduino an sondern im Simulink vom Arduino!
Ich denke es liegt an der kommunikation dass meine Scope gestört wird, warum weiß ich leider auch nicht genau, denn das ist ja das Problem das ich habe