-
-
Hallo Redbaron,
das mit der Massenträgheit ist klar...das ist nicht das Thema. Beide Fälle können zum Schrittverlust führen...zu große Beschleunigungen und ebenso auch undefinierte Lastwechsel....
Zum Thema Fahrweg. Ich weiß was du mit den Geschwindigkeiten meinst, aber das ist in deinem Fall so wie du es mir beschrieben hast nicht richtig....
Prinzipiell ist es ein Ziel jedes Roboters eine bestimmte Bahn (z.B. Gerade abzufahren). Dazu gibt es eigentlich zwei Hauptverfahren:
A) Das Multi-Point-Verfahren, hier wird die Bahn in einzelne Segmente unterteilt, und die einzelnen Punkte nacheinander angefahren.
B) Dynamische Geschwindigkeitsregelung. Hier bewegen sich alle Motoren synchron, d.h alle Motoren starten zum selben Zeitpunkt und stoppen auch zum selben Zeitpunt. Abhängig von der Bahn wird hier dynamisch die Geschwindigkeit/Richtung geändert.
Es gibt auch noch Sonderfälle, z.B. PTP (Point to Point), hier laufen alle Achsen asynchron mit maximaler Geschwindigkeit. Das Ergebnis ist natürlich eine Art Schlangenbahn. Ziel ist es blos möglichst schnell von A nach B zu kommen.
Nach deinen Beschreibungen hab ich gedacht, du willst Variante A umsetzten. Damit kann ich aber nicht unterschiedliche Geschwindigkeiten realisieren, sondern nur die Taktfrequenz für den gesamten Vorgang ändern (es wird ja immer nur ein Step betrachtet), oder täusche ich mich da?
Im Prinzip läuft das auf ein ähnliches Prinzip hinaus, weil über den Durchschnitt der gesamten Strecke eine unterschiedliche Anzahl von Schritten durchgeführt wurde, und über das Verhältnis von Schrittanzahl zu Schrittpausen sich unterschiedliche Geschwindigkeiten abbilden. Dies entspricht aber nicht der Variante B. Dies ist aber auf Grund der Schrittmotoren und dem Schrittwinkel denke ich auch nicht realisierbar, da ich den Motor nicht beliebig langsam laufen lassen kann.
Ich habe heute noch einmal gesteste mit einem alten Stepper. Dort liegt die Start-/Stopfrequenz ohne Last mit Vollschritt bei ca. 400 hz. Diese wird natrülich mit Last nach unten gehen, aber genaueres weiß ich nur nach der Montage des Roboters. Ich denke für meine Applikation benötige ich keine Rampen, da mit einer Frequenz von angenommen 200 hz und einem typischen Positionierwinkel von 90 Grad liege ich schon bei 250 ms pro 90 Grad Verfahrwinkel. Dies entspricht einen Verfahrweg von ca. 150 mm. Das sollte an Dynamik locker für einen Hobbyroboter reichen.
Richtig: Taktsteuerung erfolgt vom PC mit Windows XP über die parallele Schnittstelle.
Die Generierung der Signale erfolgt über einen Softwaretimer, unter Berücksichtigung der Systemfrequenz und der Systemzeit. Ich verwende ein Tastverhältnis von Puls/Pause von 0,5 und versuche die Brechnungen nach dem Timeraufruf so gering wie möglich zu halten.
Lief heute bei 2,5 ms/Takt problemlos. Niedrigere Takte hat der Schrittmotor nicht vertragen, da die Start-/ Stoppfrequenz überschritten wurde.
Du kannst mir deine Email-Adresse zukommen lassen, dann schicke ich dir mal mein einfaches Ansteuerprogramm. Ist nichts besonderes, aber es scheint auch bei größeren Taktraten zu funktionieren.
P.S: Ich habe einen Standartrechner 2,4 Ghz mit Windows Xp, Neuinstalliert ohne Internetzugang, Virenscanner, oder andere Nutzloser Software...ist halt nur ein Bastelrechner. Aber ich habe noch nie an Prozessprioritäten rumgedreht.
Gruß
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen