(57)【要約】【課題】構成の簡素化を図り、ひいてはコストを低減させることのできる内燃機関の制御装置を提供する。【解決手段】内燃機関１０又はその近傍に設けられ、所定の検出機能又は動作機能を有する電気的な機能部品２９，６０との信号の入出力が可能であり、機能部品の検出機能又は動作機能を用いて、内燃機関の運転状態を制御する内燃機関の制御装置７０は、検出機能又は動作機能とは別に、機能部品の抵抗体６１の抵抗値を検出する抵抗検出手段と、抵抗検出手段により検出された抵抗体の抵抗値に基づいて、内燃機関の温度を算出する温度算出手段とを備える。【選択図】      図１
2014206144.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関（１０）又はその近傍に設けられ所定の検出機能又は動作機能を有する電気的な機能部品（２９，６０）との信号の入出力が可能であり、前記機能部品の検出機能又は動作機能を用いて前記内燃機関の運転状態を制御する内燃機関の制御装置（７０）において、
前記検出機能又は前記動作機能とは別に前記機能部品の抵抗体（６１）の抵抗値を検出する抵抗検出手段と、
前記抵抗検出手段により検出された前記抵抗体の抵抗値に基づいて、前記内燃機関の温度を算出する温度算出手段と、
を備えることを特徴とする内燃機関の制御装置。
【請求項２】
前記機能部品は、前記内燃機関の機関本体に設けられ、該内燃機関の回転を検出する回転検出センサ（６０）であり、
前記回転検出センサは、前記抵抗体として、前記内燃機関の回転に連動するロータ（５０）の回転を検出し所定の回転角度周期で回転角信号を出力する検出コイル（６１）を有しており、
前記検出コイルを通電する通電手段（７２）を備え、
前記抵抗検出手段は、前記通電手段により前記検出コイルを通電した状態で、当該検出コイルの抵抗値を検出し、
前記温度算出手段は、前記検出した検出コイルの抵抗値に基づいて、前記内燃機関の温度を算出する請求項１に記載の内燃機関の制御装置。
【請求項３】
前記内燃機関の停止状態で、前記通電手段により前記検出コイルを一時的に通電させる手段を備える請求項２に記載の内燃機関の制御装置。
【請求項４】
前記内燃機関の運転状態下において、当該内燃機関の回転速度が所定以下となる低回転状態で、前記通電手段により前記検出コイルを一時的に通電させる手段を備える請求項２又は３に記載の内燃機関の制御装置。
【請求項５】
前記ロータには、前記検出コイルにより検出される被検出部分に、前記所定の回転角度周期よりも前記回転角信号の出力の間隔が局部的に大きくなっている基準位置が定められており、
前記抵抗検出手段は、前記検出コイルにより前記基準位置の通過が検出される基準位置検出期間で、前記抵抗体の抵抗値を検出する請求項２乃至４のいずれか一項に記載の内燃機関の制御装置。
【請求項６】
前記通電手段により前記検出コイルを一時的に通電する場合において、前回の通電から今回の通電までに、所定の通電休止時間を設定する請求項２乃至５のいずれか一項に記載の内燃機関の制御装置。
【請求項７】
前記内燃機関の運転中において、前記内燃機関における燃焼による発熱分と、冷却手段（４９）による放熱分との収支により当該内燃機関における逐次の温度変化量を算出するとともに、その温度変化量の積算により前記内燃機関の温度を算出する手段をさらに備える請求項２乃至６のいずれか一項に記載の内燃機関の制御装置。
【請求項８】
前記内燃機関はその運転中に冷却手段（４９）により冷却される構成となっており、前記内燃機関と前記機能部品とで前記冷却手段による冷却の程度が相違しており、
前記温度算出手段は、前記内燃機関の運転中において、前記内燃機関と前記機能部品との前記冷却の程度の相違を加味して前記内燃機関の温度を算出する請求項１乃至７のいずれか一項に記載の内燃機関の制御装置。
【請求項９】
前記温度算出手段は、前記内燃機関の運転中には、前記内燃機関と前記機能部品とのそれぞれの温度が同様にならないことに基づいて前記内燃機関の温度を算出し、前記内燃機関の運転停止後には、前記内燃機関と前記機能部品とのそれぞれの温度が同様になることに基づいて前記内燃機関の温度を算出する請求項８に記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の制御装置に関する。
【背景技術】
【０００２】
従来から、内燃機関の温度が内燃機関の燃焼状態に及ぼす影響が大きいことに鑑みて、内燃機関の温度に基づいて、燃料噴射制御など、内燃機関の各種の制御が実施されている。例えば特許文献１に示されるように、内燃機関の温度と相関を持つ内燃機関の冷却水温を検出するために、内燃機関に温度センサを取り付け、温度センサによる温度の検出結果に基づいて燃料の噴射が制御されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１１３７３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、内燃機関の温度を把握するための温度センサを設けると、内燃機関の制御装置のコストを増大させるおそれがある。これは、内燃機関に温度センサを取り付けるための加工工程が追加されることや、配線用のワイヤ等の取り付け部品が追加されることに起因する。
【０００５】
本発明は、上記課題を解決するためになされたものであり、その目的は、構成の簡素化を図り、ひいてはコストを低減させることのできる内燃機関の制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明における内燃機関の制御装置は、内燃機関（１０）又はその近傍に設けられ所定の検出機能又は動作機能を有する電気的な機能部品（２９，６０）との信号の入出力が可能であり、前記機能部品の検出機能又は動作機能を用いて前記内燃機関の運転状態を制御する。そして、前記検出機能又は前記動作機能とは別に前記機能部品の抵抗体（６１）の抵抗値を検出する抵抗検出手段と、前記抵抗検出手段により検出された前記抵抗体の抵抗値に基づいて、前記内燃機関の温度を算出する温度算出手段と、を備えることを特徴とする。
【０００７】
上記構成では、機能部品における本来の検出機能又は動作機能とは別に、その機能部品の抵抗体の抵抗値が検出され、該検出された抵抗値に基づいて内燃機関の温度が算出される。この場合、内燃機関の温度を検出する温度センサが無くても、上記の機能部品を用いて、内燃機関の温度検出が可能となる。したがって、構成の簡素化を図り、ひいてはコストの低減を実現することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態にかかるエンジン制御システムの構成図。
【図２】制御部の構成を示す電気的構成図。
【図３】エンジン運転時、及び運転停止後におけるエンジン温度とコイル温度との変化を示すタイムチャート。
【図４】コイル抵抗とコイル温度との関係を示す図。
【図５】エンジン停止からの経過時間と温度補正値αとの関係を示す図。
【図６】コイル温度上昇値と温度加算値βとの関係を示す図。
【図７】クランク角センサから出力される信号波形を示す図。
【図８】エンジン温度算出処理の手順を示すフローチャート。
【図９】制御部の変容例の構成を示す電気的構成図。
【図１０】制御部の変容例の構成を示す電気的構成図。
【発明を実施するための形態】
【０００９】
以下、本発明にかかる制御装置を空冷式のエンジン（内燃機関）が搭載された車両に適用した一実施形態について、図面を参照しつつ説明する。なお本実施形態では、吸気、圧縮、膨張、排気の４行程を、１燃焼サイクルとして運転される４ストロークガソリンエンジンを想定している。また車両としては、自動二輪車であるスクータを想定し、エンジンは単気筒エンジンとしている。スクータにおいては、シートの下方にエンジンが搭載され、そのエンジンがシュラウド（カバー部材）により覆われる構成となっている。
【００１０】
図１において、エンジン１０の吸気通路１２には、上流側から順に、エアクリーナ１４、スロットルバルブ１６、スロットルバルブ１６の開度を検出するためのスロットルセンサ１７、吸気通路１２の圧力（吸気圧）を検出する吸気圧センサ１８が設けられている。スロットルバルブ１６は、その開度（スロットル開度）が調節されることで、エンジン１０の燃焼室２０への吸気量を調節するための部材である。スロットル開度は、ユーザによって操作される図示を略すスロットルグリップの操作に応じて調節される。また吸気通路１２には、スロットルバルブ１６の上流側と下流側とが連通するようにバイパス通路２２が接続されている。バイパス通路２２には、エンジン１０のアイドル運転時におけるエンジン回転速度を制御すべく、バイパス通路２２を流れる吸気量を調節する電磁弁２４が設けられている。
【００１１】
吸気通路１２のうち、吸気圧センサ１８の下流側の吸気ポート近傍には、燃料ポンプ２６によって燃料タンク２８から汲み上げられた燃料を、上記吸気ポート近傍に噴射供給する燃料噴射弁２９が設けられている。燃料噴射弁２９から噴射供給された燃料と吸気との混合気は、吸気バルブ３２の開動作によって燃焼室２０に供給される。
【００１２】
燃焼室２０に供給された混合気は、燃焼室２０に突出する点火プラグ３４の放電火花によって着火され、燃焼に供される。混合気の燃焼によって発生するエネルギは、ピストン３６を介してエンジン１０の出力軸（クランク軸３８）の回転エネルギとして取り出される。なお、点火プラグ３４には、点火装置としての点火コイル３５により点火用の高電圧が印加される。燃焼に供された混合気は、排気バルブ４０の開動作によって、排気として排気通路４２に排出される。
【００１３】
クランク軸３８には、外周にクランク位置信号用の突起を備えた磁石式発電機ロータ５０（以下ロータ５０と記す）が取り付けられている。図２に示されるように、ロータ５０は、その外周部が被検出部分となっており、その外周部には所定の回転角度ごとに複数の突起５１が設けられている。また、ロータ５０の外周部には、等間隔で配置される複数の突起５１の１つ（又は２つ）を欠落させることで、基準位置としての欠歯部５２が設けられている。本実施形態では、突起５１は基本的に３０°ＣＡで等間隔に設けられ、欠歯部５２でのみ６０°ＣＡ間隔となっている。なお、突起５１の数及び間隔は任意であり、１０°ＣＡ間隔とする構成、又は６０°ＣＡ間隔とする構成であってもよい。
【００１４】
エンジン１０のシリンダブロック１１（機関本体）には、ロータ５０の外周（突起５１）に対向する位置に、回転検出センサとしてのクランク角センサ６０が設けられている。より具体的には、クランク角センサ６０は、シリンダブロック１１のクランクケース部に設けられている。クランク角センサ６０は、公知の電磁ピックアップ方式のセンサであり、鉄心（図示を略す）と、鉄心の周りに設けられた検出コイル６１（以下コイル６１と記す）と、コイル６１を貫く磁束が発生される磁石（図示を略す）とを備えている。
【００１５】
ロータ５０は、クランク軸３８の回転に連動して回転される。ロータ５０の外周にある突起５１がクランク角センサ６０の位置を通過すると、突起５１の凹凸によってクランク角センサ６０のコイル６１を通る磁束が変化し、電磁誘導の作用によってコイル６１に起電力が生じる。この場合、コイル６１では、突起５１の通過を検出することで、所定の回転角度周期で交流信号（回転角信号）を出力する。なお、クランク角センサ６０は、シリンダブロック１１（エンジン本体）に直接搭載されるもの以外に、エンジン近傍に設けられた発電機（ＡＣＧ）のステータコイルのベースに取り付けられ、そのＡＣＧのロータの回転を検出するセンサや、クランクケースカバー側に取り付けられているクランク角センサであってもよい。
【００１６】
排気通路４２には、排気中のＮＯｘ、ＨＣ及びＣＯ等を浄化する三元触媒４６が設けられている。三元触媒４６の上流側には、排気中の酸素濃度に応じて２値的に出力値を変化させる酸素濃度センサ（以下、Ｏ２センサ４８）が設けられている。
【００１７】
また、本実施形態の車両（スクータ）においては、シュラウド内に配置されたエンジン１０を強制冷却するための冷却装置（冷却手段）４９が搭載されている。冷却装置４９は、エンジン１０の回転により駆動される機械式のファン装置を備えるものであり、クランク軸３８に接続された周知の冷却ファンを有している。なお、シュラウドには、外部から冷却風を取り込むための取入口と、その冷却風を排出するための排出口とが設けられており、冷却装置４９が駆動されると、それら取入口と排出口とを通じてシュラウド内を冷却風が通過する。
【００１８】
制御部７０は、マイクロコンピュータ７１を備える電子制御ユニット（ＥＣＵ：Electronic Control Unit）として構成されており、マイクロコンピュータ７１は、記憶部に記憶された各種プログラムや演算式に基づいて、各種のエンジン制御を実施する。この場合、上述した各種センサで取得された信号に基づき燃料噴射弁２９や点火コイル３５の動作を制御することにより、エンジン１０の運転状態を制御する。本実施形態では、燃料噴射弁２９や点火コイル３５が所定の動作機能を有する機能部品に相当し、クランク角センサ６０が所定の検出機能を有する機能部品に相当する。
【００１９】
なお、制御部７０は、エンジン１０の温度の影響を受けにくい箇所に搭載されており、例えば車両のシート下においてエンジン１０よりも上方位置に設置されている。制御部７０には、本制御部７０の温度を検出するためのサーミスタ７４が接続されている。サーミスタ７４の検出温度は、エンジン１０の温度の影響を受けないか、又は影響を受けたとしても、エンジン停止後においては、エンジン１０の温度変化に関係なくいち早く車両の周囲温度（外気温）に低下するものとなっている。
【００２０】
ところで、クランク角センサ６０はシリンダブロック１１（エンジン本体）に直接搭載されており、エンジン温度Ｔｅとの相関を有している。そこで本実施形態では、そのクランク角センサ６０を用いて、エンジン１０の温度を検出することとしている。つまり、制御部７０は、エンジン１０の停止時及び運転状態下においてクランク角センサ６０のコイル６１の抵抗値を検出し、その検出したコイル抵抗値に基づいて、エンジン温度Ｔｅを算出する。以下、その構成を説明する。
【００２１】
まずは、クランク角センサ６０の基本機能である回転検出機能について説明する。制御部７０には、波形整形回路６２が設けられており、クランク角センサ６０から出力された交流信号は、波形整形回路６２においてパルス信号に変換される。そして、マイクロコンピュータ７１は、波形整形回路６２から入力されるパルス信号の間隔（時間間隔）に基づいてエンジン回転速度を算出する。
【００２２】
また、制御部７０は、ロータ５０において欠歯部５２とそれ以外の部位とで、回転角信号の角度間隔が相違しており、それに起因してパルス信号の間隔の相違が生じることに基づいて、欠歯位置（基準位置）の検出を実施する。
【００２３】
次に、クランク角センサ６０のコイル抵抗値を検出することによる、エンジン温度Ｔｅの算出機能について説明する。制御部７０は、コイル６１を通電するための通電手段である通電部７２と、通電部７２によるコイル通電時に当該コイル６１にかかる電圧値を検出する電圧検出部７３としてＡ／Ｄ回路とを備えており、マイクロコンピュータ７１は、電圧検出部７３で検出された電圧値（コイル抵抗の相当値）と、コイル６１に流れる電流値とに基づいて求められるコイル抵抗値に基づいて、エンジン温度Ｔｅを算出する。
【００２４】
通電部７２は、定電圧電源７２ａ(電圧Ｖｃｃ)と、ＰＮＰ型のバイポーラトランジスタ７２ｂ及び７２ｃと、抵抗部７２ｄ(抵抗値Ｒ１)及び抵抗部７２ｅ（抵抗値Ｒ１）と、スイッチ７２ｆとを備えている。トランジスタ７２ｂ及び７２ｃはカレントミラー回路を形成しており、トランジスタ７２ｂ及び７２ｃのベースが互いに接続され、そのベースの接続部がトランジスタ７２ｃのコレクタに接続されている。そして各トランジスタ７２ｂ及び７２ｃのエミッタは、それぞれ電源７２ａに接続されている。トランジスタ７２ｃのコレクタ側には抵抗部７２ｅが接続されおり、抵抗部７２ｅの他端には電圧検出部７３と、コイル６１と、波形整形回路６２とが並列接続されている。一方、トランジスタ７２ｂのコレクタ側には抵抗部７２ｄが接続されており、抵抗部７２ｄの他端にはスイッチ７２ｆが接続されている。スイッチ７２ｆは、例えば半導体スイッチであり、マイクロコンピュータ７１からの指令信号に基づいて、トランジスタ７２ｂの導通状態と非導通状態とを切り換える。
【００２５】
以上の構成により、スイッチ７２ｆがＯＮとなりトランジスタ７２ｂが導通状態となると、トランジスタ７２ｃも導通状態となり、トランジスタ７２ｂからは電流ＩＳ（ＩＳ＝Ｖｃｃ／Ｒ１）が出力される。トランジスタ７２ｃからは電流ＩＳ２（≒ＩＳ）が出力される。この電流ＩＳ２がコイル６１に供給されるコイル電流ＩＳ２となる。なお電流ＩＳ≒ＩＳ２であり、コイル電流ＩＳ２は、ＩＳ２＝ＩＳ＝Ｖｃｃ／Ｒ１として求められる。また電圧検出部７３によってコイル６１に掛かるコイル電圧ＶＲＳが検出される。以上によりマイクロコンピュータ７１は、コイル抵抗値ＲＳをＲＳ＝ＶＳＲ／ＩＳ２として算出する。
【００２６】
図３は、エンジン１０の運転時、及び運転停止後におけるエンジン温度Ｔｅとコイル温度Ｔｃとの変化を示すタイムチャートである。なお、ここでのエンジン温度Ｔｅは燃焼室２０付近でのエンジン本体の温度（シリンダヘッド、又はシリンダブロックの燃焼室周りの温度）である。本チャートでは、時刻ｔ１においてエンジン１０が冷間状態で始動され、その後、時刻ｔ２でエンジン１０の運転が停止されるとしている。時刻ｔ２以降は、エンジン停止状態（ソーク状態）となっている。ｔ１〜ｔ２の期間は、例えば５０分程度である。
【００２７】
図３において、時刻ｔ１のエンジン始動時には、エンジン温度Ｔｅとコイル温度Ｔｃとが一致している。また、これらの温度Ｔｅ，Ｔｃは外気温に一致している。そして、エンジン１０の運転が開始されることに伴い、エンジン温度Ｔｅ、コイル温度Ｔｃがそれぞれ上昇する。エンジン運転中（ｔ１〜ｔ２）には、冷却装置４９によるエンジン１０の空冷が実施され、その空冷により各温度Ｔｅ，Ｔｃの温度上昇が制限される。この場合特に、エンジン本体とクランク角センサ６０とでは冷却の程度に相違が生じており、クランク角センサ６０では、エンジン全体に比べてファン冷却による冷却作用が大きく働く。それ故に、エンジン温度Ｔｅとコイル温度Ｔｃとに温度差が生じている。つまり、エンジン本体において燃焼室付近は十分な冷却が行われないことが考えられ、図示のとおり温度差が生じる。
【００２８】
一方、時刻ｔ２以降のエンジン停止状態では、冷却装置４９によるエンジン空冷が停止された状態で、自然放熱によりエンジン１０が冷却される。また、コイル温度Ｔｃは、エンジン停止直後におけるシュラウド内のこもり熱により一時的に上昇し、エンジン温度Ｔｅ近くに到達した後、エンジン温度Ｔｅと共に徐々に低下する。この場合、エンジン運転中とは異なり、エンジン温度Ｔｅとコイル温度Ｔｃとはほぼ一致する。
【００２９】
上記のとおりエンジン１０の運転中と停止後とでは、エンジン温度Ｔｅとコイル温度Ｔｃとの関係が相違している。その為、エンジン運転中には、エンジン温度Ｔｅとコイル温度Ｔｃとには相関はあるものの、冷却装置４９による冷却（走行風による冷却も含まれる）により、エンジン温度Ｔｅとコイル温度Ｔｃとに温度差が生じている（温度が同様にならない）。これに対して、エンジン停止後は、停止直後の所定期間を除いて、エンジン温度Ｔｅとコイル温度Ｔｃとが概ね一致している（温度が同様となる）。
【００３０】
本実施形態では、マイクロコンピュータ７１は、クランク角センサ６０のコイル抵抗を用いてエンジン温度Ｔｅの算出を実施する場合に、エンジン運転中であれば、冷却装置４９による冷却分を加味しつつ、コイル抵抗の値に基づいてエンジン温度Ｔｅを算出する（第１算出手段）。また、エンジン停止状態であれば、冷却装置４９による冷却分を加味することなく、コイル抵抗の値に基づいてエンジン温度Ｔｅを算出する（第２算出手段）。
【００３１】
より具体的には、マイクロコンピュータ７１は、エンジン停止状態では、図４に示す関係を用いて、コイル抵抗の値からコイル温度Ｔｃを算出する。そして、Ｔｃ≒Ｔｅであることから、コイル温度Ｔｃをエンジン温度Ｔｅとする。なお、Ｔｃ≒Ｔｅであることを前提にして、コイル抵抗の値からエンジン温度Ｔｅを直接算出する構成であってもよい。本実施形態では、電圧検出部７３による検出電圧値を、コイル抵抗の相当値としている。
【００３２】
ただし、エンジン１０の停止直後には、コイル温度Ｔｃがエンジン温度Ｔｅの付近まで到達していない期間が存在する（図３参照、時刻ｔ２の直後）。そのため、エンジン停止直後に限って、エンジン温度Ｔｅの算出を一時的に禁止するか、又はＴｅ＝Ｔｃ＋αとして、エンジン温度Ｔｅを算出するとよい。αは、例えば図５の関係に基づいて算出される温度補正値である。図５では、エンジン停止からの経過時間に基づいて、その経過時間が小さいほど、温度補正値αとして大きい値が算出される。
【００３３】
これに対し、マイクロコンピュータ７１は、エンジン運転中には、図４の関係を用いて、コイル抵抗の値からコイル温度Ｔｃを算出するとともに、そのコイル温度Ｔｃに、冷却装置４９の冷却による放熱分である温度加算値βを加算して、エンジン温度Ｔｅを算出する（Ｔｅ＝Ｔｃ＋β）。この場合、温度加算値βは、エンジン始動時における初期温度を基準にして、その初期温度からのコイル温度Ｔｃの上昇値に応じて算出されるとよい。具体的には、温度加算値βは、例えば図６の関係に基づいて算出されるとよい。図６では、コイル温度上昇値に基づいて、その上昇値が大きくなるほど、温度加算値βとして大きい値が算出される。この場合、コイル温度上昇値と温度加算値βとが比例関係にあってもよい。
【００３４】
図３で説明すると、エンジン始動時における初期温度が「Ｔｉ」であり、エンジン運転中の時刻ｔｘで、コイル温度上昇値が「ΔＴｃｏ」、温度加算値βが「β１」であるとする。この場合、時刻ｔｘでのエンジン温度Ｔｅは「Ｔｉ＋ΔＴｃｏ＋β１」として算出される。
【００３５】
エンジン運転中においては、ロータ５０が回転している状態下でクランク角センサ６０のコイル６１を一時的に通電し、その通電状態において、交流信号である回転角信号が出力されていない期間（信号非出力期間）でコイル抵抗の検出が実施される。そのため、コイル抵抗の検出にとっては、信号非出力期間が長い方が好都合であり、本実施形態では、エンジン１０が所定の低回転状態にある場合に、コイル抵抗値の検出（実際には電圧検出部７３による電圧検出）を実施するようにしている。加えて、クランク角センサ６０において欠歯部５２が検出される期間であって、回転角信号の出力の間隔が局部的に大きくなる基準位置が検出される基準位置検出期間の際に、コイル抵抗値の検出（実際には電圧検出部７３による電圧検出）を実施するようにしている。これについて図７を用いて説明する。図７には、クランク角センサ６０から出力される信号波形を示している。
【００３６】
図７において（ａ）は低回転状態の信号波形を示し、（ｂ）は高回転状態の信号波形を示している。これら（ａ）、（ｂ）を比べると、低回転状態の方が信号非出力期間が長い。また、（ａ）において、ＴＡで示す期間は、欠歯部５２が検出される期間であり、その欠歯検出期間ＴＡでは、それ以外の期間よりも信号非出力期間が長くなっている。この欠歯検出期間ＴＡでコイル抵抗値の検出を実施する。また特に、欠歯検出期間ＴＡのうち前半部分（例えば前半１／２の期間）で、コイル抵抗値の検出を実施するようにしている。これにより、車両の加速により信号非出力期間が急に短くなったとしても、コイル抵抗値の誤検出を抑制できる。
【００３７】
なお、エンジン停止状態でのエンジン温度Ｔｅが算出可能になっているため、エンジン１０が暖機状態のまま再始動される、いわゆる暖機再始動の場合（外気温と同等になるまで冷却される前に再始動される場合）においても、その再始動時のエンジン温度Ｔｅを適正に算出できる。
【００３８】
また本実施形態では、上述したとおりクランク角センサ６０のコイル抵抗の値に基づきエンジン温度Ｔｅを算出する以外に、エンジン１０の温度モデルを用いた演算式による温度算出手法により、エンジン温度Ｔｅを算出することとしている（第３算出手段）。この算出手法では、エンジン１０における燃焼による発熱分と、冷却装置４９による放熱分との収支によりエンジン１０における逐次の温度変化量を算出するとともに、その温度変化量の積算によりエンジン温度Ｔｅを算出する。つまり、エンジン運転中においては、クランク角センサ６０のコイル抵抗値を用いてエンジン温度Ｔｅを算出する際に、エンジン１０が所定の低回転状態にあることを実施条件としており、その低回転状態でない場合において、モデル演算式を用いてエンジン温度Ｔｅを算出する。以下、モデル演算式について説明する。
【００３９】
まず、エンジン温度Ｔｅは、次の（式１）にて表すことができる。
Ｔｅ＝Ｔ０＋ΣΔＴｅ      …（式１）
（式１）において、Ｔ０はエンジン１０の周囲温度（外気温）であり、この周囲温度Ｔ０としてはサーミスタ７４の検出温度が用いられる。なお、サーミスタ７４はエンジン１０の温度の影響を受けにくい箇所に設けられており、エンジン停止後には、エンジン１０の温度変化に関係なく検出温度が低下する。つまり、サーミスタ７４の検出温度は、エンジン停止後に比較的早く外気温まで低下する。ΔＴｅは、所定時間ごとに算出されるエンジン温度Ｔｅの変化量であり、ΣΔＴｅは、温度変化量ΔＴｅの積算値である。
【００４０】
温度変化量ΔＴｅは次の（式２）を用いて算出される。
ΔＴｅ＝（Ｑ１−Ｑ２）／Ｃ      …（式２）
（式２）において、Ｑ１は燃焼ガスによる発熱量、Ｑ２は冷却装置４９による放熱量、Ｃはエンジン１０の熱容量である。
【００４１】
燃焼ガスによる発熱量Ｑ１は（式３）で求められる。
Ｑ１＝Ａｃ×ＨＧ×（ＴＧ−Ｔｅ）      …（式３）
（式３）において、Ａｃはシリンダ表面積、ＨＧはエンジン１０の熱伝導係数、ＴＧは燃焼ガス温度である。熱伝導係数ＨＧは、下記の（式４）にて求められる。燃焼ガス温度ＴＧは、例えばエンジン回転速度とエンジン負荷（吸気圧）とにより算出される。
ＨＧ＝０．２４４×（ＰＧ×ＴＧ）^(1/2)×ω^(1/3)      …（式４）
（式４）において、ＰＧは燃焼ガス圧力、ＴＧは燃焼ガス温度、ωはピストン速度である。燃焼ガス圧力ＰＧは、例えばエンジン回転速度とエンジン負荷（吸気圧）とにより算出される。ピストン速度ωはエンジン回転速度に基づいて算出される。
【００４２】
また、冷却装置４９による放熱量Ｑ２は（式５）で求められる。
Ｑ２＝Ａｆ×ＨＣ×（Ｔｅ−Ｔ０）      …（式５）
（式５）において、Ａｆは冷却装置４９（冷却ファン）の表面積、ＨＣは冷却装置４９（冷却ファン）の熱伝達係数である。
【００４３】
次に、制御部７０が実行するエンジン温度算出処理の手順を説明する。以下の処理は、制御部７０により所定周期で繰り返し実行されるとする。なお、以下の処理にはエンジン停止中に実施される演算処理が含まれるが、これはエンジン停止中において制御部７０が一時的に起動されることで実施されるとよい。
【００４４】
図８において、ステップＳ１１では、エンジン始動時であるか否かを判定し、続くステップＳ１２では、エンジン１０が停止状態にあるか否かを判定する。そして、ステップＳ１１，Ｓ１２が共にＹＥＳであれば、ステップＳ１３に進み、エンジン初期温度Ｔｉを算出する。このとき、通電部７２によりコイル６１を一時的に通電し、その際に電圧検出部７３により検出した電圧値に基づいてエンジン初期温度Ｔｉを算出する。コイル６１の通電時間は例えば１０〜３０ｍｓｅｃ程度である。ここで、エンジン初期温度Ｔｉとコイル温度Ｔｃとは概ね一致しており、電圧検出部７３による検出電圧値からコイル温度Ｔｃを算出し、Ｔｉ＝Ｔｃとして、エンジン初期温度Ｔｉを算出する。
【００４５】
エンジン停止状態での時間の余裕があれば、断続的に複数回のコイル通電を行い、それら各コイル通電で算出されたコイル温度Ｔｃの平均値により、エンジン初期温度Ｔｉを算出するとよい。コイル温度Ｔｃが複数算出された場合には、その最大値と最小値との差が所定以下である場合にのみエンジン初期温度Ｔｉの算出を許可する等して、算出精度の向上を図るようにしてもよい。
【００４６】
なお、エンジン始動に際し、エンジン始動の開始を遅らせる待機時間を設けておき、その待機時間の期間内においてコイル通電を行い、エンジン初期温度Ｔｉを算出するようにしてもよい。待機時間は、例えば１００ｍｓｅｃ程度であるとよい。
【００４７】
エンジン１０を始動しようとしても始動が完了せず、エンスト状態が継続される場合も想定される。かかる場合には、所定の時間間隔を隔ててコイル通電を実施するとよい。例えば２０秒間隔でコイル通電を行うとよい。
【００４８】
また、ステップＳ１１がＮＯであればステップＳ１４に進み、エンジン運転中であるか否かを判定する。このとき、エンジン１０が回転していれば、エンジン運転中であると判定する。そして、エンジン運転中であればステップＳ１５に進み、エンジン１０が所定の低回転状態になっているか否かを判定する。このとき、例えばエンジン回転速度が１０００ｒｐｍ以下であれば、所定の低回転状態になっていると判定する。
【００４９】
ステップＳ１５において低回転状態になっていると判定された場合、ステップＳ１６に進み、クランク角センサ６０のコイル抵抗値に基づいて、エンジン温度Ｔｅを算出する。このとき、通電部７２によりコイル６１を一時的に通電し、その際に電圧検出部７３により検出した電圧値に基づいてエンジン温度Ｔｅを算出する。コイル６１の通電時間は例えば数ｍｓｅｃ程度である。エンジン温度Ｔｅの具体的な算出手法は上述のとおりである。図４のようなコイル抵抗値ＲＳとコイル温度Ｔｃとの相関関係を用い、電圧検出部７３の検出電圧値からコイル温度Ｔｃを算出する。図２の構成においては、コイル抵抗値ＲＳは電圧ＶＲＳ／電流ＩＳ２の式により求められ、このコイル抵抗値ＲＳからコイル温度Ｔｃを算出する。また、エンジン初期温度Ｔｉを基準にしてコイル温度Ｔｃの上昇値を算出するとともに、図６の関係を用い、コイル温度上昇値に基づいて温度加算値βを算出する。そして、コイル温度Ｔｃに温度加算値βを加算して、エンジン温度Ｔｅを算出する（Ｔｅ＝Ｔｃ＋β）。
【００５０】
またコイル６１の固体差によるコイル温度Ｔｃの検出値のばらつきを補正するために、制御部７０内のサーミスタ７６の出力（温度）を使用することもできる。具体的にはエンジン停止時（エンジン冷間時）には、コイル温度Ｔｃ≒サーミスタ温度となるため、この場合のサーミスタ温度と抵抗値を用いて、図４の相関図の特性のオフセット補正をしてもよい。またサーミスタ温度を用いて、定電流設定部分である通電部７２の抵抗の温度特性分や、スイッチング回路素子の温度特性分の回路補正を実施してもよい。
【００５１】
エンジン１０が低回転状態になっていれば、ステップＳ１６において、クランク角センサ６０のコイル抵抗値に基づくエンジン温度Ｔｅの算出が繰り返し実施される。この場合に、ステップＳ１６では、前回の通電から今回の通電までに、所定の通電休止時間が設定されているとよい。これにより、通電によりコイル６１が自己発熱し、それに起因して温度検出の精度が低下するといった不都合を抑制できる。通電休止時間は例えば２０秒程度であるとよい。
【００５２】
また、ステップＳ１５において低回転状態になっていないと判定された場合、ステップＳ１７に進み、エンジン１０の温度モデルを用いた演算式（上記の式１）によりエンジン温度Ｔｅを算出する。なお、演算式に用いる周囲温度Ｔ０は、エンジン１０の運転等に伴う周囲温度変化の影響を避けるために、制御部７０の作動開始の直後においてサーミスタ７４の検出値により取得されることが好ましい。なお、冷間始動時を想定すれば、周囲温度Ｔ０として、ステップＳ１３で算出したエンジン初期温度Ｔｉを用いることも可能である。
【００５３】
また、ステップＳ１４においてエンジン運転中でないと判定された場合には、ステップＳ１８に進む。この場合、エンジン停止状態において、クランク角センサ６０のコイル抵抗値に基づいて、エンジン温度Ｔｅを算出する。すなわち、通電部７２によりコイル６１を一時的に通電し、その際に電圧検出部７３により検出した電圧値に基づいてエンジン温度Ｔｅを算出する。コイル６１の通電時間は例えば数ｍｓｅｃ程度である。ここで、エンジン温度Ｔｅとコイル温度Ｔｃとは概ね一致しており、電圧検出部７３による検出電圧値からコイル温度Ｔｃを算出し、Ｔｅ＝Ｔｃとして、エンジン温度Ｔｅを算出する。
【００５４】
上記によれば以下の優れた効果がある。
【００５５】
（１）上記構成では、機能部品であるクランク角センサ６０における検出機能とは別に、そのクランク角センサ６０のコイル６１の抵抗値が検出され、その検出された抵抗値に基づいてエンジン１０の温度が算出される。この場合、エンジン１０の温度を検出する温度センサが無くても、上記の機能部品を用いて、エンジン１０の温度検出が可能となる。したがって、構成の簡素化を図り、ひいてはコストの低減を実現することが可能となる。
【００５６】
（２）クランク角センサ６０は回転検出機能を有し、抵抗体としてのコイル６１はロータ５０の回転に応じて、所定周期で起電力による回転角信号を出力する。この場合、コイル６１の温度がエンジン１０の温度に対して相関を有していることを利用して、コイル抵抗値に基づいてエンジン温度Ｔｅを算出するようにした。クランク角センサ６０は、エンジン制御において不可欠なものであり、そのクランク角センサ６０を温度検出手段として兼用することで、構成の簡素化を実現できる。
【００５７】
（３）エンジン１０の停止状態では、クランク角センサ６０において起電力の出力が生じることはなく、基本的には無出力状態となる。これを利用し、コイル６１を通電することでコイル抵抗の値（又はその相当値）を求めることができる。
【００５８】
（４）エンジン運転中であっても所定の低回転状態では、交流信号が出力されない信号非出力期間が長くなる。これにより、コイル抵抗の値（又はその相当値）を好適に算出できる。
【００５９】
（５）ロータ５０に欠歯部５２が設けられている構成では、その欠歯部５２の検出期間において、交流信号が出力されない信号非出力期間が長くなる。これにより、コイル抵抗の値（又はその相当値）を好適に算出できる。
【００６０】
（６）コイル６１を通電する場合に、前回の通電から今回の通電までに所定の通電休止時間を設定するようにした。これにより、通電によりコイル６１が自己発熱し、それに起因して温度検出の精度が低下するといった不都合を抑制できる。
【００６１】
（７）クランク角センサ６０のコイル６１を用いてエンジン温度Ｔｅを検出する場合には、エンジン回転状態等により実施の制限が生じる。この点、コイル温度Ｔｃに基づきエンジン温度Ｔｅを算出する算出手段に加え、エンジン温度モデルを用いた演算式によりエンジン温度Ｔｅを算出する算出手段を備える構成としたため、エンジン回転状態等に関係なく、常にエンジン温度Ｔｅを好適に算出できる。特に、エンジン１０の低回転時とそれ以外とで、エンジン温度Ｔｅの算出手段を使い分ける構成としたため、適正な実施が可能となる。
【００６２】
（８）エンジン１０の運転中において、エンジン１０（エンジン本体）とクランク角センサ６０（コイル６１）とで、冷却装置４９による冷却の程度が相違していることに着目し、その冷却の程度の相違を加味してエンジン温度Ｔｅを算出するようにした。これにより、エンジン温度Ｔｅの算出精度を高めることができる。
【００６３】
（９）エンジン１０の運転中には、エンジン温度Ｔｅとコイル温度Ｔｃとが同様にならないことに基づいてエンジン温度Ｔｅを算出し、エンジン１０の運転停止後には、エンジン温度Ｔｅとコイル温度Ｔｃとが同様になることに基づいてエンジン温度Ｔｅを算出するようにした。これにより、エンジン１０の運転中及び停止後のいずれにおいても、エンジン温度Ｔｅを好適に算出できる。
【００６４】
（１０）エンジン１０の運転状態下であって、エンジン１０の回転速度が所定値以下となる低回転状態の際に、信号非出力期間（欠歯検出期間）の前半の期間でコイル抵抗値の検出を実施するようにすることで、車両の加速により信号非出力期間が急に短くなったとしても、コイル抵抗値の誤検出を抑制できる。
【００６５】
（１１）エンジン１０の停止状態でのエンジン温度Ｔｅが算出可能になっているため、暖機再始動の場合にも、その再始動時のエンジン温度Ｔｅを適正に算出できる。
【００６６】
以下、別例を説明する。なお上述で説明した構成と同じ構成には同じ図番号を付して説明する。
【００６７】
・カレントミラー回路は、ＰＮＰ型のバイポーラトランジスタ以外の各種の半導体素子で形成できる。例えば、ＮＰＮ型のバイポーラトランジスタ、ダイオード、ＭＯＳ−ＦＥＴ等で構成されてもよい。
【００６８】
・通電部７２のカレントミラー回路を、定電流回路７５に変えてもよい。例えば図９の制御部７０の変容例に示されるように、電源７２ａとスイッチ７２ｆとの間に定電流回路７５を設け、スイッチ７２ｆの他端に抵抗部７２ｅ（抵抗値Ｒ１）を接続する。以上の構成でスイッチ７２ｆがＯＮになると、定電流回路７５からコイル６１に電流ＩＳ２が供給される。なおこの場合のコイル電流ＩＳ２＝Ｖｃｃ／Ｒ１で求められるので、コイル抵抗値ＲＳ＝ＶＲＳ／ＩＳ２として算出される。図９のような回路構成とすることで、より装置の簡略化を図ることができる。
【００６９】
・コイル電圧を間接的に取得してもよい。例えば図１０の制御部７０の変容例に示されるように、カレントミラー回路のトランジスタ７２ｂにスイッチ７２ｆを接続し、スイッチ７２ｆの他端に、抵抗部７２ｄ（Ｒ１）と第２抵抗部７２ｇ（Ｒ２）とを直列接続する。そして抵抗部７２ｄと第２抵抗部７２ｇとの間のノード（符号略）に、電圧検出部７３を接続する。この場合、電圧検出部７３は第２抵抗部７２ｇ（Ｒ２）にかかる電圧値ＶＲＳ２を検出する。またコイル電流ＩＳ２は、ＩＳ２＝ＩＳ＝Ｖｃｃ／（Ｒ１＋Ｒ２）で求められ、コイル抵抗値ＲＳはＲＳ＝ＶＲＳ２／ＩＳ２として算出される。
【００７０】
・上記では、クランク角センサ６０が持つコイル６１の抵抗値に基づいて、エンジン１０の温度を算出する例を説明した。これ以外にもエンジン温度Ｔｅと温度特性に相関を持つ電気的な機能部品の抵抗体の抵抗値に基づいて、エンジン温度Ｔｅを算出できる。例えば、本来の動作機能として、燃料と吸気との混合気を燃焼室２０に噴射供給する燃料噴射弁２９の抵抗体の抵抗値を用いて、エンジン温度Ｔｅを算出してもよい。この場合、燃料噴射弁２９の噴射供給動作（本来の動作機能）が行われないエンジン１０の始動時等のタイミングで、通電部７２によって燃料噴射弁２９の抵抗体（例えばコイル）を一時的に通電し、電圧検出部７３で検出した電圧値（又は抵抗値）に基づいてエンジン温度Ｔｅを算出する。
【００７１】
・これ以外にも機能部品として、アイドル空気量を調整するＩＳＣ弁（電磁弁２４）、触媒暖機のための二次エアを排気通路４２に供給する二次エアバルブ、キャニスタに吸着したエバポガスを吸気通路１２に供給するパージ弁を用いることが可能である。これらの各機能部品について、本来の動作機能を行わない休止時に、抵抗体への通電により抵抗値を取得する。そして抵抗値に基づきエンジン温度を算出することができる。なお、上記のＩＳＣ弁や二次エアバルブ、パージ弁は、いずれもエンジン本体に直接搭載されるものでなく、エンジン本体の近傍に設けられるものとなっている。
【００７２】
・抵抗値を検出するための通電部７２による機能部品への通電が、機能部品の本来の動作機能に影響しない場合には、機能部品の本来の動作機能と、エンジン温度Ｔｅの検出機能とが同時に行われてもよい。また抵抗体としては、コイル以外にも、機能部品を構成する銅線を用いることができる。
【符号の説明】
【００７３】
１０…エンジン、２９…燃料噴射弁、６０…クランク角センサ、６１…コイル、７０…制御部。
【図１】
2014206144.tif 000003
【図２】
2014206144.tif 000004
【図３】
2014206144.tif 000005
【図４】
2014206144.tif 000006
【図５】
2014206144.tif 000007
【図６】
2014206144.tif 000008
【図７】
2014206144.tif 000009
【図８】
2014206144.tif 000010
【図９】
2014206144.tif 000011
【図１０】
2014206144.tif 000012