Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
APPARATUS AND METHOD FOR SELECTOR POSITION DETERMINATION
Document Type and Number:
WIPO Patent Application WO/2016/139337
Kind Code:
A1
Abstract:
Some embodiments of the present invention provide a method of determining a position of a selector, comprising receiving position data indicative of a position of a selector, applying correction data to the position data to determine corrected position data, and determining one of a plurality of positions of the selector based upon the corrected position data. Some embodiments of the present invention provide a method of determining a correction for selector position data, comprising determining when a selector is in one of a plurality of a predetermined positions based upon data indicative of one or more conditions associated with the selector, and determining correction data indicative of a correction for position data indicative of a position of the selector.

Inventors:
COOPER IAN (GB)
SAUNDERS JONATHAN (GB)
Application Number:
PCT/EP2016/054628
Publication Date:
September 09, 2016
Filing Date:
March 04, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
JAGUAR LAND ROVER LTD (GB)
International Classes:
F16H59/04; F16H61/00; F16H61/28
Foreign References:
EP1292783B12006-05-31
US20020089336A12002-07-11
US5743143A1998-04-28
US5911787A1999-06-15
GB2493380A2013-02-06
Attorney, Agent or Firm:
BORTON, Claire (Patents Department W/1/073Abbey Road, Whitley, Coventry Warwickshire CV3 4LF, GB)
Download PDF:
Claims:
CLAIMS

A method of determining a position of a selector, comprising:

receiving position data indicative of a position of a selector;

applying correction data to the position data to determine corrected position data; and

determining one of a plurality of positions of the selector based upon the corrected position data,

wherein the applying the correction data comprises applying one or both of: translation data for translating a position of the position data; and/or rotation data for applying a rotation to the position data.

The method of claim 1 , wherein the rotation data defines an angle of rotation of the position data.

The method of claim 1 or claim 2, wherein applying the correction data comprises determining: x' = ((x - xo) cos 0 - (y - y0) sin #) + x0 + (χηοπύη α1 - x0)

y' = (( y - y0 ) cos Θ + (x - x0 ) sin Θ) + y0 + ( ynomin al - y0 )

where x and y are coordinates of the position data, x0 and y0 are coordinates identifying an origin about which the position data is to be rotated, Θ is an angle of rotation and x' and y' are corrected coordinates.

The method of claim 3, wherein cos # and sin Θ are determined based upon distances between first and second positions of the selector.

The method of any preceding claim, wherein the position data is received from one or more sensors arranged to monitor a position of the selector.

The method of any preceding claim, wherein the selector is a gear selector associated with a gearbox.

The method of any preceding claim, comprising determining whether the position data is indicative of a position within a predetermined region and applying the correction data only if the position data is indicative of a position outside of the predetermined region.

The method of claim 7 when dependent on claim 6, wherein the predetermined region corresponds to a neutral of the gearbox.

The method of any preceding claim, wherein the determining the one of the plurality of positions of the selector comprises: determining whether the corrected position data is indicative of a position within one or more position windows each defining an extent of position data corresponding to a respective position of the selector.

The method of any preceding claims, comprising determining whether the corrected position data is indicative of a position within one of a plurality of position windows.

The method of claim 9 or claim 10 when dependent on claim 6, wherein each position window corresponds to a respective gear of the gearbox.

An apparatus for determining a position of a selector, comprising:

position determining means for determining a position of a selector and outputting position data indicative thereof;

a memory means storing correction data; and

processing means arranged to determine corrected position data by applying the correction data stored in the memory to the position data received from the position determining means,

wherein the correction data comprises one or both of:

translation data for translating a position of the position data; and/or rotation data for applying a rotation to the position data.

The apparatus of claim 12, wherein the processor is arranged to apply the correction data, comprising determining: x' = ((x - xo) cos 0 - (y - y0) sin #) + x0 + (χηοπύη α1 - x0)

y' = (( y - y0 ) cos Θ + (x - x0 ) sin Θ) + y0 + ( ynomin al - y0 ) where x and y are coordinates of the position data, x0 and y0 are coordinates identifying an origin about which the position data is to be rotated, Θ is an angle of rotation and x' and y' are corrected coordinates.

The apparatus of claim 12 or claim 13, wherein the processing means is arranged to determine whether the position data is indicative of a position within a predetermined region and to apply the correction data only if the position data is indicative of a position outside of the predetermined region; optionally the predetermined region corresponds to a neutral of a gearbox.

The apparatus of any of claims 12 to 14, wherein the processing means is arranged to determine whether the corrected position data is indicative of a position within one or more position windows each defining an extent of position data corresponding to a respective position of the selector; optionally each position window corresponds to a respective gear of a gearbox.

A method of determining a correction for selector position data, comprising: determining when a selector is in one of a plurality of a predetermined positions based upon data indicative of one or more conditions associated with the selector; and

determining correction data indicative of a correction for position data indicative of a position of the selector,

wherein the correction data comprises one or both of:

translation data for translating a position of the position data; and/or rotation data for applying a rotation to the position data.

The method of claim 16, wherein the selector is a gear selector of a gearbox.

The method of claim 16 or 17, wherein the one or more conditions comprise one or more of:

a state of a clutch;

a state of an engine; and/or

a N/V ratio of a vehicle.

The method of any of claims 16 to 18, wherein the rotation is determined based upon: ί Xγ'λ f xr 0n Λ ] ( I cos ) - sin(#)Y x - xn

+

sin(<9) - cos(<9) y - y0 where x and y are coordinates of the position data, x0 and y0 are coordinates identifying an origin about which the position data is to be rotated, Θ is an angle of rotation and x' and y' are corrected position data coordinates.

The method of claim 17 or any claim dependent thereon, comprising:

determining when the gear selector is in a first position associated with a first predetermined gear of the gearbox based upon data indicative of one or more conditions associated with the selector;

storing position data indicative of a position of the gear selector in the first predetermined gear;

determining when the gear selector is in a second position associated with a second predetermined gear of the gearbox based upon data indicative of one or more conditions associated with the selector;

storing position data indicative of the position of the gear selector in the second predetermined gear; and

determining the correction data based upon the position data associated with the first and second predetermined gears.

The method of claim 17 or any claim dependent thereon, wherein the method is performed as part of a manufacturing process of a vehicle associated with the gearbox.

The method of claim 21 when dependent on claim 18, wherein the N/V ratio is determined whilst the vehicle is operation on a rolling road, where N is a speed of an engine or motor in revolutions-per-minute (RPM) and V is an effective speed of the vehicle on the rolling road.

The method of any of claims 16 to 22, comprising storing the correction data in a memory device associated with the vehicle.

Computer software arranged, when executed on a computer, to perform a method according to any of claims 1 to 1 1 or 16 to 23; optionally the software is stored on a computer-readable medium. A vehicle comprising the apparatus of any of claims 12 to 15.

A method, apparatus or vehicle substantially as described herein before with reference to the accompanying drawings.

Description:
APPARATUS AND METHOD FOR SELECTOR POSITION DETERMINATION

TECHNICAL FIELD

The present disclosure relates to methods and apparatus for determining a position of a selector. In particular, although not exclusively, embodiments of the present invention provide methods and apparatus for determining a position of a selector having a plurality of predetermined positions.

BACKGROUND

It is often desired to determine a position of a selector, such as a selector for selecting a gear of a gearbox, which may be known as a gear selector or gear stick. It is necessary to know whether a vehicle is in gear and in which gear for activation of start-stop functionality of the vehicle and to provide an indication of the currently selected gear to systems of the vehicle such as a throttle control system of the vehicle which may vary a response of the throttle according to the selected gear.

In order to determine the position of the selector, a sensor may be used which outputs position data indicative of a position of the selector. The selector is associated with an emitter such as a magnet and the sensor is mounted upon the gearbox to output the position data indicative of the position of the selector. However the position data may not enable reliable determination of the selected gear. For example, due to manufacturing tolerances, the position data for each gear may vary between gearboxes. Furthermore the position data for each gearbox may vary with respect to expected position data for each gear.

It is an object of embodiments of the invention to at least mitigate one or more of the problems of the prior art.

SUMMARY OF THE INVENTION

Aspects and embodiments of the invention provide a method and apparatus for determining a position of a selector, and a vehicle comprising an apparatus for determining a position of a selector as claimed in the appended claims. Aspects and embodiments of the invention further provide a method of determining a correction for selector position data as claimed in the appended claims. According to an aspect of the present invention there is provided a method of determining a position of a selector, comprising applying correction data to position data indicative of a position of a selector to determine corrected position data. According to a further aspect of the present invention there is provided a method of determining a position of a selector, comprising receiving position data indicative of a position of a selector, applying correction data to the position data to determine corrected position data, and determining one of a plurality of positions of the selector based upon the corrected position data. Advantageously the application of the correction data allows more reliable determination of the position of the selector.

The applying the correction data may comprise applying one or both of translation data for translating a position of the position data and/or rotation data for applying a rotation to the position data. The rotation data may define an angle of rotation of the position data. The translation data advantageously allows for correction of the position data linearly, whilst the rotation data allows for angular correction.

Applying the correction data may comprise determining: x' = ((x - x o ) cos 0 - (y - y 0 ) sin #) + x 0 + (χ ηοπύη α1 - x 0 ) y' = ((y - y o ) cos 0 + (x - x 0 ) sin Θ) + y 0 + (y nomin al - y 0 ) where x and y are coordinates of the position data, x 0 and y 0 are coordinates identifying an origin about which the position data is to be rotated, Θ is an angle of rotation and x' and y' are corrected coordinates.

The cos # and sin # may be determined based upon distances between first and second positions of the selector. That is, cos # and sin # may be determined based upon trigonometric length relationships thereby avoiding use of sin and cosine function. Advantageously computation of sin and cosine functions is avoided which may be computationally heavy.

The position data may be received from one or sensors arranged to monitor a position of the selector. The selector may be a gear selector associated with a gearbox. Advantageously the position of the gear selector may be more reliably determined. The method may comprise determining whether the position data is indicative of a position within a predetermined region and applying the correction data only if the position data is indicative of a position outside of the predetermined region. The predetermined region may correspond to a neutral of the gearbox.

Determining one of the plurality of positions of the selector may comprise determining whether the corrected position data is indicative of a position within one or more position windows each defining an extent of position data corresponding to a respective position of the selector. Each position window may correspond to a respective gear of a gearbox.

According to a still further aspect of the present invention there is provided an apparatus for determining a position of a selector, comprising position determining means for determining a position of a selector and outputting position data indicative thereof a memory means storing correction data, and processing means arranged to determine corrected position data by applying the correction data stored in the memory to the position data received from the position determining means. The correction data may comprise one or both of translation data for translating a position of the position data; and/or rotation data for applying a rotation to the position data.

The processor may be arranged to apply the correction data, comprising determining: x' = ((x - x 0 ) cos e - (y - y 0 ) s e) + x 0 + (x nomin al - x 0 ) y' = ((y - y o ) cos 0 + (x - x 0 ) sin Θ) + y 0 + (y nomin al - y 0 ) where x and y are coordinates of the position data, x 0 and y 0 are coordinates identifying an origin about which the position data is to be rotated, Θ is an angle of rotation and x' and y' are corrected coordinates.

The processing means may be arranged to determine whether the position data is indicative of a position within a predetermined region and to apply the correction data only if the position data is indicative of a position outside of the predetermined region; optionally the predetermined region corresponds to a neutral of a gearbox. The processing means may be arranged to determine whether the corrected position data is indicative of a position within one or more position windows each defining an extent of position data corresponding to a respective position of the selector; optionally each position window corresponds to a respective gear of a gearbox.

According to a yet further aspect of the present invention there is provided a method of determining a correction for selector position data, comprising determining when a selector is in one of a plurality of a predetermined positions based upon data indicative of one or more conditions associated with the selector, and determining correction data indicative of a correction for position data indicative of a position of the selector.

The selector may be a gear selector of a gearbox. Optionally the one or more conditions comprise one or more of a state of a clutch, a state of an engine, and/or a N/V ratio of a vehicle.

The correction data may comprises one or both of translation data for translating a position of the position data; and/or rotation data for applying a rotation to the position data.

The rotation may be determined based upon: where x and y are coordinates of the position data, x 0 and y 0 are coordinates identifying an origin about which the position data is to be rotated, Θ is an angle of rotation and x' and y' are corrected position data coordinates.

The method optionally comprises determining when the gear selector is in a first position associated with a first predetermined gear of the gearbox based upon data indicative of one or more conditions associated with the selector, storing position data indicative of a position of the gear selector in the first predetermined gear, determining when the gear selector is in a second position associated with a second predetermined gear of the gearbox based upon data indicative of one or more conditions associated with the selector, storing position data indicative of the position of the gear selector in the second predetermined gear, and determining the correction data based upon the position data associated with the first and second predetermined gears. The method may be performed as part of a manufacturing process of a vehicle associated with the gearbox.

The N/V ratio may be determined whilst the vehicle is operation on a rolling road, where N is a speed of an engine or motor in revolutions-per-minute (RPM) and V is an effective speed of the vehicle on the rolling road.

The method may comprise storing the correction data in a memory device associated with the vehicle. According to a further aspect of the present invention there is provided computer software arranged, when executed on a computer, to perform a method according to an aspect of the invention.

According to a further aspect of the present invention there is provided a vehicle comprising an apparatus according to an aspect of the invention or arranged to perform a method according to an aspect of the invention.

According to a still yet further aspect of the present invention there is provided an apparatus for determining a position of a selector, comprising position determining means for determining a position of a selector and outputting position data indicative thereof a memory device storing correction data, and a processing device arranged to determine corrected position data by applying the correction data stored in the memory to the position data received from the position determining device. The correction data may comprise one or both of translation data for translating a position of the position data; and/or rotation data for applying a rotation to the position data.

The processor may be arranged to apply the correction data, comprising determining: x' = ((x - x o ) cos 0 - (y - y 0 ) sin #) + x 0 + (χ ηοπύη α1 - x 0 ) y' = ((y - y o ) cos 0 + (x - x 0 ) sin Θ) + y 0 + (y nomin al - y 0 ) where x and y are coordinates of the position data, x 0 and y 0 are coordinates identifying an origin about which the position data is to be rotated, Θ is an angle of rotation and x' and y' are corrected coordinates. The processing device may be arranged to determine whether the position data is indicative of a position within a predetermined region and to apply the correction data only if the position data is indicative of a position outside of the predetermined region; optionally the predetermined region corresponds to a neutral of a gearbox. The processing device may be arranged to determine whether the corrected position data is indicative of a position within one or more position windows each defining an extent of position data corresponding to a respective position of the selector; optionally each position window corresponds to a respective gear of a gearbox. Within the scope of this application it is expressly intended that the various aspects, embodiments, examples and alternatives set out in the preceding paragraphs, in the claims and/or in the following description and drawings, and in particular the individual features thereof, may be taken independently or in any combination. That is, all embodiments and/or features of any embodiment can be combined in any way and/or combination, unless such features are incompatible. The applicant reserves the right to change any originally filed claim or file any new claim accordingly, including the right to amend any originally filed claim to depend from and/or incorporate any feature of any other claim although not originally claimed in that manner.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the invention will now be described, by way of example only, with reference to the accompanying figures, in which: Figure 1 shows an illustration of position data for a plurality of manual gearboxes;

Figure 2 shows an illustration of position data for a manual gearbox;

Figure 3 shows a method of determining correction data according to an embodiment of the invention;

Figure 4 shows an illustration of position data for a manual gearbox; Figure 5 shows a method of selector position determination according to an embodiment of the invention; Figure 6 shows an illustration of corrected position data for a manual gearbox according to an embodiment of the invention;

Figure 7 shows a schematic illustration of an apparatus according to an embodiment of the invention; and

Figure 8 illustrates a vehicle according to an embodiment of the invention. DETAILED DESCRIPTION

Embodiments of the invention determine correction data for determining a position of a selector based on position data associated with the selector. In particular embodiments of the invention are useful with position data indicative of a position of a gear selector such as a selector for selecting a gear of a manual gearbox. The correction data may comprise translation data for translating the position data. The correction data may comprise rotation data for applying a rotation to the position data.

Figure 1 illustrates position data 1 10 indicative of a position of a gear selector of a manual gearbox. The position data 1 10 in Figure 1 is from a plurality of manual gearboxes of the same type. The gear selector of the manual gearbox has a plurality of predetermined positions for selecting one of a plurality of gears of the gearbox and a neutral position in which the selector is able to move across gates of the gearbox. The position data illustrated in Figure 1 is from a gearbox having 6 gears where the gears are arranged in a predetermined pattern. It will be realised that both the number of gears and the layout of the gearbox may differ from that illustrated, and that embodiments of the invention are useful with gearboxes having other numbers of gears and different layouts. The predetermined pattern may be based upon a H- pattern or double-H-pattern. The pattern includes a first plurality of gears opposed to a second plurality of gears at respective sides of the gearbox. The first plurality of gears may include 1 st , 3 rd and 5 th gears, whilst the second plurality of gears may include 2 nd , 4 th and 6 th gears. It will be appreciated that the composition of the first and second pluralities varies according to a number of gears of the gearbox. Thus the gears are arranged in opposed pairs where a first pair comprises 1 st and 2 nd gears, a second pair comprises 3 and 4 gears and a third pair comprises 5 and 6 th gears. The gearbox may comprise further pairs than those illustrated in Figure 1 . The neutral position of the gearbox interposes the first and second pluralities of gears. The selector is biased to a central position between the first and second pluralities of gears.

The position data 1 10 indicates a position of the selector at predetermined intervals of time. The interval may be 100ms although it will be realised that other intervals may be used. The position data is provided from one or more sensors associated with the selector or a mechanism connected to the selector. The position data may be provided in the form of a signal indicative of a location of the gear selector in two axes. The signal may be a pulse-width modulated (PWM) signal indicative of the location in each axis. Figure 1 illustrates the position data with respect to a two-dimensional coordinate system having an origin 101 illustrated with respect to x and y axis. Also illustrated in Figure 1 are a plurality of gear position windows 120 (only one of which is indicated with a reference numeral for clarity) illustrating a range of position data for each of the plurality of gears of the gearbox. Each gear position window is defined in terms of a range of gear positions in each axis corresponding to an associated gear. For example gear position window 120 indicates a range of position data for a reverse gear. The range of position data for gear position window 120 may be between x=14 and x=32 and y=10 and y=34. The gear position window 120 may be defined in terms of coordinates of opposing corners such as x=14, y=10 and x=32, y=34. Also illustrated in Figure 1 is expected position data for each gear. The expected position data 130 is indicative of a plane along which a position of the gear selector in 5 th gear of the gearbox is expected to lie, thereby defining a number of expected or acceptable positions for the gear selector in the respective gear. Figure 1 further illustrates first and second fault position windows indicative of position data which is not expected to be produced from the gearbox in normal operation. The first fault position window 140 defines an extent of possible position data for the gearbox whilst the second fault position window 150 indicates a range of position data associated with a fault of the gearbox i.e. which is not expected in normal use, where the second fault position window 150 is within the first fault position window 140. As can be appreciated from Figure 1 , for a plurality of gearboxes a large variation in position data is output even though the gearboxes are of the same type. That is, there is exhibited a wide variety of inter-gearbox variation in the position data 1 10. In some cases the output position data is close to a periphery of the associated gear position window 120. For example, for at least some gearboxes the position data 1 10 approaches a left-hand edge of the 5 th gear position window approximately around x=71 .

Referring to Figure 2, there is illustrated position data 210 indicative of a position of a gear selector of one manual gearbox. Also illustrated in Figure 2 is a gear position window 220 for a 5 th gear, amongst others, which indicates a valid range of position data for that gear. The gear position window 220 may define position data for the respective gear between x=69, y=10 and x=86, y=34 defining opposing corners of the window 220.

As can be appreciated, even though the gearbox is operating normally, the position data 210 when the gearbox is in 5 th gear extends outside of the gear position window 220 for 5 th gear. Furthermore it can be appreciated that the position data 210 is skewed or rotated with respect to the expected positions of gears and of neutral. Therefore based upon the position data 220 illustrated in Figure 2 correctly detecting in which gear the gearbox is operational, including neutral, may be difficult. Correct determination of the gear may be necessary to vary, for example, a throttle response of the vehicle according to the gear. Furthermore it may be necessary to correctly determine when the gearbox is in neutral for a start-stop function of the vehicle, such as to only allow the vehicle's engine to automatically start when the gearbox is in neutral if a clutch pedal of the vehicle is not depressed.

Figure 3 illustrates a method 300 of determining correction data for position data associated with a selector according to an embodiment of the invention. The method 300 determines the correction data for correcting one or more errors associated with the position data indicative of a position of the selector. The correction data may comprise one or both of offset correction data for correcting an offset associated with the position data and rotation correction data for correcting a rotation associated with the position data, as will be explained. In particular the method 300 may be used to determine the correction data for a gear selector of a manual gearbox of a vehicle. The method 300 is operable in response to position data for only a subset of gears of the gearbox. That is, it is not necessary to record position data corresponding to all gears of the gearbox. The position data for only some gears of the gearbox is used to determine correction data applicable to all gears of the gearbox. In one embodiment the method 300 is operable on position data corresponding to two gears (gears A and B) of the gearbox which are opposed across a neutral position of the gearbox. The gears may be gears in an upper half of the gearbox such as gears 5 th and 6 th , although it will be realised that other gears may be used, for example depending on a number of gears of the gearbox and a layout of the gearbox.

The method 300 of Figure 3 may be performed during or immediately subsequent to a manufacturing process of a vehicle. For example the method 300 of Figure 3 may be performed at an end of a vehicle manufacturing process when the vehicle is placed on a rolling road for testing and calibration of the manufactured vehicle. Correction data determined during the method 300 is stored in a memory associated with the vehicle. The correction data may be subsequently used during operation of the vehicle in order to more reliably determine a position of a selector associated with the vehicle.

In step 310 it is determined whether correction data already exists. Step 310 may comprise determining whether the correction data is stored in one or more locations in a memory, or whether valid correction data, such as data which is not equal to a predetermined initialisation value, is stored in the one or more memory locations. If correction data is already stored in the one or more memory locations then the method may end due to the existence of the correction data stored in the memory. In other embodiments it will be realised that each time the method 300 is executed new correction data is determined i.e. the method does not comprise step 310. If correction data does not exist the method moves to step 320.

In step 320 position data for a first position of the selector is determined. In one embodiment of the invention the first position corresponds to a neutral position of the selector i.e. where an output of the gearbox is not connected to an input. Step 320 may comprise determining when the gearbox is in neutral independent of the position data. The determination may be made upon information independent of the gearbox, such as from one or more other sensors. In one embodiment the determination of when the gearbox is in neutral is made based upon information indicative that one or more of an engine or motor of the vehicle is running, that a clutch of the vehicle is not depressed or disengaged and that the vehicle is stationary. If these predetermined conditions are met then the vehicle must be in neutral and neutral position data corresponding to the location of the selector in the neutral position is determined. The neutral position data is determined whilst the selector of the gearbox is not being operated by a user and is allowed to return to a natural position i.e. to which the selector is biased. The selector is expected to be biased to rest in a generally centre position of the gearbox i.e. approximately mid-way across the gearbox and between the first and second pluralities of gears. The neutral position data may correspond to a single sample of the position data or may be based upon a plurality of samples of the position data which may be averaged. The neutral position data may be stored in the memory in a memory in step 330. Alternatively or additionally neutral window data may be stored in the memory in step 330. Figure 4 illustrates position data 410 for a gearbox and an illustration of neutral window data 420. The neutral window data 420 is based upon the neutral position data determined in step 320 and defines a range of position data corresponding to neutral of the gearbox. The neutral window data comprises data indicative of a maximum extent of the position data corresponding to neutral in the x and y axes. A width of the neutral window in the axis may be substantially greater than a height of the neutral window in the y axis. The neutral window may be centred upon the neutral position data.

In step 340 it is determined whether the position data corresponds to a predetermined position of the selector. The predetermined position of the selector may correspond to a gear A of the gearbox. In one embodiment the gear A is a 5 th gear of the gearbox, although it will be realised that other gears may be chosen. Prior to step 340 the engine or motor associated with the gearbox may have been connected to a dynamometer via the gearbox. For example the vehicle including the gearbox may have been placed on a rolling road. On the rolling road wheels of the vehicle are able to be driven via the gearbox. An N/V ratio may be determined whilst the vehicle is operation on the rolling road, where N is a speed of the engine or motor in revolutions-per-minute (RPM) and V is vehicle speed or an effective speed of the vehicle on the rolling road. Based upon the N/V ratio the gear of the gearbox may be determined. When the N/V ratio is indicative of the gear A, such as 5 th gear, the position data for gear A is stored in step 350. The neutral position data for the gear A may correspond to a single sample of the position data or may be based upon a plurality of samples of the position data which may be averaged. The position data for gear A is indicative of the position of the selector in the x and y axes whilst the gearbox is in the gear A. In step 360 it is determined whether the position data corresponds to another predetermined position of the selector. The predetermined position of the selector may correspond to a gear B of the gearbox. In one embodiment the gear B is a 6 th gear of the gearbox, although it will be realised that this other gears may be chosen. The gear B is a gear at an opposing side of neutral from gear A. . Based upon the N/V ratio the gear of the gearbox may be determined. When the N/V ratio is indicative of the gear B, such as 6 th gear, the position data for gear B is stored in step 370. The neutral position data for the gear B may correspond to a single sample of the position data or may be based upon a plurality of samples of the position data which may be averaged. The position data for gear B is indicative of the position of the selector in the x and y axes whilst the gearbox is in the gear B.

In step 380 correction data for the position data is determined. The correction data is for correcting one or more errors associated with the position data of the gearbox.

In step 380 translation data for translating the position data in the x and y axes is determined. The translation data is determined based upon the position data corresponding to one of gear A and gear B. The translation data defines a correction in the x and y axes between the position data corresponding to, for example, gear A, which may be 5 th gear, and an expected position of the selector in the gear. For example the translation data may define a translation of x=-5 and y=+2 which is necessary to transpose the position data received from the gearbox to the expected position of the selector.

In some embodiments of step 380, rotation data is determined for applying a rotation to the position data. Referring to Figure 4, an angle of the rotation is indicated with reference numeral 430. The angle 430 is between an expected plane 431 of movement of the selector between the gears A and B and an actual plane 432 of movement based upon the position data. The rotation data is applied to the position data about a predetermined position. That is, the position data received from the selector is rotated about a predetermined point of rotation. The point of rotation may correspond to the expected position of the selector in the gear A for which the translation data is determined. Therefore, in some embodiments, the position data is rotated about the position of the selector in 5 th gear. In some embodiments the rotation is determined based upon a rotation matrix, which may be: cos(<9) - sin(<9) Yx - xA

sin(<9) - cos(<9)

Equation 1 where x and y are coordinates of the position data, x 0 and y 0 are coordinates identifying an origin about which the position data is to be rotated, Θ is an angle of rotation and x' and y' are corrected coordinates. The origin about which the position data is to be rotated may be any position, although in some embodiments of the invention the position of gear A is chosen, which may be 5 th gear.

Using the above rotation matrix, equations for calculating corrected coordinates of the position data can be derived as follows: x' = ((x - x 0 ) cos 0 - (y - y o ) sin θ) + χ 0 + (χ ποιώη α1 - χ 0 )

Equation 2 y' = ((y - y o ) cos 0 + (x - x 0 ) sin Θ) + y 0 + (y noirin al - y 0 )

Equation 3

In some embodiments of the invention, the calculation of corrected coordinates is performed without use of complex trigonometry. In particular calculation of sin(9) and cos(9) is avoided. Advantageously this reduces a computational workload necessary to implement embodiments the present invention, thus enabling a lower- power processor to be used.

It will be appreciated that sin(<9) =— and cos(0) =— where a is the length of an h h

adjacent triangle side, h is a length of a hypotenuse and o is a length of an opposite side of the triangle. Therefore a is a length of side 431 , h is a length of side 432 and o is a length of side 433 shown in Figure 4. The rotation data comprising values of

— and— may be determined in step 380 to avoid sin and cosine calculations.

h h Referring to Figure 5 there is illustrated a method 500 of determining a position of a selector. The position of the selector may be one of a plurality of predetermined positions. The selector may be a gear selector of a gearbox for a vehicle. The method 500 will be illustrated with reference to Figure 6.

The method comprises a step 510 of receiving position data indicative of a position of the selector. The position data may be received from one or more sensors arranged to monitor the position of the selector. The one or more sensors may be magnetic sensors for determining a position of one or more magnets arranged to move with the selector. The position data may be position data 610 as illustrated in Figure 6 which is determined at periodic intervals of time, such as 10ms.

In step 520 it is determined whether the position data is indicative of a predetermined position of the selector. In one embodiment it is determined in step 520 whether the position data corresponds to the gear selector being in neutral. The gear selector may be determined to be in neutral when the position data is within a predetermined range. In one embodiment the position data is indicative of the gearbox being in neutral when corresponding to a position within a neutral window 620 which, as discussed above, defines an extent of position data corresponding to neutral in the x and y axes. If the position data lies within the neutral window 620 then the method moves to step 530 where it is determined that the gearbox is in neutral. It can be appreciated that in some embodiments no correction is applied to position data corresponding to neutral. Advantageously this avoids unnecessary computations being performed to correct the position data corresponding to neutral of the gearbox.

If in step 520 it is determined that the position data does not correspond to neutral i.e. the position data is indicative of a position outside of the neutral window 620, then the method moves to step 540. In step 540 the position data 610 is corrected based upon the correction data. The position data 610 is corrected based upon one or both of the translation data and the rotation data. That is, the position data may be translated in the x and y axes based upon the translation data and/or the position data may be rotated about a predetermined point based upon the rotation data. The position data is translated in the x and y axes by adding or subtracting a predetermined offset value to the position data indicative of the position of the selector. The position data may be translated according to: pos = data + correction

where pos is corrected position data, data is position data received from the one or more sensors and correction is the correction data, which it will be realised may be positive or negative in value. It will be realised that a separate correction may be performed for each of the x and y axes.

The position data is corrected based upon the rotation data by means of Equations 2 and 3 described above. Thus the position data is corrected in position by the correction data, such as in one or both of the x and y axes. In step 550 it is determined in which one of a plurality of positions the selector is located based upon the corrected position data. In some embodiments step 550 comprises determining which gear is selected by the selector based upon the corrected position data. The selected gear is determined with reference to a plurality of gear position windows each defining an extent of position data corresponding to a respective gear, as discussed above. For example indicated in Figure 6 is a gear position window 630 for one gear, which in the illustrated example is 5 th gear. The corrected position data is compared against the plurality of gear position windows to determine whether the one of the associated gears is selected. For example it is determined that a gear is selected when the corrected position data falls within an extent of position data associated with the gear position window. Step 550 may also comprise determining whether the corrected position data corresponds to one or more fault position windows 640 where the selector is located in a fault position not expected in normal use. Figure 6 illustrates the position data of Figure 4 corrected by a method according to an embodiment of the invention. As will be most apparent from comparison of these figures, the position data in Figure 4 has been rotated to at least reduce an angular or rotation error associated with the position data 410 shown in Figure 4. Thus the position of the selector associated with the position data may be more reliably determined based on the corrected position data. Figure 7 illustrates an apparatus 700 according to an embodiment of the invention. The apparatus 700 comprises a control means in the form of an electronic control unit (ECU) having a data storage means in the form of a memory 715. The ECU is communicatively coupled to position determining means in the form of a sensor 720 for determining position data associated with a selector. The selector may be a gear selector of a vehicle with which the apparatus 700 is associated. The memory 715 is arranged to store correction data for correcting one or more errors associated with the position data received from the sensor 720. The ECU comprises processing means which may be one or more processors. The ECU is arranged to determine corrected position data by applying the correction data stored in the memory 715 to the position data provided from the sensor 720.

The apparatus further comprises an interface means 730 in the form of an interface unit 730 for communicating data. The interface unit 730 is for receiving and/or transmitting data. In one embodiment the interface unit 730 is arranged to receive data indicative of the N/V ratio of the vehicle during testing, as described above. In another embodiment the interface unit 730 is arranged to output corrected position data. The corrected position data is based upon the received position data from the sensor 720 and determined according to an embodiment of the invention as described above. In another embodiment the interface unit 730 may output gear information indicative of a gear in which the vehicle is operational, where the gear information is determined by the ECU 730 based upon the corrected position data. The gear information may be used by another apparatus or system of the vehicle. For example the gear information may be used by an engine management system or stop-start system of the vehicle, although it will be realised that this is not exclusive.

Figure 8 illustrates a vehicle 800 according to an embodiment of the invention. The vehicle 800 comprises an embodiment of an apparatus 700 as described with reference to Figure 7. The vehicle comprises a gearbox associated with the sensor 720 where the sensor is arranged to monitor a position of a gear selector of the gearbox.

It will be appreciated that embodiments of the present invention can be realised in the form of hardware, software or a combination of hardware and software. Any such software may be stored in the form of volatile or non-volatile storage such as, for example, a storage device like a ROM, whether erasable or rewritable or not, or in the form of memory such as, for example, RAM, memory chips, device or integrated circuits or on an optically or magnetically readable medium such as, for example, a CD, DVD, magnetic disk or magnetic tape. It will be appreciated that the storage devices and storage media are embodiments of machine-readable storage that are suitable for storing a program or programs that, when executed, implement embodiments of the present invention. Accordingly, embodiments provide a program comprising code for implementing a system or method as claimed in any preceding claim and a machine readable storage storing such a program. Still further, embodiments of the present invention may be conveyed electronically via any medium such as a communication signal carried over a wired or wireless connection and embodiments suitably encompass the same.

All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and/or all of the steps of any method or process so disclosed, may be combined in any combination, except combinations where at least some of such features and/or steps are mutually exclusive.

Each feature disclosed in this specification (including any accompanying claims, abstract and drawings), may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise. Thus, unless expressly stated otherwise, each feature disclosed is one example only of a generic series of equivalent or similar features.

The invention is not restricted to the details of any foregoing embodiments. The invention extends to any novel one, or any novel combination, of the features disclosed in this specification (including any accompanying claims, abstract and drawings), or to any novel one, or any novel combination, of the steps of any method or process so disclosed. The claims should not be construed to cover merely the foregoing embodiments, but also any embodiments which fall within the scope of the claims.