KR100578023B1 - 엔진실화 검출시스템 및 엔진실화 검출방법 - Google Patents

엔진실화 검출시스템 및 엔진실화 검출방법 Download PDF

Info

Publication number
KR100578023B1
KR100578023B1 KR1019990066849A KR19990066849A KR100578023B1 KR 100578023 B1 KR100578023 B1 KR 100578023B1 KR 1019990066849 A KR1019990066849 A KR 1019990066849A KR 19990066849 A KR19990066849 A KR 19990066849A KR 100578023 B1 KR100578023 B1 KR 100578023B1
Authority
KR
South Korea
Prior art keywords
cylinder
value
sum
misfire
buffer
Prior art date
Application number
KR1019990066849A
Other languages
English (en)
Other versions
KR20010065837A (ko
Inventor
어정수
Original Assignee
현대자동차주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현대자동차주식회사 filed Critical 현대자동차주식회사
Priority to KR1019990066849A priority Critical patent/KR100578023B1/ko
Publication of KR20010065837A publication Critical patent/KR20010065837A/ko
Application granted granted Critical
Publication of KR100578023B1 publication Critical patent/KR100578023B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01LMEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
    • G01L23/00Devices or apparatus for measuring or indicating or recording rapid changes, such as oscillations, in the pressure of steam, gas, or liquid; Indicators for determining work or energy of steam, internal-combustion, or other fluid-pressure engines from the condition of the working fluid
    • G01L23/22Devices or apparatus for measuring or indicating or recording rapid changes, such as oscillations, in the pressure of steam, gas, or liquid; Indicators for determining work or energy of steam, internal-combustion, or other fluid-pressure engines from the condition of the working fluid for detecting or indicating knocks in internal-combustion engines; Units comprising pressure-sensitive members combined with ignitors for firing internal-combustion engines
    • G01L23/221Devices or apparatus for measuring or indicating or recording rapid changes, such as oscillations, in the pressure of steam, gas, or liquid; Indicators for determining work or energy of steam, internal-combustion, or other fluid-pressure engines from the condition of the working fluid for detecting or indicating knocks in internal-combustion engines; Units comprising pressure-sensitive members combined with ignitors for firing internal-combustion engines for detecting or indicating knocks in internal combustion engines
    • G01L23/225Devices or apparatus for measuring or indicating or recording rapid changes, such as oscillations, in the pressure of steam, gas, or liquid; Indicators for determining work or energy of steam, internal-combustion, or other fluid-pressure engines from the condition of the working fluid for detecting or indicating knocks in internal-combustion engines; Units comprising pressure-sensitive members combined with ignitors for firing internal-combustion engines for detecting or indicating knocks in internal combustion engines circuit arrangements therefor
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01MTESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
    • G01M15/00Testing of engines
    • G01M15/04Testing internal-combustion engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M1/00Analogue/digital conversion; Digital/analogue conversion
    • H03M1/12Analogue/digital converters

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Combustion & Propulsion (AREA)
  • Chemical & Material Sciences (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

메모리의 소모와 루틴처리시간이 짧으면서도 다기통 실화 검출까지 할 수 있는 간단한 실화검출방법을 제공하기 위한 것으로,
캠축과 연결되어 있는 크랭크축 위치 타겟 휠의 치와 치바닥의 거리차로 인하여 발생하는 아날로그 신호를 마그네틱 픽업으로 검출하면, 상기 아날로그 신호를 디지탈 회로에 의하여 디지탈 신호로 변환한다.
그리고, 상기 디지탈 신호의 '하이'값의 개수와 그 주기를 타이머/카운터부에서 검출하여 전자제어유닛에서 크랭크축 위치 타겟 휠의 각가속도를 구한 후, 이 각가속도를 기본 함수를 월쉬함수로 이산 퓨리에 변환한다.
그리고, 이산 퓨리에 변환의 결과를 무빙 윈도우 방식으로 버퍼에 저장하고, 상기 버퍼에 저장된 결과를 이용하여 주파수성분의 진폭크기를 구한 다음, 상기 진폭의 크기가 소정 기준치보다 큰 횟수를 파악함으로써 기통판별까지 완벽하게 수행가능한 실화판정방법을 제시함으로써 대기오염 배출가스를 줄일 수 있을 뿐만 아니라 OBD Ⅱ 규정을 만족시킬 수 있다.
엔진실화,주파수분석,월쉬함수,삼각함수,무빙윈도우,버퍼

Description

엔진실화 검출시스템 및 엔진실화 검출방법{A System and A Way of Detecting Misfire}
도1은 엔진실화 검출시스템의 구성도이다.
도2는 엔진실화 검출방법을 나타내는 순서도이다.
도3은 정상적인 엔진 1사이클당 엔진주기신호이다.
도4는 엔진실화가 발생시, 엔진 1사이클당 엔진주기신호이다.
도5는 삼각함수의 월쉬함수 그래프이다.
도6은 버퍼에 저장되는 무빙 윈도우방식이다.
도7은 어느 한 기통에서 1회의 실화가 발생할 경우 WDFT의 변화도이다.
도8은 인접하거나 대향한 두 기통에서 실화가 1회 발생한 경우 WDFT 변화도이다.
도9는 하나의 기통에서 연속 실화가 발생할 경우 WDFT의 변화도이다.
도10은 인접하거나 대향된 두 기통에서 연속 실화가 발생할 경우 WDFT의 변화도이다.
본 발명은 엔진 실린더에서 실화(misfire)가 발생할 경우 전자제어유닛(ECU : Electric Control Unit)에서 실화발생여부를 파악하기 위한 엔진실화 검출 시스템과 검출방법에 관한 것이다.
자동차 산업의 발달로 발생하는 대기오염을 막기 위하여 오랜 기간을 두고 배출가스 규제가 강화되어 왔고, 이에 대응하기 위하여 엔진 전자제어기술의 개발이 촉진되어 왔다.
더욱이, 근래에 와서 엔진 전자제어기술은 고장판단에 필요한 정보를 차량에 장착된 컴퓨터가 스스로 식별하고 경고하도록 의무화하는 OBD Ⅱ(On Board Diagnosis Ⅱ) 규정을 적용 받게 됨에 따라 실화발생으로 인한 배출가스의 증가와 촉매의 손상 가능성을 감지하는 시스템과 방법이 필요하게 되었다.
이에, 엔진 실린더에서 실화가 발생했을 때, 실화의 발생여부와 실화가 발생한 실린더를 파악하고 엔진의 상태를 정상으로 복구하는 엔진실화 검출시스템과 검출방법이 요구되었다.
종래의 엔진실화 검출시스템과 검출방법에서는, 피스톤이 실린더의 상사점(TDC : top dead center)과 하사점(BDC : bottom dead center)사이에서 왕복운동하는 작동행중 중에 실린더에 실화가 발생하는 경우, 크랭크 축의 토오크가 감소로 인해 크랭크 축의 회전주기가 증가하기 때문에 이 회전 주기를 측정하여 실화여부를 측정하였다.
즉, 상기 크랭크 축의 회전주기를 이용하여 소정의 크랭크 축 회전각도마다 감지되는 엔진회전수 또는 엔진 회전주기 신호의 변도률을 계산하고, 이 변동률이 소정 기준치를 넘게 되면 실화가 발생하였다고 판단한다.
이 때, 상기 엔진 회전주기 신호의 변돌률은 일반적으로 금회 계측치와 전회 계측치의 차이로 표시되거나, 금회 게측치와 이동평균치의 차이로 표시되는데, 이 방법은 결국 엔진 회전주기 신호를 시간에 대한 함수로 나타내는 것이므로 고속 회전시에는 변동률의 분석이 어려워지는 문제점이 있다.
상기와 같은 어려움을 극복하기 위하여 엔진주기신호를 시간의 함수가 아닌 이산 퓨리에 변환(DFT : Descrete Fourier Tramsform)에 의한 주파수 성분의 크기와 위상각으로 해석하는 방식이 검토되어 왔다.
그러나, 이 방법을 채택하기 위해서는 미리 계산된 사인, 코사인 함수 테이블을 엔진제어장치 내의 메모리에 설정하여 저장하여야 하며, 주파수 성분 분석을 위하여 감지되는 엔진회전수 즉, 데이터의 개수만큼의 곱셈과, 신호의 크기 계산을 위한 곱셈, 위상판별을 위한 계산을 위한 처리 루틴이 필요하게 되어 메모리의 소모와 루틴 처리 시간이 길어지는 문제점이 있다.
따라서, 본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로, 메모리의 소모와 루틴처리시간이 짧고, 다기통 실화 검출을 정확하게 할 수 있는 엔진실화 검출시스템과 검출방법을 제공하기 위한 것이다.
상기와 같은 목적을 이루기 위하여 본 발명에서는 엔진에서 실화가 발생할 때, 캠축과 연결된 크랭크축 위치 타겟 휠의 각가속도를 주파수 분석을 하기 위한 이산 퓨리에 변환에서의 기본함수(basis function)를 삼각함수(trigometric function)에서 월쉬함수(Walsh function)로 변환함으로써 단순한 가감산 계산만으로 실화발생여부를 판정하는 것을 특징으로 한다.
또한, 상기 각가속도의 이산 퓨리에 변환된 결과를 매 일정 간격마다 무빙 윈도우 방식에 의하여 버퍼에 저장하고, 일정 간격마다 버퍼에 저장된 결과를 이용하여 각가속도 신호의 소정 주파수 성분의 진폭크기를 계산하여 일정 기준치를 넘는 횟수를 파악함으로써 단기통 및 다기통 실화에 대한 기통판별까지 완벽하게 수행가능한 엔진실화 검출시스템과 검출방법을 제공함에 그 특징이 있다.
보다 구체적으로는, 정상적인 피스톤의 작동행정은 크랭크축이 일정한 범위의 각가속도를 갖게 되는데, 실린더에서 실화가 발생하면 출력 토오크가 저하되므로 각가속도 또한 일정한 범위를 초과하여 변하게 되어 크랭크축의 각가속도의 변화를 실화판정의 기준으로 쓰게 된다.
따라서, 4기통 엔진에서 1번-3번-4번-2번 기통 순으로 폭발 행정이 일어날 경우, 캠축에 연결되어 있는 엔진실화 검출시스템의 크랭크축 위치 타겟 휠의 치(齒)와 치(齒)사이의 시간을 측정하여 치주기로 환산한 후, 크랭크축 위치 타겟 휠의 각가속도를 구한다.
그런 다음, 상기 각가속도를 월쉬함수를 기본함수로 하는 이산 퓨리에 변환하면, 그 결과가 매 치주기마다 구한 크랭크축 위치 타겟 휠의 각가속도를 일정 간격마다 합한 형태로 나타나게 된다.
이 때, 일정 간격은 어느 한 기통 폭발행정을 위하여 피스톤이 실린더의 상 사점에 도달한 순간부터 다음 폭발순서의 기통이 폭발행정을 하기 위하여 피스톤이 실린더의 상사점에 도달할 때까지의 간격(이하, "상사점 간격"이라 칭함)마다 상기 각가속도의 합을 구한다.
그런데, 4기통 엔진에서 각 기통이 1회 폭발행정을 할 때, 4번의 상사점 간격이 존재하게 되고, 크랭크축 위치 타겟 휠의 치의 갯수가 a개라면 a개의 치주기가 존재하게 되며, 상기 a개의 치주기에 대한 각가속도도 이론적으로 a개 계산되어, 상사점 간격당 합산되는 각가속도의 갯수는 a/4개가 된다.
상기 각가속도의 합은 임시 저장장소인 소정 바이트 용량의 버퍼에 저장되는데, 만약 버퍼의 용량이 8바이트이고, 매 상사점 간격당 합산된 각가속도가 2바이트씩 할당된다고 할 때, 첫번째 상사점 간격의 각가속도들이 합산되어 상기 버퍼의 최하위 2바이트에 저장된다.
그 후, 두번째 상사점 간격의 각가속도들이 합산되면, 첫번째 상사점 간격의 각가속도는 밀려 이동하여 다음 2바이트에 저장되고, 두번째 상사점 간격의 각가속도들의 합은 버퍼의 최하위 2바이트에 저장된다.
이런 식으로 버퍼의 8바이트가 차게 되면, 각가속도의 소정 주파수 성분에 대한 진폭의 크기가 첫번째 상사점 간격에서 네번째 상사점 간격에 구한 각가속도의 합산을 이용하여 소정 주파수 성분의 진폭 크기가 계산된다.
이 후, 다섯번째 상사점 간격부터는 8바이트의 버퍼가 다 찬 상태이므로 첫번째 상사점 간격의 각가속도의 합은 버퍼에서 사라지게 되고, 버퍼에는 두번째 상사점 간격에서 다섯번째 상사점 간격까지의 각가속도의 합이 저장되며, 상기 버퍼 에 저장된 두번째 상사점 간격에서 다섯번째 상사점 간격까지의 각가속도의 합을 이용하여 크랭크축 위치 타겟 휠의 각가속도의 두번째 소정 주파수 성분에 대한 진폭의 크기를 구한다.
이 때, 실화가 한 기통 혹은 다기통에서 발생하게 되면, 버퍼에 저장되는 각가속도의 합은 크게 변하게 되고, 따라서 버퍼에 저장된 각가속도를 이산 퓨리에 변환하여 얻는 주파수 성분의 진폭 크기 또한 크게 변하게 된다.
그러므로, 상기 주파수 성분의 진폭 크기가 소정 기준치를 초과하게 되면 실화가 발생하였다고 판단을 하고, 상기 소정 기준치를 초과하는 횟수와 값이 나타나는 형태를 근거로 하여 실화가 발생한 기통을 판별하는 실화검출방법을 제공함에 그 특징이 있다.
이하, 상기 목적을 구체적으로 실현할 수 있는 본 발명의 바람직한 실시예를 첨부한 도면에 의거하여 상세히 설명하면 다음과 같다.
도1은 엔진실화 검출시스템을 도시한 것으로, 엔진실화 검출시스템은 캠축에 연결되어 있는 크랭크축 위치 타겟 휠(crank position target wheel)(11)과, 마그네틱 픽업(Magnetic Pick-up)(12)과, 스위칭회로(13)와, 타이머/카운터부(14)와, 소정 용량의 버퍼(buffer)를 포함하는 전자제어유닛(15)과, 크랭크 각센서(CAS : Crank Angle Sensor)(16)로 이루어진다.
상기 캠축에 연결되어 있는 크랭크축 위치 타겟 휠(11)이 회전할 때, 마그네틱 픽업(12)은 크랭크축 위치 타겟 휠(11)의 치(齒)와 치바닥의 거리변화에 따르는 아날로그 신호를 검출한다.
이 때, 스위칭회로(13)는 상기 마그네틱 픽업(12)에 의하여 검출된 아날로그 신호를 디지탈신호로 변환하여 출력한다.
타이머/카운터부(14)는 상기 스위칭회로(13)에서 출력된 디지탈신호를 입력받는데, 상기 디지탈신호의 '하이'값은 크랭크축 위치 타겟 휠(11)의 치를 나타내고, '로우'값은 크랭크축 위치 타겟 휠(11)의 치바닥을 나타내므로 크랭크축 위치 타겟 휠(11)의 치와 바로 다음 치가 나타나는 순간까지의 시간이 디지탈신호의 주기가 되고, 타이머/카운터부(14)는 디지탈신호의 주기와 '하이'값의 갯수를 구한다.
상기 디지탈 신호의 주기는 치주기로 환산되어 크랭크축의 각가속도를 구하는데 사용되며, '하이'값의 갯수는 상사점 간격을 정하는데 사용된다.
전자제어유닛(15)는 상기 타이머/카운터부(14)에서 검출된 디지탈 신호의 주기와 '하이'값의 갯수를 입력받아 엔진실화검출의 기본적인 데이터로 활용하며, 상기 데이터에 의하여 실화발생여부와 실화발생기통의 판별이 전자제어유닛(15)에서 진행된다.
이 때, 전자제어유닛(15)은 크랭크 각센서(16)와 연동하여 현재 분석하고 있는 신호가 어느 기통의 폭발행정에 의하여 발생한 신호인지를 판단하게 된다.
상기와 같이 구성되는 엔진실화 검출시스템을 통하여 엔진실화를 검출하는 방법을 도면을 참조하여 설명한다.
도2는 엔진실화 검출방법을 나타내는 순서도이다.
먼저, 엔진실화 검출이 시작되면(S10), 도1의 엔진실화 검출시스템을 이용하 여 상사점 간격 안에 있는 치주기(tooth period)마다 크랭크축 위치 타겟 휠((11)의 각가속도를 구하게 된다(S20).
상기 S20에서 구한 각가속도가 실화판정을 위한 데이터로서 적당한지에 관한 데이터 해제 조건을 만족하는지 판단하여 만족하면 S20으로 진행하고, 만족하지 않으면 다음 단계를 진행한다(S30).
그런 후에, 상기 매 치주기들의 각가속도를 매 상사점 간격마다 합산하여 전자제어유닛(15)에 내장된 소정 용량의 버퍼에 저장한 다음(S40), 상기 버퍼에 저장된 각가속도들의 합을 이용하여 엔진출력 변동에 의하여 변하는 상기 각가속도에 대한 오차를 수정하게 된다(S50).
상기 S50에서 오차수정작업이 끝나면, 매 치주기에 대한 각가속도를 기본함수를 월쉬함수로 하여 이산 퓨리에 변환의 결과식에 무빙 윈도우 방식에 따라 상기 버퍼에 저장된 각가속도의 합을 대입하여 상기 이산 퓨리에 변환의 실수부 RLLj와 허수부 IMMj 그리고 소정 주파수의 진폭의 크기 WDFTj의 값을 계산한다(S60).
상기 S60에서 계산한 WDFTj의 값과 한계값1(misthr1), 2(misthr2), 3(misthr3)을 비교하고(S70), 상기 WDFTj가 한계값1(misthr1)을 초과하는 횟수를 카운트하고, 연속 4회 미만이면 카운터를 초기화한다(S80).
상기 S80에서 한계값1(misthr1)을 초과하는 횟수가 연속 4회 이상이면, 카운터 횟수에 따라 단기통 1회실화 기통판별, 연속실화 기통판별, 2기통 1회실화 기통판별 과정 중 하나의 과정을 거치게 된다(S90).
상기와 같은 순서로 이루어지는 본 발명의 엔진실화 검출방법을 좀 더 상세히 설명하면, 엔진실화 발생판정과 엔진실화발생 기통판정의 과정이 도1의 실화검출시스템에서 시작되면(S10), 마그네틱 픽업(12)은 회전하는 크랭크축 위치 타겟 휠(11)의 치와 치바닥의 거리차로 인하여 발생하는 아날로그 신호를 검출한다.
상기 아날로그 신호는 스위칭회로(13)에 의하여 디지탈 신호로 변환되는데, 상기 디지탈 신호의 '하이'값은 크랭크축 위치 타겟 휠(11)의 치를 나타내고, '로우'값은 치바닥을 나타내게 되므로, 디지탈신호의 주기는 크랭크축 위치 타겟 휠(11)의 치와 바로 다음 치가 나타날 순간까지의 시간을 나타낸다.
상기 스위칭회로(13)에서 출력된 디지탈신호는 타이머/카운터부(14)에 입력되어 디지탈신호의 치주기(tooth period)와 '하이'값의 갯수를 구하게 되는데, 상기 치주기는 상기 디지탈 신호의 주기를 크랭크축 위치 타겟 휠(11)이 1회전할 때, 걸리는 시간으로 환산한 것이다.
이 때, '하이'값의 갯수와 치주기의 관계를 나타내는 엔진 1사이클 동안의 엔진주기신호가 도3과 도4에 도시되어 있다.
상기 도3은 4기통 엔진이 1번 기통-3번 기통-4번 기통-2번 기통의 순서로 엔진 1사이클 동안 정상적인 폭발행정을 할 때, 크랭크축 위치 타겟 휠(11)의 회전에 의하여 나타나는 치주기의 변화를 도시한 엔진주기신호이고, 도4는 4번 기통에서 실화가 발생할 경우의 치주기의 변화를 도시한 엔진주기신호이다.
상기 도3과 같이 정상적인 동작을 하는 엔진의 치주기는 일정 범위 안에서 변하고, 도4와 같이 4번 기통에서 실화가 발생하면 크랭크축의 토오크의 저하로 인 하여 치주기 또한 크게 변한다.
그리고, 도3과 도4를 주파수의 관점에서 보면 도3은 엔진1사이클당 4회의 주기최고점을 가짐으로 주파수 4에 인접하고, 실화가 발생한 도4는 최고 피크치가 1회이므로 주파수 1에 인접한다.
이 때, 실화성분이 정확히 주파수 1을 나타내지는 않지만, 실화로 인한 치주기의 증가가 엔진 1사이클당 엔진주기신호에 지배적인 영향을 끼쳐 주파수 1에 근사한다.
또한, 엔진 1사이클당 캠축에 연결되어 있는 크랭크축 위치 타겟 휠(11)은 1회전하게 되므로, 엔진 1사이클당 치 표본 인덱스(tooth sampling index)의 최대값은 도3과 도4에서 보는 바와 같이 120이므로 크랭크축 위치 타겟 휠(11)의 치의 갯수는 120개이고, 4기통 엔진에서는 상사점 간격이 4번이 존재하므로 매 상사점 간격마다 30개 정도의 치주기가 존재하게 된다.
상기 S10에서 크랭크축 위치 타겟 휠(11)의 치주기와 상사점 간격당 치주기의 갯수가 파악되면, S20에서는 매 상사점 간격의 치주기 하나하나에 대하여 크랭크축의 각가속도를 전자제어유닛(15)에서 구한다.
상기 각가속도는 각속도의 단위 시간당 변화량이므로 각가속도를 구하기 위해서는 아래의 수학식1과 같이 각속도를 먼저 구해야 한다.
Figure 111999018974762-pat00052
(ω : 각속도, T : 치주기)
상기 수학식 1과 같이 각속도가 구해지면, 아래의 수학식2와 같이 각가속도를 구할 수 있다.
Figure 111999018974762-pat00053
Figure 111999018974762-pat00054
Figure 111999018974762-pat00055
Figure 111999018974762-pat00056
( x[n] : n번째 치주기에서의 각가속도, ωj : j번째 각속도,
Tj : j번째 치주기 )
또한, 상기 수학식2에서와 같이 계산되는 각가속도는 상사점 간격을 단위로 매 치주기마다 구하여 지고, 크랭크축 위치 타겟 휠(11)의 치의 갯수가 120개라면 30개의 치주기에 대하여 각가속도가 계산된다.
상기 S20에서 각가속도를 구하면, S30에서 매 치주기마다의 각가속도가 데이터 해제 조건을 만족하는지를 판단하는데, 어떤 상사점 간격에서 각가속도에 대한 데이터를 얻지 못했다면 이 데이터는 실화판정을 위한 올바른 데이터가 아니므로 판정을 금지하게 된다.
따라서, 데이터 해제조건을 만족하면 다시 S20로 돌아가고, 데이터 해제조건을 만족하지 않으면, 다음 단계로 넘어간다.
상기 데이터 해제조건을 만족하지 않는 상사점 간격의 각가속도는 S40에서 합산되어 버퍼에 저장되는데, 상기 합산은 치주기동안의 각가속도를 주파수 분석하여 실화를 검출하기 위한 것으로, 월쉬함수를 기본함수로 하는 이산 퓨리에 변환에 의하여 도출된 계산식에 의한다.
각가속도에 대한 주파수 변환을 위하여 이산 퓨리에 변환을 사용하게 되는데 기본적인 이산 퓨리에 변환식은 아래의 수학식 3과 같다.
Figure 111999018974762-pat00057
(x[n] : n번째 치주기에서의 각가속도, X[k] : 이산 퓨리에 계수,
k : 주파수, N : 엔진 1사이클 동안의 각가속도 신호의 샘플링 갯수)
상기 수학식 3과 같이 각가속도에 대한 삼각함수를 기본함수로 하는 이산 퓨리에 변환식이 표현될 때, 실화의 성분은 상기 도4에서와 같이 주파수1에 근사하므로 실화가 발생하면 치주기가 매우 커지게 된다.
상기 실화에 의한 치주기가 커지면 각가속도 또한 커지게 되어, 각가속도를 이산 퓨리에 변환했을 때의 주파수 1에 대한 진폭의 크기 또한 커지게 되므로, 주파수1에 대한 진폭의 크기가 소정 기준치를 넘으면 실화가 일어났다고 판정할 수 있다.
이 때, 각가속도의 주파수1에 대한 이산 퓨리에 변환식은 다음의 수학식4와 같다.
Figure 111999018974762-pat00058
하지만, 상기 수학식4는 종래기술에서 본 바와 같이, 미리 계산된 사인, 코사인 함수 테이블을 전자제어유닛(15) 내의 메모리에 설정하여 저장해야 하며, 치주기 동안의 각가속도 N개 만큼의 곱셈과, 신호의 크기 계산을 위한 곱셈, 위상판별을 위한 계산을 위한 처리 루틴이 필요하게 되어 메모리의 소모와 루틴 처리 시간이 길어진다.
따라서, 간단하게 각가속도에 대한 주파수 분석을 간단하게 하기 위해서는 이산 퓨리에 변환식의 기본함수를 삼각함수에서 월쉬함수로 대체하여 퓨리에 변환을 한다.
도5는 이 월쉬함수를 도시한 것으로, 월쉬함수는 사인과 코사인 함수의 '양의 부분'을 1로하고, '음의 부분'을 -1로 표시한 것으로써, 월쉬함수가 이산 퓨리에 변환의 기본함수가 되기 위해서는 월쉬함수가 유한한 구간에서 월쉬함수들간의 상호직교성(orthogonality)을 만족해야 하며, 일반적인 함수들간의 상호직교성은 다음의 수학식5와 같다.
Figure 111999018974762-pat00059
Figure 111999018974762-pat00060
i(t), (i=1,2,3,…,m,…,n) : n차원 벡터공간의 벡터함수)
따라서, 도5와 같은 월쉬함수가 기본함수 역할을 할 수 있는지 상기 수학식5를 이용하여 다음의 수학식과 같이 알 수 있다.
Figure 111999018974762-pat00061
Figure 111999018974762-pat00062
Figure 111999018974762-pat00063
Figure 111999018974762-pat00064
그리고
Figure 111999018974762-pat00065
1 : 사인함수에 대한 월쉬함수, Ψ2 : 코사인 함수에 대한 월쉬함수)
따라서, 상기 수학식6에서와 같이 월쉬함수가 함수들의 상호직교성을 만족하므로 이산 퓨리에 변환의 기본함수로서 사용할 수 있으며, 상기 수학식 4는 다음과 같이 변환할 수 있다.
Figure 111999018974762-pat00066
Figure 111999018974762-pat00067
(WALcos : 코사인 함수에 대한 월쉬함수, WALsin : 사인함수에 대한 월쉬함수)
그런데, 상기 수학식7은 4회의 상사점 간격으로 이루어진 엔진 1사이클에 대한 치주기동안의 각가속도의 주파부 분석이므로 엔진 1사이클 동안의 각가속도의 샘플링 갯수 N을 4등분하여 다음의 수학식8과 같이 표현된다.
X[1]=RLL+jIMM 에서
Figure 111999018974762-pat00068
Figure 111999018974762-pat00069
따라서, S30에서 데이터 해제 조건을 만족하지 않는 각각의 치주기동안의 각가속도를 상기의 수학식8에서와 같이 매 상사점 간격마다 합산하여 S40에서 전자제어유닛(15)에 내장되어 있는 버퍼에 저장한다.
상기 S40에서 버퍼에 저장된 각가속도를 이용하여 S50에서는 엔진출력 변동에 의하여 변하는 상기 각가속도에 대한 오차를 수정하여 다음 S60에 반영된다.
S60에서는 각가속도에 대한 주파수 분석방식에 의하여 도출된 수학식8에 상 기 버퍼에 저장된 각가속도의 합을 대입하여 RLLj와 IMMj 그리고 WDFTj의 값을 계산하는데, 실화가 발생하게 되면 각가속도가 커지게 되므로 주파수 분석에 대한 실화성분의 크기 또한 크게 변한다.
상기 RLLj와 IMMj 그리고 WDFTj는 각각 j번째 상사점 간격에 대한 각가속도의 주파수 분석의 실수부, 허수부, 그리고 실화성분의 크기를 나타내는 것으로, 상기 수학식8에 의하여 다음의 수학식과 같이 표현된다.
Figure 111999018974762-pat00070
Figure 111999018974762-pat00071
Figure 111999018974762-pat00072
(
Figure 111999018974762-pat00073
: j번째 상사점 간격에서의 치주기 동안의 각가속도의 합,
RLLj : j번째 상사점 간격에서의 각가속도의 주파수 분석의 실수부,
IMMj : j번째 상사점 간격에 대한 각가속도의 주파수 분석의 허수부,
WDFTj : j번째 상사점 간격에서의 실화성분에 대한 진폭의 크기)
따라서, 수학식9에서의 WDFTj를 구하여 실화를 검출하는데 상기 WDFTj 의 계산은 무빙 윈도우 방식에 의하여 계산한다.
도6은 이 무빙 윈도우 방식이 적용되는 용량이 8바이트인 버퍼를 도시한 것으로 매 상사점 간격당 합산된 각가속도가 2바이트씩 할당될 때, j번째 상사점 간격의 각속도가 합산되어 상기 버퍼의 최하위 2바이트에 저장된다.
그 후, j+1번째 상사점 간격의 각가속도가 합산되면, j번째 상사점 간격의 각가속도는 밀려 이동하여 다음 2바이트에 저장되고, j+1번째 상사점 간격의 각가속도의 합은 버퍼의 최하위 2바이트에 저장되며 이런 식으로 버퍼의 8바이트가 차게 되면, WDFTj가 상기 수학식9에 의하여 계산된다.
이 후, j+5번째 상사점 간격부터는 8바이트의 버퍼가 다 찬 상태이므로 j번째 상사점 간격의 각가속도의 합은 버퍼에서 사라지게 되고, 버퍼에는 j+1번째 상사점 간격에서 j+5번째 상사점 간격까지의 각가속도의 합이 저장되며, 상기 버퍼에 저장된 j+1번째 상사점 간격에서 j+5번째 상사점 간격까지의 각가속도의 합을 이용하여 WDFTj+1를 구한다.
이 때, 실화가 힌 기통 혹은 다기통에서 발생하게 되면, 버퍼에 저장되는 각가속도의 합은 크게 변하고, 따라서 WDFTj의 값도 크게 변하여 소정 기준치를 초과하면 실화가 발생하였다고 판단한다. 또한, 상기 소정 기준치를 초과하는 횟수와 값이 나타나는 형태를 근거로 하여 실화가 발생한 기통을 판별한다.
상기 S60에서 무빙 윈도우 방식에 따라 WDFTj값을 구하면 S70에서 WDFTj값과 한계값1(misthr1), 2(misthr2), 3(misthr3)을 비교하는데, 여기서 한계값1(misthr1), 2(misthr2), 3(misthr3)은 실화가 발생한 기통을 판별하기 위한 것으로 그 크기는 한계값2(misthr2), 한계값3(misthr3), 한계값1(misthr1)순이다.
상기 S70에서 WDFTj값과 한계값1(misthr1), 2, 3을 비교하면, S80에서는 WDFTj가 한계값1(misthr1)을 초과하는 횟수를 카운트하고, 한계값1(misthr1)을 초과하는 횟수가 4회미만이면 카운터를 초기화(reset)한다.
상기 S80에서와 같이 한계값1(misthr1)을 초과하는 횟수를 카운트하여 4회가 넘으면, S90에서는 크랭크 각센서(16)와 연동하여 상기 S80의 카운터 횟수에 따라 단기통 1회실화 기통판별, 연속실화 기통판별, 2기통 1회실화 기톤판별 과정 중 하나의 과정을 거친다.
상기 S90에서 단기통 1회 실화 기통판별 과정은 WDFTj값이 한계값1( misthr1)을 초과하는 횟수가 연속 4회인지 판단하고(S91), 상기 S91에서 한계값1( misthr1)을 초과하는 횟수가 연속 4회라고 판단하면, 단기통 1회실화 기통판별과정을 실행한 다음(S92), 오류 수정 과정을 실행하여(S93), 실화검출을 종료한다(S94).
상기 S91, S92에서 한계값1(misthr1)을 초과하는 횟수가 4회일 때, 단기통 1회 실화 기통판별방법은 b번 기통의 폭발행정에 의한 j번째 상사점 간격에서의 각가속도의 합을 SUM x[n]j,b로 표시하고, 4기통 엔진에서 1번, 3번, 4번, 2번 기통순으로 폭발행정이 이루어진다고 할 때, 도1의 실화검출시스템을 통하여 매 상사점 간격당 각가속도의 합을 구하면, 버퍼에 저장되는 각가속도의 순서는 SUM x[n]j,1, SUM x[n]j+1,3, SUM x[n]j+2,4, SUM x[n]j+3,2순으로 저장되며, 수학식9에 의한 WDFTj의 값은 소정 기준치보다 작게 나타난다.
이 때, 1번 기통의 폭발행정에서 실화가 발생되었다면, 버퍼에 저장된 각가속도의 합은 SUM x[n]j+1,3, SUM x[n]j+2,4, SUM x[n]j+3,2, SUM x[n]j+4,1 순으로 버퍼에 저장되고, 1번 기통의 실화로 인하여 SUM x[n]j+4,1가 커지게 되므로 당연히 수학식9에 의하여 WDFTj+1의 값도 커지게 된다.
다음 상사점 간격부터 실화가 없으면 SUM x[n]j+5,3는 작은 값으로 나오게 되며, WDFTj+2의 값은 1번 기통의 실화로 인한 큰 SUM x[n]j+4,1 값이 버퍼에 계속해서 저장되어 있기 때문에 큰 값이 나타나게 된다.
이런 식으로 계산하게 되면, SUM x[n]j+4,1는 버퍼에 WDFTj+3, WDFTj+4을 계산하는 동안 버퍼에 계속 남게 되어 하나의 기통에서 1번의 실화가 발생하는 경우 WDFT의 값이 연속적으로 4회 한계값1( misthr1)보다 큰 값이 나타나게 된다.
즉, 1번 기통에서 실화가 발생했을 때, 버퍼에는 (SUM x[n]j+1,3 - SUM x[n]j+2,4 - SUM x[n]j+3,2 - SUM x[n]j+4,1), (SUM x[n]j+2,4 - SUM x[n]j+3,2 - SUM x[n]j+4,1 - SUM x[n]j+5,3), (SUM x[n]j+3,2 - SUM x[n]j+4,1 - SUM x[n]j+5,3 - SUM x[n]j+6,4), (SUM x[n]j+4,1 - SUM x[n]j+5,3 - SUM x[n]j+6,4 - SUM x[n]j+7,2)과 같이 저장되며, 이 때의 WDFTj+1, WDFTj+2, WDFTj+3, WDFTj+4의 값은 크게 나타난다.
그리고, 다음 상사점 간격에서는 상기 실화가 일어난 각가속도의 합 SUM x[n]j+4,1가 사라지게 됨으로써 정상적인 WDFT의 값을 나타내게 된다.
또한, WDFT의 값이 연속적으로 4회 한계값(misthr1)보다 크게 되는 경우 마지막 4회 SUM x[n]j+4,1 - SUM x[n]j+5,3 - SUM x[n]j+6,4 - SUM x[n] j+7,2 에서 버퍼의 최상위 바이트에 있는 SUM x[n]j+4,1를 통하여 1번 기통에서 실화가 일어난 것으로 판단을 한다.
만약, 연속 4회 미만인 경우에는 노이즈로 판단하게 되며 도7은 상기 방법에 의한 결과를 도시한 도면이다.
상기 S90에서의 2기통 1회실화 기통판별과정은 WDFTj값이 한계값1( misthr1)을 초과하는 횟수가 연속 4회인지 판단하고(S91), 상기 S91에서 한계값1( misthr1)을 초과하는 횟수가 연속 4회가 아닐 경우, WDFTj값이 한계값1( misthr1)을 초과하는 횟수가 연속 5회이거나 연속적으로 2회 쌍으로 나타나게 되면 다음 단계로 넘어가거나, 연속 5회 혹은 연속적으로 2회 쌍으로 나타나지 않으면 실화판정 종료단계로 넘어가는 것을 판단한다(S95).
상기 S95에서 WDFTj값이 한계값1(misthr1)을 초과하는 횟수가 연속 5회이거나 연속적으로 2회 쌍으로 나타나게 되면, 2기통 1회실화 기통판별과정을 진행하 고(S96), 상기 S96에서 기통판별이 끝나면, 오류 수정 과정(S93)을 거쳐 실화판정 을 종료한다(S94).
상기 S95, S96에서 WDFTj값이 한계값1(misthr1)을 초과하는 횟수가 연속 5회이거나 연속적으로 2회 쌍으로 나타날 때, 2기통 1회 실화 기통판별방법은 두 가지로 나눌 수 있는데, 실린더의 폭발 행정이 1번 기통-3번 기통-4번 기통-2번 기통 순으로 일어날 때, 인접기통(1/3, 3/4, 4/2, 2/1)이 실화인 경우와 대향성 기통(1/4, 2/3)이 실화인 경우이다.
인접기통에서 1회 실화가 발생할 경우를 살펴보면, 현재 버퍼에 저장된 각가속도의 합의 순서가 (SUM x[n]j,1, SUM x[n]j+1,3, SUM x[n]j+2,4, SUM x[n]j+3,2)이고, 1 상사점 간격 후 1번 기통에서 실화가 발생한 다음, 다시 1 상사점 간격 후 1번 기통과 인접한 3번 기통에서 실화가 발생하였다면, SUM x[n]j+4,1, SUM x[n]j+5,3의 값은 크게 나타나게 되고, SUM x[n]j+6,4부터는 정상적인 값이 나타난다.
따라서, WDFT의 값은 5회 연속해서 기준값 이상의 큰 값이 나타난다. 즉, (SUM x[n]j+1,3, SUM x[n]j+2,4, SUM x[n]j+3,2, SUM x[n]j+4,1), (SUM x[n]j+2,4, SUM x[n]j+3,2, SUM x[n]j+4,1, SUM x[n]j+5,3), (SUM x[n]j+3,2, SUM x[n]j+4,1, SUM x[n]j+5,3, SUM x[n]j+6,4), (SUM x[n]j+4,1, SUM x[n]j+5,3, SUM x[n]j+6,4, SUM x[n]j+7,2), (SUM x[n]j+5,3, SUM x[n]j+6,4, SUM x[n]j+7,2, SUM x[n]j+8,1)에서 SUM x[n]j+4,1, SUM x[n]j+5,3는 큰 값을 나타내기 때문에 수학식9에 의하여 WDFT의 값은 5회 연속 크게 나타난다.
따라서, 실화기통은 마지막 큰 값 즉, (SUM x[n]j+5,3, SUM x[n]j+6,4, SUM x[n]j+7,2, SUM x[n]j+8,1)에서 큰 WDFT값을 유발하는 SUM x[n]j+5,3의 '3'번 기통과 바로 이전 인접기통 즉, SUM x[n]j+4,1의 1번 기통으로 판정하게 된다.
또한, 대향성 기통(1/4, 2/3)의 실화인 경우, 예를 들어, 1번과 4번 실린더에서 실화가 발생하게 될 경우를 생각해 보면, 1번 기통에서 실화가 발생하면 (SUM x[n]j+1,3, SUM x[n]j+2,4, SUM x[n]j+3,2, SUM x[n]j+4,1)과 (SUM x[n]j+2,4, SUM x[n]j+3,2, SUM x[n]j+4,1, SUM x[n]j+5,3)에서 SUM x[n]j+4,1가 큰 값을 나타내므로 수학식9에 의하여 WDFT의 값은 크게 나타나게 된다.
다음으로 4번 기통에서 실화가 발생하게 되면 (SUM x[n]j+3,2, SUM x[n]j+4,1, SUM x[n]j+5,3, SUM x[n]j+6,4), (SUM x[n]j+4,1, SUM x[n]j+5,3, SUM x[n]j+6,4, SUM x[n]j+7,2)으로 WDFT의 값은 대향성 기통이기 때문에 서로 상쇄되어 작은 값을 나타나게 된다.
이 후, 다음 상사점 간격에서는 1번 기통에는 실화가 발생하지 않음으로써 (SUM x[n]j+5,3, SUM x[n]j+6,4, SUM x[n]j+7,2, SUM x[n]j+8,1), (SUM x[n]j+6,4, SUM x[n]j+7,2, SUM x[n]j+8,1, SUM x[n]j+9,3)은 SUM x[n]j+6,4으로 인하여 수학식9에 의하여 큰 WDFT의 값을 나타낸다.
따라서, 대향기통에서 1회 실화가 발생할 경우 WDFT값은 '큰 값' - '큰 값' - '작은 값' - '작은 값' - '큰 값' - '큰 값'의 형태로 나타나게 되고, 마지막 큰 값을 나타내는 (SUM x[n]j+6,4, SUM x[n]j+7,2, SUM x[n]j+8,1, SUM x[n] j+9,3)에서 최상위 바이트에 저장되어 있는 각가속도의 합을 일으킨 4번 기통과 그 이전 대향 기통인 1번 기통을 실화가 일어난 기통으로 판정하게 되며, 도8은 상기와 같이 인접한 두 기통에서 혹은 대향한 두 기통에서 실화가 1회 발생한 경우의 결과를 도시한 것이다.
상기 S90에서의 연속실화 기통판별과정은 WDFTj값이 한계값1( misthr1)을 초과하는 횟수가 연속 4회인지 판단하고(S91), 상기 S91에서 한계값1(misthr1)을 초과하는 횟수가 연속 4회가 아닐 경우, WDFTj값이 한계값1(misthr1)을 초과하는 횟수가 연속 6회 이상이면 다음 단계로 진행하거나, 연속 6회가 아니면 실화판정 종료단계로 진행하는 것을 판단한다(S97).
상기 S97에서 초과하는 횟수가 연속 6회이면 연속실화 기통판별 과정을 진행하고(S98), 상기 S98에서 실화발생 기통판별이 끝나면 오류를 수정한 후(S93), 실화판정을 종료한다(S94).
상기 S97, S98에서 WDFTj값이 한계값1(misthr1)을 초과하는 횟수가 연속 6회로 나타날 때, 연속실화 기통판별방법은 두 가지로 나눌 수 있는데, 실린더의 폭발 행정이 1번 기통-3번 기통-4번 기통-2번 기통 순으로 일어날 때, 하나의 기통에서 연속적으로 실화가 일어나는 경우와, 인접기통(1/3, 3/4, 4/2, 2/1) 혹은 대향성 기통(1/4, 2/3)에서 연속적으로 실화가 일어나는 경우이다.
하나의 기통에서 계속해서 실화가 발생할 경우를 살펴보면, 예를 들어, 1번 기통에서 실화가 발생하여 WDFT의 값이 한계값1(misthr1)보다 연속해서 4회 큰 값으로 나타난 후, 다시 1번 기통에 실화가 발생할 경우에 한계값1(misthr1)보다 연속해서 5번 WDFT 값이 크게 나타나게 된다.
상기 S95에서 인접기통에서 실화가 1번 일어나는 경우에서도 WDFT가 한계값1(misthr1)보다 5회 연속 큰 값이 적용되므로 1개의 기통에서 실화가 계속해서 일어나는 경우는 6회 이상 계속해서 WDFT의 값이 한계값1(misthr1)보다 크게 나타나면 1개의 기통에서 실화가 계속해서 일어나는 것으로 판단하게 된다.
그런데, 이 경우 1번 기통에서 실화가 계속해서 일어나므로 실화기통판별이 불가능하게 되어 7회 시점부터 한 개의 기통에서 연속적으로 실화가 발생하는 것으로 판단하고, 실화가 일어난 기통을 찾기 위하여 다음의 수학식10을 사용하여 재계산하게 된다.
SCWDFT = RLLj + IMMj
RLLj = Buffer(│2byte│ - │2byte│ - │2byte│ + │2byte│)
= │SUM x[n]j│ - │SUM x[n]j+1│ - │SUM x[n]j+2│ + │SUM x[n] j+3
IMMj = Buffer(│2byte│ + │2byte│ - │2byte│ - │2byte│)
= │SUM x[n]j│ + │SUM x[n]j+1│ - │SUM x[n]j+2│ - │SUM x[n] j+3
예를 들어, 연속적으로 1번 기통에서 실화가 발생하는 경우 WDFT값이 처음으로 큰 값을 나타내는 경우, 버퍼에 저장되는 각가속도 합의 순서를 (SUM x[n]j+1,3, SUM x[n]j+2,4, SUM x[n]j+3,2, SUM x[n]j+4,1)라고 하면, 7회부터 각가속도의 합이 버퍼에 저장되는 순서는 (SUM x[n]j+7,2, SUM x[n]j+8,1, SUM x[n]j+9,3, SUM x[n]j+10,4), (SUM x[n]j+8,1, SUM x[n]j+9,3, SUM x[n]j+10,4, SUM x[n]j+11,2), (SUM x[n]j+9,3, SUM x[n]j+10,4, SUM x[n]j+11,2, SUM x[n]j+12,1), (SUM x[n]j+10,4, SUM x[n]j+11,2, SUM x[n]j+12,1, SUM x[n]j+13,3)……으로 나타나게 된다.
이 때 SCWDFT의 값은 '양의 값' - '양의 값' - '음의 값' - '음의 값' - '양의 값' ……의 순서로 계속해서 나타나므로, 2번째 '양의 값'을 나타내는 (SUM x[n]j+8,1, SUM x[n]j+9,3, SUM x[n]j+10,4, SUM x[n]j+11,2)에서 버퍼의 최상위 바이트에 저장되는 각가속도의 합 SUM x[n]j+8,1를 일으키는 기통을 실화가 발생한 기통으로 판별한다.
도9는 상기와 같은 방법으로 하나의 기통에서 계속해서 실화가 발생할 경우의 결과를 도시한 것이다.
또한, 인접 기통 혹은 대향 기통에서 계속해서 실화가 발생할 경우를 살펴보면, 인접기통에서 실화가 연속적으로 발생하는 경우, 예를 들어 1번 기통에서 실화가 발생 후 다음 상사점 간격 후에 3번 기통에서 실화가 발생하고, 다시 1번 기통과 3번 기통에서 연속적으로 실화가 발생하면, WDFT의 값은 6회 이상 한계값2(misthr2)보다 큰 값이 나타난다.
그런데, 이 때의 한계값2(misthr2)는 연속해서 1개의 기통에서 실화가 일어날 때 비교하는 한계값1(misthr1)보다 휠씬 크므로 쉽게 구분이 가능하다.
또한, 대향성 기통에서 연속해서 실화가 발생하게 될 경우, 예를 들어 계속하여 1번과 4번 기통에서 연속 실화가 발생하는 경우, 이 때의 WDFT의 값은 서로 상쇄되어 연속적으로 작은 값을 나타낸다.
즉, 1번 기통에서 실화가 발생되었을 때, 버퍼에 저장되는 각가속도 합의 순서는 (SUM x[n]j+1,3, SUM x[n]j+2,4, SUM x[n]j+3,2, SUM x[n]j+4,1)이고, SUM x[n]j+4,1는 실화에 의한 각가속도의 합이므로, 수학식9에 의한 WDFT의 값은 큰 값이 된다.
그런데, 2회 상사점 간격 후에 4번 기통에서 실화가 발생하면, 그 때 버퍼에 저장되는 각가속도 합의 순서는 (SUM x[n]j+3,2, SUM x[n]j+4,1, SUM x[n]j+5,3, SUM x[n]j+6,4)가 되고, SUM x[n]j+4,1, SUM x[n]j +6,4는 실화로 인하여 큰 값의 각가속도를 가진다.
이 때 수학식9에 의하여 WDFT의 값을 계산해 보면, RLLj+3 = SUM x[n]j+3,2 - SUM x[n]j+4,1 - SUM x[n]j+5,3 + SUM x[n]j+6,4, IMMj+3 = SUM x[n]j+3,2 + SUM x[n]j+4,1 - SUM x[n]j+5,3 - SUM x[n]j+6,4으로, RLLj+3, IMMj+3의 SUM x[n]j+4,1 , SUM x[n]j+6,4은 서로 부호가 다르기 때문에 상쇄되어 한계값3(misthr3)보다 작은 값이 연이어 나타난다.
그러므로, 이 경우에는 각가속도를 구하기 위하여 수학식2의 ΔT를 구하는 공식 대신에 아래의 수학식11에서의 제2 치주기 변화율식에 의해 연속적으로 구한 각가속도의 합으로 WDFT를 구하여 상기 WDFT가 소정의 한계값(mulaltthr)을 넘어서면 실화 판별을 하게 된다.
Figure 111999018974762-pat00050
(GAIN : 치주기 간의 변화에 대하여 평균을 계산할 때 쓰이는 상수,
Tj : j번째 치주기, ΔTj : j번째 제2 치주기 변화율)
상기 수학식11의 제2 치주기 변화율식을 이용하여 WDFT값이 한계값 mulaltthr을 7회 이상 초과하면, 7회부터 SCWDFT의 값을 구하여 그 값의 형태가 '양의 값'-'양의 값'-'음의 값'-'음의 값'의 형태로 반복하여 나올 때, 2번째 '양의 값'을 갖는 SCWDFT를 계산하기 위하여 버퍼의 최상위 바이트에 저장된 각가속도의 합을 일으키는 기통과 그 이전 대향기통을 실화가 발생한 기통으로 판별하게 된다.
도10은 상기와 같은 방법으로 인접 기통 혹은 대향 기통에서 계속해서 실화가 발생할 경우의 결과를 도시한 것이다.
상기와 같이 여러 가지 경우의 실화발생을 이산 퓨리에 변환에서의 기본함수변환과 무빙 윈도우 방식에 의하여 검출함으로써 실화의 발생여부와 실화가 발생한 기통을 정확하고 신속하게 파악할 수 있게 된다.
상기와 같은 엔진실화 검출시스템과 검출방법을 통하여 간단하고 빠르게 단 기통 및 다기통 실화에 대한 기통판별까지 완벽하게 수행 가능한 실화판정방법을 제시하여 대기오염 배출가스를 줄일 수 있을 뿐만 아니라 OBD Ⅱ 규정을 만족시킬 수 있다.

Claims (22)

  1. 캠축과 연결되어 있는 크랭크축 위치 타겟 휠;
    상기 크랭크축 위치 타겟 휠의 치와 치바닥의 거리차로 발생하는 자계의 변화에 따른 아날로그 신호를 발생하는 마그네픽 픽업;
    상기 아날로그 신호를 입력받아 디지탈 신호를 출력하는 스위치회로;
    상기 디지탈 신호의 주기와 '하이'값의 개수를 검출하는 타이머/카운터부;
    현재 폭발행정을 하는 기통을 알려주는 크랭크 각 센서와;
    상기 타이머/카운터부에서 디지탈 신호의 주기와 '하이'값의 개수를 입력받고, 상기 크랭크 각 센서에서 현재의 폭발행정 기통을 입력받아 엔진실화검출을 하는 전자제어유닛을 포함하는 엔진실화 검출시스템.
  2. 제1항에 있어서, 상기 타이머/카운터부는 상기 디지탈 신호의 '하이'값과 바로 다음 '하이'값이 나타나는 순간을 카운터로 검출하여 그 사이의 시간을 타이머로 체크하는 것을 특징으로 하는 엔진실화 검출시스템.
  3. 제1항에 있어서, 상기 전자제어유닛은 상기 타이머/카운터부에서 검출된 디지탈 신호의 주기와 '하이'값의 개수 및 크랭크 각 센서의 정보를 입력받아 상기 크랭크축 위치 타겟 휠의 각가속도를 구하고, 이 각가속도를 매 상사점 간격마다 합산한 후 버퍼에 저장하고, 상기 버퍼에 저장된 각가속도의 합을 윌쉬함수를 기본 함수로 하여 주파수 분석한 결과식에 대입하여 실화성분의 진폭의 크기를 구한 후, 이 진폭의 크기를 소정의 기준치와 비교하여 그 초과횟수와 진폭크기 값이 나타나는 형태를 바탕으로 실화의 판정과 실화발생기통을 판별하는 것을 특징으로 하는 엔진실화 검출시스템.
  4. 엔진실화 검출방법에 있어서,
    크랭크 각 센서에 의하여 크랭크축 위치 타겟 휠의 이와 이바닥의 거리차를 이용하여 신호를 포착한 후, 매 치주기마다 크랭크축 위치 타겟 휠의 각가속도를 구하는 제1 단계;
    상기 제1 단계에서 구한 각가속도가 데이터 해제조건을 만족하는지 판단하는 제2 단계;
    매 치주기마다 계산된 각가속도를 매 상사점 간격마다 합산하여 소정 용량의 버퍼에 저장하는 제3 단계;
    상기 버퍼에 저장된 각가속도의 합을 이용하여 엔진출력 변동에 의하여 변하는 상기 각가속도의 합에 대한 오차를 수정하는 제4 단계;
    월쉬함수를 기본함수로 하는 각가속도에 대한 이산 퓨리에 변환으로 도출된 식에 상기 버퍼에 저장된 각가속도의 합을 이용하여 무빙 윈도우 방식에 따라 RLLj와 IMMj 그리고 WDFTj의 값을 계산하는 제5 단계;
    상기 제5 단계에서 계산한 WDFTj의 값과 한계값1, 2, 3을 비교하는 제6 단 계;
    상기 WDFTj가 한계값1을 초과하는 횟수를 카운트하고, 연속 4회 미만이면 카운터를 초기화하는 제7 단계와;
    상기 제7 단계의 카운터 횟수에 따라 단기통 1회실화 기통판별, 연속실화 기통판별, 2기통 1회실화 기톤판별 과정 중 하나를 거치는 제8 단계를 포함하는 엔진실화 검출방법.
  5. 제4항에 있어서, 상기 제4 단계의 상사점 간격은 하나의 기통에서 폭발행정을 일으킨 후, 그 다음 폭발행정을 하는 기통의 피스톤이 폭발행정을 하기 위하여 상사점에 도달할 때까지의 간격을 상사점 간격으로 하는 엔진실화 검출방법.
  6. 제4항에 있어서, 상기 제5 단계의 각가속도에 대한 이산 퓨리에 변환은 기본함수를 삼각함수에서 월쉬함수로 대체하는 것을 특징으로 하는 엔진실화 검출방법.
  7. 제4항에 있어서, 상기 제5 단계의 각가속도에 대한 이산 퓨리에 변환은 실화성분의 주파수를 1로 하여 변환하는 것을 특징으로 하는 엔진실화 검출방법.
  8. 제4항에 있어서, 상기 제5 단계의 각가속도에 대한 이산 퓨리에 변환은 엔진주기신호 1주기동안의 매 치주기에서의 각가속도를 4회의 상사점 간격으로 등분하 는 주파수분석하는 것을 특징으로 하는 엔진실화 검출방법.
  9. 제4항에 있어서, 상기 제5 단계의 WDFTj를 계산하기 위한 무빙 윈도우 방식은 소정 바이트 용량의 버퍼에 매 상사점 간격당 매 치주기에 대한 각가속도의 합이 일정 바이트씩 할당되어 버퍼에 저장되고, 버퍼가 다 차면 WDFT를 구하고, 다음 상사점 간격에서는 버퍼에 저장되어 있는 각가속도의 합은 모두 일정 바이트씩 밀려 이동하여 버퍼의 최상위 일정 바이트에 있던 각가속도의 합은 사라지고, 비어있는 최하위 일정 바이트에는 그 당시 상사점 간격의 각가속도의 합이 저장되어 그 다음 WDFT를 구하는 무빙 윈도우 방식을 특징으로 하는 엔진실화 검출방법.
  10. 제4항에 있어서, 상기 제8 단계에서의 단기통 1회실화 기통판별 과정은,
    WDFTj값이 한계값1을 초과하는 횟수가 연속 4회인지 판단하는 단계;
    상기 단계에서 한계값1을 초과하는 횟수가 연속 4회라고 판단하면, 실화기통 판별과정을 실행하는 단계;
    실화기통판별을 한 후 오류 수정 과정을 실행하는 단계를 포함하는 것을 특징으로 하는 엔진실화 검출방법.
  11. 제4항에 있어서, 상기 제8 단계에서의 연속실화 기통판별 과정은,
    WDFTj값이 한계값1을 초과하는 횟수가 연속 4회인지 판단하는 단계;
    상기 단계에서 한계값1을 초과하는 횟수가 연속 4회가 아닐 경우, WDFTj값이 한계값1을 초과하는 횟수가 연속 6회 이상이면 다음 단계로 진행하거나, 연속 6회가 아니면 실화판정 종료단계로 진행하는 것을 판단하는 단계;
    상기 단계에서 초과하는 횟수가 연속 6회이면 실화기통 판별과정을 진행하 단계와;
    오류를 수정하는 단계를 포함하는 것을 특징으로 하는 엔진실화 검출방법.
  12. 제4항에 있어서, 상기 제8 단계에서의 2기통 1회실화 기통판별 과정은,
    WDFTj값이 한계값1을 초과하는 횟수가 연속 4회인지 판단하는 단계;
    상기 단계에서 한계값1을 초과하는 횟수가 연속 4회가 아닐 경우, WDFTj값이 한계값1을 초과하는 횟수가 연속 5회이거나 연속적으로 2회 쌍으로 나타나게 되면 다음 단계로 넘어가거나, 연속 5회 혹은 연속적으로 2회 쌍으로 나타나지 않으면 실화판정 종료단계로 넘어가는 것을 판단하는 단계;
    상기 단계에서 WDFTj값이 한계값1을 초과하는 횟수가 연속 5회이거나 연속적으로 2회 쌍으로 나타나게 되면 실화기통 판별과정을 진행하는 단계와;
    오류 수정 과정을 진행하는 단계를 포함하는 것을 특징으로 하는 엔진실화 검출방법.
  13. 제10항에 있어서, 상기 실화기통 판별방법은 4기통 엔진에서 버퍼의 용량이 8바이트이고, 매 상사점 간격당 각가속도의 합이 버퍼에 2바이트씩 할당되어 저장된다고 할 때, 한계값1을 초과하는 연속 4회 WDFT값 중 마지막 WDFT값을 계산하기 위하여 버퍼의 최상위 2바이트에 저장된 각가속도의 합을 유발하는 기통을 실화가 일어난 기통으로 판단하는 것을 특징으로 하는 엔진실화 검출방법.
  14. 제11항에 있어서, 상기 실화기통 판별방법은 1기통 연속실화 기통판별 방법, 인접기통 연속실화 기통판별 방법, 대향기통 연속실화 기통판별 방법을 포함하는 것을 특징으로 하는 엔진실화 검출방법.
  15. 제14항에 있어서, 상기 1기통 연속실화 기통판별 방법은 4기통 엔진에서 버퍼의 용량이 8바이트이고, 매 상사점 간격당 각가속도의 합이 버퍼에 2바이트씩 할당되어 저장된다고 할 때, WDFTj의 값이 한계값1을 초과하는 횟수가 연속 7회 이상 되는 시점부터 WDFT대신에 SCWDFT의 값을 구하여 그 값의 형태가 '양의 값'-'양의 값'-'음의 값'-'음의 값'의 형태로 반복하여 나올 때, 2번째 '양의 값'을 갖는 SCWDFT를 계산하기 위하여 버퍼의 최상위 바이트에 저장된 각가속도의 합을 일으키는 기통을 실화가 발생한 기통으로 판별하는 것을 특징으로 하는 엔진실화 검출방법.
  16. 제14항에 있어서, 상기 인접기통 연속실화 기통판별 방법은 4기통 엔진에서 버퍼의 용량이 8바이트이고, 매 TDC당 각가속도가 버퍼에 2바이트씩 할당되어 저장된다고 할 때, WDFTj의 값이 한계값2(misthr2)를 초과하는 횟수가 연속 7회되는 시점부터 WDFT대신에 SCWDFT의 값을 구하여 그 값의 형태가 '양의 값'-'양의 값'-'음의 값'-'음의 값'의 형태로 반복하여 나올 때, 2번째 '양의 값'을 갖는 SCWDFT를 계산하기 위하여 버퍼의 최상위 바이트에 저장된 각가속도의 합을 일으키는 기통과 그 이전 인접기통을 실화가 발생한 기통으로 판별하는 것을 특징으로 하는 엔진실화 검출방법.
  17. 제14항에 있어서, 상기 대향기통 연속실화 기통판별 방법은 4기통 엔진에서 버퍼의 용량이 8바이트이고, 매 TDC당 각가속도가 버퍼에 2바이트씩 저장된다고 할 때, WDFT의 값이 한계값3(misthr3) 초과횟수가 0이면, 제2 치주기 변화율식을 이용하여 WDFT값이 한계값 mulaltthr을 7회 이상 초과하면, 7회부터 SCWDFT의 값을 구하여 그 값의 형태가 '양의 값'-'양의 값'-'음의 값'-'음의 값'의 형태로 반복하여 나올 때, 2번째 '양의 값'을 갖는 SCWDFT를 계산하기 위하여 버퍼의 최상위 바이트에 저장된 각가속도의 합을 일으키는 기통과 그 이전 대향기통을 실화가 발생한 기통으로 판별하는 것을 특징으로 하는 엔진실화 검출방법.
  18. 제17항에 있어서, 상기 제2 치주기 변화율식은
    Figure 111999018974762-pat00074
    으로 하는 것을 특징으로 하는 엔진실화 검출방법.
  19. 제15항 내지 제17항 중 어느 하나에 있어서, 상기 SCWDFT는 SCWDFT = RLLj + IMMj 과 같이 계산하는 것을 특징으로 하는 엔진실화 검출방법.
  20. 제12항에 있어서, 상기 2기통 1회실화 기통판별 방법은 인접기통 1회실화 기통판별방법과 대향기통 1회실화 기통판별방법을 포함하는 것을 특징으로 하는 엔진실화 검출방법.
  21. 제20항에 있어서, 상기 인접기통 1회실화 기통판별방법은 4기통 엔진에서 버퍼의 용량이 8바이트이고, 매 상사점 간격당 각가속도가 버퍼에 2바이트씩 저장된다고 할 때, WDFT의 값이 5회 연속해서 한계값1 이상의 큰 값을 나타내면, 5회째의 WDFT의 값을 계산하기 위하여 버퍼의 최상위 바이트에 저장된 각가속도의 합을 일으키는 기통과 그 이전 인접 기통을 실화가 발생한 기통으로 판별하는 것을 특징으로 하는 엔진실화 검출방법.
  22. 제20항에 있어서, 상기 대향기통 1회실화 기통판별방법은 4기통 엔진에서 버퍼의 용량이 8바이트이고, 매 TDC당 각가속도가 버퍼에 2바이트씩 저장된다고 할 때, WDFT의 값이 '큰 값' - '큰 값' - '작은 값' - '작은 값' - '큰 값' - '큰 값' 의 형태로 나타나면, 마지막 '큰 값'인 WDFT를 계산하기 위하여 버퍼의 최상위 바이트에 저장된 각가속도의 합을 유발하는 기통과 그 이전 대향기통을 실화가 발생한 기통으로 판별하는 것을 특징으로 하는 엔진실화 검출방법.
KR1019990066849A 1999-12-30 1999-12-30 엔진실화 검출시스템 및 엔진실화 검출방법 KR100578023B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990066849A KR100578023B1 (ko) 1999-12-30 1999-12-30 엔진실화 검출시스템 및 엔진실화 검출방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990066849A KR100578023B1 (ko) 1999-12-30 1999-12-30 엔진실화 검출시스템 및 엔진실화 검출방법

Publications (2)

Publication Number Publication Date
KR20010065837A KR20010065837A (ko) 2001-07-11
KR100578023B1 true KR100578023B1 (ko) 2006-05-11

Family

ID=19633982

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990066849A KR100578023B1 (ko) 1999-12-30 1999-12-30 엔진실화 검출시스템 및 엔진실화 검출방법

Country Status (1)

Country Link
KR (1) KR100578023B1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8176896B2 (en) * 2008-10-08 2012-05-15 GM Global Technology Operations LLC Target wheel position detection systems
CN109030010A (zh) * 2018-06-28 2018-12-18 潍柴动力股份有限公司 一种用于发动机失火检测方法及装置
CN109030009A (zh) * 2018-06-28 2018-12-18 潍柴动力股份有限公司 一种用于发动机失火检测方法及装置
KR102119872B1 (ko) * 2018-12-04 2020-06-05 현대오트론 주식회사 단기통 4행정 엔진의 실화 진단 방법 및 시스템
KR102119876B1 (ko) * 2018-12-04 2020-06-05 현대오트론 주식회사 단기통 4행정 엔진의 실화 진단 방법 및 장치
KR102063974B1 (ko) * 2018-12-04 2020-01-08 현대오트론 주식회사 이산 푸리에 변환과 선형 성분이 제거된 엔진 속도의 변동 분석을 활용한 엔진 실화 진단 시스템 및 방법
KR102119873B1 (ko) * 2018-12-04 2020-06-05 현대오트론 주식회사 단기통 4행정 엔진의 실화 진단 방법 및 장치
KR102063971B1 (ko) * 2018-12-04 2020-01-08 현대오트론 주식회사 이산 푸리에 변환과 엔진 속도의 진폭 변화 분석을 활용한 엔진 실화 진단 시스템 및 방법
CN112761789B (zh) * 2021-02-03 2022-06-28 联合汽车电子有限公司 发动机失火诊断方法以及失火诊断装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6123876A (ja) * 1984-07-13 1986-02-01 Toyota Motor Corp 内燃機関の失火検出方法
JPH04233432A (ja) * 1990-09-05 1992-08-21 Robert Bosch Gmbh 内燃機関の失火識別方法
JPH05106504A (ja) * 1991-10-16 1993-04-27 Nissan Motor Co Ltd 内燃機関の失火検出装置
JPH11183330A (ja) * 1997-12-19 1999-07-09 Honda Motor Co Ltd 内燃エンジンの失火判別方法
KR100305832B1 (ko) * 1999-07-21 2001-09-13 이계안 주파수 분석을 이용한 엔진 실화 검출 시스템과 검출방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6123876A (ja) * 1984-07-13 1986-02-01 Toyota Motor Corp 内燃機関の失火検出方法
JPH04233432A (ja) * 1990-09-05 1992-08-21 Robert Bosch Gmbh 内燃機関の失火識別方法
JPH05106504A (ja) * 1991-10-16 1993-04-27 Nissan Motor Co Ltd 内燃機関の失火検出装置
JPH11183330A (ja) * 1997-12-19 1999-07-09 Honda Motor Co Ltd 内燃エンジンの失火判別方法
KR100305832B1 (ko) * 1999-07-21 2001-09-13 이계안 주파수 분석을 이용한 엔진 실화 검출 시스템과 검출방법

Also Published As

Publication number Publication date
KR20010065837A (ko) 2001-07-11

Similar Documents

Publication Publication Date Title
CN1138976C (zh) 探测内燃机中点火不良的方法和实现所述方法的系统
US10502659B2 (en) Misfire detection device for internal combustion engine
US7530261B2 (en) Fourier-based misfire detection strategy
US5915272A (en) Method of detecting low compression pressure responsive to crankshaft acceleration measurement and apparatus therefor
US5245866A (en) Device for detecting occurrence of misfiring in multicylinder engine
JP4509986B2 (ja) 内燃機関の失火検出装置
US5559285A (en) Fuzzy logic method for detecting misfiers in internal combustion engines
US5222392A (en) Control system with misfire detection function for internal combustion engine
KR100305832B1 (ko) 주파수 분석을 이용한 엔진 실화 검출 시스템과 검출방법
US5804711A (en) Pattern recognition method and system for determining a misfire condition in a reciprocating engine
KR100578023B1 (ko) 엔진실화 검출시스템 및 엔진실화 검출방법
JP6818127B2 (ja) エンジン車両ならびにクランクパルサロータの歯間誤差除去方法および装置
US5638278A (en) Apparatus for detecting an occurence of misfiring in an engine cylinder
KR100335927B1 (ko) 크랭크 각도 신호 처리장치 및 그 처리 방법
JPH07119536A (ja) 内燃エンジンの燃焼状態検出装置
JPH09126042A (ja) 燃焼ミスファイヤを検出する方法
US6212945B1 (en) Method and apparatus for combustion quality diagnosis and control utilizing synthetic measures of combustion quality
JPH09329054A (ja) 燃焼ミスファイヤの検出方法
Naik Advanced misfire detection using adaptive signal processing
KR100325162B1 (ko) 최적 위상 지연각을 이용한 엔진 실화 검출 시스템 및 검출방법
US5394742A (en) Method for recognizing abnormal combustions in the cylinder of an internal-combustion engine
US5503009A (en) Method for recognizing irregular combustions in a cylinder of an internal combustion engine
JP4316914B2 (ja) 失火検出装置
JPH04113244A (ja) 内燃機関の失火検出装置
JPH0510199A (ja) 内燃機関用失火検出装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee