一般的な従来装置は、ステアリングホイールの把持状態によって変化する静電容量が、予め設定された閾値を超えた場合に、「ステアリングホイールが運転者によって把持されている状態」と判定している。更に、そのような従来装置は、当該静電容量が当該閾値を再び下回った場合に、「ステアリングホイールが運転者によって把持されていない状態(運転者がステアリングホイールから手を放した状態)」であると判定している。
しかしながら、静電容量センサが検出する静電容量は、例えば、温度によっても変化してしまう場合がある。具体的に述べると、静電容量の検出に用いる電極と運転者の人体(手)との間に存在する物質の比誘電率が、ステアリングホイールの温度の変化の影響を受けるので、静電容量センサの測定値(静電容量)が変化してしまう場合がある。
従って、「ステアリングホイールが運転者によって把持されている状態」が生じていると判定されている場合にもステアリングホイールの温度が上昇すると、その静電容量が増大する。このため、運転者がステアリングホイールから手を離したことに起因する静電容量の減少分を、ステアリングホイールの温度上昇に起因する静電容量の増大分が上回り、その結果、静電容量が前記予め設定された閾値を下回らない可能性がある。
このため、実際には、運転者がステアリングホイールから手を放しているにも関わらず、「ステアリングホイールが運転者によって把持されている状態」であると誤って判定されてしまう可能性がある。
本発明は、上述した課題に対処するためになされた。即ち、本発明の目的の一つは、ステアリングホイールに対する運転者の把持状態を、ステアリングホイールの温度が変化した場合であっても精度良く判定することが可能な把持状態検出装置を提供することにある。
本発明の第1の態様に係る第1開示装置は、車両のステアリングホイール(20)に対する運転者の把持状態に応じて変化する静電容量(センサ値S)を測定する静電容量測定部(21)と、前記ステアリングホイールの温度を検出する温度検出部(25)と、前記静電容量に基づいて、前記ステアリングホイールが前記運転者によって把持されていることが確実な第1保舵状態、前記第1保舵状態から遷移する状態であって前記ステアリングホイールが前記運転者によって把持されていることが確実な第2保舵状態、及び、前記ステアリングホイールが前記運転者によって把持されていないことが確実であるか又は把持されていない可能性が高い状態である手放し状態、のうちの何れの状態が生じているかを判定し(図3のステップ340、図4のステップ470、図4のステップ480、図5のステップ540)、前記判定した状態が前記第1保舵状態又は前記第2保舵状態である場合に前記ステアリングホイールが前記運転者によって把持されていることを表す第1判定結果を出力し、前記判定した状態が前記手放し状態である場合に前記ステアリングホイールが前記運転者によって把持されていないことを表す第2判定結果を出力する(図3のステップ355、図4のステップ492、図5のステップ555)判定部(30)と、を備えるように構成されている。
第1開示装置の前記判定部は、前記手放し状態が生じていると判定している場合(41)において、前記静電容量が第1閾値静電容量(Sth)以上となったとき(図3のステップ330での「Yes」との判定)、前記第1保舵状態が生じたと判定し(図3のステップ340)、前記第1保舵状態が生じていると判定している場合(42)において、前記静電容量が、前記温度が高いほど大きくなる第2閾値静電容量(Sth(n))よりも小さくなったとき(図4のステップ460での「Yes」との判定)、前記第2保舵状態が生じたと判定し(図4のステップ470)、前記第2保舵状態が生じていると判定している場合(43)において、前記静電容量の単位経過時間当たりの変化である静電容量微分値(D)が、第1閾値静電容量微分値(Dthd)以下となったとき(図5のステップ530での「Yes」との判定)、前記手放し状態が生じたと判定する(図5のステップ540)ように構成されている。
これによれば、「手放し状態」と判定されている場合に、静電容量が「第1閾値静電容量」以上となったとき、「第1保舵状態」が生じたと判定される。「第1保舵状態」と判定されている場合に、静電容量が第2閾値静電容量より小さい値であるか否かが判定される。この第2閾値静電容量は、ステアリングホイールの温度が上昇することに起因して静電容量が増大した場合であっても、静電容量がこの第2閾値静電容量以上であれば、運転者がステアリングホイールを確実に把持していると判定できる値に設定されている。
一方で、静電容量がこの第2閾値静電容量より小さくなったことのみでは、「ステアリングホイールが運転者によって把持されている状態」から「ステアリングホイールが運転者によって把持されていない状態」へと状態が変化したと断定することはできない。例えば、「第1保舵状態」と判定されている場合に、ステアリングホイールの把持状態が変化しない状況でステアリングホイールの温度が更に上昇すると、第2閾値静電容量が増大することによって、静電容量がその第2閾値静電容量よりも小さくなる場合があり得る。このため、「第1保舵状態」と判定されている場合に静電容量がこの第2閾値静電容量未満になったとしても、「ステアリングホイールが運転者によって把持されていない状態」へと状態が変化したと断定することはできないからである。
そこで、第1開示装置においては、「第1保舵状態」が生じていると判定されている場合に静電容量が第2閾値静電容量よりも小さくなったとき、運転者がステアリングホイールから手を放そうとしたと明らかに判断できる状況(即ち、静電容量の単位経過時間当たりの変化量である静電容量微分値が第1閾値静電容量微分値以下となる状況)が生じるまで、「第2保舵状態」が生じたと判定される。第2保舵状態は、ステアリングホイールが運転者によって把持されている状態であって、運転者がステアリングホイールを手放そうとする動作すら生じていない状態である。即ち、「第2保舵状態」は、ステアリングホイールが運転者によって把持されていることが確実な状態である。
「第2保舵状態」が生じていると判定されている場合において、運転者がステアリングホイールから手を放そうとしたと明らかに判断できる状況が生じたとき、ステアリングホイールが運転者によって把持されていることが確実ではなくなる。即ち、ステアリングホイールが運転者によって把持されていない可能性が高くなる。この場合、第1開示装置は「手放し状態」が生じたと判定する。
何れもが、ステアリングホイールが運転者によって把持されていることが確実な状態である、「第1保舵状態」又は「第2保舵状態」が生じていると判定された場合、ステアリングホイールが運転者によって把持されていることを表す第1判定結果が出力される。従って、「ステアリングホイールが運転者によって把持されている状態」から「ステアリングホイールが運転者によって把持されていない状態」へと状態が変化していないにも関わらず、ステアリングホイールが運転者によって把持されていないことを表す第2判定結果が出力される可能性を低くすることができる。その結果、例えば、第2判定結果に基づいて運転者に注意喚起を行うシステム等に第1開示装置が利用される場合、その注意喚起が不必要に発生してしまう可能性を低減することができる。
更に、「ステアリングホイールが運転者によって把持されていないことが確実な状態、又は、ステアリングホイールが運転者によって把持されていない可能性が高い状態」である「手放し状態」が生じたと判定された場合、第2判定結果が出力される。従って、「ステアリングホイールが運転者によって把持されている状態」から「ステアリングホイールが運転者によって把持されていない状態」へと変化したにも関わらず、第2判定結果が出力されない可能性を低くすることができる。その結果、例えば、第2判定結果に基づいて運転者に注意喚起を行うシステム等に第1開示装置が利用される場合、注意喚起が必要なときに当該注意喚起が発生しない可能性を低減することができる。
本発明の第2の態様に係る第2開示装置は、車両のステアリングホイール(20)に対する運転者の把持状態に応じて変化する静電容量(センサ値S)を測定する静電容量測定部(21)と、前記静電容量に基づいて、前記ステアリングホイールが前記運転者によって把持されていることが確実な第1保舵状態、前記第1保舵状態から遷移する状態であって前記ステアリングホイールが前記運転者によって把持されていることが確実な第2保舵状態、及び、前記ステアリングホイールが前記運転者によって把持されていないことが確実であるか又は把持されていない可能性が高い状態である手放し状態、のうちの何れの状態が生じているかを判定し(図7のステップ340、図8のステップ820、図8のステップ480、図5のステップ540)、前記判定した状態が前記第1保舵状態又は前記第2保舵状態である場合に前記ステアリングホイールが前記運転者によって把持されていることを表す第1判定結果を出力し、前記判定した状態が前記手放し状態である場合に前記ステアリングホイールが前記運転者によって把持されていないことを表す第2判定結果を出力する(図7のステップ355、図8のステップ492、図5のステップ555)判定部(30)と、を備えるように構成されている。
第2開示装置の前記判定部は、前記手放し状態が生じていると判定している場合(41)において、前記静電容量が第1閾値静電容量(Sth)以上となったとき(図7のステップ330での「Yes」との判定)、前記第1保舵状態が生じたと判定し(図7のステップ340)、前記第1保舵状態が生じていると判定している場合(42)において、前記第1保舵状態と判定した時点の前記静電容量に対する前記静電容量の増加量(「S−Sm」)が、閾値変化量(S_diff)以上となったとき(図8のステップ810での「Yes」との判定)、前記第2保舵状態が生じたと判定し(図8のステップ820)、前記第2保舵状態と判定している場合(43)において、前記静電容量の単位経過時間当たりの変化量である静電容量微分値(D)が、第1閾値静電容量微分値(Dthd)以下となったとき(図5のステップ530での「Yes」との判定)、前記手放し状態が生じたと判定する(図5のステップ540)ように構成されている。
これによれば、「第1保舵状態」と判定されている場合に、第1保舵状態と判定した時点の静電容量に対する静電容量の増加量が、閾値変化量以上であるか否かを判定する。上記静電容量の増加量が、閾値変化量以上である場合、手放しを起因として静電容量が減少したとしても、第1閾値静電容量を下回らない可能性が高い。従って、第1閾値静電容量に基づく判定では、「ステアリングホイールが運転者によって把持されている状態」から「ステアリングホイールが運転者によって把持されていない状態」への変化を精度よく判定することができない。
そこで、第2開示装置においては、「第1保舵状態」が生じていると判定されている場合に上記静電容量の増加量が、閾値変化量以上となったとき、運転者がステアリングホイールから手を放そうとしたと明らかに判断できる状況(即ち、静電容量の単位経過時間当たりの変化量である静電容量微分値が第1閾値静電容量微分値以下となる状況)が生じるまで、「第2保舵状態」が生じたと判定される。第2保舵状態は、ステアリングホイールが運転者によって把持されている状態であって、運転者がステアリングホイールを手放そうとする動作すら生じていない状態である。即ち、「第2保舵状態」は、ステアリングホイールが運転者によって把持されていることが確実な状態である。
「第2保舵状態」が生じていると判定されている場合において、運転者がステアリングホイールから手を放そうとしたと明らかに判断できる状況(静電容量微分値が第1閾値静電容量微分値以下となる状況)が生じたとき、ステアリングホイールが運転者によって把持されていることが確実ではなくなる。即ち、ステアリングホイールが運転者によって把持されていない可能性が高くなる。この場合、「手放し状態」と判定される。
第2開示装置によれば、何れもが、ステアリングホイールが運転者によって把持されていることが確実な状態である「第1保舵状態」又は「第2保舵状態」が生じていると判定された場合、ステアリングホイールが運転者によって把持されていることを表す第1判定結果が出力される。従って、「ステアリングホイールが運転者によって把持されている状態」から「ステアリングホイールが運転者によって把持されていない状態」へと変化していないにも関わらず、ステアリングホイールが運転者によって把持されていないことを表す第2判定結果が出力される可能性を低くすることができる。その結果、例えば、第2判定結果に基づいて運転者に注意喚起を行うシステム等に第2開示装置が利用される場合、その注意喚起が不必要に発生してしまう可能性を低減することができる。
更に、第2開示装置によれば、「ステアリングホイールが運転者によって把持されていないことが確実な状態、又は、ステアリングホイールが運転者によって把持されていない可能性が高い状態」である「手放し状態」が生じたと判定された場合、第2判定結果が出力される。従って、「ステアリングホイールが運転者によって把持されている状態」から「ステアリングホイールが運転者によって把持されていない状態」へと変化したにも関わらず、第2判定結果が出力されない可能性を低くすることができる。その結果、例えば、第2判定結果に基づいて運転者に注意喚起を行うシステム等に第2開示装置が利用される場合、注意喚起が必要なときに当該注意喚起が発生しない可能性を低減することができる。
第1及び第2開示装置の一態様において、前記判定部(30)は、前記第1保舵状態が生じていると判定している場合(41)において、前記静電容量(センサ値S)が前記第1閾値静電容量(Sth)より小さくなったとき、及び、前記静電容量微分値が、「前記第1閾値静電容量微分値(Dthd)より小さい値である第2閾値静電容量微分値(Dtht)」以下となったときの少なくとも1つとなったとき(図4のステップ450での「No」との判定)、前記手放し状態が生じたと判定する(図4のステップ480)ように構成されている。
これによれば、「第1保舵状態」が生じていると判定している場合において、ステアリングホイールに対する運転者の把持状態が変化したとき、ステアリングホイールに対する運転者の把持状態が誤って判定される可能性を低くすることができる。
更に、前記判定部(30)は、前記第2保舵状態と判定している期間(43)が一定時間(t1th)以上となった場合(図11のステップ1170での「Yes」との判定)、前記静電容量測定部(21)が検出無効状態にある(図11のステップ1180)として前記第2判定結果を出力する(図11のステップ1192)ように構成されてもよい。
「第2保舵状態」と判定している状態において、長い時間(例えば、1時間)以上にわたって、静電容量微分値が第1閾値静電容量微分値(Dthd)以下とならない場合は極めて稀である。よって、そのような場合、静電容量測定部が何等かの理由により静電容量を正しく検出していないと考えられ、その場合にも第2保舵状態が発生していると判定し続けることは妥当ではない。
そこで、上記構成によれば、「第2保舵状態」と判定している状態が一定時間(例えば、1時間)以上となった場合、静電容量測定部が「検出無効状態」にあると見做され、その場合、手放し状態が発生していると見做されて第2判定結果が出力される。これによれば、静電容量測定部が検出無効状態であるが故に手放し状態が発生していない(第2保舵状態が発生している)と判定され続けることを回避することができる。
本発明の第3の態様に係る第3開示装置は、車両のステアリングホイール(20)に対する運転者の把持状態に応じて変化する静電容量(センサ値S)を測定する静電容量測定部(21)と、前記ステアリングホイールの温度を検出する温度検出部(25)と、前記静電容量に基づいて、前記ステアリングホイールが前記運転者によって把持されていることが確実な保舵状態、前記ステアリングホイールが前記運転者によって把持されていないことが確実な手放し状態、及び、前記ステアリングホイールが前記運転者によって把持されているか否かを特定することができない検出無効状態のうちの何れの状態が生じているかを判定し(図13のステップ1340、図14のステップ1420、図14のステップ1480)、前記判定した状態が前記保舵状態である場合に前記ステアリングホイールが前記運転者によって把持されていることを表す第1判定結果を出力し、前記判定した状態が前記手放し状態又は前記検出無効状態である場合に前記ステアリングホイールが前記運転者によって把持されていないことを表す第2判定結果を出力する(図13のステップ1355、図14のステップ1492)判定部(30)と、を備えるように構成されている。
第3開示装置の前記判定部は、前記手放し状態が生じていると判定している場合(41)において、前記静電容量が第1閾値静電容量(Sth)以上となったとき(図13のステップ330での「Yes」との判定)、前記保舵状態が生じたと判定し(図13のステップ1340)、前記保舵状態が生じていると判定している場合(42’)において、前記静電容量が、前記温度が高いほど大きくなる第2閾値静電容量(Sth(n))よりも小さくなったとき(図14のステップ460での「Yes」との判定)、前記検出無効状態が生じたと判定する(図14のステップ1420)ように構成されている。
これによれば、ステアリングホイール20が運転者によって把持されているか否かを特定することができない期間(静電容量が第2閾値静電容量より小さい場合)、「検出無効状態」が生じていると判定される。更に、「検出無効状態」と判定された場合、第2判定結果が出力される。
これにより、この期間(検出無効状態と判定されている状態)以外においてステアリングホイールに対する運転者の把持状態が誤って判定される可能性を回避することができる。更に、この期間において、「ステアリングホイールが運転者によって把持されていない状態」であるのに、第2判定結果が出力されなくなる可能性を回避することができる。
本発明の第4の態様に係る第4開示装置は、車両のステアリングホイール(20)に対する運転者の把持状態に応じて変化する静電容量(センサ値S)を測定する静電容量測定部(21)と、前記静電容量に基づいて、前記ステアリングホイールが前記運転者によって把持されていることが確実な保舵状態、前記ステアリングホイールが前記運転者によって把持されていないことが確実な手放し状態、及び、前記ステアリングホールが前記運転者によって把持されているか否かを特定することができない検出無効状態のうちの何れの状態が生じているかを判定し(図16のステップ1640、図17のステップ1720、図17のステップ1780)、前記判定した状態が前記保舵状態である場合に前記ステアリングホイールが前記運転者によって把持されていることを表す第1判定結果を出力し、前記判定した状態が前記手放し状態又は前記検出無効状態である場合に前記ステアリングホイールが前記運転者によって把持されていないことを表す第2判定結果を出力する(図16のステップ1695、図17のステップ1792)判定部(30)と、を備えるように構成されている。
第4開示装置の前記判定部は、前記手放し状態と判定している場合(41)において、前記静電容量が第1閾値静電容量(Sth)以上となったとき(図16のステップ330での「Yes」との判定)、前記保舵状態が生じたと判定する(図16のステップ1640)。
ところで、前述したように、前記保舵状態が生じていると判定している場合(42’)において、前記保舵状態と判定した時点の前記静電容量に対する前記静電容量の増加量が、閾値変化量(S_diff)以上となったとき、運転者がステアリングホイールから手を放したとしても、その静電容量の増加がステアリングホイールの温度増加に起因して生じている場合には、静電容量は第1閾値静電容量未満に変化しない可能性がある。
そこで、第4開示装置の前記判定部は、更に、前記保舵状態が生じていると判定している場合(42’)において、前記保舵状態と判定した時点の前記静電容量に対する前記静電容量の増加量(「S−Sm」)が、閾値変化量以上となったとき(図17のステップ810での「Yes」との判定)、前記検出無効状態が生じたと判定する(図17のステップ1720)ように構成されている。
この第4開示装置によれば、ステアリングホイールが運転者によって把持されているか否かを特定することができない期間(上記静電容量の増加量が閾値変化量以上である場合)、「検出無効状態」が生じていると判定される。更に、「検出無効状態」と判定された場合、第2判定結果が出力される。
これにより、この期間(検出無効状態と判定されている状態)以外においてステアリングホイールに対する運転者の把持状態が誤って判定される可能性を低くすることができる。更に、この期間において、「ステアリングホイールが運転者によって把持されていない状態」であるのに、第2判定結果が出力されなくなる可能性を回避することができる。
上記説明においては、本発明の理解を助けるために、後述する実施形態に対応する発明の構成に対し、その実施形態で用いた名称及び/又は符号を括弧書きで添えている。しかしながら、本発明の各構成要素は、前記符号によって規定される実施形態に限定されるものではない。本発明の他の目的、他の特徴及び付随する利点は、以下の図面を参照しつつ記述される本発明の実施形態についての説明から容易に理解されるであろう。
以下、本発明の各実施形態に係る把持状態検出装置について図面を参照しながら説明する。尚、実施形態の全図において、同一又は対応する部分には同一の符号を付す。
<第1実施形態>
(構成)
図1(A)に示したように、本発明の第1実施形態に係る把持状態検出装置(以下、「第1装置」と称呼される場合がある。)」は、車両10に搭載される。車両10は、第1装置以外周知の車両の構成を有する。車両10は、駆動源として内燃機関を備えた車両である。車両10は、駆動源として、モータのみ、又は、モータ及び内燃機関を備えていてもよい。
車両10は、運転者によって操作されるステアリングホイール(操舵部)20を備える。ステアリングホイール20は、周知であって、正面視において円環形状を有し、図示しないステアリング機構と連結されている。運転者は、ステアリングホイール20を回転させることにより、転舵輪の転舵角を変更することができる。
ステアリングホイール20の断面図である図1(B)に示したように、ステアリングホイール20は、中心から外側に向かって、コア部20a/絶縁部(誘電体部)20b/電極22a又は電極22b(静電容量検出部22)/絶縁部20b/カバー部20cの順に配置された構造を有する。
第1装置は、静電容量センサ21、温度センサ25及び保舵判定ECU30を備える。尚、ECUは、エレクトリックコントロールユニットの略称であり、CPU、ROM、RAM及びインターフェースを含むマイクロコンピュータを主要構成部品として有する電子制御回路である。CPUは、メモリ(ROM)に格納されたインストラクション(ルーチン)を実行することにより、所定の機能を実現するようになっている。更に、CPUは、図示しないイグニッション・キー・スイッチがオフ位置からオン位置へと変更されたとき、電力が供給されるようになっている。
静電容量センサ21(静電容量測定部)は、静電容量検出部22及び周知の静電容量検出回路23(例えば、特開2014−153895号公報等を参照。)を備える。
静電容量検出部22は、図1(B)に示したように、一対の電極22a及び電極22bを含む。静電容量検出回路23は、静電容量検出部22を構成する一対の電極22a及び電極22bのそれぞれに接続される。
静電容量検出回路23は、一対の電極22a及び電極22bのそれぞれと車体、人体(手)等のグラウンドにみなせる物体との間の浮遊容量、及び、静電容量検出回路自体が持つ静電容量を合計した静電容量を検出する。この静電容量は、運転者の手(人体)がステアリングホイール20に接触した際に、その接触面積に応じて変化する。静電容量検出回路23は、この静電容量(静電容量変化)を検出する。
運転者のステアリングホイール20の把持状態に応じて、静電容量センサ21によって測定される静電容量が変化する。具体的に述べると、運転者の人体(手)が、ステアリングホイール20に接触すると静電容量センサ21によって測定される静電容量が増加する。運転者の手がステアリングホイール20から離間すると静電容量センサ21によって測定される当該静電容量が減少する。尚、ステアリングホイール20に運転者の人体(手)が接触した面積が大きいほど当該静電容量が増加し、当該面積が小さいほど当該静電容量が減少する。静電容量センサ21は、静電容量検出回路23によって求めた静電容量(以下、「センサ値S」と称呼する場合がある。)に応じた信号を保舵判定ECU30に対して出力する。
温度センサ25は、ステアリングホイール20に設置されている。温度センサ25は、ステアリングホイール20の温度変化を検出できる位置に設置されている。温度センサ25は、具体的に述べるとサーミスタであり、検出温度値に応じた信号を保舵判定ECU30に対して出力する。
保舵判定ECU30は、静電容量センサ21からセンサ値Sを取得し、センサ値Sに基づいて、運転者がステアリングホイール20を把持している状態(以下、単に「把持状態」と称呼する場合がある。)を判定する。
そして、保舵判定ECU30は、把持状態の判定結果(後述する第1判定結果又は第2判定結果)を、図示しない他のECU等に出力する。保舵判定EUC30から判定結果を取得した他のECU等は、その判定結果に基づいて種々の制御を行う。
<作動の概要>
次に、第1装置の作動の概要について説明する。第1装置の保舵判定ECU30は、その電源がONにされた後、車両10のステアリングホイール20に対する運転者の把持状態に応じて変化する静電容量(即ち、センサ値S)に基づいて、次の判定を行う。即ち、保舵判定ECU30は、当該センサ値Sに基づいて、下記の「手放し状態」、「第1保舵状態」及び「第2保舵状態」の何れが生じているかを繰り返し判定する。
・「手放し状態」:ステアリングホイール20が運転者によって把持されていないことが確実な状態、又は、ステアリングホイール20が運転者によって把持されていない可能性が高い状態
・「第1保舵状態」:ステアリングホイール20が運転者によって把持されていることが確実な状態
・「第2保舵状態」:第1保舵状態から遷移する状態であって、ステアリングホイール20が運転者によって把持されていることが確実な状態
保舵判定ECU30は、判定した状態が「第1保舵状態」又は「第2保舵状態」である場合、ステアリングホイール20が運転者によって把持されていることを表す判定結果(以下、「第1判定結果(保舵状態判定結果)」と称呼する。)を出力する。保舵判定ECU30は、判定した状態が「手放し状態」である場合、ステアリングホイール20が運転者によって把持されていないことを表す判定結果(以下、「第2判定結果(手放し状態判定結果)」と称呼する。)を出力する。
判定結果は保舵判定ECU30から他のECU(図示省略)等に出力される。判定結果を受けた他のECU等は、その判定結果に基づいて所定の処理を行う。この所定の処理としては、具体的に述べると、他のECUが第2判定結果(手放し状態判定結果)を受けて実行する運転者に対する手放し警告(具体的に述べると警告音の発生の実行等の処理)等の注意喚起等が挙げられる。
図2(A)に示した状態41は、ステアリングホイール20に「手放し状態」が生じていると保舵判定ECU30が判定している保舵判定ECU30の状態である。状態42は、ステアリングホイール20に「第1保舵状態」が生じていると保舵判定ECU30が判定している保舵判定ECU30の状態である。状態43は、ステアリングホイール20に「第2保舵状態」が生じていると保舵判定ECU30が判定している保舵判定ECU30の状態である。保舵判定ECU30の状態41、状態42及び状態43は、センサ値Sに基づいて、矢印に示すように遷移する。
具体的に述べると、図2(B)に示した例では、その電源がONにされた時点(図2(B)の時刻t0)の直後においてステアリングホイール20が運転者によって把持されていない。従って、保舵判定ECU30は、「手放し状態」が生じていると判定する。尚、保舵判定ECU30は、このように「手放し状態」が生じていると判定している状態41である場合、現時点のセンサ値Sを基準センサ値S0として、保舵判定ECU30のRAMに記憶する。
その後、保舵判定ECU30は、静電容量センサ21が出力する静電容量(センサ値S)が閾値静電容量Sth(以下、「閾値Sth」と称呼する。)以上であるか否かを判定する。閾値Sthとしては、上述の基準センサ値S0から閾値変化量S_diff増加した値が設定される。尚、閾値Sthは、便宜上「第1閾値静電容量」とも称呼される。
尚、閾値変化量S_diffとしては、「手放し状態」から「第1保舵状態」への変化が生じたことを判定するために適切な値が設定される。具体的に述べると、閾値変化量S_diffとしては、ステアリングホイール20が運転者によって把持されていない状態から、運転者の少なくとも2本の指が、ステアリングホイール20に接触した状態に変化したときに生じるセンサ値Sの変化量に相当する値が設定される。
図2(B)の時刻t0から時刻t1の直前までの期間は、センサ値Sが閾値Sthより小さくなっている期間である。従って、この期間、保舵判定ECU30は「手放し状態」が生じていると判定する。図2(B)の時刻t1でセンサ値Sが閾値Sth以上となる。従って、時刻t1で保舵判定ECU30は「第1保舵状態」が生じたと判定する。即ち、時刻t1で保舵判定ECU30の状態は、図2(A)にて矢印で示したように、その判定している状態が「手放し状態」である状態41からその判定している状態が「第1保舵状態」である状態42に遷移する。
その後、保舵判定ECU30は、センサ値Sが一点鎖線で示した、閾値Sthに対して温度補正を行った閾値Sth(n)(以下、「温度補正閾値Sth(n)」と称呼する。)より小さいか否かを判定する。尚、温度補正閾値Sth(n)は、温度センサ25によって検出された温度に基づいて、温度が高いほどその値が大きくなるように閾値Sthに対して補正を行うことにより求めた閾値である。温度補正閾値Sth(n)は、便宜上「第2閾値静電容量」とも称呼される。温度補正閾値Sth(n)を求める方法の詳細は後述する。
図2(B)の時刻t1から時刻t2の直前までの期間は、センサ値Sが閾値Sth(n)以上になっている期間である。従って、この期間、ステアリングホイール20が運転者によって把持されていることが確実であると断定できるため、保舵判定ECU30は、ステアリングホイール20に「第1保舵状態」が生じていると判定する。この期間、保舵判定ECU30の状態は、その判定している状態が「第1保舵状態」である状態42となっている。
図2(B)の時刻t2でセンサ値Sが温度補正閾値Sth(n)より小さくなる。従って、時刻t2で保舵判定ECU30は「第2保舵状態」が生じたと判定する。即ち、保舵判定ECU30の状態は、図2(A)にて矢印で示したように状態42からその判定している状態が「第2保舵状態」である状態43に遷移する。
状態43に遷移した場合、保舵判定ECU30は、単位経過時間当たりのセンサ値Sの変化量であるセンサ微分値D(静電容量微分値)が、第1閾値静電容量微分値Dthd(以下、「第1閾値微分値Dthd」と称呼する。)以下であるか否かを判定する。これにより、保舵判定ECU30は、「第2保舵状態」から「手放し状態」への変化が生じたか否かを判定する。具体的に述べると、保舵判定ECU30は、センサ微分値Dが第1閾値微分値Dthd以下である場合、「第2保舵状態」から「手放し状態」への変化が生じたと判定する。
尚、第1閾値微分値Dthdとしては、ステアリングホイール20が運転者によって把持されている状態からステアリングホイール20を手放そうとする運転者の動作が生じたときに発生する、単位経過時間当たりのセンサ値Sの減少量(負の値)に設定される。ここで、ステアリングホイール20を手放そうとする運転者の動作とは、例えば、ステアリングホイール20を把持している指の本数が5本から2本へと減らす動作である。具体的に述べると、第1閾値微分値Dthdには、図2(B)に示したセンサ値Sの変化を示す線において、時刻t3でセンサ値Sの減少を示している直線部分の傾き(−D)に設定される。尚、傾き−Dは後述の第2閾値静電容量微分値Dtht(以下、「第2閾値微分値Dtht」と称呼する。)より大きい負の値(絶対値が小さい負の値)に設定される。
状態43に遷移した時刻t2以降において、センサ微分値Dが第1閾値微分値Dthd以下となるようなセンサ値Sの変化が生じるまでは、ステアリングホイール20が運転者によって把持されていることが確実であると断定することができる。そこで、保舵判定ECU30は、時刻t2以降において、センサ微分値Dが第1閾値微分値Dthd以下となるようなセンサ値Sの変化が生じる時点の直前(時刻t3)までの期間、第2保舵状態が生じていると判定する。
ところで、センサ値Sが温度補正閾値Sth(n)以上である場合、ステアリングホイール20が運転者によって把持されていることが確実であると断定できる。一方、静電容量センサ21及び/温度センサ25の個体差及び/又は経時変化等を考慮するとき、センサ値Sが温度補正閾値Sth(n)より小さい場合であることのみをもって、ステアリングホイール20が運転者によって把持されていないと判定することができない。
図2(B)の時刻t2から時刻t3の直前までの期間は、センサ微分値Dが第1閾値微分値Dthdより大きくなっている期間である。従って、この期間、保舵判定ECU30の状態は、その判定している状態が「第2保舵状態」である状態43である。
図2(B)の時刻t3でセンサ微分値Dが第1閾値微分値Dthd以下となる。これは、ステアリングホイール20が運転者によって把持されている状態から運転者がステアリングホイール20を手放そうとする動作が生じて、ステアリングホイール20が運転者によって把持されていることが確実ではない状態(即ち、ステアリングホイール20が運転者によって把持されていない可能性が高い状態)になったことを意味する。従って、時刻t3で保舵判定ECU30は「手放し状態」が生じたと判定する。即ち、保舵判定ECU30の状態は、図2(A)にて矢印で示したように、その判定している状態が「第2保舵状態」である状態43からその判定している状態が「手放し状態」である状態41に遷移する。
このとき保舵判定ECU30は、RAMに記録された基準センサ値S0の値を、判定時のセンサ値Sに更新する。そして、更新された基準センサ値S0に閾値変化量S_diffを加えた値が、更新後の閾値Sthとして設定される。
尚、図示はしていないが、時刻t1から時刻t2の直前までの期間に、「第1保舵状態」から「手放し状態」への変化が生じた場合、保舵判定ECU30は「手放し状態」が生じたと判定する。具体的に述べると、センサ値Sが閾値Sthより小さくなった場合、及び、単位経過時間当たりのセンサ値Sの変化量であるセンサ微分値Dが、第2閾値微分値Dtht以下となった場合の少なくとも1つになった場合、ステアリングホイール20が運転者によって把持されていないことが確実であると断定できる。従って、この場合、保舵判定ECU30は「手放し状態」が生じたと判定する。即ち、保舵判定ECU30の状態は、図2(A)にて矢印で示したように、状態42からその判定している状態が「手放し状態」である状態41に遷移する。
尚、第2閾値微分値Dthtとしては、ステアリングホイール20が運転者によって把持されている状態からステアリングホイール20が運転者によって把持されていない状態に変化したことを判定するために適切な負の値が設定される。この第2閾値微分値Dthtは、既述の第1閾値微分値Dthdよりも小さい負の値(絶対値が大きい負の値)が設定される。
<具体的作動>
次に、保舵判定ECU30のCPU(以下、単に「CPU」と称呼する。)の具体的作動について説明する。CPUは、所定時間が経過する毎に図3乃至図5のフローチャートにより示した第1保舵判定ルーチン、第2保舵及び手放し判定ルーチン、並びに、手放し判定ルーチンのそれぞれを実行する。
CPUは、静電容量センサ21が出力する静電容量(即ち、センサ値S)に基づいて、「手放し状態」、「第1保舵状態」及び「第2保舵状態」のうちの何れの状態が生じたかを判定する。尚、CPUは、判定した状態に応じて、第1保舵判定フラグXhda及び第2保舵判定フラグXmnaの値を変更(設定)する。
第1保舵判定フラグXhdaはその値が「1」の場合、「第1保舵状態」が生じているとCPUが判定していることを表す。第2保舵判定フラグXmnaは、その値が「1」の場合、「第2保舵状態」が生じているとCPUが判定していることを表す。既述した通り、「第1保舵状態」又は「第2保舵状態」であると判定している場合、CPUは第1判定結果(保舵状態判定結果)を出力する。
第1保舵判定フラグXhda及び第2保舵判定フラグXmnaの値が何れも「0」である場合、「手放し状態」が生じているとCPUが判定していることを表す。この場合、CPUは第2判定結果(手放し状態判定結果)を出力する。
第1保舵判定フラグXhdaの値及び第2保舵判定フラグXmnaの値は、車両10に搭載された図示しないイグニッション・キー・スイッチがオフ位置からオン位置へと変更された(即ち、第1装置の電源がONとされた)とき、CPUにより実行されるイニシャルルーチンにおいて「0」に設定される。
イグニッション・キー・スイッチがオン位置にある場合、図3乃至図5のルーチンが所定時間の経過毎に起動される。第1保舵判定フラグXhda及び第2保舵判定フラグXmnaがイニシャライズ(Xhda=0、Xmna=0)されているため、保舵判定ECU30の状態は、現時点の判定している状態が「手放し状態」である状態41になる。この場合、実質的には、第1保舵判定ルーチンが機能することになる。
以下、図3を参照しながら第1保舵判定ルーチンから説明する。CPUは、所定のタイミングになると、第1保舵判定ルーチンのステップ300から処理を開始してステップ310に進み、第1保舵判定フラグXhdaの値、及び、第2保舵判定フラグXmnaの値が共に「0」であるか否かを判定する。
第1保舵判定フラグXhdaの値及び第2保舵判定フラグXmnaの値が共に「0」である場合、CPUはステップ310にて「Yes」と判定してステップ320に進み、静電容量センサ21より出力されたセンサ値Sを取得する。その後、CPUはステップ330に進み、センサ値Sが閾値Sth以上であるか否かを判定する。
センサ値Sが閾値Sth以上である場合、CPUはステップ330にて「Yes」と判定してステップ340に進み、第1保舵判定フラグXhdaの値を「1」に設定する。即ち、CPUは、「第1保舵状態」が生じたと判定する。その後、CPUはステップ355に進み、CPUが判定している状態(即ち、Xhda=1且つXmna=0により示される第1保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))を出力する。その後、CPUはステップ395に進み、本ルーチンを一旦終了する。
これに対して、センサ値Sが閾値Sthより小さい場合、CPUはステップ330にて「No」と判定してステップ350に進み、基準センサ値S0の値をセンサ値Sに更新する。尚、CPUは、これに伴い閾値Sthの値も、更新後の基準センサ値S0から閾値変化量S_diff増加した値(=S0+S_diff)に更新する。このステップ350の処理は、本ルーチンを所定の複数回数実行するごとに行うようにしてもよい。その後、CPUはステップ355に進み、CPUが判定している状態(即ち、Xhda=0且つXmna=0により示される手放し状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ395に進み、本ルーチンを一旦終了する。
尚、CPUがステップ310の処理を実行する時点において、第1保舵判定フラグXhda及び第2保舵判定フラグXmnaの値の少なくとも一方が「0」ではない場合、CPUはステップ310にて「No」と判定してステップ395に進み、本ルーチンを一旦終了する。
次に、図4を参照しながら第2保舵及び手放し判定ルーチンについて説明する。CPUは、所定のタイミングになると、図4のステップ400から処理を開始してステップ410に進み、第1保舵判定フラグXhdaの値が「1」であるか否かを判定する。
第2保舵及び手放し判定ルーチンは、CPUの判定している状態が「保舵状態」である状態43の場合(即ち、第1保舵判定フラグXhdaの値が「1」に設定されている場合)に、実質的に機能する。従って、第1保舵判定フラグXhdaの値が「1」ではない場合、CPUはステップ410にて「No」と判定してステップ495に進み、本ルーチンを一旦終了する。
これに対して、第1保舵判定フラグXhdaの値が「1」である場合、CPUはステップ410にて「Yes」と判定してステップ420に進み、静電容量センサ21より出力されたセンサ値Sを取得する。
その後、CPUはステップ430に進み、本ルーチンの1サイクル前のルーチンの温度補正閾値Sth(n−1)(以下「前回温度補正閾値Sth(n−1)」と称呼する。)をRAMから読み出す。次いで、CPUはステップ440に進み、前回温度補正閾値Sth(n−1)、温度傾斜係数Δth及び閾値Sthを、(式)Sth(n)=Sth(n−1)+Δth+Sthに適用して、本ルーチンに用いる温度補正閾値Sth(n)を算出する。尚、nは1以上の整数であり、Sth(0)は0である。算出された温度補正閾値Sth(n)は、RAMに記憶される。
温度傾斜係数Δthは、図4のブロックB1に示したルックアップテーブルMapΔth(Δtemp)に、温度センサ25から取得した温度の単位経過時間当たりの温度変化Δtempを適用することにより求められる。ルックアップテーブルMapΔth(Δtemp)によれば、温度変化Δtempが大きくなるに従って、温度傾斜係数Δthも大きくなる。即ち、センサ値Sはステアリングホイール20の温度が高くなるほど大きくなることから、CPUは、閾値Sthを温度変化に比例させて変化させるように補正を行っている。このような補正を行った温度補正閾値Sth(n)をセンサ値Sが上回っている場合は、ステアリングホイール20が運転者によって把持されていることが確実であると断定することができる。従って、この場合、CPUは、後述するように、ステアリングホイール20に「第1保舵状態」が生じていると判定する。
CPUの判定した状態が「第1保舵状態」である場合において、温度補正閾値Sth(n)をセンサ値Sが下回ると、CPUは、後述するように、「第2保舵状態」が生じたと判定する。この判定以降、運転者がステアリングホイール20を手放そうとしたときのセンサ値Sの変化が生じるまでの期間は、運転者がステアリングホイール20を手放そうとする動作すら生じていないといえる。この期間は、ステアリングホイール20が運転者によって把持されていることが確実であると断定することができる。従って、CPUは、後述するように、このような期間では「第2保舵状態」が生じていると判定する。
CPUはステップ450に進み、センサ値Sが閾値Sth以上であり、且つ、センサ微分値Dが第2閾値微分値Dthtより大きいか否かを判定する。センサ値Sが閾値Sth以上であり、且つ、センサ微分値Dが第2閾値微分値Dthtより大きい場合、CPUはステップ450にて「Yes」と判定してステップ460に進み、センサ値Sが温度補正閾値Sth(n)より小さいか否かを判定する。
センサ値Sが温度補正閾値Sth(n)より小さい場合、CPUはステップ460にて「Yes」と判定してステップ470に進み、第1保舵判定フラグXhdaの値を「0」に設定すると共に、第2保舵判定フラグXmnaの値を「1」に設定する。即ち、CPUは「第2保舵状態」が生じたと判定する。その後、CPUはステップ492に進み、CPUが判定している状態(即ち、Xhda=0且つXmna=1により示される第2保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))を出力する。その後、CPUはステップ495に進み、本ルーチンを一旦終了する。
これに対して、センサ値Sが温度補正閾値Sth(n)以上の値である場合、CPUはステップ460にて「No」と判定する。尚、この場合、第1保舵判定フラグXhdaの値は「1」のままである。即ち、CPUは第1保舵状態が生じていると判定している。その後、CPUはステップ492に進み、CPUが判定している状態(即ち、Xhda=1且つXmna=0により示される第1保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))を出力する。その後、ステップ495に進み、本ルーチンを一旦終了する。
尚、CPUがステップ450の処理を実行する時点において、センサ値Sが閾値Sthより小さい場合、及び、センサ微分値Dが第2閾値微分値Dtht以下である場合の少なくとも1つである場合、CPUはステップ450にて「No」と判定する。その後、CPUはステップ480に進み、第1保舵判定フラグXhdaの値を「0」に設定する。即ち、CPUは「手放し状態」が生じたと判定する。その後、CPUはステップ490に進み、基準センサ値S0の値をセンサ値Sに更新する。その後、CPUはステップ492に進み、CPUが判定している状態(即ち、Xhda=0且つXmna=0により示される手放し状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ495に進み、本ルーチンを一旦終了する。
次に、図5を参照しながら手放し判定ルーチンについて説明する。CPUは、所定のタイミングになると、図5のステップ500から処理を開始してステップ510に進み、第2保舵判定フラグXmnaの値が「1」であるか否かを判定する。
手放し判定ルーチンは、CPUの判定している状態が「第2保舵状態」である状態43の場合(即ち、第2保舵判定フラグXmnaの値が「1」に設定されている場合)に、実質的に機能する。従って、第2保舵判定フラグXmnaの値が「0」である場合(即ち、CPUの判定している状態が「第2保舵状態」ではない場合)、CPUはステップ510にて「No」と判定して、ステップ595に進み、本ルーチンを一旦終了する。
これに対して、第2保舵判定フラグXmnaの値が「1」である場合、CPUはステップ510にて「Yes」と判定して、ステップ520に進み、静電容量センサ21より出力されたセンサ値Sの単位経過時間当たりの変化量であるセンサ微分値Dを取得する。
その後、CPUはステップ530に進み、センサ微分値Dが第1閾値微分値Dthd以下であるか否かを判定する。
センサ微分値Dが第1閾値微分値Dthd以下である場合、CPUはステップ530にて「Yes」と判定してステップ540に進み、第2保舵判定フラグXmnaの値を「0」に設定する。尚、このとき第1保舵判定フラグXhdaの値は「0」である。即ち、CPUは「手放し状態」が生じたと判定する。
その後、CPUはステップ550に進み、RAMに記録された基準センサ値S0を、「手放し状態」であると判定した時点のセンサ値Sに更新する。そして、更新された基準センサ値S0(更新後)に閾値変化量S_diffを加えた値(=S0+S_diff)が、更新された閾値Sth(更新後)として設定される。
その後、CPUはステップ555に進み、CPUが判定している状態(即ち、Xhda=0且つXmna=0により示される手放し状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ595に進み、本ルーチンを一旦終了する。
これに対して、センサ微分値Dが第1閾値微分値Dthdより大きい値である場合、CPUはステップ530にて「No」と判定する。尚、この場合、第2保舵判定フラグXmnaの値は「1」のままである(即ち、CPUは第2保舵状態が生じていると判定している。)。その後、CPUはステップ555に進み、CPUが判定している状態(即ち、Xhda=0且つXmna=1により示される第2保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))を出力する。その後、CPUはステップ595に進み、本ルーチンを一旦終了する。
以上説明したように、第1装置によれば、「手放し状態」と判定されている場合に、センサ値Sが閾値Sth(第1閾値静電容量)以上となったとき、「第1保舵状態」が生じたと判定される。「第1保舵状態」と判定されている場合に、センサ値Sが温度補正閾値Sth(n)(第2閾値静電容量)より小さい値であるか否かが判定される。この温度補正閾値Sth(n)は、ステアリングホイール20の温度が上昇することに起因してセンサ値Sが増大した場合であっても、センサ値Sがこの温度補正閾値Sth(n)以上であれば、運転者がステアリングホイール20を確実に把持していると判定できる値に設定されている。
一方で、センサ値Sがこの温度補正閾値Sth(n)より小さくなったことのみでは、「ステアリングホイール20が運転者によって把持されている状態」から「ステアリングホイール20が運転者によって把持されていない状態」へと状態が変化したと断定することはできない。例えば、「第1保舵状態」と判定されている場合に、ステアリングホイール20の把持状態が変化しない状況でステアリングホイール20の温度が更に上昇すると、温度補正閾値Sth(n)が増大することによって、センサ値Sがその温度補正閾値Sth(n)よりも小さくなる場合があり得る。このため、「第1保舵状態」と判定されている場合にセンサ値Sがこの温度補正閾値Sth(n)未満になったとしても、「ステアリングホイール20が運転者によって把持されていない状態」へと状態が変化したと断定することはできないからである。
そこで、第1装置においては、「第1保舵状態」が生じていると判定されている場合にセンサ値Sが温度補正閾値Sth(n)よりも小さくなったとき、運転者がステアリングホイール20から手を放そうとしたと明らかに判断できる状況(即ち、センサ微分値Dが第1閾値微分値Dthd以下となる状況)が生じるまで、「第2保舵状態」が生じていると判定される。「第2保舵状態」は、ステアリングホイール20が運転者によって把持されている状態であって、運転者がステアリングホイール20を手放そうとする動作すら生じていない状態である。即ち、「第2保舵状態」は、ステアリングホイール20が運転者によって把持されていることが確実な状態である。
「第2保舵状態」が生じていると判定されている場合において、運転者がステアリングホイール20から手を放そうとしたと明らかに判断できる状況(即ち、センサ微分値Dが第1閾値微分値Dthd以下となる状況)が生じたとき、ステアリングホイール20が運転者によって把持されていることが確実ではなくなる。即ち、ステアリングホイール20が運転者によって把持されていない可能性が高くなる。この場合、「手放し状態」が生じたと判定される。
第1装置によれば、ステアリングホイール20の温度が変化した場合であっても、ステアリングホイール20が運転者によって把持されている状態をより精度よく検出することができる。
第1装置によれば、ステアリングホイール20が運転者によって把持されていることが確実な状態である「第1保舵状態」又は「第2保舵状態」と判定された場合、第1判定結果(保舵状態判定結果)が出力される。
従って、「ステアリングホイール20が運転者によって把持されている状態」から「ステアリングホイール20が運転者によって把持されていない状態」へと変化していないにも関わらず、第2判定結果(手放し状態判定結果)が出力される可能性を低くすることができる。
その結果、例えば、第2判定結果(手放し状態判定結果)に基づいて運転者に注意喚起を行うシステム等に第1装置が利用される場合、その注意喚起が不必要に発生してしまう可能性を低減することができる。
更に、第1装置によれば、「ステアリングホイール20が運転者によって把持されていないことが確実な状態、又は、ステアリングホイール20が運転者によって把持されていない可能性が高い状態である「手放し状態」と判定された場合、第2判定結果(手放し状態判定結果)が出力される。
従って、「ステアリングホイール20が運転者によって把持されている状態」から「ステアリングホイール20が運転者によって把持されていない状態」へと変化したにも関わらず、第2判定結果(手放し状態判定結果)が出力されなくなる可能性を低くすることができる。
その結果、例えば、第2判定結果(手放し状態判定結果)に基づいて運転者に注意喚起を行うシステム等に第1装置が利用される場合、その注意喚起が必要なときに発生しない可能性を低減することができる。
<第2実施形態>
次に、本発明の第2実施形態に係る把持状態検出装置(以下、「第2装置」と称呼される場合がある。)について説明する。第2装置は、以下の点のみにおいて第1装置と相違している。
(1)第2装置は、温度センサ25を備えていない。
(2)第2装置は、図3に示したルーチンに代わる図7に示した第1保舵判定ルーチンと、図4に示したルーチンに代わる図8に示した第2保舵及び手放し判定ルーチンと、図5に示した手放し判定ルーチンと同一の手放し判定ルーチンと、を実行する。
以下、この相違点を中心として説明する。
<作動の概要>
次に、第2装置の作動の概要について説明する。
図6に示したように、保舵判定ECU30は、その電源がONにされた時点(図6の時刻t0)の直後、「手放し状態」が生じたと判定する。その後、保舵判定ECU30は、センサ値Sが閾値Sth以上であるか否かを判定する。
図6の時刻t0から時刻t1の直前までの期間は、センサ値Sが閾値Sthより小さくなっている期間である。従って、この期間、保舵判定ECU30は「手放し状態」が生じていると判定する。図6の時刻t1でセンサ値Sが閾値Sth以上となる。従って、時刻t1で保舵判定ECU30は「第1保舵状態」が生じたと判定する。
その後、保舵判定ECU30は、「センサ値S」から「センサ値Sが閾値Sth未満から閾値Sth以上となった後にセンサ微分値がDth0より小さくなった時点である時刻t1のセンサ値Sm」を引いた差分「S−Sm」の値が、閾値変化量S_diff以上であるか否かを判定する。この「S−Sm」の値は、保舵判定ECU30が「第1保舵状態」が生じたと判定した時点の静電容量に対する静電容量の増加量を表している。
図6の時刻t1から時刻t2の直前までの期間は、「S−Sm」の値が閾値変化量S_diffより小さくなっている期間である。従って、この期間、保舵判定ECU30の状態は、その判定している状態が「第1保舵状態」である状態42となっている。
図6の時刻t2で「S−Sm」の値が閾値変化量S_diff以上となると、保舵判定ECU30は「第2保舵状態」が生じたと判定する。即ち、保舵判定ECU30は、状態42からその判定している状態が「第2保舵状態」である状態43に遷移する。尚、図示はしていないが、時刻t1から時刻t2の直前までの期間にセンサ値Sが閾値Sthより小さくなった場合、及び、センサ微分値Dが、第2閾値微分値Dtht以下となった場合の少なくとも1つになった場合、保舵判定ECU30は「手放し状態」が生じたと判定する。
時刻t2以降の期間の作動の概要は、図2(A)及び図2(B)を参照して既述した第1装置の作動の概要と同様である。即ち、時刻t2以降、保舵判定ECU30は、センサ微分値Dが第1閾値微分値Dthd以下になったか否かを判定する。
図6の時刻t2から時刻t3の直前までの期間は、センサ微分値Dが第1閾値微分値Dthdより大きい値になっている。従って、この期間、保舵判定ECU30の状態は、その判定している状態が「第2保舵状態」である状態43となっている。その後、図6の時刻t3でセンサ微分値Dが第1閾値微分値Dthd以下となると、保舵判定ECU30は、「手放し状態」が生じたと判定する。即ち、保舵判定ECU30の状態は、状態43からその判定している状態が「手放し状態」である状態41に遷移する。
<具体的作動>
次に、第2装置の保舵判定ECU30のCPU(以下、単に「CPU」と称呼する。)の具体的作動について説明する。CPUは、所定時間が経過する毎に図7のフローチャートに示した第1保舵判定ルーチン、図8のフローチャートに示した第2保舵及び手放し判定ルーチン、並びに、図5のフローチャートに示したルーチンと同一の手放し判定ルーチンのそれぞれを実行する。
尚、図7及び図8において既に述べたステップと同一の処理を行うためのステップには、前図においてそのようなステップに付された符号を付し、それらのステップの説明は適宜省略される。このことは、後述の第1変形例乃至第4実施形態の説明においても同様である。
以下、図7を参照しながら第1保舵判定ルーチンから説明する。CPUは、所定のタイミングになると、第1保舵判定ルーチンのステップ700から処理を開始して、ステップ310乃至ステップ350のうちの適当なステップの処理を順に行う。
CPUはステップ340にて第1保舵判定フラグXhdaの値を「1」に設定する。即ち、CPUは「保舵状態」が生じたと判定する。その後、CPUはステップ710に進み、センサ微分値Dが閾値Dthxより小さくなった時点のセンサ値SmをROMに記憶する。尚、閾値Dthxは、図6に示したセンサ値Sの変化を示す線において、時刻t1でセンサ値Sの急激な増加を示している直線部分の傾きである。その後、CPUはステップ355の処理を実行した後、ステップ795に進み、本ルーチンを一旦終了する。よって、この場合、CPUが判定している状態(即ち、Xhda=1且つXmna=0により示される第1保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))が出力される。
次に、図8を参照しながら第2保舵及び手放し判定ルーチンについて説明する。CPUは、所定のタイミングになると、第2保舵及び手放し判定ルーチンのステップ800から処理を開始して、ステップ410に進む。第1保舵判定フラグXhdaの値が「1」である場合、CPUは、ステップ420及びステップ450の処理を順に行う。ステップ450の処理を実行する時点において、センサ値Sが閾値Sth以上の値であり、且つ、センサ微分値Dが第2閾値微分値Dthtより大きい値である場合、CPUはステップ450にて「Yes」と判定してステップ810に進み、「S−Sm」の値が、閾値変化量S_diff以上であるか否かを判定する。
「S−Sm」の値が、閾値変化量S_diff以上である場合、CPUはステップ810にて「Yes」と判定してステップ820に進み、第1保舵判定フラグXhdaの値を「0」に設定すると共に第2保舵判定フラグXmnaの値を「1」に設定する。即ち、CPUは「第2保舵状態」が生じたと判定する。
「S−Sm」の値が、閾値変化量S_diff以上である場合、運転者がステアリングホイール20を手放したことを起因としてセンサ値Sが減少したとしても、閾値Sthを下回らない可能性が高い。即ち、この場合、センサ値Sが閾値Sth以上である場合でも、ステアリングホイール20が運転者によって把持されていないことが考えられるため、センサ値Dと閾値Sthとの比較によっては、ステアリングホイール20が運転者によって把持されているか否かを特定することができない。
一方、「S−Sm」の値が、閾値変化量S_diff以上となった時点以降、運転者がステアリングホイール20を手放そうとしたときのセンサ値Sの変化が生じるまでの期間は、運転者がステアリングホイール20を手放そうとする動作すら生じていないといえる。従って、この期間、ステアリングホイール20が運転者によって把持されていることが確実であると断定することができる。従って、CPUはこのような期間を「第2保舵状態」が生じたと判定する。その後、CPUはステップ492の処理を実行した後、ステップ895に進み、本ルーチンを一旦終了する。よって、この場合、CPUが判定している状態(即ち、Xhda=0且つXmna=1により示される第2保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))が出力される。
これに対して、「S−Sm」の値が、閾値変化量S_diffより小さい値である場合、CPUはステップ810にて「No」と判定する。尚、この場合、第1保舵判定フラグXhdaの値は「1」のままである。その後、CPUはステップ492の処理を実行した後、ステップ895に進み、本ルーチンを一旦終了する。よって、この場合、CPUが判定している状態(即ち、Xhda=1且つXmna=0により示される第1保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))が出力される。
尚、CPUがステップ450の処理を実行する時点において、センサ値Sが閾値Sthより小さい場合、及び、センサ微分値Dが第2閾値微分値Dtht以下である場合の少なくとも1つである場合、CPUはステップ450にて「No」と判定する。その後、CPUはステップ480及びステップ490の処理を行い、その後、CPUはステップ492の処理を実行した後、ステップ895に進み、本ルーチンを一旦終了する。よって、この場合、CPUが判定している状態(即ち、Xhda=0且つXmna=0により示される手放し状態)に応じた判定結果(第2判定結果(手放し状態判定結果))が出力される。
更に、前述したように、CPUは図5の手放し判定ルーチンと同一の手放しルーチンの処理を行う。
以上説明したように、第2装置によれば、「第1保舵状態」と判定されている場合に、「S−Sm」の値が、閾値変化量S_diff以上であるか否かが判定される。「S−Sm」の値が、閾値変化量S_diff以上である場合、手放しを起因としてセンサ値Sが減少したとしても、閾値Sth(第1閾値静電容量)を下回らない可能性が高い。従って、閾値Sthに基づく判定では、「ステアリングホイール20が運転者によって把持されている状態」から「ステアリングホイール20が運転者によって把持されていない状態」への変化を精度よく判定することができない。
そこで、第2装置においては、「第1保舵状態」が生じていると判定されている場合に「S−Sm」の値が、閾値変化量S_diff以上となったとき、運転者がステアリングホイール20から手を放そうとしたと明らかに判断できる状況(即ち、センサ微分値Dが第1閾値微分値Dthd以下となる状況)が生じるまでが、「第2保舵状態」が生じたと判定される。「第2保舵状態」は、ステアリングホイール20が運転者によって把持されている状態であって、運転者がステアリングホイール20を手放そうとする動作すら生じていない状態である。即ち、「第2保舵状態」は、ステアリングホイール20が運転者によって把持されていることが確実な状態である。
「第2保舵状態」が生じていると判定されている場合において、運転者がステアリングホイール20から手を放そうとしたと明らかに判断できる状況(センサ微分値Dが第1閾値微分値Dthd以下となる状況)が生じたとき、ステアリングホイール20が運転者によって把持されていることが確実ではなくなる。即ち、ステアリングホイール20が運転者によって把持されていない可能性が高くなる。この場合、「手放し状態」と判定される。
第2装置によれば、ステアリングホイール20の温度が変化した場合であっても、ステアリングホイール20が運転者によって把持されている状態をより精度よく検出することができる。
第2装置によれば、ステアリングホイール20が運転者によって把持されていることが確実な状態である「第1保舵状態」又は「第2保舵状態」と判定された場合、第1判定結果(保舵状態判定結果)が出力される。
従って、「ステアリングホイール20が運転者によって把持されている状態」から「ステアリングホイール20が運転者によって把持されていない状態」へと変化していないにも関わらず、第2判定結果(手放し状態判定結果)が出力される可能性を低くすることができる。
その結果、例えば、第2判定結果(手放し状態判定結果)に基づいて運転者に注意喚起を行うシステム等に第2装置が利用される場合、その注意喚起が不必要に発生してしまう可能性を低減することができる。
更に、第2装置によれば、「ステアリングホイール20が運転者によって把持されていないことが確実な状態、又は、ステアリングホイール20が運転者によって把持されていない可能性が高い状態である「手放し状態」と判定された場合、第2判定結果(手放し状態判定結果)が出力される。
従って、「ステアリングホイール20が運転者によって把持されている状態」から「ステアリングホイール20が運転者によって把持されていない状態」へと変化したにも関わらず、第2判定結果(手放し状態判定結果)が出力されなくなる可能性を低くすることができる。
その結果、例えば、第2判定結果(手放し状態判定結果)に基づいて運転者に注意喚起を行うシステム等に第2装置が利用される場合、その注意喚起が必要なときに発生しない可能性を低減することができる。
<第1変形例>
次に、本発明の第1変形例に係る把持状態検出装置(以下、「第1変形装置」と称呼される場合がある。)について説明する。第1変形装置は、以下の点のみにおいて第1装置と相違している。尚、第1変形装置の特徴は第2装置にも適用することができる。
・第1変形装置は、図3に示した第1保舵判定ルーチンに代わる図10に示した第1保舵判定ルーチン、図4に示したルーチンと同一の第2保舵及び手放し判定ルーチン、並びに、図5に示した手放し判定ルーチンに代わる図11に示した手放し及びセンサ無効判定ルーチンを実行する。
以下、この相違点を中心として説明する。
<作動の概要>
次に、第1変形装置の作動の概要について説明する。第1変形装置は、判定している状態が「第2保舵状態」である状態43にタイマー設定がある点のみにおいて、第1装置と相違する。図9に示したように、保舵判定ECU30の状態は、その判定している状態が「第2保舵状態」である状態43が所定時間継続すると、状態43からその判定している状態が「センサ無効状態」である状態44に遷移する。尚、「センサ無効状態」は便宜上「検出無効状態」とも称呼される。
<具体的作動>
次に、CPUの具体的作動について説明する。
まず図10を参照しながら第1保舵判定ルーチンから説明する。CPUは、所定のタイミングになると、第1保舵判定ルーチンのステップ1000から処理を開始して、ステップ1010にて第1保舵判定フラグXhda、第2保舵判定フラグXmna及びセンサ無効判定フラグXmkoが、いずれの値も「0」であるか否かを判定する。以上のこと以外は、図3に示した第1保舵判定ルーチンと同一である。
尚、イグニッション・キー・スイッチがオン位置にある場合、第1保舵判定ルーチン、第2保舵判定ルーチン、並びに、手放し及びセンサ無効判定ルーチンが所定時間の経過毎に起動される。更に、前述したイニシャルルーチンにおいて、第1保舵判定フラグXhda、第2保舵判定フラグXmna及びセンサ無効判定フラグXmkoがイニシャライズ(Xhda=0、Xmna=0、Xmko=0)される。
第1保舵判定フラグXhda、第2保舵判定フラグXmna及びセンサ無効判定フラグXmkoがいずれも「0」である場合、「手放し状態」が生じているとCPUが判定していることを表す。センサ無効判定フラグXmkoは、その値が「1」の場合、「センサ無効状態」が生じているとCPUが判定していることを表す。この場合、CPUは第2判定結果(手放し状態判定結果)を出力する。その他のフラグの値の規定内容については既述した通りである。
第1保舵判定フラグXhda、第2保舵判定フラグXmna及びセンサ無効判定フラグXmkoが、いずれの値も「0」である場合、CPUはステップ1010にて「Yes」と判定して、ステップ320乃至ステップ350のうちの適当なステップの処理を行う。その後、CPUはステップ355の処理を実行した後、ステップ1095に進み、本ルーチンを一旦終了する。
これに対して、第1保舵判定フラグXhda、第2保舵判定フラグXmna及びセンサ無効判定フラグXmkoのうちの何れかの値が「0」ではない場合、CPUはステップ1010にて「No」と判定してステップ1095に進み、本ルーチンを一旦終了する。
次に、第2保舵及び手放し判定ルーチンについて説明する。第2保舵及び手放し判定ルーチンは、図4に示した第2保舵及び手放し判定ルーチンと同一のルーチンの処理を行う。
次に、図11を参照しながら手放し及びセンサ無効判定ルーチンについて説明する。CPUは、所定のタイミングになると手放し及びセンサ無効判定ルーチンのステップ1100から処理を開始してステップ1115に進み、センサ無効判定フラグXmkoの値が「0」であるか否かを判定する。
センサ無効判定フラグXmkoの値が「0」である場合、CPUはステップ1115にて「Yes」と判定してステップ1120に進み、第2保舵判定フラグXmnaの値が「1」であるか否かを判定する。第2保舵判定フラグXmnaの値が「1」である場合、CPUは、ステップ1120にて「Yes」と判定してステップ1130に進み、センサ微分値Dが第1閾値微分値Dthd以下であるか否かを判定する。
センサ微分値Dが第1閾値微分値Dthdより大きい値である場合、CPUはステップ1130にて「No」と判定して、ステップ1170に進み、第2保舵タイマt1が予め設定されたセンサ無効確定時間t1th以上であるか否かを判定する。この第2保舵タイマt1の値は、判定した状態が「第2保舵状態」である状態42を継続している時間を表している。
第2保舵タイマt1が予め設定されたセンサ無効確定時間t1thより小さい場合、CPUはステップ1170にて「No」と判定してステップ1190に進み、第2保舵タイマt1の値を「1」だけ増加させる。尚、この場合、第2保舵判定フラグXmnaの値は「1」のままであり、センサ無効判定フラグXmkoの値は「0」のままである。従って、CPUは第2保舵状態が生じていると判定している。その後、CPUはステップ1192に進み、CPUが判定している状態(即ち、Xhda=0且つXmna=1且つXmko=0により示される第2保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))が出力される。その後、CPUはステップ1195に進み、本ルーチンを一旦終了する。
これに対して、第2保舵タイマt1が予め設定されたセンサ無効確定時間t1th以上である場合、CPUはステップ1170にて「Yes」と判定してステップ1180に進み、第2保舵判定フラグXmnaの値を「0」に設定すると共に、センサ無効判定フラグXmkoの値を「1」に設定する。即ち、CPUは「センサ無効状態」が生じたと判定する。その後、CPUはステップ1192に進み、CPUが判定している状態(即ち、Xhda=0且つXmna=0且つXmko=1により示されるセンサ無効状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ1195に進み、本ルーチンを一旦終了する。
CPUがステップ1115の処理を実行する時点において、センサ無効判定フラグXmkoの値が「0」ではない場合(即ち、センサ無効判定フラグXmkoの値が「1」である場合)、CPUは、ステップ1115にて「No」と判定する。その後、CPUはステップ1192に進み、CPUが判定している状態(即ち、Xhda=0且つXmna=0且つXmko=1により示されるセンサ無効状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ1195に進み、本ルーチンを一旦終了する。
CPUがステップ1130の処理を実行する時点において、センサ微分値Dが閾値Dthd以下の値である場合、CPUはステップ1130にて「Yes」と判定してステップ1140に進み、第2保舵判定フラグXmnaの値を「0」に設定する。即ち、CPUは「手放し状態」が生じたと判定する。尚、このときセンサ無効判定フラグXmkoの値は「0」に設定されている。
その後、CPUは、ステップ1150に進み、RAMに記録された基準センサ値S0を、現時点のセンサ値Sに更新する。そして、更新された基準センサ値S0(更新後)に閾値変化量S_diffを加えた値(=S0+S_diff)が、更新された閾値Sth(更新後)として設定される。その後、CPUはステップ1160に進み、第2保舵タイマt1の値を「0」に設定する。その後、CPUはステップ1192に進み、CPUが判定している状態(即ち、Xhda=0且つXmna=0且つXmko=0により示される手放し状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、ステップ1195に進み、本ルーチンを一旦終了する。
CPUがステップ1120の処理を実行する時点において、第2保舵判定フラグXmnaの値が「1」ではない場合、CPUは、ステップ1120にて「No」と判定する。その後、CPUはステップ1195に進み、本ルーチンを一旦終了する。
第1変形装置によれば、第1装置と同様の効果を奏する。更に、第1変形装置によれば、次のような効果を更に奏する。
第1変形装置の保舵判定ECU30は、「第2保舵状態」が生じていると判定しているとき、センサ微分値Dが第1閾値微分値Dthd以下とならない限り、第2保舵状態が継続していると判定し、第1判定結果(保舵状態判定結果)を出力し続ける。しかし、「第2保舵状態」と判定している状態において、長い時間(例えば、1時間)以上にわたって、センサ微分値Dが第1閾値静電容量微分値(Dthd)以下とならない場合は極めて稀である。よって、そのような場合、静電容量センサ21が何等かの理由により静電容量を正しく検出していないと考えられ、その場合にも第2保舵状態が発生していると判定し続けることは妥当ではない。
そこで、第1変形装置の保舵判定ECU30は、「第2保舵状態」が生じていると判定している時間(第2保舵タイマt1により表される時間)が一定時間(センサ無効確定時間t1th)以上になると、「センサ無効状態」が生じたと判定し、且つ、第2判定結果(手放し状態判定結果を出力する。
その結果、例えば、第2判定結果(手放し状態判定結果)に基づいて運転者に注意喚起を行うシステム等に第1変形装置が利用される場合、「その注意喚起が本来は必要なときに当該注意喚起が長時間に渡って発生しない可能性」を低減することができる。
<第3実施形態>
次に、本発明の第3実施形態に係る把持状態検出装置(以下、「第3装置」と称呼される場合がある。)について説明する。第3装置は、以下の点のみにおいて第1装置と相違している。
(1)第3装置の保舵判定ECU30は、センサ値Sに基づいて、下記の「手放し状態」、「保舵状態」及び「センサ無効状態」が生じたか否かを繰り返し判定する。
・「手放し状態」:ステアリングホイール20が運転者によって把持されていないことが確実な状態
・「保舵状態」:ステアリングホイール20が運転者によって把持されていることが確実な状態
・「センサ無効状態」:ステアリングホール20が運転者によって把持されているか否かを特定することができない状態
(2)第3装置は、図12(A)及び図12(B)に示したように、保舵判定ECU30の状態が、その判定している状態が「保舵状態」である状態42’であるとき、センサ値Sが一点鎖線で示した温度補正閾値Sth(n)より小さい場合、「センサ無効状態」が生じたと判定する。即ち、第3装置は、状態42’から保舵判定ECU30の判定している状態が「センサ無効状態」である状態44に遷移する。第3装置は、図3に示したルーチンに代わる図13に示した保舵判定ルーチンと、図4に示したルーチンに代わる図14に示した手放し及びセンサ無効判定ルーチンとを行う。尚、図5に示したルーチンは行わない。
以下、この相違点を中心として説明する。
<具体的作動>
次に、CPUの具体的作動について説明する。CPUは、所定時間が経過する毎に図13に示した保舵判定ルーチン、及び、図14に示した手放し及びセンサ無効判定ルーチンのそれぞれを実行する。
保舵判定フラグXhdはその値が「1」の場合、「保舵状態」が生じているとCPUが判定していることを表す。この場合、CPUは第1判定結果(保舵状態判定結果)を出力する。センサ無効判定フラグXmkoは、その値が「1」の場合、「センサ無効状態」が生じているとCPUが判定していることを表す。この場合、CPUは「手放し状態」を表す第2判定結果(手放し状態判定結果)を出力する。保舵判定フラグXhd及びセンサ無効判定フラグXmkoが共にその値が「0」である場合、「手放し状態」が生じているとCPUが判定していることを表す。この場合、CPUは第1判定結果(保舵状態判定結果)を出力する。
イグニッション・キー・スイッチがオン位置にある場合、図13及び図14のルーチンが所定時間の経過毎に起動される。保舵判定フラグXhd及びセンサ無効判定フラグXmkoがイニシャライズ(Xhd=0、Xmko=0)されているため、保舵判定ECU30は、現時点の判定した状態が「手放し状態」である状態41になる。この場合、実質的には、保舵判定ルーチンが機能することになる。
以下、図13を参照しながら保舵判定ルーチンから説明する。CPUは、所定のタイミングになると、保舵判定ルーチンのステップ1300から処理を開始して、ステップ1310に進み、保舵判定フラグXhdの値及びセンサ無効判定フラグXmkoの値が共に「0」であるか否かを判定する。
保舵判定フラグXhdの値及びセンサ無効判定フラグXmkoの値が共に「0」である場合、CPUはステップ1310にて「Yes」と判定して、ステップ320に進み、ステップ320の処理を実行する。その後、CPUはステップ330に進み、センサ値Sが閾値Sth以上の値であるか否を判定する。
センサ値Sが閾値Sth以上の値である場合、CPUはステップ330にて「Yes」と判定してステップ1340に進み、保舵判定フラグの値を「1」に設定する。即ち、CPUは「保舵状態」が生じたと判定する。その後、CPUはステップ1355に進み、CPUが判定している状態(即ち、Xhd=1且つXmko=0により示される保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))を出力する。その後、CPUはステップ1395に進み、本ルーチンを一旦終了する。
これに対して、センサ値Sが閾値Sthより小さい値である場合、CPUはステップ330にて「No」と判定してステップ350に進み、ステップ350の処理を実行する。その後、CPUはステップ1355に進み、CPUが判定している状態(即ち、Xhd=0且つXmko=0により示される手放し状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ1395に進み、本ルーチンを一旦終了する。
尚、CPUがステップ1310の処理を実行する時点において、保舵判定フラグXhdの値及びセンサ無効判定フラグXmkoの値の少なくとも一方が「0」ではない場合、CPUはステップ1310にて「No」と判定してステップ1395に進み、本ルーチンを一旦終了する。
次に、図14を参照しながら手放し及びセンサ無効判定ルーチンについて説明する。CPUは所定のタイミングになると、手放し及びセンサ無効判定ルーチンのステップ1400から処理を開始して、ステップ1115に進み、センサ無効判定フラグXmkoの値が「0」であるか否かを判定する。
センサ無効判定フラグXmkoの値が「0」である場合、CPUはステップ1115にて「Yes」と判定してステップ1410に進み、保舵判定フラグXhdの値が「1」であるか否かを判定する。
保舵判定フラグXhdの値が「1」である場合、CPUはステップ1410にて「Yes」と判定して、ステップ420乃至ステップ450の処理を順に行う。
ステップ450の処理を実行する時点において、センサ値Sが閾値Sth以上の値であり、且つ、センサ微分値Dが第2閾値微分値Dthtより大きい値である場合、CPUはステップ450にて「Yes」と判定してステップ460に進む。ステップ460の処理を実行する時点において、センサ値Sが温度補正閾値Sth(n)より小さい値である場合、CPUはステップ460にて「Yes」と判定してステップ1420に進み、保舵判定フラグXhdの値を「0」に設定すると共に、センサ無効判定フラグXmkoの値を「1」に設定する。即ち、CPUは、センサ無効状態が生じたと判定する。その後、CPUはステップ1492に進み、CPUが判定している状態(即ち、Xhd=0且つXmko=1により示されるセンサ無効状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、ステップ1495に進み、本ルーチンを一旦終了する。
CPUがステップ1115の処理を実行する時点において、センサ無効判定フラグXmkoの値が「0」ではない場合(即ち、センサ無効判定フラグの値が「1」である場合)、CPUは、ステップ1115にて「No」と判定する。その後、CPUはステップ1492に進み、CPUが判定している状態(即ち、Xmko=1、Xhda=0により示されるセンサ無効状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ1195に進み、本ルーチンを一旦終了する。
ステップ450の処理を実行する時点において、センサ値Sが閾値Sthより小さい場合、及び、センサ微分値Dが第2閾値微分値Dtht以下である場合の少なくとも1つである場合、CPUはステップ450にて「No」と判定する。その後、CPUはステップ1480に進み、保舵判定フラグXhdの値を「0」に設定する。即ち、CPUは「手放し状態」が生じたと判定する。その後、CPUはステップ490の処理を実行した後、ステップ1492に進み、CPUが判定している状態(即ち、Xhd=0且つXmko=0により示される手放し状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ1495に進み、本ルーチンを一旦終了する。
更に、ステップ460の処理を実行する時点において、センサ値Sが温度補正閾値Sth(n)以上の値である場合、CPUはステップ460にて「No」と判定する。その後、CPUはステップ1492に進み、CPUが判定している状態(即ち、Xhd=1且つXmko=0により示される保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))を出力する。その後、CPUはステップ1495に進み、本ルーチンを一旦終了する。
尚、ステップ1410の処理を実行する時点において、保舵判定フラグXhdの値が「0」ではない場合、CPUはステップ1410にて「No」と判定してステップ1495に進み、本ルーチンを一旦終了する。
第3装置によれば、ステアリングホイール20が運転者によって把持されているか否かを特定することができない期間(センサ値Sが温度補正閾値Sth(n)より小さい場合)が、「センサ無効状態」が生じていると判定される。更に、「センサ無効状態」と判定された場合、第2判定結果(手放し状態判定結果)が出力される。
これにより、この期間(センサ無効状態と判定されている状態)以外においてステアリングホイール20に対する運転者の把持状態が誤って判定される可能性を回避することができる。更に、この期間において、「ステアリングホイール20が運転者によって把持されていない状態」であるのに、第2判定結果が出力されなくなる可能性を回避することができる。
<第4実施形態>
次に、本発明の第4実施形態に係る把持状態検出装置(以下、「第4装置」と称呼される場合がある。)について説明する。第4装置は、以下の点のみにおいて第2装置と相違している。
(1)第4装置の保舵判定ECU30は、センサ値Sに基づいて、下記の「手放し状態」、「保舵状態」及び「センサ無効状態」が生じたか否かを繰り返し判定する。
・「手放し状態」:ステアリングホイール20が運転者によって把持されていないことが確実な状態
・「保舵状態」:ステアリングホイール20が運転者によって把持されていることが確実な状態
・「センサ無効状態」:ステアリングホールが前記運転者によって把持されているか否かを特定することができない状態
(2)第4装置は、図15(A)及び(B)に示したように、保舵判定ECU30の状態が、その判定している状態が「保舵状態」である状態42’であるとき、「S−Sm」の値が閾値変化量S_diff以上である場合、「センサ無効状態」が生じたと判定する。即ち、第4装置は、状態42’から判定している状態が「センサ無効状態」である状態44に遷移する。第4装置は、図7に示したルーチンに代わる図16に示した保舵判定ルーチンと、図8に示したルーチンに代わる図17に示した手放し及びセンサ無効判定ルーチンのそれぞれを実行する。尚、図5に示したルーチンと同一のルーチンは行わない。
<具体的作動>
次に、CPUの具体的作動について説明する。CPUは、所定時間が経過する毎に図16に示した保舵判定ルーチン、及び、図17に示した手放し及びセンサ無効判定ルーチンのそれぞれを実行する。
イグニッション・キー・スイッチがオン位置にある場合、図16及び図17のルーチンが所定時間の経過毎に起動される。保舵判定フラグXhd及びセンサ無効判定フラグXmkoがイニシャライズ(Xhd=0、Xmko=0)されているため、保舵判定ECU30は、現時点の判定している状態が「手放し状態」である状態41になる。この場合、実質的には、保舵判定ルーチンが機能することになる。
以下、図16を参照しながら保舵判定ルーチンから説明する。CPUは、所定のタイミングになると、保舵判定ルーチンのステップ1600から処理を開始して、ステップ1610に進み、保舵判定フラグXhdの値及びセンサ無効判定フラグXmkoの値が共に「0」であるか否かを判定する。
保舵判定フラグXhdの値及びセンサ無効判定フラグXmkoの値が共に「0」である場合、CPUはステップ1610にて「Yes」と判定して、ステップ320に進み、ステップ320の処理を実行する。その後、CPUはステップ330に進み、センサ値Sが閾値Sth以上の値であるか否を判定する。
センサ値Sが閾値Sth以上の値である場合、CPUはステップ330にて「Yes」と判定してステップ1640に進み、保舵判定フラグの値を「1」に設定する。即ち、CPUは「保舵状態」が生じたと判定する。その後、CPUはステップ710に進み、ステップ710の処理を実行する。その後、CPUはステップ1655に進み、CPUが判定している状態(即ち、Xhd=1且つXmko=0により示される保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))を出力する。その後、CPUはステップ1695に進み、本ルーチンを一旦終了する。
これに対して、センサ値Sが閾値Sthより小さい値である場合、CPUはステップ330にて「No」と判定してステップ350に進み、ステップ350の処理を実行する。その後、CPUはステップ1655に進み、CPUが判定している状態(即ち、Xhd=0且つXmko=0により示される手放し状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ1695に進み、本ルーチンを一旦終了する。
尚、CPUがステップ1610の処理を実行する時点において、保舵判定フラグXhdの値及びセンサ無効判定フラグXmkoの値の少なくとも一方が「0」ではない場合、CPUはステップ1610にて「No」と判定してステップ1695に進み、本ルーチンを一旦終了する。
次に、図17を参照しながら手放し及びセンサ無効判定ルーチンについて説明する。CPUは所定のタイミングになると、手放し及びセンサ無効判定ルーチンのステップ1700から処理を開始して、ステップ1115に進み、センサ無効判定フラグXmkoの値が「0」であるか否かを判定する。
センサ無効判定フラグXmkoの値が「0」である場合、CPUはステップ1115にて「Yes」と判定してステップ1710に進み、保舵判定フラグXhdの値が「1」であるか否かを判定する。
保舵判定フラグXhdの値が「1」である場合、CPUはステップ1710にて「Yes」と判定して、ステップ420及びステップ450の処理を順に行う。
ステップ450の処理を実行する時点において、センサ値Sが閾値Sth以上の値であり、且つ、センサ微分値Dが第2閾値微分値Dthtより大きい値である場合、CPUはステップ450にて「Yes」と判定してステップ810に進む。ステップ810の処理を実行する時点において、「S−Sm」の値が閾値変化量S_diffより小さい場合、CPUはステップ810にて「Yes」と判定してステップ1720に進み、保舵判定フラグXhdの値を「0」に設定すると共に、センサ無効判定フラグXmkoの値を「1」に設定する。即ち、CPUは、「センサ無効状態」が生じたと判定する。その後、CPUはステップ1792に進み、CPUが判定している状態(即ち、Xhd=0且つXmko=1により示されるセンサ無効状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、ステップ1795に進み、本ルーチンを一旦終了する
CPUがステップ1115の処理を実行する時点において、センサ無効判定フラグXmkoの値が「0」ではない場合(即ち、センサ無効判定フラグの値が「1」である場合)、CPUは、ステップ1115にて「No」と判定する。その後、CPUはステップ1492に進み、CPUが判定している状態(即ち、Xmko=1、Xhda=0により示されるセンサ無効状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ1195に進み、本ルーチンを一旦終了する。
ステップ450の処理を実行する時点において、センサ値Sが閾値Sthより小さい場合、及び、センサ微分値Dが第2閾値微分値Dtht以下である場合の少なくとも1つである場合、CPUはステップ450にて「No」と判定する。その後、CPUはステップ1780に進み、保舵判定フラグXhdの値を「0」に設定する。即ち、CPUは「手放し状態」が生じたと判定する。その後、CPUはステップ490の処理を実行した後、ステップ1792に進み、CPUが判定している状態(即ち、Xhd=0且つXmko=0により示される手放し状態)に応じた判定結果(第2判定結果(手放し状態判定結果))を出力する。その後、CPUはステップ1795に進み、本ルーチンを一旦終了する。
更に、ステップ810の処理を実行する時点において、差分「S−Sm」の値が温度補正閾値Smth以下である場合、CPUはステップ810にて「No」と判定する。その後、CPUはステップ1792に進み、CPUが判定している状態(即ち、Xhd=1且つXmko=0により示される保舵状態)に応じた判定結果(第1判定結果(保舵状態判定結果))を出力する。その後、CPUはステップ1795に進み、本ルーチンを一旦終了する。
尚、ステップ1710の処理を実行する時点において、保舵判定フラグXhdの値が「0」ではない場合、CPUはステップ1710にて「No」と判定してステップ1795に進み、本ルーチンを一旦終了する。
第4装置によれば、ステアリングホイール20が運転者によって把持されているか否かを特定することができない期間(「S−Sm」の値が閾値変化量S_diff以上である場合)が、「センサ無効状態」が生じたと判定される。更に、「センサ無効状態」と判定された場合、第2判定結果(手放し状態判定結果)が出力される。
これにより、この期間(センサ無効状態と判定されている状態)以外においてステアリングホイール20に対する運転者の把持状態が誤って判定される可能性を低くすることができる。更に、この期間において、「ステアリングホイール20が運転者によって把持されていない状態」であるのに、第2判定結果が出力されなくなる可能性を回避することができる。
<変形例>
以上、本発明の実施形態について具体的に説明したが、本発明は、上述の実施形態に限定されず、本発明の技術的思想に基づく各種の変形例を採用し得る。
例えば、第1装置及び第2装置のそれぞれにおいて、保舵判定ECU30は、まず車両10が温度センサ25を備えているか否かの判定を行ってもよい。この場合、保舵判定ECU30が「車両10が温度センサ25を備えている」と判定した場合に第1装置として機能して把持状態の検出を行い、保舵判定ECU30が「車両10が温度センサ25を備えていない」と判定すると、第2装置として機能して把持状態の検出を行うように構成され得る。
更に、保舵判定ECU30は、図4及び図14のステップ430及びステップ440の処理に代えて、温度センサ25から取得した温度tempに基づいて直接的に温度補正閾値Sth(n)を算出してもよい。更に、上記各実施形態の装置は、手放し警告の代わりに、運転者の状態を監視する装置に適用されてもよい。