The present invention relates generally to motors and, more particularly, to a system and method for detection of incipient conditions indicative of motor faults.
Three-phase induction motors consume a large percentage of generated electricity capacity. Many applications for this “workhorse” of industry are fan and pump industrial applications. For example, in a typical integrated paper mill, low voltage and medium voltage motors may comprise nearly 70% of all driven electrical loads. Due to the prevalence of these motors in industry, it is paramount that the three-phase motor be reliable. Industry reliability surveys suggest that motor failures typically fall into one of four major categories. Specifically, motor faults typically result from bearing failure, stator turn faults, rotor bar failure, or other general faults/failures. Within these four categories: bearing, stator, and rotor failure account for approximately 85% of all motor failures.
It is believed that this percentage could be significantly reduced if the driven equipment were better aligned when installed, and remained aligned regardless of changes in operating conditions. However, motors are often coupled to misaligned pump loads or loads with rotational unbalance and fail prematurely due to stresses imparted upon the motor bearings. Furthermore, manually detecting such fault causing conditions is difficult at best because doing so requires the motor to be running. As such, an operator is usually required to remove the motor from operation to perform a maintenance review and diagnosis. However, removing the motor from service is undesirable in many applications because motor down-time can be extremely costly.
As such, some detection devices have been designed that generate feedback regarding an operating motor. The feedback is then reviewed by an operator to determine the operating conditions of the motor. However, most systems that monitor operating motors merely provide feedback of faults that have likely already damaged the motor. As such, though operational feedback is sent to the operator, it is usually too late for preventive action to be taken.
Some systems have attempted to provide an operator with early fault warning feedback. For example, vibration monitoring has been utilized to provide some early misalignment or unbalance-based faults. However, when a mechanical resonance occurs, machine vibrations are amplified. Due to this amplification, false positives indicating severe mechanical asymmetry are possible. Furthermore, vibration-based monitoring systems typically require highly invasive and specialized monitoring systems to be deployed within the motor system.
In light of the drawbacks of vibration-based monitoring, current-based monitoring techniques have been developed to provide a more inexpensive, non-intrusive technique for detecting bearing faults. There are also limitations and drawbacks to present current-based fault detection. That is, in current-based bearing fault detection, it can be challenging to extract a fault signature from the motor stator current. For different types of bearing faults, fault signatures can be in different forms. According to general fault development processes, bearing faults can be categorized as single-point defects or generalized roughness. Most current-based bearing fault detection techniques currently in use today are directed toward detecting single-point defects and rely on locating and processing the characteristic bearing fault frequencies in the stator current. Such techniques, however, may not be suitable for detecting generalized roughness faults. That is, generalized-roughness faults exhibit degraded bearing surfaces, but not necessarily distinguished defects and, therefore, characteristic fault frequencies may not necessarily exist in the stator current. As many bearing faults initially develop as generalized-roughness bearing faults, especially at an early stage, it would be beneficial for current-based bearing fault detection techniques to be able to detect such generalized-roughness bearing faults.
It would therefore be desirable to design a current-based bearing fault detection technique that overcomes the aforementioned drawbacks. A current-based bearing fault detection technique that allows for detection of generalized-roughness bearing faults would be beneficial, by providing early stage detection of bearing faults.
The present invention provides a system and method for detecting impending mechanical motor faults by way of current noise cancellation. Current data is decomposed into a non-fault component (i.e., noise) and a fault component, and noise-cancellation is performed to isolate the fault component of the current and generate a fault identifier.
In accordance with one aspect of the invention, a controller configured to detect indicia of incipient mechanical motor faults includes a processor programmed to receive a set of current data from a motor during known normal operation, define a baseline noise based on the set of current data acquired from the know normal operating motor, and repeatedly receive real-time operating current data from the operating motor. The processor is further programmed to remove the baseline noise from the operating current data to identify any fault components present in the operating current data and generate a fault index for the operating current data based on any isolated fault components.
In accordance with another aspect of the invention, a non-invasive method for detecting impending bearing faults in electric machines includes the steps of acquiring a plurality of stator current data sets from the electric machine during operation, applying each of the plurality of stator current data sets to a current data filter in real-time to generate a noise-cancelled stator current, and determining a fault index from the noise-cancelled stator current for each of the plurality of stator current data sets. The method also includes the steps of monitoring a value of the fault index for the plurality of stator current data sets and generating an alert if the value of a pre-determined number of fault indices exceeds a control limit.
In accordance with yet another aspect of the invention, a system for monitoring current to predict bearing faults includes at least one non-invasive current sensor configured to acquire stator current data from an operating motor and a processor connected to receive the stator current data from the at least one non-invasive current sensor. The processor is programmed to receive a first set of stator current data from the at least one current sensor, the first set of stator current data comprising baseline current data representative of normal motor operation. The processor is also programmed to define a non-fault component from the baseline current data, repeatedly receive real-time operating current data from the operating motor, and remove the non-fault component from the operating current data in real-time to isolate residual current data. The processor is further programmed to process the residual current data to identify possible bearing faults; generate a fault index for any identified bearing faults and generate an alert if the fault index exceeds a fault index threshold.
Various other features and advantages of the present invention will be made apparent from the following detailed description and the drawings.
The drawings illustrate preferred embodiments presently contemplated for carrying out the invention.
In the drawings:
The embodiments of the invention set forth herein relate to the detection of abnormal conditions to predictively determine potential motor faults. Current signature analysis (CSA) is utilized to review raw data received from a plurality of sensors of a controller monitoring an operating motor. The system, which is preferably disposed within the controller, decomposes the sensed/monitored current into a non-fault component and a fault component, and performs a noise-cancellation operation to isolate the fault component of the current and generate a fault identifier. An operator of the monitored motor system is then proactively alerted of a potential fault prior to a fault occurrence.
Referring now to
In one embodiment of the invention, current sensors 22 acquire stator current data from an induction motor. The stator current data acquired from sensors 22 is communicated to processor 18, where the current is analyzed using CSA to detect incipient (i.e., pending) motor faults, such as a bearing fault. As the identification of characteristic fault frequencies is not a viable solution for detection of all types of bearing faults (e.g., generalized roughness faults), according to an embodiment of the invention, processor 18 is programmed to treat the fault detection problem as a low signal-to-noise ratio (SNR) problem. Processor 18 is thus programmed to decompose the stator current into noise components and fault components (i.e., the bearing fault signal). The noise components are the dominant components in the stator current, and include supply fundamental frequencies and harmonics, eccentricity harmonics, slot harmonics, saturation harmonics, and other components from unknown sources, including environmental noises. Since these dominant components exist before and after the presence of a bearing fault, a large body of the information they contain is not related to the fault. In this sense, they can be treated as “noise” for the bearing fault detection problem. As the “noise” could be 104 times stronger than the bearing fault signal (i.e., tens of Amperes vs. milli-Amperes), the detection of the bearing fault signal constitutes a low SNR problem. For solving the low SNR problem, processor 18 implements a noise cancellation technique/process for detecting the bearing fault signal. The noise components in the stator current are estimated and then cancelled by their estimates in a real-time fashion, thus providing a fault indicator from the remaining components.
While processor 18 is shown as being included in a stand-alone controller 16, it is also recognized that processor 18 could be included in power control/starter 17. Additionally, it is recognized that processor 18 could be included in another power control device such as a meter, relay, or drive. That is, it is understood that controller 16 could comprise an existing power control device, such as a meter, relay, starter, or motor drive, and that processor 18 could be integrated therein.
Referring now to
As shown in
Referring now to
The first set of stator current data, or baseline current data, is received by processor 34 and is implemented for configuring Wiener filter 36. More specifically, the baseline current data is used for assigning coefficients in the Wiener filter 36. Processor 34 assigns coefficients to the Wiener filter 36 such that the prediction error, e(n), of the filter is minimized in the mean-square sense. As shown in
x(n)=d1(n)+d(n)+v1(n) [Eqn. 1],
where d1(n) is the noise components, d(n) is the fault signal, and v1(n) is the measurement noise. As set forth above, the baseline current data is devoid of a fault signal, and as such, Eqn. 1 reduces to x(n)=d1(n)+v1(n).
In configuring the Wiener filter 36, the processor 34 assigns the coefficients of the filter by using the minimum mean-squared error (MMSE) method. In implementing/applying the MMSE method, processor 34 solves for the coefficients, w(k), k=0, 1, . . . , p, to minimize the mean square prediction error, ξ, according to:
where E{ } is the expected value, n0 is the delay of the input x(n), w(k), k=0, 1, . . . , p are the coefficients of the Wiener filter 36, and p is the order of the filter.
The coefficients are found by setting the partial derivatives of 4 with respect to w(k) equal to zero, as follows:
Substituting:
into Eqn. 3 yields:
E{e(n)x(n)x(n−n0−k)}=0; k=0, 1, . . . , p [Eqn. 4],
which is known as the orthogonality principle or the projection theorem. Substituting the equation:
into Eqn. 4 yields:
or equivalently:
By assuming that the signal x(n) is wide-sense stationary (WSS), then:
E{x(n−j)x(n−k)}=rx(k−j) [Eqn. 7].
Eqn. 6 is thus simplified to:
In matrix form, Eqn. 8 can be written as:
or denoted by:
Rxw=r. [Eqn. 10].
The autocorrelation sequences in Eqn. 9 can be estimated by time averages when implementing this method. For finite data records (i.e., a finite number of stator current data points), x(n), 0≦n≦N−1, the autocorrelation sequences can be estimated by:
The matrix Rx is a symmetric Toeplitz matrix and can be solved efficiently by the Levinson-Durbin Recursion algorithm.
As shown in
As set forth above, upon configuring of Wiener filter 36 (i.e., setting of the Wiener filter coefficients) from the previous samples of the stator current (i.e., the baseline current data), processor 34 is able to accurately detect bearing fault conditions in the motor system by estimating the noise components in additionally acquired stator current in real-time. As the dominant noise components (sinusoidal) in the stator current essentially do not change at constant loads, either in magnitude or in frequency, they can therefore be predicted in the most recent samples (i.e., real-time samples) of the stator current that is being monitored. Thus, in monitoring operation of the induction motor 12 (
x(n)=d1(n)+d(n)+v1(n), [Eqn. 11a],
where d1(n) is the noise components, d(n) is the fault signal, and v1(n) is the measurement noise, as set forth above in Eqn. 1. As shown in
From the isolated fault components remaining in the noise-cancelled stator current, a fault index (i.e., fault indicator) is determined by processor 34. In an exemplary embodiment, the fault index is calculated as the root mean square (RMS) value of the noise-cancelled stator current. Taking the RMS value of the isolated fault components provides for a larger fault signal that can be monitored, allowing for improved recognition of bearing faults. Processor 34 is further programmed to analyze the fault index to determine if the fault index exceeds a threshold. If the fault index exceeds the threshold, then processor 34 generates an alert (i.e., audible or visual alert) to inform an operator that a fault component in the stator current has exceeded a desired amount. The operator can thus shut down operation of the motor at a convenient time to further assess the bearings. Alternatively, or in addition thereto, the fault information and its severity can also be communicated to a centralized monitoring system (not shown), such as a Computerized Maintenance Management System (CMMS) or distributed control system (DCS).
In an exemplary embodiment of the invention, a Statistical Process Control (SPC) technique is applied to analyze a plurality of fault indices and set a “threshold” based thereon. With respect to analyzing the fault components present in the stator current to detect generalized roughness bearing faults, it is difficult to relate these fault components in the stator current to the bearing fault severity. That is, the lack of equations available to describe fault signatures in stator current injected by generalized roughness bearing faults and the subtleness of bearing fault signatures in stator current makes it difficult to pre-define fault severity levels. As such, a SPC technique is applied to establish a warning threshold based on the statistics of the fault signal in the specific current monitoring process, rather than pre-setting a pre-defined, universal threshold for all applications. The SPC technique distinguishes abnormal changes in the noise-cancelled stator current (and resulting fault indices) that are caused by a bearing fault from ambient changes.
Referring to
Upon calculation of the control limits 41, 45 via the SPC technique, the fault indices are analyzed with respect to these control limits. Detection of an uncontrolled variation in the fault indices is indicative of a deteriorated bearing condition. That is, if the analyzed fault indices begin to frequently exceed the control limits 41, 45, such a variation is indicative of a deteriorated bearing condition (i.e., incipient bearing fault). Thus, in determining whether a deteriorated bearing condition exists that necessitates generation of an alert, the percentage of fault indices exceeding the upper control limit 41, 45 is examined. If that percentage exceeds a pre-determined percentage, then it is determined that a deteriorated bearing condition exists and an alert is generated. For example, if the percentage of fault indices falling outside (i.e., exceeding) the control limits 41, 45 is above 10%, then an alert is generated. A SPC technique is thus utilized to monitor the fault indices obtained in real-time and analyze the fault index values to determine if a “threshold” has been exceeded, thus allowing for a determination that a deteriorated bearing condition or bearing fault exists.
Referring now to
In examining the PEF 42 to assess a prediction error, a general equation describing the prediction error can be given, along with specific equations for the filter performance for a healthy-bearing condition and for the filter performance having a bearing-fault condition. By definition, a general equation for the mean-square prediction error of the filter is:
This is the same error as in Eqn. 2, which was minimized to find the coefficients of the Wiener filter. Upon expansion, the above equation can be rewritten as:
Since the PEF 42 is designed to minimize the error in Eqn. 12 by using healthy bearing data, this prediction error is small for a healthy-bearing condition. In fact, for a healthy-bearing condition, since w(k), k=0, 1, . . . , p, are solutions to Eqn. 8, the second term of the right hand side of Eqn. 13 is zero. Therefore, the prediction error for a healthy-bearing condition is:
At such a condition, since x(n)=d1(n)+v1(n), therefore, it follows that:
Since d1(n) and v1(n) are jointly wide sense stationary (WSS), Eqn. 15 becomes:
rx(k)=rd
Since the measurement noise v1(n) is random, its power spectrum is distributed over a broad frequency range, its autocorrelation is pulse-like, and its cross-correlations with other signals are zero. (i.e., the autocorrelation sequences of a signal are the inverse Fourier transform of its power spectrum by definition). It thus follows from Eqn. 16 that:
rx(0)=rd
Substituting Eqn. 17 into Eqn. 14 yields:
To further investigate the performance of the system, the noise components (including the supply fundamental and harmonics, the eccentricity harmonics, the slot harmonics, etc.) are described as:
where Am, ωm, φm, m=1, . . . , M, are the amplitudes, the frequencies, and the angles of M noise components in the stator current. To compute the autocorrelation sequences of the signal d1(n), the following relationship is defined:
Eqn. 20 is then reduced by recognizing the following relationships:
Therefore, the autocorrelation sequences of the signal d1(n) are:
Substituting Eqn. 23 into Eqn. 18 yields the prediction error of the filter 42 for a healthy-bearing condition as:
Similarly, for a faulty bearing condition, the mean square prediction error can still be calculated from Eqn. 13. For convenience, Eqn. 13 is repeated here as:
However, different from the situation of a healthy-bearing condition, the second term on the right hand side of Eqn. 25 for a faulty-bearing condition is not zero because of the presence of the fault signal in the stator current, which is x(n)=d1(n)+d(n)+v1(n). It follows that:
rx(k)=E{x(n)x(n+k)}=E{[d1(n)+d(n)+v1(n)][d1(n+k)+d(n+k)+v1(n+k)]} [Eqn. 26].
Assuming d1(n), d(n), and v1(n) are jointly WSS, then Eqn. 26 becomes:
rx(k)=rd
As for a healthy-bearing condition, if it is assumed that the measurement noise v1(n) is a broadband signal and not correlated with d1(n) and d(n), it then follows that:
rx(0)=rd
and that:
rx(k)=rd
If the noise components are described as:
as set forth in Eqn. 19, then the fault components can be described as:
where Aq, ωq, φq, q=1, . . . Q, are the amplitudes, the frequencies, and the angles of Q fault components in the stator current injected by a bearing fault. The autocorrelation sequences of d(n) can thus be calculated as in Eqns. 20 to 23, with the result being:
For ωq≠ωm, q=1, 2, . . . , Q, m=1, 2, . . . , M, following the same steps as in Eqns. 20 to 23, the cross-correlation sequences between the noise components and the fault components become:
rd
Thus, combining Eqns. 25 to 32, the prediction error for a faulty-bearing condition can be obtained as:
where ξmin is the prediction error for a healthy-bearing condition expressed in Eqn. 24.
Beneficially, it is noted that the noise cancellation method set forth above considers a collective effect of the fault components to facilitate the fault detection. That is, as the frequencies of the fault signal, ωq's, and the magnitudes of the fault components, Bq's, are small for generalized roughness bearing faults, summing these factors in the collective fault component d(n), along with the bearing contact angle φq, allows for increased fault signal strength and improved bearing fault detection. It is further noted that if the fault signal, d(n), is a broadband signal, then it has the same effect as the broadband measurement noise v1(n), and since the power of the broadband signal remains in the prediction error (both for a healthy-bearing condition and for a faulty-bearing condition), the presence of the fault signal results in an increase of the prediction error.
Additionally, even if ωq=ωm and there is a smaller increase in the prediction error, (since the third term on the right hand side of Eqn. 33 is zero, while the second term is nonzero), fault information is still conserved in the resulting predictor error. That is, even if the fault components and the noise components have common frequencies, such as when the bearing fault augments the dynamic eccentricity of the motor, the fault information is still conserved in the resulting predictor error. The above features thus provide for an improved current-based sensing technique to detect generalized roughness bearing faults.
Referring now to
From the baseline current data, a current data filter (i.e., noise cancellation system) is configured 50 to provide noise cancellation to the stator current, so as to isolate any fault component present therein. In an exemplary embodiment, the current data filter is a Wiener filter that is designed to cancel the noise component from the stator current based on a filtering of received stator current data by an estimation of the noise component in the stator current. To provide accurate noise cancellation in the stator current, the Wiener filter is configured such that it can accurately estimate most noise components in the stator current and such that the fault signal in the stator current is not included in its output. In configuring the Wiener filter, the baseline current data is used for assigning coefficients in the Wiener filter, such that no bearing fault information is embedded in the coefficients. The Wiener filter is designed such that a prediction error thereof is minimized in the mean square sense. That is, the coefficients are assigned using the MMSE method. As the Wiener filter is configured based on the baseline current data (i.e., pure noise current data), this means that the output of the Wiener filter is a predicted noise component, g(n), of the stator current that is essentially equal to the baseline current data, such that the prediction error is minimized, i.e., e(n)=x(n)-g(n).
After configuring of the Wiener filter, the technique continues by acquiring and receiving at least one additional set of stator current data 52. The additional stator current data is acquired/received after a period of use of the electrical machine and is monitored to detect bearing fault signals present in the stator current. The additional sets of stator current data are passed to the current data filter 54 to perform a noise component cancellation thereon. The estimated noise component provided by the current data filter is cancelled from the stator current 56 to isolate any fault component present in the stator current. That is, as the noise components (sinusoidal) in the stator current essentially do not change at constant loads, either in magnitude or in frequency, the predicted noise component output from the current data filter (and based on the baseline current data) can be cancelled from the most recent samples of the stator current (i.e., the additionally acquired stator current) to accurately determine a fault component in the stator current. Assuming that the current data filter was properly configured and has good performance, the remaining part of the stator current after noise cancellation will accurately portray the fault signal d(n).
From the fault component remaining in the noise-cancelled stator current, a fault index (i.e., fault indicator) is determined 58. In an exemplary embodiment, the fault indicator is calculated as the RMS value of the noise-cancelled stator current. Taking the RMS value of the isolated fault component provides for a larger signal that can be monitored, allowing for improved recognition of bearing faults. Upon calculation, the fault index is compared to additionally calculated fault indices to generate a fault index threshold 59 and determine if the fault indicator exceeds that fault index threshold 60. If the fault indicator does not exceed the fault index threshold 62, then the technique proceeds by continuing to receive and monitor additional stator current data 64. If, however, the fault indicator does exceed the fault index threshold 66, then an alert is generated 68, such as an audible or visual alert, to inform an operator that a fault component in the stator current has exceeded a desired amount. The operator is thus allowed to shut down operation of the electrical machine to further examine the bearings for faults.
In an exemplary embodiment of the technique 46, the fault index threshold is determined 59 via a SPC technique. The fault index threshold (i.e., control limit) is determined for each of an X chart and a mR chart. Upon calculation of the fault index thresholds via the SPC technique, the fault indices are analyzed with respect to these thresholds 60. If a pre-determined amount or percentage of the fault indices fall outside the fault index thresholds 66, it is determined that a deteriorated bearing condition exists and an alert is generated 68. For example, if the percentage of fault indices falling outside the control limits is above 10%, then an alert can be generated. A SPC technique is thus utilized to monitor the fault indices obtained in real-time and analyze the fault index values to determine if a “threshold” has been exceeded, thus allowing for a determination that a deteriorated bearing condition or bearing fault exists.
According to embodiments of the invention, the noise cancellation method set forth above is able to isolate fault components in the stator current to detect incipient bearing faults without the need for determining machine parameters, bearing dimensions, nameplate values, or stator current spectrum distributions. The analysis of the noise-cancelled stator current (and the fault indices generated therefrom) via the use of a SPC technique eliminates the need for knowledge of such machine parameters, bearing dimensions, nameplate values, or stator current spectrum distributions. That is, as the noise cancellation method determines control limits and fault index warning thresholds by way of a SPC technique based on acquired fault index values rather than on a set of pre-defined equations describing fault signatures in the stator current, such information is not needed for analysis of fault components in the stator current. As the determination/acquisition of machine parameters, bearing dimensions, nameplate values, or stator current spectrum distributions can be difficult and time consuming, the lack of a need for such information in embodiments of the system and method of the invention results in more efficient current-based bearing fault detection.
A technical contribution for the disclosed method and apparatus is that it provides for a computer implemented technique for detecting impending mechanical motor faults by way of current noise cancellation. Current data is decomposed into a non-fault component (i.e., noise) and a fault component, and noise-cancellation is performed to isolate the fault component of the current and generate a fault index.
Therefore, according to one embodiment of the present invention, a controller configured to detect indicia of incipient mechanical motor faults includes a processor programmed to receive a set of current data from a motor during known normal operation, define a baseline noise based on the set of current data acquired from the know normal operating motor, and repeatedly receive real-time operating current data from the operating motor. The processor is further programmed to remove the baseline noise from the operating current data to identify any fault components present in the operating current data and generate a fault index for the operating current data based on any isolated fault components.
According to another embodiment of present invention, a non-invasive method for detecting impending bearing faults in electric machines includes the steps of acquiring a plurality of stator current data sets from the electric machine during operation, applying each of the plurality of stator current data sets to a current data filter in real-time to generate a noise-cancelled stator current, and determining a fault index from the noise-cancelled stator current for each of the plurality of stator current data sets. The method also includes the steps of monitoring a value of the fault index for the plurality of stator current data sets and generating an alert if the value of a pre-determined number of fault indices exceeds a control limit.
According to yet another embodiment of the present invention, a system for monitoring current to predict bearing faults includes at least one non-invasive current sensor configured to acquire stator current data from an operating motor and a processor connected to receive the stator current data from the at least one non-invasive current sensor. The processor is programmed to receive a first set of stator current data from the at least one current sensor, the first set of stator current data comprising baseline current data representative of normal motor operation. The processor is also programmed to define a non-fault component from the baseline current data, repeatedly receive real-time operating current data from the operating motor, and remove the non-fault component from the operating current data in real-time to isolate residual current data. The processor is further programmed to process the residual current data to identify possible bearing faults; generate a fault index for any identified bearing faults and generate an alert if the fault index exceeds a fault index threshold.
The present invention has been described in terms of the preferred embodiment, and it is recognized that equivalents, alternatives, and modifications, aside from those expressly stated, are possible and within the scope of the appending claims.
The present application claims the benefit of U.S. provisional application Ser. No. 60/932,742, filed Jun. 4, 2007, and which is incorporated herein by reference.
The present invention was made at least in part with Government support under Contract No. DE-FC36-04G014000, awarded by the United States Department of Energy. The Government may have certain rights in the invention.
Number | Name | Date | Kind |
---|---|---|---|
5299650 | Wada et al. | Apr 1994 | A |
5726905 | Yazici et al. | Mar 1998 | A |
6593751 | Takahashi | Jul 2003 | B2 |
6727725 | Devaney et al. | Apr 2004 | B2 |
7075327 | Dimino et al. | Jul 2006 | B2 |
7117125 | Dimino et al. | Oct 2006 | B2 |
7231319 | Dimino et al. | Jun 2007 | B2 |
7336455 | Dimino et al. | Feb 2008 | B2 |
7346475 | Dimino et al. | Mar 2008 | B2 |
Number | Date | Country |
---|---|---|
58-021173 | Feb 1983 | JP |
10-2005-0075808 | Jul 2005 | KR |
10-2007-0030073 | Mar 2007 | KR |
Number | Date | Country | |
---|---|---|---|
20080309366 A1 | Dec 2008 | US |
Number | Date | Country | |
---|---|---|---|
60932742 | Jun 2007 | US |