Beispiel „Planar-Mover mit External Setpoint Generation anlegen und verfahren“

Anhand dieser kurzen Anleitung werden Sie ein TwinCAT-Projekt anlegen, das einen Planar-Mover enthält und auf einfache Weise mittels externer Sollwertgenerierung verfährt.

Planar-Mover anlegen

Siehe Konfiguration.
1. Legen Sie einen Planar-Mover an.
2. Versetzen Sie „Parameter (Init)“ in den Simulationsmodus (TRUE). Der Parameter ist versteckt und wird nur sichbar, wenn man die Checkbox „Show Hidden Parameters“ aktiviert.

PLC anlegen

Siehe Vorabschritte PLC anlegen.
1. Legen Sie über MAIN den oder die Mover („MC_PlanarMover“) wie folgt an.
Beispiel „Planar-Mover mit External Setpoint Generation anlegen und verfahren“ 1:
Diese/r repräsentiert den/die Mover in der MC Configuration.
2. Legen Sie, wie nachfolgend gezeigt, einen Planar-Mover, eine Zustandsvariable für eine Zustandsmaschine und Variablen für den externen Sollwert an.
PROGRAM MAIN
VAR
    mover : MC_PlanarMover;
    state : UDINT;
    p,v,a : MoverVector;
    deltat : LREAL := 0.001;
velo, acc, jerk : LREAL;
END_VAR
3. Programmieren Sie anschließend in der MAIN einen Ablauf.
Dieser Programmcode aktiviert den Mover und startet die externe Sollwertgenerierung. Dann wird ein Profil abgefahren, das mit positiver Geschwindigkeit endet. Das anschließende Stopp der externen Sollwertgenerierung sorgt dafür, dass der Mover seine Geschwindigkeit auf Null reduziert und nach dem Anhalten im Zustand FreeMovement ist (dies geschieht mit der Maximaldynamik des Movers).
CASE state OF
  0:
    mover.Enable(0);
    state := 1;
  1:
    IF mover.MCTOPLC.STD.State = MC_PLANAR_STATE.Enabled THEN
      state := 2;
    END_IF
  2:
    p.x := 0.0; v.x := 0.0; a.x := 0.0;
    mover.StartExternalSetpointGeneration(0,0);
    mover.SetExternalSetpoint(p,v,a);       
    state := 3;
  3:
    velo := v.x;
    acc := a.x;
    p.x := p.x + deltat * velo + deltat * deltat / 2 * acc + deltat * deltat * deltat / 6 * jerk;
    v.x := v.x + deltat * acc + deltat * deltat / 2 * jerk;
    a.x := a.x + deltat * jerk;
    mover.SetExternalSetpoint(p,v,a);
    IF a.x >= 10.0 THEN
      jerk := -1;
    END_IF;
    IF a.x <= 0.0 THEN
      state := 4;
    END_IF;
  5:
    mover.StopExternalSetpointGeneration(0);
    state := 6;    
END_CASE

Befehl abschicken

4. Um die Kommandos zu senden, müssen Sie nach dem END_CASE die Update-Methode des Movers triggern:
mover.Update();

Durch das Bauen der PLC wird ein Symbol des „PLC-Movers" erzeugt, welches anschließend mit der Mover-Instanz im MC-Projekt verknüpft werden kann.

1. Verwenden Sie zum Bauen den Pfad PLC > Untitled1 > Untitled1 Project > Build.
Beispiel „Planar-Mover mit External Setpoint Generation anlegen und verfahren“ 2:
Anschließend kann der Planar-Mover im „MC Project“ (Doppelklick) mit dem Button Link To PLC… im Reiter Settings verknüpft werden.
Beispiel „Planar-Mover mit External Setpoint Generation anlegen und verfahren“ 3:

Projekt aktivieren und starten

1. Aktivieren Sie die Konfiguration über den Button in der Menüleiste Beispiel „Planar-Mover mit External Setpoint Generation anlegen und verfahren“ 4:.
2. Versetzen Sie das TwinCAT-System in den Zustand „Run“ über den Button Beispiel „Planar-Mover mit External Setpoint Generation anlegen und verfahren“ 5:.
3. Loggen Sie die PLC über den Button in der Menüleiste ein Beispiel „Planar-Mover mit External Setpoint Generation anlegen und verfahren“ 6:.
4. Starten Sie die PLC über den Play-Button in der Menüleiste.

Der Mover steht am Ende des Zustandsautomaten (state=6) auf der gewünschten positiven x-Position.

Beispiel „Planar-Mover mit External Setpoint Generation anlegen und verfahren“ 7: