Sinuskurve für Motorsteuerung

Neue Frage »

Deepdiver99 Auf diesen Beitrag antworten »
Sinuskurve für Motorsteuerung
Meine Frage:
Möchte mit einem Motor eine Sinusförmige Geschwindigkeitskurve abfahren.Sie soll von 0->VMax->0 laufen. Das dürfte einen Sinus von 0-180 Grad entsprechen.

Wie kann ich das berechnen?

Meine Ideen:
An dem Motor ist eine Lochscheibe für die Positionsbestimmung montiert.

Insgesamt sollen 100 Löcher abgefahren werden was dann dem Weg entspricht.
Diese 100 Löcher sollen innerhalb von 1000 Takte passieren. Die Takte entsprechen dann der Zeit.

Ich brauche jetzt die Zeit zwischen den einzelnen Löchern.

Die Löcher auf der Lochscheibe haben natürlich alle den gleichen Abstand zueinander.

Würde mich freuen wenn mir jemand bei der Lösung helfen könnte.
Steffen Bühler Auf diesen Beitrag antworten »
RE: Sinuskurve für Motorsteuerung
Willkommen im Matheboard!

Du änderst also Deine Geschwindigkeit innerhalb dieser 1000 Takte sinusförmig von Null auf vmax und wieder auf Null.

Takt Null entspricht also dem Winkel 0°, Takt 1000 dem Winkel 180°. Das Maximum dieser Halbwelle ist vmax.

Damit kannst Du eine Formel hinschreiben, die v in Abhängigkeit vom aktuellen Takt zurückgibt.

Damit solltest Du in der Lage sein, die einzelnen Zeiten auszurechnen.

Viele Grüße
Steffen
Deepdiver99 Auf diesen Beitrag antworten »

Hallo Steffen!

Danke für deine schnelle Antwort.

Soweit ist mir das auch klar, suche jetzt aber genau diese Formel und hoffe da auf eure Hilfe.
Steffen Bühler Auf diesen Beitrag antworten »

Wir helfen Dir doch schon.

Hier ist eine normale Sinushalbwelle:



Die ist 1 hoch und breit. Ok?

Du willst sie jetzt nicht 1, sondern vmax hoch haben. Was mußt Du also tun?

Und Du willst sie nicht , sondern 1000 breit haben. Was mußt Du also tun?

Viele Grüße
Steffen
Deepdiver99 Auf diesen Beitrag antworten »

Bei Pi/1000 hab ich dann die Breite?!

Aber wie ich an VMax komme will mir nicht einleuchten.
Steffen Bühler Auf diesen Beitrag antworten »

Zitat:
Original von Deepdiver99
Bei Pi/1000 hab ich dann die Breite?


Nein, bei x= hast Du den ersten Schritt gemacht. Diese Zahl ist also Deine Schrittweite pro Takt. Beim zweiten Takt sind's dann , beim 1000. Takt

Ändere also das x von der Funktion f(x)=sin(x) entsprechend ab.

Zitat:
Original von Deepdiver99
Aber wie ich an VMax komme will mir nicht einleuchten.


Ich dachte, das ist gegeben?

Viele Grüße
Steffen
 
 
Deepdiver99 Auf diesen Beitrag antworten »

Nein, Vmax ist unbekannt.

Ist vielleicht auch ein bisschen falsch ausgedrückt mit dem VMax.

Es sind 100 Löcher der nacheinander abgefahren werden. In dieser Zeit (0-100 Löcher) sollen 1000 Takte vergangen sein.
Das ganze soll dann Sinusförmig geschehen. Das heisst von Loch 1 - Loch 2 vergehen "viele" Takte. Bei den nachfolgenden Löchern es werden bis zum Scheitel(Pi/2) entsprechend dem Sinus immer weniger Takte werde. Nach dem Scheitel nehmen dann die Takte zwischen den Löchern ja wieder zu. Ich möchte jetzt berechen wieviel Takte zwischen den jeweiligen Löchern liegen.
Also wieviel Takte nach Loch 1 vergangen sind, dann nach Loch 2 usw. bis zu den 100 Löchern.

