This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2020-025908 filed on Feb. 19, 2020, the content of which is incorporated herein by reference.
This invention relates to a rotation speed calculation apparatus for calculating rotation speed of an engine.
A known apparatus is configured to calculate an engine speed on the basis of pulse signal occurrence intervals and to transmit the engine speed thus calculated to an in-vehicle network at predetermined intervals (for example, refer to JP 2007-228338 A). In the apparatus disclosed in JP 2007-228338 A, in order to reduce a loss or duplication of transmission data, whenever the pulse signal occurrence interval changes, the transmission interval is changed accordingly.
However, when the transmission interval is changed in accordance with a change in the pulse signal occurrence interval as in the apparatus disclosed in JP 2007-228338 A, it is difficult to stably make determinations such as a determination on detection of an invalid signal or a determination on soundness of a connected apparatus on the basis of the transmission interval. It is therefore desirable to increase the calculation accuracy of the engine speed without changing the transmission interval.
An aspect of the present invention is a rotation speed calculation apparatus, including: a detector configured to detect a rotation angle of an engine; and a CPU and a memory coupled to the CPU. The CPU is configured to perform: calculating an engine speed each time the detector detects a predetermined angle based on a time period required for the engine to rotate the predetermined angle; and determining whether the engine speed calculated is in a low-rotation range equal to or lower than a threshold value or in a high-rotation range over the threshold value. The CPU is configured to perform: the calculating including: calculating the engine speed based on a time period required for the engine to rotate a first predetermined angle when it is determined that the engine speed is in the low-rotation range; and calculating the engine speed based on a time period required for the engine to rotate a second predetermined angle smaller than the first predetermined angle when it is determined that the engine speed is in the high-rotation range.
Another aspect of the present invention is a rotation speed calculation apparatus, including: a detector configured to detect a rotation angle of an engine; and a CPU and a memory coupled to the CPU. The CPU is configured to function as: a calculation part configured to calculate an engine speed each time the detector detects a predetermined angle based on a time period required for the engine to rotate the predetermined angle; and a determination part configured to determine whether the engine speed calculated by the calculation part is in a low-rotation range equal to or lower than a threshold value or in a high-rotation range over the threshold value. The calculation part is configured to calculate the engine speed based on a time period required for the engine to rotate a first predetermined angle when it is determined by the determination part that the engine speed is in the low-rotation range and to calculate the engine speed based on a time period required for the engine to rotate a second predetermined angle smaller than the first predetermined angle when it is determined by the determination part that the engine speed is in the high-rotation range.
The objects, features, and advantages of the present invention will become clearer from the following description of embodiments in relation to the attached drawings, in which:
A description will be given below of an embodiment of the present invention with reference to
The intake passage 2 is provided with a throttle valve 4 that regulates the intake of air sucked in through an air cleaner (not shown), and an intake manifold 5 that distributes the intake air passing through the throttle valve 4 to a plurality of cylinders. Provided on the upstream side of the throttle valve 4 is an air intake sensor 6 that detects the flow rate of intake air.
The exhaust passage 3 is provided with an exhaust manifold 7 that collects exhaust gases expelled from the plurality of cylinders of the engine 1, and a catalyst device 8 that cleans up the exhaust gases on the downstream side of the exhaust manifold 7. Provided on the downstream side of the exhaust manifold 7 is a LAF sensor 9 that detects the air-fuel ratio on the upstream side of the catalyst device 8.
In each cylinder 10, a piston 17 is disposed slidably within the cylinder 10, and a combustion chamber 18 is provided facing the piston 17. The engine 1 is provided with an injector 19 directed toward the combustion chamber 18, and the injector 19 injects fuel into the combustion chamber 18. The engine 1 is further provided with a spark plug 20, and an air-fuel mixture in the combustion chamber 18 is ignited by the spark plug 20. When the air-fuel mixture burns (explodes) in the combustion chamber 18, the piston 17 reciprocates along an inner wall of the cylinder 10 to rotate a crankshaft 22 via a connecting rod 21.
Such an engine 1 is provided with a crank angle sensor 23 of an electromagnetic pickup type or optical type (
The sensor group 40 includes various sensors such as the crank angle sensor 23, the air intake sensor 6, and the LAF sensor 9 for use in detecting the operating state of the engine 1. The device group 50 includes various devices such as the throttle valve 4, the injector 19, and the spark plug 20 for use in controlling the operating state of the engine 1.
The in-vehicle communication network 60 includes a plurality of controllers connected over a serial communication line such as a controller area network (CAN) communication line. The plurality of controllers include a gateway that collectively controls the operations of the plurality of controllers and relays data signals transmitted and received between the plurality of controllers, a motor ECU for use in a hybrid vehicle, and the like.
The controller 30 includes a computer that includes a CPU 31, a memory 32 such as a ROM and a RAM, and I/O and other peripheral circuits. The controller 30 calculates, in accordance with an engine control program prestored in the memory (ROM) 32, various control values on the basis of signals transmitted from the sensor group 40, and controls the operations of the device group 50 to control the operation of the engine 1. For example, the engine speed NE is calculated, each time the crankshaft 22 reaches dead center (DC) corresponding to a rotation angle of 180°, on the basis of the pulse signals transmitted from the crank angle sensor 23.
The engine speed NE calculated by the controller 30 (engine ECU) is also transmitted at predetermined intervals T (for example, 10 ms) to the other controllers connected to the in-vehicle communication network 60, thereby allowing the plurality of controllers to carry out control in a coordinated manner. For example, feedback control on the engine speed NE by the engine ECU (controller 30) and the motor ECU is carried out. In order to suitably perform such coordinated control, it is desirable to increase the calculation accuracy of the engine speed NE. Therefore, according to the present embodiment, in order to increase the calculation accuracy of the engine speed NE, the rotation speed calculation apparatus 100 is configured as follows.
As shown in
The information acquisition part 33 acquires various kinds of information input from the sensor group 40 and the in-vehicle communication network 60 to the controller 30. For example, each time the crankshaft 22 rotates by the predetermined angle θ0 (for example, 6°), information on an input time of each pulse signal input from the crank angle sensor 23 is acquired. The information acquired by the information acquisition part 33 is stored in the memory (RAM) 32.
The rotation speed calculation part 34 calculates, on the basis of the information on the input time of each pulse signal stored in the memory (RAM) 32, the engine speed NE from a time (sampling time) ta taken for the crankshaft 22 to rotate by a predetermined angle θa. That is, the sampling time ta taken for a predetermined number Na of pulse signals corresponding to the predetermined angle θa to be input is converted into the engine speed NE by the following equation (i):
NE [rpm]=60000 [ms/min] θa/(2πta [ms]) (i)
Further, the rotation speed calculation part 34 calculates, on the basis of the information on the input time of each pulse signal stored in the memory (RAM) 32, the engine speed NE each time the crankshaft 22 rotates by a predetermined angle θb. That is, the engine speed NE is calculated at intervals (calculation intervals) tb at which a predetermined number Nb of pulse signals corresponding to the predetermined angle θb are input.
As shown in
That is, in the low-rotation range, the engine speed NE is calculated on the basis of the sampling time ta for a predetermined number Na1 of pulse signals (10 pulse signals) corresponding to the predetermined angle θa1 (60°) to be input. In the high-rotation range, the engine speed NE is calculated on the basis of the sampling time ta for a predetermined number Na2 of pulse signals (5 pulse signals) corresponding to the predetermined angle θa2 (30°) to be input. In this case, the sampling time ta varies in a manner that depends on the engine speed NE.
As shown in
That is, in the low-rotation range, the engine speed NE is calculated at the calculation intervals tb at which a predetermined number Nb1 of pulse signals (5 pulse signals) corresponding to the predetermined angle θb1 (30°) are input. Further, in the high-rotation range, the engine speed NE is calculated at the calculation intervals tb at which a predetermined number Nb2 of pulse signals (30 pulse signals) corresponding to the predetermined angle θb2 (180°) are input. In this case, the calculation interval tb varies in a manner that depends on the engine speed NE.
Further, the higher the engine speed NE, the shorter the sampling time ta. Thus, the higher the engine speed NE, the smaller the smoothing degree, thereby making responsiveness to the fluctuations in the engine speed NE higher. Further, since the predetermined angle θa2 in the high-rotation range is set smaller than the predetermined angle θa1 in the low-rotation range, the higher the engine speed NE in the high-rotation range, the higher the responsiveness to the fluctuations in the engine speed NE can be made.
As described above, setting the predetermined angles θa1, θa2 so as to make the sampling time ta1 longer in the low-rotation range and to make the sampling time ta2 shorter in the high-rotation range allows the calculation, with high accuracy, of the engine speed NE over the entire range.
As shown in
In this regard, since the predetermined angle θb1 in the low-rotation range is set smaller than the predetermined angle θb2 in the high-rotation range, it is possible to increase the calculation frequency in the low-rotation range to increase the calculation accuracy of the engine speed NE. Further, it is possible to lower the calculation frequency in the high-rotation range to reduce the computing load on the calculation of the engine speed NE.
Further, since the predetermined angles θa1, θb1 are set so as to make the sampling time ta1 longer than the calculation interval tb1 in the low-rotation range, the smoothing degree becomes larger, thereby allowing a stable calculation of the engine speed NE. Further, since the predetermined angles θb1, θa2 are set so as to make the sampling time ta2 shorter than the calculation interval tb1 in the high-rotation range, the smoothing degree becomes smaller, thereby making the responsiveness to the fluctuations in the engine speed NE higher.
The engine speed NE calculated by the rotation speed calculation part 34 is stored in the memory (RAM) 32. More specifically, at each calculation timing as shown by plots in
The range determination part 35 determines whether the engine speed NE calculated by the rotation speed calculation part 34 falls within the low-rotation range that is equal to or less than a threshold Th or falls within the high-rotation range that is greater than the threshold Th. More specifically, each time the engine speed NE stored in the memory (RAM) 32 is updated to the latest value calculated by the rotation speed calculation part 34, the engine speed NE is compared with the threshold Th to make a determination as to whether the engine speed NE falls within the low-rotation range or the high-rotation range.
Further, in accordance with the determination result, the threshold Th is switched between a high-rotation threshold Th1 (for example, 3000 rpm) and a low-rotation threshold Th2 (for example, 1500 rpm) having hysteresis. That is, in the low-rotation range, the threshold Th is switched to the high-rotation threshold Th1, and in the high-rotation range, the threshold Th is switched to the low-rotation threshold Th2.
As described above, imparting hysteresis to the threshold Th for use in determining whether the engine speed NE falls within the low-rotation range or the high-rotation range prevents frequent changes in the determination result even when the engine speed NE fluctuates around the threshold Th and in turn allows a stable range determination.
The information output part 36 outputs the engine speed NE calculated by the rotation speed calculation part 34, more specifically, the latest value of the engine speed NE stored in the memory (RAM) 32, to the in-vehicle communication network 60 at predetermined intervals T. In other words, as shown by plots each surrounded by a circle in
Accordingly, even when the output interval for the information output part 36 is equal to the predetermined interval T (for example, 10 ms), the engine speed NE just calculated by the rotation speed calculation part 34 of the controller 30 can be transmitted to another controller connected to the in-vehicle communication network 60. This allows the plurality of controllers to suitably perform coordinated control.
As shown in
In S3, a determination is made, by the rotation speed calculation part 34, as to whether the predetermined number Nb1 of pulse signals (5 pulse signals in
In S5, a determination is made, by the rotation speed calculation part 34, as to whether the predetermined number Nb2 of pulse signals (30 pulse signals in
Next, in S7, the engine speed NE calculated in S4, S6 is stored in the memory (RAM) 32 for an update to the latest value, and the count number of pulse signals input from the crank angle sensor 23 is reset.
First, when the engine speed NE (RAM value) stored in the memory (RAM) 32 is updated, it is determined to be YES in step S10, and the process proceeds to step S11. Next, in step S11, a determination is made as to whether the engine speed NE falls within the low-rotation range. When it is determined to be YES, the process proceeds to step S12, and when it is determined to be NO, the process proceeds to step S15. Note that the initial value at the start of the engine 1 is set to a value within the low-rotation range.
In step S12, a determination is made as to whether the RAM value is equal to or less than the threshold Th1. When it is determined to be YES, the process proceeds to step S13 to determine that the engine speed NE falls within the low-rotation range, and when it is determined to be NO, the process proceeds to step S14 to determine that the engine speed NE falls within the high-rotation range. In step S15, a determination is made as to whether the RAM value is equal to or less than the threshold Th2. When it is determined to be YES, the process proceeds to step S16 to determine that the engine speed NE falls within the low-rotation range, and when it is determined to be NO, the process proceeds to step S17 to determine that the engine speed NE falls within the high-rotation range.
As shown in
The present embodiment can achieve advantages and effects such as the following:
(1) The rotation speed calculation apparatus 100 includes: the crank angle sensor 23 configured to detect the rotation angle of the engine 1; the rotation speed calculation part 34 configured to calculate the engine speed NE each time the crank angle sensor 23 detects the predetermined angle θb based on the sampling time ta required for the engine 1 to rotate the predetermined angle θa; and the range determination part 35 configured to determine whether the engine speed NE calculated by the rotation speed calculation part 34 in the low-rotation range equal to or lower than the threshold value Th or in the high-rotation range over the threshold value Th (
The rotation speed calculation part 34 is configured to calculate the engine speed NE based on the sampling time ta required for the engine 1 to rotate the predetermined angle θa1 when it is determined by the range determination part 35 that the engine speed NE is in the low-rotation range. The rotation speed calculation part 34 is configured to calculate the engine speed NE based on the sampling time ta required for the engine 1 to rotate the predetermined angle θa2 smaller than the predetermined angle θa1 when it is determined by the range determination part 35 that the engine speed NE is in the high-rotation range.
That is, the predetermined angles θa1, θa2 are set so as to make the sampling time ta1 longer in the low-rotation range and to make the sampling time ta2 shorter in the high-rotation range. Thus, in the low-rotation range, the smoothing degree becomes larger, and it becomes less susceptible to the fluctuations in the engine speed NE accordingly, thereby allowing a stable calculation of the engine speed NE. In the high-rotation range, the smoothing degree becomes smaller, thereby making the responsiveness to the fluctuations in the engine speed NE higher. This in turn allows the calculation, with high accuracy, of the engine speed NE with high accuracy over the entire range.
(2) The rotation speed calculation part 34 is configured to calculate the engine speed NE each time the crank angle sensor 23 detects the predetermined angle θb1 when it is determined by the range determination part 35 that the engine speed NE is in the low-rotation range. The rotation speed calculation part 34 is configured to calculate the engine speed NE each time the crank angle sensor 23 detects the predetermined angle θb2 larger than the predetermined angle θb1 when it is determined by the range determination part 35 that the engine speed NE is in the high-rotation range.
That is, since the predetermined angle θb1 in the low-rotation range is set smaller than the predetermined angle θb2 in the high-rotation range, it is possible to increase the calculation frequency in the low-rotation range to increase the calculation accuracy of the engine speed NE. Further, it is possible to lower the calculation frequency in the high-rotation range to reduce the computing load on the calculation of the engine speed NE.
(3) The predetermined angle θa1 is larger than the predetermined angle θb1. The predetermined angle θa2 is smaller than the predetermined angle θb2. That is, since the predetermined angles θa1, θb1 are set so as to make the sampling time ta1 longer than the calculation interval tb1 in the low-rotation range, the smoothing degree becomes larger, thereby allowing a stable calculation of the engine speed NE. Further, since the predetermined angles θb1, θa2 are set so as to make the sampling time ta2 shorter than the calculation interval tb1 in the high-rotation range, the smoothing degree becomes smaller, thereby making the responsiveness to the fluctuations in the engine speed NE higher.
(4) The crank angle sensor 23 is configured to generate pulse signals in synchronization with rotation of the engine 1. The rotation speed calculation part 34 is configured to calculate the engine speed NE each time the crank angle sensor 23 generates a predetermined number Nb1 of the pulse signals corresponding to the predetermined angle θb1 based on the sampling time ta required for the crank angle sensor 23 to generate the predetermined number Na1 of the pulse signals corresponding to the predetermined angle θa1 when it is determined by the range determination part 35 that the engine speed NE is in the low-rotation range. The rotation speed calculation part 34 is configured to calculate the engine speed NE each time the crank angle sensor 23 generates the predetermined number Nb2 of the pulse signals corresponding to the predetermined angle θb2 based on the sampling time ta required for the crank angle sensor 23 to generate the predetermined number Na2 of the pulse signals corresponding to the predetermined angle θa2 when it is determined by the range determination part 35 that the engine speed NE is in the high-rotation range. For example, it is possible to calculate the engine speed NE on the basis of information on the input time of the pulse signal input from the crank angle sensor 23.
(5) The rotation speed calculation apparatus 100 further includes: the in-vehicle network 60 connected to the rotation speed calculation apparatus 100; and the information output part 36 configured to output the engine speed NE calculated by the rotation speed calculation part 34 to the in-vehicle network 60 in the predetermined time interval T (
(6) The rotation speed calculation apparatus 100 further includes: the memory (RAM) 32 configured to store the latest value of the engine speed NE calculated by the rotation speed calculation part 34 (
(7) The range determination part 35 is configured to change the threshold value Th in accordance with a determination result as to whether the engine speed NE is in the low-rotation range or in the high-rotation range. For example, imparting hysteresis to the threshold Th prevents frequent changes in the determination result even when the engine speed NE fluctuates around the threshold Th and in turn allows a stable range determination.
The above-described embodiment may be modified into various forms. A description will be given below of a modification. According to the above-described embodiment, an example where the rotation speed calculation apparatus 100 is applied to the four-stroke spark-ignition engine 1 has been described, but the engine may be of any type as long as the engine is capable of producing a rotational driving force, and may be an external combustion engine rather than an internal combustion engine.
According to the above-described embodiment, the crank angle sensor 23 that outputs the pulse signal at every predetermined angle θ0 detects the rotation angle θ of the engine 1, but the detection part that detects the rotation angle of the engine is not limited to such a sensor. A linear signal corresponding to the rotation angle of the engine may be output.
The above embodiment can be combined as desired with one or more of the above modifications. The modifications can also be combined with one another.
According to the present invention, it becomes possible to increase the calculation accuracy of the engine speed.
Above, while the present invention has been described with reference to the preferred embodiments thereof, it will be understood, by those skilled in the art, that various changes and modifications may be made thereto without departing from the scope of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
JP2020-025908 | Feb 2020 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
1778795 | Craig | Oct 1930 | A |
3359492 | Friedrich | Dec 1967 | A |
4779214 | Kinugasa | Oct 1988 | A |
6334094 | Hirakata | Dec 2001 | B1 |
6411917 | Hirakata | Jun 2002 | B1 |
6701275 | Muratomi | Mar 2004 | B1 |
7114380 | Fehrenbach | Oct 2006 | B2 |
7284538 | Ishizuka | Oct 2007 | B2 |
20190186403 | Kobayashi | Jun 2019 | A1 |
Number | Date | Country |
---|---|---|
2007228338 | Sep 2007 | JP |
Number | Date | Country | |
---|---|---|---|
20210254569 A1 | Aug 2021 | US |