-> Hier kostenlos registrieren
Hallihallöchen allesamt.
Ich bin momentan dabei eine Positionsregelung einer Z-Achse in einem 3Achs-Portal zu realisieren.
Zur Steuerung des Motors der Achse benutze ich die Stepperdriver von Wago 750-672 zusammen mit der WagoAppStepper Library.
Nun möchte ich beim Verfahren dynamisch den Abstand des Sattels an der Z-Achse zum Boden regeln/steuern.
Ich habe dies bereits mit einer Hystereseschaltung versucht, was mir nicht schnell genug ist. Aus diesem Grund wolte ich dies mit einem PID machen, welche Wago in ihrer WagoAppControlSuite ja sogar mit Autotuning zur Verfügung stellt.
Mit dem Autotune feature komme ich leider nicht zurecht. Ich habe mich an dem Video von Kurt Braun auf Youtube inspiriert, wo er ein Autotune für seine Temperaturregelung macht.
Ich habe den Baustein soweit aufgebaut und mir scheint, als würde der Baustein auch richtig beginnen mit seinem Ablauf. Das Problem ist, dass der Sprung, welcher der Baustein auf meine Strecke gibt, so großist, dass die rMaxProcessValue erreicht wird. Wenn das passiert, geht der sStatus in den Status "Abort, because process reached rMaxProcessValue"
Hat jemand von euch eventuell eine Idee wie ich verfahren könnte?
Bilder vom Code liegen hinter dem Link
Ich bin momentan dabei eine Positionsregelung einer Z-Achse in einem 3Achs-Portal zu realisieren.
Zur Steuerung des Motors der Achse benutze ich die Stepperdriver von Wago 750-672 zusammen mit der WagoAppStepper Library.
Nun möchte ich beim Verfahren dynamisch den Abstand des Sattels an der Z-Achse zum Boden regeln/steuern.
Ich habe dies bereits mit einer Hystereseschaltung versucht, was mir nicht schnell genug ist. Aus diesem Grund wolte ich dies mit einem PID machen, welche Wago in ihrer WagoAppControlSuite ja sogar mit Autotuning zur Verfügung stellt.
Mit dem Autotune feature komme ich leider nicht zurecht. Ich habe mich an dem Video von Kurt Braun auf Youtube inspiriert, wo er ein Autotune für seine Temperaturregelung macht.
Ich habe den Baustein soweit aufgebaut und mir scheint, als würde der Baustein auch richtig beginnen mit seinem Ablauf. Das Problem ist, dass der Sprung, welcher der Baustein auf meine Strecke gibt, so großist, dass die rMaxProcessValue erreicht wird. Wenn das passiert, geht der sStatus in den Status "Abort, because process reached rMaxProcessValue"
Hat jemand von euch eventuell eine Idee wie ich verfahren könnte?
Bilder vom Code liegen hinter dem Link