IP Library Granted Patent US 6,847,882
Granted Patent B2
US 6,847,882 · App. 10/438,640 · Granted Jan 25, 2005

Misfire detection system and method of median filtering

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,847,882
App. No.
10/438,640
Granted
Jan 25, 2005
Kind
B2
Abstract

A processor having an embedded median filter routine, a method of median filtering using a vehicle's CPU, and a misfire detection system for an internal combustion engine with crankshaft acceleration detection means for determining crankshaft acceleration values. In general, the processor is configured to receive new acceleration values and includes a data structure with a data array containing a predetermined number of data fields storing acceleration values in magnitude order. The embedded median filtering routine is configured to identify an oldest in time acceleration value, identify a deletion position in the data array for the oldest in time acceleration value, identify an insertion position in the data array, move selected acceleration values in the data array to vacate the insertion position, insert the new acceleration value in the insertion position, and determine the median value of the acceleration values in the data array.

Claims (42)

1. A misfire detection system for an internal combustion engine having a crankshaft, said system comprising:

crankshaft acceleration detection means for determining crankshaft acceleration values;

a processor communicating with said crankshaft acceleration detection means to receive a new acceleration value, said processor having a data structure with a data array containing a predetermined number of data fields storing acceleration values in magnitude order, said processor having an embedded median filtering routine configured to

identify an oldest in time acceleration value,

identify a deletion position in the data array for the oldest in time acceleration value,

identify an insertion position in the data array,

move selected acceleration values in the data array to vacate the insertion position,

insert the new acceleration value in the insertion position, and

determine the median value of the acceleration values in the data array.

2. The misfire detection system of claim 1 wherein said processor further includes a misfire routine and a misfire monitor.

3. The misfire detection system of claim 1 wherein said data structure includes first and second data arrays, said second data array comprising said data array containing the predetermined number of data fields storing the acceleration values in magnitude order, said first data array containing the same predetermined number of data fields and storing the acceleration values in chronological order, and wherein said median filtering routine identifies the deletion position for the oldest in time acceleration value in the second data array by retrieving the oldest in time acceleration value from the first data array.

4. The misfire detection system of claim 3 wherein the processor identifies the deletion position for the oldest in time acceleration value in the second data array by performing a binary search of the data entries in the second data array.

5. The misfire detection system of claim 1 wherein said median filter routine simultaneously moves two of the selected acceleration values.

6. The misfire detection system of claim 1 wherein said processor receives new acceleration values from said crankshaft acceleration detection means at a high data rate.

7. The misfire detection system of claim 1 wherein the selected acceleration values include the acceleration value in the insertion position and all acceleration values between the insertion position and the deletion position.

8. A processor having an embedded median filter routine configured to determine the median acceleration value of a crankshaft in an internal combustion engine, said processor comprising:

a data structure with a first data array chronologically listing a plurality of crankshaft acceleration values and a second data array containing a list of said plurality of crankshaft acceleration values sorted by acceleration value magnitude;

a median filter routine embedded on said processor, said median filter routine communicating with said first and second data arrays and configured to receive new acceleration values and, upon receipt of each new acceleration value, to

retrieve the oldest in time acceleration value from the first data array,

identify a deletion position in the second data array for the oldest in time acceleration value,

identify an insertion position for the new acceleration value in the second data array,

move selected acceleration values in the second data array to vacate the insertion position,

insert the new acceleration value in the insertion position, and

determine the median value of the acceleration values in the second data array.

9. The misfire detection system of claim 8 wherein the median filter routine identifies the deletion position in the second data array for the oldest in time acceleration value by performing a binary search of the data entries in the second data array.

10. The misfire detection system of claim 8 wherein said median filter routine simultaneously moves two of the selected acceleration values.

11. The misfire detection system of claim 8 wherein said median filter routine receives new acceleration values at a high data rate.

12. The misfire detection system of claim 8 wherein said median filter routine receives new acceleration values at a low data rate.

13. A method of median filtering using a processor communicating with a data array containing a predetermined number of data fields storing data entries in magnitude order, said method comprising:

receiving a new data entry;

identifying an oldest in time data entry in the data array and a deletion position data field for the oldest in time data entry;

identifying an insertion position data field for the new data entry in the data array;

moving selected data entries in the data array to vacate the insertion position;

inserting the new data entry in the insertion position; and

identifying the median value of the data entries in the data array.

14. The method of claim 13 wherein the step of determining the insertion position for the new data entry in the data array includes performing a binary search of the data entries in the data array.

15. The method of claim 13 wherein the processor includes first and second data arrays, said second data array comprising said data array containing the predetermined number of data fields storing the data entries in magnitude order, said first data array containing the same predetermined number of data fields and storing the data entries in chronological order, and wherein the step of identifying a deletion position for the oldest in time data entry in the second data array includes retrieving the oldest in time data entry from the first data array.

16. The method of claim 15 wherein the step of identifying a deletion position for the oldest in time data entry in the second data array further includes performing a binary search of the data entries in the second data array.

17. The method of claim 13 wherein the step of moving the data entries includes simultaneously moving two data entries at a time.

18. The method of claim 13 wherein said processor receives new data entries at a high data rate.

19. The method of claim 13 wherein said processor receives new data entries at a low data rate.

20. The method of claim 13 further including calculating a median filter value by subtracting the identified median value of the data entries in the data array from a median value of a chronological listing of the acceleration values, and outputting the median filter value to a misfire monitor.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2017
From: GODO KAISHA IP BRIDGE
To: MOBILE AUTOMOTIVE TECHNOLOGIES, LLC
Reel/Frame 043463/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2017
From: MOBILE AUTOMOTIVE TECHNOLOGIES, LLC
To: MICHIGAN MOTOR TECHNOLOGIES LLC
Reel/Frame 043463/0881 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2017
From: GODO KAISHA IP BRIDGE
To: MOBILE AUTOMOTIVE TECHNOLOGIES, LLC
Reel/Frame 043843/0821 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2015
From: VISTEON GLOBAL TECHNOLOGIES INC.
To: GODO KAISHA IP BRIDGE 1
Reel/Frame 035421/0739 →
RELEASE OF SECURITY INTEREST IN SPECIFIED PATENTS Recorded Feb 2, 2015
From: CITIBANK, N.A.
To: VISTEON CORPORATION; VISTEON GLOBAL TECHNOLOGIES
Reel/Frame 034874/0025 →
RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Jun 9, 2014
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: VISTEON CORPORATION; VC AVIATION SERVICES, LLC; VISTEON ELECTRONICS CORPORATION; VISTEON GLOBAL TECHNOLOGIES, INC.; VISTEON INTERNATIONAL HOLDINGS, INC.; VISTEON GLOBAL TREASURY, INC.; VISTEON EUROPEAN HOLDINGS, INC.; VISTEON SYSTEMS, LLC; VISTEON INTERNATIONAL BUSINESS DEVELOPMENT, INC.
Reel/Frame 033107/0717 →
SECURITY INTEREST Recorded Apr 18, 2014
From: VISTEON CORPORATION, AS GRANTOR; VISTEON GLOBAL TECHNOLOGIES, INC., AS GRANTOR
To: CITIBANK., N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 032713/0065 →
RELEASE BY SECURED PARTY AGAINST SECURITY INTEREST IN PATENTS ON REEL 025241 FRAME 0317 Recorded Apr 26, 2011
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: VISTEON CORPORATION; VC AVIATION SERVICES, LLC; VISTEON ELECTRONICS CORPORATION; VISTEON GLOBAL TECHNOLOGIES, INC.; VISTEON INTERNATIONAL HOLDINGS, INC.; VISTEON GLOBAL TREASURY, INC.; VISTEON EUROPEAN HOLDING, INC.; VISTEON SYSTEMS, LLC; VISTEON INTERNATIONAL BUSINESS DEVELOPMENT, INC.
Reel/Frame 026178/0412 →
SECURITY AGREEMENT (REVOLVER) Recorded Oct 19, 2010
From: VISTEON CORPORATION; VC AVIATION SERVICES, LLC; VISTEON ELECTRONICS CORPORATION; VISTEON GLOBAL TECHNOLOGIES, INC.; VISTEON INTERNATIONAL HOLDINGS, INC.; VISTEON GLOBAL TREASURY, INC.; VISTEON EUROPEAN HOLDINGS, INC.; VISTEON SYSTEMS, LLC; VISTEON INTERNATIONAL BUSINESS DEVELOPMENT, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS AGENT
Reel/Frame 025238/0298 →
SECURITY AGREEMENT Recorded Oct 19, 2010
From: VISTEON CORPORATION; VC AVIATION SERVICES, LLC; VISTEON ELECTRONICS CORPORATION; VISTEON GLOBAL TECHNOLOGIES, INC.; VISTEON INTERNATIONAL HOLDINGS, INC.; VISTEON GLOBAL TREASURY, INC.; VISTEON EUROPEAN HOLDING, INC.; VISTEON SYSTEMS, LLC; VISTEON INTERNATIONAL BUSINESS DEVELOPMENT, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS AGENT
Reel/Frame 025241/0317 →