KR100705956B1 - 자동차의 엔진 제어 방법 - Google Patents

자동차의 엔진 제어 방법 Download PDF

Info

Publication number
KR100705956B1
KR100705956B1 KR1020040116857A KR20040116857A KR100705956B1 KR 100705956 B1 KR100705956 B1 KR 100705956B1 KR 1020040116857 A KR1020040116857 A KR 1020040116857A KR 20040116857 A KR20040116857 A KR 20040116857A KR 100705956 B1 KR100705956 B1 KR 100705956B1
Authority
KR
South Korea
Prior art keywords
task
delay time
engine
executed
setting
Prior art date
Application number
KR1020040116857A
Other languages
English (en)
Other versions
KR20060078157A (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 KR1020040116857A priority Critical patent/KR100705956B1/ko
Publication of KR20060078157A publication Critical patent/KR20060078157A/ko
Application granted granted Critical
Publication of KR100705956B1 publication Critical patent/KR100705956B1/ko

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

최우선을 실행하여야 하는 타스크를 설정한 후 나머지 타스크 각각에 대한 나머지 타스크 각각에 대한 지연 시간을 설정하여 타스크 실행 순위를 결정하고, 상기 결정된 실행 순위에 따라 타스크를 실행하는 자동차의 엔진 제어 방법이 개시되어 있다. 이러한 복수의 제어 프로그램 중 하나의 프로그램 내용을 변경할 필요가 생겼을 경우 또는 새로운 프로그램을 추가하는 경우, 또는 현재 시점에서 최우선으로 처리하여야 하는 경우 또는 타스크의 일부분만의 변경은 안되며, 결국 복수 제어 프로그램의 전체를 재 작성하여야 하는 불편함이 있었다. 본 발명에 의하면, 최우선적으로 실행하여야 하는 수퍼 타스크를 설정한 후 제어 프로그램의 각각의 타스크마다 지연 시간을 설정하여 타스크의 실행 순위를 결정함으로써, 우선 처리하여야 하는 타스크를 효율적으로 처리하여 최적의 상태로 엔진을 제어할 수 있다.
자동차, 엔진제어, 운영 체제, 마이크로 프로세서

Description

자동차의 엔진 제어 방법{METHOD FOR CONTROLLING ENGIN OF CAR}
도 1은 본 발명에 따른 자동차의 엔진 제어 과정을 보인 흐름도이다.
본 발명은 자동차의 엔진 제어 방법에 관한 것으로서, 보다 상세하게는, 엔진에 대한 최적의 엔진 상태로 제어하기 위한 자동차의 엔진 제어 방법에 관한 것이다.
통상적인 엔진 전자 제어 장치(Engine control unit)는 엔진의 효율적 작동으로 위하여 연료 분사량 제어, 점화 시기, 엔진의 회전수 계산 및 단위 행정 당 흡입 공기량 계산 등을 위한 동작을 실행하고 있다. 즉, 엔진 전자 제어 장치가 이러한 계산들을 정확하게 실행하기 위하여 연료 분사량, 흡입 공기량 등 엔진의 물리량 측정을 정확히 하여야 하는 것이 필수적이다.
이러한 물리량 측정 및 계산은 TDC의 경우 1 기통 엔진의 경우 엔진 1/2 회전 마다 1회씩 수행하여야 하고, 이러한 물리량 측정 및 계산은 타스크(작업)라 칭한다.
즉, 일반적인 엔진 제어 방법은 그 제어 대상 마다 센서로부터 정보 인출에 서부터 엔진을 제어하고자 하는 모든 기능에 대한 제어량의 설정까지의 일련의 프로그램을 엔진의 상태에 따라 실행하고 있다. 이러한 제어 프로그램으로서는, 예를 들어, 연료량 제어 프로그램이나 점화 시가 제어 프로그램 등 제어 프로그램 및 엔진 시동 프로그램 등이 있다. 연료량 제어 프로그램이나 점화 시기 제어 프로그램 등은 엔진 회전의 일정 크랭크각에 동기하여 실행되며, 상기 프로그램의 연산 결과인 연료 공급량이나 점화 시기 진각량을 펄스출력 회로에 출력함으로서 상기 프로그램의 타스크 처리를 종료시키고 있다.
이와 같은 엔진의 어떤 상태에서 프로그램(레벨)을 실행하며, 제어 시스템인 엔진 전자 제어 장치의 부하 상태가 엔진의 동작 상태에 따라 크게 변동한다. 예를 들어 엔진 속도가 저속에서 중속 또는 고속으로 변환하는 경우 타스크의 처리의 실행 회수인 연산 요구 회수가 엔진 속도에 증대되므로 엔진 전자 제어 장치는 이러한 요구에 응할 수 없는 경우가 발생하였다.
즉, 이러한 복수의 제어 프로그램 중 하나의 프로그램 내용을 변경할 필요가 생겼을 경우나 또는 새로운 프로그램을 추가하는 경우, 또는 현재 시점에서 우선적으로 처리하여 경우에는 프로그램의 일부분만의 변경은 안되며, 결국 복수 제어 프로그램의 전체를 재 작성하여야 하는 불편함이 있었다.
본 발명은 이와 같은 문제점을 해결하기 위해 창출된 것으로, 본 발명의 목적은 최우선적으로 실행하여야 하는 수퍼 타스크를 설정한 후 나머지 제어 프로그램 각각의 타스크 마다 지연 시간을 설정하며 설정된 지연 시간에 따라 타스크의 실행 순위를 결정함으로써, 우선 처리하여야 하는 프로그램의 타스크를 효율적으로 처리할 수 있는 자동차의 엔진 제어 방법을 제공하고자 함에 있다.
상기와 같은 목적을 달성하기 위하여 본 발명의 기술적 과제는
다수개의 프로그램의 타스크의 실행 순위를 지연 시간에 따라 설정하고, 상기 설정된 실행 순위에 따라 순차적으로 실행하도록 제어하는 운용 프로그램을 포함하는 자동차의 엔진 제어 방법에 있어서,
a) 최우선으로 실행하여야 하는 수퍼 타스크 설정 단계;
b) 상기 a) 단계에서 실행된 수퍼 타스크를 제외한 나머지 각각의 타스크에 대한 플래그 비트를 초기화하는 단계;
c) 미리 설정된 최저 지연 시간을 가지는 타스크를 미리 저장된 타스크 테이블로부터 읽어 들이는 단계;
d) 상기 c)단계에서 읽어 들인 상기 최저 지연 시간을 가지는 타스크에 대한 상기 플래그 비트를 상기의 최저 지연 시간과 소정 시간으로 설정하는 단계;
e) 상기 d) 단계에서 지연 시간을 가지는 현재 타스크 실행하는 단계; 및
f) 상기 e) 단계의 실행 후 미리 설정된 최저 지연 시간이 경과되었는 지를 체크하여 상기 해당 타스크의 최저 지연 시간이 경과된 경우 상기 소정 시간이 경과되었는 지를 판단하여 판단 결과 소정 시간이 경과된 경우 상기 최저 지연 시간을 가지는 타스크를 제외한 다음 최저 지연 시간을 가지는 타스크를 상기 타스크 테이블로부터 읽은 후 상기 d) 단계로 진행하고, 상기 소정 시간이 경과되지 않은 경우 상기 e) 단계로 진행하는 단계로 이루어지는 것을 특징으로 하는 자동차의 엔진 제어 방법을 제공함으로서 달성될 수 있다.
본 발명에 의하면, 최우선적으로 실행하여야 하는 수퍼 타스크를 우선 설정한 후 각 제어 프로그램의 각각의 타스크에 대한 지연 시간을 각각 설정하여 타스크의 실행 순위를 결정함으로써, 우선 처리하여야 하는 타스크를 효율적으로 처리하여 최적의 상태로 엔진을 제어할 수 있다.
이하, 본 발명을 첨부된 예시도면에 의거 상세히 설명하면 다음과 같다.
도 1은 본 발명에 따른 자동차의 엔진 제어 하기 위하여 실행하여야 하는 레벨의 순위를 결정하는 과정을 보인 흐름도이다. 도 1의 흐름도를 참조하여 엔진 제어 장치의 마이크로 프로세서에서 행하여지는 수퍼 타스크와 일반 타스크의 실행 과정에 대해 설명한다.
발명의 실시 예에서는 상기 각각의 프로그램에 따른 타스크가 타스크 테이블형태로 메모리에 저장하고, 최우선으로 실행하여야 하는 수퍼 타스크를 설정하여 저장한 후 상기 수퍼 타스크를 제외한 나머지 각 타스크는 미리 설정된 지연 시간에 따라 실행 순서를 정하고, 설정된 실행 순서에 따라 타스크가 실행되도록 구비된다.
여기서, 상기 최우선으로 실행하여야 하는 수퍼 타스크는 인터럽트 시간(1ms) 동안 실행되고, 이 최우선으로 실행하여야 하는 수퍼 타스크에 대한 구동 정와 상기 수퍼 타스크를 제외한 나머지 각각 타스크의 지연 시간을 나타내는 비트 데이터는 1바이트의 크기를 가지는 램에 저장되므로, 총 8의 수퍼 타스크가 존재한다. 상기 마이크로프로세서는 타스크 테이블의 타스크 데이터를 비트 0에서부터 비터 7까지 스캔하여 수퍼 타스크를 우선 실행하고, 이러한 수퍼 타스크의 실행 시간은 짧은 시간 내에 종료된다.
상기에서 설명한 수퍼 타스크의 실행 순위 설정 및 수행이 완료되면, 10ms 마다 각 타스크의 실행 순위를 설정한다. 즉, 최우선 수퍼 타스크를 제외한 나머지 타스크의 실행 순위를 결정하기 위한 타스크의 비트 데이터가 1 바이트 크기를 가지는 램에 저장되기 때문에 총 8개의 타스크가 존재하게 된다. 비트 0부터 비트 7까지 스캔하여 비트 데이터에 의해 설정된 지연 시간에 따라 해당 일반 타스크가 수행된다.
실행하는 일반 타스크의 비트 데이터는 매 10ms 마다 수정된다. 예를 들어 10ms 배수로 일반 타스크가 수행될 수 있도록 해당 비트 데이터는 타스크 테이블에 업데이트된다.
즉, 10ms 마다 타스크를 실행하고. 10ms 배수인 20ms 마다 타스크를, 20ms 의 배수인 40ms 마다 타스크를, 40ms의 배수인 80ms 마다 타스크를 실행한다. 예를 들어 각 비트의 데이터가 각각 000에서 001로 수정된 경우 타스크 수행 시간은 (10ms, 20ms)이다. 즉, 비트 데이터가 3반째 데이터가 0에서 1로 변경되었으므로, 타스크 수행 시간은 20ms의 지연 시간 가짐을 의미한다.
또한, 다음 비트 데이터가 001에서 010로 수정된 경우 타스크의 수행 시간은 (10ms, 40ms)이다. 즉, 상기 비트 데이터가 2번째 데이터가 1에서 0으로 변경된 후 다시 3번째 비트 데이터가 0에서 1로 변경되었으므로 지연 시간은 40ms이 소요된다. 여기서 상기 40ms는 해당 타스크의 지연 시간이고, 10ms는 해당 타스크의 소정 시간을 의미하므로, 상기 타스크의 수행 시간은 지연 시간과 소정 시간을 합한 값을 가지며, 상기 수행 시간으로 플래그 비트가 설정된다.
다음 비트 데이터가 010에서 011로 수정된 경우 3번째 데이터가 변경되었으므로, 지연 시간은 (10ms, 20ms)이 된다. 즉, 상기 해당 타스크는 20ms의 지연 시간과 10ms의 소정 시간을 가진다. 이때 해당 타스크의 플래그 비트는 20ms의 지연 시간과 10ms의 소정 시간으로 설정된다. 여기서, 상기 지연 시간은 각 일반 타스크 별로 각각 설정되나, 소정 시간은 상기 일반 타스크의 실행 시간으로 고정된 값(10ms)으로 설정된다.
상기에서 설명한 바와 같이, 각 해당 타스크의 지연 시간은 매 10ms 마다 (10ms, 20ms), (10ms, 40ms), (10ms, 20ms), (10ms, 40ms),(10ms, 80ms), (10ms, 20ms), (10ms, 40ms) (10ms, 160ms)... 순서대로 설정된다.
삭제
이러한 각각의 타스크 비트 데이터는 매 10ms 마다 업 데이트가 끝난 후 마이크로 프로세서는 상기의 과정을 통해 마이크로 프로세서는 각 일반 타스크의 지연 시간을 설정하고 설정된 타스크의 실행 순위에 따라 타스크를 실행한다. 즉, 상기 비트 0부터 비트 7까지의 타스크 테이블에 저장된 비트 데이터의 스캔을 통해 최우선으로 실행하여야 하는 최저 지연 시간을 가지는 수퍼 타스크를 가장 먼저 실행하고, 다음 지연 시간을 가지는 타스크를 지연 시간에 의해 설정된 순서에 따라 실행된다. 즉, 비트 0부터 비트 7까지의 스캔을 통해 비트 데이터가 000에서 001로 변경되는 제1 타스크는 실행된다.
삭제
우선, 상기 마이크로 프로세서는 최우선을 실행하여야 하는 수퍼 타스크를 설정하여 저장한 후 실행하며(단계 200), 상기 단계(200)의 실행 후 모든 일반 타스크에 대한 플래그 비트를 초기화시키고(단계 201), 상기 지연 시간이 가장 작은 타스크를 미리 저장된 타스크 테이블로부터 읽어 들인다(단계 203).
그 후 상기 단계(203)에서 읽어 들인 상기 지연 시간이 가장 작은 타스ㅋ이 비트 데이터를 기초로 설정된 지연 시간과 소정 시간으로 플래그 비트를 설정한 후(단계 205) 상기 해당 타스크 실행한다(단계 207).
상기 단계(207)의 실행 후 해당 타스크의 미리 설정된 지연 시간(10ms)이 경과되었는 지를 체크하여(단계 209) 지연 시간이 경과된 경우 소정 시간이 경과되었는 지를 체크한다(단계 211).
상기 단계(211)를 통해 해당 타스크의 소정 시간이 경과된 경우 다음 지연 시간을 가지는 타스크를 미리 저장된 타스크 테이블로부터 읽은 후(단계 213) 상기 단계(205)로 진행하여 다음 지연 시간을 가지는 타스크에 대한 지연 시간과 소정 시간으로 플래그 비트를 설정한다.
한편, 상기 단계(211)를 통해 상기 소정 시간이 경과되지 않는 경우 상기 단계(207)로 진행하여 상기 단계(203)에 의해 설정된 타스크를 계속 실행한다. 상기의 과정은 통상적으로 자동차의 전원이 오프될 때까지 반복 실행된다.
이상 설명된 바와 같이, 본 발명에 따른 자동차의 엔진 제어 방법은, 최우선적으로 실행하여야 하는 수퍼 타스크를 설정한 후 각 제어 프로그램의 나머지 일반타스크마다 지연 시간을 설정하여 타스크의 실행 순위를 결정함으로써, 우선 처리하여야 하는 수퍼 타스크 및 일반 타스크를 효율적으로 처리하여 최적의 상태로 엔진을 제어할 수 있다.
본 발명은 상기한 실시 예에 한정되지 않고, 이하의 특허청구범위에서 청구하는 바와 같이 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지 식을 가진 자라면 누구든지 다양한 변경 실시가 가능한 범위까지 본 발명의 기술적 정신이 있다고 할 것이다.

Claims (1)

  1. 다수개의 프로그램의 타스크의 실행 순위를 지연 시간에 따라 설정하고, 상기 설정된 실행 순위에 따라 순차적으로 실행하도록 제어하는 운용 프로그램을 포함하는 자동차의 엔진 제어 방법에 있어서,
    a) 최우선으로 실행하여야 하는 수퍼 타스크 설정 단계;
    b) 상기 a) 단계에서 실행된 수퍼 타스크를 제외한 나머지 각각의 타스크에 대한 플래그 비트를 초기화하는 단계;
    c) 미리 설정된 최저 지연 시간을 가지는 타스크를 미리 저장된 타스크 테이블로부터 읽어 들이는 단계;
    d) 상기 c)단계에서 읽어 들인 상기 최저 지연 시간을 가지는 타스크에 대한 상기 플래그 비트를 지연 시간과 소정 시간으로 설정하는 단계;
    e) 상기 d) 단계에서 최저 지연 시간을 가지는 현재 타스크 실행하는 단계; 및
    f) 상기 e) 단계의 실행 후 미리 설정된 최저 지연 시간이 경과되었는 지를 체크하여 상기 해당 타스크의 최저 지연 시간이 경과된 경우 상기 소정 시간이 경과되었는 지를 판단하여 판단 결과 소정 시간이 경과된 경우 상기 최저 지연 시간을 가지는 타스크를 제외한 다음 최저 지연 시간을 가지는 타스크를 상기 타스크 테이블로부터 읽은 후 상기 d) 단계로 진행하고, 상기 소정 시간이 경과되지 않은 경우 상기 e) 단계로 진행하는 단계로 이루어지는 것을 특징으로 하는 자동차의 엔진 제어 방법.
KR1020040116857A 2004-12-30 2004-12-30 자동차의 엔진 제어 방법 KR100705956B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040116857A KR100705956B1 (ko) 2004-12-30 2004-12-30 자동차의 엔진 제어 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040116857A KR100705956B1 (ko) 2004-12-30 2004-12-30 자동차의 엔진 제어 방법

Publications (2)

Publication Number Publication Date
KR20060078157A KR20060078157A (ko) 2006-07-05
KR100705956B1 true KR100705956B1 (ko) 2007-04-11

Family

ID=37170101

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040116857A KR100705956B1 (ko) 2004-12-30 2004-12-30 자동차의 엔진 제어 방법

Country Status (1)

Country Link
KR (1) KR100705956B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06230985A (ja) * 1993-02-02 1994-08-19 Hitachi Ltd タスク制御回路、及びマイクロプロセッサ
JPH11134203A (ja) 1997-09-01 1999-05-21 Matsushita Electric Ind Co Ltd マイクロコントローラ、データ処理システム及びタスクスイッチの制御方法
KR20040049732A (ko) * 2002-12-07 2004-06-12 한국전자통신연구원 홈게이트웨이 시스템에서의 동적 우선순위 큐잉 엔진 및방법과 그를 이용한 홈게이트웨이의 데이터 서비스 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06230985A (ja) * 1993-02-02 1994-08-19 Hitachi Ltd タスク制御回路、及びマイクロプロセッサ
JPH11134203A (ja) 1997-09-01 1999-05-21 Matsushita Electric Ind Co Ltd マイクロコントローラ、データ処理システム及びタスクスイッチの制御方法
KR20040049732A (ko) * 2002-12-07 2004-06-12 한국전자통신연구원 홈게이트웨이 시스템에서의 동적 우선순위 큐잉 엔진 및방법과 그를 이용한 홈게이트웨이의 데이터 서비스 시스템

Also Published As

Publication number Publication date
KR20060078157A (ko) 2006-07-05

Similar Documents

Publication Publication Date Title
EP1538525A1 (en) ECC computation simultaneously performed while reading or programming a flash memory
US8589664B2 (en) Program flow control
KR970062948A (ko) 마이크로프로세서의 파워 에스티메이터
US8225293B2 (en) Method for supporting calibration parameters in an ECU
CN102667413A (zh) 旋转传感器的异常判断装置
JP2002371899A (ja) エンジン制御装置
RU2007106437A (ru) Способ, операционная система и вычислительное устройство для выполнения компьютерной программы
JP4538442B2 (ja) パイロット噴射制御方法及びその装置
KR100705956B1 (ko) 자동차의 엔진 제어 방법
KR100705955B1 (ko) 자동차의 엔진 제어 방법
JP2007064015A (ja) 信号出力装置及び電子制御装置
US9335749B2 (en) Semiconductor data processing apparatus and engine control apparatus
EP2341448A1 (en) An electronic control unit and a method of performing interpolation in the electronic control unit
EP2278459A1 (en) Faster computer boot method
US6047683A (en) Process and arrangement for controlling the fuel injection quantity for an internal-combustion engine in a vehicle
JP6834671B2 (ja) 電子制御装置
JP2008262340A (ja) デュアルコア向け自動コード生成装置
CN106930847B (zh) 一种跛行信息处理系统及发动机电子控制系统
KR0164491B1 (ko) 차량의 엔진 제어 방법
US20020189586A1 (en) Control system for internal combustion engine
US8443180B2 (en) Method for operation system startup
KR100273530B1 (ko) 상사점 태스크용 인터럽트 장치
JPH0610755A (ja) 内燃機関の運転パラメータに関係するプロセスを制御する装置
JP2001318701A (ja) 電子制御装置
KR100282904B1 (ko) 크랭크 축 위치 감지 신호 처리 장치 및 그 방법

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
FPAY Annual fee payment

Payment date: 20130321

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140320

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160324

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170323

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180323

Year of fee payment: 12