JP2020112104A - Internal combustion engine control device - Google Patents
Internal combustion engine control device Download PDFInfo
- Publication number
- JP2020112104A JP2020112104A JP2019003702A JP2019003702A JP2020112104A JP 2020112104 A JP2020112104 A JP 2020112104A JP 2019003702 A JP2019003702 A JP 2019003702A JP 2019003702 A JP2019003702 A JP 2019003702A JP 2020112104 A JP2020112104 A JP 2020112104A
- Authority
- JP
- Japan
- Prior art keywords
- edge
- edges
- crank
- flag
- acquisition
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/009—Electrical control of supply of combustible mixture or its constituents using means for generating position or synchronisation signals
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/24—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
- F02D41/26—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
- F02D41/28—Interface circuits
- F02D2041/281—Interface circuits between sensors and control unit
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D2250/00—Engine control related to specific problems or objectives
- F02D2250/12—Timing of calculation, i.e. specific timing aspects when calculation or updating of engine parameter is performed
Landscapes
- Engineering & Computer Science (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
本開示は、アングルクロックを生成する内燃機関制御装置に関する。 The present disclosure relates to an internal combustion engine control device that generates an angle clock.
特許文献1には、エンジンの制御に用いられる電子制御装置が開示されている。特許文献1の電子制御装置は、アングルクロック生成回路と、プロセッサとを有する。アングルクロック生成回路は、入力された信号のエッジ間隔を、プロセッサにより設定された生成倍率で逓倍して生成したアングルクロックを出力する。アングルクロック生成回路は、通常時にはクランク信号の入力を受け、クランク信号のエッジ間隔に基づいてアングルクロックを生成する。アングルクロック生成回路は、クランク信号の異常などの所定の状況において、クランク信号に代えてカム信号の入力を受け、カム信号のエッジ間隔に基づきアングルクロックを生成する。
プロセッサにおいて実行されるソフトウェアの処理には、クランク信号のエッジ発生に基づいて起動されるクランク割り込み処理が含まれる。クランク割り込み処理を起動したプロセッサは、エッジ数に基づく現在のクランク角の算出や、算出したクランク角に基づく各種の制御を実施する。 The software processing executed by the processor includes crank interrupt processing started based on the occurrence of an edge of the crank signal. The processor that has started the crank interrupt process calculates the current crank angle based on the number of edges and performs various controls based on the calculated crank angle.
こうした内燃機関制御装置においては、割り込み処理の実行頻度の抑制により、プロセッサの処理負荷を軽減する構成が採用される場合がある。具体的には、クランク信号を所定の分周比で分周した分周エッジの発生時のみ、プロセッサにクランク割り込み処理を起動させる構成が採用される。こうした構成では、各分周エッジの間に、クランク割り込み処理を起動させていないエッジ(以下、マスクエッジ)が所定数存在する。分周エッジにより起動されたクランク割り込み処理は、前回の分周エッジから今回の分周エッジまでに所定数のマスクエッジが発生していたとみなして、エッジ数に従うクランク角の算出やクランク角に同期した処理を実施する。 In such an internal combustion engine control device, a configuration may be adopted in which the processing load of the processor is reduced by suppressing the execution frequency of interrupt processing. Specifically, a configuration is adopted in which the processor activates the crank interrupt process only when a frequency division edge generated by dividing the crank signal by a predetermined frequency division ratio occurs. In such a configuration, a predetermined number of edges (hereinafter referred to as mask edges) for which the crank interrupt processing is not activated exist between each divided edge. The crank interrupt processing started by the frequency division edge is considered to have generated a predetermined number of mask edges from the previous frequency division edge to the current frequency division edge, and the crank angle is calculated according to the number of edges and synchronized with the crank angle. Perform the process.
上述の処理負荷を軽減する構成において特許文献1のようにアングルクロック生成部への入力をクランク信号からカム信号に切替えた場合、クランク割り込み処理は、分周エッジのみでの実行から、エッジごとの実行に変更される。この結果、切替え時において、クランク割り込み処理を起動したエッジとマスクエッジ数との関係が正しく維持されないおそれがある。従って、算出されるクランク角に、実際のクランク角に対するズレが生じえた。
When the input to the angle clock generator is switched from the crank signal to the cam signal as in
本開示は、アングルクロックの生成源となる信号を切替える場合においても、クランク角のズレを抑制可能な内燃機関制御装置の提供を目的とする。 An object of the present disclosure is to provide an internal combustion engine control device capable of suppressing a crank angle deviation even when switching a signal that is a generation source of an angle clock.
上記目的は独立請求項に記載の特徴の組み合わせにより達成され、また、下位請求項は、本開示の更なる有利な具体例を規定する。特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。 The above objective is achieved by a combination of features described in independent claims, and the subclaims define further advantageous embodiments of the present disclosure. The reference numerals in parentheses in the claims indicate the correspondence with the specific means described in the embodiments described later as one aspect, and do not limit the technical scope of the present disclosure. ..
上記目的を達成するための本開示の内燃機関制御装置は、入力された内燃機関からのクランク信号またはカム信号に基づいてアングルクロックを生成するアングルクロック生成部(141)と、内燃機関の現在のクランク角に基づく処理を行うクランク角処理部(111)と、アングルクロック生成部への入力をクランク信号からカム信号に切替えさせる入力切替部(112)と、クランク信号のエッジをカウントしたエッジ数を保持するエッジカウンタ(142)と、クランク信号のエッジに基づくフラグであって、クランク角処理部の起床を要求する割り込み要求フラグを保持するフラグレジスタ(161)と、切替部による入力切替期間に、フラグレジスタの保持状況と、エッジ数の変化とを取得する取得部(113)と、取得部の取得したフラグレジスタの保持状況と、エッジ数の変化とに基づいて、マスクエッジ数を算出するマスクエッジ算出部(114)と、を備える。 An internal combustion engine control device of the present disclosure for achieving the above object includes an angle clock generation unit (141) that generates an angle clock based on a crank signal or a cam signal that is input from an internal combustion engine, and a current internal combustion engine. The crank angle processing unit (111) that performs processing based on the crank angle, the input switching unit (112) that switches the input to the angle clock generation unit from the crank signal to the cam signal, and the number of edges counting the edges of the crank signal are displayed. An edge counter (142) that holds the flag, a flag register (161) that holds an interrupt request flag that is a flag based on the edge of the crank signal and that requests wake-up of the crank angle processing unit, and an input switching period by the switching unit, An acquisition unit (113) that acquires the holding status of the flag register and the change in the number of edges, and a mask that calculates the number of mask edges based on the holding status of the flag register and the change in the number of edges acquired by the acquiring unit. An edge calculation unit (114).
以上の構成によれば、エッジカウンタはエッジ数をカウントしており、フラグレジスタはエッジに基づくクランク角処理部を起床させる割り込み要求フラグを保持している。故にマスクエッジ算出部は、フラグレジスタの保持する割り込み要求フラグと、エッジ数の変化の有無とに従って、マスクエッジ数を算出可能となる。従って内燃機関制御装置は、アングルクロックの生成源となる信号を切替える場合においても、クランク角のズレを抑制可能となる。 According to the above configuration, the edge counter counts the number of edges, and the flag register holds the interrupt request flag for waking up the crank angle processing unit based on the edge. Therefore, the mask edge calculation unit can calculate the number of mask edges according to the interrupt request flag held by the flag register and the presence or absence of a change in the number of edges. Therefore, the internal combustion engine control device can suppress the deviation of the crank angle even when switching the signal that is the generation source of the angle clock.
以下、本開示の複数の実施形態を図面に基づいて説明する。なお、各実施形態の説明において、対応する構成要素には同一番号の符号を付して重複する説明を省略する場合がある。構成の一部のみを説明している場合、構成の他の部分については先に説明した実施形態を適用できる。また、各実施形態の説明において明示している構成の組み合わせばかりでなく、特に組み合わせに支障が生じなければ、明示していなくても部分的に構成を組み合わせることも可能である。 Hereinafter, a plurality of embodiments of the present disclosure will be described with reference to the drawings. In the description of each embodiment, corresponding components may be denoted by the same reference numerals and redundant description may be omitted. When only a part of the configuration is described, the above-described embodiments can be applied to other parts of the configuration. Further, not only the combination of the configurations explicitly described in the description of each embodiment, but also the configuration may be partially combined even if it is not explicitly described unless the combination causes any trouble.
<第一実施形態>
図1に示す本開示の第一実施形態によるエンジンECU1は、例えば車両用のガソリンエンジンやディーゼルエンジンなどの内燃機関の制御に用いられる電子制御装置であり、「内燃機関制御装置」に相当する。エンジンECU1は、クランク軸センサ2やカム軸センサ3などからの検出信号に基づいてクランク軸の回転角(以下、クランク角)などの内燃機関の状態を逐次把握し、内燃機関を制御する。
<First embodiment>
The engine ECU 1 according to the first embodiment of the present disclosure shown in FIG. 1 is an electronic control device used for controlling an internal combustion engine such as a gasoline engine or a diesel engine for a vehicle, and corresponds to an “internal combustion engine control device”. The engine ECU 1 sequentially grasps the state of the internal combustion engine such as the rotation angle of the crankshaft (hereinafter referred to as crank angle) based on the detection signals from the
クランク軸センサ2は、クランク角に応じて電圧レベルの変動するクランク信号をエンジンECU1に出力する。クランク軸センサ2は、例えば磁気センサであり、クランク軸4に設けられたクランクシグナルロータ5によるクランク角に応じた磁界強度の変動を検出する。クランクシグナルロータ5は、外周に所定の角度間隔で突出する歯を設けられた、クランク軸4と一体に回転する略円板状の磁性部材である。
The
クランク軸センサ2は、クランクシグナルロータ5の歯と対向する位置に設けられ、クランクシグナルロータ5の回転に伴う歯の通過によって生じる磁界強度の変動を検出する。クランクシグナルロータ5の歯は、例えば外周の一部を除いて10度ごとに設けられている。この結果、クランク信号の立ち上がりのエッジは、外周の一部を除いてクランク軸4の10度回転ごとの実質的に均等な角度間隔で発生する。
The
カム軸センサ3は、内燃機関のカム軸6の回転に応じて電圧レベルの変動するカム信号をエンジンECU1に出力する。カム軸センサ3は、例えばクランク軸センサ2と同様の磁気センサであり、カム軸6に設けられたカムシグナルロータ7の歯の通過による磁界強度の変動を検出する。カム軸6は、クランク軸4に対して半分の速度で回転しており、クランク軸4の二回転、すなわち内燃機関の一回の燃焼サイクルごとに一回転する。
The
カムシグナルロータ7の歯は、均等でない角度の幅および間隔で設けられている。この結果、カム信号の立ち上がりおよび立ち下がりのエッジは、カム軸6の回転に従い均等でない角度間隔で発生する。なお、図1にはエンジンECU1に対する入力として一つのカム軸センサ3を示しているが、内燃機関のカム軸6の数や制御アルゴリズムなどに応じてカム軸センサ3の数は適宜変更可能である。
The teeth of the cam signal rotor 7 are provided with uneven angular widths and intervals. As a result, the rising and falling edges of the cam signal occur at uneven angular intervals as the cam shaft 6 rotates. Although one
エンジンECU1は、入力回路10、出力回路20、およびマイコン100を備えた電子制御装置である。入力回路10は、クランク軸センサ2およびカム軸センサ3から入力されるクランク信号およびカム信号をマイコン100に取り込むための回路である。入力回路10は、例えばクランク信号およびカム信号の波形を二値の矩形波状に整形してマイコン100に入力する。
The engine ECU 1 is an electronic control device that includes an
出力回路20は、マイコン100による判断に基づき、インジェクタやイグナイタなどのエンジンECU1の制御対象に対して駆動信号を出力する回路である。例えば出力回路は、マイコン100から制御対象ごとに駆動信号の出力指示を受け、対応する制御対象に駆動信号を出力する。
The
マイコン100は、図2に示すように、例えば半導体メモリなどの記憶部101と、CPUなどのプロセッサコア110を備えたマイクロコンピュータである。記憶部101は、プロセッサコア110で実行されるソフトウェアを非一時的に記録した非遷移的かつ実体的な記憶媒体に相当する。マイコン100は、タイマアレイユニット120および割り込みコントローラ160をはじめとする各種の周辺機能回路を、上述の記憶部101およびプロセッサコア110に加えて備えている。各種の周辺機能回路、記憶部101、およびプロセッサコア110は内部バスを介して相互に接続されている。プロセッサコア110は、記憶部101に記憶されたソフトウェアに定義されている各種の処理の実行により、周辺機能回路などと協働して内燃機関を制御するための各種の機能を実現する。
As shown in FIG. 2, the
タイマアレイユニット120は、多数の論理回路などにより構成された、各種のタイマ機能を提供する周辺機能回路である。タイマアレイユニット120は、エッジ検出タイマ130、アングルクロック生成タイマ140、および出力タイマ150を含んでいる。
The
エッジ検出タイマ130は、マイコン100に入力されたクランク信号およびカム信号に生じたエッジを検出し、アングルクロック生成タイマ140に入力させるタイマである。エッジ検出タイマ130は、クランクエッジ検出部131、カムエッジ検出部132、およびチャネル選択部133を含む。
The
クランクエッジ検出部131は、例えばシフトレジスタなどを含んで構成された、入力回路10からクランク信号の入力を受け付けるチャネルである。クランクエッジ検出部131は、クランク信号のエッジのうち、各立ち上がりエッジ、各立ち下がりエッジ、または各両エッジのいずれかを検出する。本実施形態のクランクエッジ検出部131は、立ち上がりエッジを検出し、立ち上がりエッジの検出の有無を示すクランクエッジ信号を出力する。クランクエッジ信号は、立ち上がりエッジが検出された場合に、電圧レベルを一時的に変更するパルス状の信号である。クランクエッジ信号のパルス幅、すなわち電圧レベルを一時的に変更される期間は、マイコン100の動作クロック一周期に相当する。
The crank
ここで、動作クロックの一周期は、内燃機関の最高回転数における立ち上がりエッジの間隔、すなわちクランク軸の10度回転に要する最短時間よりも十分に短い時間となるように設定されている。例えば一周期は、最短時間の数十分の一以下に設定されている。故に、クランクエッジ信号の各パルスは、クランク信号の立ち上がりエッジと一対一で対応する。従って、クランクエッジ信号のパルスの数は、クランク信号の立ち上がりエッジ数と一致する。クランクエッジ検出部131は、立ち上がりエッジを検出するたびに、割り込みコントローラ160に立ち上がりエッジの検出を通知する。
Here, one cycle of the operation clock is set to be sufficiently shorter than the interval between the rising edges at the maximum rotation speed of the internal combustion engine, that is, the shortest time required to rotate the crankshaft by 10 degrees. For example, one cycle is set to be less than a few tenths of the shortest time. Therefore, each pulse of the crank edge signal has a one-to-one correspondence with the rising edge of the crank signal. Therefore, the number of pulses of the crank edge signal matches the number of rising edges of the crank signal. The crank
カムエッジ検出部132は、例えばシフトレジスタなどを含んで構成された、入力回路10からカム信号の入力を受け付けるチャネルである。カムエッジ検出部132は、例えばカム信号の立ち上がりエッジおよび立ち下がりエッジの両方を検出し、検出の有無を示すカムエッジ信号を出力する。カムエッジ信号は、立ち上がりまたは立ち下がりのエッジが検出された場合に電圧レベルを一時的に変更されるパルス状の信号である。カムエッジ信号のパルス幅は、クランク信号と同様に動作クロックの一周期に相当する。
The cam
チャネル選択部133は、例えばマルチプレクサなどを含んで構成された、アングルクロック生成タイマ140に入力する信号のチャネルを選択する回路である。チャネル選択部133は、プロセッサコア110からの選択信号に従って、選択するチャネルを切替える。すなわちチャネル選択部133は、プロセッサコア110からの指示に従い、クランクエッジ検出部131およびカムエッジ検出部132のうち、アングルクロック生成タイマ140に接続されて信号を入力させる回路を切替える。チャネル選択部133は、クランク信号が正常である場合には、クランク信号のチャネル、すなわちクランクエッジ検出部131を、アングルクロック生成タイマ140に対する入力として選択している。
The
アングルクロック生成タイマ140は、アングルクロックを生成するためのタイマである。アングルクロックは、クランク信号の立ち上がりエッジ間隔よりも小さい間隔でクランク角の遷移を推定するための信号である。アングルクロックは、例えばクランク角の遷移を16分の1度の分解能で推定可能となるように設定されている。
The angle
具体的には、アングルクロックは、クランク角が一度変動したと推定されるごとに出力されるパルス状の信号であり、動作クロック一周期に相当するパルス幅で出力される。ただし、アングルクロックのパルスは、急加速に伴うパルス間隔の短縮を補正する場合に、前後のパルスと一体となり動作クロックの複数周期に相当するパルス幅となりうる。アングルクロック生成タイマ140は、アングルクロック生成部141、エッジカウンタ142、および分周コンペア部143を有する。
Specifically, the angle clock is a pulse-shaped signal that is output each time the crank angle is estimated to have changed once, and is output with a pulse width corresponding to one cycle of the operation clock. However, the pulse of the angle clock can be integrated with the preceding and succeeding pulses to have a pulse width corresponding to a plurality of cycles of the operation clock when correcting the shortening of the pulse interval due to the rapid acceleration. The angle
アングルクロック生成部141は、アングルクロック生成タイマ140への入力信号のパルス間隔を所定の生成倍率に従って逓倍することにより、アングルクロックを生成する回路である。生成倍率は、出力するアングルクロックの角度間隔に対する入力信号にパルスの生じる角度間隔の比を示す数値であり、プロセッサコア110からの指示に従って設定される。例えばアングルクロック生成部141にクランクエッジ信号が入力されている場合には、一部のクランク角範囲を除いて160倍が生成倍率として設定される。またアングルクロック生成部141にカムエッジ信号が入力されている場合には、パルス間隔ごとに個別の数値が生成倍率として設定される。例えば、あるパルス間隔がカム軸の30度回転分に相当する場合、すなわちクランク軸の60度回転分に相当する場合、そのパルス間隔に対して960倍が生成倍率として設定される。
The angle
アングルクロック生成部141は、入力信号のパルス間隔をパルス間に発生した動作クロック数としてカウントすることにより計測する。アングルクロック生成部141は、例えば入力信号にパルスが生じるたびに、次のパルス発生までの期間におけるアングルクロックのパルス間隔を更新する。パルス間隔には、直前のパルスからカウントされた動作クロック数を生成倍率で割った数値が設定される。アングルクロック生成部141は、例えば動作クロック数をカウントし、設定されたパルス間隔と一致するたびにアングルクロックのパルスを発生させてカウントをリセットする。
The angle
エッジカウンタ142は、クランク信号のエッジ数を計測するカウンタである。エッジカウンタ142は、例えばクランクエッジ信号にパルスが生じる度にカウントアップすることにより、立ち上がりエッジの数を計測する。エッジカウンタ142でカウント可能な数の上限は、後述する分周比以上に設定されている。
The
分周コンペア部143は、クランク信号の立ち上がりエッジのうち、一部のエッジを分周エッジとして検出し、割り込みコントローラ160に通知するための回路である。換言すれば、分周コンペア部143は、分周エッジ以外のエッジを、割り込みコントローラ160に通知しないマスクエッジとする機能を発揮する。分周エッジは、例えば30度間隔となるように立ち上がりエッジの中から選択されている。
The frequency division compare
分周コンペア部143は、例えば次の分周エッジに相当するエッジ数を保持するレジスタを含む。分周コンペア部143は、エッジカウンタ142でカウントされているパルス数が、レジスタに保持されているエッジ数と一致すると、分周エッジの発生を割り込みコントローラ160に通知する。通知により実行された後述のクランク割り込み処理により、その次の分周エッジに相当するエッジ数がレジスタに新たに書き込まれる。新たに書き込まれるエッジ数は、一部のクランク角範囲を除いて、立ち上がりエッジの角度間隔に対する分周エッジの角度間隔の比(以下、分周比)を、書き換え前のエッジ数に加算した値となる。分周エッジの間には、分周比−1個のマスクエッジが存在する。
The frequency division compare
出力タイマ150は、出力回路20に対して駆動信号の出力を指示する機能を有するタイマである。出力タイマ150は、アングルカウンタおよび出力期間レジスタなどを含む。アングルカウンタは、現在のクランク角を推定した数値をカウントするためのカウンタである。アングルカウンタは、例えばアングルクロックのパルス発生ごとにカウントアップする。
The
出力期間レジスタは、出力期間、すなわち各制御対象に駆動信号を出力するクランク角の範囲を保持するためのレジスタである。出力期間レジスタは、プロセッサコア110により設定される駆動信号の出力の開始および終了タイミングを示す数値を保持する領域を制御対象ごとに有している。出力タイマ150は、アングルカウンタのカウント値が出力期間レジスタの保持する数値と一致すると、対応する駆動対象への駆動信号について出力の開始または停止を出力回路20に指示する。
The output period register is a register for holding an output period, that is, a crank angle range for outputting a drive signal to each control target. The output period register has, for each control target, an area for holding a numerical value indicating the start and end timings of the output of the drive signal set by the
こうしたタイマアレイユニット120の制御のため、プロセッサコア110の機能には、クランク角処理部111としての機能が含まれる。
Due to the control of the
クランク角処理部111は、記憶部101に格納されたソフトウェアに含まれる処理のうち、クランク割り込み処理を実行中のプロセッサコア110により発揮される機能である。クランク割り込み処理は、割り込みコントローラ160からの割り込み要求に従って実施される割り込み処理の一種である。クランク割り込み処理は、クランク角の遷移に同期して、特定のクランク角となるたびに実施される。換言すれば、クランク角処理部111は、特定のクランク角となるたびに起床するプロセッサコア110の機能である。
The crank
クランク割り込み処理は、クランク信号の立ち上がりエッジ発生に従って実行される。より具体的には、通常状態では、分周エッジの発生ごとに実行される。ただし、通常状態は、アングルクロック生成タイマ140への入力信号としてクランクエッジ信号が入力されている状態を意味する。アングルクロック生成タイマ140への入力信号としてカムエッジ信号が入力されている場合には、立ち上がりエッジの発生ごとに実施される。
The crank interrupt process is executed according to the occurrence of the rising edge of the crank signal. More specifically, in the normal state, it is executed every time a frequency division edge occurs. However, the normal state means a state in which the crank edge signal is input as the input signal to the angle
クランク割り込み処理は、実行されるたびに、前回の起動で算出したクランク角に、前回の実行からのクランク角の変化量を加算して現在のクランク角を算出する。クランク角の変化量は、前回の実行から今回の実行までにクランク信号に生じたエッジ数に従う。すなわち、前回の実行以降のエッジ数×10度が、前回の実行からのクランク角の変化量となる。 Each time the crank interrupt process is executed, the current crank angle is calculated by adding the amount of change in the crank angle from the previous execution to the crank angle calculated in the previous startup. The amount of change in the crank angle depends on the number of edges generated in the crank signal from the previous execution to the current execution. That is, the number of edges since the previous execution×10 degrees is the amount of change in the crank angle from the previous execution.
例えば通常状態では、クランク割り込み処理を実行させた分周エッジに加えて2つのマスクエッジが発生しているため、前回の実行からの3つのエッジが発生している。従ってクランク角処理部111は、実行されるたびに前回のクランク角に30度を加算してクランク角を算出する。
For example, in the normal state, two mask edges have occurred in addition to the frequency division edge for which the crank interrupt processing has been executed, so that three edges from the previous execution have occurred. Therefore, the crank
アングルクロック生成タイマ140への入力信号がカムエッジ信号である場合には、割り込み処理を実行させたエッジ以外のエッジが発生していないため、前回の実行からのエッジ数が1となる。従ってクランク角処理部111は、実行されるたびに前回のクランク角に10度を加算してクランク角を算出する。
When the input signal to the angle
またクランク角処理部111は、マスクエッジ数として特定の数値が算出されている場合には、算出されたマスクエッジ数に従って変化量を補正してクランク角を算出する。すなわちクランク角処理部111は、マスクエッジ数に1を加算した数×10度を、前回の実行からの変化量として算出する。従ってマスクエッジ数として特定の数値が算出されている場合の変化量は、大きいマスクエッジ数であるほど大きくなる。
Further, when a specific numerical value is calculated as the number of mask edges, the crank
クランク割り込み処理は、現在のクランク角を算出すると、そのクランク角で実行する処理として対応付けられた処理の実行に移る。クランク角に対応付けられた処理、換言すればクランク角に同期して実行される処理には、例えば燃焼サイクルに合わせた燃料噴射処理などが含まれる。またクランク割り込み処理は、次の分周エッジに相当するエッジ数を分周コンペア部143のレジスタに書き込むことにより、次にクランク割り込み処理の実行されるクランク角を設定する処理を含む。
When the current crank angle is calculated, the crank interrupt process moves to execution of a process associated with the crank angle. The process associated with the crank angle, in other words, the process executed in synchronization with the crank angle includes, for example, a fuel injection process matched to the combustion cycle. The crank interrupt process includes a process of setting the crank angle at which the crank interrupt process is to be executed next by writing the number of edges corresponding to the next frequency division edge into the register of the frequency division compare
割り込みコントローラ160は、プロセッサコア110で実行されるソフトウェアに設定されている各種の割り込み処理について、実行の可否や優先順などについて管理する機能を有する周辺機能回路である。割り込みコントローラ160は、マイコン100の内部および外部からの送信された割り込み要求を受信し、対応する割り込み処理をプロセッサコア110に実行させる。割り込みコントローラ160には、割り込み要求を受けた旨を保持するためのレジスタが各割り込み処理ごとに設けられている。
The interrupt
割り込みコントローラ160には、クランク割り込み処理を実行させるための割り込みフラグを保持するフラグレジスタ161として、分周フラグレジスタ161aおよびエッジフラグレジスタ161bが設けられている。
The interrupt
分周フラグレジスタ161aのフラグの切替え条件は、クランク信号の立ち上がりエッジのうち、分周エッジの発生ごとにクランク割り込み処理を実行させるように設定されている。分周フラグレジスタ161aは、例えば分周エッジが生じた場合に、割り込み要求があった旨を示すオンに設定される。分周フラグレジスタ161aは、フラグをクランク割り込み処理の実行に用いられた場合に、要求があった旨をクリアされ、オフに設定される。
The condition for switching the flag of the frequency
分周フラグレジスタ161aによる割り込み要求は、アングルクロック生成タイマ140への入力信号がカムエッジ信号である場合には、無効な状態に切替えられる。すなわち分周フラグレジスタ161aは、割り込みフラグオンの状態となっている場合であっても、入力信号がカムエッジ信号の状態では、クランク割り込み処理の実行には用いられない。
The interrupt request by the frequency
エッジフラグレジスタ161bのフラグの切替え条件は、クランク信号における立ち上がりエッジの発生ごとにクランク割り込み処理を実行させるように設定されている。エッジフラグレジスタ161bは、例えばクランクエッジ信号にパルスが生じた場合に、割り込みの要求があった旨を示すオンに設定される。またエッジフラグレジスタ161bは、クランク割り込み処理の実行に用いられた場合に、要求があった旨をクリアされ、オフに設定される。
The flag switching condition of the
エッジフラグレジスタ161bの割り込みフラグによる割り込み要求は、通常状態においては無効な状態に設定されている。すなわちエッジフラグレジスタ161bは、割り込みフラグオンの状態となっている場合であっても、通常状態においてはクランク割り込み処理の実行には用いられない。
The interrupt request by the interrupt flag of the
アングルクロック生成タイマ140への入力信号の切替えに係る機能として、プロセッサコア110の機能には、入力切替部112、取得部113、およびマスクエッジ算出部114としての機能が含まれる。
As a function related to switching of an input signal to the angle
入力切替部112は、アングルクロック生成タイマ140への入力信号切替えを行う信号切替え処理を実行したプロセッサコア110により発揮される機能である。信号切替え処理は、クランク信号の異常が検出されるなどの、所定の入力切替条件が成立していると判断された場合に実行される、アングルクロック生成タイマ140への入力信号を切替える処理である。信号切替え処理の実行されている期間が、入力切替期間に相当する。
The
入力切替条件の成立判断、すなわちクランク信号異常検出は周期的に実行され、クランク信号が異常の場合に信号切替え処理を実行させてプロセッサコア110に入力切替部112としての機能を発揮させる。信号切替え処理は、例えばクランク割り込み処理よりも優先度を高く設定されており、実行完了までクランク割り込み処理の実行を待機させる。また信号切替え処理の実行中には、マイコン100の動作クロックの周期がエッジ間隔に対して十分短いため、クランク信号のエッジは一つのみ発生するまたは発生しない状態となる。すなわち、信号切替え処理の実行中には、エッジは複数発生しない。
Whether the input switching condition is satisfied or not, that is, the crank signal abnormality detection is periodically executed. When the crank signal is abnormal, signal switching processing is executed to cause the
入力切替部112は、チャネル選択部133に対して選択チャネルの切替信号を出力し、入力信号をクランクエッジ信号からカムエッジ信号に切替えさせる切替え指示処理を行う。入力切替部112は、入力切替条件が成立すると、取得部113に各種の情報を取得させてから切替え指示処理を行う。
The
入力切替部112は、切替え指示処理の前に、フラグレジスタ161の保持する割り込み要求フラグについて、有効または無効な状態の設定を変更させる処理を行う。より具体的には、入力切替部112は、分周フラグレジスタ161aの割り込み要求を、有効な状態から無効な状態に変更させる無効化処理を行う。また入力切替部112は、エッジフラグレジスタ161bの割り込み要求を、無効な状態から有効な状態に変更させる有効化処理を行う。さらに入力切替部112は、カムエッジ信号への切替え前に、エッジフラグレジスタ161bのフラグをクリアさせるクリア処理を行う。
The
取得部113は、取得処理を実行したプロセッサコア110により発揮される機能である。取得処理は、信号切替え処理のサブルーチンとして設定されている、信号の切替えに係るクランク信号側の設定処理の一部である。
The
取得部113は、入力切替部112による入力信号の切替え前に、フラグレジスタ161における割り込みフラグの保持状況と、エッジカウンタ142のエッジ数の変化とを取得する。具体的には、今回の信号切替処理の開始から、入力信号の切替えを実施するまでの期間に、上述の情報を取得する。
The
より具体的には、フラグレジスタ161のうち、分周フラグレジスタ161aの保持する割り込みフラグの状態を取得するフラグ取得処理を行う。また取得部113は、エッジカウンタ142のカウントするエッジ数を二回取得する。取得部113は、エッジ数を取得するエッジ数取得処理を、フラグ取得処理の前後にそれぞれ一回ずつ行う。これ以降、第一エッジ数取得処理に相当するフラグ取得処理以前のエッジ数取得処理で取得されたエッジ数を前エッジ数と呼ぶ。前エッジ数の取得は、入力切替部112によるフラグのクリア以前に実施される。また、第二エッジ数取得処理に相当するフラグ取得処理以前のエッジ数取得処理で取得されたエッジ数を後エッジ数と呼ぶ。後エッジ数の取得は、入力切替部112によるフラグのクリア以降に実施される。
More specifically, in the
マスクエッジ算出部114は、マスクエッジ算出処理を実行したプロセッサコア110により発揮される機能である。マスクエッジ算出処理は、信号切替え処理のサブルーチンとして設定されている、信号の切替えに係るクランク信号側の設定処理の一部である。
The mask
マスクエッジ算出部114は、入力信号の切替えに伴い、マスクエッジ数を算出する。入力信号の切替えにあたって、クランク割り込み処理の実行条件の変更に伴い、マスクエッジ数が一時的に分周比−1とは異なる数となりうる。マスクエッジ算出部114は、こうした一時的な変化を補正したマスクエッジ数を算出する。
The mask
マスクエッジ算出部114は、取得部113で取得された、割り込みフラグの保持状況と、エッジ数の変化とに基づいてマスクエッジ数を算出する。上述の通り、マスクエッジは、発生したエッジのうち、割り込みコントローラ160に通知されず、クランク割り込み処理に用いられなかったエッジである。従ってマスクエッジ数の算出は、直前のクランク割り込み処理以降におけるエッジ数の増加量の判断と、増加量から処理に用いられたエッジの差し引きの要否の判断とにより実行される。
The mask
エッジ数の増加量は、直前のクランク割り込み処理以降に、クランク信号に発生したエッジ数を示す。マスクエッジ算出部114は、後エッジ数から、直前のクランク割り込み処理の時点におけるエッジ数を差し引くことにより、エッジ数の増加量を算出する。
The amount of increase in the number of edges indicates the number of edges generated in the crank signal since the immediately preceding crank interrupt process. The mask
マスクエッジの算出にあたって増加量からの差し引くべきエッジは、増加量としてカウントされているエッジのうち、クランク割り込み処理の実行に用いるべきエッジである。すなわち、後エッジ数の取得以前に発生したエッジのうち、入力替え処理の開始以降に発生したため、要求したクランク割り込み処理をまだ実行されていないエッジである。従ってマスクエッジ算出部114は、入力替え処理の開始から後エッジ数の取得までの期間について、割り込み処理の実行の要否を判断することにより、差し引きの要否を判断する。
The edge to be subtracted from the increase amount in calculating the mask edge is an edge to be used for executing the crank interrupt process, among the edges counted as the increase amount. That is, among the edges that have occurred before the acquisition of the number of trailing edges, the edges that have occurred after the start of the input change processing and have not yet executed the requested crank interrupt processing. Therefore, the mask
具体的には、マスクエッジ算出部114は、取得部113により取得された分周フラグレジスタ161aの割り込みフラグがオンである場合、または前エッジ数と後エッジ数とが異なっている場合に、クランク割り込み処理の実行を要すると判断する。マスクエッジ算出部114は、割り込みフラグがオフであり、かつ前エッジ数と後エッジ数とが一致している場合に、クランク割り込み処理の実行を要しないと判断する。
More specifically, the mask
マスクエッジ算出部114は、クランク割り込み処理の実行を要すると判断した場合には、その分のエッジを差し引いてマスクエッジ数を算出する。すなわち、エッジ数の増加量から1を差し引いた数をマスクエッジ数として決定する。なお、マスクエッジ算出部114は、割り込みフラグがオンかつ前エッジ数と後エッジ数が異なっている場合にも、クランク割り込み処理を1回のみ実行させるとして、1を差し引く。マスクエッジ算出部114は、クランク割り込み処理の実行を要しないと判断した場合には、エッジを差し引くことなくマスクエッジ数を算出する。すなわち、エッジ数の増加量をマスクエッジ数として決定する。
When the mask
マスクエッジ算出部114は、例えばエッジフラグレジスタ161bの保持する割り込みフラグの書き換えにより、判断した実行の要否に従ってクランク割り込み処理を実施させる。すなわちマスクエッジ算出部114は、実行を要すると判断した場合には、エッジフラグレジスタ161bをオンに書き換えさせる。オンに書き換えられたエッジフラグレジスタ161bにより、クランク割り込み処理が切替え処理の完了後に強制的に実行される。
The mask
マスクエッジ算出部114は、実行を要しないと判断した場合には、エッジフラグレジスタ161bの割り込みフラグの書き換えを行わない。すなわち、エッジフラグレジスタ161bを、入力切替部112によりクリアされた状態のままとする。書き換えられていないエッジフラグレジスタ161bは、クリア後に発生したエッジに従いオンとなると、信号切替え処理とは独立してクランク割り込み処理を実行させる。クランク割り込み処理は、信号切替え処理の完了後に最初に実行された場合のみ、マスクエッジ算出部114により算出された一時的なマスクエッジ数に従ってクランク角を算出する。
The mask
[プロセッサコア110の作動]
プロセッサコア110の作動を、図3および図4のフローチャートに沿って説明する。プロセッサコア110は、内燃機関の制御中に、信号切替え処理として図3に示す処理をS101から周期的に実行する。
[Operation of processor core 110]
The operation of the
S101では、クランク信号に異常が生じているか否かを判断する。異常が生じていると判断した場合には、アングルクロック生成タイマ140への入力信号をカム信号に切替える必要があるとしてS102に進む。異常が生じていないと判断した場合には、図3に示す処理を終了する。S101から入力切替期間が開始する。
In S101, it is determined whether or not the crank signal is abnormal. If it is determined that an abnormality has occurred, it is necessary to switch the input signal to the angle
S102では、カム信号への切替えにあたってクランク信号について種々の設定を行うために、図4に示すクランク信号設定サブルーチンを実行する。クランク信号設定サブルーチンでは、図4に示す処理をS110から実行する。 In S102, the crank signal setting subroutine shown in FIG. 4 is executed in order to make various settings for the crank signal when switching to the cam signal. In the crank signal setting subroutine, the processing shown in FIG. 4 is executed from S110.
S110では、割り込みコントローラ160に対し、エッジフラグレジスタ161bによるクランク割り込み処理を有効にさせる。すなわち、有効化処理として、クランク信号のエッジ検出ごとのクランク割り込み処理の実行を有効にする処理を実行する。
In S110, the interrupt
S111では、エッジカウンタ142から現在のエッジ数を取得する。すなわち、第一エッジ数取得処理として、分周フラグレジスタ161aからのフラグ取得前のエッジ数である前エッジ数を取得する処理を実行する。これ以降に発生したエッジは、分周エッジに相当するか否かに拘わらずエッジ数の変化として検出され、クランク割り込み処理を実行させる。従って、この処理は割り込み要求を発生させるエッジの分周を解除する処理と言える。
In S111, the current number of edges is acquired from the
S112では、クリア処理として、エッジフラグレジスタ161bの保持する割り込み要求フラグをクリアする処理を実行する。すなわち、この処理以前のエッジがエッジフラグレジスタ161bの割り込み要求フラグをオンとしていても、信号切替え処理完了後のクランク割り込み処理の実行に影響を与えない状態とする。
In S112, as the clearing process, a process of clearing the interrupt request flag held by the
S113では、フラグ取得処理として。分周フラグレジスタ161aの保持する割り込み要求フラグを取得する処理を実行する。すなわち、今回の信号切替え処理開始から、この処理までの期間に分周エッジが発生しているか否かを取得する。
In S113, as flag acquisition processing. Processing for acquiring the interrupt request flag held by the frequency
S114では、エッジカウンタ142から現在のエッジ数を再度取得する。すなわち、第二エッジ数取得処理として、分周フラグレジスタ161aからのフラグ取得後のエッジ数である後エッジ数を取得する処理を実行する。
In S114, the current number of edges is acquired again from the
S115では、クランク割り込み処理の実行させる必要があるか否かを判断する。すなわち、分周フラグレジスタ161aから取得したフラグがオンであるか、または前エッジ数と後エッジ数との間に差があるかを判断する。フラグがオンであるか、またはエッジ数に差がある場合には、クランク割り込み処理を実行させるエッジが発生している、すなわち実行を要するとしてS116に進む。フラグがオフであり、かつエッジ数が一致している場合には、クランク割り込み処理の実行を要しないとしてS118に進む。
In S115, it is determined whether it is necessary to execute the crank interrupt process. That is, it is determined whether the flag acquired from the frequency
S116では、エッジフラグレジスタ161bの保持する割り込み要求フラグをオンにさせる。すなわち、信号切替え処理の完了時に、発生したエッジ分のクランク割り込み処理を強制的に一回実施させるように予約する。
In S116, the interrupt request flag held by the
S117では、エッジ数の増加量から1を差し引いた数を、マスクエッジ数と判断する。すなわち、エッジ数の増加量からS116でクランク割り込み処理を実施させた分のエッジを差し引いた数を、マスクエッジ数として算出する。 In S117, the number obtained by subtracting 1 from the amount of increase in the number of edges is determined as the number of mask edges. That is, the number of mask edges is calculated by subtracting the number of edges for which the crank interrupt process is performed in S116 from the increase amount of the number of edges.
S118では、エッジ数の増加量をマスクエッジ数と判断する。すなわち、クランク割り込み処理の実施を予約しないため、エッジ数の増加量そのものをマスクエッジ数として算出する。 In S118, the amount of increase in the number of edges is determined to be the number of mask edges. That is, since the execution of the crank interrupt process is not reserved, the increase amount of the edge number itself is calculated as the mask edge number.
S119では、分周フラグレジスタ161aの割り込みフラグによる割り込み要求を許可されていない状態に変更させ、図4のサブルーチンを終了して図3の処理に戻る。すなわちこの処理以降、分周フラグレジスタ161aは、割り込みフラグオンの状態となっている場合であっても、有効な割り込み要求としては扱われず、クランク割り込み処理の実行には用いられない状態となる。
In step S119, the interrupt request by the interrupt flag of the frequency
図3の処理に戻ると、S103の処理に進む。S103の処理では、カム信号への切替えにあたってカム信号について種々の設定を行う。 Returning to the processing of FIG. 3, the processing proceeds to S103. In the process of S103, various settings are made for the cam signal when switching to the cam signal.
S104では、チャネル選択部133に、アングルクロック生成タイマ140への入力信号をカム信号に切替えさせる。S104で入力切替期間が完了する。
In S104, the
S105では、エッジフラグレジスタ161bの割り込み要求フラグがオンとなっているかを判断する。すなわち、S116でクランク割り込み処理を予約している、または後エッジ数の取得後にエッジが発生しているか否かを判断する。オンの場合、クランク割り込み処理の実行のためS106に進む。オフの場合、図4に示す処理を終了し、次のエッジ発生までクランク割り込み処理の実施を待つ。
In S105, it is determined whether the interrupt request flag of the
S106では、クランク割り込み処理を実行する。すなわち、S117またはS118で算出されたマスクエッジ数に基づくクランク角算出などを実施する。 In S106, crank interrupt processing is executed. That is, the crank angle is calculated based on the number of mask edges calculated in S117 or S118.
[第一実施形態のまとめ]
以上、説明した第一実施形態によれば、エッジカウンタ142はエッジ数をカウントしている。また、フラグレジスタ161は、エッジの発生に基づいてオンとなる、クランク角処理部111を起床させるための割り込み要求フラグを保持している。故にマスクエッジ算出部114は、エッジ数の変化として検出された直前のクランク割り込み処理から発生したエッジ数の変化量と、フラグレジスタ161の保持する割り込み要求フラグとに従って、マスクエッジ数を算出可能となる。従ってエンジンECU1は、アングルクロックの生成源となる信号を切替える場合においても、算出されるクランク角のズレを抑制可能となる。
[Summary of First Embodiment]
According to the first embodiment described above, the
すなわち、マスクエッジ算出部114は、割り込み要求フラグのオン、またはエッジ数の変化発生に従いクランク割り込み処理を実行させる場合には、そのエッジを変化量から差し引いてマスクエッジ数を算出する。
That is, the mask
またマスクエッジ算出部114は、割り込み要求フラグのオフかつエッジ数の変化なしのためクランク割り込み処理を実行させない場合には、変化量から実行させた分のエッジを差し引くことなくマスクエッジ数を算出する。このように、マスクエッジ算出部114は、クランク割り込み処理の実行の要否に従い、実行させた分のエッジを差し引いてマスクエッジ数を算出する。従って、マスクエッジ算出部114は、クランク割り込み処理の実行の有無と同期させてマスクエッジ数を算出しうる。
When the crank interrupt processing is not executed because the interrupt request flag is off and the number of edges has not changed, the mask
加えて本実施形態では、マスクエッジ算出部114による予約、または信号切替え処理以降のエッジにより起床されたクランク角処理部111は、マスクエッジ算出部114により算出されたマスクエッジ数に基づいてクランク角を補正する。従ってエンジンECU1では、各種の処理に用いられるクランク角のズレが抑制され、制御の精度低下がより抑制される。
In addition, in the present embodiment, the crank
さらに本実施形態では、取得部113は、分周フラグレジスタ161aの保持する割り込み要求フラグを保持状況として取得し、保持状況の取得前後におけるエッジ数をそれぞれ前エッジ数および後エッジ数として取得する。またマスクエッジ算出部114は、分周フラグレジスタ161aの割り込み要求オンの場合、または前エッジ数と後エッジ数とが異なっている場合に、クランク割り込み処理を実行させてその分をエッジ増加量から差し引く。この結果、信号切替え処理の実行期間のいつエッジが発生した場合であっても、マスクエッジ算出部114は、クランク割り込み処理の実行の有無と同期させてマスクエッジ数を算出しうる。
Further, in the present embodiment, the
クランク割り込み処理の実行の有無と同期させたマスクエッジ数の算出について、図5〜7を用いて詳細に説明する。図5〜7は、信号切替え処理の実行期間にエッジが発生した場合の、クランク割り込み処理を発生させたエッジとマスクエッジ数との対応例を示す。なお、クランク信号のエッジのうち、矢印は分周エッジに相当するクランク角で発生したエッジを示す。また、矢印でない直線は分周エッジに相当しないエッジ(以下、非分周エッジ)を示す。また、各エッジから延びる破線の矢印は、そのエッジが割り込み処理を実行させたエッジである旨を示す。 Calculation of the number of mask edges synchronized with the presence or absence of execution of the crank interrupt process will be described in detail with reference to FIGS. FIGS. 5 to 7 show examples of correspondence between the edge causing the crank interrupt process and the number of mask edges when the edge occurs during the execution period of the signal switching process. In addition, among the edges of the crank signal, the arrow indicates the edge generated at the crank angle corresponding to the frequency division edge. A straight line that is not an arrow indicates an edge that does not correspond to a frequency division edge (hereinafter, a non-frequency division edge). A dashed arrow extending from each edge indicates that the edge is an edge that has executed interrupt processing.
図5に、分周エッジに相当するエッジが信号切替え処理の実行期間に発生した場合の作動を示す。分周エッジに相当するエッジは、分周フラグレジスタ161aのフラグ取得前に発生した場合にはフラグのオンとして検出可能であり、前エッジ数取得から後エッジ数取得までに発生した場合にはエッジ数の変化として検出可能である。従って分周エッジは、信号切替え処理の開始から、後エッジ数の取得までの期間までのいつ発生した場合においても、割り込み処理を発生させる。従って、マスクエッジ数はこのエッジを含めず算出される。
FIG. 5 shows the operation when an edge corresponding to the frequency division edge occurs during the execution period of the signal switching process. The edge corresponding to the frequency division edge can be detected as the flag being turned on when it occurs before the flag of the frequency
図6および図7に、非分周エッジが信号切替え処理の実行期間に発生した場合の作動を示す。非分周エッジは、分周フラグレジスタ161aのフラグを用いて検出できず、エッジ数の変化で検出可能である。従って、前エッジ数の取得までの期間に発生した非分周エッジは、割り込み処理を発生させず、マスクエッジ数に含められる。一方、前エッジ数の取得から後エッジ数の取得までの期間に発生した非分周エッジは、分周エッジではないが割り込み処理の発生に用いられる。従って、この期間に発生した非分周エッジは、マスクエッジ数に含められない。
6 and 7 show the operation in the case where the non-divided edge occurs during the execution period of the signal switching process. The non-frequency-divided edge cannot be detected using the flag of the frequency-
なお、信号切替え処理の実行期間のうち後エッジ数取得以降に発生したエッジは、分周エッジであるか非分周エッジであるかに拘わらず、マスクエッジ算出部114の判断するエッジ数の増加量には含まれない。故にこの期間に発生したエッジは、マスクエッジ算出部114による増加量から差し引くか否かの判断では参照されず、独立してクランク割り込み処理を実行させる。
It should be noted that the number of edges determined by the mask
さらに、マスクエッジ算出部114は、後エッジ数取得以前にクリアされたエッジフラグレジスタ161bへのオン書き込みにより、クランク割り込み処理の実行を予約する。この結果、マスクエッジ算出部114はエッジフラグレジスタ161bのクリアから後エッジ数取得までのエッジ発生によりオンに書き換わっていても、クランク割り込み処理を1回のみ実行させる。故にマスクエッジ算出部114は、エッジの数と実行回数とのズレを抑制しうる。
Further, the mask
加えてマスクエッジ算出部114は、クリア処理以前に取得した前エッジ数をクリア処理以降の後エッジ数と比較して、割り込み処理実行の要否を判断する。本実施形態の構成に反して、クリア処理以降に前エッジ数を取得して、後エッジ数と比較し要否判断する構成を採用した場合、マスクエッジ算出部114による要否判断の結果と、エッジフラグレジスタ161bの状態とが相違しうる。具体的には、クリア処理から前エッジ数の取得までに非分周エッジが発生した場合、この非分周エッジは分周フラグレジスタ161aをオンにせず、前エッジ数と後エッジ数との差も生じさせない。故にこの非分周エッジは、マスクエッジ算出部114ではクランク割り込み処理実行不要と判断されマスクエッジ数に含められるにも拘わらず、エッジフラグレジスタ161bをオンとし割り込み処理の実行に用いられる。
In addition, the mask
この懸念に対し本実施形態では、マスクエッジ算出部114は、クリア処理から後エッジ数取得までのいつエッジが発生した場合であっても、前エッジ数と後エッジ数との差に基づいてクランク割込み処理の実行を要すると判断しうる。故にマスクエッジ算出部114は、そのエッジが非分周エッジであっても検出し、オンに書き換わったエッジフラグレジスタ161bの状態と、クランク割り込み処理の実行の要否判断の結果とを一致させうる。故にマスクエッジ算出部114は、クリア後にエッジフラグレジスタ161bのフラグが書き換わった場合においても、エッジの数と実行回数とのズレを抑制しうる。
In contrast to this concern, in the present embodiment, the mask
以上のように、マスクエッジ算出部114は、どのタイミングにおいてクランク信号にエッジが発生した場合においても、エッジによるクランク割り込み処理の実行と同期させてマスクエッジ数を算出しうる。故にクランク角処理部111は、算出されたマスクエッジ数に基づきクランク角のズレを抑制可能となる。
As described above, the mask
<第二実施形態>
第二実施形態は、第一実施形態の変形例である。第二実施形態では、図8に示すクランク信号設定サブルーチンの処理が、図4に示した処理に換えてプロセッサコア110により実行される。図8に示す第二実施形態におけるクランク信号設定サブルーチンの処理では、図4のS110〜S114の処理が、S210〜S214に置き換えられている。
<Second embodiment>
The second embodiment is a modification of the first embodiment. In the second embodiment, the processing of the crank signal setting subroutine shown in FIG. 8 is executed by the
S210は、図4のS111に相当する処理である。すなわちS210では、エッジカウンタ142から、現在のエッジ数を取得する。S210は、S213での分周フラグレジスタ161aのフラグ取得以前に実施される。従ってS210で取得されたエッジ数は、前エッジ数に相当する。
S210 is a process corresponding to S111 of FIG. That is, in S210, the current number of edges is acquired from the
S211は、図4のS110に相当する処理である。すなわちS211では、割り込みコントローラ160に対し、エッジフラグレジスタ161bによるクランク割り込み処理を有効にさせる。
S211 is a process corresponding to S110 of FIG. That is, in S211, the interrupt
S212は、図4のS112に相当する処理である。すなわちS212では、エッジフラグレジスタ161bの保持する割り込み要求フラグをクリアする。
S212 is a process corresponding to S112 of FIG. That is, in S212, the interrupt request flag held by the
S213は、図4のS113に相当する処理である。すなわちS213では、分周フラグレジスタ161aの保持する割り込み要求フラグを取得する。
S213 is a process corresponding to S113 of FIG. That is, in S213, the interrupt request flag held by the frequency
S214は、図4のS114に相当する処理である。すなわちS214では、エッジカウンタ142から、現在のエッジ数を再度取得する。S214は、S213での分周フラグレジスタ161aのフラグ取得以降に実施される。従ってS214で取得されたエッジ数は、後エッジ数に相当する。S214は、S212でのエッジフラグレジスタ161bのクリア以降に実施される。
S214 is a process corresponding to S114 of FIG. That is, in S214, the current number of edges is acquired again from the
[第二実施形態のまとめ]
以上、説明した第二実施形態によれば、第一実施形態と同様に、エンジンECU1は、マスクエッジ算出部114で算出されたマスクエッジ数に基づき、クランク角のズレを抑制して制御を実施しうる。
[Summary of Second Embodiment]
As described above, according to the second embodiment described above, the
また第二実施形態においても、マスクエッジ算出部114は分周フラグレジスタ161aのフラグと、前エッジ数と後エッジ数との差の有無と、に基づいてクランク割り込み処理の実行の要否を判断し、実行の要否に従ってマスクエッジ数を補正可能である。加えて第二実施形態においても、マスクエッジ算出部114は、前エッジ数の取得と後エッジ数の取得との間にクリアしたエッジフラグレジスタ161bのへの書き込みにより、クランク割り込み処理の実行を予約する。従って第二実施形態においても、第一実施形態と同様に、マスクエッジ算出部114は、どのタイミングにおいてクランク信号にエッジが発生した場合においても、クランク割り込み処理の実行と同期させてマスクエッジ数を算出しうる。
Also in the second embodiment, the mask
<第三実施形態>
第三実施形態は、第一実施形態の別の変形例である。第三実施形態では、図9に示すクランク信号設定サブルーチンの処理が、図4に示した処理に換えてプロセッサコア110により実行される。図9に示す第三実施形態におけるクランク信号設定サブルーチンの処理では、図4のS110〜S114の処理が、S310〜S314に置き換えられている。
<Third embodiment>
The third embodiment is another modification of the first embodiment. In the third embodiment, the processing of the crank signal setting subroutine shown in FIG. 9 is executed by the
S310は、図4のS110に相当する処理である。すなわちS310では、割り込みコントローラ160に対し、エッジフラグレジスタ161bによるクランク割り込み処理を有効にさせる。
S310 is a process corresponding to S110 of FIG. That is, in S310, the interrupt
S311は、図4のS111に相当する処理である。すなわちS311では、エッジカウンタ142から、現在のエッジ数を取得する。S311は、S312での分周フラグレジスタ161aのフラグ取得以前に実施される。従ってS311で取得されたエッジ数は、前エッジ数に相当する。またS311は、S313でのエッジフラグレジスタ161bのクリア以前に実施される。
S311 is a process corresponding to S111 of FIG. That is, in S311, the current edge number is acquired from the
S312は、図4のS113に相当する処理である。すなわちS312では、分周フラグレジスタ161aの保持する割り込み要求フラグを取得する。
S312 is a process corresponding to S113 of FIG. That is, in S312, the interrupt request flag held by the frequency
S313は、図4のS112に相当する処理である。すなわちS313では、エッジフラグレジスタ161bの保持する割り込み要求フラグをクリアする。
S313 is a process corresponding to S112 of FIG. That is, in S313, the interrupt request flag held by the
S314は、図4のS114に相当する処理である。すなわちS314では、エッジカウンタ142から、現在のエッジ数を再度取得する。S314は、S312での分周フラグレジスタ161aのフラグ取得以降に実施される。従ってS314で取得されたエッジ数は、後エッジ数に相当する。またS314は、S313でのエッジフラグレジスタ161bのクリア以降に実施される。
S314 is a process corresponding to S114 of FIG. That is, in S314, the current number of edges is acquired again from the
[第三実施形態のまとめ]
以上、説明した第三実施形態によれば、第一実施形態と同様に、エンジンECU1は、マスクエッジ算出部114で算出されたマスクエッジ数に基づき、クランク角のズレを抑制して制御を実施しうる。
[Summary of Third Embodiment]
As described above, according to the third embodiment described above, the
また第三実施形態においても、マスクエッジ算出部114は、分周フラグレジスタ161aのフラグと、前エッジ数と後エッジ数との差の有無と、に基づいてクランク割り込み処理の実行の要否を判断し、実行の要否に従ってマスクエッジ数を補正可能である。加えて第三実施形態においても、マスクエッジ算出部114は、前エッジ数の取得と後エッジ数の取得との間にクリアしたエッジフラグレジスタ161bのへの書き込みにより、クランク割り込み処理の実行を予約する。従って第三実施形態においても、第一実施形態と同様に、マスクエッジ算出部114は、どのタイミングにおいてクランク信号にエッジが発生した場合においても、クランク割り込み処理の実行と同期させてマスクエッジ数を算出しうる。
Also in the third embodiment, the mask
<第四実施形態>
第四実施形態は、第一実施形態の別の変形例である。第四実施形態では、図10に示すクランク信号設定サブルーチンの処理が、図4に示した処理に換えてプロセッサコア110により実行される。図10に示す第四実施形態におけるクランク信号設定サブルーチンの処理では、図4のS110〜S114の処理が、S410〜S414に置き換えられている。
<Fourth Embodiment>
The fourth embodiment is another modification of the first embodiment. In the fourth embodiment, the processing of the crank signal setting subroutine shown in FIG. 10 is executed by the
S410は、図4のS111に相当する処理である。すなわちS410では、エッジカウンタ142から、現在のエッジ数を取得する。S410は、S412での分周フラグレジスタ161aのフラグ取得以前に実施される。従ってS410で取得されたエッジ数は、前エッジ数に相当する。またS410は、S413でのエッジフラグレジスタ161bのクリア以前に実施される。
S410 is a process corresponding to S111 of FIG. That is, in S410, the current number of edges is acquired from the
S411は、図4のS110に相当する処理である。すなわちS411では、割り込みコントローラ160に対し、エッジフラグレジスタ161bによるクランク割り込み処理を有効にさせる。
S411 is a process corresponding to S110 of FIG. That is, in step S411, the interrupt
S412は、図4のS113に相当する処理である。すなわちS412では、分周フラグレジスタ161aの保持する割り込み要求フラグを取得する。
S412 is a process corresponding to S113 of FIG. That is, in S412, the interrupt request flag held by the frequency
S413は、図4のS112に相当する処理である。すなわちS413では、エッジフラグレジスタ161bの保持する割り込み要求フラグをクリアする。
S413 is a process corresponding to S112 of FIG. That is, in S413, the interrupt request flag held by the
S414は、図4のS114に相当する処理である。すなわちS414では、エッジカウンタ142から、現在のエッジ数を再度取得する。S414は、S412での分周フラグレジスタ161aのフラグ取得以降に実施される。従ってS414で取得されたエッジ数は、後エッジ数に相当する。またS414は、S413でのエッジフラグレジスタ161bのクリア以降に実施される。
S414 is a process corresponding to S114 of FIG. That is, in S414, the current number of edges is acquired again from the
[第四実施形態のまとめ]
以上、説明した第四実施形態によれば、第一実施形態と同様に、エンジンECU1は、マスクエッジ算出部114で算出されたマスクエッジ数に基づき、クランク角のズレを抑制して制御を実施しうる。
[Summary of Fourth Embodiment]
As described above, according to the fourth embodiment described above, the
また第四実施形態においても、マスクエッジ算出部114は、分周フラグレジスタ161aのフラグと、前エッジ数と後エッジ数との差の有無と、に基づいてクランク割り込み処理の実行の要否を判断し、実行の要否に従ってマスクエッジ数を補正可能である。加えて第四実施形態においても、マスクエッジ算出部114は、前エッジ数の取得と後エッジ数の取得との間にクリアしたエッジフラグレジスタ161bのへの書き込みにより、クランク割り込み処理の実行を予約する。従って第四実施形態においても、第一実施形態と同様に、マスクエッジ算出部114は、どのタイミングにおいてクランク信号にエッジが発生した場合においても、クランク割り込み処理の実行と同期させてマスクエッジ数を算出しうる。
Also in the fourth embodiment, the mask
<他の実施形態>
以上、本開示の実施形態を説明したが、本開示は上述の実施形態に限定されるものではなく、次の変形例も本開示の技術的範囲に含まれ、さらに、下記以外にも要旨を逸脱しない範囲内で種々変更して実施できる。なお、以下の説明において、それまでに使用した符号と同一番号の符号を有する要素は、特に言及する場合を除き、それ以前の実施形態における同一符号の要素と同一である。また、構成の一部のみを説明している場合、構成の他の部分については先に説明した実施形態を適用できる。
<Other Embodiments>
Although the embodiments of the present disclosure have been described above, the present disclosure is not limited to the above-described embodiments, and the following modifications are also included in the technical scope of the present disclosure. Various modifications can be made without departing from the scope. In the following description, elements having the same reference numerals as those used up to now are the same as the elements having the same reference numerals in the previous embodiments, unless otherwise specified. Further, when only a part of the configuration is described, the above-described embodiment can be applied to the other part of the configuration.
上述の実施形態においては、分周フラグレジスタ161aの割り込み要求フラグを無効に切替える処理は、マスクエッジ数の算出以降に行われていた。しかし、分周フラグレジスタ161aの割り込み要求を取得可能であれば、無効に切替える処理のタイミングはこれに限られず適宜変更可能である。
In the above-described embodiment, the process of switching the interrupt request flag of the frequency
上述の実施形態においては、クランク信号のエッジは立ち上がりエッジを用いていた。しかし、立ち下がりエッジを用いる構成でもよい。 In the above-described embodiment, the rising edge is used as the edge of the crank signal. However, a configuration using a falling edge may be used.
1 エンジンECU(内燃機関制御装置)、 111 クランク角処理部、 112 入力切替部、 113 取得部、 114 マスクエッジ算出部、 142 エッジカウンタ、 141 アングルクロック生成部、 161 フラグレジスタ、 161a 分周フラグレジスタ、 161b エッジフラグレジスタ 1 engine ECU (internal combustion engine control unit), 111 crank angle processing unit, 112 input switching unit, 113 acquisition unit, 114 mask edge calculation unit, 142 edge counter, 141 angle clock generation unit, 161 flag register, 161a frequency division flag register , 161b Edge flag register
Claims (10)
前記内燃機関の現在のクランク角に同期した処理を行うクランク角処理部(111)と、
前記アングルクロック生成部への入力を前記クランク信号から前記カム信号に切替えさせる入力切替部(112)と、
前記クランク信号のエッジをカウントしたエッジ数を保持するエッジカウンタ(142)と、
前記クランク信号のエッジ発生に基づくフラグであって、前記クランク角処理部の起床を要求する割り込み要求フラグを保持するフラグレジスタ(161)と、
前記入力切替部による入力切替期間に、前記フラグレジスタの保持状況と、前記エッジ数とを取得する取得部(113)と、
前記取得部の取得した前記フラグレジスタの保持状況と、前記エッジ数の変化の有無とに基づいて、マスクエッジ数を算出するマスクエッジ算出部(114)と、を備える内燃機関制御装置。 An angle clock generation unit (141) that generates an angle clock based on the input crank signal or cam signal of the internal combustion engine,
A crank angle processing unit (111) for performing processing in synchronization with the current crank angle of the internal combustion engine;
An input switching unit (112) for switching the input to the angle clock generation unit from the crank signal to the cam signal,
An edge counter (142) for holding the number of edges counting the edges of the crank signal,
A flag register (161) for holding an interrupt request flag for requesting wake-up of the crank angle processing unit, the flag being based on the edge generation of the crank signal;
An acquisition unit (113) for acquiring the holding status of the flag register and the number of edges during the input switching period by the input switching unit;
An internal combustion engine control device comprising: a mask edge calculation unit (114) that calculates the number of mask edges based on the holding status of the flag register acquired by the acquisition unit and whether or not the number of edges has changed.
前記入力切替部は、前記入力切替期間に、前記エッジフラグレジスタの割り込み要求を有効にする有効化処理と、前記エッジフラグレジスタの保持する割り込み要求をクリアするクリア処理と、を行い、
前記取得部は、前記入力切替期間に、前記分周フラグレジスタの割り込み要求フラグを前記保持状況として取得するフラグ取得処理と、前記エッジ数を取得する第一エッジ数取得処理および第二エッジ数取得処理と、を行い、
前記マスクエッジ算出部は、前記エッジ数の変化の有無として、前記第一エッジ数取得処理および前記第二エッジ数取得処理で取得した前記エッジ数の間の変化の有無を判断する請求項1〜4のいずれか1項に記載の内燃機関制御装置。 The flag register has an edge flag register (161b) which is in a state indicating that an interrupt request is generated each time an edge of the crank signal is generated, and a state in which an interrupt request is generated each time a divided edge of the crank signal edges is generated. And a frequency division flag register (161a)
The input switching unit performs, during the input switching period, a validating process for validating an interrupt request of the edge flag register and a clearing process for clearing an interrupt request held by the edge flag register,
The acquisition unit, during the input switching period, a flag acquisition process that acquires the interrupt request flag of the frequency division flag register as the holding state, a first edge number acquisition process and a second edge number acquisition process that acquires the number of edges. Process and
The mask edge calculation unit determines whether there is a change between the number of edges acquired in the first edge number acquisition processing and the second edge number acquisition processing as the presence or absence of the change in the number of edges. 4. The internal combustion engine controller according to any one of 4 above.
前記マスクエッジ算出部は、前記エッジフラグレジスタを割り込み要求ありを示す状態に切替えさせることにより、前記クランク角処理部を起床させる請求項5に記載の内燃機関制御装置。 The acquisition unit executes the first edge number acquisition process before the flag acquisition process and before the clear process, and the second edge number acquisition process after the flag acquisition process and Execute after clearing process,
The internal combustion engine control device according to claim 5, wherein the mask edge calculation unit wakes up the crank angle processing unit by switching the edge flag register to a state indicating that there is an interrupt request.
前記取得部は、前記有効化処理の後に前記第一エッジ数取得処理を行い、
前記入力切替部は、前記第一エッジ数取得処理の後に前記クリア処理を行い、
前記取得部は、前記クリア処理の後に前記フラグ取得処理を行い、前記フラグ取得処理の後に前記第二エッジ数取得処理を行う請求項5または6に記載の内燃機関制御装置。 When the input switching period is started, the input switching unit performs the validation process,
The acquisition unit performs the first edge number acquisition process after the activation process,
The input switching unit performs the clear process after the first edge number acquisition process,
The internal combustion engine control device according to claim 5, wherein the acquisition unit performs the flag acquisition process after the clear process, and performs the second edge number acquisition process after the flag acquisition process.
前記入力切替部は、前記第一エッジ数取得処理の後に前記有効化処理を行い、前記有効化処理の後に前記クリア処理を行い、
前記取得部は、前記クリア処理の後に前記フラグ取得処理を行い、前記フラグ取得処理の後に前記第二エッジ数取得処理を行う請求項5または6に記載の内燃機関制御装置。 When the input switching period is started, the acquisition unit performs the first edge number acquisition process,
The input switching unit performs the validation processing after the first edge number acquisition processing, performs the clear processing after the validation processing,
The internal combustion engine control device according to claim 5, wherein the acquisition unit performs the flag acquisition process after the clear process, and performs the second edge number acquisition process after the flag acquisition process.
前記取得部は、前記有効化処理の後に前記第一エッジ数取得処理を行い、前記第一エッジ数取得処理の後に前記フラグ取得処理を行い、
前記入力切替部は、前記フラグ取得処理の後に前記クリア処理を行い、
前記取得部は、前記クリア処理の後に前記第二エッジ数取得処理を行う請求項5または6に記載の内燃機関制御装置。 When the input switching period is started, the input switching unit performs the validation process,
The acquisition unit performs the first edge number acquisition process after the activation process, performs the flag acquisition process after the first edge number acquisition process,
The input switching unit performs the clear process after the flag acquisition process,
The internal combustion engine control device according to claim 5, wherein the acquisition unit performs the second edge number acquisition process after the clear process.
前記入力切替部は、前記第一エッジ数取得処理の後に前記有効化処理を行い、
前記取得部は、前記有効化処理の後に前記フラグ取得処理を行い、
前記入力切替部は、前記フラグ取得処理の後に前記クリア処理を行い、
前記取得部は、前記クリア処理の後に前記第二エッジ数取得処理を行う請求項5または6に記載の内燃機関制御装置。 When the input switching period is started, the acquisition unit performs the first edge number acquisition process,
The input switching unit performs the validation processing after the first edge number acquisition processing,
The acquisition unit performs the flag acquisition process after the activation process,
The input switching unit performs the clear process after the flag acquisition process,
The internal combustion engine control device according to claim 5, wherein the acquisition unit performs the second edge number acquisition process after the clear process.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019003702A JP7251151B2 (en) | 2019-01-11 | 2019-01-11 | internal combustion engine controller |
DE102019220373.6A DE102019220373A1 (en) | 2019-01-11 | 2019-12-20 | INTERNAL COMBUSTION CONTROL UNIT |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019003702A JP7251151B2 (en) | 2019-01-11 | 2019-01-11 | internal combustion engine controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020112104A true JP2020112104A (en) | 2020-07-27 |
JP7251151B2 JP7251151B2 (en) | 2023-04-04 |
Family
ID=71524209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019003702A Active JP7251151B2 (en) | 2019-01-11 | 2019-01-11 | internal combustion engine controller |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7251151B2 (en) |
DE (1) | DE102019220373A1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006200484A (en) * | 2005-01-21 | 2006-08-03 | Denso Corp | Engine control device |
JP2012117452A (en) * | 2010-12-01 | 2012-06-21 | Hitachi Automotive Systems Ltd | Engine control device |
JP2013160086A (en) * | 2012-02-02 | 2013-08-19 | Hitachi Automotive Systems Ltd | Control device for internal combustion engine |
JP2018135785A (en) * | 2017-02-21 | 2018-08-30 | 株式会社デンソー | Engine control device |
-
2019
- 2019-01-11 JP JP2019003702A patent/JP7251151B2/en active Active
- 2019-12-20 DE DE102019220373.6A patent/DE102019220373A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006200484A (en) * | 2005-01-21 | 2006-08-03 | Denso Corp | Engine control device |
JP2012117452A (en) * | 2010-12-01 | 2012-06-21 | Hitachi Automotive Systems Ltd | Engine control device |
JP2013160086A (en) * | 2012-02-02 | 2013-08-19 | Hitachi Automotive Systems Ltd | Control device for internal combustion engine |
JP2018135785A (en) * | 2017-02-21 | 2018-08-30 | 株式会社デンソー | Engine control device |
Also Published As
Publication number | Publication date |
---|---|
DE102019220373A1 (en) | 2020-07-30 |
JP7251151B2 (en) | 2023-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7942041B2 (en) | Engine control device | |
JP4449760B2 (en) | Engine control device | |
JP4274253B2 (en) | ENGINE CONTROL DEVICE AND PROGRAM | |
JP2007334587A (en) | Abnormality monitoring program, recording medium and electronic apparatus | |
JP2007205242A (en) | Engine control device | |
US7089149B2 (en) | Method and apparatus for detecting an angle of a rotating shaft | |
JP3508676B2 (en) | Engine control device | |
JP3539327B2 (en) | Engine control device | |
JP3503593B2 (en) | Engine control device | |
JP7251151B2 (en) | internal combustion engine controller | |
JP3506116B2 (en) | Engine control device | |
JP4582252B2 (en) | Engine control device | |
JP5870977B2 (en) | Rotation angle detection system | |
JP2018135785A (en) | Engine control device | |
JP2021163425A (en) | Electronic control device | |
JP2012108786A (en) | Microcomputer and processing synchronization method | |
JP2013084059A (en) | Electronic control device | |
JP2004003454A (en) | Engine control system | |
JP4333552B2 (en) | Engine control device | |
JP6003869B2 (en) | Engine control device | |
JP2020148120A (en) | Electronic controller and microcomputer | |
JP7314838B2 (en) | electronic controller | |
JP5794012B2 (en) | Electronic control unit | |
JP6717185B2 (en) | Engine controller | |
JP6071697B2 (en) | Internal combustion engine control device, internal combustion engine control method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210625 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220531 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220705 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220830 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221018 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221212 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230221 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230306 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7251151 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |