Being described as follows of the preferred embodiment of the invention:
Referring now to above-mentioned each figure explanation the present invention in detail.
Fig. 1 represents the embodiment's of ignition controler of the present invention block diagram.Ignition controler in the present embodiment can be used on the four-stroke double cylinder IC engine, and each cylinder has a spark coil.
In Fig. 1, the battery on the power circuit 4 is received in 1 expression of number, provides energy by it to each circuit.Number 2 is cooling-water temperature sensors.Temperature by its detection of engine cooling water.The simulation signal of battery 1 and cooling-water temperature sensor 2 after simulation one numeral (A/D) transducer 5, is finished simulation one numeral (A/D) conversion.Each data after simulation one numeral (A/D) conversion in the predetermined moment, are sent into CPU (central processing unit) (CPU) 10.
The set of number input signal of the various running statees of numeral 6 expression detection of engine, idling conditions and parameter etc. includes interior.This group digital signal 6 is sent into CPU10 through digital input interface 7.
Numeral 8 expression crank reference position detectors, it comprises that a magnet rotor 80 that rotates synchronously with engine crankshaft and a magnetic are examined and picks up sensor 81.Magnet rotor 80 has several flanges, and flange is provided with the interval of 45 crank shaft angle, and the width that a flange wherein arranged is wideer than other several flanges, and it be spaced apart 90 °.In the time of when each flange picks up sensor 81 by the magnetic inspection near, shown in Fig. 2 (a),, produce a positive pulse and a negative impulse respectively at the two ends of each flange.This pulse produces the crank reference position pulse shown in Fig. 2 (b) after waveform shaping circuit 9 shapings.From the bigger pulse of one of them pulse width.Respectively these reference position pulses are numbered in order (NO.1 is to NO.7).
Numeral 23 expression auto-counters (a/free-running counter), it can finish counting operation in the cycle of reserving in advance (for example, being interval section with 1 μ s in the present embodiment).Marginal detector of numeral 21 expressions, it detects the pulse front edge and the edge, back of each the reference position pulse shown in Fig. 2 (b), so that send interrupt signal to CPU10, but also the timing signal that the forward position can be caused is given the first latch cicuit 22(latch circuit).After marginal detector 21 was sent signal into latch cicuit 22, this circuit remained unchanged the count value of auto-counter 23.In other words, auto-counter 23 just changes when the forward position of each reference position signal value constantly remains to the pulse front edge arrival of next reference position signal always.
After CPU10 receives these signals, just can with the velocity fluctuation value input of corresponding mean speed and motor, and calculate ignition advance angle and stagnation time or actuation duration according to the program that is pre-existing in the read-only memory (ROM) 11.According to these result of calculation, can calculate ignition timing data and the actual excitation startup timing data that produces.Also will introduce in detail below this operation.Numeral 12 expression read/writable memory device or random-access memory (ram)s, with its storage from a moment to another moment fast-changing data or the like.
Numeral 24 expressions second latch cicuit starts timing data and ignition timing data by the excitation that it keeps CPU10 to send here.Excitation starting timing data is data relevant with TON.And TON is the time interval shown in Fig. 2 (c), and it is a period of time interval from the NO.7 pulse front edge to the excitation starting point; And these data will be inserted second latch cicuit 24 in a bit of time after the NO.7 pulse front edge occurs.In addition, the ignition timing data are one and time interval t
θRelevant data, t
θTime interval is a period of time interval from the NO.1 pulse front edge to excitation termination or ignition timing; These data should in a bit of time after the NO.1 pulse front edge, be inserted second latch cicuit 24.Value in storage signal in second latch cicuit 24 and the auto-counter 23 constantly compares by comparator 25, and when both were consistent, comparator 25 produced the pulse shown in Fig. 2 (b).This pulse that comparator 25 is produced is added on the input end of clock of trigger 30.In addition, shown in Fig. 2 (e), CPU10 also is added to a pulse on the D end of trigger 30, and this pulse and NO.7 pulse front edge then are elevated to high level when synchronous.As then reduce low level when synchronous with the NO.1 pulse front edge.When pulse was added on the input end of clock of trigger 30, if the D end is in high level, then the Q output terminal also was in high level; If the D end is in low level, then the Q output terminal drops to low level.So, trigger 30 just is added in the ignition control signal shown in Fig. 2 (c) on the power transistor 51, and transistor switches on and off successively, with point of excitation fire coil 61.
Fig. 3 (A) is illustrated under the low load condition, the changing value of engine speed, and Fig. 3 (B) is illustrated under the higher load condition, the changing value of engine speed.With N
2Be illustrated in the mean speed in 45 ° of intervals of before top dead center (BTDC), same, with N
1To N
7The mean speed of representing each crank position.Can obtain thus, because explosion stroke makes engine speed rise to N from N, and because compression stroke makes speed drop to N from N, under the low load condition shown in Fig. 3 (A), these liftings change all very little.So, actual velocity fluctuation that can't see motor.But under the higher load condition shown in Fig. 3 (B), because explosion stroke makes rotating speed from N
2Rise to N
6And because compression stroke makes rotating speed from N
7Drop to N
2, lifting at this moment changes clearly, so the pulse of engine speed is very big.
This relation means, the amplitude size of engine speed pulse is actually and is determined by payload.Thereby this just shows: measure the pulse amplitude (in the present embodiment, for the maximum value of pulsating quantity and minimum value poor) of engine speed, just can record engine load, thereby avoid the load detection sensor of passing by to be adopted.
Fig. 4 is the figure of the engine speed pulsating quantity of actual measurement, during measurement engine speed is remained on the predetermined value, again with the changing load of motor, just can obtain the end value under high speed, middling speed and the low cruise respectively, from The above results, can see, between engine speed pulsating quantity and engine load values, there is a fixing corresponding relation.As long as utilize the result of Fig. 4, just can prepare a figure shown in Figure 5, promptly by the pulsating quantity of engine speed and engine speed, obtain the figure of the load of motor.
All be to search desirable ignition timing in the past, realized ignition timing control by means of this figure according to engine load and engine speed.But according to the present invention, engine load provides by the engine speed pulsating quantity, so can find desirable ignition timing in Fig. 6 according to engine speed pulsating quantity and engine speed.
Secondly, for excitation starting timing data and the ignition timing data that obtain to be asked, will introduce the work of CPU10 below.Fig. 7 is an operational flowchart of putting fixed number for the reference position pulse that explanation is represented with Fig. 2 (b), obtains after umber of pulse utilization in reference position is searched data.In the 100th step, CPU10 utilizes the pulse of marginal detector shown in Figure 1 21, detects the back edge of each pulse among Fig. 2 (b), finishes program interrupt shown in Figure 7 then.After reaching synchronously with pulse back edge, in the 101st step, deposit the poke (CNTDOWN) of auto-counter 23 in random-access memory (ram) 12, in the 102nd step, count value CNTNEW constantly deducts from value CNTDOWN this pulse front edge, and the difference of gained just is and the corresponding time value-PWNEW of pulse width.When this situation occurring, the preceding PWNEW value that once obtains is existed among the RAM12 as the PWOLD value.The input of Counter Value CNTNEW will be introduced with Fig. 8 in the back together.In the 103rd step, need to judge the pulse width PWNEW value of new input, whether than the preceding once big twice of pulse width PWOLD value of input.The purpose in the 103rd step is to detect the NO.7 pulse of broad among Fig. 2 (b), so, if result of determination is "Yes" NO.7 pulse, soft counter in the CPU10 then resets, and, sequential counting is carried out in the reference position pulse from next NO.7 pulse enable, if the result of determination in the 103rd step is a "No", so just can determine that this pulse is not the NO.7 pulse, thereby EOP end of program.
The pulse that the marginal detector 21 of each pulse front edge shown in detection Fig. 2 (b) is produced can be interrupted in the 110th step, and performed program is the response interrupt routine as shown in Figure 8, and the soft counter in the step of 104 among Fig. 7 will increase by 1.Therefore, the poke in the soft counter just can be represented that reference position umber of pulse that the forward position has been detected.The in 112 steps, for responding above-mentioned pulse front edge, the poke of auto-counter 23 has been inserted within first latch cicuit 22, and at this moment the poke CNTNEW in second latch cicuit 22 will deposit RAM12 in: meanwhile, the preceding once CNTNEW value of storage deposits RAM12 in from CNTOLD again.In the 113rd step, Cun Chu count value CNTNEW deducts previous pulse front edge count value CNTOLD value constantly again, just can detect the interval or the interval of pulse.This difference is to be the basis from the numerical value that auto-counter 23 is counted in the interval of 1US, thereby this is the value of a free dimension.Like this, all values of CNTNEW, CNTOLD are all represented with US.In this discussion, for explaining that conveniently these later values are all shown with stopwatch.Because the interval between two pulses is to try to achieve by top subtraction, then the interval mean speed between the pulse is provided by following equation:
N
1=60/
〔 360/90 ×(CNTNEW-CNTOLD)〕
N
2To N
7=60/
〔 360/45 ×(CNTNEW-CNTOLD)〕
In the 113rd step, mean speed is determined between the pairing pulse area of above-mentioned pulse, and has deposited RAM12 in.So, the number of times that carry out to interrupt in the 110th step becomes 8 or 8 when above, has then deposited the mean speed N between each reference position pulse area shown in Figure 3 in RAM12 in
6To N
7, so just provide bent axle to rotate the engine speed pulsating quantity of a circle.
In the 114th step, should obtain at the interval N of mean speed
1To N
7In maximum (top) speed Nmax and minimum speed Nmin, and calculate both difference Nmax-Nmin.In the 115th step, deposit it in RAM12 as engine speed pulsating quantity NPLS then.In addition, in the 115th step, computation interval mean speed N
1To N
7Mean value
Ni/7, it just represents engine speed NAVR, and deposits RAM12 in.Then, at No. 116, according to engine speed pulsating quantity NPLS and engine speed NAVR, by searching the figure that is pre-existing in the ROM11, be the desirable ignition timing data of searching shown in Figure 6, or, just can draw the ignition timing data M APADV that is asked by the figure of top dead than the anticipated future position of calculating.In the 117th step, the parameters such as water temperature T W that the voltage VB of battery 1 and cooling-water temperature sensor 2 is measured after A/D converter 5 conversions, deposit RAM12 in.In the 118th step, according to engine speed NAVR and cell voltage VB, search the figure of being stored in the ROM11 again, figure promptly shown in Figure 9 just can obtain the stagnation time ONTIME shown in Fig. 2 (c).The upper limit N(that has only represented engine speed among Fig. 9 is at a high speed) and lower limit N(low speed), the stagnation time in the time of can obtaining middling speed with interpolation.In the 119th step, according to water temperature T W, search the correction data TWADV of desirable ignition timing from being stored in figure in the ROM11, this figure is as shown in figure 10.In the 120th step, ignition timing correction data TWADV is added on the resulting ignition timing data M APADV of the 116th step, just can obtain ignition advance angle ADV.In the 121st step, crank reference position signal pulse letter number is determined by the poke in the soft counter.If determined that signal is the NO.7 pulse, shown in Fig. 2 (c), after then stopping to TON, must switch on to spark coil, so the data relevant with time T ON all must be stored in second latch cicuit 24 from the leading edge time of this pulse.The interval mean speed of NO.7 pulse is N
1, therefore, the interval pairing time between NO.7 pulse and the NO.1 pulse is provided by 60/ (N ') * (45 * 3)/360.Like this,, can calculate time tON=60/ (N ') * (45 * 3)/360, and, just can calculate desirable excitation and start timing data-tON DATA with the count value CNTNEW of NO.7 pulse front edge auto-counter 23 constantly in the 112nd step.In the 123rd step, these data are inserted second latch cicuit 24.In the 124th step, give the high level of D end input shown in Fig. 2 (e) of trigger 30, program leaves it at that.
If the judgement in the 121st step shows: when pulse number was certain number among the NO.2 to NO.6, EOP end of program if be the NO.1 pulse by the 121st determined pulse of step, was then come calculating chart 2(c by the 125th step) shown in time t
θDesirable ignition timing data-TQDATA with this result of calculation and auto-counter 23 at NO.1 pulse front edge calculated value CNTNEW constantly together, is calculated simultaneously in 60/ (N ') * (45 * 3)/360.In the 126th step, these ignition timing data are inserted in second latch cicuit 24.So, make the signal shown in Fig. 2 (e) on the D end that is applied to trigger 30 by the 127th step, change on the low level value EOP end of program.
Like this, tONDATA or t
θThe DATA data are placed in second latch cicuit 24, and inserting constantly should be in a bit of time after NO.7 pulse or the NO.1 pulse front edge; According to the consistent degree that comparator 25 is detected, produced the pulse shown in Fig. 2 (d).Therefore, can produce the ignition control signal shown in Fig. 2 (c) at the Q of trigger 30 input end; Come electric current in the control ignition coil 61 by power transistor 51 simultaneously, thereby produce fire signal.
In case after the foregoing description was used on the twin cylinder engine, the present invention also can be used on the four cylinder engine.This be because, as shown in figure 11, though the velocity fluctuation cycle and the amplitude of twin cylinder engine and four cylinder engine, different on degree, but also the erect image twin cylinder engine is the same, the amplitude that the four cylinder engine velocity fluctuation changes, and in fact also the amplitude with engine load is directly proportional.
In twin cylinder engine, can finish igniting in 360 ° intervals, but in four cylinder engine, can only light a fire in 180 ° interval.Therefore, among the used embodiment of four cylinder engine, in the 181st step of Fig. 8, whether the processing of intersecting will be carried out, depend on identification result to the pulse of any one number number shown in this figure bracket, with regard to the similar method of available and aforementioned twin cylinder engine, finish ignition timing control like this.In other words, if the 121st the step judgement show, be NO.3 pulse or NO.7 pulse, just transfer to the 122nd the step; If show it is NO.2 pulse, NO.4 pulse or NO.6 pulse, the EOP end of program of Fig. 8 after judging.If judge to show it is NO.1 pulse or NO.5 pulse, just transferred to for the 125th step, and finish foregoing identical processing.
Can see from the introduction of front,, need only pulse value,, and not need to use any sensor to come the load of detection of engine with regard to the load of energy detection of engine according to engine speed according to the present invention.In addition, can also realize IGNITION CONTROL according to the pulsating quantity of engine speed and other parameters of motor.