(19)
(11) EP 1 424 479 A1

(12) EUROPEAN PATENT APPLICATION

(43) Date of publication:
02.06.2004 Bulletin 2004/23

(21) Application number: 02425728.9

(22) Date of filing: 28.11.2002
(51) International Patent Classification (IPC)7F02D 41/34, F02P 7/077
(84) Designated Contracting States:
AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LI LU MC NL PT SE SK TR
Designated Extension States:
AL LT LV MK RO SI

(71) Applicant: STMicroelectronics S.r.l.
20041 Agrate Brianza (Milano) (IT)

(72) Inventors:
  • Di Cola, Eusebio
    98168 Messina (IT)
  • Rivoli, Federico
    98168 Messina (IT)
  • Ticli, Lucio
    95037 San Giovanni La Punta (Catania) (IT)
  • Cintolo, Eugenio
    97100 Ragusa (IT)

(74) Representative: Botti, Mario 
Botti & Ferrari S.r.l., Via Locatelli, 5
20124 Milano
20124 Milano (IT)

   


(54) Electronic device architecture for determining the angular position of an engine shaft in internal combustion engines


(57) The invention relates to an electronic device for determining the angular position of a driving shaft (3) in internal combustion engines (2), of the type intended to cooperate with an engine electronic control unit (ECU) and receiving an input signal emitted by a sensor (8) of a tone wheel (7) associated to the driving shaft (3).
Said device (1) has the task of calculating the angular position of the driving shaft by analysing the signal transmitted by the tone wheel of the driving shaft, thereby releasing the engine electronic control unit (ECU) from the monitoring of the driving shaft angular position to reduce its computational load and allow to treate the signal transmitted by a plurality of tone wheels highly widespread in the automotive field.




Description

Field of application



[0001] The present invention relates to an architecture of an electronic device architecture for determining the angular position of an engine shaft in internal combustion engines.

[0002] More in particular, but not exclusively, the invention relates to a device of the above type applied on a direct injection, four-stroke engine with automatic determination of the angular position of the driving shaft and of the operating phase, but the following description refers to this specific field of application for the only purpose of simplifying the explanation.

Prior Art



[0003] As well known in this specific technical field, the use of electronic control units for injection management in modern car engines has become usual. Reference shall be made, for example, to the European patent application No. 01830645.6 by the same Applicant.

[0004] Their use has become necessary to control some engine parameters in order to decrease the harmful emissions produced by the engine itself, according to the regulations in force in many industrialised Countries, which set very restrictive limits to the maximum emissions allowed.

[0005] To comply with these limits imposed by law, major automotive companies are increasing the production of direct injection engines that allow the lowering of the level of pollutants released in the environment and the improving of the engine performance. However, these engines require a more complex and advanced control system.

[0006] The recent introduction of multi-injection systems, for which the parameters to be considered for the control phase are characterised by more pressing time specifications, requires the use of a certain number of sensors of various type, whose signals are always processed by the current control units.

[0007] As a consequence, nowadays said control units - which are also classified as ECU (Electronic Control Unit) - are required to execute increasingly complex and elaborated control functions.

[0008] In the automotive field it is known to use ECU control units provided with a co-processor of the TPU (Time Processor Unit) type, specifically intended to be used for processing signals transmitted by a tone wheel sensor of the driving shaft and by a tone wheel sensor of the camshaft, so as to obtain the angular position of the driving shaft as well as the engine operating phase.

[0009] The parameters required for a better actuation of the injection process controlled by the ECU or by the TPU co-processor are several. This implies a large computational load on both the ECU and the TPU co-processor.

[0010] In fact, both units manage a large number of signals having different priority levels. These signals must in any case be managed by software routines started by interrupt signals in the case of ECU, or by the occurrence of certain events in the case of the TCU co-processor.

[0011] In any case, there occurs a difference between the ideal injection time instant and the real time in which it is actuated, to the detriment of an accurate combustion, which shall therefore generate a higher quantity of pollutants than what expected.

[0012] The technical problem at the basis of the present invention is that of devising an electronic device for determining the angular position of a driving shaft in internal combustion engines, which should exhibit such structural and functional features as to allow automatic computing of the driving shaft angular position by directly analysing the signal transmitted by the tone wheel.

Summary of the invention



[0013] The solution idea at the basis of the present invention is that of providing a hardware module which may be used as a peripheral device by the ECU in order to reduce its computational load. Such hardware module has the task of executing the calculation of the driving shaft angular position by analysing the signal transmitted by the driving shaft tone wheel sensor.

[0014] In substance, the idea at the basis of the invention is that of releasing the engine electronic control unit (ECU) from the monitoring of the driving shaft angular position in order to relieve its computational load and allow to treate the signal transmitted by a plurality of tone wheels highly widespread in the automotive field, thereby making the control unit easy to be associated to any engine.

[0015] The features and advantages of the device according to the invention will appear more clear from the following description of an indicative and non-limiting example of embodiment, made with reference to the attached drawings.

Brief description of the drawings



[0016] 
  • Figure 1 shows a schematic view of an endothermic injection engine associated to an electronic device realised according to the present invention for determining the angular position of the driving shaft;
  • Figure 2 shows a detailed schematic view of a digital signal emitted by a tone wheel associated to the driving shaft;
  • Figure 3 shows a detailed schematic view of the device according to the invention;
  • Figure 4 shows the layout of a state machine that describes the operation of the device of Figure 3;
  • Figure 5 shows a diagram with the type of digital signal treated by the device according to the invention.

Detailed description



[0017] With reference to the above figures, 1 globally and schematically indicates the structure of an electronic device realised according to the present invention for determining the angular position of a driving shaft 3 in internal combustion engines 2, in particular but not exclusively, a direct-injection four-stroke engine with automatic determination of the driving shaft angular position and of the operating phase.

[0018] Device 1 is associated to an ECU, not shown since it is a conventional one as it is widely used in automotive applications for controlling the ignition and/or injection of these types of engines. Device 1 is schematised in figure 1 by the "Tone wheel manager" block.

[0019] The main task of the electronic device 1 is that of releasing the electronic control unit from the monitoring of the driving shaft angular position.

[0020] Device 1 has the task of elaborating electric signals to obtain the angular position of the driving shaft. Such device 1 receives an input signal from a sensor 8 of a tone wheel 7, which is integral in rotation with the driving shaft 3.

[0021] Tone wheels comprise a predetermined number n of teeth arranged on the circumference of wheel 7 and equidistant from one another. A small group of adjacent teeth m is omitted for defining a point of reference on the wheel. Sensor 8 generates a signal from which device 1 searches the point of reference and emits a signal as the reference is found, and a further signal indicating how many teeth have passed after the point of reference.

[0022] More in particular, the teeth counter indicates the position of the driving shaft with an accuracy of (360/n)°. To obtain a higher accuracy, device 1 generates a further signal that indicates the intermediate position between two teeth with a default resolution.

[0023] In substance, the hardware module devised with the present invention receives an input signal from a tone wheel sensor and provides a series of output signals from which it is possible to trace the angular position of the driving shaft given by a known point. It was decided to use as tone wheels those that must be used in the automotive field, practically those having equidistant teeth with the omission of a certain number of adjacent teeth to generate the known point reference. This type of tone wheels generate a digital signal as that shown in Figure 2.

[0024] Figure 1 shows a layout of the application of the invention. The absence of pulses occurs at the tone wheel holes (absence of teeth). Actually, the main task of device 1 "Tone wheel manager" is to detect properly this reference that identifies a particular position of the driving shaft.

[0025] Device 1 "Tone wheel manager" comprises three modules 4, 5 and 6, also called "decoder_fonica", "fsm_fonica" and "pend_inter", respectively, each intended to perform a predetermined function described in detail hereinafter. The entire system 1 is structurally independent and can be realised as integrated circuit and be housed on a standard bus-interconnection and support board. This board may also house the engine ECU.

[0026] Of course, nothing prevents system 1, as well the ECU, from being realised on a single integrated circuit of the "system on chip" type, even maintaining their functional independence.

[0027] A general diagram of the hardware architecture of device 1 is shown in Figure 3.

[0028] The following table 1 reports the input and output I/O signals of device 1.
Table 1:
Signals Description
Input  
Control_bus Standard I/O communication interface.
Address_bus
Data_bus (I/O) The Data bus is bidirectional.
fonica_signal Signal generated by the tone wheel sensor circuit.
Output  
n_tooth_holes Total number of teeth and holes
lock_f This indicates that the point without teeth in the tone wheel has been found.
lock_fon This indicates that the programmed number of revolutions of the driving shaft has been performed from the moment of the activation of the lock signal.
tooth_num This indicates the current number of tooth of the tone wheel. This signal allows tracing the angular position of the driving shaft after the activation of the "lock" signal.
i_teeth This indicates an intermediate
  position between two adjacent teeth of the tone wheel with a predetermined accuracy.
interruption Interrupt signal.


[0029] The task performed by module 4 "decoder_fonica" consists in providing a standard interface toward the ECU, in order to allow the controller embedded into the control unit to manage some registers internal to module 4 "decoder_fonica".

[0030] The following table 2 describes the registers embedded in this module 4 that can be accessed in reading and writing mode through the standard interface.
Table 2:
Register Description
Output to "fsm_fonica"  
start Starts the state machine implemented in "fsm_fonica".
stop Stops the state machine implemented in "fsm_fonica" restoring its original status waiting for a new start-up.
overflow Sets the waiting time limit so that the lack of teeth in this time interval indicates a system error status.
num_of_teeth This indicates the tone wheel number of teeth.
num_of_holes This indicates the tone wheel number of holes.
num_of_check This indicates the number of revolutions of the driving shaft to be waited after the lock before passing to the injection phase.
delta This indicates the extent of the interval around the time instant in which the system expects a tone wheel tooth.
cfg_filter Enables or disables the digital filter to be appled on the signal transmitted by the tone wheel.
cfg_check This indicates whether it is necessary to reset, in case of error, the count of already executed checks.
Output to "pend_inter"  
mask_inter Interrupt mask
Input from "fms_fonica"  
error_at This indicates the number of tooth where the last error occurred.
tooth_num This indicates the number of the current tone wheel tooth.
i_teeth This indicates an intermediate position between two adjacent teeth of the same tone wheel with a fixed accuracy.
frt Free running timer.
stato_out This indicates the current status of the state machine of the fsm_fonica".
diffdente_out This indicates a value from which it is possible to trace the revolution speed of the driving shaft with the help of the following expression:

where f is the system clock frequency (clk).
Input from "pend_inter"  
pending This indicates the type of error that has occurred.


[0031] The values of these registers represent the configuration parameters of module 5 "fsm_fonica" which is the core of the entire device 1. Such module 5, in turn, during normal functioning, forces the values of a second set of registers internal to module 4 "decoder_fonica", from which it is possible to trace the internal status and the results of module 5 "fsm_fonica".

[0032] The set of signals lock_f, lock_fon, tooth_num and i_teeth allows to identify at any time the angular position of the driving shaft.

[0033] The task of the third module 6 "pend_inter" consists of generating an interrupt signal toward the engine ECU once the error signals generated by module 5 "fsm_fonica" have been received in input.

[0034] In substance, the task of this third module 6 "pend_inter" consists of generating an interrupt signal toward the controller of the ECU when a signal indicating the type of error occurred is received in input from module 5 "fsm_fonica". In turn, module 6 generates a signal for module 4 "decoder_fonica" for properly setting the "pending" register, from whose reading the controller of the ECU determines the type of error so as to decide the action to be taken.

[0035] The emission of the interrupt signal, therefore, also sets the related register internal to module 4 "decoder_fonica", from which it is possible to determine the type of error generated by module 5 "fsm_fonica".

[0036] Below is a more detailed description of the operation of module 5 "fsm_fonica".

[0037] The task of module 5 "fsm_fonica" consists of detecting the driving shaft reference and then providing its position moment by moment. The reference search and the subsequent calculation of the position occur by constantly monitoring the signal transmitted by the tone wheel (fonica_signal).

[0038] After that, as the start signal (start) is received, module 5 "fsm_fonica" waits for the arrival of two teeth in order to determine a first prediction of the time interval where the next tooth should be expected. The search for the point in the tone wheel where m teeth are missing starts at this point. Once such reference has been detected, module 5 emits a corresponding signal and the position of the driving shaft 3 is indicated by a tooth counter that begins counting from the point of reference.

[0039] The input signals of module 5 "fsm_fonica" are indicated in Table 2 in the section 'Output toward "fsm_fonica"'; moreover, the signal fonica_signal included among the input signals of device 1 in Table 1 should be considered, as well.

[0040] Output signals are also indicated in Table 2 in section 'Input from "fsm_fonica"'; moreover, the following signals should also be considered: ready, lock_f, lock_fon, included among the output signals of device 1 in Table 1.

[0041] Figure 4 schematically shows a state machine 10 that describes the functioning of module 5 "fsm_fonica".

[0042] The initial status of the state machine 10 is called "idle" and this is the status upon the system start-up and/or after a reset.

[0043] By activating the start signal, the state machine 10 passes through the "first_tooth" status (transition T_1), where the first pulse from the tone wheel sensor is expected.

[0044] In this status, the count of a timer frt starts and the ready signal is disabled, simply meaning that device 1 is on.

[0045] Upon the reception of the first pulse of the fonica_signal signal, the state machine 10 passes through the "second_tooth" status (transition T_2), where a second pulse is expected. During such transition, the current value of the timer is stored to the count1 register, indicating the instant in which the pulse from the fonica_signal signal has been received.

[0046] When the second pulse of the fonica_signal signal is received, the current value of the timer is stored to the count2 register, and the state machine 10 shifts to the "search_lock" status (transition T_3).

[0047] In this status, the system checks that any subsequent pulse of the fonica_signal signal occurs within a fixed temporal window or that, within such window, no pulse occurs, to pass through the tone wheel point of reference search status.

[0048] The temporal window is thus determined: the difference (count2-count1) is added to the count 2 value to determine the centre of the interval A when the next pulse is expected; the extremes of the the interval are given by the delta signal, which indicates the number of sub-intervals by which to move from the centre rightwards and leftwards; the extent of the sub-interval is given by the ratio (count2-count1) / n, with fixed n. The whole is schematically shown in Figure 5.

[0049] On the other hand, if in the "search_lock" status for the first time, this status is maintained until all pulses of tone wheel 7 have been received within the related temporal window and the transition to the "maybe_hole" status (transition T_4) occurs when there are no pulses left in the temporal window which is being monitored. The system returns to the "idle" status (transition T_5) to start the reference search again if a pulse not falling within the related temporal window is received.

[0050] The search for the remaining "holes" continues in the "maybe_hole" status. Each time interval that must elapse without receiving pulses is calculated by assuming that in the previous interval a pulse occurred exactly at the centre of the interval, and the extent considered is given by the delta parameter multiplied by the number of missing teeth.

[0051] After checking the last "hole", a pulse is expected within the related temporal window; in the positive case, the state machine 10 passes through the "check_lock" status (transition T_6) where the timer is restarted, the tooth counter is reset and the lock_f signal is activated to indicate that the reference has been found. In the negative case, the state machine passes through the "idle" status (transition T_7). Transition from this status depends on the num_of_check register value; if it has been programmed with a number higher than zero, the system returns to the "search_lock" status (transition T_9) to execute a further check on the identification of the point of reference for a number of times equal to the programmed value.

[0052] In this further case, it is also possible to carry out a cross-check with the tooth counter, which starts upon the activation of the lock_f signal. With the activation of the lock_f signal, further checks are performed, depending on the cgf_filter and cfg_check register programming. With the cfg_check equal to one, in case of error, the return to the "idle" status does not reset the counter that indicates the number of times the check on the point of reference location has been already carried out. With the cfg_filter equal to one, the transition to the "idle" status does not occur, but a signal is generated to indicate the type of error occurred, so as to generate an interrupt toward the controller to decide the action to be taken.

[0053] Once the check of the location of the point of reference has been carried out the desired number of times, the system passes through the "injection" status (transition T_8), where the lock_fon signal is activated as well. In the three states of "injection", "maybe_hole_inj", "check_lock_inj" the state machine operates in a way similar to the three states of "search_lock", "maybe_hole", "check_lock" after detecting the point of reference (activation of the lock_f signal): the check of the proper succession of teeth and their absence is carried out in the same way. At any time, from any state, by activating the stop signal, the state machine 10 passes through the "stop_state" status (transition T_16); when this signal is interrupted, it passes through the "idle" status (transition T_15).

[0054] Thanks to the features described above, device 1 can be applied on any type of engine provided with tone wheel and is capable of being adapted to the wide variety of tone wheels for driving shafts used in the automotive field.

[0055] The above thanks to the wide parameter configurability of modules 4, 5 and 6 that make the device, according to the invention, very flexible and usable in several applications.


Claims

1. Architecture of an electronic device for determining the angular position of a driving shaft (3) in internal combustion engines (2), of the type intended to cooperate with an engine electronic control unit (ECU) and receiving an input signal emitted by a sensor (8) of a tone wheel (7) associated to the driving shaft (3), characterised in that it comprises:

- a first I/O interface module (4) embedding a plurality of registers and receiving signals from said engine control unit (ECU);

- a second module (5) bi-directionally connected to the first module (4) and receiving the input signal emitted by said sensor (8) to detect a reference on the driving shaft (3) and provide its angular position moment by moment;

- a third module (6) capable of emitting an interrupt signal toward said ECU on the basis of an error signal received from said second module (5).


 
2. Device according to claim 1, characterised in that the registers of said first module (4) can be accessed in reading and writing mode by said ECU via a standard interface.
 
3. Device according to claim 1, characterised in that in said second module (5) the search of the reference and the subsequent calculation of the driving shaft (3) position occur by constantly monitoring the signal (fonica_signal) transmitted by the sensor (8) of the tone wheel (7).
 
4. Device according to claim 1, characterised in that a second set of registers internal to the first module (4) contains data relating to the internal status and the results of the second module (5).
 
5. Device according to claim 1, characterised in that the generation of an interrupt signal also updates a related register internal to the first module (4) from which it is possible to trace the type of error generated by the second module (5).
 
6. Device according to claim 1, characterised in that the registers embedded in said first module (4) are:
start Starts the state machine implemented in "fsm_fonica".
stop Stops the state machine implemented in "fsm_fonica" restoring its original status waiting for a new start-up.
overflow Sets the waiting time limit so that the lack of teeth in this time interval indicates a system error status.
num_of_teeth This indicates the tone wheel number of teeth.
num_of_holes This indicates the tone wheel number of holes.
num_of_check This indicates the number of revolutions of the driving shaft to be waited after the lock before passing to the injection phase.
delta This indicates the extent of the interval around the time instant in which the system expects a tone wheel tooth.
cfg_filter Enables or disables the digital filter to be appled on the signal transmitted by the tone wheel.
cfg_check This indicates whether it is necessary to reset, in case of error, the count of already executed checks.
error_at This indicates the number of tooth where the last error occurred.
Tooth_num This indicates the current number of tooth of the tone wheel.
i_teeth This indicates an intermediate position between two adjacent teeth of the same tone wheel with a fixed accuracy.
Frt Free running timer.
Stato_out This indicates the current status of the state machine of the "fsm_fonica".
Diffdente_out This indicates a value from which it is possible to trace the revolution speed of the driving shaft with the following expression:

where f is the system clock frequency (clk).
pending This indicates the type of error occurred.

 
7. Device according to claim 3, characterised in that said second module (5) checks that every subsequent pulse of the signal (fonica_signal) occurs within a fixed temporal window or that no pulse is received within said window to pass through the tone wheel (7) point of reference search status.
 
8. Device according to claim 7, characterised in that said temporal window is determined as difference (count2 - count1) between the subsequent instants of reception of said signal (fonica_signal), also determining the centre of an interval in which the next pulse is expected; the extent of said interval being calculated as ratio (count2-count1) / n, with n equal to the number of teeth of the tone wheel.
 




Drawing



















Search report