(57)【要約】【課題】処理の実行に用いるプログラムが適切なタイミングで切替わる処理装置及び処理方法を提供する。【解決手段】制御部２４は、制御プログラムＰ１を実行することによって、電気機器１１の動作を制御する制御処理を実行する。制御部２４は、制御プログラムＰ１を更新すると判定した場合、車両が走行を停止しているか否かを判定する。制御部２４は、車両が走行を停止していると判定した場合、簡易プログラムＰ２を実行することによって、電気機器１１の動作を制御する制御処理を実行する。簡易プログラムＰ２のデータ量は、制御プログラムＰ１のデータ量よりも小さい。【選択図】図３
2019155959.tif 000002
【特許請求の範囲】
【請求項１】
第１プログラムを実行することによって、電気機器の動作を制御する制御処理を実行する制御処理部を備える車両用の処理装置であって、
前記第１プログラムを更新するか否かを判定する更新判定部と、
前記更新判定部が前記第１プログラムを更新すると判定した場合に前記車両が走行を停止しているか否かを判定する停止判定部と
を備え、
前記制御処理部は、前記停止判定部によって、前記車両が走行を停止していると判定された場合、第２プログラムを実行することによって前記制御処理を実行し、
前記第２プログラムのデータ量は、前記第１プログラムのデータ量よりも小さい
処理装置。
【請求項２】
前記停止判定部によって、前記車両が走行を停止していると判定された場合に、前記第２プログラムを実行することによって、前記第１プログラムを更新する更新処理を実行する更新処理部を備える
請求項１に記載の処理装置。
【請求項３】
前記制御処理部は、
前記第１プログラムを実行することによって、Ｎ（Ｎ：２以上の整数）種類の情報に基づく前記制御処理を実行し、
前記第２プログラムを実行することによって、前記Ｎ種類の情報中のＭ（Ｍ：Ｎ未満の自然数）種類の情報に基づく前記制御処理を実行する
請求項１又は請求項２に記載の処理装置。
【請求項４】
前記更新判定部が前記第１プログラムを更新すると判定した場合に、前記車両に搭載されたバッテリの蓄電量が所定量以上であるか否かを判定する蓄電量判定部を備え、
前記制御処理部は、前記停止判定部によって、前記車両が走行を停止していると判定され、かつ、前記蓄電量判定部によって、前記蓄電量が前記所定量以上であると判定された場合に、前記第２プログラムを実行することによって前記制御処理を実行する
請求項１から請求項３のいずれか１つに記載の処理装置。
【請求項５】
前記更新判定部が前記第１プログラムを更新すると判定した場合に、前記車両の進行方向と水平面とがなす傾き角度が所定値以上であるか否かを判定する角度判定部を備え、
前記制御処理部は、前記停止判定部によって、前記車両が走行を停止していると判定され、かつ、前記角度判定部によって、前記傾き角度が前記所定値以上であると判定された場合に、前記第２プログラムを実行することによって前記制御処理を実行する
請求項１から請求項３のいずれか１つに記載の処理装置。
【請求項６】
前記第１プログラムの更新が完了したか否かを判定する完了判定部と、
前記完了判定部によって前記更新が完了したと判定された場合に前記車両が走行を停止しているか否かを判定する第２の停止判定部と
を備え、
前記制御処理部は、前記第２の停止判定部によって、前記車両が走行を停止していると判定された場合、更新後の前記第１プログラムを実行することによって前記制御処理を実行する
請求項１から請求項５のいずれか１つに記載の処理装置。
【請求項７】
第１プログラムを実行することによって、電気機器の動作を制御する制御処理を実行するステップと、
前記第１プログラムを更新するか否かを判定するステップと、
前記第１プログラムを更新すると判定した場合に車両が走行を停止しているか否かを判定するステップと、
前記車両が走行を停止していると判定した場合に、データ量が前記第１プログラムのデータ量よりも小さい第２プログラムを実行することによって、前記制御処理を実行するステップと
を含む処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は処理装置及び処理方法に関する。
【背景技術】
【０００２】
車両には、制御プログラムを実行することによって処理を実行する処理装置（例えば、特許文献１を参照）が搭載されている。特許文献１に記載の処理装置は、制御プログラムを更新する間、データ量が制御プログラムのデータ量よりも小さい簡易プログラムを実行することによって処理を実行する。これにより、特許文献１に記載の処理装置は、簡易プログラムを実行することによって処理を実行しつつ、制御プログラムを更新することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１９２０９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の処理装置は、車両の走行状態に無関係に、処理の実行に用いるプログラムを、制御プログラムから簡易プログラムに切替える。このため、制御プログラムに基づく処理から簡易プログラムに基づく処理への移行が円滑に行われない可能性がある。
【０００５】
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、処理の実行に用いるプログラムが適切なタイミングで切替わる処理装置及び処理方法を提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一態様に係る処理装置は、第１プログラムを実行することによって、電気機器の動作を制御する制御処理を実行する制御処理部を備える車両用の処理装置であって、前記第１プログラムを更新するか否かを判定する更新判定部と、前記更新判定部が前記第１プログラムを更新すると判定した場合に前記車両が走行を停止しているか否かを判定する停止判定部とを備え、前記制御処理部は、前記停止判定部によって、前記車両が走行を停止していると判定された場合、第２プログラムを実行することによって前記制御処理を実行し、前記第２プログラムのデータ量は、前記第１プログラムのデータ量よりも小さい。
【０００７】
本発明の一態様に係る処理方法は、第１プログラムを実行することによって、電気機器の動作を制御する制御処理を実行するステップと、前記第１プログラムを更新するか否かを判定するステップと、前記第１プログラムを更新すると判定した場合に車両が走行を停止しているか否かを判定するステップと、前記車両が走行を停止していると判定した場合に、データ量が前記第１プログラムのデータ量よりも小さい第２プログラムを実行することによって、前記制御処理を実行するステップとを含む。
【０００８】
なお、本発明を、このような特徴的な処理部を備える処理装置として実現することができるだけでなく、かかる特徴的な処理をステップとする処理方法として実現することができる。また、本発明を、処理装置の一部又は全部を実現する半導体集積回路として実現したり、処理装置を含む処理システムとして実現したりすることができる。
【発明の効果】
【０００９】
上記の態様によれば、処理の実行に用いるプログラムが適切なタイミングで切替わる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態における車両の概略的な構成を示すブロック図である。
【図２】傾き角度の説明図である。
【図３】ＥＣＵの要部構成を示すブロック図である。
【図４】通常制御処理及び簡易制御処理の説明図である。
【図５】簡易プログラム実行処理の手順を示すフローチャートである。
【図６】制御プログラム実行処理の手順を示すフローチャートである。
【図７】ＥＣＵの動作の説明図である。
【発明を実施するための形態】
【００１１】
［本発明の実施形態の説明］
最初に本発明の実施態様を列挙して説明する。以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
【００１２】
（１）本発明の一態様に係る処理装置は、第１プログラムを実行することによって、電気機器の動作を制御する制御処理を実行する制御処理部を備える車両用の処理装置であって、前記第１プログラムを更新するか否かを判定する更新判定部と、前記更新判定部が前記第１プログラムを更新すると判定した場合に前記車両が走行を停止しているか否かを判定する停止判定部とを備え、前記制御処理部は、前記停止判定部によって、前記車両が走行を停止していると判定された場合、第２プログラムを実行することによって前記制御処理を実行し、前記第２プログラムのデータ量は、前記第１プログラムのデータ量よりも小さい。
【００１３】
（２）本発明の一態様に係る処理装置では、前記停止判定部によって、前記車両が走行を停止していると判定された場合に、前記第２プログラムを実行することによって、前記第１プログラムを更新する更新処理を実行する更新処理部を備える。
【００１４】
（３）本発明の一態様に係る処理装置では、前記制御処理部は、前記第１プログラムを実行することによって、Ｎ（Ｎ：２以上の整数）種類の情報に基づく前記制御処理を実行し、前記第２プログラムを実行することによって、前記Ｎ種類の情報中のＭ（Ｍ：Ｎ未満の自然数）種類の情報に基づく前記制御処理を実行する。
【００１５】
（４）本発明の一態様に係る処理装置は、前記更新判定部が前記第１プログラムを更新すると判定した場合に、前記車両に搭載されたバッテリの蓄電量が所定量以上であるか否かを判定する蓄電量判定部を備え、前記制御処理部は、前記停止判定部によって、前記車両が走行を停止していると判定され、かつ、前記蓄電量判定部によって、前記蓄電量が前記所定量以上であると判定された場合に、前記第２プログラムを実行することによって前記制御処理を実行する。
【００１６】
（５）本発明の一態様に係る処理装置は、前記更新判定部が前記第１プログラムを更新すると判定した場合に、前記車両の進行方向と水平面とがなす傾き角度が所定値以上であるか否かを判定する角度判定部を備え、前記制御処理部は、前記停止判定部によって、前記車両が走行を停止していると判定され、かつ、前記角度判定部によって、前記傾き角度が前記所定値以上であると判定された場合に、前記第２プログラムを実行することによって前記制御処理を実行する。
【００１７】
（６）本発明の一態様に係る処理装置は、前記第１プログラムの更新が完了したか否かを判定する完了判定部と、前記完了判定部によって前記更新が完了したと判定された場合に前記車両が走行を停止しているか否かを判定する第２の停止判定部とを備え、前記制御処理部は、前記第２の停止判定部によって、前記車両が走行を停止していると判定された場合、更新後の前記第１プログラムを実行することによって前記制御処理を実行する。
【００１８】
（７）本発明の一態様に係る処理方法は、第１プログラムを実行することによって、電気機器の動作を制御する制御処理を実行するステップと、前記第１プログラムを更新するか否かを判定するステップと、前記第１プログラムを更新すると判定した場合に車両が走行を停止しているか否かを判定するステップと、前記車両が走行を停止していると判定した場合に、データ量が前記第１プログラムのデータ量よりも小さい第２プログラムを実行することによって、前記制御処理を実行するステップとを含む。
【００１９】
上記の一態様に係る処理装置及び処理方法にあっては、第１プログラムを更新する場合において、車両が走行を停止しているときに、制御処理の実行に用いるプログラムを、第１プログラムから第２プログラムに切替える。車両が走行を停止している場合、電気機器の動作が安定している可能性が高い。このため、制御処理の実行に用いるプログラムが適切なタイミングで第２プログラムに切替わる。
【００２０】
上記の一態様に係る処理装置にあっては、第２プログラムを実行することによって、制御処理及び更新処理が実行される。
【００２１】
上記の一態様に係る処理装置にあっては、第２プログラムに係る制御処理で用いられる情報の種類の数は、第１プログラムに係る制御処理で用いられる情報の種類の数よりも少ない。これにより、データ量が第２プログラムのデータ量よりも小さい第１プログラムが実現される。
【００２２】
上記の一態様に係る処理装置にあっては、第１プログラムを更新する場合において、車両が走行を停止しており、かつ、バッテリの蓄電量が所定量以上であるときに、処理の実行に用いるプログラムを、第１プログラムから第２プログラムに切替える。車両が走行を停止しており、かつ、バッテリの蓄電量が所定量以上である場合、電気機器の動作が安定している可能性がより高い。このため、処理の実行に用いるプログラムがより適切なタイミングで第２プログラムに切替わる。
【００２３】
上記の一態様に係る処理装置にあっては、第１プログラムを更新する場合において、車両が走行を停止しており、かつ、水平面に対する車両の傾き角度が所定値以上であるときに、処理の実行に用いるプログラムを、第１プログラムから第２プログラムに切替える。車両が走行を停止しており、かつ、水平面に対する車両の傾き角度が所定値以上である場合、電気機器の動作が安定している可能性がより高い。このため、処理の実行に用いるプログラムがより適切なタイミングで第２プログラムに切替わる。
【００２４】
上記の一態様に係る処理装置にあっては、第１プログラムの更新が完了した場合において、車両が走行を停止しているときに、処理の実行に用いるプログラムを、第２プログラムから更新後の第１プログラムに切替える。車両が走行を停止している場合、電気機器の動作は安定している可能性が高い。このため、処理の実行に用いるプログラムが適切なタイミングで更新後の第１プログラムに切替わる。
【００２５】
［本発明の実施形態の詳細］
本発明の実施形態に係る通信システムの具体例を、以下に図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【００２６】
図１は、本実施形態における車両１００の概略的な構成を示すブロック図である。車両１００には、ＥＣＵ(Electronic Control Unit)１０、電気機器１１、バッテリ１２、イグニッションスイッチ１３、車速センサ１４、傾きセンサ１５及び指示受付部１６が搭載されている。
【００２７】
ＥＣＵ１０は、作動を指示する作動信号と、動作の停止を指示する停止信号とを電気機器１１に出力する。電気機器１１は、モータ又はランプ等である。電気機器１１は、作動信号が入力された場合に作動し、停止信号が入力された場合に動作を停止する。バッテリ１２は、図示しない発電機によって充電され、ＥＣＵ１０、電気機器１１、車速センサ１４及び傾きセンサ１５等に電力を供給する。
【００２８】
イグニッションスイッチ１３は、車両１００に搭載されているエンジンを始動する場合にオンに切替わるスイッチです。イグニッションスイッチ１３がオンである場合、エンジンは作動している。イグニッションスイッチ１３がオフである場合、エンジンは動作を停止している。
【００２９】
車速センサ１４は車両１００の速度を検出する。車速センサ１４は、車両１００の速度を示す車速情報を周期的にＥＣＵ１０に出力する。
傾きセンサ１５は、車両１００の進行方向と水平面とがなす傾き角度を検出する。図２は、傾き角度の説明図である。車両１００が地面Ｇ上を走行していると仮定する。図２に示すように、傾き角度Ｄは、車両１００の右側又は左側から見て、車両１００の進行方向と水平面とがなす角度である。傾きセンサ１５は、例えば、車両１００の加速度の方向と、重力の加速度の方向とがなす角度とに基づいて、傾き角度Ｄを検出する。傾きセンサ１５は、傾き角度Ｄを示す傾き角度情報を周期的にＥＣＵ１０に出力する。
【００３０】
指示受付部１６は、車両１００の乗員から、電気機器１１の作動を指示する作動指示と、電気機器１１の動作の停止を指示する停止指示とを受け付ける。指示受付部１６は、電気機器１１の作動指示又は停止指示を受け付ける都度、受け付けた指示を示す指示情報をＥＣＵ１０に出力する。
【００３１】
図３は、ＥＣＵ１０の要部構成を示すブロック図である。ＥＣＵ１０は、通信部２０、出力部２１、入力部２２、記憶部２３及び制御部２４を備える。これらは、内部バス２５に接続されている。通信部２０は、内部バス２５に加えて、通信バスＬ１に接続されている。出力部２１は、内部バス２５に加えて、電気機器１１に接続されている。通信バスＬ１には、ＥＣＵ１０の他に、車両１００に搭載されている図示しない装置が接続されている。
【００３２】
通信部２０は、ＥＣＵ１０とは異なる他の装置から、通信バスＬ１を介してデータを受信する。
出力部２１は、制御部２４の指示に従って、作動信号及び停止信号を電気機器１１に出力する。前述したように、電気機器１１は、作動信号が入力された場合に作動し、停止信号が入力された場合、動作を停止する。
【００３３】
車速センサ１４は、検出した車両１００の速度を示す車速情報を周期的に入力部２２に出力する。傾きセンサ１５は、検出した傾き角度を示す傾き角度情報を周期的に入力部２２に出力する。指示受付部１６は、作動指示又は停止指示を受け付ける都度、受け付けた指示を示す指示情報を入力部２２に出力する。
【００３４】
入力部２２には、更に、イグニッションスイッチ１３がオンであるか否かを示すイグニッション情報が周期的に入力される。入力部２２には、更に、バッテリ１２が蓄えている蓄電量を示す蓄電量情報が周期的に入力される。入力部２２に入力された車速情報、蓄電量情報、イグニッション情報、傾き角度情報及び指示情報は、制御部２４によって入力部２２から取得される。
入力部２２は、車速情報、蓄電量情報、イグニッション情報、傾き角度情報及び指示情報とは異なる情報も入力される。この情報も制御部２４によって入力部２２から取得される。
【００３５】
記憶部２３は不揮発性メモリである。記憶部２３には、制御プログラムＰ１及び簡易プログラムＰ２が記憶されている。制御部２４は、一又は複数のＣＰＵ(Central Processing Unit)を有する。制御部２４が有する一又は複数のＣＰＵは、制御プログラムＰ１を実行することによって、通常制御処理及び簡易プログラム実行処理を実行する。通常制御処理は、電気機器１１の動作を制御する処理である。簡易プログラム実行処理は、電気機器１１の動作の制御に用いるプログラムを簡易プログラムに切替える処理である。制御プログラムＰ１は、通常制御処理及び簡易プログラムを実行するためのコンピュータプログラムである。
【００３６】
制御部２４が有する一又は複数のＣＰＵは、簡易プログラムＰ２を実行することによって、簡易制御処理、制御プログラム更新処理及び制御プログラム実行処理を実行する。簡易制御処理は、電気機器１１の動作を制御する処理である。制御プログラム更新処理は、制御プログラムＰ１を更新する処理である。制御プログラム実行処理は、電気機器１１の動作の制御に用いるプログラムを制御プログラムに切替える処理である。
【００３７】
制御プログラムＰ１は更新される。制御プログラムＰ１を更新するための更新データは、通信バスＬ１を介して、通信部２０に送信される。具体的には、更新データを構成する複数の部分データが通信部２０に送信される。通信部２０は、部分データを受信した場合、受信した部分データを記憶部２３に記憶する。
【００３８】
例えば、通信バスＬ１には、車両１００の外側に設置されているサーバと無線で通信する無線装置が接続されている。無線装置は、サーバから更新データを受信し、受信した更新データを構成する複数の部分データを、通信バスＬ１を介して個別に送信する。通信部２０は、無線装置が通信バスＬ１を介して送信した部分データを受信し、受信した部分データを記憶部２３に記憶する。
【００３９】
簡易プログラムＰ２は、更新されることはなく、制御部２４によって誤った処理が実行される可能性が低いプログラムである。簡易プログラムＰ２のデータ量は、抑制されており、制御プログラムＰ１のデータ量よりも小さい。
ＥＣＵ１０及び制御部２４夫々は、処理装置及び制御処理部として機能する。制御プログラムＰ１及び簡易プログラムＰ２夫々は、第１プログラム及び第２プログラムに相当する。
【００４０】
図４は、通常制御処理及び簡易制御処理の説明図である。制御部２４は、前述したように、制御プログラムＰ１を実行することによって、通常制御処理を実行する。通常制御処理は、制御プログラムＰ１の更新が実行されている更新期間を除く他の期間の大部分で実行される。図４に示すように、通常制御処理では、制御部２４は、入力部２２に入力されたＮ（Ｎ：２以上の整数）種類の情報に基づいて、処理内容、即ち、作動信号及び停止信号の中で出力部２１が出力する信号を決定する。従って、通常制御処理は、Ｎ種類の情報に基づいて、電気機器１１の動作を制御する制御処理である。
【００４１】
図４の例では、Ｎは４であり、Ｎ種類の情報は、指示情報、イグニッション情報、車速情報及び蓄電量情報である。この場合、制御部２４は、指示受付部１６が受け付けた指示、イグニッションスイッチ１３がオンであるか否か、車速センサ１４が検出した車両１００の速度が基準速度以上であるか否か、及び、バッテリ１２の蓄電量が基準量以上であるか否かに基づいて、出力部２１が出力する信号を決定する。制御部２４は、出力部２１に指示して、決定した信号を出力させる。電気機器１１は、出力部２１が出力した信号に応じた動作を行う。
【００４２】
また、制御部２４は、前述したように、簡易プログラムＰ２を実行することによって、簡易制御処理を実行する。簡易制御処理は、制御プログラムＰ１の更新が実行されている更新期間に実行される。図４に示すように、簡易制御処理では、制御部２４は、入力部２２に入力されたＭ（Ｍ：Ｎ未満の自然数）種類の情報に基づいて、処理内容を決定する。従って、簡易制御処理は、Ｍ種類の情報に基づいて、電気機器１１の動作を制御する制御処理である。Ｍ種類の情報は、Ｎ種類の情報に含まれる。
【００４３】
図４の例では、Ｍは１であり、Ｍ種類の情報は指示情報である。この場合、制御部２４は、指示受付部１６が受け付けた指示のみに基づいて、出力部２１が出力する信号を決定する。制御部２４は、出力部２１に指示して、決定した信号を出力させる。電気機器１１は、出力部２１が出力した信号に応じた動作を行う。
【００４４】
以上のように、簡易プログラムＰ２に係る簡易制御処理で用いられる情報の種類の数は、制御プログラムＰ１に係る通常制御処理で用いられる情報の種類の数よりも少ない。これにより、制御プログラムＰ１のデータ量よりもデータ量が小さい簡易プログラムＰ２が実現されている。
【００４５】
指示情報は、外部から受け付けた内容に関する受付情報である。イグニッションスイッチ情報及び車速情報夫々は、車両１００の走行に関する走行情報である。蓄電量情報は、車両１００に搭載された蓄電器に関する蓄電器情報である。蓄電器は、バッテリ１２であってもよいし、バッテリ１２とは異なっていてもよい。Ｎ種類の情報に、車両１００に搭載されたドアミラー又はワイパー等の電気機器に関する機器情報が含まれてもよい。Ｎ種類の情報には、受付情報、走行情報、蓄電器情報及び機器情報中の少なくとも１つが含まれていればよい。例えば、Ｎ種類の情報は、２種類の受付情報であってもよい。
【００４６】
図５は、簡易プログラム実行処理の手順を示すフローチャートである。制御部２４は、イグニッションスイッチ１３がオンである状態で、制御プログラムＰ１を実行することによって、簡易プログラム実行処理を周期的に実行する。制御部２４は、時分割方式で、通常制御処理及び簡易プログラム実行処理を並行して実行する。
【００４７】
まず、制御部２４は、制御プログラムＰ１を更新するか否かを判定する（ステップＳ１）。ステップＳ１では、一例として、制御部２４は、記憶部２３に更新データが記憶されている場合に制御プログラムＰ１を更新すると判定し、記憶部２３に更新データが記憶されていない場合に制御プログラムＰ１を更新しないと判定する。
【００４８】
また、もう１つの例として、制御部２４は、記憶部２３に、更新データを構成する複数の部分データの少なくとも１つが記憶されている場合に制御プログラムＰ１を更新すると判定し、記憶部２３に部分データが記憶されていない場合に制御プログラムＰ１を更新しないと判定する。制御部２４は更新判定部としても機能する。
【００４９】
制御部２４は、制御プログラムＰ１を更新しないと判定した場合（Ｓ１：ＮＯ）、簡易プログラム実行処理を終了する。その後、次の周期が到来した場合、制御部２４は簡易プログラム実行処理を再び実行する。
【００５０】
制御部２４は、制御プログラムＰ１を更新すると判定した場合（Ｓ１：ＹＥＳ）、入力部２２から車速情報を取得し（ステップＳ２）、取得した車速情報が示す車両１００の速度に基づいて、車両１００が走行を停止しているか否かを判定する（ステップＳ３）。ステップＳ３では、制御部２４は、車両１００の速度がゼロである場合、車両１００が走行を停止していると判定し、車両１００の速度がゼロを超えている場合、車両１００が走行を停止していないと判定する。制御部２４は停止判定部としても機能する。
【００５１】
制御部２４は、車両１００が走行を停止していないと判定した場合（Ｓ３：ＮＯ）、ステップＳ２を実行し、車両１００が走行を停止するまで待機する。
制御部２４は、車両１００が走行を停止していると判定した場合（Ｓ３：ＹＥＳ）、入力部２２から蓄電量情報を取得し（ステップＳ４）、取得した蓄電量情報が示すバッテリ１２の蓄電量が基準量以上であるか否かを判定する（ステップＳ５）。基準量は、一定量であり、予め設定されている。制御部２４は蓄電量判定部としても機能する。なお、ステップＳ５で用いる基準量は、通常制御処理で用いる基準量と異なってもよい。
【００５２】
制御部２４は、蓄電量が基準量未満であると判定した場合（Ｓ５：ＮＯ）、ステップＳ２を実行し、車両１００が走行を停止しており、かつ、バッテリ１２の蓄電量が基準量以上であるという条件が満たされるまで待機する。バッテリ１２は、前述したように、発電機によって充電される。
制御部２４は、蓄電量が基準量以上であると判定した場合（Ｓ５：ＹＥＳ）、入力部２２から傾き角度情報を取得し（ステップＳ６）、車両１００の進行方向と水平面とがなす傾き角度が基準値未満であるか否かを判定する（ステップＳ７）。基準値は、一定値であり、予め設定されている。制御部２４は角度判定部としても機能する。
【００５３】
制御部２４は、傾き角度が基準値以上であると判定した場合（Ｓ７：ＮＯ）、ステップＳ２を実行し、車両１００が走行を停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、車両１００の傾き角度が基準値未満であるという条件が満たされるまで待機する。
【００５４】
制御部２４は、傾き角度が基準値未満であると判定した場合（Ｓ７：ＹＥＳ）、簡易プログラムＰ２を実行する（ステップＳ８）。制御部２４は、簡易プログラムＰ２を実行することによって、前述したように、簡易制御処理、制御プログラム更新処理及び制御プログラム実行処理を実行する。
制御部２４は、ステップＳ８を実行した後、簡易プログラム実行処理を終了する。その後、制御プログラム実行処理で制御プログラムＰ１が実行されるまで、制御プログラムＰ１が実行されることはない。
【００５５】
以上のように、制御プログラムＰ１を更新する場合において、車両１００が走行を停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、車両１００の傾き角度が基準値以上であるとき、電気機器１１の動作を制御する制御処理に用いるプログラムを簡易プログラムＰ２に切替える。
【００５６】
制御プログラムＰ１から簡易プログラムＰ２への移行が行われた後、制御部２４は、前述した簡易制御処理を実行しつつ、制御プログラム更新処理を実行する。制御プログラム更新処理では、記憶部２３に記憶されている更新データ又は部分データに基づいて、制御プログラムＰ１を更新する。制御部２４は、制御プログラムＰ１を更新した後、更新で用いた更新データ又は部分データを記憶部２３から削除する。制御部２４は更新処理部としても機能する。
【００５７】
図６は、制御プログラム実行処理の手順を示すフローチャートである。制御部２４は、イグニッションスイッチ１３がオンである状態で、簡易プログラムＰ２を実行することによって、制御プログラム実行処理を実行する。制御プログラム実行処理では、制御部２４は、まず、制御プログラムＰ１の更新が完了したか否かを判定する（ステップＳ１１）。制御部２４は完了判定部としても機能する。
【００５８】
制御部２４は、制御プログラムＰ１の更新が完了していないと判定した場合（Ｓ１１：ＮＯ）、制御プログラム実行処理を終了する。その後、次の周期が到来した場合、制御部２４は制御プログラム実行処理を再び実行する。
【００５９】
制御部２４は、制御プログラムＰ１の更新が完了したと判定した場合（Ｓ１１：ＹＥＳ）、入力部２２から車速情報を取得し（ステップＳ１２）、取得した車速情報が示す車両１００の速度に基づいて、簡易プログラム実行処理のステップＳ３と同様に、車両１００が走行を停止しているか否かを判定する（ステップＳ１３）。制御部２４は第２の停止判定部としても機能する。
【００６０】
制御部２４は、車両１００が走行を停止していないと判定した場合（Ｓ１３：ＮＯ）、ステップＳ１２を実行し、車両１００が走行を停止するまで待機する。
制御部２４は、車両１００が走行を停止していると判定した場合（Ｓ１３：ＹＥＳ）、入力部２２から蓄電量情報を取得し（ステップＳ１４）、取得した蓄電量情報が示すバッテリ１２の蓄電量が基準量以上であるか否かを判定する（ステップＳ１５）。なお、ステップＳ１５で用いられる基準量は、通常制御処理で用いられる基準量、及び、簡易プログラム実行処理のステップＳ５で用いられる基準量の両方又は一方と異なっていてもよい。この場合、ステップＳ１５で用いられる基準量も、一定量であり、予め設定されている。
【００６１】
制御部２４は、蓄電量が基準量未満であると判定した場合（Ｓ１５：ＮＯ）、ステップＳ１２を実行し、車両１００が走行を停止しており、かつ、バッテリ１２の蓄電量が基準量以上であるという条件が満たされるまで待機する。バッテリ１２は、前述したように、発電機によって充電される。
制御部２４は、蓄電量が基準量以上であると判定した場合（Ｓ１５：ＹＥＳ）、入力部２２から傾き角度情報を取得し（ステップＳ１６）、車両１００の進行方向と水平面とがなす傾き角度が基準値未満であるか否かを判定する（ステップＳ１７）。なお、ステップＳ１７で用いられる基準値は、簡易プログラム実行処理のステップＳ７で用いられる基準値と異なっていてもよい。この場合、ステップＳ１７で用いられる基準値も、一定量であり、予め設定されている。
【００６２】
制御部２４は、傾き角度が基準値以上であると判定した場合（Ｓ１７：ＮＯ）、ステップＳ１２を実行し、車両１００が走行を停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、車両１００の傾き角度が基準値未満であるという条件が満たされるまで待機する。
【００６３】
制御部２４は、傾き角度が基準値未満であると判定した場合（Ｓ１７：ＹＥＳ）、更新後の制御プログラムＰ１を実行する（ステップＳ１８）。制御部２４は、更新後の制御プログラムＰ１を実行することによって、前述したように、通常制御処理及び簡易プログラム実行処理を実行する。
制御部２４は、ステップＳ１８を実行した後、制御プログラム実行処理を終了する。その後、簡易プログラム実行処理で簡易プログラムＰ２が実行されるまた、簡易プログラムＰ２が実行されることはない。
【００６４】
以上のように、制御プログラムＰ１の更新が完了した場合において、車両１００が走行を停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、車両１００の傾き角度が基準値以上であるとき、電気機器１１の動作を制御する制御処理に用いるプログラムを更新後の制御プログラムＰ１に切替える。
【００６５】
図７は、ＥＣＵ１０の動作の説明図である。図７では、制御プログラムＰ１を実行することによって制御部２４が実行する処理と、簡易プログラムＰ２を実行することによって制御部２４が実行する処理とが時系列的に示されている。時間軸の上側には、制御プログラムＰ１を実行することによって、制御部２４が実行する処理が示されている。時間軸の下側には、簡易プログラムＰ２を実行することによって、制御部２４が実行する処理が示されている。
【００６６】
制御部２４が、制御プログラムＰ１を実行することによって、通常制御処理を実行している間に、通信部２０は、更新データ又は部分データを受信し、受信した更新データ又は部分データを記憶部２３に記憶する。その後に実行される簡易プログラム実行処理では、更新データ又は部分データが記憶部２３に記憶されているので、制御部２４は、制御プログラムＰ１を更新すると判定する。その後、簡易プログラム実行処理では、制御部２４は、車両１００の走行が停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、傾き角度が基準値以上であるという条件が満たされるまで待機する。
【００６７】
制御部２４は、車両１００の走行が停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、傾き角度が基準値以上であるという条件が満たされ場合、簡易プログラムＰ２を実行し、制御プログラムＰ１の実行を停止する。その後、制御部２４は、簡易プログラムＰ２を実行することによって、簡易制御処理を実行する。
【００６８】
その後、制御部２４は、簡易制御処理を実行しつつ、制御プログラム更新処理を実行する。制御部２４は、制御プログラムＰ１の更新が完了した後、制御プログラムＰ１の更新に用いた更新データ又は部分データを削除し、制御プログラム実行処理を実行する。制御プログラム実行処理では、制御部２４は、制御プログラムＰ１の更新が完了したと判定し、車両１００の走行が停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、傾き角度が基準値以上であるという条件が満たされるまで待機する。
【００６９】
制御部２４は、車両１００の走行が停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、傾き角度が基準値以上であるという条件が満たされ場合、更新後の制御プログラムＰ１を実行し、簡易プログラムＰ２の実行を停止する。その後、制御部２４は、制御プログラムＰ１を実行することによって、通常制御処理を再び実行する。
【００７０】
以上のように構成されたＥＣＵ１０では、制御プログラムＰ１を更新する場合において、車両１００が走行を停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、傾き角度が基準値以上であるという条件が満たされときに、制御処理の実行に用いるプログラムを、制御プログラムＰ１から簡易プログラムＰ２に切替える。この条件が満たされている場合、電気機器１１の動作が安定している可能性が高い。このため、制御処理の実行に用いるプログラムが適切なタイミングで簡易プログラムＰ２に切替わる。
【００７１】
また、制御プログラムＰ１の更新が完了した場合において、車両１００が走行を停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、傾き角度が基準値以上であるという条件が満たされときに、制御処理の実行に用いるプログラムを、簡易プログラムＰ２から更新後の制御プログラムＰ１に切替える。この条件が満たされている場合、電気機器１１の動作が安定している可能性が高い。このため、制御処理の実行に用いるプログラムが適切なタイミングで更新後の制御プログラムＰ１に切替わる。
【００７２】
なお、簡易プログラム実行処理において、制御部２４は、車両１００が走行を停止していると判定し、かつ、バッテリ１２の蓄電量が基準量以上であると判定した場合に簡易プログラムＰ２を実行してもよい。車両１００が走行を停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、傾き角度が基準値以上であるという条件が満たされている場合、電気機器の動作は最も安定している。しかしながら、車両１００が走行を停止しており、かつ、バッテリ１２の蓄電量が基準量以上であるという条件が満たされていれば、電気機器の動作の安定について問題がない構成では、傾き角度が基準値以上であるか否かの判定を省略してもよい。
【００７３】
また、簡易プログラム実行処理において、制御部２４は、車両１００が走行を停止していると判定し、かつ、傾き角度が基準値未満であると判定した場合に簡易プログラムＰ２を実行してもよい。車両１００が走行を停止しており、バッテリ１２の蓄電量が基準量以上であり、かつ、傾き角度が基準値以上であるという条件が満たされている場合、電気機器の動作は最も安定している。しかしながら、車両１００が走行を停止しており、かつ、傾き角度が基準値未満あるという条件が満たされていれば、電気機器の動作の安定について問題がない構成では、バッテリ１２の蓄電量が基準量以上であるか否かの判定を省略してもよい。
【００７４】
更に、車両１００が走行を停止しているという条件が満たされていれば、電気機器の動作の安定について問題がない構成では、簡易プログラム実行処理において、制御部２４は、車両１００が走行を停止していると判定した場合に簡易プログラムＰ２を実行してもよい。
【００７５】
また、簡易プログラムＰ２を実行する条件と同様に、制御プログラムＰ１を実行する条件を緩和してもよい。従って、車両１００が走行を停止しており、かつ、バッテリ１２の蓄電量が基準量以上であるという条件が満たされた場合に制御プログラムＰ１を実行してもよい。また、車両１００が走行を停止しており、かつ、傾き角度が基準値未満あるという条件が満たされた場合に制御プログラムＰ１を実行してもよい。更に、車両１００が走行を停止している場合に制御プログラムＰ１を実行してもよい。
【００７６】
更に、制御部２４は、イグニッションスイッチ１３がオフであるか否かに無関係に、簡易プログラム実行処理及び制御プログラム実行処理の一方又は両方を実行してもよい。
また、通常制御処理で用いられる情報の数、即ち、Ｎは２以上であればよい。簡易制御処理で用いられる情報の数、即ち、Ｍは、１に限定されず、Ｎ未満の自然数であればよい。
【００７７】
更に、通常制御処理及び簡易制御処理夫々は、電気機器１１の作動及び動作の停止に関する制御を行う処理に限定されず、電気機器１１の動作に関する制御を行う処理であればよい。例えば、電気機器１１がモータである場合、通常制御処理及び簡易制御処理は、モータの回転数を制御する処理であってもよい。例えば、電気機器１１がランプである場合、通常制御処理及び簡易制御処理は、ランプの照度を調整する処理であってもよい。
【００７８】
開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００７９】
１００  車両
１０  ＥＣＵ（処理装置）
１１  電気機器
１２  バッテリ
１３  イグニッションスイッチ
１４  車速センサ
１５  傾きセンサ
１６  指示受付部
２０  通信部
２１  出力部
２２  入力部
２３  記憶部
２４  制御部（制御処理部、停止判定部、第２の停止判定部、更新処理部、蓄電量判定部、角度判定部、完了判定部）
Ｄ  傾き角度
Ｇ  地面
Ｌ１  通信バス
Ｐ１  制御プログラム（第１プログラム）
Ｐ２  簡易プログラム（第２プログラム）
【図１】
2019155959.tif 000003
【図２】
2019155959.tif 000004
【図３】
2019155959.tif 000005
【図４】
2019155959.tif 000006
【図５】
2019155959.tif 000007
【図６】
2019155959.tif 000008
【図７】
2019155959.tif 000009