JP2018181144A - 電子制御装置 - Google Patents

電子制御装置 Download PDF

Info

Publication number
JP2018181144A
JP2018181144A JP2017082878A JP2017082878A JP2018181144A JP 2018181144 A JP2018181144 A JP 2018181144A JP 2017082878 A JP2017082878 A JP 2017082878A JP 2017082878 A JP2017082878 A JP 2017082878A JP 2018181144 A JP2018181144 A JP 2018181144A
Authority
JP
Japan
Prior art keywords
map
value
interpolation
calculation
values
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
Application number
JP2017082878A
Other languages
English (en)
Other versions
JP6885177B2 (ja
Inventor
徳親 川端
Norichika Kawabata
徳親 川端
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2017082878A priority Critical patent/JP6885177B2/ja
Publication of JP2018181144A publication Critical patent/JP2018181144A/ja
Application granted granted Critical
Publication of JP6885177B2 publication Critical patent/JP6885177B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Combined Controls Of Internal Combustion Engines (AREA)
  • Complex Calculations (AREA)

Abstract

【課題】探索値に対応する補間値を特定するまでの処理時間を適切に短縮する。【解決手段】電子制御装置1は、代表値とマップ値との対応を示すマップを記憶するマップ記憶部6と、マップを用いた補間処理として、探索値に対応する代表値間を探索して算出エリアを特定する探索処理と、探索処理により特定した算出エリアのマップ値を線形補間演算して補間値を特定する線形補間演算処理とを実施することが可能な演算部5と、を備える。演算部5は、マップの補間対象の領域のうち少なくとも一部の行又は列でマップ値が全て同値であり、少なくともマップ値が全て同値である行又は列を算出エリアとする場合に、少なくとも線形補間演算処理の一部又は全体を実施せずに補間値を特定する。【選択図】図9

Description

本発明は、電子制御装置に関する。
従来より、代表値とマップ値との対応を示すマップを用い、例えばセンサから出力されたセンサ値を入力すると、その入力したセンサ値を探索値として補間処理を実施し、その探索値に対応する補間値を特定する技術が開示されている。補間処理では、最初に探索処理を実施し、探索値と代表値との大小を順次判定し、探索値に対応する代表値間を探索して算出エリアを特定する。補間処理では、続いて線形補間演算処理を実施し、探索処理により特定した算出エリアのマップ値を線形補間演算して補間値を特定する。このように補間処理では探索処理と線形補間演算処理とを順次実施し、探索値に対応する補間値を特定する(例えば特許文献1参照)。
特開2004−1902028号公報
ところで、マップの補間対象の全領域でマップ値が全て同値の場合がある。マップの補間対象の全領域でマップ値が全て同値であれば、どの算出エリアのマップ値を線形補間演算しても補間値はマップ値と同値となる。しかしながら、マップの補間対象の全領域でマップ値が全て同値の場合であっても補間処理を一律的に実施してしまうと、探索処理と線形補間演算処理とを実施する分、補間値を特定するまでの処理時間が長くなる。
又、マップの補間対象の領域のうち一部の行又は列でマップ値が全て同値であり、その一部の行又は列でマップ値が全て同値のエリアを算出エリアとして特定する場合もある。算出エリアとして特定した一部の行又は列でマップ値が全て同値であれば、その算出エリアのマップ値を線形補間演算しても補間値はマップ値と同値となる。しかしながら、マップの補間対象の領域のうち算出エリアとして特定した一部の行又は列でマップ値が全て同値の場合であっても線形補間演算処理の全体を一律的に実施してしまうと、線形補間演算処理の全体を実施する分、補間値を特定するまでの処理時間が長くなる。
このような補間値を特定するまでの処理時間が長くなるという問題に対し、補間処理を実施する演算部のクロック周波数を高めて処理能力を向上させたり、演算部に複数のコアを実装して各コアの負荷を減少させるマルチコアシステムを導入したりする構成が想定される。ところが、演算部のクロック周波数を高める構成では、消費電力や発熱量やノイズが増加する等の新たな問題が発生する。又、マルチコアシステムを導入する構成では、マルチコアシステムに対応した全ての機能を一から開発するのにコスト高になる等の新たな問題が発生する。このような事情から、演算部のクロック周波数を高めたりマルチコアシステムを導入したりせずに、補間値を特定するまでの処理時間を短縮する技術が望まれている。
本発明は、上記した事情に鑑みてなされたものであり、その目的は、探索値に対応する補間値を特定するまでの処理時間を適切に短縮することができる電子制御装置を提供することにある。
請求項1に記載した発明によれば、マップ記憶部(6a)は、代表値とマップ値との対応を示すマップを記憶する。演算部(5)は、マップを用いた補間処理として、探索値に対応する代表値間を探索して算出エリアを特定する探索処理と、探索処理により特定した算出エリアのマップ値を線形補間演算して補間値を特定する線形補間演算処理とを実施することが可能である。演算部は、マップの補間対象の領域のうち少なくとも一部の行又は列でマップ値が全て同値であり、少なくともマップ値が全て同値である行又は列を算出エリアとする場合に、少なくとも線形補間演算処理の一部又は全体を実施せずに補間値を特定する。
マップの補間対象の領域のうち少なくとも一部の行又は列でマップ値が全て同値であり、少なくともマップ値が全て同値である行又は列を算出エリアとする場合に、補間処理として探索処理と線形補間演算処理とを一律的に実施して補間値を特定するのではなく、補間処理のうち少なくとも線形補間演算処理の一部又は全体を実施せずに補間値を特定するようにした。少なくとも線形補間演算処理の一部又は全体を実施しないことで、少なくとも線形補間演算処理の一部又は全体に費やす時間を省くことができ、補間値を特定するまでの処理時間を適切に短縮することができる。この場合、プログラムを改良してソフトウェアを変更することで実現可能であるので、演算部のクロック周波数を高めたりマルチコアシステムを導入したりする必要もない。
本発明の一実施形態を示す機能ブロック図 マップを示す図 線形補間演算の流れを示す図(その1) 同値判定処理を示すフローチャート 各行同値判定処理を示すフローチャート 各列同値判定処理を示すフローチャート 全領域同値判定処理を示すフローチャート 全マップ同値判定処理を示すフローチャート 補間値特定処理を示すフローチャート 補間値を特定する態様を示す図(その1) 補間値を特定する態様を示す図(その2) 補間値を特定する態様を示す図(その3) 補間値を特定する態様を示す図(その4) 補間値を特定する態様を示す図(その5) 線形補間演算の流れを示す図(その2)
以下、本発明を例えば車両に搭載されているエンジンの駆動を制御する電子制御装置に適用した一実施形態について図面を参照して説明する。図1に示すように、電子制御装置1は、マイクロコンピュータ(以下、マイコンと称する)2と、データ転送部3とを有する。データ転送部3は、車両に搭載されているバス4との間のデータ転送を制御する。バス4は、例えばCAN(登録商標)、CXPI(登録商標)、FlexRay(登録商標)、MOST(登録商標)、LIN等である。
マイコン2は、CPU5(演算部に相当する)と、ROM6と、RAM7(フラグ記憶部に相当する)とを有し、それらがバス8を介して相互接続されている。ROM6は、CPU5が実行するプログラムを記憶すると共に、マップ1〜p(pは自然数)を記憶するマップ記憶部6aと、マップ1〜pのパラメータを記憶するパラメータ記憶部6bとを有する。マップ1〜p及びマップ1〜pのパラメータは、CPU5が補間処理を実施する際に使用される。マップ1〜pのパラメータは、ユーザが任意に設定可能なパラメータである。RAM7は、マップ1〜pのフラグ群及び全マップ同値判定完了フラグを記憶する。マップ1〜pのフラグ群及び全マップ同値判定完了フラグも、CPU5が補間処理を実施する際に使用される。
マップ1〜pのフラグ群は、それぞれ同値判定完了フラグと、各行同値フラグと、各列同値フラグと、全領域同値フラグとを含む。同値判定完了フラグは、マップの補間対象の領域についてマップ値の同値判定を完了しているか否かを示すフラグである。各行同値フラグは、マップの補間対象の領域のうち一部の行でマップ値が全て同値であるか否かを示すフラグである。各列同値フラグは、マップの補間対象の領域のうち一部の列でマップ値が全て同値であるか否かを示すフラグである。全領域同値フラグは、マップの補間対象の全領域でマップ値が全て同値であるか否かを示すフラグである。全マップ同値判定完了フラグは、同値判定の対象とする全てのマップについてマップ値の同値判定を完了しているか否かを示すフラグである。
CPU5は、バス8を介してROM6及びRAM7に対してアクセス可能である。CPU5は、ROM6に対してアクセスすることで、ROM6からプログラム、マップ1〜p及びマップ1〜pのパラメータを読み出す。CPU5は、RAM7に対してアクセスすることで、マップ1〜pのフラグ群のオンオフを設定し、全マップ同値判定完了フラグのオンオフを設定する。
データ転送部3は、バス4を介してセンサ9を接続しており、センサ9が検知したセンサ値を含むセンサ信号をバス4を介して入力する。又、データ転送部3は、センサ10を直接接続しており、センサ10が検知したセンサ値を含むセンサ信号を直接入力する。センサ9,10は、エンジンの駆動を制御するのに必要なセンサ値を検知するセンサであり、例えばエンジンの冷却水の温度を検知する水温センサ、エンジンの回転数及び回転角位置を検知する回転角センサ、吸入空気の温度を検知する吸気温センサ、吸入空気の圧力を検知する吸気圧センサ、スロットルバルブの開度を検知するスロットル開度センサ等である。CPU5は、センサ9,10から出力されたセンサ信号がデータ転送部3に入力されることで、エンジンの冷却水の温度、エンジンの回転数及び回転角位置、吸入空気の温度、吸入空気の圧力、スロットルバルブの開度等を特定し、その特定結果を用いてエンジンの駆動を制御する。
ここで、マップを用いた補間処理について説明する。CPU5は、センサ9,10から出力されたセンサ信号がデータ転送部3に入力されると、そのセンサ信号に含まれるセンサ値を探索値とし、マップを用いた補間処理を実施し、探索値に対応する補間値を特定する。尚、ここでは、センサ9,10から入力したセンサ信号に含まれるセンサ値を探索値とする場合を説明するが、CPU5が各種制御処理を実施する際に算出した制御値を探索値とする場合も同様である。CPU5は、最初に探索処理を実施し、探索値と代表値との大小を順次判定し、探索値に対応する代表値間を探索して算出エリアを特定する。CPU5は、続いて線形補間演算処理を実施し、探索処理により特定した算出エリアのマップ値を線形補間演算して補間値を特定する。CPU5は、補間処理として探索処理と線形補間演算処理とを実施し、探索値に対応する補間値を特定する。
図2に示すように、2次元マップを補間処理の対象とするマップとし、X軸の代表値X1〜X5、Y軸の代表値Y1〜Y5に対応し、マップ値Z11〜Z55が記憶されている場合を説明する。CPU5は、最初に探索処理を実施し、探索値(X,Y)に対して「X1≦X≦X2,Y1≦Y≦Y2」を特定すると、算出エリアとしてX1列、X2列、Y1行、Y2行を特定する。CPU5は、続いて線形補間演算処理を実施し、算出エリアとして特定したX1,X2,Y1,Y2のマップ値を図3に示す手順にしたがって線形補間演算して補間値Zを特定する。
即ち、CPU5は、(X1,Y1,Z11)、(X2,Y1,Z12)を用い、以下の演算式により補間値Zaを算出する。
Za=((Z12−Z11)/(X2−X1)×(X−X1)+Z11)
次に、CPU5は、(X1,Y2,Z21)、(X2,Y2,Z22)を用い、以下の演算式により補間値Zbを算出する。
Zb=((Z22−Z21)/(X2−X1)×(X−X1)+Z21)
そして、CPU5は、(X,Y1,Za)、(X,Y2,Zb)を用い、以下の演算式により補間値Zを算出する。
Z=((Zb−Za)/(Y2−Y1)×(Y−Y1)+Za)
CPU5は、このようにして探索値(X,Y)に対応する補間値Zを特定する。即ち、CPU5は、例えばX軸をエンジンの冷却水の温度の代表値とし、Y軸をエンジンの回転数の代表値として補間処理を実施すると、エンジンの冷却水の温度とエンジンの回転数との対応関係に依存する制御データを補間値として特定する。
前述したようにマップの補間対象の全領域でマップ値が全て同値の場合や、マップの補間対象の領域のうち算出エリアとして特定した一部の行又は列でマップ値が全て同値の場合がある。そのような場合でも上記した補間処理を一律的に実施してしまうと、補間値を特定するまでの処理時間が長くなる。この点を考慮し、本実施形態ではCPU5は以下の処理を実施する。
次に、上記した構成の作用について図4から図15を参照して説明する。ここでは、同値判定処理の対象とするマップを同値判定対象マップと称し、補間値特定処理の対象とするマップを補間値特定対象マップと称する。CPU5は、ROM6から読み出したプログラムにしたがって同値判定処理を実施し、同値判定対象マップにおいてマップ値の同値判定を実施し、その判定結果をマップのフラグ群としてRAM7に記憶する。又、CPU5は、ROM6から読み出したプログラムにしたがって全マップ同値判定処理を実施し、全ての同値判定対象マップにおいてマップ値の同値判定を実施し、その判定結果を全マップ同値判定完了フラグとしてRAM7に記憶する。又、CPU5は、ROM6から読み出したプログラムにしたがって補間値特定処理を実施し、補間値特定対象マップにおいて補間値を特定する。以下、CPU5が実施する同値判定処理、全マップ同値判定処理、補間値特定処理について順次説明する。
(1)同値判定処理
同値判定対象マップとしてN行×M列(N,Mは2以上の自然数)の2次元マップであるマップ1を代表し、マップの行を示す変数を「i」とし、マップの列を示す変数を「k」とする。
図4に示すように、CPU5は、マップ1の同値判定処理を開始すると、マップ1の同値判定完了フラグがオンであるか否かを判定し、マップ1の同値判定を完了しているか否かを判定する(S1)。CPU5は、マップ1の同値判定完了フラグがオンであると判定し、マップ1の同値判定を完了していると判定すると(S1:YES)、マップ1の同値判定処理を完了する。一方、CPU5は、マップ1の同値判定完了フラグがオンでないと判定し、マップ1の同値判定を完了していないと判定すると(S1:NO)、マップ1の行数を示すNを「ROW」に格納し、マップ1の列数を示すMを「COLUMN」に格納し(S2)、各行同値判定処理に移行する(S3)。
図5に示すように、CPU5は、各行同値判定処理を開始すると、iに「1」を設定し、kに「2」を設定し(S11)、i行×1列のマップ値とi行×k列のマップ値とを比較し、両者が同値であるか否かを判定する(S12)。CPU5は、i行×1列のマップ値とi行×k列のマップ値とが同値であると判定すると(S12:YES)、kと「COLUMN」とを比較する(S13)。CPU5は、kが「COLUMN」未満であると判定すると(S13:YES)、次の列とマップ値の同値判定を行うようにkをインクリメントし(S14)、上記したステップS12に戻る。一方、CPU5は、kが「COLUMN」未満でなく、kが「COLUMN」に達したと判定すると(S13:NO)、i行のマップ値が全て同値であると特定し(S15)、マップ1のi行同値フラグをオンに設定し、i行の同値判定を完了し、iと「ROW」とを比較する(S16)。
一方、CPU5は、i行×1列のマップ値とi行×k列のマップ値とが同値でないと判定すると(S12:NO)、i行のマップ値が同値でないと特定し(S17)、マップ1のi行同値フラグをオフに設定し、i行の同値判定を完了し、iと「ROW」とを比較する(S16)。CPU5は、iが「ROW」未満であると判定すると(S16:YES)、次の行の同値判定を行うようにiをインクリメントし(S18)、kに「2」を設定し(S19)、上記したステップS12に戻る。一方、CPU5は、iが「ROW」未満でなく、iが「ROW」に達したと判定すると(S16:NO)、全ての行の同値判定を完了し、各行同値判定処理を完了し、同値判定処理に戻る。
即ち、CPU5は、1行目の基準となる1列目の補間値(Z11)と、それ以外の2列目以降の補間値(Z12〜Z15)が全て同値であるか否かを判定し、全て同値であれば、1行目のマップ値が全て同値であると特定する。一方、CPU5は、途中の何れかの列で同値でなければ、1行目のマップ値が同値でないと特定する。CPU5は、1行目のマップ値の同値判定を完了すると、2行目以降のマップ値の同値判定も同様の手順にしたがって実施する。
CPU5は、同値判定処理に戻ると、各列同値判定処理に移行する(S4)。図6に示すように、CPU5は、各列同値判定処理を開始すると、iに「2」を設定し、kに「1」を設定し(S21)、1行×k列のマップ値とi行×k列のマップ値とを比較し、両者が同値であるか否かを判定する(S22)。CPU5は、1行×k列のマップ値とi行×k列のマップ値とが同値であると判定すると(S22:YES)、iと「ROW」とを比較する(S23)。CPU5は、iが「ROW」未満であると判定すると(S23:YES)、次の行と同値判定を行うようにiをインクリメントし(S24)、上記したステップS22に戻る。一方、CPU5は、iが「ROW」未満でなく、iが「ROW」に達したと判定すると(S23:NO)、k列のマップ値が全て同値であると特定し(S25)、マップ1のk列同値フラグをオンに設定し、k列の同値判定を完了し、kと「COLUMN」とを比較する(S26)。
一方、CPU5は、i行×k列のマップ値とi行×k列のマップ値とが同値でないと判定すると(S22:NO)、k列のマップ値が同値でないと特定し(S27)、マップ1のk列同値フラグをオフに設定し、k列の同値判定を完了し、kと「COLUMN」とを比較する(S26)。CPU5は、kが「COLUMN」未満であると判定すると(S26:YES)、次の列の同値判定を行うようにkをインクリメントし(S28)、iに「2」を設定し(S29)、上記したステップS22に戻る。一方、CPU5は、kが「COLUMN」未満でなく、kが「COLUMN」に達したと判定すると(S26:NO)、全ての列の同値判定を完了し、各列同値判定処理を完了し、同値判定処理に戻る。
即ち、CPU5は、1列目の基準となる1行目の補間値(Z11)と、それ以外の2行目以降の補間値(Z21〜Z51)が全て同値であるか否かを判定し、全て同値であれば、1列目のマップ値が全て同値であると特定する。一方、CPU5は、途中の何れかの行で同値でなければ、1列目のマップ値が同値でないと特定する。CPU5は、1列目のマップ値の同値判定を完了すると、2列目以降のマップ値の同値判定も同様の手順にしたがって実施する。
CPU5は、同値判定処理に戻ると、全領域同値判定処理に移行する(S5)。CPU5は、図7に示すように、全領域同値判定処理を開始すると、各行の同値判定結果と各列の同値判定結果とが全て同値であるか否かを判定する(S31)。CPU5は、各行の同値判定結果と各列の同値判定結果とが全て同値であると判定すると(S31:YES)、全領域のマップ値が全て同値であると特定し(S32)、全領域同値フラグをオンに設定し、全領域同値判定処理を完了し、同値判定処理に戻る。一方、CPU5は、各行の同値判定結果と各列の同値判定結果とが同値でないと判定すると(S31:NO)、全領域のマップ値が同値でないと特定し(S33)、全領域同値フラグをオフに設定し、全領域同値判定処理を完了し、同値判定処理に戻る。
CPU5は、同値判定処理に戻ると、マップ1の同値判定を完了し、同値判定完了フラグをオンに設定し(S6)、同値判定処理を完了する。
(2)全マップ同値判定処理
図8に示すように、CPU5は、全マップ同値判定処理を実施し、マップ1〜pの全てについて同値判定処理を実施する。CPU5は、全マップ同値判定処理を開始すると、全マップ同値判定完了フラグがオンであるか否かを判定し、全マップの同値判定を完了しているか否かを判定する(S41)。CPU5は、全マップ同値判定完了フラグがオンであると判定し、全マップの同値判定を完了していると判定すると(S41:YES)、全マップの同値判定処理を完了する。一方、CPU5は、全マップ同値判定完了フラグがオンでないと判定し、全マップの同値判定を完了していないと判定すると(S41:NO)、予め設定している設定順序にしたがって同値判定対象マップを順次設定し、マップ1〜pについて同値判定処理を実施する。
CPU5は、例えば昇順で同値判定対象マップを順次設定する場合であれば、マップ1の同値判定処理、マップ2の同値判定処理、マップ3の同値判定処理、…、マップ(p−1)の同値判定処理、マップpの同値判定処理を順次実施する(S42〜S46)。CPU5は、同値判定すべき全マップの同値判定を完了すると、全マップ同値判定完了フラグをオンに設定し(S47)、全マップ同値判定処理を完了する。
(3)補間値特定処理
図9に示すように、CPU5は、補間値特定処理を開始すると、全領域同値フラグを判定し、補間値特定対象マップの補間対象の全領域でマップ値が全て同値であるか否かを判定する(S51)。CPU5は、全領域同値フラグがオンであると判定し、補間値特定対象マップの補間対象の全領域でマップ値が全て同値であると判定すると(S51:YES)、予め指定している指定ポイントのマップ値を補間値Zとして特定し(S52)、補間値特定処理を完了する。
一方、CPU5は、全領域同値フラグがオフであると判定し、補間値特定対象マップの補間対象の全領域でマップ値が同値でないと判定すると(S51:NO)、探索処理を実施する。即ち、CPU5は、探索値と代表値との大小を順次判定し、探索値に対応する代表値間を探索して算出エリアを特定する。CPU5は、探索値(X,Y)に対して「Xa≦X<Xb,Ya≦Y<Yb」を特定し、算出エリアとしてXa列、Xb列、Ya行、Ybを特定すると、(Xa,Ya)のマップ値Z1、(Xb,Ya)のマップ値Z2、(Xa,Yb)のマップ値Z3、(Xb,Yb)のマップ値Z4を取得する(S53)。CPU5は、その特定したXa列、Xb列、Ya行、Yb行のマップ値について所定条件が成立しているか否かを判定する(S54)。この場合、CPU5は、Ya行、Yb行、Xa列、Xb列のマップ値が全て同値であること、Ya行、Yb行、Xa列のマップ値が全て同値であること、Ya行、Yb行、Xb列のマップ値が全て同値であること、のうち何れかを所定条件とする。
CPU5は、所定条件が成立していると判定すると(S54:YES)、予め指定している指定ポイントのマップ値を補間値Zとして特定し(S55)、補間値特定処理を完了する。一方、CPU5は、所定条件が成立していないと判定すると(S54:NO)、Ya行のマップ値が全て同値であるか否かを判定する(S56)。CPU5は、Ya行同値フラグがオンであると判定し、Ya行のマップ値が全て同値であると判定すると(S56:YES)、予め指定している指定ポイントのマップ値を補間値Zaとして特定する(S57)。一方、CPU5は、Ya行同値フラグがオフであると判定し、Ya行のマップ値が同値でないと判定すると(S56:NO)、(Xa,Ya,Z1)及び(Xb,Ya,Z2)を用いて線形補間演算処理を実施し、以下の演算式により補間値Zaを特定する(S58)。
Za=((Z2−Z1)/(Xb−Xa)×(X−Xa)+Z1)
CPU5は、Yb行のマップ値が全て同値であるか否かを判定する(S59)。CPU5は、Yb行同値フラグがオンであると判定し、Yb行のマップ値が全て同値であると判定すると(S59:YES)、予め指定している指定ポイントのマップ値を補間値Zbとして特定する(S60)。一方、CPU5は、Yb行同値フラグがオフであると判定し、Yb行のマップ値が同値でないと判定すると(S59:NO)、(Xa,Yb,Z3)及び(Xb,Yb,Z4)を用いて線形補間演算処理を実施し、以下の演算式により補間値Zbを特定する(S61)。
Zb=((Z4−Z3)/(Xb−Xa)×(X−Xa)+Z3)
CPU5は、補間値Za及び補間値Zbを特定すると、(X,Ya,Za)及び(X,Yb,Zb)を用いて線形補間演算処理を実施し、以下の演算式により補間値Zを特定する(S62)。
Z=((Zb−Za)/(Yb−Ya)×(Y−Ya)+Za)
CPU5は、補間値Zを特定すると、補間値特定処理を完了する。
具体的を以下に説明する。図10に示すように、CPU5は、補間値特定対象マップの補間対象の全領域でマップ値Z11〜Z55が全て「1.00」の同値であれば、探索処理と線形補間演算処理とを実施せずに指定ポイントのマップ値を補間値として特定する。CPU5は、予め指定ポイントとして(X1,Y1)を指定していれば、マップ値Z11を補間値Zとして特定する。この場合、CPU5は、探索処理と線形補間演算処理とを実施しないことで、探索処理と線形補間演算処理とに費やす時間を省くことができ、補間値Zを特定するまでの処理時間を短縮することができる。尚、CPU5は、指定ポイントとして(X1,Y1)以外を指定していても良い。
又、図11に示すように、CPU5は、補間値特定対象マップのY1行でマップ値Z11〜Z15が全て「1.00」の同値であるが、他の行や列でマップ値が同値でない場合に、探索処理を実施して探索値Yに対して「Y1≦Y≦Y2」を特定し、算出エリアとしてY1行、Y2行を特定すると、以下のようにして補間値を特定する。CPU5は、補間値Zaを算出するための線形補間演算処理で使用するマップ値Z11,Z12が同値であるので、指定ポイントのマップ値を補間値として特定する。CPU5は、予め指定ポイントとして(X1,Y1)を指定していれば、マップ値Z11を補間値Zaとして特定する。この場合、CPU5は、補間値Zaを算出するための線形補間演算処理を実施しないことで、その線形補間演算処理に費やす時間を省くことができる。尚、CPU5は、Y1行のポイントであれば、指定ポイントとして(X1,Y1)以外を指定していても良く、例えば指定ポイントとして(X5,Y1)を指定し、マップ値Z15を補間値Zaとして特定しても良い。
又、以上は、補間値特定対象マップのY1行のマップ値Z11〜Z15が全て同値の場合を説明したが、補間値特定対象マップのY2行のマップ値Z21〜Z25が全て同値であるが、他の行や列のマップ値が同値でない場合に、探索処理を実施して探索値Yに対して「Y1≦Y≦Y2」を特定した場合も同様である。CPU5は、予め指定ポイントとして(X1,Y2)を指定していれば、マップ値Z21を補間値Zbとして特定する。この場合、CPU5は、補間値Zbを算出するための線形補間演算処理を実施しないことで、その線形補間演算処理に費やす時間を省くことができる。
又、図12に示すように、補間値特定対象マップのY1行のマップ値Z11〜Z15が全て「1.00」の同値であり、Y2行のマップ値Z21〜Z25が全て「0.98」の同値であり、他の行や列のマップ値が同値でない場合に、探索処理を実施して探索値Yに対して「Y1≦Y≦Y2」を特定した場合も同様である。CPU5は、予め指定ポイントとして(X1,Y2)を指定していれば、マップ値Z21を補間値Zbとして特定する。この場合、CPU5は、補間値Za及び補間値Zbを算出するための線形補間演算処理を実施しないことで、その線形補間演算処理に費やす時間を省くことができる。
又、図13に示すように、CPU5は、補間値特定対象マップのY1行、Y2行、X1列のマップ値Z11〜Z15、Z21〜Z25、Z11〜Z51が全て「1.00」の同値であるが、他の行や列のマップ値が同値でない場合に、探索処理を実施して探索値(X,Y)に対して「X1≦X≦X2,Y1≦Y≦Y2」を特定し、算出エリアとしてX1列、X2列、Y1行、Y2行を特定すると、以下のようにして補間値を特定する。CPU5は、補間値Zを算出するための線形補間演算処理で使用するマップ値Z11、Z12、Z21、Z22が全て同値であるので、指定ポイントのマップ値を補間値として特定する。CPU5は、予め指定ポイントとして(X1,Y1)を指定していれば、マップ値Z11を補間値Zとして特定する。この場合、CPU5は、補間値Zを算出するための線形補間演算処理を実施しないことで、その線形補間演算処理に費やす時間を省くことができる。尚、CPU5は、Y1行、Y2行、X1列のポイントであれば、指定ポイントとして(X1,Y1)以外を指定していても良く、例えば指定ポイントとして(X1,Y5)を指定し、マップ値Z51を補間値Zとして特定しても良い。
又、以上は、補間値特定対象マップのY1行、Y2行、X1列のマップ値Z11〜Z15、Z21〜Z25、Z11〜Z51が全て「1.00」の同値の場合を説明したが、補間値特定対象マップのY1行、Y2行、X2列のマップ値Z11〜Z15、Z21〜Z25、Z12〜Z52が全て「1.00」の同値であるが、他の行や列のマップ値が同値でない場合に、探索処理を実施して探索値(X,Y)に対して「X1≦X≦X2,Y1≦Y≦Y2」を特定した場合も同様である。
又、図14に示すように、CPU5は、補間値特定対象マップのY1行、Y2行、X1列、X2列のマップ値Z11〜Z15、Z21〜Z25、Z11〜Z51、Z12〜Z52が全て「1.00」の同値であるが、他の行や列のマップ値が同値でない場合に、探索値(X,Y)に対して「X1≦X≦X2,Y1≦Y≦Y2」を特定し、算出エリアとしてX1列、X2列、Y1行、Y2行を特定すると、以下のようにして補間値を特定する。この場合も、CPU5は、補間値Zを算出するための線形補間演算処理で使用するマップ値Z11、Z12、Z21、Z22が全て同値であるので、指定ポイントのマップ値を補間値として特定する。CPU5は、予め指定ポイントとして(X1,Y1)を指定していれば、マップ値Z11を補間値Zとして特定する。この場合も、CPU5は、補間値Zを算出するための線形補間演算処理を実施しないことで、その線形補間演算処理に費やす時間を省くことができる。
CPU5は、以上のように、補間値特定処理を実施する前に同値判定処理を実施し、同値判定処理の判定結果にしたがって補間値特定処理を実施することで、探索処理と線形補間演算処理とを実施せずに補間値を特定したり、探索処理を実施するが線形補間演算処理の一部又は全体を実施せずに補間値を特定したりする。即ち、探索処理と線形補間演算処理とを実施しなければ、探索処理と線形補間演算処理に費やす時間を省くことができ、補間値を特定するまでの処理時間を短縮することができる。又、探索処理を実施するが線形補間演算処理の一部又は全体を実施しなければ、線形補間演算処理の一部又は全体に費やす時間を省くことができ、補間値を特定するまでの処理時間を短縮することができる。
尚、CPU5は、補間値特定処理を実施する前に同値判定処理を実施することに代えて、ユーザが設定可能なパラメータにしたがって補間値特定処理を実施しても良い。即ち、マップの補間対象の全領域でマップ値が全て同値であるか否か、マップの補間対象の領域のうち一部の行又は列でマップ値が全て同値であるか否かの情報をユーザが把握していれば、その情報をパラメータとしてROM6に記憶させておき、補間値特定処理においてパラメータを判定することで、同値判定処理を実施しなくとも補間値特定処理を同様の手順にしたがって実施することが可能である。
又、以上は、線形補間演算処理において、先に同一行の列間での線形補間演算を実施し、後から行間での線形補間演算を実施する場合を説明したが、列間での線形補間演算と行間での線形補間演算との順序を反対としても良い。即ち、線形補間演算処理において、先に同一列の行間での線形補間演算を実施し、後から列間での線形補間演算を実施しても良く、算出エリアとして特定したX1〜X2,Y1〜Y2のマップ値を図15に示す手順にしたがって線形補間演算して補間値Zを特定しても良い。
即ち、CPU5は、(X1,Y1,Z11)、(X1,Y2,Z21)を用い、以下の演算式により補間値Zcを算出する。
Zc=((Z21−Z11)/(Y2−Y1)×(Y−Y1)+Z11)
次に、CPU5は、(X2,Y1,Z12)、(X2,Y2,Z22)を用い、以下の演算式により補間値Zdを算出する。
Zd=((Z22−Z12)/(Y2−Y1)×(Y−Y1)+Z12)
そして、CPU5は、(X1,Y,Zc)、(X2,Y,Zd)を用い、以下の演算式により補間値Zを算出する。
Z=((Zd−Zc)/(X2−X1)×(X−X1)+Zc)
又、この場合、CPU5は、算出エリアとしてXa列、Xb列、Ya行、Yb行を特定すると、その特定したXa列、Xb列、Ya行、Yb行のマップ値について所定条件が成立しているか否かを判定する際に、Ya行、Yb行、Xa列、Xb列のマップ値が全て同値であること、Ya行、Xa列、Xb列のマップ値が全て同値であること、Yb行、Xa列、Xb列のマップ値が全て同値であること、のうち何れかを所定条件としても良い。
以上に説明したように本実施形態によれば、次に示す効果を得ることができる。
電子制御装置1のマイコン2において、マップの補間対象の全領域でマップ値が全て同値であると判定すると、探索処理と線形補間演算処理とを実施せずに補間値を特定するようにした。探索処理と線形補間演算処理とに費やす時間を省くことができ、補間値を特定するまでの処理時間を適切に短縮することができる。又、マップの補間対象の領域のうち探索処理により算出エリアとして特定した一部の行又は列でマップ値が全て同値であると判定すると、線形補間演算処理の一部又は全体を実施せずに補間値を特定するようにした。線形補間演算処理の一部又は全体に費やす時間を省くことができ、補間値を特定するまでの処理時間を適切に短縮することができる。この場合、プログラムを改良してソフトウェアを変更することで実現可能であるので、CPU5のクロック周波数を高めたりマルチコアシステムを導入したりする必要もない。
又、マップの予め指定している指定ポイントのマップ値を補間値として特定するようにした。所望の指定ポイントのマップ値を補間値として特定することができる。又、補間値特定処理を実施する前に同値判定処理を実施し、その判定結果によりマップの補間対象の全領域でマップ値が全て同値であるか否かやマップの補間対象の領域のうち算出エリアとして特定した一部の行又は列でマップ値が全て同値であるか否かを判定するようにした。ユーザがパラメータを設定する等の作業を必要とせずに、補間値を特定するまでの処理時間を適切に短縮することができる。
又、ユーザが設定可能なパラメータによりマップの補間対象の全領域でマップ値が全て同値であるか否かやマップの補間対象の領域のうち算出エリアとして特定した一部の行又は列でマップ値が全て同値であるか否かを判定するようにした。ユーザが予めパラメータを設定しておくことで同値判定処理を省くことができ、マイコン2の負荷を軽減することができる。
本開示は、実施例に準拠して記述されたが、当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、更には、それらに一要素のみ、それ以上、或いはそれ以下を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。
エンジンの駆動を制御する電子制御装置に限らず、他の車両制御を行う電子制御装置に適用しても良い。
補間値特定対象マップの全領域を補間対象の領域として補間値を特定することに限らず、補間値特定対象マップの一部の領域を補間対象の領域として補間値を特定しても良い。
図面中、1は電子制御装置、5はCPU(演算部)、6aはマップ記憶部、6bはパラメータ記憶部、7はRAM(フラグ記憶部)である。

Claims (11)

  1. 代表値とマップ値との対応を示すマップを記憶するマップ記憶部(6a)と、
    マップを用いた補間処理として、探索値に対応する代表値間を探索して算出エリアを特定する探索処理と、探索処理により特定した算出エリアのマップ値を線形補間演算して補間値を特定する線形補間演算処理とを実施することが可能な演算部(5)と、を備え、
    前記演算部は、マップの補間対象の領域のうち少なくとも一部の行又は列でマップ値が全て同値であり、少なくともマップ値が全て同値である行又は列を算出エリアとする場合に、少なくとも線形補間演算処理の一部又は全体を実施せずに補間値を特定する電子制御装置(1)。
  2. 前記演算部は、マップの補間対象の全領域でマップ値が全て同値の場合に、探索処理と線形補間演算処理とを実施せずに補間値を特定する請求項1記載の電子制御装置。
  3. 前記演算部は、予め指定している指定ポイントのマップ値を補間値として特定する請求項2に記載の電子制御装置。
  4. マップの補間対象の全領域でマップ値が全て同値であるか否かを特定可能なフラグを記憶するフラグ記憶部(7)を備え、
    前記演算部は、マップの補間対象の全領域でマップ値が全て同値であるか否かを判定し、その判定結果を前記フラグ記憶部に記憶させた後に、前記フラグ記憶部に記憶されている判定結果によりマップの補間対象の全領域でマップ値が全て同値であると判定すると、探索処理と線形補間演算処理とを実施せずに補間値を特定する請求項2又は3に記載の電子制御装置。
  5. ユーザが設定可能なパラメータを記憶するパラメータ記憶部(6b)を備え、
    前記演算部は、前記パラメータ記憶部に記憶されているパラメータによりマップの補間対象の全領域でマップ値が全て同値であると判定すると、探索処理と線形補間演算処理とを実施せずに補間値を特定する請求項2又は3に記載の電子制御装置。
  6. 前記演算部は、マップの補間対象の領域のうち算出エリアとして特定した一部の行又は列でマップ値が全て同値の場合に、線形補間演算処理の一部又は全体を実施せずに補間値を特定する請求項1記載の電子制御装置。
  7. 前記演算部は、予め指定している指定ポイントのマップ値を補間値として特定する請求項6に記載の電子制御装置。
  8. マップの補間対象の領域のうち一部の行又は列でマップ値が全て同値であるか否かを特定可能なフラグを記憶するフラグ記憶部を備え、
    前記演算部は、マップの補間対象の領域のうち一部の行又は列でマップ値が全て同値であるか否かを判定し、その判定結果を前記フラグ記憶部に記憶させた後に、前記フラグ記憶部に記憶されている判定結果によりマップの補間対象の領域のうち算出エリアとして特定した一部の行又は列でマップ値が全て同値であると判定すると、線形補間演算処理の一部又は全体を実施せずに補間値を特定する請求項6又は7に記載の電子制御装置。
  9. ユーザが設定可能なパラメータを記憶するパラメータ記憶部を備え、
    前記演算部は、前記パラメータ記憶部に記憶されているパラメータによりマップの補間対象の領域のうち算出エリアとして特定した一部の行又は列でマップ値が全て同値であると判定すると、線形補間演算処理の一部又は全体を実施せずに補間値を特定する請求項6又は7に記載の電子制御装置。
  10. 前記演算部は、マップの全領域を補間対象の領域として補間値を特定する請求項1から9の何れか一項に記載の電子制御装置。
  11. 前記演算部は、マップの一部の領域を補間対象の領域として補間値を特定する請求項1から9の何れか一項に記載の電子制御装置。
JP2017082878A 2017-04-19 2017-04-19 電子制御装置 Active JP6885177B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017082878A JP6885177B2 (ja) 2017-04-19 2017-04-19 電子制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017082878A JP6885177B2 (ja) 2017-04-19 2017-04-19 電子制御装置

Publications (2)

Publication Number Publication Date
JP2018181144A true JP2018181144A (ja) 2018-11-15
JP6885177B2 JP6885177B2 (ja) 2021-06-09

Family

ID=64275567

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017082878A Active JP6885177B2 (ja) 2017-04-19 2017-04-19 電子制御装置

Country Status (1)

Country Link
JP (1) JP6885177B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019031916A (ja) * 2017-08-04 2019-02-28 株式会社デンソー 電子制御装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09233326A (ja) * 1996-02-28 1997-09-05 Canon Inc 画像処理装置及びその方法及びそのコンピュータプログラム製品
JP2000022975A (ja) * 1998-07-02 2000-01-21 Canon Inc データ変換装置および方法
JP2003199123A (ja) * 2001-12-26 2003-07-11 Minolta Co Ltd 動画におけるフリッカ補正
JP2004192028A (ja) * 2002-12-06 2004-07-08 Denso Corp 補間値演算装置、電子制御装置
JP2011226411A (ja) * 2010-04-21 2011-11-10 Mitsubishi Electric Corp 車載用電子制御装置およびその制御方法
US20160191946A1 (en) * 2014-12-31 2016-06-30 Microsoft Technology Licensing, Llc Computationally efficient motion estimation

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09233326A (ja) * 1996-02-28 1997-09-05 Canon Inc 画像処理装置及びその方法及びそのコンピュータプログラム製品
JP2000022975A (ja) * 1998-07-02 2000-01-21 Canon Inc データ変換装置および方法
JP2003199123A (ja) * 2001-12-26 2003-07-11 Minolta Co Ltd 動画におけるフリッカ補正
JP2004192028A (ja) * 2002-12-06 2004-07-08 Denso Corp 補間値演算装置、電子制御装置
JP2011226411A (ja) * 2010-04-21 2011-11-10 Mitsubishi Electric Corp 車載用電子制御装置およびその制御方法
US20160191946A1 (en) * 2014-12-31 2016-06-30 Microsoft Technology Licensing, Llc Computationally efficient motion estimation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019031916A (ja) * 2017-08-04 2019-02-28 株式会社デンソー 電子制御装置

Also Published As

Publication number Publication date
JP6885177B2 (ja) 2021-06-09

Similar Documents

Publication Publication Date Title
US5274559A (en) Method for predicting a future value of measurement data and for controlling engine fuel injection based thereon
CN111433688A (zh) 用于设置致动器控制***的至少一个参数的方法和装置以及致动器控制***
JP6885177B2 (ja) 電子制御装置
JPH04364536A (ja) ファジィ推論ルールの自動生成装置
US20050186083A1 (en) Mapping a plurality of sensors to respective zones in a fan control system
JP2019144199A (ja) 試験システムの制御装置
JPS6055849B2 (ja) 命令制御方式
JP2005084896A (ja) 車載電子制御装置
JPH0319913B2 (ja)
CN106545614B (zh) 用于控制发动机振动的***和方法
CN114275038A (zh) 方向盘的振动抑制方法、装置、车辆及存储介质
JP2006072747A (ja) モデル予測制御装置
JP6939223B2 (ja) 電子制御装置
JPH11272365A (ja) 冷却ファンの速度制御方式、及び電子機器
US7739214B2 (en) Table interpolation methods and systems
JP3067884B2 (ja) エンジンの制御装置
JPS6174003A (ja) プロセス制御装置
JP2003343341A (ja) 制御用演算装置及び該制御用演算装置を備えたエンジン制御装置並びに該制御用演算のためのデータ検索方法
JP2008045506A (ja) エンジン制御の大気圧補正方法及びその制御装置
JP2819931B2 (ja) マイクロプロセッサ
JP6825388B2 (ja) 電子制御装置
JP3991851B2 (ja) 補間値演算装置、電子制御装置
JP2522073B2 (ja) 正弦波pwm信号発生装置
CN117261527A (zh) 车辆热管理控制方法、装置、电子设备及车辆
JP2006072700A (ja) モデル予測制御装置及びモデル予測制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200323

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210329

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: 20210413

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210426

R151 Written notification of patent or utility model registration

Ref document number: 6885177

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250