JP5861438B2 - 制御装置及び処理監視方法 - Google Patents

制御装置及び処理監視方法 Download PDF

Info

Publication number
JP5861438B2
JP5861438B2 JP2011276395A JP2011276395A JP5861438B2 JP 5861438 B2 JP5861438 B2 JP 5861438B2 JP 2011276395 A JP2011276395 A JP 2011276395A JP 2011276395 A JP2011276395 A JP 2011276395A JP 5861438 B2 JP5861438 B2 JP 5861438B2
Authority
JP
Japan
Prior art keywords
unit
identification information
execution
series
executed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2011276395A
Other languages
English (en)
Other versions
JP2013127674A (ja
Inventor
東 誠
誠 東
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sumitomo Wiring Systems Ltd, AutoNetworks Technologies Ltd, Sumitomo Electric Industries Ltd filed Critical Sumitomo Wiring Systems Ltd
Priority to JP2011276395A priority Critical patent/JP5861438B2/ja
Priority to DE112012005257.9T priority patent/DE112012005257T5/de
Priority to PCT/JP2012/082440 priority patent/WO2013089210A1/ja
Priority to CN201280061808.XA priority patent/CN104011688B/zh
Priority to US14/365,876 priority patent/US9690269B2/en
Publication of JP2013127674A publication Critical patent/JP2013127674A/ja
Application granted granted Critical
Publication of JP5861438B2 publication Critical patent/JP5861438B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring

Description

本発明は、機器の動作を制御する複数の処理の実行順序を監視する制御装置及び処理監視方法に関する。
近年、自動車の分野においては、車輌の高機能化が益々進んでおり、多種多様な機器が車輌に搭載され、これら車載機器を制御するための制御装置、所謂ECU(Electronic Control Unit)が多数搭載されている。例えば、乗員によるスイッチ操作などに応じて車内照明やヘッドライトの点灯/消灯、警報器の吹鳴、及びドアロック/アンロック等の制御を行うボディ系ECU、運転席近傍に配設されるメータ類の動作を制御するメータ系ECU、並びにカーナビゲーション装置等の制御を行うナビ系ECUなどの種々のECUが車輌に搭載されている。
ECUは、マイクロコンピュータ等の演算処理装置によって構成されており、ROM(Read Only Memory)に記憶した制御プログラムを読み込んで実行することにより、車載機器の制御が実現されている。一般的に、一つのECUが実行する制御プログラムは、ECUが有する入出力インタフェースに接続された複数の車載機器を制御するための複数のアプリケーションプログラムから構成されている。また、ECUは、車載LANを通じて他のECUと連携し、該他のECUが有する入出力インタフェースに接続された車載機器を制御するアプリケーションプログラムが制御プログラムに含まれることもある。
複数のアプリケーションプログラムからなる制御プログラムは、車輌に搭載された各種センサからの情報、及び乗員によるスイッチ操作信号等に基づいて、車載機器を動作させるアクチュエータに制御信号を送って車載機器を所定の順序で動作させている。ここで、各種センサ情報の取得処理、スイッチ操作信号の取得処理、及び車載機器への制御処理は、処理単位毎に作成されたプログラムによる複数の処理が組み合わされて順次実行されることによって実現されている。
ECUは、各種センサ情報、スイッチ操作信号、及び他のECUからの制御信号に基づいて、車載機器を動作させる複数の処理を実行する順序の計画を立て、該計画に基づいて処理を実行していく。例えば、ボディ系ECUは、スマートキーレスエントリを機能させる制御において、車輌に接近してきた携帯キーからの最初の通信信号をトリガにして、携帯キーと車載通信部との間の通信プロトコル及びエンジン始動手順に従った規定の順序で複数の処理を実行する必要がある。通常、ECUは、規定に従って計画した手順どおりに処理を進めていく。しかし、携帯キー及び車載通信部間の通信エラー及び電源の瞬断等の不測の事象が発生し、計画した手順を逸脱すると、車載機器が誤動作する原因となってしまう。
上述のように、複数の車載機器を制御するために複数のアプリケーションプログラムを含む制御プログラムでは、アプリケーションプログラム毎に処理を実行する順序が規定される場合がある。この場合、ECUは、規定される複数系列の処理の実行順序どおりに処理が進行しているかを監視し、実行順序の逸脱が生じた場合に、速やかに復旧できるようにしておく必要がある。
特許文献1には、IDレジスタ、ログレジスタ群、制御部及びウォッチドッグタイマを備える監視装置が記載されている。IDレジスタは、実行する処理タスクに付されている識別情報を格納する。識別情報には、自己のIDと、自己の処理タスクの前に実行されるべき処理タスクのID(以下、先行処理タスクのIDと表記する)とが含まれている。制御部は、実行する処理タスクの識別情報、及び前回実行された処理タスクの識別情報をレジスタに保持し、実行する処理タスクの識別情報における先行処理タスクのIDと、前回実行された処理タスクのIDとに基づいて、タスクの実行順序が正常であるか否かを監視する。ログレジスタ群は、ログ情報として識別情報及び監視結果情報を時系列に記憶する。プログラムの実行状態に異常が発生し、ウォッチドッグタイマによるタイムアウトが検出されると、ログレジスタ群に記憶したログ情報を記憶装置に退避することにより、退避したログ情報に基づいて異常発生の原因を迅速に究明できるというものである。
特開2010−009296号公報
しかしながら、特許文献1に記載の監視装置では、実行する処理タスクの識別情報、及び前回実行された処理タスクの識別情報をレジスタに保持して監視することによって、規定される一系列の処理の実行順序に従う監視を行うことができるものの、複数系列の処理手順を監視することはできないという問題点があった。
また、特許文献1に記載の監視装置では、各処理に付された識別情報が自己のID及び先行処理タスクのIDを含むため、識別情報のデータ長が大きくなり、各処理のプログラムを記憶しておくROM等における記憶領域が余計に必要となってしまう。各処理に付された識別情報が自己のID及び先行処理タスクのIDを含むため、監視にあたって、識別情報から、自己のID、先行処理タスクのIDを個々に抽出する必要があり、この抽出処理の分、処理時間が長くなってしまう。
また、特許文献1に記載の監視装置では、前回実行された処理に付された識別情報をレジスタに保持している。前回実行された処理に付された識別情報中の先行処理タスクのIDは、監視には不要であるにも関わらず保持されており、余分なレジスタが必要になってしまう。さらに、前回実行された処理に付された識別情報中の先行処理タスクのIDが監視には不要であることから、この不要な部分を削除する処理を追加した場合、レジスタは最小限にできるものの、削除処理の分、処理時間が長くなってしまう。
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、複数系列の実行順序を監視することができる制御装置及び処理監視方法を提供することにある。
本発明に係る制御装置は、機器の動作を制御する複数の処理を実行する実行部と、該実行部による前記処理の実行順序を監視する監視部と、該監視部による監視結果に基づいて所定のエラー処理を実行するエラー処理部とを備える制御装置において、複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶部を備え、前記実行部は、実行する前記処理に付された識別情報を出力する出力手段を備え、前記監視部は、前記記憶部に記憶された複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定手段と、前記出力手段から出力された識別情報が、前記特定手段により系列毎に特定された識別情報に一致するか否かを判定する判定手段と、該判定手段により一致しないと判定した場合に、前記エラー処理部へ通知する通知手段とを備え、前記記憶部は、前記実行順序情報として、系列毎に、複数の前記処理の実行順序に係る先頭及び末尾の順序番号を記憶し、前記出力手段は、実行する前記処理に付された識別情報としての順序番号を出力し、前記特定手段は、前記実行部が実行する処理の識別情報として、系列毎に、前記先頭の順序番号から前記末尾の順序番号までを順次繰り返し特定するようにしてあることを特徴とする。
本発明に係る制御装置は、機器の動作を制御する複数の処理を実行する実行部と、該実行部による前記処理の実行順序を監視する監視部と、該監視部による監視結果に基づいて所定のエラー処理を実行するエラー処理部とを備える制御装置において、複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶部を備え、前記実行部は、実行する前記処理に付された識別情報を出力する出力手段を備え、前記監視部は、前記記憶部に記憶された複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定手段と、前記出力手段から出力された識別情報が、前記特定手段により系列毎に特定された識別情報に一致するか否かを判定する判定手段と、該判定手段により一致しないと判定した場合に、前記エラー処理部へ通知する通知手段とを備え、前記記憶部、前記実行順序情報として、系列毎に、複数の前記処理の実行順序に係る先頭及び末尾の順序番号、並びに繰り返しの先頭の順序番号を記憶し、前記出力手段は、実行する前記処理に付された識別情報としての順序番号を出力し、前記特定手段は、前記実行部が実行する処理の識別情報として、系列毎に、前記先頭の順序番号から前記末尾の順序番号までを順次特定し、さらに前記繰り返しの先頭の順序番号から末尾の順序番号までを順次繰り返し特定するようにしてあることを特徴とする。
本発明に係る制御装置は、前記エラー処理部は、前記通知手段からの通知に基づき前記実行部へ処理の再起動を指令するようにしてあり、前記通知手段は、前記エラー処理部へ通知した後、前記実行部が前記先頭の実行順序が付された処理を実行するまで、前記エラー処理部への通知を停止するようにしてあることを特徴とする。
本発明に係る制御装置は、前記監視部は、前記出力手段から特定の識別情報が出力されたときに、前記処理が継続していることを示す信号を出力する信号出力手段を備え、前記信号が所定期間内に出力されなかった場合に前記実行部へ処理の再起動を通知する第2監視部を備えることを特徴とする。
本発明に係る制御装置は、機器の動作を制御する複数の処理を実行する実行部と、該実行部による前記処理の実行順序を監視する監視部と、該監視部による監視結果に基づいて所定のエラー処理を実行するエラー処理部とを備える制御装置において、複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶部を備え、前記実行部は、実行する前記処理に付された識別情報を出力する出力手段を備え、前記監視部は、前記記憶部に記憶された複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定手段と、前記出力手段から出力された識別情報が、前記特定手段により系列毎に特定された識別情報に一致するか否かを判定する判定手段と、該判定手段により一致しないと判定した場合に、前記エラー処理部へ通知する通知手段とを備え、前記記憶部は、前記機器の所定状態と、前記複数系列のうち該所定状態にて実行され得る前記処理の識別情報を含む系列とを対応づけて記憶しており、前記特定手段は、前記機器が前記所定状態となったときに、前記所定状態と対応づけて前記記憶部に記憶してある系列に係る実行順序情報に基づき前記実行部が実行する処理の識別情報を特定するようにしてあることを特徴とする。
本発明に係る処理監視方法は、機器の動作を制御する複数の処理を実行部により実行し、該実行部による前記処理の実行順序を監視し、監視した結果に基づいて所定のエラー処理を実行するエラー処理部へ通知する処理監視方法において、複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶ステップと、前記実行部により実行する前記処理に付された識別情報を出力する出力ステップと、前記記憶ステップにより記憶した複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定ステップと、前記出力ステップから出力された識別情報が、前記特定ステップにより系列毎に特定された識別情報に一致するか否かを判定する判定ステップと、該判定ステップにより一致しないと判定した場合に、前記エラー処理部へ通知する通知ステップとを備え、前記記憶ステップは、前記実行順序情報として、系列毎に、複数の前記処理の実行順序に係る先頭及び末尾の順序番号を記憶し、前記出力ステップは、実行する前記処理に付された識別情報としての順序番号を出力し、前記特定ステップは、前記実行部が実行する処理の識別情報として、系列毎に、前記先頭の順序番号から前記末尾の順序番号までを順次繰り返し特定することを特徴とする
本発明に係る処理監視方法は、機器の動作を制御する複数の処理を実行部により実行し、該実行部による前記処理の実行順序を監視し、監視した結果に基づいて所定のエラー処理を実行するエラー処理部へ通知する処理監視方法において、複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶ステップと、前記実行部により実行する前記処理に付された識別情報を出力する出力ステップと、前記記憶ステップにより記憶した複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定ステップと、前記出力ステップから出力された識別情報が、前記特定ステップにより系列毎に特定された識別情報に一致するか否かを判定する判定ステップと、該判定ステップにより一致しないと判定した場合に、前記エラー処理部へ通知する通知ステップとを備え、前記記憶ステップは、前記実行順序情報として、系列毎に、複数の前記処理の実行順序に係る先頭及び末尾の順序番号、並びに繰り返しの先頭の順序番号を記憶し、前記出力ステップは、実行する前記処理に付された識別情報としての順序番号を出力し、前記特定ステップは、前記実行部が実行する処理の識別情報として、系列毎に、前記先頭の順序番号から前記末尾の順序番号までを順次特定し、さらに前記繰り返しの先頭の順序番号から末尾の順序番号までを順次繰り返し特定することを特徴とする
本発明にあっては、記憶部に複数の処理に付された識別情報に基づく複数系列の実行順序情報を記憶し、実行部では、出力手段により実行する処理に付された識別情報を出力する。監視部では、特定手段により、記憶部に記憶された複数系列の実行順序情報に基づき実行部が実行する処理の識別情報を系列毎に特定し、判定手段により、出力手段から出力された識別情報が、特定手段により系列毎に特定された識別情報に一致するか否かを判定する。通知手段は、判定手段により一致しないと判定した場合に、エラー処理部へ通知する。これにより、複数系列の実行順序が規定される場合に、系列毎に実行順序の監視を行うことができる。
本発明にあっては、記憶部は、実行順序情報として、系列毎に、複数の処理の実行順序に係る先頭及び末尾の順序番号を記憶し、出力手段は、実行する処理に付された識別情報としての順序番号を出力する。特定手段は、実行部が実行する処理の識別情報として、系列毎に、先頭の順序番号から末尾の順序番号までを順次繰り返し特定する。これにより、記憶部に記憶する実行順序情報が、複数系列の実行順序に係る先頭及び末尾の順序番号であるため、記憶しておく実行順序情報のデータ量を少なくすることができる。
本発明にあっては、記憶部は、実行順序情報として、系列毎に、複数の処理の実行順序に係る先頭及び末尾の順序番号、並びに繰り返しの先頭の順序番号を記憶し、出力手段は、実行する処理に付された識別情報としての順序番号を出力する。特定手段は、実行部が実行する処理の識別情報として、系列毎に、先頭の順序番号から末尾の順序番号までを順次特定し、さらに繰り返しの先頭の順序番号から末尾の順序番号までを順次繰り返し特定する。これにより、繰り返しの先頭の順序番号を処理開始時の先頭の順序番号と異なるように定める実行順序の規定に基づいて、処理の監視を行うことができる。
本発明にあっては、エラー処理部は、通知手段からの通知に基づき実行部へ処理の再起動を指令するようにしてあり、通知手段は、エラー処理部へ通知した後、実行部が先頭の実行順序が付された処理を実行するまで、エラー処理部への通知を停止する。これにより、処理が再起動されるまでに、繰り返し実行順序の誤りが発生して再起動が遅延することを防ぐことができる。
本発明にあっては、監視部は、出力手段から特定の識別情報が出力されたときに、信号出力手段により、処理が継続していることを示す信号を出力する。第2監視部は、信号出力手段から信号が所定期間内に出力されなかった場合に実行部へ処理の再起動を通知する。これにより、処理が何らかの理由で止まってしまった場合に、処理をリセットすることができる。
本発明にあっては、記憶部は、機器の所定状態と、複数系列のうち該所定状態にて実行され得る処理の識別情報を含む系列とを対応づけて記憶しており、特定手段は、機器が所定状態となったときに、所定状態と対応づけて記憶部に記憶してある系列に係る実行順序情報に基づき実行部が実行する処理の識別情報を特定する。これにより、機器が所定状態である場合に実行されない処理に対する実行順序の監視を行わないようにすることができる。
本発明によれば、記憶部に複数の処理に付された識別情報に基づく複数系列の実行順序情報を記憶し、実行部では、出力手段により実行する処理に付された識別情報を出力する。監視部では、特定手段により、記憶部に記憶された複数系列の実行順序情報に基づき実行部が実行する処理の識別情報を系列毎に特定し、判定手段により、出力手段から出力された識別情報が、特定手段により系列毎に特定された識別情報に一致するか否かを判定する。通知手段は、判定手段により一致しないと判定した場合に、エラー処理部へ通知する。このため、複数系列の実行順序が規定される場合に、系列毎に実行順序の監視を行うことができる。
本発明の実施の形態1に係る制御装置の構成を示すブロック図である。 図1の処理スケジュール部による制御プログラムの処理スケジュールについて説明するための模式図である。 規定される複数系列の実行順序について説明するための模式図である。 処理に付された識別情報に基づく複数系列の実行順序情報を示す図表である。 監視部による実行順序の監視処理の手順を示すフローチャートである。 本発明の実施の形態2に係る制御装置において規定される複数系列の実行順序について説明するための模式図である。 処理に付された識別情報に基づく複数系列の実行順序情報を示す図表である。 エラー処理時において監視し続ける場合の監視処理について説明するための模式図である。 本発明の実施の形態3に係る監視部による実行順序の監視処理の手順を示すフローチャートである。 エラー処理時の監視処理について説明するための模式図である。 エラー処理時の監視処理について説明するための模式図である。 本発明の実施の形態4に係る制御装置の構成を示すブロック図である。 規定される実行順序について説明するための模式図である。 ウォッチドッグ監視部への出力信号の設定を説明するための模式図である。 ウォッチドッグ監視部へ信号出力する処理の手順を示すフローチャートである。 本発明の実施の形態5に係る制御装置において機器の所定状態に対する実施され得る処理系列について説明するための模式図である。
(実施の形態1)
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。図1は、本発明の実施の形態1に係る制御装置100の構成を示すブロック図であり、図2は、図1の処理スケジュール部22による制御プログラムの処理スケジュールについて説明するための模式図であり、図3は、規定される複数系列の実行順序について説明するための模式図であり、図4は、処理に付された識別情報に基づく複数系列の実行順序情報70を示す図表である。本実施形態では、制御装置100が車載制御装置である例を示す。制御装置100は、接続される車載機器8に対する制御を行い、車載LANを介して通信接続された他の制御装置100との間で情報を交換し、他の制御装置100に接続された車載機器8の制御を行う。制御装置100は、マイクロコンピュータ(以下、マイコンと表記する)10、一時記憶部11、記憶部12、入出力インタフェース(以下、入出力I/Fと表記する)13、及び通信インタフェース(以下、通信I/Fと表記する)14を備える。制御装置100は、入出力I/F13に接続された車載機器8、例えば、車内照明、ヘッドライト、警報器、ドアロック機構、メータ類、カーナビゲーション装置等を制御する。
マイコン10は、実行部20、監視部30、及びエラー処理部40を備える。実行部20は、例えば、演算処理を行うCPU(Central Processor Unit)等で構成し、記憶部12に予め記憶された制御プログラム60を読み出して実行することにより、入出力I/F13に接続された車載機器8の制御を行う。記憶部12は、例えばEEPROM(Electrically Erasable Programmable ROM)等の書換え可能な不揮発性のメモリ素子で構成される。記憶部12には、制御プログラム60、及び処理の実行順序情報70等が予め記憶されている。実行部20は、制御処理を行う過程の演算などにおいて発生した一時的なデータを一時記憶部11に記憶しながら処理を進める。一時記憶部11は、SRAM(Static Random Access Memory)又はDRAM(Dynamic Random Access Memory)等のメモリ素子で構成されており、実行部10の処理過程で発生する種々のデータ等を一時的に記憶する。
入出力I/F13は、実行部20から与えられた制御信号などを車載機器8へ出力すると共に、車載機器8から入力された情報を実行部20へ与える。通信I/F14は、他の制御装置100に車載LANを介して接続されており、CAN(Controller Area Network)などのプロトコルに従って他の制御装置100とデータの送受信を行う。通信I/F14は、実行部20から与えられたデータを送信し、他の制御装置100から受信したデータを実行部20へ与える。これにより制御装置100は、他の制御装置100に接続された車載機器8から得られる情報を通信I/F14の通信によって取得することができると共に、他の制御装置100に接続された車載機器8への制御信号などを送信して制御することもできる。
実行部20は、処理部21及び処理スケジュール部22を備える。処理部21は、制御プログラム60を構成する複数の処理を順次実行し、車載機器8を制御する。処理部21は、処理過程で生じたデータを一時記憶部11に記憶する。処理スケジュール部22は、入出力I/F13から入力されるセンサ情報及びスイッチ操作信号、及び通信I/F14から入力される他の制御装置100からの制御信号等に基づいて、車載機器8を動作させる複数の処理を実行する処理スケジュールを計画する。
処理スケジュール部22は、例えば図2に示すような処理スケジュールを計画する。制御プログラム60は、複数の車載機器8を制御するために、制御アプリケーションプログラム(以下、制御アプリと表記する)A61、制御アプリB62、及び制御アプリC63等によって構成されている。各制御アプリは、夫々複数の処理によって構成されており、上述のスマートキーレスエントリを実現する制御プログラムのように、処理の実行順序が規定されている。処理の実行順序は、全ての処理に対して規定されていてもよいし、一部の処理に対して規定されていてもよい。実行順序が規定される処理には識別情報IDが付加するものとし、実行順序が規定されない処理には実行順序監視用の識別情報IDは付加されない。
例えば、図3に示すように、制御アプリA61では、処理A01から開始し、処理A02、処理A03、処理A04の順序で実行され、処理A04が実行された後は、処理A01に戻って同じ順序で繰り返し実行しなければならないとする実行順序の規定を設ける。実行順序が規定されている処理A01から処理A04には夫々、識別情報IDとして01から04を付加する。一方、実行順序が規定されていない処理A05及び処理A06には、実行順序監視用の識別情報IDを付加していない。同様に、制御アプリB62についても、処理B01から開始し、処理B02、処理B03の順序で実行され、処理B03が実行された後は、処理B01に戻って同じ順序で繰り返し実行しなければならないとする実行順序の規定を設ける。実行順序が規定されている処理B01から処理B03には夫々、識別情報IDとして05から07を付加する。一方、実行順序が規定されていない処理B04には、実行順序監視用の識別情報IDを付加していない。
処理スケジュール部22は、制御アプリA61に係る処理と、制御アプリB62に係る処理とを混在して順次実行するスケジュールを計画する(図2参照)。処理スケジュール部22は、制御アプリA61に係る処理だけに着目すると、処理A01から処理A04の順序で規定どおりに実行されるように計画する。また、処理スケジュール部22は、制御アプリB62に係る処理だけに着目すると、処理B01から処理B03の順序で規定どおりに実行されるように計画する。
実行順序が規定される複数の処理に付される識別情報は、系列毎に、昇順または降順に増分値C(Cは整数)が一定である、整数値による番号の群とするのが好適である。ただし、全ての識別情報は、一意に定めるものとし重複がないようにする。図2に示す例では、増分値Cを1とし、識別情報は「01」から始まる昇順の番号としており、具体的には、01、02、03、04、05、06、07、・・・のように番号の群を作成し、識別情報とする。そして、制御アプリA61において実行順序が規定される処理の系列である処理A01から処理A04について、夫々の識別情報IDを01から04とする。また、制御アプリB62において実行順序が規定される処理の系列である処理B01から処理B03について、夫々の識別情報IDを05から07とする。なお、系列が異なれば識別情報IDを不連続にしてもよい。即ち、処理B01から処理B03について、識別情報IDを11から13などとしてもよい。なお、実行順序が規定されない処理(処理A05、処理A06、処理B04)には実行順序監視用の識別番号を付加していない。また、増分値Cは、系列毎に異なる値であってもよい。
処理に付された識別情報に基づく複数系列の実行順序に係る情報は、実行順序情報70として記憶部12に記憶しておく。図4に示すように、実行順序情報70は、実行順序が規定される系列毎に繰り返しループの先頭のID及び末尾のID、並びに系列番号を含む情報とする。即ち、実行順序情報70は、制御アプリA61について、先頭IDである「01」と末尾IDである「04」を情報として有し、制御アプリB62について、先頭IDである「05」と末尾IDである「07」を情報として有する。
処理部21は、処理スケジュール部22が計画した処理スケジュールに基づいて順次処理を行う。処理スケジュール部22はID通知部22aを有する。ID通知部22aは実行する処理の識別情報を取得し、監視部30へ通知する。
監視部30は、予定ID特定部31、ID判定部32及び対応決定部33を備える。予定ID特定部31は、記憶部12に記憶されている実行順序情報70に基づいて、実行順序上、次に実行される予定の処理の識別情報IDを特定する。図3及び図4に示すように、実行順序は系列毎に規定されているので、監視部30側では実行部20がいずれの系列の処理を実行するか判らない。そこで、予定ID特定部31は、系列毎に実行する処理の識別情報を特定する。具体的には、予定ID特定部31は、最初に、制御アプリA61の系列について先頭IDである「01」、及び制御アプリB62の系列について先頭IDである「05」の2つの識別情報IDを、実行予定IDとして特定する。予定ID特定部31は、特定した系列毎の実行予定IDをID判定部32へ出力する。さらに、予定ID判定部31は、系列毎に増分値Cを実行予定IDに加算し、次々に実行予定IDを特定する処理を行い、系列毎に、末尾IDまで特定が終わると再び先頭IDを特定する。
ID判定部32は、ID通知部22aから通知されてくる識別情報IDと、予定ID特定部31から入力された系列毎の識別情報IDのいずれかと一致するか否かを判定する。ID判定部32は一致すると判定した場合、一致した識別情報IDを予定ID特定部31へ出力する。予定ID特定部31は、ID判定部32から入力される識別情報IDが含まれる系列において、特定している実行予定IDに増分値Cを加算し、新たな実行予定IDとして、ID判定部32へ出力する。一方、ID判定部32は一致しないと判定した場合には、対応決定部33へ、ID通知部22aから通知されてきた識別情報IDを出力する。
対応決定部33は、ID判定部32から識別情報IDを取得すると、該識別情報IDが制御アプリA61又は制御アプリB62のいずれの系列の処理であるかを特定し、系列番号及び識別情報IDをエラー処理部40へ通知する。例えば、ID判定部32から取得した識別情報IDが「06」であったとすると、実行順序情報70に基づき、系列番号2の系列で実行順序エラーが発生していることが判るので、系列番号「2」及び識別情報ID「06」をエラー処理部40へ通知する。
エラー処理部40は、対応決定部33から入力される系列番号及び識別情報IDに基づいて、予め定めてある所定のエラー処理を行う。所定のエラー処理には、例えば、実行中の処理データを退避する処理、制御アプリによる処理を最初から再起動するリセット処理などがある。
次に、監視部30による実行順序の監視処理について説明する。図5は、監視部30による実行順序の監視処理の手順を示すフローチャートである。制御装置100は、最初に起動されるときには各部で用いるデータがプリセット値等に設定される。制御装置100起動時に、監視部30は、予定ID特定部31にて複数の系列毎に先頭IDを実行順序情報70から読み込み、実行予定IDとしてID判定部32へ出力し、監視処理を開始する。
監視部30は、ID判定部32により、ID通知部22aから通知される、実行する処理の識別情報IDを取得する(ステップS01)。ID判定部32は、ID通知部22aから取得した識別情報IDが、予定ID特定部31から入力された系列毎の実行予定IDのいずれかと一致するか否かを判定する(ステップS02)。ID判定部32は、一致しないと判定した場合(S02:NO)、ID通知部22aから通知されてきた識別情報IDを対応決定部33へ出力し、対応決定部33は、ID判定部32から識別情報IDを取得すると、該識別情報IDの処理が属する制御アプリの系列を特定する(ステップS03)。対応決定部33は、特定した系列の系列番号及び取得した識別情報IDをエラー処理部40へ通知し(ステップS04)、ID通知部22aから通知された1つの識別情報IDに対する監視処理が終了する。なお、エラー処理部40では、対応決定部33から入力される系列番号及び識別情報IDに基づいて、予め定めてある所定のエラー処理が行われる。
例えば、予定ID特定部31がID判定部32へ出力した実行予定IDが、制御アプリA61の系列で「01」、制御アプリB62の系列で「05」である場合に、ID判定部32がID通知部22aから取得した識別情報IDが「06」であったとする。このとき、ID判定部32は、ID通知部22aから取得した識別情報IDが系列毎のいずれの実行予定IDとも一致しないと判定し、ID通知部22aから取得した識別情報ID「06」を対応決定部33へ出力する。対応決定部33は、ID判定部32から識別情報ID「06」を取得すると、該識別情報IDの処理が属する系列の系列番号「2」を特定する。対応決定部33は、特定した系列番号「2」及び識別情報ID「06」をエラー処理部40へ通知する。
ID判定部32は、ステップS02において一致すると判定した場合(S02:YES)、一致した識別情報IDを予定ID特定部31へ出力する。予定ID特定部31は、ID判定部32から識別情報IDを取得すると、取得した識別情報IDが末尾IDであるか否かを判定する(ステップS05)。予定ID特定部31は、取得した識別情報IDが末尾IDでないと判定した場合(S05:NO)、識別情報IDが一致した系列の実行予定IDを、ID判定部32から取得した識別情報IDに増分値Cを加算した新たなIDに特定する(ステップS06)。一方、予定ID特定部31は、取得した識別情報IDが末尾IDであると判定した場合(S05:YES)、識別情報IDが一致した系列の実行予定IDを、先頭IDに特定する(ステップS07)。ステップS06及びステップS07による処理の後、新たに特定された実行予定IDが予定ID特定部31からID判定部32へ出力され、ID通知部22aから通知された1つの識別情報IDに対する監視処理が終了する。
例えば、予定ID特定部31がID判定部32へ出力した実行予定IDが、制御アプリA61の系列で「01」、制御アプリB62の系列で「05」である場合に、ID判定部32がID通知部22aから取得した識別情報IDが「01」であったとする。このとき、ID判定部32は、ID通知部22aから取得した識別情報IDが系列毎のいずれかの実行予定IDに一致すると判定し、ID通知部22aから取得した識別情報ID「01」を予定ID特定部31へ出力する。予定ID特定部31は、取得した識別情報ID「01」は末尾IDでないと判定し、識別情報IDが一致した制御アプリA61の系列の実行予定IDを、ID判定部32から取得した識別情報ID「01」に増分値C(=1)を加算した新たなID「02」に特定し、ID判定部32へ出力する。ID判定部32は、次にID通知部22aから通知されてくる識別情報IDに対する判定では、実行予定IDとして、制御アプリA61の系列で「02」、制御アプリB62の系列で「05」を用いることになる。
以上のように、本実施形態によれば、記憶部12に、複数系列の実行順序情報70を記憶しており、実行部20は、ID通知部22aにより実行する処理に付された識別情報IDを出力する。監視部30では、予定ID特定部31により、記憶部12に記憶された複数系列の実行順序情報70に基づき、系列毎に実行予定IDを特定する。ID判定部32は、ID通知部22aから通知された識別情報IDが、予定ID特定部31により系列毎に特定された実行予定IDに一致するか否かを判定し、一致しないと判定した場合にはエラー処理部40へ通知する。これにより、制御装置100は、複数系列の実行順序が規定される場合にも、系列毎に実行順序の監視を行うことができる。
また、本実施形態によれば、記憶部12は、複数系列の実行順序に係る先頭ID及び末尾IDを順序番号として記憶し、ID通知部22aは、実行する処理に付された識別情報IDとしての順序番号を出力する。監視部30では、予定ID特定部31により、実行予定IDとして、系列毎に先頭IDによる順序番号から末尾IDによる順序番号までを順次繰り返し特定する。これにより、記憶部12に記憶する実行順序情報が、複数系列の実行順序に係る先頭ID及び末尾IDであるため、記憶しておく実行順序情報のデータ量を少なくすることができる。
(実施の形態2)
実施の形態1においては、実行順序の規定は、先頭IDから末尾IDまでの処理が順次繰り返し実行されるというものであったが、繰り返しの先頭IDを処理開始時の先頭IDと異なるように定める実行順序の規定としてもよい。図6は、本発明の実施の形態2に係る制御装置100において規定される複数系列の実行順序について説明するための模式図であり、図7は、処理に付された識別情報に基づく複数系列の実行順序情報70を示す図表である。なお、実施の形態2における制御装置100は、以下に説明するほか、図1から図5に基づき説明した実施の形態1における制御装置100と同等であり、簡便のため説明を省略する。
制御アプリA61における処理A01から処理A04、及び制御アプリB62における処理B01から処理B03について規定される実行順序は、繰り返し先頭IDが定める実行順序としている。即ち、制御アプリA61において、最初に処理A01から処理A04の順で処理を実行した後、繰り返しの先頭IDである処理A02に戻り、処理A2から処理A04の順で繰り返し実行する。また、制御アプリB62において、最初に処理B01から処理B03の順で処理を実行した後、繰り返しの先頭IDである処理B03を繰り返し実行する。
上述の実行順序に係る実行順序情報70は、図7に示すように、系列毎に、先頭ID、繰返先頭ID、末尾ID及び系列番号を含むものであり、記憶部12に記憶しておく。監視部30における予定ID特定部31は、記憶部12から繰返先頭IDを読み出して用いる。具体的には、図5における監視処理にてステップS07で実行予定IDを繰返先頭IDに特定すればよい。
以上のように、本実施形態によれば、記憶部12は、複数系列の実行順序に係る先頭ID及び末尾ID、並びに繰返先頭IDとして順序番号を記憶する。予定ID特定部31は、実行予定IDとして、系列毎に、先頭IDによる順序番号から末尾IDの順序番号までを順次特定し、さらに繰返先頭IDによる順序番号から末尾IDによる順序番号までを順次繰り返し特定する。これにより、制御装置100において、繰り返しの先頭IDを処理開始時の先頭IDと異なるように定める実行順序の規定に基づいて、処理の監視を行うことができる。
具体的には、電源オンなどの特定の条件が成立したときにデータを初期化する処理を起動し、その後は周期的に各種データを取得する処理を実行するような場合に好適である。この場合、例えば、図6における処理A01がデータ初期化処理に、処理A02から処理A04までが周期的に各種データを取得する処理に対応する。
また、スリ−プ状態からの復帰処理など、特定の状況でのみ起動し、移行後は停止し続けるモード遷移処理にも好適である。この場合、例えば、図6における処理B01及び処理B02が特定条件化で起動する処理に、処理B03が停止処理に対応する。
(実施の形態3)
上述の各実施の形態においては、エラー処理部40によるエラー処理時においても監視部30は、処理の実行順序を監視し続けるようにしているが、リセット処理が完了するまでエラー処理部40への通知を禁止するようにしてもよい。図8は、エラー処理時において監視し続ける場合の監視処理について説明するための模式図である。制御アプリA61の処理A01から処理A04に対する実行順序の規定は、図6及び図7に示す繰り返し先頭IDを定めたものであるとする。
図8において、処理A02を実行した後に処理A04が実行されると、監視部30は、処理A03が実行されなかったという誤りが発生したため、エラー処理部40へ通知する。エラー処理部40は、監視部30からの通知に基づいて、最初のリセット処理要求を実行部20へ出力する。さらに監視部30により監視し続けると、処理A03が何らかの理由で実行されない状態となっている場合には、処理A02の実行後、先と同じように処理A04が実行される事象が再び発生し、監視部30は、再びエラー処理部40へ通知する。エラー処理部40は、監視部30からの通知に基づいて、2度目のリセット処理要求を実行部20へ出力してしまう。
図8に示すように最初のリセット処理要求により、処理A01から再起動したにも関わらず、2度目のリセット処理要求により、再度、処理A01から再起動することになり、処理遅延の原因になってしまう。
そこで、本実施の形態では、一時的に監視部30からエラー処理部40への通知を禁止することとする。図9は、本発明の実施の形態3に係る監視部による実行順序の監視処理の手順を示すフローチャートであり、図10及び図11は、エラー処理時の監視処理について説明するための模式図である。
図9により、監視部30による実行順序の監視処理について説明する。制御装置100は、最初に起動されるときには各部で用いるデータがプリセット値等に設定される。制御装置100起動時に、監視部30は、予定ID特定部31にて複数の系列毎に先頭IDを実行順序情報70から読み込み、実行予定IDとしてID判定部32へ出力し、監視処理を開始する。
監視部30は、ID判定部32により、ID通知部22aから通知される、実行する処理の識別情報IDを取得する(ステップS11)。ID判定部32は、ID通知部22aから取得した識別情報IDが、予定ID特定部31から入力された系列毎の実行予定IDのいずれかと一致するか否かを判定する(ステップS12)。ID判定部32は、一致しないと判定した場合(S12:NO)、ID通知部22aから通知されてきた識別情報IDを対応決定部33へ出力し、対応決定部33は、ID判定部32から識別情報IDを取得すると、該識別情報IDの処理が属する制御アプリの系列を特定する(ステップS13)。対応決定部33は、特定した系列に対するエラー通知禁止フラグが「1」であるか否かを判定する(ステップS14)。エラー通知禁止フラグが「1」である場合(S14:YES)、エラー処理部40へ通知することが禁止されており、ID通知部22aから通知された1つの識別情報IDに対する監視処理は終了する。なお、エラー通知禁止フラグは系列毎に設けられており、「0」または「1」の値をとる。エラー通知禁止フラグが「0」の場合には、監視部30からエラー処理部40へのエラー通知が可能であり、「1」の場合には、監視部30からエラー処理部40へのエラー通知が禁止されるものである。
ステップS14における判定の結果、エラー通知禁止フラグが「1」でない場合(S14:NO)、対応決定部33は、特定した系列の系列番号及び取得した識別情報IDをエラー処理部40へ通知する(ステップS15)。対応決定部33は、特定した系列のエラー通知禁止フラグを「1」に設定し(ステップS16)、予定ID特定部31へ、実行予定IDを先頭IDに特定するように指令する。予定ID特定部31は、指令に基づき特定した系列の実行予定IDを先頭IDに特定し(ステップS17)。ID通知部22aから通知された1つの識別情報IDに対する監視処理が終了する。なお、エラー処理部40では、対応決定部33から入力される系列番号及び識別情報IDに基づいて、予め定めてある所定のエラー処理が行われる。
ID判定部32は、ステップS12において一致すると判定した場合(S12:YES)、ID通知部22aから取得した識別情報IDを対応決定部33及び予定ID特定部31へ出力する。対応決定部33は、ID通知部22aから取得した識別情報IDがエラー通知禁止フラグが「1」の系列の先頭IDであるか否かを判定する(ステップS18)。対応決定部33は、エラー通知禁止フラグが「1」の系列の先頭IDであると判定した場合(S18:YES)、エラー通知禁止フラグを「0」に設定する(ステップS19)。これにより、以降のエラー処理部30への通知の禁止が解除されることになる。エラー通知禁止フラグが「1」の系列の先頭IDでない場合(S18:NO)、エラー通知禁止フラグはそのままとする。
ステップS18にてNOと判定した場合、及びステップS19による処理の後、予定ID特定部31は、ID判定部32から出力される識別情報IDを取得すると、取得した識別情報IDが末尾IDであるか否かを判定する(ステップS20)。予定ID特定部31は、取得した識別情報IDが末尾IDでないと判定した場合(S20:NO)、識別情報IDが一致した系列の実行予定IDを、ID判定部32から取得した識別情報IDに増分値Cを加算した新たなIDに特定する(ステップS21)。一方、予定ID特定部31は、取得した識別情報IDが末尾IDであると判定した場合(S20:YES)、識別情報IDが一致した系列の実行予定IDを、繰返先頭IDに特定する(ステップS22)。ステップS21及びステップS22による処理の後、新たに特定された実行予定IDが予定ID特定部31からID判定部32へ出力され、ID通知部22aから通知された1つの識別情報IDに対する監視処理が終了する。
上述の処理について、図10及び図11により具体例で説明する。図10における処理A02の実行後、処理A04が実行されると、ID判定部32は、処理A04の識別情報IDを対応決定部33に出力する。対応決定部33は、ステップS13より、取得した識別情報IDの系列番号を「1」に特定する。実行順序エラーが初めて生じたものとすると、エラー通知禁止フラグはどの系列についても「0」であるので、ステップS14の判定は「NO」となる。対応決定部33は、ステップS15によりエラー処理部40へ通知し、ステップS16により系列番号「1」のエラー通知禁止フラグを「1」に設定する。予定ID判定部31は、ステップS17により、系列番号「1」の実行予定IDを先頭IDに特定する。エラー処理部40は、通知に基づき系列番号「1」の処理につきリセット処理要求を実行部20へ出力しているものとする。
次にID通知部22aから、順に処理A02、処理A04の識別情報IDがID判定部32に出力されると、ID判定部32は、ステップS12により一致しないと判定し、ID通知部22aから通知された識別情報IDを対応決定部33へ出力する。対応決定部33は、取得した識別情報IDにより、系列番号を「1」と特定する。対応決定部33は、ステップS14の判定において、系列番号「1」のエラー通知禁止フラグが現在「1」であるため、エラー処理部40へ通知することなく、処理A02、処理A04に対する監視処理を終了する。
次に、実行部20による系列番号「1」の処理のリセットが完了し、ID通知部22aから、処理A01の識別情報IDがID判定部32に出力されると、ID判定部32は、ステップS12により一致すると判定し、ID通知部22aから通知された識別情報IDを対応決定部33及び予定ID特定部31へ出力する。対応決定部33は、ステップS18にて、取得した識別情報IDにより、エラー通知禁止フラグが「1」の系列の先頭IDであると判定し、ステップS19によりエラー通知禁止フラグを「0」に設定する。予定ID特定部31は、ステップS20により取得したIDが末尾IDであるか否かを判定する。取得したIDは処理A01に係る「01」であるので、末尾IDではないと判定し、ステップS21により、取得したIDに増分値C(=1)を加算して、新たな実行予定IDを特定する。特定した実行予定IDはID判定部32へ出力されて、処理A01に対する監視処理を終了する。この段階で、監視処理は、エラー通知禁止フラグが「0」に戻されて、エラー処理部40への通知が可能な通常の監視状態に戻っている。
この後、図11に示すように、再び処理A02の次に処理A04が実行されるという実行順序エラーが生じると、監視部30からエラー処理部40へ通知され、エラー処理部40は実行部20に対してリセット処理要求を出力する。
以上のように、本実施形態によれば、エラー処理部40は、対応決定部33からの通知に基づき実行部20へ処理の再起動を指令するようにしてあり、対応決定部33は、エラー処理部30へ通知した後、実行部20が先頭IDの実行順序が付された処理を実行するまで、エラー処理部40への通知を停止するようにしてあるので、処理が再起動されるまでに、繰り返し実行順序の誤りが発生して再起動が遅延することを防ぐことができる。
(実施の形態4)
本発明の実施の形態4においては、上述の各実施形態による制御装置100にさらにウォッチドッグ監視部50を付加する。図12は本発明の実施の形態4に係る制御装置100の構成を示すブロック図である。ウォッチドッグ監視部50は、自己への信号が所定期間内に監視対象から出力されなかった場合に実行部20へ処理の再起動を通知する。このウォッチドッグ監視部50への信号出力は監視部30から行う。なお、実施の形態4における制御装置100は、以下に説明するほか、上述の各実施形態における制御装置100と同等であり、簡便のため説明を省略する。
図13は、制御アプリA61について規定される実行順序について説明するための模式図であり、図14は、ウォッチドッグ監視部50への出力信号の設定を説明するための模式図である。例として、制御アプリA61について、処理A01から処理A04までを順次繰り返す実行順序が規定されているものとする。また、監視部30は、処理A01(識別情報ID01)が実行されるときに、ウォッチドッグ監視部50への出力信号を「0」に切り替え、処理A04(識別情報ID04)が実行されるときに、ウォッチドッグ監視部50への出力信号を「1」に切り替える。ここで、実行時にウォッチドッグ監視部50への出力値が切り替わる処理A01及び処理A04の識別情報IDを、ウォッチドッグ用IDと称すことにする。
ウォッチドッグ監視部50は、リセット信号の入力(詳細には入力信号の立ち上がり)によりリセットされる所定ビット数のカウンタ回路を有し、リセット信号が入力されずにカウンタ回路がオーバフローしたときに、実行部20へ処理の再起動を通知する。上述のウォッチドッグ用IDをもつ処理A04が実行されることにより、監視部30は、ウォッチドッグ監視部50にリセット信号を入力する。他の制御アプリB62等についても、同様に実行順序が規定され、ウォッチドッグ用IDを設定し、制御アプリ毎にウォッチドッグ監視部50による監視を行うようにしてもよい。以下、簡便のため制御アプリA61に対してウォッチドッグ監視部50を付加して監視する処理について説明する。
図15は、ウォッチドッグ監視部50へ信号出力する処理の手順を示すフローチャートである。上述の実施の形態1から3と同様に、ID判定部32は、ID通知部22aから実行する処理の識別情報IDを取得する(ステップS31)。ID判定部32は、ID通知部22aから取得した識別情報IDが実行予定IDと一致するか否かを判定するとともに、ID通知部22aから取得した識別情報IDがウォッチドッグ用IDのいずれかに一致するか否かを判定する(ステップS32)。ID判定部32は、ステップS32により一致すると判定した場合(S32:YES)、ID通知部22aから取得した識別情報IDをウォッチドッグ用として対応決定部33へ出力する。対応決定部33は、ID判定部32から取得した識別情報IDに対応する値の出力信号をウォッチドッグ監視部50へ出力し(ステップS33)、ID通知部22aから通知された1つの識別情報IDに対する監視処理を終了する。また、ID判定部32がステップS32により一致しないと判定した場合(S32:NO)、ID通知部22aから通知された1つの識別情報IDに対する監視処理を終了する。
具体例で説明すると、最初に、ID通知部22aから処理A01の識別情報ID04が通知されると、ID判定部32は、ステップS32の判定により、ウォッチドッグ用ID01に一致するので、対応決定部33へ識別情報ID01を出力する。対応決定部33は、識別情報ID01に対応する出力信号「0」を出力する。その後、処理A02及び処理A03が実行されると、ID判定部32は、ウォッチドッグ用IDに一致しないので、対応決定部33への出力は行わない。従って、対応決定部33からウォッチドッグ監視部50への出力は「0」のままとなる。
処理A04が実行され、ID通知部22aから処理A04の識別情報ID04が通知されると、ID判定部32は、ステップS32の判定により、ウォッチドッグ用ID04に一致するので、対応決定部33へ識別情報ID04を出力する。対応決定部33は、識別情報ID04に対応する出力信号「1」に切り替える。さらに、処理A01が実行され、ID通知部22aから処理A01の識別情報ID01が通知されると、ID判定部32は、ステップS32の判定により、ウォッチドッグ用ID01に一致するので、対応決定部33へ識別情報ID01を出力する。対応決定部33は、識別情報ID04に対応する出力信号「0」に切り替える。このように、処理A04の実行によって、対応決定部33は、ウォッチドッグ監視部50にリセット信号が出力する。制御アプリA61が何らかの理由で処理が止まってしまった場合には、対応決定部33はリセット信号を出力できなくなり、ウォッチドッグ監視部50は制御アプリA61の再起動を実行部20へ通知する。
以上のように、本実施形態においては、ID通知部22aから特定の識別情報IDが出力されたときに、対応決定部33は、処理が継続していることを示すリセット信号を出力し、リセット信号が所定期間内に出力されなかった場合には、ウォッチドッグ監視部50が実行部20へ処理の再起動を通知する。これにより、制御プログラムによる処理が何らかの理由で止まってしまった場合に、プログラムによる処理をリセットすることができる。
(実施の形態5)
本発明の実施の形態4では、上述の各実施形態に係る制御装置100において、接続されている車載機器8の状態により、実行され得る制御アプリに対する実行順序の監視を行い、実行されない制御アプリに対しては実行順序の監視を行わないようにする。図16は、本発明の実施の形態5に係る制御装置100において機器の所定状態に対する実施され得る処理系列について説明するための模式図である。
例えば、ドアロック機構、エンジンスイッチ等の車載機器8を制御する制御装置において、エンジンキーが挿入されていないときには、ドア制御プログラムは実行され得るが、エンジン始動制御プログラムが実行されることはない。図16には、制御アプリA61がドア制御プログラムであり、制御アプリB62がエンジン始動制御プログラムであるとしている。各制御アプリは、機器であるエンジンキーの所定状態(位置)によって、実行され得るか、実行されないかが決まる。実行され得る制御アプリについては処理の実行順序を監視し、実行されない制御アプリについては処理の実行順序の監視を行わない。
具体的には、エンジンキーが挿入されていない状態、OFFの位置にある状態、ACCの位置にある状態では、制御アプリA61の処理の実行順序を監視し、制御アプリB62の処理の実行順序は監視しない。また、エンジンキーがONの位置にある状態、STARTの位置にある状態では、制御アプリA61及び制御アプリB62の両方について、処理の実行順序を監視する。エンジンキーの各状態は、エンジンキーが挿入されていることを検出するスイッチ、及びエンジンキーが回転されて各位置にあることを検出するスイッチからの信号が入出力I/F13に入力されることにより、検知することができる。
記憶部12には、図16に示すような、機器の所定状態と実行され得る処理系列との対応関係のテーブルを記憶しておく。該テーブルに基づいて、監視部30は、検知されたエンジンキーの各状態に対応して実行順序の監視を行う制御アプリを決定する。予定ID特定部31は、決定された実行順序の監視を行う制御アプリに係る処理の識別情報を特定するようにする。
以上のように、記憶部12は、車載機器8の所定状態と、複数系列のうち該所定状態にて実行され得る処理の識別情報を含む処理系列とを対応づけて記憶しており、予定ID特定部31は、車載機器8が所定状態となったときに、該所定状態と対応づけて記憶部12に記憶してある系列に係る実行順序情報に基づき、実行部20が実行する処理の識別情報IDを特定する。これにより、車載機器8が所定状態である場合に実行されない処理に対する実行順序の監視を行わないようにすることができる。
また、車載機器8の態に応じて実行順序の監視を行わないこととした制御アプリについては、該制御アプリに係る処理が実行されると異常状態であることになる。そこで、監視部30により、実行順序の監視を行わないこととした制御アプリに係る処理が実行されないかを監視するようにしてもよい。図16に示す具体例を用いて説明すると、エンジンキーがOFFの位置にあることが検出された状態で、制御アプリB62は実行順序の監視対象から外れるが、制御アプリB62の処理が実行されないか監視する。
例えば、処理B01(ID05)が実行されると、ID通知部22aから識別情報ID05がID判定部32に通知されるので、ID判定部32は、識別情報ID05が予定ID特定部31により特定された実行予定IDではないので、識別情報ID05を対応決定部33へ出力する。対応決定部33は、識別情報IDに基づき制御アプリB62の処理であることを特定すると、エラー処理部40へ、制御アプリB62の系列番号「2」と、異常処理の発生を通知する通知信号を出力する。エラー処理部40は、制御アプリB62のエラー処理を行うが、具体的には、制御アプリB62によるエンジン始動制御の停止を実行部20へ通知する。これにより、処理の実行順序の監視だけでなく、車載機器の状態に応じて、異常な処理が発生しないか監視することができる。
なお、以上の各実施形態において、各制御アプリに係る複数の処理の構成単位は、各制御アプリの構成や実行順序監視の実設計に合わせて、プログラム規模が小さい個々のプログラム部品(例えば、関数のような機能的に纏りがある処理)単位から、プログラム部品を組み合わせたタスク、又はプロシジャーなどのプログラム規模が大きい処理単位まで任意に選択することができる。
なお、開示された実施の形態は、全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上述の説明ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
100 制御装置
12 記憶部
20 実行部
22a ID通知部(出力手段)
30 監視部
31 予定ID特定部(特定手段)
32 ID判定部(判定手段)
33 対応決定部(通知手段、信号出力手段)
40 エラー処理部
50 ウォッチドッグ監視部(第2監視部)

Claims (7)

  1. 機器の動作を制御する複数の処理を実行する実行部と、該実行部による前記処理の実行順序を監視する監視部と、該監視部による監視結果に基づいて所定のエラー処理を実行するエラー処理部とを備える制御装置において、
    複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶部を備え、
    前記実行部は、実行する前記処理に付された識別情報を出力する出力手段を備え、
    前記監視部は、
    前記記憶部に記憶された複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定手段と、
    前記出力手段から出力された識別情報が、前記特定手段により系列毎に特定された識別情報に一致するか否かを判定する判定手段と、
    該判定手段により一致しないと判定した場合に、前記エラー処理部へ通知する通知手段と
    を備え
    前記記憶部は、前記実行順序情報として、系列毎に、複数の前記処理の実行順序に係る先頭及び末尾の順序番号を記憶し、
    前記出力手段は、実行する前記処理に付された識別情報としての順序番号を出力し、
    前記特定手段は、前記実行部が実行する処理の識別情報として、系列毎に、前記先頭の順序番号から前記末尾の順序番号までを順次繰り返し特定するようにしてあ
    ことを特徴とする制御装置。
  2. 機器の動作を制御する複数の処理を実行する実行部と、該実行部による前記処理の実行順序を監視する監視部と、該監視部による監視結果に基づいて所定のエラー処理を実行するエラー処理部とを備える制御装置において、
    複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶部を備え、
    前記実行部は、実行する前記処理に付された識別情報を出力する出力手段を備え、
    前記監視部は、
    前記記憶部に記憶された複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定手段と、
    前記出力手段から出力された識別情報が、前記特定手段により系列毎に特定された識別情報に一致するか否かを判定する判定手段と、
    該判定手段により一致しないと判定した場合に、前記エラー処理部へ通知する通知手段と
    を備え
    前記記憶部は、前記実行順序情報として、系列毎に、複数の前記処理の実行順序に係る先頭及び末尾の順序番号、並びに繰り返しの先頭の順序番号を記憶し、
    前記出力手段は、実行する前記処理に付された識別情報としての順序番号を出力し、
    前記特定手段は、前記実行部が実行する処理の識別情報として、系列毎に、前記先頭の順序番号から前記末尾の順序番号までを順次特定し、さらに前記繰り返しの先頭の順序番号から末尾の順序番号までを順次繰り返し特定するようにしてあ
    ことを特徴とする制御装置。
  3. 前記エラー処理部は、前記通知手段からの通知に基づき前記実行部へ処理の再起動を指令するようにしてあり、
    前記通知手段は、前記エラー処理部へ通知した後、前記実行部が前記先頭の実行順序が付された処理を実行するまで、前記エラー処理部への通知を停止するようにしてある
    ことを特徴とする請求項又は請求項に記載の制御装置。
  4. 前記監視部は、
    前記出力手段から特定の識別情報が出力されたときに、前記処理が継続していることを示す信号を出力する信号出力手段を備え、
    前記信号が所定期間内に出力されなかった場合に前記実行部へ処理の再起動を通知する第2監視部を備える
    ことを特徴とする請求項1から請求項のいずれか1つに記載の制御装置。
  5. 機器の動作を制御する複数の処理を実行する実行部と、該実行部による前記処理の実行順序を監視する監視部と、該監視部による監視結果に基づいて所定のエラー処理を実行するエラー処理部とを備える制御装置において、
    複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶部を備え、
    前記実行部は、実行する前記処理に付された識別情報を出力する出力手段を備え、
    前記監視部は、
    前記記憶部に記憶された複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定手段と、
    前記出力手段から出力された識別情報が、前記特定手段により系列毎に特定された識別情報に一致するか否かを判定する判定手段と、
    該判定手段により一致しないと判定した場合に、前記エラー処理部へ通知する通知手段と
    を備え
    前記記憶部は、前記機器の所定状態と、前記複数系列のうち該所定状態にて実行され得る前記処理の識別情報を含む系列とを対応づけて記憶しており、
    前記特定手段は、前記機器が前記所定状態となったときに、前記所定状態と対応づけて前記記憶部に記憶してある系列に係る実行順序情報に基づき前記実行部が実行する処理の識別情報を特定するようにしてあ
    ことを特徴とする制御装置。
  6. 機器の動作を制御する複数の処理を実行部により実行し、該実行部による前記処理の実行順序を監視し、監視した結果に基づいて所定のエラー処理を実行するエラー処理部へ通知する処理監視方法において、
    複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶ステップと、
    前記実行部により実行する前記処理に付された識別情報を出力する出力ステップと、
    前記記憶ステップにより記憶した複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定ステップと、
    前記出力ステップから出力された識別情報が、前記特定ステップにより系列毎に特定された識別情報に一致するか否かを判定する判定ステップと、
    該判定ステップにより一致しないと判定した場合に、前記エラー処理部へ通知する通知ステップと
    を備え
    前記記憶ステップは、前記実行順序情報として、系列毎に、複数の前記処理の実行順序に係る先頭及び末尾の順序番号を記憶し、
    前記出力ステップは、実行する前記処理に付された識別情報としての順序番号を出力し、
    前記特定ステップは、前記実行部が実行する処理の識別情報として、系列毎に、前記先頭の順序番号から前記末尾の順序番号までを順次繰り返し特定す
    ことを特徴とする処理監視方法。
  7. 機器の動作を制御する複数の処理を実行部により実行し、該実行部による前記処理の実行順序を監視し、監視した結果に基づいて所定のエラー処理を実行するエラー処理部へ通知する処理監視方法において、
    複数の前記処理に付された識別情報に基づく複数系列の実行順序情報を記憶する記憶ステップと、
    前記実行部により実行する前記処理に付された識別情報を出力する出力ステップと、
    前記記憶ステップにより記憶した複数系列の実行順序情報に基づき前記実行部が実行する処理の識別情報を系列毎に特定する特定ステップと、
    前記出力ステップから出力された識別情報が、前記特定ステップにより系列毎に特定された識別情報に一致するか否かを判定する判定ステップと、
    該判定ステップにより一致しないと判定した場合に、前記エラー処理部へ通知する通知ステップと
    を備え
    前記記憶ステップは、前記実行順序情報として、系列毎に、複数の前記処理の実行順序に係る先頭及び末尾の順序番号、並びに繰り返しの先頭の順序番号を記憶し、
    前記出力ステップは、実行する前記処理に付された識別情報としての順序番号を出力し、
    前記特定ステップは、前記実行部が実行する処理の識別情報として、系列毎に、前記先頭の順序番号から前記末尾の順序番号までを順次特定し、さらに前記繰り返しの先頭の順序番号から末尾の順序番号までを順次繰り返し特定す
    ことを特徴とする処理監視方法。
JP2011276395A 2011-12-16 2011-12-16 制御装置及び処理監視方法 Expired - Fee Related JP5861438B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2011276395A JP5861438B2 (ja) 2011-12-16 2011-12-16 制御装置及び処理監視方法
DE112012005257.9T DE112012005257T5 (de) 2011-12-16 2012-12-14 Steuereinrichtung und Prozessüberwachungsverfahren
PCT/JP2012/082440 WO2013089210A1 (ja) 2011-12-16 2012-12-14 制御装置及び処理監視方法
CN201280061808.XA CN104011688B (zh) 2011-12-16 2012-12-14 控制装置以及处理监控方法
US14/365,876 US9690269B2 (en) 2011-12-16 2012-12-14 Controller and process monitoring method including monitoring of process execution sequence

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011276395A JP5861438B2 (ja) 2011-12-16 2011-12-16 制御装置及び処理監視方法

Publications (2)

Publication Number Publication Date
JP2013127674A JP2013127674A (ja) 2013-06-27
JP5861438B2 true JP5861438B2 (ja) 2016-02-16

Family

ID=48612649

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011276395A Expired - Fee Related JP5861438B2 (ja) 2011-12-16 2011-12-16 制御装置及び処理監視方法

Country Status (5)

Country Link
US (1) US9690269B2 (ja)
JP (1) JP5861438B2 (ja)
CN (1) CN104011688B (ja)
DE (1) DE112012005257T5 (ja)
WO (1) WO2013089210A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5861438B2 (ja) * 2011-12-16 2016-02-16 株式会社オートネットワーク技術研究所 制御装置及び処理監視方法
CN104536870B (zh) * 2014-12-31 2018-05-04 北京奇虎科技有限公司 一种进程监控方法和装置
JP6434840B2 (ja) * 2015-03-30 2018-12-05 日立オートモティブシステムズ株式会社 電子制御装置
JP2017037606A (ja) * 2015-08-14 2017-02-16 富士電機株式会社 駆動制御システムおよび異常監視装置
US11237867B2 (en) 2018-04-27 2022-02-01 Mitsubishi Electric Corporation Determining an order for launching tasks by data processing device, task control method, and computer readable medium
CN109388563A (zh) * 2018-09-26 2019-02-26 北京广利核系统工程有限公司 安全可靠的核安全级dcs软件执行顺序监测方法和系统
JP2020184179A (ja) * 2019-05-08 2020-11-12 ファナック株式会社 加工制御システム及び加工システム
US11198437B2 (en) 2019-06-24 2021-12-14 GM Global Technology Operations LLC Method and apparatus for threat zone assessment
CN114270325B (zh) * 2019-08-30 2023-06-13 三菱电机株式会社 数据处理系统、数据处理装置、数据处理方法及存储有程序的计算机可读取记录介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3713095A (en) * 1971-03-16 1973-01-23 Bell Telephone Labor Inc Data processor sequence checking circuitry
JPS6032217B2 (ja) * 1979-04-02 1985-07-26 日産自動車株式会社 制御用コンピュ−タのフェィルセ−フ装置
US5341497A (en) * 1991-10-16 1994-08-23 Ohmeda Inc. Method and apparatus for a computer system to detect program faults and permit recovery from such faults
US6044458A (en) * 1997-12-12 2000-03-28 Motorola, Inc. System for monitoring program flow utilizing fixwords stored sequentially to opcodes
JP2000339197A (ja) * 1999-05-27 2000-12-08 Harness Syst Tech Res Ltd プログラム実行異常検出装置
JP4003420B2 (ja) * 2001-07-30 2007-11-07 株式会社ジェイテクト 演算装置
US6738831B2 (en) * 2001-12-12 2004-05-18 Intel Corporation Command ordering
CN100359481C (zh) * 2003-09-13 2008-01-02 华为技术有限公司 多任务系统的异常监控装置及其方法
US7424641B2 (en) * 2005-04-06 2008-09-09 Delphi Technologies, Inc. Control system and method for validating operation of the control system
CN101013969B (zh) * 2005-06-30 2010-07-28 华为技术有限公司 一种设备管理中处理任务的方法、系统及装置
US7882445B2 (en) * 2007-04-20 2011-02-01 National Instruments Corporation Configurable wires in a statechart
US7912623B2 (en) * 2007-09-25 2011-03-22 Denso Corporation Engine control system designed to manage schedule of engine control tasks
JP2009113618A (ja) * 2007-11-06 2009-05-28 Nsk Ltd 電動パワーステアリング装置
JP2010009296A (ja) 2008-06-26 2010-01-14 Fujitsu Ltd ソフトウェア動作監視装置およびソフトウェア動作監視方法
US8352795B2 (en) * 2009-02-11 2013-01-08 Honeywell International Inc. High integrity processor monitor
CN101562540B (zh) * 2009-05-08 2011-11-02 华为技术有限公司 业务监控方法及设备
JP5861438B2 (ja) * 2011-12-16 2016-02-16 株式会社オートネットワーク技術研究所 制御装置及び処理監視方法

Also Published As

Publication number Publication date
US9690269B2 (en) 2017-06-27
CN104011688B (zh) 2016-05-18
US20150134083A1 (en) 2015-05-14
CN104011688A (zh) 2014-08-27
WO2013089210A1 (ja) 2013-06-20
DE112012005257T5 (de) 2014-10-09
JP2013127674A (ja) 2013-06-27

Similar Documents

Publication Publication Date Title
JP5861438B2 (ja) 制御装置及び処理監視方法
JP6665728B2 (ja) 車載更新装置、車載更新システム及び通信装置の更新方法
US20180341476A1 (en) Software updating device, software updating system, and software updating method
CN111193649B (zh) 车辆通信系统及其控制方法
EP1975788B1 (en) Electronic control apparatus
EP3249534B1 (en) Vehicle control device
WO2019058607A1 (ja) 車載電子制御装置およびその異常時処理方法
US20180321929A1 (en) Method and system for software installation in a vehicle
US11340887B2 (en) Method for performing a software update in a control unit of a motor vehicle, and motor vehicle designed accordingly
US6848064B2 (en) Method and device for synchronizing a computing device and a monitoring circuit
JP5962697B2 (ja) 電子制御装置
JP2006253921A (ja) 車両用ネットワークシステム
CN108027756B (zh) 车辆用通信装置、记录有计算机程序的存储装置以及通信系统
US20170206139A1 (en) Vehicle infotainment system
US20150377204A1 (en) Vehicular electronic control unit
JP5880411B2 (ja) 情報処理装置
JP2017044483A (ja) 車両用電子制御装置
US11858441B2 (en) Control unit and method for activating a personal protection means of a vehicle
JP6344036B2 (ja) 車両用情報処理装置
US10514970B2 (en) Method of ensuring operation of calculator
JP5392058B2 (ja) 処理装置及び制御方法
US20220342653A1 (en) Ota master, center, system, update method, non-transitory storage medium, and vehicle
US20230398955A1 (en) In-vehicle use control system
JP2011100416A (ja) 車載電子制御装置およびメモリ制御方法
CN107662554B (zh) 用于提供车辆的至少一个特定车辆状态的方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140331

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150625

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150625

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151207

R150 Certificate of patent or registration of utility model

Ref document number: 5861438

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees