# US 5,351,205 A · Method for filtering digital signals which varies the filter length

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 5,351,205 A
- Document ID: US5351205A
- Status: Granted
- Kind: A
- Application number: 08/116,926
- Filed: 1993-09-07
- Granted: 1994-09-27
- Earliest claimed: 1990-09-27
- Assignees: Siemens Aktiengesellschaft
- Inventors: Gerd Hoos
- Web page: https://patentgrep.com/patent/US5351205A

## CPC

- G05B 19/416: characterised by control of velocity, acceleration or deceleration (G05B19/19 takes precedence)
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)

## Abstract

Digital signals V(K), for use in numerical control of machine tools or robots, for example, are smoothed by means of digital filters to avoid sudden load changes on the axes. As a result, different filter lengths (N') can be used during an axial movement to accommodate varying loads on the axis. This is achieved by presetting modified discontinuous signals V'(K), whose value is determined by doubling the signal difference (D), and then dividing it by the altered filter length (N') less one, in the filter when changing the filter length.

## Claims

### Claim 1

A numerical control method for controlling a velocity of a numerically controlled machine, comprising the steps of:
a) producing velocity signals as digital inputs signals (V(K)) of a filter using an interpolator;
b) storing a number of the digital input signals (V(K)) corresponding to a specifiable filter length (N) in the filter;
c) generating an output signal (V(K) of the filter from a sum of a number of the input signals (V(K)), divided by the filter length (N);
d) calculating a signal difference (D) between each digital input signal (V(K)) and its corresponding output signal (V(K));
e) storing the signal difference (D) in a storage medium;
f) modifying the filter length (N) to a modified filter length (N');
g) determining values of a plurality of modified digital signals V'(K)) when a specifiable change occurs in the filter length to the modified filter length (N') in response to the modifying step f) by doubling the signal difference (D) stored in the storage medium, and then dividing the result by the modified filter length (N') less one;
h) storing a number, corresponding to the modified filter length (N'), of said plurality of modified digital signals (V'(K)) in the filter; and
i) providing the numerically controlled machine with the output signals (V(K)) to control the velocity of the numerically controlled machine;
j) controlling the velocity of the numerically controlled machine using the output signals V(K).

### Claim 2 (depends on 1)

The method according to claim 1, further comprising steps of:
k) forming and storing an integer component of the plurality of modified digital signals (V'(K)) each time the filter length (N) of the filter is modified in the modifying step f);
l) determining an additional signal difference resulting from using the integer component of the modified digital signals (V'(K)); and
m) transmitting the additional signal difference to an input of the filter.

### Claim 3 (depends on 2)

The method according to claim 2, further comprising the step of performing a base-2 modulo operation on the integer component of the modified digital signals (V'(K)).

### Claim 4 (depends on 3)

The method according to claim 3, wherein said modifying step f) comprises gradually changing the filter length (N) to the modified filter length (N').

### Claim 5 (depends on 4)

The method according to claim 4, further comprising the step of retaining the filter length (N) when as a result of the modified filter length (N') the difference between two successive output signals (V(K)) exceeds a specified value.

### Claim 6 (depends on 4)

The method according to claim 4, wherein said modifying step f) further comprises changing the filter length (N) to the modified filter length (N') in such a way that the difference between two successive output signals (V(K)) does not exceed a specified value.

### Claim 7 (depends on 3)

The method according to claim 3, further comprising the step of retaining the filter length (N) when as a result of the modified filter length (N') a difference between two successive output signals (V(K)) exceeds a specified value.

### Claim 8 (depends on 3)

The method according to claim 3, wherein said modifying step f) comprises changing the filter length (N) to the modified filter length (N') in such a way that the difference between two successive output signals (V(K)) does not exceed a specified value.

### Claim 9 (depends on 1)

The method according to claim 1, wherein said modifying step f) comprises gradually changing the filter length (N) to the modified filter length (N').

### Claim 10 (depends on 9)

The method according to claim 9, further comprising the step of retaining the filter length (N) when as a result of the modified filter length (N') the difference between two successive output signals (V(K)) exceeds a specified value.

### Claim 11 (depends on 9)

The method according to claim 9, wherein said modifying step f) further comprises changing the filter length (N) to the modified filter length (N') in such a way that the difference between two successive output signals (V(K)) does not exceed a specified value.

### Claim 12 (depends on 2)

The method according to claim 2, wherein said modifying step f) comprises gradually changing the filter length (N) to the modified filter length (N').

### Claim 13 (depends on 12)

The method according to claim 12, further comprising the step of retaining the filter length (N) when as a result of the modified filter length (N') the difference between two successive output signals (V(K)) exceeds a specified value.

### Claim 14 (depends on 12)

The method according to claim 12, wherein said modifying step f) further comprises changing the filter length (N) to the modified filter length (N') in such a way that the difference between two successive output signals (V(K)) does not exceed a specified value.

### Claim 15 (depends on 2)

The method according to claim 2, further comprising the step of retaining the filter length (N) when as a result of the modified filter length (N') the difference between two successive output signals (V(K)) exceeds a specified value.

### Claim 16 (depends on 15)

The method according to claim 15, wherein said modifying step f) comprises changing the filter length (N) to the modified filter length (N') in such a way that the difference between two successive output signals (V(K)) does not exceed a specified value.

### Claim 17 (depends on 2)

The method according to claim 2, wherein said modifying step f) comprises changing the filter length (N) to the modified filter length (N') in such a way that the difference between two successive output signals (V(K)) does not exceed a specified value.

### Claim 18 (depends on 1)

The method according to claim 1, further comprising the step of retaining the filter length (N) when as a result of the modified filter length (N') the difference between two successive output signals (V(K)) exceeds a specified value.

### Claim 19 (depends on 7)

The method according to claim 7, wherein said modifying step f) comprises changing the filter length (N) to the modified filter length (N') in such a way that the difference between two successive output signals (V(K)) does not exceed a specified value.

### Claim 20 (depends on 1)

The method according to claim 1, wherein said modifying step f) comprises changing the filter length (N) to the modified filter length (N') in such a way that the difference between two successive output signals (V(K)) does not exceed a specified value.

### Claim 21 (depends on 1)

The method according to claim 1, wherein the numerically controlled machine is a machine tool.

### Claim 22 (depends on 1)

The method according to claim 1, wherein the numerically controlled machine is a robot.

### Claim 23

A numerical control system for controlling a velocity of a numerically controlled machine, comprising:
an interpolator producing digital velocity signals (V(K));
a filter receiving the digital velocity signals (V(K)) produced by the interpolator as digital input signals (V(K)) of the filter, said filter including a means for storing a number of the digital input signals (V(K)) corresponding to a specifiable filter length (N), said filter generating an output signal (V(K)) from a sum of a number of the input signals (V(K)), divided by the filter length (N), said filter modifying the filter length (N) to a modified filter length (N');
means for calculating a signal difference (D) between each digital input signal (V(K)) and its corresponding output signal (V(K));
a storage medium storing the calculated signal difference (D); and
means for determining values of a plurality of modified digital signals (V'(K)) when a specifiable change occurs in the filter length to the modified filter length (N') in response to the modifying of the filter length (N) by doubling the signal difference (D) stored in the storage medium, and then dividing the result by the modified filter length (N') less one;
wherein a number corresponding to the modified filter length (N') of said plurality of modified digital signals V'(K)) is stored in the filter; and
wherein the output signals (V(K)) are provided to the numerically controlled machine to control the velocity of the numerically controlled machine.

### Claim 24 (depends on 23)

The numerical control system according to claim 23, further comprising:
means for forming and storing an integer component of the plurality of modified digital signals (V'(K)) each time the filter length (N) of the filter is modified; and
means for determining an additional signal difference resulting from using the integer component of the modified digital signals (V'(K));
wherein the additional signal difference is transmitted to an input of the filter.

### Claim 25 (depends on 23)

The numerical control system according to claim 23, wherein said modifying of the filter length (N) comprises gradually changing the filter length (N) to the modified filter length (N').

### Claim 26 (depends on 23)

The numerical control system according to claim 23, wherein said modifying of the filter length (N) comprises changing the filter length (N) to the modified filter length (N') in such a way that the difference between two successive output signals (V(K)) does not exceed a specified value.

### Claim 27 (depends on 23)

The numerical control system according to claim 23, wherein the numerically controlled machine is a machine tool.

### Claim 28 (depends on 23)

The numerical control system according to claim 23, wherein the numerically controlled machine is a robot.