Hoffe das war jetzt etwas besser erklärt
Steffen Bühler Auf diesen Beitrag antworten »

Das war in der Tat besser erklärt, allerdings bin ich jetzt leider den Rest des Abends verplant und komme erst morgen dazu, Dir hier weiterzuhelfen.

Vielleicht schreibt noch jemand anders was, ansonsten bis morgen!

Viele Grüße
Steffen
Deepdiver99 Auf diesen Beitrag antworten »

Alles klar. Vielen Dank und bis Morgen.
Steffen Bühler Auf diesen Beitrag antworten »

Ich würde folgenden Ansatz wählen:

Die Geschwindigkeit nimmt sinusförmig zu und wieder ab, wie im Graphen gezeigt. Der Gesamtweg, also die 100 Löcher, ist das Integral dieser Sinushalbwelle:



Nun wird das erste Loch von den 100 angefahren. Das Integral soll also den Wert 0,02 annehmen. Jetzt wird also die Obergrenze t gesucht, bei dem das der Fall ist:







Bei t=0,2 haben wir also das erste Loch erreicht, das entspricht Takten.

Und so sollte man die weiteren Takte ausrechnen können.

Viele Grüße
Steffen
Deepdiver99 Auf diesen Beitrag antworten »

Vielen Dank schon mal für deine Mühe.

Als Nichtmathematiker komme ich leider nicht mit den Symbolen zurecht. Kann man die Formeln auch in "normaler" Schreibweise darstellen, damit ich sie besser nachvollziehen kann? Z.B. so wie hier "e^ln(2x^(sqrt(x))) = e^(sqrt(x)*ln(2)+sqrt(x)lnx)"
Steffen Bühler Auf diesen Beitrag antworten »

Zitat:
Original von Deepdiver99
Als Nichtmathematiker komme ich leider nicht mit den Symbolen zurecht.


Was genau verstehst Du denn nicht?
Deepdiver99 Auf diesen Beitrag antworten »

// diesen Symbol heißt Summe von 0-Pi ?

sin(x) * d* x = 2 // x wird gesucht?! was ist d? der Weg(die Löcher)?

// was ist "-cost"? +cos(0) ?

// soll arccos(0,98) sein?

// soll heißen "leitet ab"?
Steffen Bühler Auf diesen Beitrag antworten »

Oje, was machen wir jetzt? Du hast die Frage im Hochschulbereich gestellt, da ging ich davon aus, daß Du Integralrechnung beherrschst und weißt, was eine Arcusfunktion ist.

Ohne diese Kenntnisse kannst Du diese Aufgabe aber nicht lösen. Wo hast Du sie her?

Die Lösung und ihre Herleitung hab ich hingeschrieben, und wenn Du willst, erkläre ich Dir auch die Grundlagen - denn Du sollst es ja herleiten können. Kann aber dauern, das ist einiges an Stoff.

Viele Grüße
Steffen
Deepdiver99 Auf diesen Beitrag antworten »

Dachte das es von der Schwierigkeit her mehr im Hochschulbereich passt. Wusste nicht das es da um das eigene Wissen geht.

Hatte Mathe nur bis zur 10 Klasse. War aber immer sehr gut und bin auch so ganz interessiert an Mathe.

Wenn du also Zeit und Lust hast würde ich gerne deine Herleitung erklärt bekommen.
Steffen Bühler Auf diesen Beitrag antworten »

Ich will's mal versuchen. Ich gehe davon aus, daß Du das zum Privatvergnügen machst, denn wenn's für Schule (oder gar Arbeit) ist, wirst Du bei diesen Ansprüchen sehr schnell in Schwierigkeiten kommen, Du kannst ja nicht dauernd hier nachfragen. In diesem Fall solltest Du schleunigst mit Deinem Lehrer oder Chef reden.

Gegeben ist ja die Geschwindigkeits-/Zeitfunktion, also die Sinushalbwelle.

