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

prg_example

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