Title of Invention

AN ENGINE SYSTEM AND A METHOD OF COMPENSATING FOR DISTURBANCES IN A CRANKSHAFT SIGNAL

Abstract The invention relates to an engine system that compensates for disturbances in a crankshaft signal, comprising an error module that computes an error between an ideal period and an actual period of a crankshaft signal; a correction factor module that determines a correction factor based on the error; and a compensation module that applies the correction factor to the actual period of the crankshaft signal, wherein the error module computes the ideal period from a position equation, wherein the error module determines an average period and an average angular acceleration for K number of reference periods, and wherein the ideal period is computed from an initial angular velocity, the average period, and the average angular acceleration.
Full Text

FIELD The present disclosure relates to engine systems and more
particularly to methods and systems for compensating for disturbances in a
crankshaft signal.
BACKGROUND
The statements in this section merely provide background
information related to the present disclosure and may not constitute prior art.
Vehicles include an internal combustion engine that generates
drive torque. More specifically, the engine draws in air and mixes the air with fuel
to form a combustion mixture. The combustion mixture is compressed and
ignited to drive pistons that are disposed within the cylinders. The pistons
rotatably drive a crankshaft that transfers drive torque to a transmission and
wheels.
A crankshaft signal is generated based on the rotation of the
crankshaft. A control module determines an engine position and an engine
speed from the crankshaft signal. Engine position and engine speed are used to
control one or more subsystems within the vehicle. Disturbances in the
crankshaft signal can cause inaccurate engine speed and engine position
computations and therefore may cause one or more vehicle subsystems to
operate inefficiently.

SUMMARY
Accordingly, an engine system that compensates for
disturbances in a crankshaft signal is provided. The system includes: an error
module that computes an error between an ideal period and an actual period of a
crankshaft signal; a correction factor module that determines a correction factor
based on the error; and a compensation module that applies the correction factor
to the actual period of the crankshaft signal.
In other features, a method of compensating for disturbances in
a crankshaft signal is provided. The method includes: determining an actual
period, an angular velocity, and an angular acceleration for K reference periods
from a crankshaft position signal; computing an ideal period of rotation based on
the actual period, the angular velocity, and the angular acceleration for the K
reference periods; generating an error term for each of the K reference periods
based on the ideal period and the corresponding actual period; and applying the
error term to the corresponding actual period to compensate for disturbances in
the crankshaft signal.
Further areas of applicability will become apparent from the
description provided herein. It should be understood that the description and
specific examples are intended for purposes of illustration only and are not
intended to limit the scope of the present disclosure.

ACCOMPANYING DRAWINGS
The drawings described herein are for illustration purposes only
and are not intended to limit the scope of the present disclosure in any way.
Figure 1 is a functional block diagram of an engine system.
Figure 2 is diagram illustrating a crankshaft wheel.
Figure 3 is a dataflow diagram illustrating a crankshaft signal
disturbance compensation system.
Figure 4 is a flowchart illustrating a method of compensating for
disturbances in a crankshaft signal received from the engine system.
Figure 5 is a flowchart illustrating a method of collecting actual
data.
DETAILED DESCRIPTION
The following description is merely exemplary in nature and is
not intended to limit the present disclosure, application, or uses. It should be
understood that throughout the drawings, corresponding reference numerals
indicate like or corresponding parts and features. As used herein, the term
module refers to an application specific integrated circuit (ASIC), an electronic
circuit, a processor (shared, dedicated, or group) and memory that execute one
or more software or firmware programs, a combinational logic circuit, and/or
other suitable components that provide the described functionality.
Referring now to Figure 1, an engine system 10 includes an
engine 12 that combusts an air and fuel mixture to produce drive torque. Air is

drawn into an intake manifold 14 through a throttle 16. The throttle 16 regulates
mass air flow into the intake manifold 14. Air within the intake manifold 14 is
distributed into cylinders 18. Although four cylinders 18 are illustrated, it is
appreciated that the engine can have a plurality of cylinders including, but not
limited to, 2, 3, 5, 6, 8, 10, 12 and 16 cylinders. It is also appreciated that the
cylinders may be configured in an inline configuration (as shown) or v-shaped
configuration.
A fuel injector (not shown) injects fuel that is combined with the
air as it is drawn into the cylinder 18 through an intake port. An intake valve 22
selectively opens and closes to enable the air/fuel mixture to enter the cylinder
18. The intake valve position is regulated by an intake camshaft 24. A piston
(not shown) compresses the air/fuel mixture within the cylinder 18. A spark plug
26 initiates combustion of the air/fuel mixture, driving the piston in the cylinder
18. The piston drives a crankshaft (not shown) to produce drive torque.
Combustion exhaust within the cylinder 18 is forced out through an exhaust
manifold 28 when an exhaust valve 30 is in an open position. The exhaust valve
position is regulated by an exhaust camshaft 32. The exhaust is treated in an
exhaust system. Although single intake and exhaust valves 22,30 are illustrated,
it can be appreciated that the engine 12 can include multiple intake and exhaust
valves 22,30 per cylinder 18.
The exhaust camshaft 32 and the intake camshaft 24 are
coupled to the crankshaft (not shown) via sprockets and a timing chain (not
shown). The engine system 10 outputs a crankshaft signal 34 to a control

module 40. Based on the crankshaft signal, the control module determines an
engine speed in revolutions per minute (RPM). The crankshaft signal 34 is
generated by sensing the rotation of a wheel 36 coupled to the crankshaft. The
wheel 36 includes a plurality of equidistantly spaced teeth. A wheel sensor 38
senses the teeth of the wheel and generates the crankshaft signal 34 in a
periodic form. The control module 40 decodes the crankshaft signal 34 to a
specific tooth number of the wheel 36. Crankshaft position is determined from
the decoded tooth number of the wheel 36. Engine speed is determined from the
amount of time it takes for one tooth to complete a rotation.
More specifically, an exemplary wheel applied to an eight
cylinder v-shaped engine is shown in Figure 2. Fifty-eight teeth are spaced
equidistant along the outer circumference of the wheel 36. A gap 50 between
two of the fifty-eight teeth serves as a rotational reference point for the sensor 38.
More specifically, the gap 50 can be associated with a rotational position of the
crankshaft relative to a position of a piston within a cylinder. For example, the
low to high transition 52 within the gap 50 can indicate that a particular piston is
at top dead center (TDC) within the respected cylinder.
Each tooth corresponds to six degrees of rotation of the
crankshaft. Reference periods 54-60 are created for predefined reference angles
(0) with respect to three hundred and sixty degrees of the wheel 36. The number
of reference periods 54-60 in a single rotation can be determined by dividing the
number of cylinders in the engine by two. As shown in Figure 2, four reference
periods of ninety degrees are created for an eight cylinder engine. The reference

periods are marked by reference teeth 62-68. An actual period (tAcTUAL)
corresponding to a specific reference period can be determined by monitoring the
time at which the crankshaft and thus the wheei rotates through the reference
angle (0).
In an ideal scenario, the crankshaft signal would experience no
disturbances. Each period under ideal conditions (tIDEAL) would be identical.
Therefore, engine speed throughout the complete rotation would remain
constant. However, disturbances in the crankshaft signal can cause faulty times.
Various conditions can cause disturbances in the crankshaft signal. For
example, a flawed tooth as shown at 70 typically causes a corresponding faulty
period that deviates from an ideal period. The reference angles near the flawed
tooth are adjusted as shown at 72 and 74 based on the flaw. Accordingly,
engine speed computations based on the flawed times are inaccurate. By
identifying and correcting the flawed times, a more accurate engine speed value
can be achieved. It is appreciated that the crankshaft signal disturbance
compensation method of the present disclosure is applicable to compensate the
crankshaft signal for various types of disturbances.
The control module corrects a faulty period by learning the error
(tERROR) between the ideal period (tIDEAL) and the actual period (tAcTUAL)- As
stated earlier, the ideal period (tIDEAL) is a period over which the crankshaft would
rotate a given angle (8) without experiencing any disturbances. The ideal period
(tIDEAL) is based on an average of actual periods (tAvG_ACTUAL), an average angular
velocity (VAVERGE), and an average angular acceleration (aAvERGE)- The error

the signal. A compensated crankshaft signal 94 is output by the compensation
module 84 to be used by other sub-modules within the control module 40.
Referring now to Figure 4, a method of compensating for
disturbances in the crank signal is shown. The method may be run at any time
during engine operation. In various embodiments, the method may be
specifically run after the engine speed is brought to a particular RPM and fuel cut
off takes place. This removes fuel disturbances. In this case, the method is run
while the engine is decelerating. In various embodiments, the method may be
specifically run during engine steady state operation.
In Figure 4, control collects actual data for each reference angle
at 100. In various embodiments, as shown in Figure 4, control collects the actual
data for a predetermined number (k) of reference periods. The selected
reference periods are centered around a compression event. The compression
event includes two full rotations of the crankshaft. Thus, the predetermined
number (k) for the example provided in Figure 2 would be eight. In Figure 5,
control determines if the cylinder is starting a compression event at 200. If the
compression event has not begun, control loops back and continues to monitor
the cylinder events at 200. If the cylinder is starting the compression event at
200, control initializes an index variable (x) at 210. If the index variable (x) is not
equal to the predetermined number of reference angles (k) at 220, control
collects the actual period (TACTUAL) for the reference angle (x) at 230.
Control computes an actual angular velocity (VACTUAL) for the
reference period (x) at 240 based on the following equation:

(TERROR) is then used to determine a correction factor (tCORRECTION) which is then
applied to the faulty period.
Referring now to Figure 3, a dataflow diagram illustrates various
embodiments of a crankshaft signal disturbance compensation system that may
be embedded within the control module 40. Various embodiments of crankshaft
signal disturbance compensation systems according to the present disclosure
may include any number of sub-modules embedded within the control module
40. The sub-modules shown may be combined and/or further partitioned to
similarly compensate for disturbances in the crankshaft signal.
In various embodiments, the control module 40 of Figure 3
includes an error module 80, a correction factor module 82, and a compensation
module 84. The error module 80 receives as input the crankshaft signal 34.
From the crankshaft signal 34, the error module 80 computes one or more actual
periods 88. From the actual periods 88, an ideal period is determined. For each
actual period 88, the error module 80 outputs an error 90 based on a difference
between the actual period 88 and the ideal period. The correction factor module
82 receives as input the errors 90 and the actual periods 88. Based on each
error 90 a correction factor is determined for each actual period 88. The
correction factor 92 can be stored in a datastore (not shown) of the control
module 40. The compensation module 84 receives as input the correction
factors 92 and the actual periods 88. For each actual period 88, the correction
factor 92 is applied to the actual period 88 to compensate for the disturbance in


At 250, control computes an actual angular acceleration (aAcTUAL.) for the
reference period (x) based on the following equation:

Control increments the index variable (x) at 260. Control loops back and
continues to collect the actual data for each reference period (x) within the
compression event.
Referring back to Figure 4, control computes averages of the
actual data at 110. An average period (t.AVG_ACTUAL) of the number (k) of actual
periods (tAcTUAL) is computed based on the following equation;

An average angular velocity (VAVERAGE) of the predetermined number (k) of
reference periods of actual velocities (VACTUAL) can be computed according to the
following equation:

An average angular acceleration (aAVERAGE) of the predetermined number (k) of
reference periods of actual angular accelerations (aAcTUAL) is computed
according to the following equation:

As can be appreciated, in various embodiments to minimize computational error
due to noise in the signal, the average angular acceleration (aAVERAGE) can be

computed based on angular acceleration (aAcTUAL)- Where the angular
acceleration (aAcTUAL) is computed based on average velocity (VAVERAGE)-
At 120, control determines the ideal period (TIDEAL) based on the
angular velocity (v) and the angular acceleration (a) and provided the position
equation:

Substituting the above computed values into the position equation yields:

Where tINITIAL and V!NITIAL are equal to the initial measured period tAcTUAL(0) and
the initial computed angular velocity VACTUAL(0) respectively. Note that the
angular velocity and the angular acceleration can be assumed to be constant for
each reference angle (x) of the total reference angles (k) to attain an ideal
representation of engine behavior. Therefore the average angular velocity
(VAVERAGE) and/or the average angular acceleration (aAVERAGE) can be used in
equation (7). The average period (taVerage) is determined by computing an
average of successive samples of t shown as:


To reduce computational throughput, the above referenced
mathematical computation equations (7) and (8) are combined to give (TDEAL).
and can be simplified as:

Where the coefficients (A) and (B) are predetermined values based on the
predetermined number of reference periods (k). Fore example, the value of the
coefficient (A) can be predetermined based on the following equation:

The value of the coefficient (B) can be predetermined based on the following
equation:

This pre-computation can be implemented as an alternative to equations (7) and
(8).
At 130, a correction factor ^CORRECTION) is determined based on
the error in each reference period (x). The error TERROR) is defined as the
difference between the ideal period (tIDEAL) and the actual period (tAcTUAL):

The correction factor for each reference period is determined by the following
equation:


At 140, control stores each correction factor (tCORRECTION) in
memory. In various embodiments, the correction factor (tCORRECTION) is stored in
a two dimensional lookup table with engine speed and cylinder ID as the indices.
The stored correction factors can be later retrieved to correct the faulty period by
multiplying the faulty period by the correction factor.
Those skilled in the art can now appreciate from the foregoing
description that the broad teachings of the present disclosure can be
implemented in a variety of forms. Therefore, while this disclosure has been
described in connection with particular examples thereof, the true scope of the
disclosure should not be so limited since other modifications will become
apparent to the skilled practitioner upon a study of the drawings, specification,
and the following claims.

WE CLAIM
1. An engine system that compensates for disturbances in a crankshaft signal,
comprising:
an error module (80) that computes an error (90) between an ideal period
(tIDEAL) and an actual period (tACTuAL) of a crankshaft signal (34);
a correction factor module (82) that determines a correction factor (92)
based on the error (90); and
a compensation module (84) that applies the correction factor (92) to the
actual period (tACTUAL) of the crankshaft signal (34),
wherein the error module (84) computes the ideal period (tIDEAL) from a
crankshaft position and engine speed relationship;
wherein the error module (84) determines an average period (tAVERAGE) and
an average angular acceleration (tAVERAGE) for K number of reference
periods; and
wherein the ideal period (tACTUAL) is computed from an initial angular
velocity (VINITIAL), the average period (tAVERAGE), and the average angular
acceleration (tAVERAGE).
2. The system as claimed in claim 1 wherein the correction factor module
determines the correction factor (tCORRECTION) based on the error (tERROR), the
actual period (tACTUAL), and the following equation:


3. The system as claimed in claim 1 wherein the correction factor module
stores the correction factor in a lookup table accessed by engine speed and
cylinder identification.
4. The system as claimed in claim 1 wherein the error module computes the
ideal period (tIDEAL) based on two coefficients (A and B), the average period
(tAVERAGE), the initial angular velocity (VINITIAL), and the average angular
acceleration (tAVERAGE) and the following equation:
tlDEAL=tAVERAGE-A*ViNrnAL~B*aAVERAGE.
5. The system as claimed in claim 4 wherein the coefficient A is predetermined
based on the number of reference periods K and the following equation:

6. The system as claimed in claim 4 wherein the coefficient B is predetermined
based on a the number of reference periods K and the following equation:

7. A method of compensating for disturbances in a crankshaft signal in an
engine system as claimed in claim 1, the method comprising the steps of:
determining an actual period (tACTUAL), an angular velocity (VACTUAL)„ and an
angular acceleration (aACTUAL), for K reference periods from a crankshaft
position signal (34);

computing an ideal period (TIDEAL) of rotation based on the actual period
(TACTUAL)/ the angular velocity (v), and the angular acceleration (tACTUAL) for
the K reference periods;
generating an error term (TERROR) for each of the K reference periods based
on the ideal period (tIDEAL) and the corresponding actual period (tACTUAL);
computing a correction factor (tcoRRECTION) for each of the K reference
periods based on the error term (tERROR); and
applying the correction factor (tcoRRECTION) based on the error term (tERROR)
of the corresponding actual (TACTUAL) period to compensate for disturbances
in the crankshaft signal (34).
8. The method as claimed in claim 7 comprising:
computing an average period and an average angular acceleration for the K
reference periods; and
computing the ideal period of rotation based on the average period, an
angular velocity of an initial reference period of the K reference periods, the
average angular acceleration, and two predetermined coefficients (A and
B).
9. The method as claimed in claim 7, comprising generating the error term
(tERROR) for each (x) of the K reference periods based on the ideal period
(TDEAL), the actual period (tACTUAL), and the following equation:
tERROR(x)=tIDEAL_tACTUAL(x).

10. The method as claimed in claim 7, comprising computing the ideal period of
rotation based on an average of computed periods wherein a period is
computed for each of the K reference periods based on an actual period of
an initial reference period of the K reference periods, an angular velocity of
an initial reference period of the K reference periods, and an average
angular acceleration.
11. The method as claimed in claim 7, comprising generating a crankshaft
signal from a sensor sensing a rotational position of a wheel coupled to a
crankshaft.



ABSTRACT


TITLE: "AN ENGINE SYSTEM AND A METHOD OF COMPENSATING FOR
DISTURBANCES IN A CRANKSHAFT SIGNAL"
The invention relates to an engine system that compensates for disturbances in a
crankshaft signal, comprising an error module that computes an error between
an ideal period and an actual period of a crankshaft signal; a correction factor
module that determines a correction factor based on the error; and a
compensation module that applies the correction factor to the actual period of
the crankshaft signal, wherein the error module computes the ideal period from
a position equation, wherein the error module determines an average period and
an average angular acceleration for K number of reference periods, and wherein
the ideal period is computed from an initial angular velocity, the average period,
and the average angular acceleration.

