Hallo Forum, ich bin gerade dabei mir eine Fräse zu bauen, ich haben nun folgendes Problem : Ich Pulse den Steppercontroller mit einem Timer--> ich setzte und lösche einen Bit-Ausgang über einen 8bit Timer. Nun möchte ich genau einstellen können wie viele steps/sekunde ausgegeben werden sollen (speed) Könnt Ihr mir bitte einen Anstoss geben wie ich das angehen soll.. (zurzeit stelle ich den Reload wert vom timer um) Danke!
einen zähler für die steps mitlaufen lassen und im interrupt prüfen/incrementieren.
Hallo, Das habe ich schon, aber wie bekomme ich es hin das es 4000steps pro sekunde ist oder 500 pro sekunde ? danke!
über den timer vorteiler und den "vorlade" wert kannst du die frequenz einstellen/berechnen
> Nun möchte ich genau einstellen > können wie viele steps/sekunde ausgegeben werden sollen (speed) So baut (programmiert) man das nicht. ENTWEDER man benutzt ein festes Zeitraster und verwendet Bresenham um zu bestimmen, bei welchem der Zeotrasterpunkte man einen Step in x, y und z Richtung auslöst. Diese Zeitpunkte werden mit Beschleunigungsrampen und Maximalgeschwindigkeit vorwegbestimmt. Oder man nutzt die höchste Zeitauflösung für sauberen Motorenlauf, hat die Zeitpunkte in einer Liste gspeichert und setzt den Timer nach jedem Event neu mit der Zeit bis zum nächsten Event (ausser bei Events die so schnell hintereinander kommen daß gar kein Timer notwendig ist). Ohne Beschleunigung und Bremsrampe, ohe unterschiedliche Geschwindigkeiten für x und y Achse wird das nichts.
Für Methode 1 empfiehlt sich ein Blick in http://dank.bengler.no/-/page/show/5470_grbl?ref=mst Für Methode 2 gibt es einen genialen Algorithmus, nur leiden lassen sich so die 3 Rampen nicht koordinieren. http://eetimes.com/design/embedded/4006438/Generate-stepper-motor-speed-profiles-in-real-time
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.