TIA Simatic S7-1200 CPU mit Sinamics S200 Antrieb Messungsergebniss

Johanning

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

wir betreiben eine S7-1200 CPU mit einem Sinamics Servoantrieb. Jetzt möchten wir währen eine Lichtschranke über das Material läuft, erkennen, wie lang genau das Material ist. Am liebsten währe dem Konstrukteur wenn das Ergebnis auf 0,200 mm genau ist, was aber wegen der Zykluszeit (17ms) nicht funktionieren kann, da wir 500mm / Sekunde fahren. Der S200 hat ja Messeingänge, könnten wir die Lichtschranke auch auf den Messeingang vom S200 verdrahten und hätten dann ein genaueres Ergebnis?
 
Hi,
am schönsten wäre es, wenn Du eine S7-1200 G2 (Generation 2) hast. Dann einfach den S200 an ein Technologieobjekt PositioningAxis anbinden. Telegramm105. In dem TO dann einen Messtaster anlegen (Konfiguration Messen über Profidrive Telegramm). Auswertung dann über PLCOpen Befehl MC_Measuring Input. Genauigkeit der Messung : 1us. gerne kannst du den Mess-ini auf beide Messeingänge legen und Du kannst dann gleichzeitig positive und negative Flanken- Messaufträge starten, und nicht immer umschalten

Wenn Du eine alte 1200er hast, wird es schwieriger. Normalerweise nimmst Du dann den EPOS im Antrieb. Da ist aber kein Messtaster vorgesehen. D.h. Du musst die Messaufträge selber im Gebersteuerwort starten und die Messwerte selber hochlesen. Eventuell mit Azyklischen Diensten. Das hab ich vor ewigkeiten schon mal im S120 gemacht und kann nicht versprechen, das es mit dem S200 auch klappt....

nimm dann doch besser den schnellen Onboard Zähler und folgendes Beispiel: https://support.industry.siemens.com/cs/ww/de/view/109742346

LG
Harald
 
Genau, ich fahre mit EPOS im Antrieb. Wenn ich die Messung jetzt mit einem schnellen Eingang der S7-1200 G1 (leider, aber wir haben da auch noch 4 Schrittmotoren) realisieren möchte, brauch ich wahrscheinlich noch einen Inkrementalgeber. Da ich den Geberwert ja nur über den Bus vom S200 bekomme.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Probier mal nen Hardware Interupt auf den Eingang des Lichttasters zu legen und im zugehörigen OB den Positions-Istwert des Antriebs per Peripherie-Zugriff zu lesen. Das wäre unabhängig von der Zykluszeit.
Bei der 1200er kannst Du per Haken in der HW-Konfig auf den Onboard-DI "Erkennung einer steigenden/fallenden Flanke aktivieren" scharf stellen und den zugehörigen Prozessalarm-OB angeben.
 
Tipp dazu:
Nimm 2 unterschiedliche OBs für steigende und fallende Flanke und schreib einfach jeweils nur den Xist in einen DB. Den Abstand der beiden Positionen rechnest Du dann im regulären Programm.
 
Tipp dazu:
Nimm 2 unterschiedliche OBs für steigende und fallende Flanke und schreib einfach jeweils nur den Xist in einen DB. Den Abstand der beiden Positionen rechnest Du dann im regulären Programm.

Dann musst du aber auch noch mit dem Profinet-Einstellungen spielen.
Ich denk mal, dass der Antrieb in dem Fall nicht mit Profinet IRT angebunden ist, sondern "normal".
Sendetakt liegt geschätzt bei 2ms. Dann kommst du - meiner Meinung nach - bei 500mm/s nicht auf die gewünschten 0,2mm Genauigkeit.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also das auf der SPS zu realisieren kannst du vergessen. Bei 0,2 mm/s Genauigkeit und 500 mm/s Geschwindigkeit brauchst du eine Messfrequenz von min. 2,5 Khz - also eine Abtastzeit von 0,4 ms - das ist mit S7-1200 und Profinet-RT nicht machbar.

Der S200 besitzt die Messtastereingänge, du musst die Funktion halt selbst ausprogrammieren über Parameterzugriffe, dann kannst du auch die µs-Auflösung der Messtaster verwenden.
 
Zurück
Oben