Die Fläche unter dieser Kurve ist (wegen s=v*t) der zurückgelegte Weg. Wenn Du den zu einem bestimmten Zeitpunkt wissen willst, mußt Du also die Fläche unter der Sinuskurve von Null bis zu diesem Zeitpunkt berechnen.

Die Integralrechnung sagt, daß dies die Differenz der Stammfunktionswerte ist. Die Stammfunktion von sin(x) ist -cos(x). Ohne Einheiten ist also der gesamte Weg von Anfang bis Ende der Halbwelle:

-cos(pi) - (-cos(0)) = -(-1) - (-1) = 1+1 = 2

Auf diesen Gesamtweg beziehen wir uns nun, dann kann man sich die tatsächlichen Einheiten schenken.

Diesen Weg kann man nun in hundert gleiche Abschnitte einteilen, die sind dann also 0,02 lang. Die Halbwelle wird also in hundert gleichgroße Flächen zerlegt, die natürlich auf der Zeitachse unterschiedliche Breiten haben, denn die Höhen sind ja auch immer unterschiedlich. Diese unterschiedlichen Breiten wollen wir wissen.

Nun haben wir also z.B. die erste Fläche 0,02 unter sin(x) gegeben und suchen das passende x dazu. Das heißt, statt pi (für die gesamte Halbwelle, was ja 2 als Fläche ergab) setzen wir nun x in die Formel:

-cos(x) - (-cos(0)) = 0,02

Das läßt sich umformen zu

-cos(x)+1=0,02

-cos(x)=0,02-1

cos(x)=0,98

x = arccos(0,98) = 0,2

Allgemein also für eine gegebenen Weg s:

x = arccos(1-s)

Bingo! Zum Zeitpunkt 0,2 (bei Gesamtzeit pi) haben wir das erste Hunderstel des Weges zurückgelegt - also das erste Loch erreicht. Die Gesamtzeit pi entspricht 1000 Takten, das sind dann über Dreisatz etwa 64 Takte.

Wenn's bis hierher klar ist, kannst Du ja mal ausrechnen, wieviel Takte es zum zweiten Loch sind.

Viele Grüße
Steffen
Deepdiver99 Auf diesen Beitrag antworten »

Das hast du sehr gut Erklärt Gott .

Brauche das für mein Hobby. Bastle mit Mikroelektronik und Programmiere gerne. Aus der Schule bin ich jetzt schon fast 20 Jahre raus und mein Chef bin ich selbst Augenzwinkern .

Hier die Werte:

Loch 1 = 63,76856086
Loch 2 = 26,56590974
Loch 3 = 20,490216
Loch 4 = 17,36374709
Loch 5 = 15,37785943
Loch 6 = 13,9761323
Loch 7 = 12,92100296
Loch 8 = 12,09146261
Loch 9 = 11,41847705
Loch 10 = 10,85939666
usw.


Vielen Dank! Bei ein paar Sachen werde ich noch mal nachlesen wie z.B. "...Differenz der Stammfunktionswerte ...".

Habe da noch eine andere Sinusberechnung, aber die versuche ich erst mal mit den neu gewonnenen Erkenntnissen selbst zu lösen. Wenn ich da nicht weiter komme würde ich mich gerne noch mal melden wenn das Ok ist.

Viele Grüße Burkhard
Ehos Auf diesen Beitrag antworten »

Ich verstehe dein Problem so:
Du willst eine Strecke L mit einer sinusförmigen Geschwindigkeit derart abfahren, dass die Geschwindigkeit am Wegbeginn s=0 und am Wegende s=L verschwindet und in der Mitte bei s=L/2 maximal ist. Folgende Weg-Zeit-Funktion leistet das Gewünschte



Die Dauer der Bewegung betägt , denn nach Einsetzen dieses Wertes kommt in der Tat die Strecke L heraus. Differenzieren ergibt die gewünschte Geschwindigkeit



Wie gewünscht verschwindet die Geschwindigkeit zu Beginn t=0 sowie zum Ende und hat in der Mitte bei den maximalen Wert .
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »