Patent Description:
Rotation detection sensors or rotary encoders (collectively referred to herein as "encoders") are common sensor devices. Many encoders use a combination of a bearing system and optical sensor elements to measure the rotation of a rotating member, e.g., an axle, shaft, wheel, etc. Data provided by an encoder is typically obtained via a cable operatively connecting the encoder and an appropriate controller. Controllers, as known in the art, typically include processing capability and are configured to incorporate data received from an encoder for use in operational control of one or more pieces of equipment that include, or are associated with, the rotating member being monitored by the encoder. Encoder systems incorporating such encoders may encompass a wide variety of equipment such as motors, generators, pumps, vehicles, etc..

Problems with the installation of such encoders in encoder systems often result from improper mechanical coupling of the encoder to the equipment being monitored. For example, in such systems, a mechanical coupling is often used to attach the rotating member of the equipment being monitored (the driving shaft) to an input shaft or similar mechanism of the rotary encoder (the driven shaft). As used herein, such couplings are mechanical elements used to make connections between two shafts to transfer power or motion from one shaft to another, and may encompass elements used to make permanent/semi-permanent connections (as in the case of sleeve couplings, split-muff couplings, flanged couplings, etc.) or rapid connections/disconnections (as in the case of clutch-type couplings, for example). As further known in the art, such mechanical couplings can deteriorate over time, sometimes resulting in slippage of either the driving or driven shaft within the coupling. Such slippage, if not detected in a timely manner, can result in control system failure and possibly equipment damage.

<CIT> relates to determining slippage of the rotatable element, which may in particular be a wheel of a railway vehicle.

Thus, techniques for detecting such mechanical coupling slippage in encoder system would represent a welcome advancement of the art.

The instant disclosure describes various techniques concerning the detection of mechanical coupling slippage in rotary encoder systems. In one embodiment, position data samples are obtained from a rotary encoder coupled to rotating element and angular acceleration data is determined based on the position data samples. At least two acceleration peaks are detected in the angular acceleration data, including at least one negative acceleration peak and at least one positive acceleration peak. Slippage occurrence of the mechanical coupling are detected when an interval between a negative acceleration peak and a positive acceleration peak of the at least two acceleration peaks is less than a first time period. If at least a threshold number of slippage occurrences are detected within a second time period, a mechanical coupling error signal is generated.

In another embodiment, the angular acceleration data is determined by first determining angular velocity data based on the position data samples. The angular velocity data is the filtered to provide filtered angular velocity data that is, in turn, subjected to derivative determinations to provide the angular acceleration data. In yet another embodiment, acceleration peaks are determined by identifying local most negative and most positive angular acceleration data points in the angular acceleration data, where the local most positive angular acceleration data point occurs after the local most negative angular acceleration data point. The local most negative and most positive angular acceleration data points are identified as acceleration peaks when a difference between the local most negative and most positive angular acceleration data points is greater than a difference threshold.

An apparatus in accordance with the above-described techniques is also disclosed.

The foregoing and other features and advantages will be discussed in detail in the following non-limiting description of specific embodiments in connection with the accompanying drawings, in which:.

Referring now to <FIG>, a very schematically illustrated encoder system <NUM> in accordance with the instant disclosure is shown. As shown, the encoder system <NUM> includes a rotary encoder <NUM> comprising an encoder shaft <NUM> (or may be coupled to a device having such a shaft). Using known techniques, rotation of the encoder shaft <NUM> is monitored by appropriate hardware components (e.g., optical encoder disc, not shown) providing electrical signals to a primary processor <NUM> that continuously determines angular position data <NUM> (e.g., incremental A, B, Z, etc. signals as known in the art) for the encoder shaft <NUM>, which position data <NUM> is provided, in turn, to a suitable line driver <NUM>. The line driver <NUM> conditions the position data <NUM> for transmission <NUM>, through a suitable connector <NUM>, to a cable (not shown) electrically coupled thereto. As further known in the art, power <NUM> for the encoder <NUM> is often provided as an input to the encoder <NUM> via the cable and connector <NUM>.

<FIG> also illustrates the encoder shaft <NUM> of the encoder <NUM> operatively connected to a rotating shaft (or member) <NUM> of the asset being monitored via a mechanical coupling <NUM> of the type described above.

