Siemens
Siemens

Digital Industries, Motion Control, Machine Tool Systems

Schrittweite Drehzahl-Override

Beitrag 25.08.2020, 22:12 Uhr
SvenjaR
SvenjaR
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 25.06.2020
Beiträge: 6
Hallo zusammen,
ich bin aktuell dabei eine adaptive Drehzahlanpassung für eine DMG-5-Achs Fräsmaschine mit einer SIEMENS 840Dsl-Steuerung zu programmieren, um Ratterschwingungen zu vermeiden. Der Drehzahl-Override wird aktuell von einen IPC über den Profibus ($A_DPWS_IN[...]) auf die Steuerung geschrieben:

ID = ... DO $AA_OVR[S1] = $A_DPSW_IN[0,0]

Das funktioniert soweit auch schon ganz gut, allerdings scheint die Anpassung nur in 5 %-Schritten von dem programmierten Vorschub zu funktionieren. D. h. wenn ich den OVR auf 14 % setze wird auf 10 % "gerundet". Bei den programmierten 10.000 U/min kann ich die Drehzahl also nur auf 500 U/min genau einstellen. Der manuelle Drehzahl-OVR über das Bedienpanel (Tasten, kein Drehschalter) lässt ebenfalls nur in 5 %-Schritten verändern. Wisst ihr ob es da eine Möglichkeit gibt diese "Schrittweite" zu verändern bzw. Drehzahlen in Synchronaktionen genauer vorgeben zu können?

Vielen Dank schon mal für eure Hilfe smile.gif
   
Beitrag 25.08.2020, 23:04 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922
Es wäre mir neu, dass es da eine automatische Rundungsfunktion gibt. Auch in der Doku zu $AA_OVR gibt es keine entsprechenden Hinweise.
Ich würde mal vorschlagen, zum Test verschiedene Sollwerte direkt zu schreiben, also z.B. so:

ID = ... DO $AA_OVR[S1] = 14
   
Beitrag 26.08.2020, 12:07 Uhr
Karesus
Karesus
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 25.10.2018
Beiträge: 22
Wieso gibst du die Drehzahl in der Synchronaktion nicht direkt vor?

ID = ... DO S=$A_DPSW_IN[0,0]

Ich Persönlich nutze zur vermeidung von Schwingungen diesen von mir angepassten Zyklus.

;ZYKLUS ZUM EINSCHALTEN DER HARMONISCHEN SCHWINGUNG
;ÜBERGABEPARAMETER: 1. OSZILLATIONSZEITFAKTOR, 2.PROZENTFAKTOR, 3.Spindelbeschläunigung (in Prozent)
PROC OSZI (REAL _OSZI_TIME, REAL _PROZENT, REAL _ACCELERATE)
DEF REAL _TIME_1,_S_1,_S_2,_S,_SP

_S=$P_S[$P_MSNUM]
_SP=(_S*_PROZENT)/100
_S_1=_S+_SP
_S_2=_S-_SP
$AC_TIMER[4]=0
_TIME_1=$AC_TIMER[4]
ID=201 EVERY $AC_TIMER[4] >= (_TIME_1+_OSZI_TIME) DO S=_S_1 ACC[SPI($P_MSNUM)]=(_ACCELERATE+1)
ID=202 EVERY $AC_TIMER[4] <= (_TIME_1+_OSZI_TIME) DO S=_S_2 ACC[SPI($P_MSNUM)]=(_ACCELERATE-0.5)
ID=203 EVERY $AC_TIMER[4] >= (_TIME_1+(_OSZI_TIME*2-0.05)) DO $AC_TIMER[4]=0

RET

Die Doku zum Original Zyklus findes du hier:
https://support.industry.siemens.com/cs/doc...=0&lc=de-WW
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: