Sensor and method for determining an angular position of a rotor

A sensor for sensing the angular position of a rotor includes a code disk rotatable with the rotor. A first light guide is rotatable with the rotor. The light guide directs light from a light source through the code disk to a detector. A second light guide has first and second arms directing light from a light source to the detector. A light modulator modulates the light directed from one of the first and second arms to the detector. A method for determining the angular position of the rotor includes providing the code disk with a plurality of individual designation areas located near the outer peripheral edge of the disk. Each designation area has a plurality of digital bits. The detector detects the digital bits from a selected portion of the code disk. The selected portion is functionally related to the angular position of the rotor. A bit center is determined for each bit of the selected portion. The bit is determined to be a 1 or a 0 by determining a value related to the bit based on the determined bit center and comparing the determined value against a threshold. The determined 1's and 0's are monitored to identify a code word. The angular position of the rotor is identified based upon the identified code word.

TECHNICAL FIELD

The present invention relates to a sensor and method for determining an angular position of a rotor, and, more specifically, to a sensor and method for determining an angular position of a steering wheel of a vehicle.

BACKGROUND OF THE INVENTION

Steering angle sensors are used to determine the angular position of a steering wheel of a vehicle. The steering angle sensor may include a code disk that rotates with the steering wheel. The code disk is at least partially transparent and has an optical coding. A light source is directed toward the code disk. A photosensitive receiver receives the light that traverses the code disk.

SUMMARY OF THE INVENTION

A sensor for sensing an angular position of a rotor of the present invention includes a code disk rotatable with the rotor. A light guide is rotatable with the rotor. The light guide directs light from a light source through the code disk to a detector.

In another aspect of the present invention, a sensor for sensing an angular position of a rotor includes a light guide having first and second arms directing light from a light source to a detector. A light modulator modulates the light directed from one of the first and second arms to the detector.

In another aspect of the present invention, an apparatus for determining an angular position of a rotor includes a code disk secured to the rotor and having a plurality of individual designation areas located near the outer peripheral edge of the disk. Each designated area has a plurality of digital bits and is identified by a code word comprising the plurality of digital bits. The apparatus further includes a detector for detecting the digital bits from a selected portion of the code disk, which is functionally related to the angular position of the rotor. The detector includes means for determining a bit center for each bit of the selected portion of the code disk and bit value determination means for determining whether each bit in the selected portion of the code disk is a 1 or a 0. The bit value determination means determines a value related to each bit in the selected portion of the code disk based on the determined bit center and compares the determined value against a threshold to determine if the bit is a 1 or a 0. The detector also includes word identification means monitoring the determined 1's and 0's to identify a code word and identifying the angular position of the rotor based upon the identified code word.

In another aspect of the present invention, a method for determining an angular position of a rotor comprises the step of securing a code disk to the rotor having a plurality of individual designation areas located near the outer peripheral edge of the disk. Each designation area has a plurality of digital bits and being identified by a code word comprising the plurality of digital bits. The method also comprises the step of detecting the digital bits from a selected portion of the code disk. The selected portion is functionally related to the angular position of the rotor. The method further comprises the steps of determining a bit center for each bit of the selected portion and determining whether each bit in the selected portion of the code disk is a 1 or a 0 by determining a value related to each bit in the selected portion of the code disk based on the determined bit center and comparing the determined value against a threshold. The method still further comprises the steps of monitoring the determined 1's and 0's to identify a code word, and identifying the angular position of the rotor based upon the identified code word.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

A sensor10constructed in accordance with a first exemplary embodiment of the present invention is illustrated inFIGS. 1-4. The sensor10(FIG. 1) is connected with a rotor12, such as a steering shaft of a vehicle. A steering wheel (not shown) may be connected with the rotor12for rotation with the rotor. The sensor10detects an angular position of the rotor12about a longitudinal central axis13of the rotor. The rotor12may rotate 900°, for example, in either direction from an initial straight ahead position. Accordingly, the rotor12may rotate between −900° and +900°.

The sensor10includes a turn sensor or counter14and an angle sensor16. The turn sensor or counter14senses the number of turns the rotor12makes from the initial position. The angle sensor16senses the angular position of the rotor12between 0° and 360° in any given turn. Therefore, the absolute angular position of rotor12relative to the initial position can be determined by combining the number of turns from the initial position sensed by the turn sensor or counter14and the angular position sensed by the angle sensor16.

The turn counter14includes a turn disk20. The turn disk20has a central opening22through which the rotor12extends. The turn disk20is connected to the rotor12in any desired manner. Accordingly, the turn disk20rotates with the rotor12about the axis13.

The turn disk20(FIG. 3) has a radially inner portion24. A flange26extends radially outwardly from the inner portion24. A radially outer surface of the inner portion24includes one or more slots28extending axially from a lower end of the inner portion, as seen inFIG. 3, toward the flange26. The flange26includes a spiral groove30in an upper surface of the flange. The spiral groove30may be in the shape of an Archimedes spiral. At each of its outermost and innermost ends, the spiral groove30may include an extension groove portion31(FIG. 2) that curves back toward and joins the adjacent turn of the spiral groove. Each such groove extension portion31would have a bottom surface that is higher than a bottom surface of the remainder of spiral groove30at the point where the groove extension portion joins the adjacent turn of the spiral groove.

A tracking member40(FIG. 1) has a first arm42with an axially extending projection44. The axially extending projection44extends into the groove30of the turn disk20. An end46of the tracking member40is pivotally connected to a printed circuit board (PCB)50. The PCB50is connected with the vehicle so that the rotor12and the turn disk20move relative to the PCB. As the turn disk20rotates, the groove30moves relative to the projection44, which pivots the tracking member40relative to the PCB50.

When the turn disk20rotates in a clockwise direction, as viewed inFIG. 2, the tracking member40pivots in a clockwise direction relative to the PCB50. When the turn disk20rotates in a counterclockwise direction, as viewed inFIG. 2, the tracking member40pivots in a counterclockwise direction relative to the PCB50. Alternatively, the tracking member40may pivot in a counterclockwise direction when the turn disk20rotates in a clockwise direction and pivot in a clockwise direction when the turn disk rotates in a counterclockwise direction.

If the spiral groove30is formed with one or more groove extension portions31, the axially extending projection44of the tracking member40may move beyond the innermost or outermost end of the spiral groove. The groove extension portion31would then direct the axially extending projection44to move back into the main portion of the spiral groove30. Because the groove extension portion31has a higher bottom surface than the main portion of the spiral groove30at the point where the groove extension portion joins the adjacent turn of the spiral groove, the axially extending projection44will not move into the groove extension portion prior to reaching the innermost or outermost end of the spiral groove. The foregoing arrangement may help protect the turn sensor or counter14against inadvertent damage prior to installation of the sensor10in a vehicle.

The end46of the tracking member40has an annular recess48(FIG. 3). A generally cylindrical support member56is connected to the PCB50. The support member56extends into the recess48to support the tracking member40for pivotal movement relative to the PCB50. The support member56has an end surface58engaging the tracking member40. The end surface58supports the tracking member40for pivotal movement relative to the support member56.

The support member56includes a radially outwardly extending projection59(FIGS. 1 and 4). The projection59extends into an L-shaped slot60in the end46of the tracking member40. The projection59on the support member56engages the tracking member40in the L-shaped slot60to connect the tracking member to the support member while permitting pivotal movement of the tracking member relative to the support member and the PCB50.

The support member56includes a plurality of tabs62(FIGS. 1 and 3). The tabs62snap into openings64in the PCB50to connect the support member56to the PCB. The support member56may have an axially extending slot66to allow the tabs62to snap into the PCB50.

A second arm70of the tracking member40(FIG. 4) extends at an angle to the first arm42. The second arm70of the tracking member40includes a recess72that extends along the length of the second arm. Tabs74extend from the second arm70on opposite sides of the recess72and partially across the recess. The tabs74retain a first light guide80in the recess72. The first light guide80snaps into the recess72in the second arm70. The light guide80pivots with the tracking member40relative to the support member56and the PCB50.

The first light guide80may be made of a polycarbonate or acrylic material. The first light guide80has a first cylindrical end86located in the support member56(FIGS. 1 and 3). An intermediate portion88of the light guide80extends between the first end86and a second end90. The intermediate portion88extends through a recess94in the support member56.

The light guide80extends from the support member56to a position adjacent a detector96connected to the PCB50. The second end90of the light guide80is positioned adjacent the detector96. The detector96may be any desired light detector, such as a photo sensor array. The second end90moves relative to the detector96as the tracking member40pivots relative to the PCB50.

The light guide80directs light from a first photo emitter or light source100connected with the PCB50to the detector96. The light source100may be connected to the PCB50in any desired manner. The light source100may be any desired optical emitter, such as an LED.

The first photo emitter or light source100is located within the support member56. The light source100directs light into the first end86of the light guide80. The light guide80has a first reflective surface104(FIG. 3) that directs the light from the light source100toward the second end90of the light guide. The second end90of the light guide80has a second reflective surface106. The second reflective surface106of the light guide80directs the light received from the first reflective surface104toward the detector96. The light guide80sends a signal to different areas of the detector96as the light guide pivots relative to the PCB50. Accordingly, the number of turns the rotor12has made from the initial position can be determined by which area of the detector96receives the signal from the light guide80.

The angle sensor16includes a code disk120and a second light guide122. The code disk120is annular and has a central opening124through which the rotor12extends. The second light guide122is annular and has a central opening126through which the rotor12extends. The code disk120and the light guide122are connected to the turn disk20and the rotor12. Accordingly, the code disk120and the light guide122rotate with the rotor12and the turn disk20about the axis13.

The light guide122may be made of a polycarbonate or acrylic material. The light guide122includes one or more radially inwardly extending protrusions128that extend into the slots28in the inner portion24of the turn disk20. The protrusions128help connect the light guide122to the turn disk20in a predetermined position relative to the turn disk and the rotor12. Accordingly, the light guide122rotates with the turn disk20and the rotor12.

When viewed in radial section, as shown inFIG. 3, the light guide122has a generally frustoconical shape. A first end130of the light guide122forms a relatively wide base of the frustoconical shape and has a first outer diameter. A second end132of the light guide122is spaced from the first end130along the axis13and forms a relatively narrow base of the frustoconical shape. The second end132thus has a second outer diameter that is smaller than the first outer diameter. The first end130, adjacent the radial outer circumference of the light guide122, is formed with a recess that receives the code disk120and that permits a portion of the first end to extend through the opening124in the code disk. The first end130may also have a radially outwardly extending rib (not shown) that projects into the recess that receives the code disk120. The rib may extend into and engage a slot133(FIG. 1) in the code disk120to help connect the code disk to the light guide122and the turn disk20in a predetermined position. Accordingly, the code disk120rotates with the light guide122, the turn disk20and the rotor12about the axis13.

The code disc120may be a clear flat material, such as a polycarbonate film, acrylic film, or mylar film. The code disk120may be connected to the light guide122in any desired manner, such as by adhering the code disk to the light guide. It is contemplated that the code disk120may be insert molded with the light guide122. The code disk120may be placed in a mold and polycarbonate or acrylic material injected into the mold to form the light guide122and connect the code disk to the light guide.

The code disk120has a first end surface134that is affixed to the second end132of the light guide122so that the code disk rotates with the light guide122. A second end surface136of the code disk120is spaced away from the first end surface134along the axis13and faces away from the second end132of the light guide122. The second end surface136of the code disk may lie in the same plane as a surface131of the first end130of the light guide122. A digital code is formed on the code disk120in a radial pattern adjacent a radially outer edge138of the code disk. The code may include a plurality of discrete indicia (not shown) spaced apart around the circumference of the code disk120. The indicia may, for example, include a plurality of openings in the code disk and uninterrupted portions of the code disk that effectively separate the openings from one another. Alternatively, the indicia may include a plurality of opaque and transparent markings on the code disk120, which may be applied via printing. The indicia of the code may be printed on the second end surface136of the code disk or on the first end surface134. As a further alternative, the digital code may be formed on the code disk120in any desired manner.

The light guide122guides light from a second photo emitter or light source150to the detector96. The second light source150is connected with the PCB50. The light source150may be any desired optical emitter, such as an LED. The light source150is connected with the PCB50at a location radially inwardly of the code disk120and the detector96. The light source150is located axially below the first end130of the light guide122and below the end surface131, which is presented toward the light source. Both the light source150and the detector96are thus located below and adjacent to the first end130of the light guide122and away from the second end132of the light guide.

The light guide122(FIG. 3) includes a first frustoconical reflective surface160. The first reflective surface160extends axially away from the first end130of the light guide122and radially outwardly toward the flange26of the turn disk20. A second frustoconical reflective surface164extends radially outwardly and axially away from the flange26toward the first end130.

The second light source150directs light axially into the light guide122through the first end surface131and toward the first reflective surface160. The first reflective surface160directs the light from the second light source150in a radially outward direction toward the second reflective surface164. The second reflective surface164of the light guide122directs the light received from the first reflective surface160in a radially outward direction away from the second end132of the light guide122toward the outer edge138of the code disk120and the detector96. The light passes through the outer edge138of the code disk120as it travels from the second reflective surface164to the detector96. The angular position of the rotor12may be determined from the code sensed by the detector96.

The indicia (not shown) of the code formed on the code disk120are arranged to provide a pseudo-random array of binary digits or bits (i.e., 1's and 0's) around the outer circumference of the code disk. The pseudo-random array of bits forms a unique pattern for each of a multiplicity of predetermined individual designation areas around the circumference of the code disk120near the outer peripheral edge138. Each unique pattern thus identifies a specific portion of the circumference of the code disk120.

Each designation area has an associated unique code word made up of a plurality of bits (i.e., 1's and 0's). For example, the code disk120may include 512 bits and 512 code words, and each code word may include 9 bits, i.e., a 9-bit word made up of a combination of 1's and 0's. Due to the nature of the pseudo-random array of bits, each code word in the preceding example shares 8 bits with each immediately adjacent word. When the second light source150is illuminated, the light enters the light guide122, diffuses, and then is transmitted through the outer peripheral word area portion138of the code disk120to the detector96. The light guide122and light source150are arranged so that the light illuminates at least a 9-bit width of a word area of the outer peripheral edge138of the code disk120.

Each of the 512, 9-bit code words on the code disk is unique so that when the light source150passes light through a code disk word to the detector96, a controller166connected to the detector can decode the digital word and determine the angle or angular position of the code disk120, i.e., the relative angle, to within 360°/512=0.7°. Again, one skilled in the art will appreciate, that the values set forth herein are only given by way of example and other values may be used and other resolutions result. In accordance with one example embodiment of the present invention, the light source150is pulsed ON and OFF at a desired frequency to provide a pulse-width-modulated (“PWM”) signal at the detector96.

The functioning or operation of the angle sensor16may be enhanced in various ways. For example, the detector96, which may be a photo sensor array, may only need to detect a number of digital bits, such as nine, corresponding to the length of a single code word identifying a predetermined designation area on the circumference of the code disk120. If the detector96, such as a photo sensor array, is made larger or otherwise enabled to detect more digital bits, however, the detector may be capable of recognizing code words for designation areas adjacent to the designation area that is being detected at a predetermined measurement point. Having the capability for recognizing more than one code word provides an increased level of robustness for the angle sensor16.

Specifically, if the value of one or more digital bits cannot be determined due, for example, to dirt or dust on the detector96, the detector may nonetheless be able to identify the designation area located at the predetermined measurement point based on the two or more partial code words that can be recognized. The controller166may, for example, include a memory unit containing a look-up table with all of the code words used on the code disk120and the order of their use around the circumference of the code disk. The code words that include the recognized partial code words and that identify designated segments or code designation areas adjacent to one another on the code disk120may identified by reviewing such a look-up table. This process may then lead to identification of the specific designation area at the predetermined measurement point.

Similarly, the detector96may only need to include a single linear array of pixels to detect the digital bits represented by the indicia forming the code on the code disk120. Additional linear arrays of pixels may be used to provide redundancy and an increased level of robustness for the angle sensor16. For example, individual linear arrays of pixels may be monitored separately by the controller166and the digital bits detected by the individual linear arrays of pixels may be compared. Such a comparison may help detect defective or obstructed pixels and other fault conditions.

The functioning of the angle sensor16may also be enhanced by strobing or pulsing the light source1500N and OFF at a desired frequency to provide a pulse-width-modulated signal at the photo sensor array of the detector96. If the light source44is strobed ON and OFF in synchronization with the rate at which the detector96is capable of detecting the illuminated and non-illuminated areas produced by the code on the code disk120, the detector may be able to detect the digital bits represented by the illuminated areas at a faster effective rate without corrupting the detection results.

The functioning of the angle sensor16may further be enhanced by using a detector96with smaller pixels, which may allow a reduction in the width of the indicia necessary to represent one digital bit. If the indicia are more narrow, more indicia may be used on any given portion of the circumference of the code disk120, which may allow more and smaller designation areas and a more refined or precise determination of rotational position of the rotor12. Alternatively, movement of the indicia and thus the digital bits across the detector96may be detected at the individual pixel level, which may increase the precision of the determination of the rotational position of the rotor12.

In accordance with an example embodiment of the present invention, a unique method is used for analyzing each individual bit and bit location. Each bit is represented by a circumferentially-extending portion of the code disk120, and the circumferential extent or width of each circumferentially-extending portion is the same for each bit. Bits that are 1's have an opening that occupies, for example, seventy-five percent (75%) of the circumferential width of the bit. Bits that are 0's have an opening that occupies, for example, only twenty-five percent (25%) of the circumferential width of the bit. The code disk120of this example embodiment has 512 bits and 512 unique code words, each of which words represents an angular position increment of 360°/512=0.7°

The spacing between the code disk120and the detector96in this example embodiment is arranged such that each bit on the code disk overlies a predetermined number of pixels on a photo sensor array (not shown) of the detector. This predetermined number of pixels may also be referred to herein as a bit frame. In this example embodiment, the predetermined number of pixels is 7, but the predetermined number of pixels may be any number. In addition, each code word in this example embodiment is made up of 9 bits, but the number of bits in a code word may be greater or less than 9.

In order to detect a complete code word in this example embodiment, the photo sensor array of the detector96should include not less than 63 (9×7) pixels. A predetermined measurement point or index point on the photo sensor array is selected, such as a specific pixel of the photo sensor array—for example, the center pixel of the photo sensor array. Based on the light detected by each pixel in the photo sensor array, an edge detection algorithm can determine the edges of the illuminated area of each bit on the photo sensor array and, thus, the edges of the bit. From the detected edges, the width and center of the illuminated area can be determined, from which each bit may be identified as a 1 or a 0 and the location of the center of the bit may be determined. The center of the bit closest to the predetermined measurement point or index point (e.g., the center pixel of the photo sensor array) is the center of the middle bit of a nine bit code word (i.e., the center of the fifth bit in the word) closest to the index point. This code word is thus determined to represent the angular position of the code disk120and rotor12to the nearest 0.7°.

The foregoing angular position determination may be refined by making further determinations pursuant to this example embodiment of the present invention. In particular, if the center of the middle bit of a nine bit code word (i.e., the center of the fifth bit in the word) precisely overlies the predetermined measurement point or index point on the photo sensor array, the code disk120and, therefore, the rotor12is at the precise angular position indicated by the code word. If, on the other hand, the center of the middle bit of a nine bit code word overlies a pixel to one side or the other of the index point (e.g., the center pixel of the photo sensor array), the code disk120and rotor12are at an angular position between the angular positions designated by two adjacent code words. As each bit in a code word overlies seven pixels on the photo sensor array, each pixel effectively represents 0.7°/7=0.1° of angular position. Consequently, the number of pixels (“n”) between the center of the middle bit of a nine bit code word and the index point on the photo sensor array represents an offset=n×0.10 from the angular position represented by the code word. For example, if the center of the middle bit of a nine bit code word is located two pixels away from the index point on the photo sensor array (e.g., the center pixel of the photo sensor array), the angular position of the code disk120and rotor12is 2×0.1°=0.2° offset from the angular position represented by the code word.

Although the foregoing example uses the center of the center bit of a code word to make angular position determinations, any bit in a code word may be used for such purpose. Alternatively, the detected edges of a bit could be used as the reference point to makes angular position determinations, rather than the center of the center bit of a code word.

Also in accordance with an example embodiment of the present invention, an integral or summation of the light levels detected by the seven or other number of pixels overlaid by each bit on the code disk120may be used to determine whether each bit within a code word is a one or a zero. Additional angular resolution may be achieved by utilizing the exact center position of several bit positions located on the linear array. Specifically, the detector96acquires sample value from a light signal X(n). Then, a 1D Gaussian is performed on the sample so that g(n)=X(n+1)−X(n). From Gaussian result, bit edges are found and the bit centers y(n) are found. The bit center of a reference bit, such as bit7(1stbit of middle9), is found and compared to an ideal pixel or index point on the array of pixels. This yields a fine-tuning factor that may be used for additional angular resolution. Using the bit centers, an integration of each bit is determined (˜24 definite integrals), as follows:
z(n)=x(y(n)−3)+x(y(n)−2)+x(y(n)−1)+x(y(n))+x(y(n)+1)+x(y(n)+2)+x(y(n)+3)

Using these determined integrations, which represent the sum of the light levels detected by seven adjacent pixels centered on the bit center (i.e., three on each side of the center pixel), a threshold (“t”) is determined from the highest (“max”) and lowest (“min”) such integrations or sums of light levels.
t=(max+min)/2)

This threshold utilizes the fact that a digital 1 vs a digital 0 in the digital code has a ratio of 3:1 in terms of the light received by the detector96. Using the determined thresholds, a determination can be made as to whether each bit is a digital 1 or a digital 0, as follows:

A 9-bit code word can be identified from the determined bits. Finally, angles corresponding to 9-bit codes can be found in a look-up table to find local position (+/−0.7 degrees) and, if desired, the angular position can be fine tuned, based on an offset from an index point or pixel, to +/−0.1 degrees.

As indicated by the foregoing, the method used in accordance with the present invention to determine the angular position of the rotor12involves determining a bit center for each bit of a selected group of bits. After the bit center of a bit is determined, a value functionally related to the bit, such as the sum of the light levels detected by a predetermined number of pixels in the bit, is determined. This value is based on the determination of the bit center because the selection of which pixels to include in the light level summation, for example, is based on the determination of the center of the bit. The determined value is compared against a threshold. From this comparison, a determination is made as to whether the bit is a 1 or a 0. By monitoring the determined 1's and 0's, a code word may be identified. The angular position of the rotor may then be determined based upon the identified code word.

As shown inFIG. 3, the light from the first light guide80may pass through a radially outer portion of the second light guide122and the code disk120as the light is directed from the second reflective surface106of the first light guide80toward the detector96. The light from the light guide80illuminates an area of the detector96. The area of the detector96that receives the signal from the first light source100depends on the position of the light guide80relative to the detector. The detector96sends a signal to the controller166indicating the area of the detector that is illuminated by the light source100. The controller166can determine the number of turns the rotor12has made from the initial position in response to the signal received from the detector96. The controller can then determine the absolute position of the rotor12relative to the initial position by combining the number of turns sensed by the turn sensor14and the angle of the code disk120sensed by the angle sensor16.

A sensor210constructed in accordance with a second exemplary embodiment of the present invention is illustrated inFIGS. 5-8. The second exemplary embodiment is generally similar to the first exemplary embodiment. Accordingly, similar numerals will be utilized to designate similar components. The sensor210includes a turn sensor or counter214and an angle sensor16. The angle sensor16is generally similar to the angle sensor illustrated inFIGS. 1-4and, therefore, will not be described in detail. The turn sensor or counter214senses the number of turns a rotor12has made from an initial position. The angle sensor16senses the angular position of the rotor12between 0° and 360° in any given turn.

The turn sensor or counter214(FIG. 5) includes a turn disk20. The turn disk20has a central opening22through which the rotor12extends. The turn disk20is connected to the rotor12in any desired manner. Accordingly, the turn disk20rotates with the rotor12about the axis13.

The turn disk20(FIG. 7) has a radially inner portion24. A flange26extends radially outwardly from the inner portion24. The inner portion24includes slots28extending axially from a lower end of the inner portion, as viewed inFIG. 7, toward the flange26. The flange26includes a spiral groove30in an upper surface of the flange. The spiral groove30may be in the shape of an Archimedes spiral. At each of its outermost and innermost ends, the spiral groove30may include an extension groove portion (not shown) that curves back toward and joins the adjacent turn of the spiral groove, as previously described with respect to the embodiment of the invention shown inFIGS. 1-4.

A tracking member240(FIGS. 5 and 8) has an arm242with an axially extending projection244. Although the arm242is shown as having an upward step or extending upward from the remainder of the tracking member240, the arm242may be at the same level as the remainder of the tracking member. The axially extending projection244extends into the groove30of the turn disk20. An end246of the tracking member240is pivotally connected to a printed circuit board (PCB)50. The PCB50is connected with the vehicle so that the rotor12and the turn disk20move relative to the PCB. The groove30moves relative to the projection244when the turn disk20rotates to pivot the tracking member240relative to the PCB50.

When the turn disk20rotates in a clockwise direction, as viewed inFIG. 6, the tracking member240pivots in a clockwise direction relative to the PCB50. When the turn disk20rotates in a counterclockwise direction, as viewed inFIG. 6, the tracking member240pivots in a counterclockwise direction relative to the PCB50.

The end246of the tracking member240has a support portion248with tabs250. The support portion248and tabs250extend into an opening252of a first cylindrical portion254of a support member256connected to the PCB50. The tabs250snap into the first portion254of the support member256to connect the tracking member240to the support member. Cylindrical outer surfaces258of the support portion248engage an inner cylindrical surface262of the first portion254. An axial end surface264of the cylindrical portion254engages the tracking member240. The inner cylindrical surface262and the end surface264support the tracking member240for pivotal movement relative to the cylindrical portion254and the PCB50.

The support member256includes a second cylindrical portion266adjacent the first cylindrical portion254. A plurality of tabs268, one of which is shown inFIG. 5, extend from the first and second portions254,266. The tabs268snap into openings64in the PCB50to connect the support member256to the PCB.

The second cylindrical portion266of the support member256has a cap270defining a semicircular opening272. The cap270engages a first light guide280to connect the light guide to the PCB50. The light guide280extends through the opening272in the second portion266of the support member256.

The first light guide280(FIGS. 5 and 7) has a cylindrical portion286located in the second cylindrical portion266of the support member256. An intermediate portion288extends from the cylindrical portion286. A first arm290of the light guide280extends from the intermediate portion288. A second arm292extends from the intermediate portion288generally parallel to the first arm290.

The first and second arms290and292of the light guide280extend from the support member256to a position adjacent to a detector96connected to the PCB50. An end294of the first arm290and an end296of the second arm292are positioned adjacent the detector96.

A support297extends from the intermediate portion288of the light guide280(FIGS. 5 and 7). The support297engages the PCB50. Supports298, one of which is shown inFIG. 7, extend from each of the arms290,292and engage the PCB50. The supports297and298may be fixedly connected to the PCB50.

The light guide280(FIG. 7) directs light from a first light source100connected with the PCB50to the detector96. The light source100may be any desired optical emitter, such as an LED. The first light source100is located within the second cylindrical portion266of the support member256. The light source100directs light into the cylindrical portion286of the light guide280. The light guide280has a first reflective surface300that directs the light from the light source100toward the first and second arms290and292. The light guide280splits the light emitted by the light source100and directs the light to each of the arms290and292. The ends294,296of the first and second arms290,292have reflective surfaces302, one of which is shown inFIG. 7. The reflective surfaces302direct the light received from the first reflective surface300toward the detector96.

The tracking member240includes a downwardly extending light modulator or shutter304, as viewed inFIG. 7. The light modulator304extends between the end296of the second arm292and the detector96. The light modulator304moves with the tracking member240relative to the light guide280. The light modulator304may prevent light emitted from the end296of the second arm292from reaching the detector96. The amount of light blocked by the light modulator304depends on the position of the tracking member240relative to the light guide280. The light modulator304permits more light to pass from the second arm292to the detector96when the tracking member240pivots in the clockwise direction. The light modulator304blocks more light from passing from the second arm as the tracking member240pivots in the counterclockwise direction. Although the light modulator304is described as blocking light from the second arm292, the light modulator may modulate the light traveling from the second arm292to the detector96in any desired manner. It is contemplated that the light modulator304may have a reflective taper, a variable diaphragm, or a variable density filter pattern.