In furtherance of detecting coupling slippage, the encoder <NUM> in the illustrated embodiment is further equipped with a sensing subsystem <NUM> comprising a secondary processor <NUM> and electrical isolation circuitry <NUM>. As shown, the position data <NUM> is provided to the secondary processor <NUM> via the electrical isolation circuitry <NUM> that may comprise, in a presently preferred embodiment, one or more optical isolators as known in the art. In an embodiment, the sensing subsystem <NUM> may optionally include one or more sensors <NUM> configured to provide sensor output data to the secondary processor <NUM>. Such sensors <NUM> may comprise any sensors useful for determining the physical conditions of the encoder <NUM>, rotating member <NUM>, coupling <NUM> and/or their surrounding environment. For example, the sensors <NUM> may include, but are not necessarily limited to, vibration or acceleration sensors, temperature sensors, etc..

As used herein, the term "processor" includes any devices capable of performing calculations or other data processing operations on signals provided thereto and to output further signals based on such calculations/data processing operations. Preferably, the calculations/processing performed by such processors (specifically, the processing described below relative to <FIG>) is performed in real-time. As used herein, real-time means fast enough to determine, as described below, slippage occurrences on the order of milliseconds or fractions of a second, and to determine mechanical error signals on the order of a few seconds up to tens of seconds. The primary and secondary processors <NUM>, <NUM> may comprise, for example, microprocessors, microcontrollers, digital signal processors or other similar devices that carry out processing based on executable instructions stored suitable storage devices (read-only memory (RAM), read-only memory (ROM), volatile or non-volatile storage devices, etc.). For example, in the case of a general purpose microprocessor or digital signal processor, such instructions may be stored in separate storage devices operatively connected to such processors. Alternatively, in the case of a microcontroller or similar devices, such storage may be "on-chip" and thus avoid the need for separate storage device circuitry. As a further alternative, a processor in the context of the instant disclosure may comprise hardware or firmware devices such as application specific integrated circuits (ASICs), programmable logic arrays (PLAs) or similar devices as known in the art.

Additionally, though the system of <FIG> illustrates the primary and secondary processors <NUM>, <NUM> as being deployed as part of the encoder <NUM>, it is appreciated that this is not a requirement. For example, the secondary processor <NUM> need not be resident in the encoder <NUM> and may instead be provided remotely relative to the encoder <NUM>, or even the system <NUM>. In this case, the encoder <NUM> may be configured with further components for providing the position data <NUM> (and, if available, any sensor <NUM> outputs) to the remotely deployed secondary processor <NUM>.

As described in further detail below, the secondary processor <NUM> is configured to analyze the position data <NUM> to identify instances of coupling slippage. Based on such analysis, the secondary processor <NUM> provides a mechanical coupling error signal or alert <NUM>. For example, in one embodiment, alert <NUM> can be provided by the secondary processor <NUM> via a suitable communication channel (using, e.g., a suitable wired/wireless communication protocols such as high/low digital output, <NUM>-20mA or <NUM>-10V analog output, IO-Link, TCP/IP, Bluetooth, etc.). In another embodiment, though not preferred, the alert <NUM> may be provided to the line driver <NUM> (potentially via the electrical isolation circuitry <NUM>) such that the alert <NUM> is superimposed onto existing electrical conductors in the connector <NUM> for output.

In a presently preferred embodiment, the alert <NUM> may comprise one or more fault codes, where each fault code is indicative of a particular failure mode detected by the secondary processor <NUM>. Thus, for example, if the secondary processor <NUM> is capable of detecting six different failure modes, six corresponding and unique fault codes could be defined for output by the secondary processor <NUM>. Alternatively, or additionally, the alert <NUM> may include data representative of the various sensor <NUM> inputs to the secondary processor <NUM> (e.g., vibration or speed measurement data) or results based on processing performed by secondary processor <NUM> on the sensor <NUM> inputs (e.g., fast Fourier transform (FFT) results, acceleration calculations, etc.).

Referring now to <FIG>, processing in accordance with the instant disclosure is illustrated. As noted above, the processing illustrated in <FIG> may be performed by the secondary processor <NUM> or similar device. In particular, the processing illustrate in <FIG> is based on the understanding that a coupling slippage, at least in the earliest stages of such occurrences, are manifested by particularly large magnitude decreases in angular velocity when the coupling first slips, and quickly followed up with a correspondingly large magnitude increase in angular velocity when the coupling once again "catches up" with the rotating member or encoder shaft to which it is attached. A further insight leveraged by the techniques described herein is that such large angular velocity decreases and increases may also be detected as rapidly occurring negative and positive acceleration peaks occurring within a certain period of time, as described below.

Starting at block <NUM>, processing begins at block <NUM> wherein position data samples, such as those described above, are obtained. In a presently preferred embodiment, and as known in the art, such position data samples may be obtained and processed in a batch or "windowed" manner in which they are continuously buffered until a sufficient quantity of position data samples are obtained to perform the further analysis described below. The number of such samples to be processed in a given buffer or window will necessarily depend on the sampling rate and precision provided by the encoder, but will typically comprises several hundred to a few thousand samples. For example, in a presently preferred embodiment, a sampling period of <NUM> a (<NUM>,<NUM> samples per second) is employed and each buffer or window of data comprises <NUM>,<NUM> samples or approximately <NUM> second of position data samples. In an embodiment, windows of <NUM>,<NUM> samples are successively analyzed without any overlap between such windows. However, it is appreciated that overlap between successive windows could be employed to better ensure correctly identifying slippage occurrences that may otherwise span successive, non-overlapping windows. For example, if two successive buffers of <NUM>,<NUM> samples are obtained, the actual analysis windows used may comprise a first window equivalent to the first buffer's <NUM>,<NUM> samples, a second window comprising the latter <NUM> samples of the first buffer and the initial <NUM> samples of the second buffer and, finally, a third window equivalent to the equivalent to the second buffer's <NUM>,<NUM> samples. Those skilled in the art that other windowing schemes (including potential varied weighting of samples) could be equally employed.

Having obtained a sufficient number of position data samples, processing continues at block <NUM> where angular acceleration data is determined based on position data samples. As will be appreciated by those skilled in the art, there are various methods for determining angular acceleration data based on position data samples, and the instant application is not limited in this regard.

However, in a presently preferred embodiment, this is accomplished by first determining angular velocity data based on the position data samples using know techniques. An example of this is illustrated in the top graph of <FIG> in which angular velocity data <NUM> (expressed in rotations per minute (RPM)) is plotted. Assuming a <NUM> sampling period, the graphs in <FIG> all illustrate <NUM> seconds worth of data. As shown, the angular velocity data is fairly noisy, albeit mainly centered around about <NUM> RPM in this example. As further shown in this example, there are multiple instances of significant velocity deviations <NUM>-<NUM> consistent with slippage occurrences. Thereafter, the angular velocity data is filtered and the middle graph of <FIG> illustrates an example of the resulting filtered angular velocity data <NUM> (again shown in terms of RPM). Preferably, the filtering performed on the angular velocity data <NUM> is in the nature of lowpass filtering or smoothing, i.e., higher frequencies present in the angular velocity data <NUM> are filtered out or suppressed using known filtering techniques. Such filtering will minimize potential false-positive detections of slippage occurrences to the extent that such occurrences are characterized by rapid changes in velocity, much like the low-level noise otherwise present in the unfiltered angular velocity data <NUM>. Despite this filtering, it is noted that the filtered angular velocity data <NUM> still includes significant velocity deviations <NUM>-<NUM> indicative of slippage occurrences. Finally, in keeping with the well-known relationship that the derivative of a time-varying velocity signal is a time-varying acceleration signal, a derivative operation is performed on the filtered angular velocity data <NUM> to determine angular acceleration data <NUM>, an example of which is shown in the bottom graph of <FIG> (expressed as RPM/ms. As one would expect given that the filtered angular velocity data <NUM> is mainly constant in this example, the angular acceleration data <NUM> likewise mainly varies around the zero value with significant deviations <NUM>-<NUM> time-aligned with the corresponding deviations <NUM>-<NUM> in the filtered velocity data. Although the description above describes the filtering and derivative determination processing as separate steps, this is not a requirement. For example, in a presently preferred embodiment, a so-called Savitzky-Golay derivative filter is applied that, as known in the art is capable of simultaneously smoothing and calculating the derivative of the angular velocity data. Still other techniques that may be employed for these purposes may be apparent to those skilled in the art.

Referring once again to <FIG>, having determined angular acceleration data, processing continues at block <NUM> where at least two acceleration peaks, including a negative and positive acceleration peak, are detected in the angular acceleration data. In an embodiment, this is achieved by inspecting successive (in time) data points of the angular acceleration data and identifying a local most negative angular acceleration data point followed by a local most negative angular acceleration data point, i.e., pairs of locally most negative and most positive angular acceleration data points. Examples of this are illustrated in the bottom graph of <FIG> in which pairs of such angular acceleration data points are highlighted with dark diamond symbols, e.g., a first pair is identified between about <NUM> and <NUM>, a second pair is identified centered on <NUM>, a third pair is identified between about <NUM> and <NUM>, etc. Those skilled in the art will appreciate that various techniques for identifying such negative and positive peaks could be employed. As shown in the bottom graph of <FIG>, the various peak pairings <NUM>-<NUM> corresponding to slippage occurrences may be differentiated from other peak pairings (resulting from remaining noise in the angular acceleration data <NUM>) in terms of their respective magnitudes, i.e., the magnitudes of the peak pairings <NUM>-<NUM> are appreciably larger than those of the other peak pairings. Thus, in an embodiment, the determination of peak pairings <NUM>-<NUM> potentially corresponding to a slippage occurrence is refined by identifying such pairings only when a difference between the locally negative peak 322a-328a and its corresponding locally positive peak 322b-328b is greater than a difference threshold. An example of this is illustrated in <FIG> where a local most negative acceleration data point <NUM> and a corresponding local most positive acceleration data point <NUM> have a difference, Δ, greater than a difference threshold, Δth. By making this difference threshold sufficiently large, the lower-level peak pairings shown in the lower graph of <FIG> may be effectively filtered out, thereby better minimizing chances of false positive detections.

Returning once again to <FIG>, having determined at least two acceleration peaks (one negative and one positive) in the available angular acceleration data, processing continues at block <NUM> where, for any given negative/positive acceleration peak pair, a determination is made if an interval between the negative acceleration peak and the corresponding positive acceleration peak is less than a first time period. For example, in the typical range of angular velocities encounter in most encoder systems (e.g., approximately <NUM>-<NUM>,<NUM> RPM) the first time period may be approximately <NUM> based on an empirical understanding that, at this typical range of speeds, any given coupling slip will last no longer than <NUM>, though it is appreciated that the first time period may vary depending on the particular configuration of the encoder system. A further refinement in this regard is to recognize that the length of this first time period will generally be a function of average angular velocity based on the intuition that, the faster the angular velocity, the shorter the first time period will be in length. Thus, in a currently preferred embodiment, the first time period is based on a change percentage of the most recent average angular velocity normalized to a given period of time.

Thus, in effect, paired negative and positive acceleration peaks are deemed to be indicative of a slippage occurrence if they are of sufficient magnitude and within a relatively short period of time, i.e., if anomalously large and successive negative and positive accelerations are identified within a relative short period of time. An example of this is illustrated in <FIG>, where an interval, t_0, between the illustrated negative acceleration peak <NUM> and positive acceleration peak is shown. If t_0 is less than the first time period, then a slippage occurrence is indicated, as shown at block <NUM> in <FIG>. On the other hand, if a given negative/positive acceleration peaks pair is separated by an interval greater than the first time period, then no slippage occurrence is indicated and processing continues at block <NUM> where it is determined if additional acceleration peak data remains to be processed, which case such additional acceleration peaks are once again processed at block <NUM>. If no addition acceleration peak data remains in this iteration, processing continues at block <NUM> where the process of steps <NUM>-<NUM> is repeated based on newly-obtained position data samples.

Although detection of any given slippage occurrence may be indicative of a malfunctioning coupling, providing an alert or error signal each time may result in an excessive number of false positives. To counter this possibility, each time a slippage occurrence is detected at block <NUM>, processing continues at block <NUM> where a determination is made whether a threshold number of slippage occurrences have been detected within a second period of time. For example, in one presently preferred embodiment, if three or more slippage occurrences are found to have occurred within any <NUM> second window, processing continues at block <NUM> where a coupling error signal is generated and output, as described above. Of course, it is appreciated that the specific threshold number and/or second period of time may be selected as a matter of design choice as it will often be dependent on the configuration and expected performance of the given encoder system.

As further shown in <FIG>, if a given instance of a slippage occurrence does not give rise to an error signal at block <NUM>, processing will instead continue at block <NUM> as described above.

Based on the techniques described herein, the ability of encoder systems to identify instances of mechanical coupling slippage is facilitated based on analysis of position data obtained by rotary encoders. By detecting instances of sufficiently anomalous accelerations in such data, reliable error signals may be provided, thus further facilitating systems diagnostic or maintenance work that prevents system damage or downtime.

Claim 1:
A method for detecting coupling slippage in an encoder system comprising a rotary encoder coupled to a rotating member via a mechanical coupling, the method comprising:
obtaining position data samples from the rotary encoder;
determining angular acceleration data based on the position data samples;
detecting at least two acceleration peaks in the angular acceleration data, including at least one negative acceleration peak and at least one positive acceleration peak; and
detecting a slippage occurrence of the mechanical coupling when an interval between a negative acceleration peak and a positive acceleration peak of the at least two acceleration peaks is less than a first time period.