Field of application
[0001] The present invention relates to a hardware architecture of an automatic system for
driving injector of an internal combustion engine , in particular direct injection,
four-stroke engines with automatic determination of the angular position of the drive
shaft and of the operating phase.
[0002] More in particular, but not exclusively, the invention relates to an injection and/or
ignition driving system in internal combustion engines, of the type structured to
cooperate with an engine electronic control unit (ECU) by driving the corresponding
injection drivers.
Prior Art
[0003] As it is 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 to 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, on the basis of 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 decreasing 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, during 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] Accordingly, nowadays the current control units - which are also classified as ECU
(Electronic Control Unit) - are required to carry out increasingly complex and elaborated
control functions.
[0008] In the automotive field it is known the use ECU 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 drive shaft and by a tone wheel sensor of
the camshaft, so as to obtain the angular position of the drive shaft as well as the
engine operating phase.
[0009] A lot of parameters are required for a better actuation of the injection process,
controlled by the ECU or by the TPU co-processor. This implies a large computational
load, both by the ECU and by 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 case of ECU, or by the occurrence of certain events, in case of the TCU
co-processor.
[0011] In any case, a difference between the ideal injection time instant and the real time
in which it is actuated occurs, to the detriment of an accurate combustion, which
shall therefore generate a higher quantity of pollutants than expected.
[0012] The technical problem at the basis of the present invention is to devise a new hardware
architecture for an automatic driving system for injectors in internal combustion
engines, which architecture should exhibit such structural and functional features
as to allow a better management of the signals transmitted by the various sensors
depending on the engine control unit as well as a higher control over the means in
charge of the injection and/or the engine ignition step.
Summary of the invention
[0013] The solution idea at the basis of the present invention is to provide a hardware
module, operating in digital logic, which may be used as a peripheral device by the
ECU in order to reduce its computational load.
[0014] Such hardware module should have the task of actuating the injection process, that
is to say, following an injection profile stored therein.
[0015] In practice, the idea at the basis of the invention is to release the engine electronic
control unit (ECU) from the injection and/or ignition actuation.
[0016] On the basis of such a solution idea, the technical problem is solved by a hardware
architecture of an automatic injector driving system of the type mentioned above and
defined in the characterising part of claim 1 attached hereinafter.
[0017] The features and advantages of the architecture according to the invention will be
more evident 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
[0018]
- Figure 1 shows a schematic view of an endothermic injection engine associated to an
injector driving driver associated to a system for driving and managing the ignition
and/or injection process according to the present invention;
- Figure 2 shows a schematic block view of the architecture of the piloting system according
to the present invention;
- Figure 3 shows a schematic view of a detail of the architecture of Figure 2;
- Figure 4 shows a diagram having the same time basis with a set of profiles corresponding
to injection piloting signals for the system of the present invention;
- Figure 5 shows a wiring diagram of an injector driving circuit;
- Figure 6 shows a diagram with the time-based evolution of a PWM signal generated through
the system of the present invention;
- Figure 8 shows a schematic view of a state machine that illustrates the operation
of the driving system according to the invention (indicated with reference numeral
7 in figure 3);
- Figure 7 shows a further schematic view of a state machine that illustrates the operation
of a subsystem of the driving system (indicated with reference numeral 8 in figure
3).
Detailed description
[0019] With reference to the above figures, 1 globally and schematically indicates the hardware
architecture of an automatic system for driving and managing the injection and/or
ignition of an endothermic engine 2, in particular a direct-injection four-stroke
engine with automatic determination of the drive shaft angular position and of the
operating phase.
[0020] System 1 is associated to an ECU, not shown since it is a conventional one, is widely
used in automotive applications for controlling the ignition and/or injection of these
types of engines. System 1 is schematised in figure 1 by the "Injection manager" block.
[0021] The main task of system 1 is to releasing the Engine control ECU of the task of enabling
the piloting of the means in charge of the injection and/or ignition of engine 2.
[0022] In practice, the time instant in which injection or ignition should be actuated is
a critical parameter since the optimum combustion conditions depend on it to generate
the smallest quantity of polluting substances.
[0023] The object of the present invention is that of defining the architecture of a modular
hardware system which should generate a series of signals useful for the drivers 3
in charge of driving the injectors. Given the variety of types of these drivers 3
and of the possible applications using a same driver, system 1 can be programmed so
as to generate driving signals having the desired time pattern. This makes the system
according to the invention very flexible and reusable in several applications.
[0024] Thanks to a standard I/O interface it is possible to store the sequence of the output
logical states inside the module; such states may be of the PWM type, bothsteady at
a logical level "0" or "1".
[0025] The internally stored injection profile can be described on the basis of angles and/or
times, thereby allowing the shift from a logical output level to the other when the
drive shaft reaches a fixed position, or after a certain time interval from the previous
situation.
[0026] This peculiarity of system 1 makes it usable both in applications where the quantity
of fuel to be injected is calculated in terms of time in which the injector is open,
and in applications wherein the quantity of fuel is calculated in terms of the drive
shaft angular position.
[0027] Figure 1 shows a layout of the invention.
[0028] System 1 exhibits a plurality of inputs and outputs described in the following Table
1:
Signals |
Description |
Input |
|
Control_bus |
Standard communication interface. |
Address_bus |
|
Data_bus (I/O) |
The Data bus is bidirectional. |
cam_phase |
This indicates the engine operating phase |
teeth_cnt |
This indicates the drive shaft angular position with the precision given by the number
of teeth of the drive shaft tone wheel. |
i_teeth |
This indicates an estimated angular position between two teeth of the drive shaft
tone wheel |
measured_diag |
Diagnostic signals |
start |
Start signal for module internal state machines |
Output |
|
curr_out |
STEADY signals |
pwm_out |
PWM signals |
Interrupt_inj |
Interrupt signal |
start_dec |
This indicates if the internal start register is activated |
[0029] The output signal "start_dec" can be connected to the input signal "start" to start
the entire system by writing on the internal register "start", as highlighted by the
broken line between the two signals in figure 1.
[0030] System 1 comprises three modules 4, 5 and 6, each performing a specific function
in order to reach the object of the present invention. 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. Such board may also house the engine ECU.
[0031] Of course, nothing prevents system 1 and the ECU from being realised on a single
integrated circuit of the "system on chip" type, even maintaining their functional
independence.
[0032] A general diagram of the hardware architecture of the driving system 1 is shown in
Figure 2.
[0033] The "Injection manager" block has a modular structure and comprises the three modules
4, 5 and 6, respectively called "dec_injection", "inj" and "pend_inj". Figure 2 shows
such modules and their interconnections.
[0034] The task module 4 "dec_injection" should perform consists in providing a standard
interface toward the ECU in order to exchange signals with such engine control units
to regulate the activity of the "Injection manager"; this is obtained by suitably
forcing the value of a set of registers internal to module 4 "dec_injection".
[0035] The values of the above registers represent the configuration parameters of module
5 "inj" which is the core of the entire system 1.
[0036] This module 5, during normal operation, forces a second set of registers internal
to module 4 "dec_injection" from which it is possible to trace the internal status
and to the results of module 5 "inj".
[0037] The set of signals
curr_out and
pwm_out allows the driving of a wide variety of car injector drivers 3 in order to actuate
the desired injection profiles.
[0038] The task of module 6 "pend_inj" consists of generating an interrupt signal toward
the engine injection control unit once the error signals generated by module 5 "inj"
have been provided in input.
[0039] The generation of an interrupt signal also defines the value of the related register
internal to module 4 "dec_injection", from which it is possible to detect the type
of error generated by module 5 "inj".
[0040] The operation of module 4 "dec_injection" will now be described in deeper detail.
[0041] The task of module 4 consists of providing a standard Input/Output interface toward
the ECU controller, so as to define the functionality of system 1 by suitably programming
the registers embedded therein. Moreover, it transfers the value of these registers
to module 5 "inj".
[0042] The following tables 2, 3, 4 and 5 describe the registers embedded in module 4 "dec_injection";
these registers can be read/written via the standard interface:
Table 2:
Register Type |
Description |
Output to module 5 "inj" |
|
start |
Its status is reported by the output "start_dec" |
stop |
Stops the state machine implemented in "inj" restoring its original status waiting
for a new start. |
presc_conf |
Prescaler of the timer internal to module "inj" |
period |
Period of the PWM signals to be generated |
duty_high |
Table containing a set of duty-cycle values of the PWM signals to be generated |
security |
This indicates if the security condition is enabled |
compare_value |
Watchdog value |
time_diag |
This indicates the instants in which diagnostics should be carried out |
cfg_diag |
This indicates if diagnostics should be carried out |
index_diag |
This indicates the element of the time_diag signal to be used for diagnostics |
expected_diag |
This indicates the value expected fromthe diagnostic check |
cfg_diag_sec |
This indicates if diagnostics should be carried out in security condition |
index_diag_sec |
This indicates the element of the time_diag signal to be used for diagnostics in security condition |
expected_diag_sec |
This indicates the value expected from the diagnostic check in security condition |
Table 3:
Configuration data for the injection profiles to be actuated in normal conditions |
time_prof |
Table containing the instants of variation of the injection profile |
profile |
Table containing the configuration values of signals curr_out and pwm_out for every instant of variation of the injection profile |
cfg_time_prof |
This indicates whether the actuation of the injection profile should be based on time
or angles |
cam_phase_conf |
This indicates the phase in which injection should be carried out |
num_shape |
Number of shapes forming the injection profile |
Table 4:
Configuration data for the injection profiles to be actuated in security condition |
time_prof_sec |
Table similar to time_prof but valid in security condition |
profile_sec |
Table similar to profile but valid in security condition |
cfg_time_prof_sec |
This indicates whether the actuation of the injection profile in security condition
should be based on time or angles |
cam_phase_conf_sec |
This indicates the phase in which injection should be carried out in security condition |
num_shape_sec |
Number of shapes forming the injection profile in security condition |
Table 5:
Output to "pend_inj" |
|
Mask |
Interrupt mask |
Input from "inj" |
|
stato_out |
This allows tracing the "inj" state |
cfg_pwm |
This indicates the current configuration of module "pwm_inj" |
curr_out |
This indicates the current configuration of the steady driver driving signals |
Input from "pend_inj" |
|
pending |
This indicates the type of error occurred |
[0043] The operation of module 5 "inj" shall now be described in deeper detail.
[0044] The task of such module 5 consists of actuating the injection process according to
the stored profile, which indicates both the time the injection should start and the
quantity of fuel to be injected during the process. An example of injection profile
to be actuated, intended as current profile to be applied to the injector is shown
in figure 4.
[0045] On the other hand, an example of circuit used to generate the desired current profile
is shown in figure 5. This type of electronic circuits, known as power drivers, can
be driven by system 1 object of the present invention.
[0046] The circuit of figure 5 substantially is a bridge circuit wherein the current flow
fed toward the injector is regulated by a first power transistor T1, driven by a signal
P, and by a second transistor T2, driven by a PWM signal.
[0047] A third transistor T3, driven by a signal W, allows to close the current path toward
earth, when needed.
[0048] In fact, signals
P, applied to the gate of transistor T1, W, applied to the gate of transistor T3, and
PWM, applied to the gate of transistor T2, allow to adapt the current driving of a wide
variety of drivers for car injectors in a very flexible manner.
[0049] Moreover, this object is achieved by the architecture of figure 3, showing the internal
structure of module 5 "inj", comprising a main block 7 indicated with the abbreviation
"inject_fsm", and an auxiliary block 8 "pwm_inj", whose purpose is that of generating
the desired PWM signals through configuration commands provided by the main block
7 "inject_fsm".
[0050] The operation of block 8 "pwm_inj" shall now be described in deeper detail.
[0051] The task of such block 8 is that of generating a square wave with desired duty-cycle,
for example like the one shown in figure 6, with the possibility of obtaining both
a high logical value and a low logical value in output.
[0052] The input signals of block 8 "pwm_inj" are as follows:
clk,
not_reset,
start,
period,
duty_high,
config.
[0053] The output signal is
pwmout. The behaviour of module 6 can be described with a state machine 9 like that shown
in figure 7.
[0054] The configuration parameters that allow to have the desired signal are given by signals
period, duty_high and
config.
[0055] The signals
period and
duty_high respectively indicate the period and the duty-cycle of the signal that must be generated.
[0056] The signal
config allows to select whether the signal to generate should be PWM or a steady signal
at the logical value 0 or 1.
[0057] The signal
duty_high, on the other hand, is a table wherein the elements contain a predetermined series
of duty-cycle values programmable by the user.
[0058] The signal
config is used as index of the table indicated by
duty_high to select the desired duty-cycle value; it can take two further values, which respectively
indicate whether the signal
pwmout must be a steady signal at the logical level 0 (
config = min_val) or at the logical level 1 (
config = max_val).
[0059] Upon start-up, or after resetting system 1, the state machine 9 is in its initial
status, indicated in the figure by "idle".
[0060] If the signal
config takes either the value min_val or the value max_val, the state machine 9 remains
in the "idle" status and the signal
pwmout is forced at the logical value 0 or 1.
[0061] On the other hand, if
config takes a value comprised between min_val and max_val, by activating the signal
start, the state machine 9 passes through the state "high_val" (transition T_0). In this
status, the signal
pwmout is forced at the logical level 1, a counter/timer is started and checked to see that
it reaches the value indicated by the element
duty_high(config); when this condition occurs, the state machine 9 passes through the state "low_val"
(transition T_2), the signal
pwmout is forced at the logical level 0 and the timer is checked to see that it reaches
the value indicated by the signal
period.
[0062] When this condition occurs, the timer/counter is reset and the state machine 9 passes
through the state "high_val" (transition T_3) so as to continue generating the desired
signal. From the states "high_val" and "low_val" it is possible to stop the operation
of the state machine and bring it back to the idle status by disabling the signal
start (transitions T_1 and T_4).
[0063] The behaviour of block 7 "inject_fsm" embedded in module 5 is described through a
state machine 10 shown in figure 8.
[0064] Block 7 "inject_fsm" can work in two modes, according to the status of signal
security. These two modes are identical as regards the execution, but they use two different
data sets; if the security mode is disabled, the set of data taken into consideration
is that of table 2; on the other hand, if the security mode is enabled, the set of
data taken into consideration is that of table 3.
[0065] The behaviour of the state machine 10 is described in this way with reference to
the normal working condition only, and considering the injection profile shown in
figure 4.
[0066] The initial status of the state machine 10 is, also in this case, called "idle",
a status that is reached upon start-up and/or after resetting system 1.
[0067] By activating the signal
start, the state machine 10 passes through the status "stand-by" (transition T_0), wherein
the configuration of outputs
curr_out and
pwm_out is given by the first element of the table
profile and it remains in such status until the value of the first element of table
time_prof matches either the value of the internal timer, if the injection must occur on a
time basis, or the values indicated by the signals
teeth_cnt and
i_teeth, if the injection must occur on an angle basis.
[0068] This event coincides with the point α of the injection profile shown in figure 4.
When this event occurs, the state machine passes through the state "shap_succ" (transition
T_1), where the next elements of tables
profile and
time_prof are selected, to return to the "stand-by" status again (transition T_2) and remain
there until the event indicated with b in figure 4 occurs.
[0069] The transitions between the "stand-by" status and the "shape_succ" status follow
one another up to considering the last elements of tables
profile and
time_prof (event indicated with e in figure 4).
[0070] At this point, the state machine passes through the status "fine_shape" (transition
T_3), where an interrupt is generated to indicate that the injection process has been
completed and the system is waiting for the signal
start to be disabled so as to bring the state machine back to its "idle" status (transition
T_4), where the next injection is expected.
[0071] Block 7 "inject_fsm" of module 5 allows to carry out a diagnostic process during
the injection process, and this allows to check if this is being executed properly.
[0072] The register
cfg_diag contains a flag for every element of the table
time_prof that indicates, if it is active, that the diagnostics should be carried out after
the event indicated by the current element of
time_prof.
[0073] If a flag is active, the corresponding element of table
index_diag indicates an element of the table
time_diag that represents the time that must be waited for from the occurrence of the event
indicated by the table
time_prof before comparing the diagnostic signal
measured_diag, transmitted by the injector drive, with the signal
expected_diag, which indicates the expected value in case of correct operation. An interrupt is
then generated if the value of
expected_diag differs from that of
measured_diag.
[0074] It is also possible to activate an internal timer-watchdog to report any problems
in case nothing occurs for a fixed time interval and when in the states of "stand-by"
and "shape_succ"; the signal
overflow indicates the maximum limit to be reached by the internal timer-watchdog to report
this type of problem.
[0075] The task of the auxiliary block 8 "pend_inj" associated to the main block 7 "inject_fsm"
embedded in module 5 consists of generating an interrupt signal toward the ECU controller.
[0076] Such block 8 receives an input signal from module 5 "inj" indicating the type of
error occurred, and it generates a signal for module 4 "dec_injection" to set properly
the "pending" register, whose reading allows the controller to determine the type
of error so as to decide the action to be taken.
[0077] Thanks to the features described above, the driving system 1 can also be applied
to a variety of engines, each provided with different injector driving drivers.
[0078] The piloting system 1 can be adapted to the wide variety of types of injection profiles
for car injector drivers used in the automotive field, this thanks to the wide configurability
of the parameters allowed by modules 4, 5 and 6. This makes the system according to
the invention very flexible and reusable in several applications.