Zeitverzögerungsfilter
Mit Hilfe des Zeitverzögerungsfilters können Signale zeitlich verzögert werden ohne dass der Signalverlauf dabei verändert wird. Eine Einsatzmöglichkeit ist z.B. die Kompensation von Totzeiten im Antriebsstrang, falls diese nicht für alle Achsen identisch sind.
Die Verzögerungszeit kann in den Achsen entweder in Takten über den Parameter order (P-AXIS-00587) oder in µs über den Parameter order_time (P-AXIS-00591) konfiguriert werden. Alternativ ist es auch möglich, die Verzögerungszeit über die NC-Programmierparameter ORDER bzw. ORDER_TIME zu programmieren. Maximal mögliche Verzögerungen sind 100 Takte bzw. 100* NC-Zykluszeit in µs.
Eine weitere Einsatzmöglichkeit ist die Synchronisierung der Achsen bei der Verwendung von FIR-Filtern.
Wenn nur in einer Achse ein FIR-Filter verwendet wird und in den übrigen Achsen eines Achsverbundes nicht, laufen die Achsen zeitlich asynchron. Um trotzdem synchrone Achsen zu erhalten, können in den übrigen Achsen Zeitverzögerungsfilter verwendet werden.
Programmierbeispiel
Zeitverzögerungsfilter zur Synchronisierung von Achsen
Achse mit konfiguriertem Mittelwertfilter:
filter_fir.enable 1
filter_fir.type 1 (Mittelwertfilter)
filter_fir.order 20
filter_fir.share 100
Erforderliche Einstellungen in übrigen Achsen, um synchrone Achsen zu erhalten:
filter_fir.enable 1
filter_fir.type 4 (Zeitverzögerungsfilter)
filter_fir.order 10
filter_fir.share 100
Die einzustellende Filterordnung des Zeitverzögerungsfilters ergibt sich aus der halben Filterordnung des verwendeten Filters:
filter_fir.order / 2
Ist die Filterordnung ungerade, dann ergibt sich die einzustellende Filterordnung des Zeitverzögerungsfilters aus:
(filter_fir.order+1 ) / 2