Eine Achse, die über einen Absolutgeber verfügt, kann eine Position speichern, so dass sie nach einem Neustart der Steuerung ihre vorige Position behält. Eine Referenzfahrt wird unnötig. Die Funktionsbausteine SMC3_PersistPosition, SMC3_PersistPositionLogical und SMC3_PersistPositionSingleTurn bieten die Funktionalität zur Speicherung. Die Positionsdaten werden in SMC3_PersistPosition_Data, SMC3_PersistPositionLogical_Data und SMC3_PersistPositionSingleTurn_Data gespeichert.
Der Ausgang bPositionStored zeigt an, ob die geänderten Daten in PersistentData gespeichert wurden. Je nach Art des Persistierens passiert dies unterschiedlich häufig.
Siehe auch
Achsposition eines Multiturn-Absolutgebers mit realer Achse persistieren
Voraussetzung: Die Achse verfügt über einen Multiturn-Absolutgeber.
Verwenden Sie den Baustein SMC3_PersistPosition um die Position der realen Achse zu persistieren. Das zugehörige Programm läuft in der Motion-Task.
Legen Sie eine Instanz des Bausteins SMC3_PersistPosition für die Achse an.
⇒ pp: SM3_BASIC.SMC3_PersistPosition;
Instanzieren Sie eine persistente Datenstruktur des Typs SMC3_PersistPosition_Data.
⇒ pp_Data: SM3_BASIC.SMC3_PersistPosition_Data1;
Info
Die Persistierung der Instanz erfolgt über eine Deklaration als VAR_PERSISTENT oder über den Persistence Managers des Application Composers.
Erweitern Sie das Programm der Motion-Task so, dass dort ein Aufruf der SMC3_PersistPosition-Instanz implementiert ist.
⇒ Aufruf implementiert in CFC:
Der Funktionsbaustein wird zyklisch mit der Motion-Task aufgerufen. Die SMC3_PersistPosition-Instanz führt während des Start-up-Vorgangs das Wiederherstellen der gespeicherten Position durch. Der Baustein speichert im Normalbetrieb die Istposition in die zugehörige Datenstruktur ab.
Siehe auch
Achsposition eines Singleturn-Absolutgebers mit realen Achse persistieren
Voraussetzung: Die reale Achse verfügt über einen Singleturn-Absolutgeber.
Verwenden Sie den Baustein SMC3_PersistPositionSingleturn um die Position der Achse zu persistieren. Das zugehörige Programm läuft in der Motion-Task. Die Position wird nur dann korrekt angezeigt, wenn die Achse zwischen Aus- und Einschalten der Steuerung keine oder nur eine kleine Distanz zurückgelegt hat (maximal die Hälfte der Singleturn-Distanz). Um das erreichen, können Sie beispielsweise eine mechanische Bremse verwenden. Wenn die Achse bei ausgeschalteter Steuerung eine größere Bewegung macht, erhält sie eine falsche Position. Eine Überprüfung durch den Baustein ist nicht möglich.
Legen Sie eine Instanz des Bausteins SMC3_PersistPositionSingleturn für die Achse an.
⇒ ppst_X: SM3_BASIC.SMC3_PersistPositionSinglturn;
Instanzieren Sie eine persistente Datenstruktur des Typs SMC3_PersistPositionSingleturn_Data.
⇒ ppst_Data_X: SMC3_PersistPositionSingleturn_Data;
Info
Die Persistierung der Instanz erfolgt über eine Deklaration als VAR_PERSISTENT oder über den PersistenzManagers des Application Composers.
Erweitern Sie das Programm der Motion-Task so, dass dort ein Aufruf der SMC3_PersistPositionSingleturn-Instanz implementiert ist und ihr die persistente Datenstruktur vom Typ SMC_PersistPositionSingleturn_Data übergeben wird.
Siehe auch
Achsposition einer logischer Achse persistieren
Voraussetzung: Die Achse ist logisch.
Verwenden Sie dem Baustein SMC3_PersistPositionLogical um die Position der logischen Achse zu persistieren. Das funktioniert nur, wenn die Position der übergeordneten realen Achse persistiert wurde.Die Position einer virtuellen Achse kann mit diesem Bausteinen nicht persistiert werden.
Legen Sie eine Instanz des Bausteins SMC3_PersistLogical für die Achse an.
⇒ ppl: SM3_BASIC.SMC3_PersistPositionLogical;
Instanzieren Sie eine persistente Datenstruktur des Typs SMC3_PersistPositionLogical_Data.
⇒ ppl_Data: SMC3_PersistPositionLogical_Data;
Info
Die Persistierung der Instanz erfolgt über eine Deklaration als VAR_PERSISTENT oder über den PersistenzManagers des Application Composers.
Erweitern Sie das Programm der Motion-Task so, dass dort ein Aufruf der SMC3_PersistPositionLogical-Instanz implementiert ist und ihr die persistenten Daten vom Typ SMC3_PersistPositionLogical_Data übergeben werden.
Siehe auch