Sinamics S120 Messtasterauswertung

Edition35

Level-1
Beiträge
55
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich habe folgendes Problem:
Es soll mittels einem Servoantrieb 2 Teile miteinenader verschraubt werden. Mit einer Lichtschranke wird erfasst, dass die Gewinde der Teile ca. den halben Weg zurückgelegt haben. Dann wird umgeschaltet auf Fahren auf Festandschlag, um die beiden Teile mit begrenztem Drehmoment zu verschrauben. Das ganze geschieht über die EPOS Verfahrsätze.
Nun möchte ich wissen, zu welcher Position die Lichtschranke angegangen ist, um festzustellen wie lange der Weg war bis der Festanschlag erreicht wurde.

Wie kann ich die Positionswerte aus dem Messwertspeicher auslesen? Referenzieren über den Taster kommt nicht in Frage, da ich vor dem Schraubprozess absolut Positionieren muss.

Kommuniziert wird mit einer CPU1516 über SINA_POS und SINA_PARA mittels Telegramm 111.

Danke für eure Hilfe.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
... falls Du den Messwertspeicher nutzt, dann steht der Wert auch in einen Parameter (r2523 ?).
Diesen könntest Du per Zusatzdaten übertragen. Ansonsten wenn Du den Messwertspeicher nicht nutzt, kann man den auch selbst handeln - siehe p2510, p2511 - da steht auch was im Listenhandbuch / Funktionshandbuch wie man das macht.

Aber wenn Du eh schon eine S7-1500 hast, warum nutzt Du nicht gleich Technologieobjekte?
Motion Control Anwendungen lassen sich mit den TO´s recht einfach umsetzten.
https://support.industry.siemens.com/cs/ww/de/view/48816191
Statt dem EPos läuft der Antrieb nur als Steller mit Telegramm 105 (DSC- Mode) und die ganze Lagesollwertinterpolation für all Deiner Achsen läuft zentral auf der Steuerung.

Aber wenn Du jetzt schon alles ausprogrammiert hast, dann kann man´s natürlich auch mit dem EPos machen.
 
Hallo zako,

TO hatte ich mir überlegt. Habe mich jedoch wegen der CPU Belastung (6 Achsen) dagegen entschieden. Ich denke auch dass die Erfassung der Lichtschranke dann zu langsam wäre.

Ich lese nun r2678 (Externer Satzwechsel Istposition) aus. Das funktioniert soweit auch, nur dass dort manchmal negative Werte drin stehen, obwohl Modulo und Lastverfolgung aktiviert ist. Kann es sein das dieser Wert den kürzesten relaltiven Verfahrweg zu 0 LU beschreibt??? Es steht leider nichts dazu in der Hilfe.

Danke!
 
... wenn der Lageistwert bei einer Moduloachse negative ist, dann kommt das durch den Schleppabstand.

Bsp.: Moduloachse mit 360000 Milligrad Modulolänge und Lageistwert = -5000 Milligrad ==> Lageistwert ist 355000 Milligrad.

Hast Du die Drehzahlvorsteuerung auf 100% gestellt?

PS.: Genauigkeitsanprobleme bekommst Du mit dem TO auch nicht, da mit dem Messwertspeicher (Interrupt) gearbeitet wird.
Die Rechenzeit würde schon nach oben gehen, aber man kann den Interpolatortakt am TO moistens recht hoch stellen, da man mit Taktuntersetzung arbeiten kann. Die Lagereglung erfolgt eh im Stromreglertakt (=125µs default).
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Vorsteuerung ist default bei 0%.

8D5O4lcvllEgEAAAAASUVORK5CYIIA
Ashampoo_Snap_2017.04.21_15h19m27s_001_.png


Heißt das dass ich bei einem negativen Wert die LU pro Lastumdrehung dazu addieren muss?
oder Grundsätzlich dazu addieren und wenn größer 3600 die 3600 subtrahieren?
Steh grad bisschen auf dem Schlauch!
Was mich auch noch wundert, ist dass der Parameter r2678 (Externer Satzwechsel Istposition) den Datentyp INT hat und nicht wie der Lageistwert DINT.

Mit TO werde ich mich mal bei Gelegenheit beschäftigen.

Danke für deine Hilfe.
 
Zurück
Oben