以下、本開示の複数の実施形態を図面に基づいて説明する。尚、各実施形態において対応する構成要素には同一の符号を付すことにより、重複する説明を省略する場合がある。各実施形態において構成の一部分のみを説明している場合、当該構成の他の部分については、先行して説明した他の実施形例の構成を適用することができる。また、各実施形態の説明において明示している構成の組み合わせばかりではなく、特に組み合わせに支障が生じなければ、明示していなくても複数の実施形態の構成同士を部分的に組み合わせることができる。そして、複数の実施形態及び変形例に記述された構成同士の明示されていない組み合わせも、以下の説明によって開示されているものとする。
(第1実施形態)
図1に基づいて、電子制御装置20が適用される電子制御システム10について説明する。電子制御システム10は、ATトランスミッション11、センサ12、および電子制御装置20を備えている。電子制御装置20は、車両に備えられたセンサ12から得られる値に基づいて、ATトランスミッション11の制御を行っている。図1にて、電子制御装置20は、ATトランスミッション11を制御しているが上記に限定するわけではなく、車両のブレーキ、エンジン等の他の動作を制御してもよい。
図1および図2に示すように、電子制御装置20は、第1CPU21、第2CPU22、ROM23、RAM24およびAD変換器27を有している。さらに、電子制御装置20は、第1要求部25、第2要求部26、送信部28の機能を有している。
第1要求部25の機能は、例えば第1タイマ25aと第1割込みコントローラ25bによって達成される。第1タイマ25aは、周期的に第1割込みコントローラ25bに対して信号を出力する。信号を受信した第1割込みコントローラ25bは、第1CPU21に各機能の実行の要求を送信する。第2要求部26の機能は、例えば第2タイマ26aおよび第2割込みコントローラ26bによって達成される。第1要求部25と同様に第2要求部26は、第2タイマ26aと第2割込みコントローラ26bにより、第2CPU22に各機能の実行の要求を送信する。送信部28の機能は、第3タイマ28aおよび第3割込みコントローラ28bによって達成される。第1要求部25と同様に送信部28は、第3タイマ28aと第3割込みコントローラ28bにより、第1CPU21に各機能の実行の要求を送信する。
第1割込みコントローラ25b、第2割込みコントローラ26bおよび第3割込みコントローラ28bは、それぞれ別々のものである。上記構成により、電子制御装置20は、例えば第1割込みコントローラ25bが故障したとしても、第2割込みコントローラ26bが起動していれば、第2割込みコントローラ26bが第2CPU22に各機能の実行の要求を送信できる。同様に、電子制御装置20は、第3割込みコントローラ28bが起動していれば、第3割込みコントローラ28bから第1CPU21に各機能の実行要求を送信できる。よって、電子制御装置20は、第1要求部25、第2要求部26および送信部28全てがCPUに各機能の実行の要求を送信できなくなることを抑制できる。
第1CPU21、第2CPU22、ROM23、RAM24およびAD変換器27は、同一のマイコンに搭載されている。さらに、第1タイマ25a、第2タイマ26a、第3タイマ28a、第1割込みコントローラ25b、第2割込みコントローラ26bおよび第3割込みコントローラ28bは、同一の上記マイコンに搭載されている。しかし、上記構成に限定するものではなく、第1タイマ25a、第2タイマ26a、第3タイマ28a、第1割込みコントローラ25b、第2割込みコントローラ26bおよび第3割込みコントローラ28bは、別のマイコン上に配置される構成であってもよい。
第1CPU21は、ROM23に保存されているプログラムを読み出して各機能を実行する。第1CPU21が実行する機能は、後ほど説明する制御部21a、第1監視部21b、第2監視部21cである。第2CPU22は、ROM23に保存されているプログラムを読み出して各機能を実行する。第2CPU22が実行する機能は、後ほど説明する第3監視部22a、第4監視部22bである。
RAM24は、第1CPU21および第2CPU22が各機能を実行することによって得られたデータが、一時的に保存される。AD変換器27は、第1CPU21または第2CPU22からAD変換要求を受信する。AD変換器27は、AD変換要求を受信した場合、センサ12から得られる値を変換しAD変換値を生成する。AD変換器27は、AD変換要求を送信したCPUにAD変換値を出力する。センサ12で得られる値は、例えばエンジン冷却水の温度、検出用抵抗で検出される電流値および電圧値の情報である。センサ12での検出については、後ほど詳細に説明する。
電子制御装置20は、第1CPU21により、図1に示す制御部21a、第1監視部21bおよび第2監視部21cの機能を実行可能である。本開示では、第1CPU21が制御部21aを監視する機能と、第2CPU22が制御部21aを監視する機能を区別するため、前者を第1監視部21b、後者を第3監視部22aと記載する。第3監視部22aは、請求項に記載している第1監視部に相当する。第1監視部21bと第3監視部22aによる制御部21aの監視方法は、同一であっても、異なっていてもよい。
電子制御装置20は、第2CPU22により第3監視部22aおよび第4監視部22bの機能を実行可能である。本開示では、第1CPU21がAD変換器27を監視する機能と、第2CPU22がAD変換器27を監視する機能を区別するため、前者を第2監視部21c、後者を第4監視部22bと記載する。第4監視部22bは、請求項に記載している第2監視部に相当する。なお、図1に開示している、レベルおよびASILについては、後ほど詳細に説明する。
第1CPU21は、AD変換器27から出力されたAD変換値を用いて、ATトランスミッション11の制御を行う(制御部21a)。第1CPU21は、第1割込みコントローラ25bから実行の要求としての制御監視要求を受信した場合、AD変換値に基づいて、ATトランスミッション11への制御を正しく行えているか否かを監視する(第1監視部21b)。第1監視部21bでの監視については、後ほど詳細に説明する。
第1CPU21は、第1割込みコントローラ25bから実行の要求としてのAD監視要求を受信した場合、テストデータとテストデータをAD変換する要求をAD変換器27に送信する。RAM24には、テストデータをAD変換した場合に出力されるはずの値の範囲を示した変換正常データが、予め保存されている。第1CPU21は、AD変換器27からAD変換されて出力されてきたテスト変換結果が、変換正常データの範囲内に該当するか否かを判断する(第2監視部21c)。
第1CPU21は、テスト変換結果が変換データの範囲内に該当する場合、AD変換器27が正常に動作していると判断する。第1CPU21は、テスト変換結果が変換正常データの範囲内に該当しない場合、AD変換器27が正常に動作していないと判断する。
ここから、第2CPU22の動作について説明するが、基本的な動作は、第1CPU21と同様であるため、詳細な説明は省略する。第2CPU22は、第2タイマ26aから制御監視要求を受信した場合、AD変換値に基づいて、第1CPU21がATトランスミッション11への制御を正しく行えているか否かを監視する(第3監視部22a)。第2CPU22は、第2タイマ26aからAD監視要求を受信した場合、テストデータとテストデータをAD変換する要求をAD変換器27に送信する。第2CPU22は、テスト変換結果と変換正常データを比較し、テスト変換結果が変換正常データの範囲内に該当する場合は、AD変換器27が正常に動作していると判断する(第4監視部22b)。第2CPU22は、テスト変換結果が変換正常データの範囲内に該当しない場合は、AD変換器27が正常に動作していないと判断する。
第1CPU21および第2CPU22での判断は、上記に限定するわけではなく、テスト変換結果が変換正常データと一致するか否かで、AD変換器27が正常に動作しているか否かを判断しても良い。その場合、変換正常データは、値の範囲を示すデータではなく、所定値を示すデータである。第1CPU21は、テスト結果が変換正常データと一致する場合、AD変換器27が正常に動作していると判断する。第1CPU21は、テスト結果が変換正常データと一致しない場合、AD変換器27が正常に動作していないと判断する。
図2に示すように、第1割込みコントローラ25bは、AD変換器27を介さずに第1CPU21に、制御監視要求およびAD監視要求を送信している。第2割込みコントローラ26bは、AD変換器27を介さずに第2CPU22に、制御監視要求およびAD監視要求を送信している。
第3割込みコントローラ28bは、AD変換器27を介して、ATトランスミッション11の制御の開始を要求する開始要求を第1CPU21に送信する(送信部28)。つまり、第3割込みコントローラ28bは、AD変換器27にAD変換要求を送信する。AD変換器27は、第3割込みコントローラ28bからAD変換要求を受信した場合、センサ12から得られる値をAD変換する。AD変換器27は、AD変換値と開始要求を第1CPU21に送信する。AD変換器27がAD変換値と開始要求を送信する順番は、どちらが先であってもよい。また、AD変換器27がAD変換値と開始要求を送信する順番は、同一であってもよい。上記構成では、AD変換器27が、第1CPU21に開始要求を送信しているが、第3割込みコントローラ28bが、AD変換器27を介さずに、第1CPU21に開始要求を送信する構成であってもよい。
ここで図3から図8に基づいて、電子制御装置20の動作について説明する。まず、図3に基づいて、第1CPU21の動作について説明する。第1CPU21は、第1割込みコントローラ25bから、制御監視要求およびAD監視要求を受信した場合に図3の動作を開始する。S11からS13が、第2監視部21cの機能に該当する。S14からS16が、第1監視部21bの機能に該当する。
S11では、第1CPU21は、第2監視部21cのAD監視プログラムを起動する。つまり、第1CPU21は、ROM23に保存されているAD監視プログラムを読み出す。本開示において、AD監視プログラムは、第1CPU21が、AD変換器27が正常に動作しているか否かを監視する機能を実行するためのプログラムである。
S12では、第1CPU21は、テスト変換要求を送信する。つまり、第1CPU21は、AD変換器27に対して、テストデータと共にテストデータをAD変換する要求であるテスト変換要求を送信する。
S13では、第1CPU21は、テスト変換結果が変換正常データの範囲内であるか否かを判断する。つまり、第1CPU21は、AD変換器27からテスト変換結果を受信する。第1CPU21は、テスト変換結果と変換正常データを比較して、テスト変換結果が変換正常データの範囲内に該当する場合、AD変換器27が正常に動作していると判断しS14へ移行する。第1CPU21は、テスト変換結果が正常変換データの範囲内に該当しない場合は、AD変換器27が正常に動作していないと判断しS19へ移行する。
S14では、第1CPU21は、第1監視部21bの制御監視プログラムを起動する。つまり、第1CPU21は、ROM23に保存されている制御監視プログラムを読み出す。本開示において、制御監視プログラムは、第1CPU21が、制御部21aが正しく動作しているか否かを監視する機能を実行するためのプログラムである。
S15では、第1CPU21は、AD変換要求を送信する。つまり、第1CPU21は、AD変換器27にAD変換要求を送信する。AD変換器27は、第1CPU21からAD変換要求を受信する。AD変換器27は、センサ12から得られる値をAD変換し、AD変換値を第1CPU21に出力する。
S16では、第1CPU21は、AD変換値が正常であるか否かを判断する。つまり、第1CPU21は、AD変換値を、AD変換器27から受信する。第1CPU21は、AD変換値が正常であるか否かを判断する。第1CPU21は、AD変換値が正常である場合、制御部21aが正常に動作していると判断し、S17に移行する。第1CPU21は、AD変換値が正常でない場合、制御部21aが正常に動作していないと判断し、S18に移行する。
ここで、S16の具体例について説明する。例えば、AD変換値は、ATトランスミッション11における、各変速を制御するソレノイドに接続されている抵抗に流れる電流値である。センサ12は、ソレノイドに電気的に接続されている抵抗に流れる電流値を第1CPU21に送信する。RAM24は、ソレノイドがonになっている際の電流値の範囲を示す電流データが、保存されている。よって、第1CPU21は、センサ12から得られた電流値と電流データを比較して、電流値が電流データの範囲内に該当する場合、ソレノイドがonであると判断する。第1CPU21は、電流値が電流データの範囲内に該当しない場合、ソレノイドがoffであると判断する。
図7は、第1タイマ25aがn回目の周期において信号を送信した際、第1CPU21が得た、ATトランスミッション11の各変速ギアに対応するソレノイドのonまたはoffのデータの1例を示している。詳細に説明すると、第1タイマ25aは、上記のように周期的に信号を第1割込みコントローラ25bに送信している。ある周期(n回目)に第1タイマ25aが送信した信号に基づいて、第1割込みコントローラ25bから制御監視要求が送信される。さらに、n回目の制御監視要求に基づいて、第1CPU21は、AD変換要求を送信する。そして、AD変換要求を受信したAD変換器27は、AD変換値を出力する。図7は、上記のAD変換値に基づいて、第1CPU21が、ソレノイドのonまたはoffのデータをまとめた1例を示している。
図8は、第1割込みコントローラ25bからn+1回目の周期に送信された制御監視要求により、AD変換器27から送信されたAD変換値に基づいて、第1CPU21がソレノイドのonまたはoffのデータをまとめた1例を示している。
第1CPU21は、n+1回目の各変速のソレノイドのonまたはoff(図8)が、n回目のonまたはoffを示すデータ(図7)と比較して急激に変化している場合、制御部21aによるATトランスミッション11の制御が正常ではないと判断する。図7、図8の場合第1CPU21は、n回目で1速から5速までソレノイドがonだった状況から、n+1回目で1速のみソレノイドがonの状況に変化していることから、急激な変化が生じていると判断する。つまり、制御部21aがATトランスミッション11に対して行っている制御により、ソレノイドのonまたはoffが、急激に変化したことを意味する。よって、第1CPU21は、AD変換値が正常でない、つまり制御部21aが正常に動作していないと判断し、S18に移行する。
上記の例に限定するわけではなく、第1CPU21は、電流値が電流データと一致するか否かで、ソレノイドがonまたはoffであるかを判断してもよい。その場合、電流データは、値の範囲を示すデータではなく、所定の値を示すデータである。第1CPU21は、電流値が電流データと一致する場合、ソレノイドがonであると判断する。第1CPU21は、電流値が電流データと一致しない場合、ソレノイドがoffであると判断する。
S17では、第1CPU21は、正常フラグをセットする。つまり、第1CPU21は、AD変換器27および制御部21aが正常に動作していることを意味する正常フラグをセットする。そして、第1CPU21は、図3に示す動作を終了する。第1CPU21は、開始要求を受信した場合、正常フラグがセットされているか否かを確認する。第1CPU21は、正常フラグがセットされていることを確認した場合、ATトランスミッション11の制御を開始する。
S17での第1CPU21の動作は、上記に限定されるものではなく、AD変換器27および制御部21aが正常に動作していることを意味するものであれば、フラグ以外の別のものをセットしてもよい。
S18では、電子制御装置20は、制御部21aのフェールセーフ処理を実行する。つまり、第1CPU21は、ATトランスミッション11に対して行っている制御をフェールセーフ処理に変更する。例えば、S16で、第1CPU21は、上記のように図7、図8に基づいてAD変換値が正常でないと判断した場合のフェールセーフ処理を説明する。その場合、第1CPU21は、ATトランスミッション11に対し、車両の速度の急激な変化を防止するため、1速からN(ニュートラル)にソレノイドのon、offを変更する。これにより、電子制御装置20は、5速から1速に変更したまま、走行する場合と比較し、5速からNに変更することで、車両速度の急激な変化を抑制できる。
S19では、電子制御装置20は、AD変換器フェールセーフ処理を実行する。つまり、第1CPU21は、S13でAD変換器27の動作が正常でないと判断した場合、AD変換器27からの出力に基づいて制御を行っている個所に対し、フェールセーフ処理を実行する。例えば、電子制御装置20は、制御部21aによるATトランスミッション11の制御を停止する。そして、電子制御装置20は、第1CPU21によりATトランスミッション11の各ソレノイドのonまたはoffをNに変更する。
上記に反し、正常でないAD変換器27から出力されるAD変換値に基づいて、第1CPU21がATトランスミッション11の制御を続けた場合、各ソレノイドのonまたはoffを誤った制御をする虞がある。その場合、例えば、第1CPU21は、正常でないAD変換器27から送信されたAD変換値に基づいて、変速を5速から1速に変更する制御を行った結果、車両速度が急激に変化する虞がある。一方で、本実施形態の第1CPU21は、フェールセーフ処理として変速をNに変更しているため、車両の誤作動を抑制できる。
ここで図4に基づいて、第2CPU22の動作について説明する。第2CPU22は、制御監視要求およびAD監視要求を受信した場合に図4の動作を開始する。図4に示す、第2CPU22の動作は、図3に示す第1CPU21の動作と同様な動作である。S21は、S11に相当しており、他のステップについても同様にS2XとS1Xが相当している(Xは1から9の数字)。各ステップにおいて、図3の第1監視部21bは、図4における第3監視部22aに相当する。図3の第2監視部21cは、図4における第4監視部22bに相当する。
次に図5に基づいて、第3割込みコントローラ28bが、AD変換器27に、AD変換要求を送信した際のAD変換器27および第1CPU21の動作について説明する。t1にて、第3割込みコントローラ28bは、AD変換器27にAD変換要求を送信する。AD変換器27は、AD変換要求を受信した場合、AD変換値を生成する(AD変換実施)。AD変換器27は、AD変換実施が完了したタイミングt2で、AD変換値および開始要求を第1CPU21に出力する。第1CPU21は、開始要求を受信したタイミングで制御プログラムを起動し、AD変換値に基づいて、ATトランスミッション11の制御を行う(制御実施)。
つまり、第1CPU21は、ROM23に保存されている制御プログラムを読み出す。そして、第1CPU21は、t2で出力されたAD変換値に基づいてATトランスミッション11の制御を行う。本開示にて、制御プログラムは、第1CPU21がATトランスミッション11を制御する機能を実行するためのプログラムである。t3は、第3タイマ28aが再びAD変換器27にAD変換要求を送信するタイミングを示している。AD変換器27および第1CPU21は、t3から、t1-t3間で行われていた動作を再び行う。
電子制御装置20は、車両を電子制御する際の安全性確保を目的としている、車両向け機能安全性規格であるISO26262の規定が適用される車両に対して、搭載することができる。
ISO26262は、電子制御されるシステムの機能が故障したときの危険な事象(ハザード)から、各システムを、危険レベル、発生頻度、制御可能性(回避の難易度)の3つのパラメータによる指標を用いてランク付けする。そのランクは、ASIL(Automotive Safety Integrity Level)と呼ばれる。ASILは、危険度の低いほうから順に、QM(Quality Manegement)、A、B、C、Dの5つのランクを定めている。システムの設計者は、システムがどのランクに相当するかを決定し、その決定したランクに応じた安全対策を施す必要がある。
例えば、あるシステムは、ASILが「C」にランク付けされた場合、そのシステムを電子制御する電子制御装置を3つのレベルに分け、上位のレベルの動作を下位のレベルで監視する構成を採用することが考えられる。その場合、第1のレベルは、システムの制御を行う。第2のレベルは、第1のレベルが正常通り動作しているか確認する。第3のレベルは、第2のレベルが正常通り動作しているかを確認する。
さらに、ISO26262におけるデコンポジションの概念について説明する。デコンポジションの概念は、高次の安全水準基準を、複数の低次の安全水準に分解する。例えば、ASIL-Dは、ASIL-CとASIL-Aに分解することができる。ただし、デコンポジションは、分解後のエレメントの独立性を確保することが求められる。上記の例の場合、ASIL-CとASIL-Aは、互いに独立している必要がある。
電子制御システム10は、ASIL-Dの安全水準が適用される場合、ASIL-CとASIL-Aに分解して安全要求を満たす。第1監視部21bは、分解後のASIL-Cとして、制御部21aが正常に動作しているか否かを監視する。第3監視部22aは、分解後のASIL-Aとして、制御部21aが正常に動作しているか否かを監視する。
さらに、電子制御装置20は、上位のレベルの動作を下位のレベルで監視する構成を採用している。第1のレベルとして、制御部21aは、ATトランスミッション11を制御している。第2のレベルとして、第1監視部21bおよび第3監視部22aは、制御部21aが正常に動作しているか否かを監視する。第3のレベルとして、第2監視部21cおよび第4監視部22bは、第1監視部21bが正常に動作しているか否かを監視する。
ここから、電子制御装置20の効果について説明する。第1要求部25は、AD変換器27を介さずに第1監視部21bに制御監視要求を送信している。よって、電子制御装置20は、AD変換器27が故障した場合でも、第1要求部25が正常に動作していれば、第1要求部25から第1監視部21bに制御監視要求を送信することができる。したがって、AD変換器27が故障した場合でも、第1監視部21bは、制御部21aが正常に動作しているか否かを確認できなくなることを抑制できる。
また、第1要求部25は、AD変換器27を介さずに第2監視部21cにAD監視要求を送信している。よって、電子制御装置20は、AD変換器27が故障した場合でも、第1要求部25が正常に動作していれば、第1要求部25から第2監視部21cにAD監視要求を送信することができる。したがって、AD変換器27が故障した場合でも、第2監視部21cは、AD変換器27が正常に動作しているか否かを確認できなくなることを抑制できる。
第2要求部26は、AD変換器27を介さずに第3監視部22aに制御監視要求を送信している。よって、電子制御装置20は、AD変換器27が故障した場合でも、第2要求部26が正常に動作していれば、第2要求部26から第3監視部22aに制御監視要求を送信することができる。したがって、AD変換器27が故障した場合でも、第3監視部22aは、制御部21aが正常に動作しているか否かを確認できなくなることを抑制できる。
また、第2要求部26は、AD変換器27を介さずに第4監視部22bにAD監視要求を送信している。よって、電子制御装置20は、AD変換器27が故障した場合でも、第2要求部26が正常に動作していれば、第2要求部26から第4監視部22bにAD監視要求を送信することができる。したがって、AD変換器27が故障した場合でも、第4監視部22bは、AD変換器27が正常に動作しているか否かを確認できなくなることを抑制できる。
電子制御装置20は、第1要求部25および第2要求部26とは別体で、送信部28を有している。電子制御装置20は、第1要求部25または第2要求部26が故障した場合でも、送信部28が制御部21aに開始要求を送信することができる。
第1要求部25は、第1タイマ25aおよび第1割込みコントローラ25bによって構成される。一方で、本実施形態の構成に反して、第1要求部25が、第1CPU21とは別のCPUが採用される場合が考えられる。その場合、電子制御装置20が、大型化する虞がある。電子制御装置20は、第1要求部25が第1タイマ25aおよび第1割込みコントローラ25bによって構成される簡易な構成であるため、第1CPU21に搭載可能である。したがって、上記構成は、電子制御装置20が大型化することを抑制できる。
電子制御装置20は、S13の完了後に制御部21aでATトランスミッション11の制御を行っている。電子制御装置20は、AD変換器27が正常に動作しているか確認した後に、制御部21aによるATトランスミッション11の制御を行っている。電子制御装置20は、S13でAD変換器27が正常に動作していないと判断した場合、S19へ移行しフェールセーフ処理を行う。よって、電子制御装置20は、S13で正常に動作していると確認できたAD変換器27から送信されるAD変換値に基づいて、制御部21aがATトランスミッション11の制御を行う。したがって、電子制御装置20は、AD変換器27が故障し、誤ったAD変換値を制御部21aが受信し、ATトランスミッション11を制御することを抑制できる。
ここで、本実施形態に対する比較例について説明する。比較例の構成は、基本的に本実施形態と同一の構成であるため、本実施形態と同一の符号を付与して説明する。図6に示す比較例では、第3割込みコントローラ28bは、t1にて、第1CPU21に開始要求を送信する。第1CPU21は、開始要求を受信した場合、制御プログラムを起動する(PRG起動)。第1CPU21は、制御プログラムの起動が完了したタイミングt2で、AD変換要求をAD変換器27に送信する。AD変換器27は、AD変換要求を受信した場合に、AD変換値を生成する。第1CPU21は、t2でAD変換要求送信した後、一定時間内にAD変換器27からAD変換値が返ってこない場合、前の周期でAD変換器27が出力したAD変換値に基づいてATトランスミッション11の制御を行う。第1CPU21は、一定時間内にAD変換値が返ってきた場合、返ってきたAD変換値に基づいて、ATトランスミッション11の制御を行う。図6は、t2から一定時間内にAD変換値が返ってこなかった場合の、第1CPU21の動作を示している。図6のAD変換器27および第1CPU21は、t3から、t1-t3間で行われていた動作を再び行う。
電子制御装置20は、AD変換器27から、AD変換値および開始要求を制御部21aに出力する。よって、電子制御装置20は、制御部21aが開始要求を受信した際に、AD変換器27でt2つまり直前に変換されたAD変換値に基づいて、ATトランスミッション11の制御を行うことができる。したがって、電子制御装置20は、ATトランスミッション11の制御のリアルタイム性を向上させることができる。
一方で比較例の制御部21aは、ATトランスミッション11の制御を行う際、t2でAD変換器に送信したAD変換要求の結果が返ってきていない場合、前の周期でAD変換器27が出力したAD変換値に基づいてATトランスミッション11を制御する。その場合、比較例の電子制御装置20は、td以上の時差のあるAD変換値に基づいて、ATトランスミッション11の制御を行うことになる。したがって、比較例の電子制御装置20は、本実施形態の電子制御装置20よりもATトランスミッション11の制御のリアルタイム性が損なわれる虞がある。
上記電子制御装置20は、デコンポジションによる分解後のASIL-CとASIL-Aが、それぞれ第1CPU21、第2CPU22によって構成される。したがって、電子制御装置20は、デコンポジションによる分解後のエレメント同士の独立性を確保することができる。
この明細書における制御装置は、電子制御装置(ECU:Electronic Control Unit)とも呼ばれる場合がある。制御装置、または制御システムは、(a)if-then-else形式と呼ばれる複数の論理としてのアルゴリズム、または(b)機械学習によってチューニングされた学習済みモデル、例えばニューラルネットワークとしてのアルゴリズムによって提供される。
制御装置は、少なくともひとつのコンピュータを含む制御システムによって提供される。制御システムは、データ通信装置によってリンクされた複数のコンピュータを含む場合がある。コンピュータは、ハードウェアである少なくともひとつのプロセッサ(ハードウェアプロセッサ)を含む。ハードウェアプロセッサは、下記(i)、(ii)、または(iii)により提供することができる。
(i)ハードウェアプロセッサは、少なくともひとつのメモリに格納されたプログラムを実行する少なくともひとつのプロセッサコアである場合がある。この場合、コンピュータは、少なくともひとつのメモリと、少なくともひとつのプロセッサコアとによって提供される。プロセッサコアは、CPU:Central Processing Unit、GPU:Graphics Processing Unit、RISC-CPUなどと呼ばれる。メモリは、記憶媒体とも呼ばれる。メモリは、プロセッサによって読み取り可能な「プログラムおよび/またはデータ」を非一時的に格納する非遷移的かつ実体的な記憶媒体である。記憶媒体は、半導体メモリ、磁気ディスク、または光学ディスクなどによって提供される。プログラムは、それ単体で、またはプログラムが格納された記憶媒体として流通する場合がある。
(ii)ハードウェアプロセッサは、ハードウェア論理回路である場合がある。この場合、コンピュータは、プログラムされた多数の論理ユニット(ゲート回路)を含むデジタル回路によって提供される。デジタル回路は、ロジック回路アレイ、例えば、ASIC:Application-Specific Integrated Circuit、FPGA:Field Programmable Gate Array、SoC:System on a Chip、PGA:Programmable Gate Array、CPLD:Complex Programmable Logic Deviceなどとも呼ばれる。デジタル回路は、プログラムおよび/またはデータを格納したメモリを備える場合がある。コンピュータは、アナログ回路によって提供される場合がある。コンピュータは、デジタル回路とアナログ回路との組み合わせによって提供される場合がある。
(iii)ハードウェアプロセッサは、上記(i)と上記(ii)との組み合わせである場合がある。(i)と(ii)とは、異なるチップの上、または共通のチップの上に配置される。これらの場合、(ii)の部分は、アクセラレータとも呼ばれる。
制御装置と信号源と制御対象物とは、多様な要素を提供する。それらの要素の少なくとも一部は、ブロック、モジュール、またはセクションと呼ぶことができる。さらに、制御システムに含まれる要素は、意図的な場合にのみ、機能的な手段と呼ばれる。
この開示に記載の制御部及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリーを構成することによって提供された専用コンピュータにより、実現されてもよい。代替的に、この開示に記載の制御部及びその手法は、一つ以上の専用ハードウエア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。代替的に、この開示に記載の制御部及びその手法は、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリーと一つ以上のハードウエア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていてもよい。
(他の実施形態)
以上、本開示の実施形態を説明したが、本開示は上述の実施形態に限定されるものではなく、次の実施形態も本開示の技術的範囲に含まれ、さらに、下記以外にも要旨を逸脱しない範囲内で種々変更して実施することができる。
上記実施形態において電子制御装置20は、第1CPU21と第2CPU22の2つのCPUを有しているが、3つ以上のCPUを有していてもよい。その場合、電子制御装置20は、各CPUに対応する要求部を有している。
上記実施形態では、送信部28は、AD変換器27を介して制御部21aに開始要求を送信しているが、送信部28は、AD変換器27を介さずに制御部21a開始要求を送信する構成であってもよい。
上記実施形態においてAD変換器27を介さずにという記載は、AD変換器27を介していなければ、他の機器例えば、割込みコントローラ等を介していてもよい。
上記実施形態において、電子制御装置20は、S13完了後にS14以降の動作を行っているが、電子制御装置20は、S14以降の動作をS13以前に行う構成であってもよい。
上記実施形態において、電子制御装置20は、図3の動作を第1CPU21が制御監視要求およびAD監視要求を受信した場合に行っているが、電子制御装置20は、第1CPU21が、制御監視要求のみを受信したタイミングでS11に移行してもよい。また、電子制御装置20は、第1CPU21がAD監視要求を受信したタイミングでS11からS13の実施の有無にかかわらず、S14を実行してもよい。
上記実施形態では、第1要求部25、第2要求部26、送信部28は、タイマおよび割込みコントローラによって構成されているが、制御監視要求およびAD監視要求を送信できる構成であれば、CPU等の別構成であってもよい。
上記実施形態では、第1要求部25、第2要求部26および送信部28は、別々のタイマおよび割込みコントローラを有しているが、タイマもしくは割込みコントローラを共用する構成であってもよい。