Documents:

01219-kol-2007-abstract.pdf

01219-kol-2007-assignment.pdf

01219-kol-2007-claims.pdf

01219-kol-2007-correspondence others 1.1.pdf

01219-kol-2007-correspondence others 1.2.pdf

01219-kol-2007-correspondence others 1.3.pdf

01219-kol-2007-correspondence others.pdf

01219-kol-2007-description complete.pdf

01219-kol-2007-drawings.pdf

01219-kol-2007-form 1.pdf

01219-kol-2007-form 18.pdf

01219-kol-2007-form 2.pdf

01219-kol-2007-form 3.pdf

01219-kol-2007-form 5.pdf

01219-kol-2007-priority document.pdf

1219-KOL-2007-(05-11-213)-CLAIMS.pdf

1219-KOL-2007-(05-11-213)-CORRESPONDENCE.pdf

1219-KOL-2007-(10-01-2013)-ABSTRACT.pdf

1219-KOL-2007-(10-01-2013)-CLAIMS.pdf

1219-KOL-2007-(10-01-2013)-CORRESPONDENCE.pdf

1219-KOL-2007-(15-05-2012)-CORRESPONDENCE.pdf

1219-KOL-2007-(15-05-2012)-FORM-1.pdf

1219-KOL-2007-(15-05-2012)-PA-CERTIFIED COPIES.pdf

1219-KOL-2007-(15-05-2012)-PETITION UNDER RULE 137.pdf

1219-KOL-2007-(16-04-2013)-CORRESPONDENCE.pdf

1219-KOL-2007-(16-04-2013)-FORM 3.pdf

1219-KOL-2007-(16-04-2013)-OTHERS.pdf

1219-KOL-2007-(16-04-2013)-PETITION UNDER RULE 137.pdf

1219-KOL-2007-(23-05-2012)-ABSTRACT.pdf

1219-KOL-2007-(23-05-2012)-AMANDED CLAIMS.pdf

1219-KOL-2007-(23-05-2012)-DESCRIPTION (COMPLETE).pdf

1219-KOL-2007-(23-05-2012)-DRAWINGS.pdf

1219-KOL-2007-(23-05-2012)-EXAMINATION REPORT REPLY RECIEVED.pdf

1219-KOL-2007-(23-05-2012)-FORM-1.pdf

1219-KOL-2007-(23-05-2012)-FORM-2.pdf

1219-KOL-2007-(23-05-2012)-FORM-3.pdf

1219-KOL-2007-(23-05-2012)-FORM-5.pdf

1219-KOL-2007-(23-05-2012)-OTHERS.pdf

1219-KOL-2007-CORRESPONDENCE 1.1.pdf

1219-KOL-2007-CORRESPONDENCE OTHERS 1.4.pdf

1219-KOL-2007-FORM 26.pdf

1219-KOL-2007-GRANTED-ABSTRACT.pdf

1219-KOL-2007-GRANTED-CLAIMS.pdf

1219-KOL-2007-GRANTED-DESCRIPTION (COMPLETE).pdf

1219-KOL-2007-GRANTED-FORM 2.pdf

1219-KOL-2007-GRANTED-SPECIFICATION-COMPLETE.pdf

abstract-01219-kol-2007.jpg


Patent Number 258074
Indian Patent Application Number 1219/KOL/2007
PG Journal Number 49/2013
Publication Date 06-Dec-2013
Grant Date 29-Nov-2013
Date of Filing 31-Aug-2007
Name of Patentee GM GLOBAL TECHNOLOGY OPERATIONS, INC.
Applicant Address 300 GM RENAISSANCE CENTER, DETROIT, MICHIGAN
Inventors:
# Inventor's Name Inventor's Address
1 DAVID S. MATHEWS 4462 LILY LANE, HOWELL, MICHIGA 48843
2 DAVID L. ST. PIERRE 1011 KILLDEER DRIVE, MASON, MICHIGAN 48854
3 YONG XU 1211 NORTH BAY DRIVE, ANN ARBOR, MICHIGAN 48103
4 RONALD J. KUBANI 2371 FOXFIELD LANE RJK HIGHLAND, MICHIGAN 48356
5 TAMEEM K. ASSAF 486 VILLAGE LANE, MILFORD, MICHIGAN 48381
PCT International Classification Number F02M7/00; G06F19/00
PCT International Application Number N/A
PCT International Filing date
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 11/542672 2006-10-03 U.S.A.