Schrittmotor: Ansteuerung plus Positionskontrolle

Für alle, die es interessiert: ich habe nun folgende Lösung gefunden. : Als Schrittmotortreiber habe ich einen Trinamic Tmc5130 verwendet, welcher ein ABN-Encoder-Interface besitzt. Als Encoder wurde der Trinamic TMCS-20 verwendet. Den Tmc5130 kann man über SPI parametrieren und ihm einfach die Sollposition mitteilen. Um Anfahr/Bremsrampen und das Generieren der Schrittmotorsignale kümmert er sich selbst.

Der Programmablauf ist damit extrem simpel geworden.

  1. Sollposition übermitteln
  2. Im Loop auslesen, ob die Positionierung abgeschlossen ist.
  3. Wenn ja, dann die Encoderposition auslesen und mit der Sollposition vergleichen
  4. Wenn eine Abweichung besteht, die größer als eine definierte Höchstabweichung ist, wird die Ist-Position korrigiert und damit die Differenz zur Sollposition gebildet.
    Entsprechend wird dann nachgestellt.
    Ist eine Abweichung vorhanden, welche kleiner als die Definierte Höchstabweichung ist, wird die Ist-Position zur Soll Position erklärt

Größtenteils muss man nur noch Register im Schrittmotortreiber auslesen und beschreiben. Dafür würde wohl sogar ein ATTiny reichen :grin::grin:

Danke an alle, die mir hier geholfen haben und mir die richtige Richtung gezeigt haben.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.