Abstract:
An encoder position signal processing system comprises an analog encoder reader and a codewheel. The codewheel possesses an optical track that modulates the quadrature encoder signal amplitude in order to generate an amplitude change (home pulse) once per revolution of the codewheel. The analog encoder reader outputs a quadrature signal comprised of sine and cosine signals. The quadrature signal is converted to a magnitude signal that is sampled in order to generate a rate of change (ROC) signal, which increases the signal-to-noise ratio. An algorithm using the characteristic shape of the ROC home pulse signal can then be applied to the ROC signal to increases robustness of detecting the home pulse.

Description:
TECHNICAL FIELD 
       [0001]    Embodiments are generally related to rendering devices and techniques. Embodiments are also related to position encoders. Embodiments are additionally related to methods and systems for processing encoder home position signal. 
       BACKGROUND OF THE INVENTION 
       [0002]    Rendering devices such as printers can employ position encoders to accurately track and control the position of moving components such as rotating shafts, rollers, and print drums. Additionally the position encoder can be utilized to determine a reference or home position for the component whose position is being tracked. Many factors can adversely affect the operation of the position encoder making it difficult to accurately and reliably determine the home position. An improved method is needed to detect the home position. 
       BRIEF SUMMARY 
       [0003]    The following summary is provided to facilitate an understanding of some of the innovative features unique to the embodiments disclosed and is not intended to be a full description. A full appreciation of the various aspects of the embodiments can be gained by taking the entire specification, claims, drawings, and abstract as a whole. 
         [0004]    It is, therefore, one aspect of the present invention to provide for an improved rendering device, such as a printer. 
         [0005]    It is a further aspect of the present invention to provide for a reliable home position signal processing system that can supply accurate print drum home position information to a printer&#39;s process direction print head alignment algorithms. 
         [0006]    It is another aspect of the present invention to provide for an improved method and system for assuring that the print quality of a printer remains consistent over the life of the printer even though encoder components may degrade. 
         [0007]    It is a further aspect of the present invention to provide for an improved method and system that increases the robustness of the home position detection. 
         [0008]    The aforementioned aspects and other objectives and advantages can now be achieved as described herein. An encoder home position signal processing system and method are disclosed, which includes the use of an encoder reader that outputs a sine and cosine quadrature signal and a codewheel that is rotated perpendicular to an axis of rotation. The codewheel possesses an optical track that modulates the quadrature encoder signal amplitude in order to generate an amplitude change once per revolution of the codewheel. This amplitude change can be interpreted as the home position of the codewheel. The sine and cosine are converted to a single magnitude signal that can then be sampled at, for example, 20 kHz in order that a signal-processing algorithm can compute a rate of change (ROC) signal that has an increased signal-to-noise ratio. To further increases the signal-to-noise ratio, the ROC signal can be filtered. To increases the robustness of the home position detection, an algorithm to detect the characteristic shape of the ROC home position signal can be applied to the ROC signal. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0009]    The accompanying figures, in which like reference numerals refer to identical or functionally-similar elements throughout the separate views and which are incorporated in and form a part of the specification, further illustrate the embodiments and, together with the detailed description, serve to explain the embodiments disclosed herein. 
           [0010]      FIG. 1  illustrates a schematic block diagram of a rendering device, which can be implemented in accordance with a preferred embodiment; 
           [0011]      FIG. 2  illustrates a schematic view of the encoder system depicted in  FIG. 1 , including the use of a codewheel and an encoder sensor, in accordance with a preferred embodiment; 
           [0012]      FIG. 3  illustrates a schematic view of a codewheel optical track, in accordance with a preferred embodiment; 
           [0013]      FIG. 4  illustrates a schematic representation of the sine and cosine waveforms of a quadrature signal that would be produced from the codewheel optical track as it passes through the gap between the emitter and the detectors of the optical encoder sensor of  FIG. 2 , in accordance with a preferred embodiment; 
           [0014]      FIG. 5  illustrates a graphical representation of magnitude signal derived from the encoder quadrature output, in accordance with a preferred embodiment; 
           [0015]      FIG. 6  illustrates a schematic view of an encoder system depicting intermediate and extremes of axial position of a codewheel, in accordance with a preferred embodiment; 
           [0016]      FIG. 7  illustrates a graphical representation of the signal magnitude verses codewheel axial position within the encoder sensor gap, in accordance with a preferred embodiment; 
           [0017]      FIG. 8  illustrates a codewheel mounted at an angle other than  900  to an axis of rotation, in accordance with a preferred embodiment; 
           [0018]      FIG. 9  illustrates a graphical representation of encoder magnitude variation predominantly caused by axial runout due to codewheel misalignment depicted in  FIG. 10 , in accordance with a preferred embodiment; 
           [0019]      FIG. 10  illustrates a graphical view of three similar minimum magnitudes predominantly caused by axial runout of a codewheel, in accordance with a preferred embodiment; 
           [0020]      FIG. 11  illustrates a graphical representation of a magnitude signal and the ROC signal derived from it demonstrating the larger signal-to-noise ratio of the ROC signal, in accordance with a preferred embodiment; 
           [0021]      FIG. 12  illustrates a graphical representation of the ROC signals  1305  and  1310  with maximum and minimum ROC values  1315 ,  1320 ,  1325 ,  1330  and the print drum rotational velocity  1335 , which can be implemented in accordance with a preferred embodiment. 
       
    
    
     DETAILED DESCRIPTION 
       [0022]    The particular values and configurations discussed in these non-limiting examples can be varied and are cited merely to illustrate at least one embodiment and are not intended to limit the scope thereof. 
         [0023]    By way of illustrative example, only a rotary transmissive optical encoder system will be described herein, but it should be understood that the techniques described could also be applied to a linear encoder system or reflective optical encoder or any encoder that produces sine and cosine signals and that have home position encoded as an amplitude change of the sine and cosine waveforms. 
         [0024]      FIG. 1  illustrates a schematic block diagram of a rendering device  108 , which can be implemented, in accordance with a preferred embodiment. Note that in  FIGS. 1-2 , identical or similar parts or elements are generally indicated by identical reference numerals. Also note that for purposes of this discussion, it is assumed that the rendering device  108  functions primarily or exclusively as a printer. It can be appreciated, however that the rendering device  108  may also be a copier, fax machine, scanner, etc. 
         [0025]    As depicted in  FIG. 1 , a marking system  210  can be utilized to apply marking material to a print drum  300  to form an image that is transferred to a print output medium  225 . The marking system  210  can be, for example, an ink jet marking system or an electro photographic marking system. The print drum  300  has connected to it an encoder system  240  that includes the use of a codewheel  310 , as depicted in  FIG. 2 . The rendering device  108  also includes the use of a motor driver  220  in association with a motor  250 . A power supply  235  supplies power to motor driver  220 , which in turn is capable of communicating electronically with a controller  260 . 
         [0026]    The configuration depicted in  FIG. 1  also includes the use of an encoder system  240  that communicates electronically with controller  260 . Encoder system  240  provides output signals, which are transmitted to the controller  260 . The print drum  300  is mechanically connected to the encoder system. The rendering device  108  can also include the use of a drive train  230  that makes the mechanical connection with the motor  250  and is further associated with the print drum  300 . 
         [0027]      FIG. 2  illustrates a schematic view of the encoder system  240  illustrated in  FIG. 1 , in accordance with a preferred embodiment.  FIG. 2  depicts a codewheel  310  and a sine and cosine output quadrature encoder sensor  330  that move relative to each other pursuant to the movement of the print drum  300 . The codewheel  310  constitutes a transmissive codewheel and includes an optical track  400  (as shown in  FIG. 3 ) that can be encoded to identify a predetermined home position of the print drum  300 . The motor  250  is associated with a motor driver  220  and a power supply  235  and can drive the print drum  300  through the drive train  230 . The controller  260  depicted in  FIG. 1  accepts signals from the encoder system, performs signal processing, controls the motor driver, and is capable of managing other printer and/or rendering operations. 
         [0028]    The encoder system  240  shown schematically in  FIG. 2  utilizes a transmissive codewheel  310  and an optical analog encoder reader  330  that has as its output, a quadrature signal. An example of an encoder sensor  330  is a light source or emitter such as a light emitting diode (LED), a lens to collimate the light and a sensor array typically composed of a plurality of photodiodes or phototransistors  340 . The optical encoder reader can be implemented by, for example, an Avago HEDS-9710-R50 optical incremental encoder module that is available from Avago Technologies, Inc, or another similar device. The light source and sensor array are separated by a gap within which the codewheel passes. 
         [0029]    In accordance with a preferred embodiment, the codewheel  310  can be mounted concentric to and perpendicular with axis  320  which is also the rotation axis of the print drum  300 . The codewheel  310  optical track is composed of a plurality of uniformly spaced opaque bars and transmissive spaces around the circumference of the codewheel. As the codewheel  310  rotates on the axis of rotation  320 , light from the emitter passes through the codewheel and the resulting light and dark shadow pattern is detected by the sensor array to produce the sine and cosine quadrature output signals. Additionally the width of the bars and spaces are varied to encode the home position in one section of the optical track. This bar/space width variation causes the amplitude of the quadrature signal to decrease once per revolution of the codewheel. 
         [0030]      FIG. 3  illustrates a schematic view of an encoded home region of a codewheel optical track  400 , in accordance with one possible embodiment. Note that an example of optical track  400  is disclosed in U.S. Pat. No. 6,972,403, entitled “Position Encoder,” which issued to Martenson et al on Dec. 6, 2005 and is incorporated herein by reference in its entirety. U.S. Pat. No. 6,972,403 is assigned to the Xerox Corporation. 
         [0031]    As the codewheel optical track  400  passes through the gap between the light source and sensor array of the encoder reader  330 , the sine and cosine waveforms that comprise the quadrature signal are produced. A schematic illustration of these waveforms is illustrated in  FIG. 4 . The reduction of the quadrature signal amplitude indicates the home position  510  of the codewheel  310 . For example, the analog sine and cosine waveforms can be inputted to the controller where they are digitized to binary numbers at a sample rate of 20 kHz. From these numbers representing the sine and cosine waveforms, an absolute magnitude signal can be calculated using equation (1) below. 
         [0032]    Please note that the methods of converting analog electrical signals to binary or some other machine encoded values, and the manipulation and computation methods are well know to those skilled in the art and will not be discussed herein. To make the signal manipulation procedures of the present invention concise and more easily understandable, only graphical representations of the signals are shown and discussed herein. 
         [0000]      Magnitude=sqrt(sin̂2+coŝ2)   (1) 
         [0033]      FIG. 5  illustrates a graphical representation of a magnitude signal  600  and depicts multiple revolutions of the print drum  300  of  FIGS. 1-2 . The two momentary drops in magnitude  510  depicted in  FIG. 5  are home pulses and are generally produced by the home region of the codewheel optical track as it rotates through the sensor gap. The home pulse is produced one time each revolution of the codewheel so it can be seen that the distance  610  between consecutive home pulses represents one revolution of the print drum. In the unimproved home detection system, it is the lowest amplitude of these home pulses that the printer controller detects and interprets as the encoder and drum home position. 
         [0034]    In addition to the intentional amplitude change caused by the home position encoded in the optical track, the overall amplitude of the magnitude signal is affected by the axial position of the codewheel within the encoder reader gap. 
         [0035]      FIG. 6  illustrates a schematic representation of the encoder system  240  depicting three codewheel positions  311 ,  312  and  313  of the codewheel  310 . 
         [0036]      FIG. 7  illustrates a graphical representation  800  of the signal magnitude for three positions  311 ,  312  and  313  of the codewheel  310  as a function of codewheel axial position within the encoder reader gap. In this example position  312  can be taken as the nominal desired position of the codewheel with positions  311  and  313  being possible extreme positions. This axial motion of the codewheel  310  within the encoder reader gap results in undesired variation in the magnitude signal. 
         [0037]    The magnitude signal amplitude can also be affected by dust, fingerprints and other types of contamination on the codewheel surface as well as variations in the codewheel materials, manufacturing process variations, print drum bearing axial play, codewheel non-flatness and other defects. All of these unintended magnitude signal variations can be thought of as signal noise that obscures the intended amplitude drop of the home pulse making it difficult for the controller to detect the home pulse or in some cases detect a false home pulse. 
         [0038]    In some encoder system assemblies, one of the common problems is non-flatness of the codewheel and misalignment of the codewheel to the print drum axis.  FIG. 8  schematically illustrates a codewheel  315  that is mounted non-perpendicular to an axis of rotation  320 . A codewheel  315  that is mounted as such will vary axial position  350  within the gap of encoder reader  330  when rotated and causes undesired amplitude modulation of the magnitude signal with a frequency of 1 cycle per revolution. This modulation can cause the magnitude signal to increase or decrease and in some cases cause the magnitude signal to drop lower than the home pulse. 
         [0039]    An example of a magnitude signal  1010  depicting the affects of axial run out caused by a codewheel  315  that is not mounted perpendicular to the axis of rotation  320  is illustrated as a graphical representation in  FIG. 9 . Axial runout can cause the magnitude to increase or decrease, but in this case the axial runout causes the magnitude signal to increase while leaving the home pulses largely unaffected. 
         [0040]      FIG. 10  illustrates a graphical view  1100  of the magnitude signal generated by a codewheel  310  with four magnitude signal slopes indicated codewheel. In this example variation of the magnitude signal  1010  is affected by multiple causes. The home position  1170  can be a true home position whereas the positions  1180  and  1190  can be false home or noise signals caused by axial runout and other causes. As depicted, there is a very small magnitude difference  1120  between the minimum value of the true home signal  1170  and the noise signal  1190 . The true home signal  1170  is indicated by a much steeper slope  1150  than the slopes  1140  and  1160 . Also, the true home signal  1170  is characteristically followed by an immediate incline slope  1155 . In this example the total combination of all codewheel  310  defects and runout create minimum magnitudes nearly equal to that of the intended home position. 
         [0041]    An algorithm can be applied to the magnitude signal to create another signal that is a representation of the instantaneous rate of change of the magnitude signal (ROC signal).  FIG. 11  illustrates a graphical representation  1200  of an encoder magnitude signal  1010  and the ROC signal  1205  derived from it. By inspecting the magnitude signal  1010  it can be seen that adjacent minimums of the encoder magnitude signal are of the same amplitude as the intentional home pulse, whereas inspecting the ROC signal  1205  it can be seen that the amplitude of the home position signal  1215  is much larger than the amplitude of the signal noise  1210 . Thereafter, the ROC signal  1205  can also be filtered to further reduce signal noise. 
         [0042]    As an illustrative example, the ROC signal can be derived from the encoder magnitude signal and then filtered in the following manner. The encoder magnitude signal  1010  can be sampled at 20 kHz. The present home magnitude sample value can be subtracted from the previous home magnitude sample. The result of this computation can be then divided by the known time between samples (in this example, 50 us due to the 20 kHz sample rate), giving a change per unit time and therefore a rate of change (ROC). In the example discussed herein, to further reduce noise, the ROC signal  1205  can be filtered by determining a running average of 256 consecutive samples. Thus, the ROC signal  1205  derived from the encoder magnitude signal  1010  provides a large signal to a noise ratio that very clearly differentiates the home pulses from the other encoder magnitude variations, in accordance with a preferred embodiment. 
         [0043]    The unimproved home detection method previously located home by having an algorithm search for minimum amplitude of the encoder magnitude signal. This minimum is assigned as the home position and it is approximately centered between adjacent ROC maximum and minimum values. So, for simplicity and compatibility in the example illustrated, the home position assigned in conjunction with the ROC signal processing is centered between adjacent maximum and minimum ROC amplitudes. 
         [0044]      FIG. 12  illustrates location  1315  maximum ROC value M 1  corresponding to drum position y 1 . Minimum ROC value m 1  corresponds to drum position y 2  shown at location  1320 . Similarly, there are drum positions y 3  and y 4  with corresponding magnitudes M 2  and m 2  respectively. A centered home position is calculated by the equations (y 1 +y 2 )/2 or (y 3 +y 4 )/2, depending on the set of adjacent ROC signal points selected. Note that it is not a requirement to select the home position as centered between the maximum and minimum ROC values and the present invention is not limited to using merely one maximum or one minimum in order to generate a home position. The home position chosen can be arbitrary and is only referenced to the ROC signal. 
         [0045]    Along with the improved signal to noise ratio as compared with the previously used minimum magnitude homing method, the ROC signal home pulse has a characteristic shape. Knowledge of this shape can be taken advantage of for the purpose of generating a further more reliable and consistent home position. For example, by regulating the velocity of the print drum during sampling of the signal, the characteristic shape of the ROC signal can be maintained. 
         [0046]    As illustrated in  FIG. 12 , the drum velocity  1335  is regulated to be constant while the ROC signal  1310  is generated. Furthermore, the ROC signal can be validated by algorithms or measures that, for example, determine the span between minimum and maximum values, determine the slope of the signal adjacent to the minimum and maximum, determine the difference between minimum and maximum amplitude, determine the ratio between the minimum and maximum amplitude, etc. and compare the results of these measures with the expected characteristics. 
         [0047]    It will be appreciated that variations of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications. Also, that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.