(57)【要約】【課題】メインマイコンとサブマイコンとがシリアル通信の所定のプロトコルで制御信号を送受信する場合において、所定のプロトコルの通信パラメータの影響を受けずに、サブマイコンのプログラムの書き換えができるサブマイコンのプログラム書き換え方法を提供する。【解決手段】サブマイコン３のプログラムの書き換え要求が発生した場合に、メインマイコン２が、サブマイコン３へ一定時間以上ロウレベルの信号を送信し、サブマイコン３が、一定時間ロウレベルの信号を受信することによって、プログラムの書き換え要求を識別する。メインマイコン２が、制御信号の通信用であって、通信パラメータの変更が可能な第１のプロトコル以外の第２のプロトコルに従ってプログラム書き換え用のデータを送信し、サブマイコン３が、第２のプロトコルに従ってプログラム書き換え用のデータを受信する。【選択図】図１
2015099528.tif 000002
【特許請求の範囲】
【請求項１】
メインマイコンとサブマイコンがシリアル通信線で接続されたシステムにおける前記サブマイコンのプログラムの書き換え方法であって、
前記メインマイコンと前記サブマイコンが、通信パラメータの変更が可能な第１のプロトコルに従って、制御信号を送受信するステップと、
前記サブマイコンのプログラムの書き換え要求が発生した場合に、前記メインマイコンが、前記サブマイコンへ一定時間以上ロウレベルの信号を送信するステップと、
前記サブマイコンが、一定時間ロウレベルの信号を受信することによって、前記プログラムの書き換え要求を識別するステップと、
前記メインマイコンが、前記第１のプロトコル以外の第２のプロトコルに従って、前記プログラム書き換え用のデータを送信するステップと、
前記サブマイコンが、前記第２のプロトコルに従って、前記プログラム書き換え用のデータを受信するステップとを備える、サブマイコンのプログラム書き換え方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サブマイコンのプログラム書き換え方法に関する。
【背景技術】
【０００２】
特開２００９−２０５５６９号公報（特許文献１）には、メインマイコンが、サブマイコンの制御プログラムの書き換えを検出すると、制御プログラムをサブマイコンに転送する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２０５５６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、メインマイコンとサブマイコンとが所定のシリアル通信の所定のプロトコルで制御信号を送受信する場合において、同じ所定のプロトコルでサブマイコンのプログラムの書き換えデータを伝送すると、所定のプロトコルの通信パラメータの影響を受けて、サブマイコンのプログラムの書き換えができない場合がある。
【０００５】
それゆえに、本発明の目的は、メインマイコンとサブマイコンとがシリアル通信の所定のプロトコルで制御信号を送受信する場合において、所定のプロトコルの通信パラメータの影響を受けずに、サブマイコンのプログラムの書き換えができるサブマイコンのプログラム書き換え方法を提供する。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明は、メインマイコンとサブマイコンがシリアル通信線で接続されたシステムにおけるサブマイコンのプログラムの書き換え方法であって、メインマイコンとサブマイコンが、通信パラメータの変更が可能な第１のプロトコルに従って、制御信号を送受信するステップと、サブマイコンのプログラムの書き換え要求が発生した場合に、メインマイコンが、サブマイコンへ一定時間以上ロウレベルの信号を送信するステップと、サブマイコンが、一定時間ロウレベルの信号を受信することによって、プログラムの書き換え要求を識別するステップと、メインマイコンが、第１のプロトコル以外の第２のプロトコルに従って、プログラム書き換え用のデータを送信するステップと、サブマイコンが、第２のプロトコルに従って、プログラム書き換え用のデータを受信するステップとを備える。
【発明の効果】
【０００７】
本発明によれば、メインマイコンとサブマイコンとが所定のプロトコルで制御信号をシリアル通信する場合において、所定のプロトコルの通信パラメータの影響を受けずに、サブマイコンのプログラムの書き換えができる。
【図面の簡単な説明】
【０００８】
【図１】本実施の形態のハイブリッド車両のＥＣＵの構成を説明するための図である。
【図２】制御メッセージの通信の例を表わす図である。
【図３】制御メッセージを用いたリプログラム用のデータの転送の例を表わす図である。
【図４】本実施の形態のリプログラム用のデータの転送方法を説明するための図である。
【図５】メインマイコンによるリプログラム要求と、リプログラム用のデータの送信手順を表わすフローチャートである。
【図６】サブマイコンによるリプログラム要求およびリプログラム用のデータの受信手順を表わすフローチャートである。
【図７】図６のステップＳ２０３におけるリプログラム要求の判定処理の手順を表わすフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態について、図面を用いて説明する。
図１は、本実施の形態のハイブリッド車両のＥＣＵ（Electric Control Unit）の構成を説明するための図である。
【００１０】
ＥＣＵ１は、ハイブリッド車両における各機器の制御を行なう。ＥＣＵ１は、メインマイコン２と、サブマイコン３とを備える。
【００１１】
メインマイコン２と、サブマイコン３との間は、シリアル通信線６で接続される。
メインマイコン２とサブマイコン３は、シリアル通信線６を通じて、シリアル通信の一種であるＵＡＲＴ（Universal Asynchronous Receiver Transmitter）プロトコルによって、図２に示すように、ハイブリッド車両の制御信号を含む制御メッセージを送受信する。
【００１２】
メインマイコン２内のプログラムおよびサブマイコン３内のプログラムを書き換える（以下、リプログラムともいう）ために、書換えツール４からＣＡＮ（Controller Area Network）バス７を介してメインマイコン２のリプログラム用のデータおよびサブマイコン３のリプログラム用のデータが転送される。
【００１３】
メインマイコン２は、受信したメインマイコン２のリプログラム用のデータに基づいて、メインマイコン２内のプログラムを書き換える。また、メインマイコン２は、シリアル通信線６を通じて、サブマイコン３にサブマイコン３のリプログラム用のデータを転送する。
【００１４】
次に、サブマイコン３へのリプログラム用のデータの転送について説明する。
図３は、ハイブリッド車両の制御用の制御メッセージを用いたリプログラム用のデータの転送の例を表わす図である。
【００１５】
図３に示すように、制御メッセージが、ヘッダ情報と、リプログラム要求と、リプログラム用のデータ（ＤＡＴＡ１，ＤＡＴＡ２，ＤＡＴＡ３，・・・）と、誤り検出のためのＣＨＥＣＫＳＵＭを含む。
【００１６】
図３に示すように、制御メッセージを用いて、リプログラム要求と、リプログラム用のデータを送信した場合には、次のような問題が生じる。
【００１７】
メインマイコン２は、サブマイコン３へ、リプログラム要求とリプログラム用のデータを含む制御メッセージを送信し、サブマイコン３は、この制御メッセージを受信することによって、サブマイコン３内のプログラムを書き換える（リプログラム）。サブマイコン３は、リプログラム終了後に、メインマイコン２に、リプログラムが終了したことを表わす制御メッセージを送信する。メインマイコン２は、この制御メッセージを受信した後、メインマイコン２内のプログラムを書き換える（リプログラム）。
【００１８】
サブマイコン３のリプログラム終了後、メインマイコン２がリプログラムする前に、電源が遮断された場合に、サブマイコン３のプログラムと、メインマイコン２のプログラムの世代が相違する。リプログラム用のデータがＵＡＲＴプロトコルの通信パラメータの変更（たとえば、通信速度Ａ→Ｂ）を含んでいる場合に、メインマイコン２側では、通信速度がＡであるが、サブマイコン３側の通信速度がＢとなり、メインマイコン２とサブマイコン３との間の通信ができなくなってしまう。両者の通信速度が相違することによって、それ以降、リプログラムができなくなるだけでなく、制御信号の通信もできなくなる。このような事態を避けようとするなら、リプログラム要求とリプログラム用のデータとを制御メッセージによって送信する場合には、通信パラメータの変更を不可とする必要がある。
【００１９】
このような問題が起こる原因は、サブマイコン３とメインマイコン２の間の制御信号を伝送するための制御メッセージを用いてリプログラム要求とリプログラム用のデータを送信したことである。このような問題を解決するために、リプログラム専用の通信線を新たに追加することが考えられるが、コストが増加するという問題がある。
【００２０】
図４は、本実施の形態のリプログラム要求と、リプログラム用のデータの転送方法を説明するための図である。
【００２１】
メインマイコン２は、ＵＡＲＴプロトコルに従って、サブマイコン３との間で制御メッセージの交換をしているときに、サブマイコン３側のリプログラムの要求が発生した場合に、一定時間（たとえば、３秒間）ロウレベルの信号を送信する。一定時間ロウレベルの信号は、ＵＡＲＴプロトコルの通信パラメータの影響を受けないため、前述のように電源の突然の遮断によって、送信側であるメインマイコン２と、受信側であるサブマイコン３との間でＵＡＲＴプロトコルの通信パラメータが相違していたとしても、リプログラム要求をサブマイコン３に伝達することができる。
【００２２】
ＵＡＲＴプロトコルに従って信号を受信しているサブマイコン３は、一定時間（１秒以下）ロウレベルの信号を受信すると、エラーの発生を検出する。つまり、ＵＡＲＴプロトコルに従って信号を受信しているときに、リプログラム要求の可能性を検知することができる。ここで、送信側が一定時間ハイレベルの信号を送信した場合には、ＵＡＲＴプロトコルに従って信号を受信する受信側では、送信側からのメッセージがないと判断して待機状態となるので、エラーを検知することができないので、ロウレベル信号に代えてハイレベル信号は使用できない。サブマイコン３は、エラーの発生を検知してから、さらに一定時間（たとえば、２秒間）ロウレベル信号を受信すると、リプログラム要求を検知することができる。
【００２３】
その後、メインマイコン２が、リプログラム用のデータを送信する。リプログラム用のデータの中にＵＡＲＴプロトコルの通信パラメータを含ませることによって、ＵＡＲＴプロトコルに従った制御メッセージの通信のための通信パラメータを変更することができる。
【００２４】
このリプログラム用のデータは、ＵＡＲＴプロトコルの通信パラメータの影響を受けないようにするために、リプログラム専用の通信プロトコルに従って、所定の通信パラメータ（通常は変更されない）によって送信される。
【００２５】
図５は、メインマイコン２によるリプログラム要求と、リプログラム用のデータの送信手順を表わすフローチャートである。
【００２６】
まず、メインマイコン２は、書換えツール４からサブマイコン３のプログラムの書き換え（リプログラム）要求を受信する（ステップＳ１０１）。
【００２７】
次に、メインマイコン２は、一定時間（たとえば、３秒間）ロウレベルの信号を送信する（ステップＳ１０２）。
【００２８】
次に、メインマイコン２は、リプログラム専用の通信プロトコルに従って、所定の通信パラメータでリプログラム用のデータを送信する（ステップＳ１０３）。
【００２９】
図６は、サブマイコン３によるリプログラム要求およびリプログラム用のデータの受信手順を表わすフローチャートである。
【００３０】
まず、サブマイコン３が、受信割り込みを受ける（ステップＳ２０１）。
メインマイコン２側が送信信号をロウレベル固定にすることによって、サブマイコン３が、受信エラーがあると判定したときには（ステップＳ２０２でＹＥＳ）、リプログラム要求の判定処理を行なう（ステップＳ２０３）。
【００３１】
図７は、図６のステップＳ２０３におけるリプログラム要求の判定処理の手順を表わすフローチャートである。
【００３２】
ステップＳ３０１において、受信信号のレベルがロウレベルのときには、処理がステップＳ３０２に進み、受信信号のレベルがハイレベルのときには、処理がステップＳ３０３に進む。
【００３３】
ステップＳ３０２において、サブマイコン３は、ロウ時間計測カウンタをインクリメントする。
【００３４】
ステップＳ３０３において、サブマイコン３は、ロウ時間計測カウンタをクリアして、処理を終了する。
【００３５】
ステップＳ３０３の後のステップＳ３０４において、ロウ時間計測カウンタのカウント値が所定値（たとえば２秒）を超えた場合には、処理がステップＳ３０５に進み、カウント値が所定値以下の場合には、処理がステップＳ３０１に戻る。
【００３６】
ステップＳ３０５において、サブマイコン３は、リプログラム要求があると判定する。
ステップＳ３０６において、サブマイコン３は、リプログラム専用の通信プロトコルに従って、所定の通信パラメータでリプログラム用のデータを受信する。
【００３７】
以上のように、本実施の形態によれば、メインマイコン２とサブマイコン３とがＵＡＲＴプロトコルで制御信号をシリアル通信する場合において、メインマイコン２が一定時間ロウレベルの信号によってリプログラムの要求をサブマイコン３へ通知し、メインマイコン２がＵＡＲＴプロトコルと相違する専用のプロトコルに従って、リプログラム用のデータをサブマイコン３に転送する。これによって、ＵＡＲＴプロトコルの通信パラメータの影響を受けずに、リプログラム用のデータが伝送されるので、ＥＣＵに供給される電源が突然遮断されることによって、メインマイコン２とサブマイコン３の間でＵＡＲＴプロトコルの通信パラメータが不整合になったとしても、サブマイコン３のプログラムの書き換えができる。
【００３８】
メインマイコン２とサブマイコン３の間でＵＡＲＴプロトコルの通信パラメータが整合しなくなった場合には、整合するように、メインマイコン２からサブマイコン３へＵＡＲＴプロトコルの通信パラメータの変更を含むリプログラム用のデータを送信すればよい。これによって、ＵＡＲＴプロトコルを用いたメインマイコン２とサブマイコン３の制御信号の送受信も正常に回復する。
【００３９】
なお、本実施の形態では、通信パラメータとして通信速度について説明したが、これに限定するものではなく、たとえば、パリティビットのビット数、ストップビットのビット数を含む。
【００４０】
また、上述の実施の形態では、シリアル通信の一種としてクロック非同期型の通信であるＵＡＲＴ通信を用いた場合について説明したが、これに限定するものではない。たとえば、ＳＣＩ（Communication Interface）、Ｉ２Ｃ（Inter-Integrated Circuit）、ＣＡＮ、ＬＩＮ（Local Interconnect Network）などのシリアル通信や、クロック同期型のシリアル通信であってもよい。クロック同期型のシリアル通信の場合、メインマイコン２が、クロック信号を一定時間ハイレベルまたはロウレベルにすることによって、サブマイコン３へリプログラム要求を伝えることとしてもよい。
【００４１】
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考え
られるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示さ
れ、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図さ
れる。
【符号の説明】
【００４２】
１  ＥＣＵ、２  メインマイコン、３  サブアイコン、４  書換えツール、５  ＣＡＮバス、６  シリアル通信線。
【図１】
2015099528.tif 000003
【図２】
2015099528.tif 000004
【図３】
2015099528.tif 000005
【図４】
2015099528.tif 000006
【図５】
2015099528.tif 000007
【図６】
2015099528.tif 000008
【図７】
2015099528.tif 000009