A controller166receives signals from the detector96indicating the quantity of light received by the detector from each of the arms290and292of the light guide280. The quantity of light received by the detector96from the first arm290is not modulated. The quantity of light received by the detector96from the first arm290of the light guide280is compared to the quantity of light received by the detector from the second arm292. The difference in the quantity of light received by the detector96indicates the number of turns the rotor12has made from the initial position. Other properties of the light received by the detector96from the arms290,292, such as the frequency of the light or the phase shift of the light, may be compared to determine the number of turns the rotor has made.

The angle sensor16includes a code disk120and a second light guide122. The code disk120and the light guide122are connected to the turn disk20and the rotor12. Accordingly, the code disk120and the light guide122rotate with the rotor12and the turn disk20about the axis13.

As in the embodiment of the invention shown inFIGS. 1-4, a digital code is printed on an axial end surface136in a radial pattern adjacent a radially outer edge138. Alternatively, the digital code may be printed on an axial end surface134. The digital code may be applied to the code disk120in any desired manner.

The light guide122guides light from a second light source150to the detector96. The second light source150is connected with the PCB50. The light source150is connected with the PCB50at a location radially inwardly of the code disk120and the detector96. The light source150is located axially below the end130of the light guide122.

The second light source150directs light axially into the light guide122toward the first reflective surface160. The first reflective surface160directs the light from the second light source150in a radially outward direction toward the second reflective surface164. The second reflective surface164of the light guide122directs the light received from the first reflective surface160in an axial and radially outward direction toward the outer edge138of the code disk120and the detector96. The light passes through the outer edge138of the code disk120as it travels from the second reflective surface164to the detector96. The angular position of the rotor12may be determined from the code sensed by the detector96.

The code disk120includes a plurality of individual code segments or code designation areas located near the outer peripheral edge138. Each code segment or code designation area has an associated code word made up of a plurality of bits (i.e., 1's and 0's). For example, the code disk120may include 512 code words, and each code word may include 9 bits of information, i.e., a 9-bit word made up with a combination of 1's and 0's. When the light source150is illuminated, the light enters the light guide122, diffuses, and then is transmitted through the outer peripheral word area portion138of the code disk120to the detector96. The light guide122and light source150are arranged so that the light illuminates at least a 9-bit width of a word area of the outer peripheral edge138of the code disk120.

Each of the 512, 9-bit code words on the code disk is unique so that when the light source150passes light through the code disk word to the detector96, the controller166connected to the detector can decode the digital word and determine the angle or angular position of the code disk120, i.e., the relative angle, within 360°/512=0.7°. One skilled in the art will appreciate, that the values set forth herein are only given by way of example and other values may be used and other resolutions result. The light source150may be pulsed ON and OFF at a desired frequency to provide a pulse-width-modulated (“PWM”) signal at the detector96.

Each individual bit and bit location represented by each illuminated 7-pixel width area may be analyzed in a manner similar to that described in connection with the first exemplary embodiment ofFIGS. 1-4to aid in identification of whether a bit value is a 0 or 1.

The light received by the detector96from the first and second arms290and292of the first light guide280is compared to determine the number of turns the rotor12has made from the initial position. The controller can then determine the absolute position of the rotor12relative to the initial position by combining the number of turns sensed by the turn sensor or counter214and the angle of the code disk120sensed by the angle sensor16.

Although the sensors10,210are described as including turn sensors or counters14,214and angle sensors16, the turn sensors may be used in combination with any angle sensor and the angle sensors may be used with any desired turn sensors. Also, the sensors10,210may be used to determine the relative angular positions between any members that move relative to each other about an axis.

A sensor310constructed in accordance with a third exemplary embodiment of the present invention is illustrated inFIGS. 9-10. The third exemplary embodiment is substantially the same as the second exemplary embodiment and includes the same components as the embodiment ofFIGS. 5-8, except for the turn sensor or counter214. Accordingly, similar numerals will be used to designate similar components. The sensor310includes a turn sensor or counter314and an angle sensor16. The angle sensor16is substantially the same as the angle sensor illustrated inFIGS. 1-4and, therefore, will not be described in detail. The turn sensor or counter314senses the number of turns a rotor (not shown) has made from an initial position. The angle sensor16senses the angular position of the rotor (not shown) between 0° and 360° in any given turn.

The turn sensor or counter314includes a turn disk20. The turn disk20has a central opening22through which the rotor extends. The turn disk20is connected to the rotor in any desired manner and rotates with the rotor about a central axis. The turn disk20has a radially inner portion24and a flange26that extends radially outwardly from the inner portion. The flange26includes, in an upper surface, a spiral groove30, which may be in the shape of an Archimedes spiral.

A tracking member340has an arm342with an axially extending projection344. The axially extending projection344extends into the groove30of the turn disk20. An end346of the tracking member340is pivotally connected to a printed circuit board (PCB)50. The PCB50is connected with the vehicle so that the rotor and the turn disk20move relative to the PCB. The groove30moves relative to the projection344when the turn disk20rotates to pivot the tracking member340relative to the PCB50.

The end346of the tracking member340has a support portion (not shown) that extends into an opening of a first cylindrical portion354of a support member356connected to the PCB50and that is connected to the support member. The support member356supports the tracking member340for pivotal movement relative to the support member and the PCB50. The support member356includes a second cylindrical portion366that is located adjacent the first cylindrical portion354and that is connected to the PCB50to connect the support member356to the PCB. The second cylindrical portion366of the support member356engages a first light guide380to connect the light guide to the PCB50. The light guide380has a cylindrical portion386located in the second cylindrical portion366of the support member356. An intermediate portion388extends from the cylindrical portion386. An arm390of the light guide380extends from the intermediate portion388. The arm390of the light guide380extend from the support member356to a position adjacent to a detector96connected to the PCB50. An end394of the arm390is positioned adjacent the detector96. A support397extends from the intermediate portion388of the light guide380and engages the PCB50. A support398extends from the arm390and engages the PCB50. The supports397and398may be fixedly connected to the PCB50.

The light guide380directs light from a first light source (not shown) connected with the PCB50to the detector96. The first light source may be any desired optical emitter, such as an LED. The first light source is located within the second cylindrical portion366of the support member356and directs light into the cylindrical portion386of the light guide380. The light guide380has a first reflective surface400that directs the light from the light source100toward the end394of the arm390. The end394of the arm390has a reflective surface402, which directs the light received from the first reflective surface400toward the detector96.

The tracking member340includes a downwardly extending light modulator or shutter404, which extends between the end394of the arm390and the detector96. The light modulator404moves with the tracking member340relative to the light guide380. The light modulator404may prevent light emitted from the end394of the arm390from reaching the detector96. The location at which light emitted from the end394of the arm390is blocked by the light modulator404depends on the position of the tracking member340relative to the light guide380. As the tracking member340pivots in either the clockwise or counter-clockwise direction, the location at which light emitted from the end394of the arm390is blocked by the light modulator moves across the detector96. Although the light modulator404is described as blocking light from the arm390, the light modulator may modulate the light traveling from the arm390to the detector96in any desired manner. It is contemplated that the light modulator404may have a reflective taper, a variable diaphragm, or a variable density filter pattern.

A controller (not shown) receives signals from the detector96indicating the location at which light emitted from the end394of the arm390is blocked by the light modulator404. In one example embodiment of the invention, the detector96is a linear photo sensor array that includes a multiplicity of pixels. As the light modulator404moves relative to the end394of the arm390, the location at which light emitted from the end of the arm is blocked by the modulator moves along the linear array of pixels. To determine this location, the controller performs a process, which may involve executing an algorithm, to identify the pixel with the lowest detected light value, which is the darkest pixel position on the linear array. The pixel identified by this process is presumed to be the location at which light emitted from the end394of the arm390is blocked by the light modulator404. Using the angular position determined by the angle sensor16and, for example, a curve fitting process or a look-up table, the controller correlates the identified pixel with the number of turns that the turn disk20and the rotor have made from the initial position.

In an example of the third embodiment of the present invention, in which the rotor is capable of turning three complete rotations or 1080° in each direction from the initial position, the linear array is searched for the minimum value (i.e., the darkest value) in the span of the sensor. The pixel at which this dark spot is located is determined to be the location of the shutter or light modulator and, thus, the turn counter. The determined location, which is identified by the “number” assigned to the particular pixel as part of a sequential numbering of the pixels from 1 to n along the array, is “fitted” to an ideal turn curve in order to identify the number of turns that the turn disk and the rotor have made from the initial position. In the curve fitting process, the angle determined from the angle sensor is used to calculate a set of all possible locations from the ideal turn curve. The formula used to calculate the locations is: (360×N)+base angle −1080, where N=0 . . . 5 and the base angle is the angle determined by the angle sensor. The constant1080shifts the reference to allow for positive and negative angles centered around the initial or straight ahead position. The pixel location or “number” determined by the turn counter is compared to the set of possible locations or pixel numbers and the “best” fit is then selected as the actual number of turns from the initial or straight ahead position.

For example, if the pixel location or “number” determined by the turn counter is pixel number35and the angle determined by the angle sensor is 20°, the set of possible angle positions calculated by the foregoing formulation will be: −1060°, −700°, −340°, +20°, +380°, and +7400 (where 0° is straight ahead, negative angles are counterclockwise from the straight ahead position, and positive angles are clockwise from the straight ahead position). From the ideal turn curve, which may be established by calculation or empirical testing, the foregoing angles may correspond to pixel locations32,64,96,128,160, and192. Because the pixel location determined by the turn counter is pixel35and the closest possible pixel location from the ideal turn curve is pixel32, the result of the curve fitting process is a determination that the turn disk and rotor are in the turn farthest in the counter-clockwise direction from the initial position, which may be designated turn 0 (or turn 1).