JP6660818B2 - 制御装置 - Google Patents

制御装置 Download PDF

Info

Publication number
JP6660818B2
JP6660818B2 JP2016116632A JP2016116632A JP6660818B2 JP 6660818 B2 JP6660818 B2 JP 6660818B2 JP 2016116632 A JP2016116632 A JP 2016116632A JP 2016116632 A JP2016116632 A JP 2016116632A JP 6660818 B2 JP6660818 B2 JP 6660818B2
Authority
JP
Japan
Prior art keywords
output
signal
cpu
watchdog timer
control device
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
JP2016116632A
Other languages
English (en)
Other versions
JP2017004530A (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.)
Central Japan Railway Co
Alps Alpine Co Ltd
Original Assignee
Alps Electric Co Ltd
Central Japan Railway Co
Alps Alpine Co 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 Alps Electric Co Ltd, Central Japan Railway Co, Alps Alpine Co Ltd filed Critical Alps Electric Co Ltd
Publication of JP2017004530A publication Critical patent/JP2017004530A/ja
Application granted granted Critical
Publication of JP6660818B2 publication Critical patent/JP6660818B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Safety Devices In Control Systems (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、制御装置に関し、特に、誤動作を低減することができる制御装置に関する。
従来から、制御装置の故障によって、制御装置が組み込まれる機器やシステムの誤作動を防止するために、制御装置に自己診断機能を付与し、この自己診断によって故障と診断した際には、その出力を停止させるようにすることが広く行なわれている。また、このような制御装置の故障診断として、ウォッチドッグタイマを用いて、制御装置の処理時間または処理周期を監視してこれが所定の範囲から外れた場合には故障と診断する技術が知られている。
また、故障した制御装置を補完するため、複数の制御ユニットやCPUを組み合わせて、故障検出精度の向上や、信頼性を確保する技術が提案されている。
特許文献1(従来例)の制御部900では、図13に示すように、複数の制御ユニットCPU901,CPU902を備えた制御システムにおける各制御ユニットに所定の同じ処理を行わせる。また、この処理結果を示す各出力データを、制御ユニットの外部に設けられたダミー出力比較回路980によって相互比較し、両者が不一致の場合に、少なくともいずれかの制御ユニットが故障であると診断する。ダミー出力比較回路980で異常が検出された際には、出力カット信号によってソレノイド駆動回路をカットして誤作動を防止する技術が開示されている。
特許第3343143号公報
しかしながら、上述した従来例では、異常が検出された際に出力カット信号によって制御装置からの信号がカットされてしまうため、制御装置が組み込まれる機器やシステムの動作を継続することができなくなってしまうという課題があった。
本発明は、上述した課題を解決するもので、異常が生じた場合でも機器の動作を停止することなく誤動作を低減することができる制御装置を提供することを目的とする。
この課題を解決するために、本発明の制御装置は、複数のCPUと、複数のウォッチドッグタイマと、を備え、前記複数のCPUは、それぞれ第1の信号を出力する出力ポートを有し、前記複数のウォッチドッグタイマは、前記複数のCPUと同数設けられ、前記複数のCPUに個別に接続され前記複数のCPUから出力された前記第1の信号を論理演算する論理回路を有し、前記論理回路は、前記複数のCPUに対応してそれぞれ配置される第1の演算素子と、前記複数のCPUに対して一つ配置される第2の演算素子と、を備え、前記複数のCPUに所定の同じ処理を行わせるとともに、前記第1の演算素子は、前記複数のCPUにそれぞれ接続された前記複数のウォッチドッグタイマから出力されるウォッチドッグタイマ出力信号と、前記複数のCPUのそれぞれの前記出力ポートから出力される前記第1の信号と、を論理演算して第2の信号として出力し、前記第2の演算素子は、複数の前記第1の演算素子から出力される複数の前記第2の信号を論理演算して制御信号として出力することを特徴とする。
これによれば、ウォッチドックタイマから出力されるウォッチドッグタイマ出力信号と、CPUから出力される第1の信号と、を第1の演算素子で論理演算することで、CPUに異常があった場合に異常があったCPU側の第1の信号をフェールセーフ側に固定することができる。更に複数のCPUからの第1の信号を、第2の演算素子で論理演算することで、複数の第1の信号から、フェールセーフ側信号または制御信号を継続して出力することができる。従って、異常が生じた場合でも機器の動作を停止することなく誤動作を低減することができる制御装置を提供することができる。
また、本発明の制御装置は、前記論理回路は、前記第1の演算素子と前記第2の演算素子の組合せが、論理和素子と論理積素子の組合せであり、前記ウォッチドッグタイマの出力は、CPUの動作異常を検出した場合に前記第1の演算素子の出力が不変となる極性で前記第1の演算素子に供給されることを特徴とする。
これによれば、論理回路は、第1の演算素子と第2の演算素子の組合せが、論理和素子と論理積素子の組合せで、ウォッチドッグタイマの出力は、CPUの動作異常を検出した場合に前記第1の演算素子の出力が不変となる極性で前記第1の演算素子に供給される。このためCPUの動作異常を検出した場合に、第1の演算素子の出力を固定することができる。第1の演算素子の出力を固定されるので、他のCPUが正常に動作している場合には第2の演算素子によって他のCPUから出力された信号に従った制御信号を出力することができる。また、CPUが制御する複数の機能に対して論理回路を設けることで、複数の機能に対して動作を停止することなく誤動作を低減することができる。
本発明の制御装置は、前記複数のCPUは、それぞれ第1の信号を出力する複数の出力ポートを有し、前記論理回路を複数有し、それぞれの前記ウォッチドッグタイマは、一つの前記CPUに接続されるとともに、複数の出力を有し、一つの前記ウォッチドッグタイマからの複数の前記ウォッチドッグタイマ出力信号が、複数の前記論理回路のそれぞれに個別に与えられるものとして構成できる。
また、本発明の制御装置は、前記論理回路のうち少なくともその1つは、前記第1の演算素子が論理和素子であるとともに、前記第2の演算素子が論理積素子であり、前記ウォッチドッグタイマは、CPUの動作異常を検出した場合に論理出力”1”を出力するよう動作することを特徴とする。
これによれば、論理回路のうち少なくともその1つは、第1の演算素子が論理和素子であり、CPUの動作異常を検出した場合に、ウォッチドッグタイマが論理出力”1”を出力するので、CPUが異常動作した場合に第1の演算素子の出力を”1”に固定することができる。第2の演算素子が論理積であるので、他のCPUが正常に動作している場合には他のCPUから出力された信号に従った制御信号を出力することができる。
また、本発明の制御装置は、前記論理回路のうち少なくともその1つは、前記第1の演算素子が論理積素子であるとともに、前記第2の演算素子が論理和素子であり、前記ウォッチドッグタイマは、CPUの動作異常を検出した場合に論理出力”0”を出力するよう動作することを特徴とする。
これによれば、CPUの動作異常を検出した場合に、ウォッチドッグタイマが論理出力”0”を出力し、第1の演算素子が論理積なので、CPUが異常動作した場合に第1の演算素子の出力を”0”に固定することができる。第2の演算素子が論理和であるので、他のCPUが正常に動作している場合には他のCPUから出力された信号に従った制御信号を出力することができる。
本発明の制御装置は、複数の前記ウォッチドッグタイマからのウォッチドッグタイマ出力信号を論理演算して第3の信号として出力する第3の演算素子と、前記第2の演算素子から出力される信号と、前記第3の信号を論理演算して制御信号を出力する第4の演算素子とを有するものである。
例えば、前記第3の演算素子と前記第4の演算素子が、共に論理積素子である。
あるいは、前記第3の演算素子が論理積素子であり、前記第4の演算素子が論理和素子である。
上記のように、第3の演算素子と第4の演算素子を設けることで、複数のCPUが共に動作異常であることを検出した場合に、制御信号を正負のいずれかに選択して設定することができる。
本発明の制御装置によれば、異常が生じた場合でも機器の動作を停止することなく誤動作を低減することができる制御装置を提供することができる。
本発明の第1実施形態に係る制御装置の構成を示すブロック図である。 本発明の第1実施形態に係る制御装置の動作説明図1である。 本発明の第1実施形態に係る制御装置の動作説明図2である。 本発明の第1実施形態に係る制御装置の動作説明図3である。 本発明の実施形態に係る制御装置の基本構成を示すブロック図である。 図5に示す実施形態を改良した本発明の第2実施形態に係る制御装置の動作説明図1である。 図5に示す実施形態を改良した本発明の第2実施形態に係る制御装置の動作説明図2である。 図5に示す実施形態を改良した本発明の第2実施形態に係る制御装置の動作説明図3である。 本発明の実施形態に係る制御装置の基本構成を示すブロック図である。 図9に示す実施形態を改良した本発明の第3実施形態に係る制御装置の動作説明図1である。 図9に示す実施形態を改良した本発明の第3実施形態に係る制御装置の動作説明図2である。 図9に示す実施形態を改良した本発明の第3実施形態に係る制御装置の動作説明図3である。 従来技術の制御部を示すブロック図である。
[第1実施形態]
以下に第1実施形態における制御装置100について説明する。
まず始めに本実施形態における制御装置100の構成について図1を用いて説明する。図1は制御装置100の構成を示すブロック図である。
制御装置100は、図1に示すように、複数のCPUと、複数のCPUと同数設けられた複数のウォッチドッグタイマ(図1ではWDTと表記)と、第1の論理回路30と、第2の論理回路31と、を備えている。尚、本実施形態では、複数のCPUは、第1CPU10と第2CPU11の2つのCPUであり、CPUと同数のウォッチドッグタイマは、第1ウォッチドッグタイマ20と第2ウォッチドッグタイマ21の2つのウォッチドックタイマである場合について説明する。
第1CPU10と第2CPU11は、それぞれ第1の信号を出力する複数の出力ポートを有している。具体的には、第1CPU10は第1の出力ポートP01と第2の出力ポートP02を有しており、第2CPU11は第1の出力ポートP11と第2の出力ポートP12を有している。尚、第1CPU10の第1の出力ポートP01から出力される第1の信号と、第2の出力ポートP02から出力される第1の信号と、は異なる信号である。また、第2CPU11の第1の出力ポートP11から出力される第1の信号と、第2の出力ポートP12から出力される第1の信号と、は異なる信号である。
第1CPU10と第2CPU11はそれぞれ、図示しないクロック回路及びプログラム記憶領域を含む記憶回路を有しており、クロック回路が発生するクロック信号に従ってプログラム領域に記憶されたプログラムに従って演算処理を行う。第1CPU10のクロック回路と第2CPU11のクロック回路は概ね同じ周波数のクロック信号を発生させる。また、第1CPU10と第2CPU11は、それぞれのプログラム記憶領域に同一動作のプログラムが記憶されており、所定の同じ処理を行う。
また、第1CPU10と第2CPU11には、それぞれCPUが演算処理を行う動作に対応して論理出力”1”としてのハイレベル信号と論理出力”0”としてのローレベル信号とを交互に出力する動作信号出力(φ1,φ2)を有している。第1CPU10が正常動作している場合には第1CPU10に備えられた動作信号出力φ1には所定の時間間隔で”1”と”0”とが交互に出力される。また第2CPU11が正常動作している場合には第2CPU10に備えられた動作信号出力φ2には所定の時間間隔で”1”と”0”とが交互に出力される。
また、外部装置50との通信手段を有しており、外部装置50からの信号の受信や外部装置50に対する信号の送信を行うことができる。
第1ウォッチドッグタイマ20と第2ウォッチドッグタイマ21は、第1CPU10と第2CPU11にそれぞれ接続されている。
第1ウォッチドッグタイマ20は、入力端子と2つの出力端子を有しており、入力端子は第1CPU10の動作信号出力φ1に接続される。また、2つの出力端子は、一方が入力された信号が所定の時間より長い間”1”または”0”の状態が継続した場合にウォッチドッグタイマ出力”1”を出力する正論理出力P1であり、他方が正論理出力P1と反転した信号を出力する負論理出力N1となっている。従って第1ウォッチドッグタイマ20の正論理出力P1は、CPUの動作異常を検出した場合に論理出力”1”を出力するよう動作し、負論理出力N1は、CPUの動作異常を検出した場合に論理出力”0”を出力するよう動作する。
第2ウォッチドッグタイマ21は、入力端子と2つの出力端子を有しており、入力端子は第2CPU11の動作信号出力φ2に接続される。また、2つ出力端子は、一方が入力された信号が所定の時間より長い間”1”または”0”の状態が継続した場合にウォッチドッグタイマ出力”1”を出力する正論理出力P2であり、他方が正論理出力P2と反転した信号を出力する負論理出力N2となっている。従って第2ウォッチドッグタイマ21の正論理出力P2は、CPUの動作異常を検出した場合に論理出力”1”を出力するよう動作し、負論理出力N2は、CPUの動作異常を検出した場合に論理出力”0”を出力するよう動作する。
第1の論理回路30は、第1CPU10の第1の出力ポートP01から出力される第1の信号と第2CPU11の第1の出力ポートP11から出力される第1の信号と論理演算する。
第1の論理回路30は、第1の演算素子と第2の演算素子の組合せが、論理積素子の組合せで構成されている。第1の演算素子は、第1の論理和素子30aと第2の論理和素子30bとが、2つのCPU(10,11)に対応してそれぞれ配置されるとともに、第2の演算素子は、第1の論理積素子30cが2つのCPU(10,11)に対して一つ配置されている。
第1の論理回路30に備えられた第1の演算素子の第1の論理和素子30aは、2つの入力端子と1つの出力端子を有している。一方の入力端子は第1CPU10の第1の出力ポートP01に接続され、他方の入力端子は第1ウォッチドッグタイマ20の正論理出力P1と接続されている。第1の論理和素子30aの出力には、第1CPU10の第1の出力ポートP01と第1ウォッチドッグタイマ20の正論理出力P1から出力されるウォッチドッグタイマ出力信号の論理和演算された結果が第2の信号として出力される。
第1の論理回路30に備えられた第1の演算素子の第2の論理和素子30bは、2つの入力端子と1つの出力端子を有している。一方の入力端子は第2CPU11の第1の出力ポートP11に接続され、他方の入力端子は第2ウォッチドッグタイマ21の正論理出力P2と接続されている。第2の論理和素子30bの出力には、第2CPU11の第1の出力ポートP11と第2ウォッチドッグタイマ21の正論理出力P2から出力されるウォッチドッグタイマ出力信号の論理和演算された結果が第2の信号として出力される。
第1の論理回路30に備えられた第2の演算素子の第1の論理積素子30cは、2つの入力端子と1つの出力端子を有している。一方の入力端子は第1の論理和素子30aの出力端子に接続され、他方の入力端子は第2の論理和素子30bの出力端子と接続されている。第1の論理積素子30cの出力には、第1の論理和素子30aから出力される第2の信号と第2の論理和素子30bの出力から出力される第2の信号の、2つの第2の信号が論理積演算された結果が制御信号として出力される。
第2の論理回路31は、第1CPU10の第2の出力ポートP02から出力される第1の信号と第2CPU11の第2の出力ポートP12から出力される第1の信号と論理演算する。
第2の論理回路31は、第1の演算素子と第2の演算素子の組合せが、論理積素子の組合せで構成されている。第1の演算素子は、第2の論理積素子31aと第3の論理積素子31bとが、2つのCPU(10,11)に対応してそれぞれ配置されとともに、第2の演算素子は、第3の論理和素子31cが2つのCPU(10,11)に対して一つ配置されている。
第2の論理回路31に備えられた第1の演算素子の第2の論理積素子31aは、2つの入力端子と1つの出力端子を有している。一方の入力端子は第1CPU10の第2の出力ポートP02に接続され、他方の入力端子は第1ウォッチドッグタイマ20の負論理出力N1と接続されている。第2の論理積素子31aの出力には、第1CPU10の第2の出力ポートP02と第1ウォッチドッグタイマ20の負論理出力N1から出力されるウォッチドッグタイマ出力信号の論理積演算された結果が第2の信号として出力される。
第2の論理回路31に備えられた第1の演算素子の第3の論理積素子31bは、2つの入力端子と1つの出力端子を有している。一方の入力端子は第2CPU11の第2の出力ポートP12に接続され、他方の入力端子は第2ウォッチドッグタイマ21の負論理出力N2と接続されている。第3の論理積素子31bの出力には、第2CPU11の第2の出力ポートP12と第2ウォッチドッグタイマ21の負論理出力N2から出力されるウォッチドッグタイマ出力信号の論理積演算された結果が第2の信号として出力される。
第2の論理回路31に備えられた第2の演算素子の第3の論理和素子31cは、2つの入力端子と1つの出力端子を有している。一方の入力端子は第2の論理積素子31aの出力端子に接続され、他方の入力端子は第3の論理積素子31bの出力端子と接続されている。第3の論理和素子31cの出力には、第2の論理積素子31aから出力される第2の信号と第3の論理積素子31bの出力から出力される第2の信号の、2つの第2の信号が論理和演算された結果が制御信号として出力される。
次に、制御装置100の動作について、図2から図4を用いて説明する。図2は制御装置100の動作説明図であり、第1CPU10及び第2CPU11が正常に動作している状態を説明する図である。図3は制御装置100の動作説明図であり、第1CPU10の動作が異常となった場合の動作を示す図である。図4は制御装置100の動作を示す図であり、第1CPU10及び第2CPU11の動作が異常となった場合の動作を示す図である。
最初に、制御装置100が正常に動作している状態について図2を用いて説明する。
第1CPU10と第2CPU11はそれぞれ、ほぼ同じタイミングで動作し、所定の同じ処理を行うように動作している。この状態では、第1CPU10に備えられた動作信号出力φ1と第2CPU11に備えられた動作信号出力φ2には、所定の時間間隔で”1”と”0”とが交互に出力される。
第1ウォッチドッグタイマ20は、第1CPU10の動作信号出力φ1から所定の時間間隔で”1”と”0”とが交互に入力されるため、第1ウォッチドッグタイマ20の正論理出力P1からは”0”が出力され、負論理出力N1からは”1”が出力される。
第2ウォッチドッグタイマ21は、第2CPU11の動作信号出力φ2から所定の時間間隔で”1”と”0”とが交互に入力されるため、第2ウォッチドッグタイマ21の正論理出力P2からは”0”が出力され、負論理出力N2からは”1”が出力される。
第1の論理回路30に備えられた第1の演算素子の第1の論理和素子30aは、一方の入力端子から第1CPU10の第1の出力ポートP01の出力信号が入力され、他方の入力端子は第1ウォッチドッグタイマ20の正論理出力P1からの出力信号が入力される。図2に示すように、第1ウォッチドッグタイマ20の正論理出力P1からは”0”が出力されているので、第1の論理和素子30aの出力には、第1CPU10の第1の出力ポートP01から出力される信号がそのまま第2の信号として出力されることになる。
第1の論理回路30に備えられた第1の演算素子の第2の論理和素子30bは、一方の入力端子から第2CPU11の第1の出力ポートP11の出力信号が入力され、他方の入力端子は第2ウォッチドッグタイマ21の正論理出力P1からの出力信号が入力される。図2に示すように、第2ウォッチドッグタイマ21の正論理出力P2からは”0”が出力されているので、第2の論理和素子30bの出力には、第2CPU11の第1の出力ポートP11から出力される信号がそのまま第2の信号として出力されることになる。
第1の論理回路30に備えられた第2の演算素子の第1の論理積素子30cは、一方の入力端子には第1の論理和素子30aから出力される第2の信号が入力され、他方の入力端子には第2の論理和素子30bから出力される第2の信号が入力される。従って、第1の論理積素子30cの出力には、第1CPU10の第1の出力ポートP01から出力される信号と、第2CPU11の第1の出力ポートP11から出力される信号が論理積演算された結果が制御信号として出力される。第1CPU10と第2CPU11とは、ほぼ同じタイミングで動作し、所定の同じ処理を行うように動作しているので、第1CPU10の第1の出力ポートP01と第2CPU11の第1の出力ポートP11とからは、同じ信号が出力されている。このため、第1の論理積素子30cからは、第1CPU10の第1の出力ポートP01または第2CPU11の第1の出力ポートP11と同じ信号が制御信号として出力されることとなる。
第2の論理回路31に備えられた第1の演算素子の第2の論理積素子31aは、一方の入力端子から第1CPU10の第2の出力ポートP02の出力信号が入力され、他方の入力端子は第1ウォッチドッグタイマ20の負論理出力N1からの出力信号が入力される。第1ウォッチドッグタイマ20の負論理出力N1からは”1”が出力されているので、第2の論理積素子31aの出力には、第1CPU10の第2の出力ポートP02から出力される信号がそのまま第2の信号として出力されることになる。
第2の論理回路31に備えられた第1の演算素子の第3の論理積素子31bは、一方の入力端子から第2CPU11の第2の出力ポートP12の出力信号が入力され、他方の入力端子は第2ウォッチドッグタイマ21の負論理出力N2からの出力信号が入力される。第2ウォッチドッグタイマ21の負論理出力N2からは”1”が出力されているので、第3の論理積素子31bの出力には、第2CPU11の第2の出力ポートP12から出力される信号がそのまま第2の信号として出力されることになる。
第2の論理回路31に備えられた第2の演算素子の第3の論理和素子31cは、一方の入力端子には第2の論理積素子31aから出力される第2の信号が入力され、他方の入力端子には第3の論理積素子31bから出力される第2の信号が入力される。従って、第3の論理和素子31cの出力には、第1CPU10の第2の出力ポートP02から出力される信号と、第2CPU11の第2の出力ポートP12から出力される信号が論理和演算された結果が制御信号として出力される。第1CPU10と第2CPU11とは、ほぼ同じタイミングで動作し、所定の同じ処理を行うように動作しているので、第1CPU10の第2の出力ポートP02と第2CPU11の第2の出力ポートP12とからは、同じ信号が出力されている。このため、第3の論理和素子31cからは、第1CPU10の第2の出力ポートP02または第2CPU11の第2の出力ポートP12と同じ信号が制御信号として出力されることとなる。
以上のように、制御装置100が正常に動作している場合には、第1CPU10の第1の出力ポートP01と第2CPU11の第1の出力ポートP11からは同じ第1の信号が出力される。2つの第1の信号を第1の論理回路30で演算した結果として、第1CPU10の第1の出力ポートP01及び第2CPU11の第1の出力ポートP11から出力される信号と同じ信号が制御信号として出力される。また、第1CPU10の第2の出力ポートP02と第2CPU11の第2の出力ポートP12からは同じ第1の信号が出力される。2つの第1の信号を第2の論理回路31で演算した結果として、第1CPU10の第2の出力ポートP02及び第2CPU11の第2の出力ポートP12から出力される信号と同じ信号が制御信号として出力される。結果的に出力される制御信号は、それぞれのCPU(10,11)にプログラムされた制御に従って出力された信号が正しく出力されることとなる。
次に、制御装置100の第1CPU10が正常に動作していない場合の動作について図3を用いて説明する。
第1CPU10が何らかの理由によって正常に動作できなくなった場合、第1CPU10に備えられた動作信号出力φ1には所定の時間間隔で”1”と”0”とが交互に出力されなくなる。尚、第2CPU11は正常に動作しており、第2CPU10に備えられた動作信号出力φ2には、所定の時間間隔で”1”と”0”とが交互に出力されている。
第1ウォッチドッグタイマ20は、第1CPU10の動作信号出力φ1から所定の時間間隔で”1”と”0”とが交互に入力されないため、第1ウォッチドッグタイマ20の正論理出力P1からは”1”が出力され、負論理出力N1からは”0”が出力される。
第2ウォッチドッグタイマ21は、第2CPU11の動作信号出力φ2から所定の時間間隔で”1”と”0”とが交互に入力されるため、第2ウォッチドッグタイマ21の正論理出力P2からは”0”が出力され、負論理出力N2からは”1”が出力される。
第1の論理回路30に備えられた第1の演算素子の第1の論理和素子30aは、一方の入力端子から第1CPU10の第1の出力ポートP01の出力信号が入力され、他方の入力端子は第1ウォッチドッグタイマ20の正論理出力P1からの出力信号が入力される。図3に示すように、第1ウォッチドッグタイマ20の正論理出力P1からは”1”が出力されているので、第1の論理和素子30aから出力される第2信号は、第1CPU10の第1の出力ポートP01からの出力に関わらず”1”に固定され不変となる。
第1の論理回路30に備えられた第1の演算素子の第2の論理和素子30bは、一方の入力端子から第2CPU11の第1の出力ポートP11の出力信号が入力され、他方の入力端子は第2ウォッチドッグタイマ21の正論理出力P1からの出力信号が入力される。第2ウォッチドッグタイマ21の正論理出力P2からは”0”が出力されているので、第2の論理和素子30bの出力には、第2CPU11の第1の出力ポートP11から出力される信号がそのまま第2の信号として出力されることになる。
第1の論理回路30に備えられた第2の演算素子の第1の論理積素子30cは、一方の入力端子には第1の論理和素子30aから出力される第2の信号が入力され、他方の入力端子には第2の論理和素子30bから出力される第2の信号が入力される。第1の論理和素子30aから出力される第1信号は”1”に固定されているので、第1の論理積素子30cの出力には、第2CPU11の第1の出力ポートP11から出力される信号が制御信号として出力されることとなる。
第2の論理回路31に備えられた第1の演算素子の第2の論理積素子31aは、一方の入力端子から第1CPU10の第2の出力ポートP02の出力信号が入力され、他方の入力端子は第1ウォッチドッグタイマ20の負論理出力N1からの出力信号が入力される。図3に示すように、第1ウォッチドッグタイマ20の負論理出力N1からは”0”が出力されているので、第2の論理積素子31aから出力される第2信号は、第1CPU10の第2の出力ポートP02からの出力に関わらず”0”に固定され不変となる。
第2の論理回路31に備えられた第1の演算素子の第3の論理積素子31bは、一方の入力端子から第2CPU11の第2の出力ポートP12の出力信号が入力され、他方の入力端子は第2ウォッチドッグタイマ21の負論理出力N2からの出力信号が入力される。第2ウォッチドッグタイマ21の負論理出力N2からは”1”が出力されているので、第3の論理積素子31bの出力には、第2CPU11の第2の出力ポートP12から出力される信号がそのまま第2の信号として出力されることになる。
第2の論理回路31に備えられた第2の演算素子の第3の論理和素子31cは、一方の入力端しには第2の論理積素子31aから出力される第2の信号が入力され、他方の入力端しには第3の論理積素子31bから出力される第2の信号が入力される。第2の論理積素子31aから出力される第1信号は”0”に固定されているので、第3の論理和素子31cの出力には、第2CPU11の第1の出力ポートP11から出力される信号が制御信号として出力されることとなる。
制御装置100の第1CPU10が正常に動作していない場合には、第1CPU10の第1の出力ポートP01から出力される第1の信号が正しい信号とは限らず、第2CPU11の第1の出力ポートP11から出力される第1の信号とも必ずしも一致しない。また、第1CPU10の第2の出力ポートP02から出力される第1の信号が正しい信号とは限らず、第2CPU11の第2の出力ポートP12から出力される第1の信号とも必ずしも一致しない。
しかし、第1CPU10の動作異常を検出した場合に第1ウォッチドッグタイマ20から出力されるウォッチドッグタイマ出力信号が、第1の論理回路30に備えられた第1の演算素子の第1の論理和素子30aの出力が不変となる極性となる”1”を供給する。このことによって、動作が異常となっている第1CPU10の第1の出力ポートP01から出力される信号が制御装置100の動作に影響を与えなくすることができる。また、第1CPU10の動作異常を検出した場合に第1ウォッチドッグタイマ20から出力されるウォッチドッグタイマ出力信号が、第2の論理回路31に備えられた第1の演算素子の第2の論理積素子31aの出力が不変となる極性となる”0”を供給する。このことによって、動作が異常となっている第1CPU10の第2の出力ポートP02から出力される信号が制御装置100の動作に影響を与えなくすることができる。
第1の論理回路30から出力される制御信号は、正常に動作している第2CPU11の第1の出力ポートP11の出力が制御信号として出力される。また、第2の論理回路31から出力される制御信号は、正常に動作している第2CPU11の第2の出力ポートP12の信号が制御信号として出力される。結果的に出力される制御信号は、正常に動作している第2CPU11にプログラムされた制御に従って出力された信号が正しく出力されることとなる。以上の動作は第1CPU10が正常に動作しており、第2CPU11が異常となった場合であっても同様となる。
次に、制御装置100の第1CPU10と第2CPU11がともに正常に動作していない場合の動作について図4を用いて説明する。
第1CPU10が何らかの理由によって正常に動作できなくなった場合、第1CPU10に備えられた動作信号出力φ1には所定の時間間隔で”1”と”0”とが交互に出力されなくなる。また、第2CPU11も何らかの理由によって正常に動作できなくなった場合、第2CPU10に備えられた動作信号出力φ2も所定の時間間隔で”1”と”0”とが交互に出力されなくなる。
第1ウォッチドッグタイマ20は、第1CPU10の動作信号出力φ1から所定の時間間隔で”1”と”0”とが交互に入力されないため、第1ウォッチドッグタイマ20の正論理出力P1からは”1”が出力され、負論理出力N1からは”0”が出力される。
第2ウォッチドッグタイマ21は、第2CPU11の動作信号出力φ2から所定の時間間隔で”1”と”0”とが交互に入力されないため、第2ウォッチドッグタイマ21の正論理出力P2からは”1”が出力され、負論理出力N2からは”0”が出力される。
第1の論理回路30に備えられた第1の演算素子の第1の論理和素子30aは、一方の入力端子から第1CPU10の第1の出力ポートP01の出力信号が入力され、他方の入力端子は第1ウォッチドッグタイマ20の正論理出力P1からの出力信号が入力される。図4に示すように、第1ウォッチドッグタイマ20の正論理出力P1からは”1”が出力されているので、第1の論理和素子30aから出力される第2信号は、第1CPU10の第1の出力ポートP01からの出力に関わらず”1”に固定され不変となる。
第1の論理回路30に備えられた第1の演算素子の第2の論理和素子30bは、一方の入力端子から第2CPU11の第1の出力ポートP11の出力信号が入力され、他方の入力端子は第2ウォッチドッグタイマ21の正論理出力P2からの出力信号が入力される。図4に示すように、第2ウォッチドッグタイマ21の正論理出力P2からは”1”が出力されているので、第2の論理和素子30bから出力される第2信号は、第2CPU11の第1の出力ポートP11からの出力に関わらず”1”に固定され不変となる。
第1の論理回路30に備えられた第2の演算素子の第1の論理積素子30cは、一方の入力端子には第1の論理和素子30aから出力される第2の信号が入力され、他方の入力端子には第2の論理和素子30bから出力される第2の信号が入力される。第1の論理和素子30aから出力される第1信号は”1”に固定されており、第2の論理和素子30bから出力される第1信号も”1”に固定されている。従って、第1の論理積素子30cの出力は、第1CPU10及び第2CPU11の第1の出力ポートP01、P11から出力される信号に関わらず”1”が制御信号として出力されることとなる。
第2の論理回路31に備えられた第1の演算素子の第2の論理積素子31aは、一方の入力端子から第1CPU10の第2の出力ポートP02の出力信号が入力され、他方の入力端子は第1ウォッチドッグタイマ20の負論理出力N1からの出力信号が入力される。図4に示すように、第1ウォッチドッグタイマ20の負論理出力N1からは”0”が出力されているので、第2の論理積素子31aから出力される第2信号は、第1CPU10の第2の出力ポートP02からの出力に関わらず”0”に固定され不変となる。
第2の論理回路31に備えられた第1の演算素子の第3の論理積素子31bは、一方の入力端子から第2CPU11の第2の出力ポートP12の出力信号が入力され、他方の入力端子は第2ウォッチドッグタイマ21の負論理出力N2からの出力信号が入力される。図4に示すように、第2ウォッチドッグタイマ21の負論理出力N2からは”0”が出力されているので、第3の論理積素子31bから出力される第2信号は、第2CPU11の第2の出力ポートP12からの出力に関わらず”0”に固定され不変となる。
第2の論理回路31に備えられた第2の演算素子の第3の論理和素子31cは、一方の入力端しには第2の論理積素子31aから出力される第2の信号が入力され、他方の入力端しには第3の論理積素子31bから出力される第2の信号が入力される。第2の論理積素子31aから出力される第1信号は”0”に固定されており、第3の論理積素子31bから出力される第1信号も”0”に固定されている。従って、第3の論理和素子31cの出力は、第1CPU10及び第2CPU11の第2の出力ポートP02、P12から出力される信号に関わらず”0”が制御信号として出力されることとなる。
制御装置100の第1CPU10と第2CPU11が、ともに正常に動作していない場合には、第1CPU10及び第2CPU11から出力される第1の信号が正しい信号とは限らない。
しかし、第1CPU10の動作異常を検出した場合に第1ウォッチドッグタイマ20から出力されるウォッチドッグタイマ出力信号が、第1の論理回路30に備えられた第1の演算素子の第1の論理和素子30aの出力が不変となる極性となる”1”を供給する。このことによって、動作が異常となっている第1CPU10の第1の出力ポートP01から出力される信号が制御装置100の動作に影響を与えなくすることができる。また、第1CPU10の動作異常を検出した場合に第1ウォッチドッグタイマ20から出力されるウォッチドッグタイマ出力信号が、第2の論理回路31に備えられた第1の演算素子の第2の論理積素子31a出力が不変となる極性となる”0”を供給する。このことによって、動作が異常となっている第1CPU10の第2の出力ポートP02から出力される信号が制御装置100の動作に影響を与えなくすることができる。
また、第2CPU11の動作異常を検出した場合に第2ウォッチドッグタイマ21から出力されるウォッチドッグタイマ出力信号が、第1の論理回路30に備えられた第1の演算素子の第2の論理和素子30bの出力が不変となる極性となる”1”を供給する。このことによって、動作が異常となっている第2CPU11の第2の出力ポートP12から出力される信号が制御装置100の動作に影響を与えなくすることができる。また、第2CPU11の動作異常を検出した場合に第2ウォッチドッグタイマ21から出力されるウォッチドッグタイマ出力信号が、第2の論理回路31に備えられた第1の演算素子の第3の論理積素子31b出力が不変となる極性となる”0”を供給する。このことによって、動作が異常となっている第2CPU11の第2の出力ポートP12から出力される信号が制御装置100の動作に影響を与えなくすることができる。
以上のように、制御装置100の第1CPU10と第2CPU11が、ともに正常に動作していない場合には、第1の論理回路30から出力される制御信号は、”1”に固定され、第2の論理回路31から出力される制御信号は、”0”に固定される。このため、第1の論理回路30は、出力される制御信号が”1”となった場合にフェールセーフとなる制御対象に適用することで、まれに両方のCPU(10,11)が異常動作となった場合でも制御装置100が適用される機器を安全に制御することができる。また、第2の論理回路31は、出力される制御信号が”0”となった場合にフェールセーフとなる制御対象に適用することで、まれに両方のCPU(10,11)が異常動作となった場合でも制御装置100が適用される機器を安全に制御することができる。
以下、本実施形態としたことによる効果について説明する。
本実施形態の制御装置100では、複数のCPU(10,11)は、それぞれ第1の信号を出力する複数の出力ポート(P01,P02,P11,P12)を有し、複数のウォッチドッグタイマ(20,21)は、複数のCPU(10,11)と同数設けられ、複数のCPU(10,11)にそれぞれ接続され、複数のCPU(10,11)から出力された第1の信号を論理演算する論理回路(30,31)を有し、論理回路は(30,31)、複数のCPUに対応してそれぞれ配置される第1の演算素子と、複数のCPUに対して一つ配置される第2の演算素子と、を備え、複数のCPU(10,11)に所定の同じ処理を行わせるとともに、第1の演算素子は、複数のCPU(10,11)にそれぞれ接続されたウォッチドッグタイマ(20,21)から出力されるウォッチドッグタイマ出力信号と、複数のCPUの出力ポートから出力される第1の信号と、を論理演算して第2の信号として出力し、第2の演算素子は、複数の第1の演算素子から出力される複数の第2の信号を論理演算して制御信号として出力するように構成した。
これにより、ウォッチドックタイマ(20,21)から出力されるウォッチドッグタイマ出力信号と、CPU(10,11)から出力される第1の信号と、を第1の演算素子で論理演算することで、CPUに異常があった場合に異常があったCPU側の第1の信号をフェールセーフ側に固定することができる。更に複数のCPUからの第1の信号を、第2の演算素子で論理演算することで、複数の第1の信号から、フェールセーフ側信号または制御信号を継続して出力することができる。従って、異常が生じた場合でも機器の動作を停止することなく誤動作を低減することができる制御装置を提供することができる。
また、本実施形態の制御装置100では、論理回路(30,31)を複数有し、論理回路(30,31)は、第1の演算素子と第2の演算素子の組合せが、論理和素子と論理積素子の組合せであり、ウォッチドッグタイマ(20,21)の出力は、CPU(10,11)の動作異常を検出した場合に第1の演算素子の出力が不変となる極性で第1の演算素子に供給されるように構成した。
これにより、CPU(10,11)の動作異常を検出した場合に、第1の演算素子の出力を固定することができる。第1の演算素子の出力を固定されるので、他のCPUが正常に動作している場合には第2の演算素子によって他のCPUから出力された信号に従った制御信号を出力することができる。また、CPU(10,11)が制御する複数の機能に対して論理回路を設けることで、複数の機能に対して動作を停止することなく誤動作を低減することができる。
また、本実施形態の制御装置100では、論理回路(30,31)のうち少なくともその1つは、第1の演算素子が論理和素子であるとともに、第2の演算素子が論理積素子であり、ウォッチドッグタイマ(20,21)は、CPU(10,11)の動作異常を検出した場合に論理出力”1”を出力するように構成した。
これにより、CPUが異常動作した場合に第1の演算素子の出力を”1”に固定することができる。第2の演算素子が論理積であるので、他のCPUが正常に動作している場合には他のCPUから出力された信号に従った制御信号を出力することができる。
また、本実施形態の制御装置100では、論理回路(30,31)のうち少なくともその1つは、第1の演算素子が論理積素子であるとともに、第2の演算素子が論理和素子であり、ウォッチドッグタイマ(20,21)は、CPU(10,11)の動作異常を検出した場合に論理出力”0”を出力するように構成した。
これにより、CPUが異常動作した場合に第1の演算素子の出力を”0”に固定することができる。第2の演算素子が論理和であるので、他のCPUが正常に動作している場合には他のCPUから出力された信号に従った制御信号を出力することができる。
以上のように、本発明の実施形態に係る制御装置100を具体的に説明したが、本発明は上記の実施形態に限定されるものではなく、要旨を逸脱しない範囲で種々変更して実施することが可能である。例えば次のように変形して実施することができ、これらの実施形態も本発明の技術的範囲に属する。
(1)本実施形態において、複数のCPUは、第1CPU10と第2CPU11の2つのCPUであるとしたが、CPUが3つ以上あるように変更して実施しても良い。
(2)本実施形態において、CPUの複数の出力ポートが第1CPU10と第2CPU11それぞれ2つずつ有している例を示して説明を行ったが、出力ポートの数は制御装置が使用される機器やシステムにあわせ必要なだけの数量に変更して実施することができる。
(3)本実施形態において、ウォッチドッグタイマ(20,21)は、正論理出力(P1,P2)と、負論理出力(N1,N2)の2つの出力を有する例を示して説明を行ったがどちらか一方の出力を備えたウォッチドッグタイマを用いても良い。この場合、出力に論理否定素子を用いて反転出力を得ることで同様の動作を行わせることができる。
[第2実施形態]
図5に本発明の基本的な実施形態の制御装置101Aが示され、図6ないし図8に、制御装置101Aを基本とした第2実施形態の制御装置101が示されている。
図5に示す制御装置101Aには、図1に示す制御装置100に設けられたのと同じ第1の論理回路30が設けられているが、第2の論理回路31に相当するものは設けられていない。第1CPU10からは、第1の出力ポートP01からの第1の信号と、動作信号出力φ1とが得られる。第2CPU11からは、第1の出力ポートP11からの第1の信号と、動作信号出力φ2とが得られる。また、第1ウォッチドッグタイマ20から正論理出力P1が得られ、第2ウォッチドッグタイマ21からも、正論理出力P2が得られる。
図4を参照して既に説明したように、第1CPU10と第2CPU11がともに正常に動作していない場合に、第1ウォッチドッグタイマ20の正論理出力P1からは”1”が出力され、第2ウォッチドッグタイマ21の正論理出力P2からも”1”が出力される。よって、第1の演算素子の第1の論理和素子30aから出力される第2信号は、第1CPU10の第1の出力ポートP01からの出力に関わらず”1”に固定される。同様に、第1の演算素子の第2の論理和素子30bから出力される第2信号も、第2CPU11の第1の出力ポートP11からの出力に関わらず”1”に固定される。
よって、第1CPU10と第2CPU11がともに正常に動作していない場合に、第1の論理回路30では、第2の演算素子の第1の論理積素子30cからは、”1”に固定された制御信号が出力される。よって、制御信号が”1”なった場合にフェールセーフとなる制御対象に適用することで、まれに両方のCPU(10、11)が異常動作となった場合でも制御装置101Aが適用される機器を安全に制御することができる。
しかし、図5に示す基本例では、両方のCPU(10、11)が異常動作となった場合に、第1の論理積素子30cからの制御信号が”1”に固定されるため、制御信号が”1”なった場合にフェールセーフとなる制御対象にしか適用することができない。すなわち、入力される制御信号が”0”となったときにフェールセーフとなる制御対象の場合には、制御装置101Aを使用することができなくなる。一方で、第1の論理回路30の構成として、第2の演算素子の第1の論理積素子30cを「AND」の論理回路素子を使用するのが最適な場合があり、容易に第2の論理回路31に変更できないこともある。
そこで、図6ないし図8に示す第2実施形態の制御装置101では、図5に示す基本例に第3の演算素子41と第4の演算素子42を付加することで、両方のCPU(10、11)が異常動作となった場合の制御信号を”0”に変更できるようにしている。
図6ないし図8に示すように、第3の演算素子41は論理積素子である。第1ウォッチドッグタイマ20の正論理出力P1と第2ウォッチドッグタイマ21の正論理出力P2との論理積が第3の演算素子41で演算されて、第3の信号として出力される。第4の演算素子42も論理積素子であるが、第3の演算素子41から出力される第3の信号は、第4の演算素子42に反転して入力される。第4の演算素子42では、第3の演算素子41から出力される第3の信号と第1の論理積素子30cからの出力信号の論理積が演算されて制御信号として出力される。
図6は、第2実施形態の制御装置101が正常に動作している場合を示している。
図2に基づいて説明したのと同様に、第1CPU10が正常に動作していると、第1ウォッチドッグタイマ20の正論理出力P1が”0”である。そのため、第1CPU10の第1の出力ポート01から出力される第1の信号は、そのままの符号で、第1の論理和素子30aから第2の信号として出力される。同様に、第2CPU11が正常に動作していると、第2ウォッチドッグタイマ20の正論理出力P2も”0”である。そのため、第2CPU11の第1の出力ポート11から出力される第1の信号は、そのままの符号で、第2の論理和素子30bから第2の信号として出力される。
したがって、第1の論理積素子30cからは、第1の論理和素子30aから出力される第2の信号と第2の論理和素子30bから出力される第2信号とが論理積演算される。
第3の演算素子41の論理積素子には、第1ウォッチドッグタイマ20からの正論理出力P1の”0”と、第2ウォッチドッグタイマ21からの正論理出力P2の”0”とが入力される。よって、第3の演算素子41で論理積演算される第3の信号は”0”である。この第3の信号は反転され”1”となって第4の演算素子42に与えられる。そのため、第4の演算素子42では、論理積演算されて出力される制御信号として、第1の論理積素子30cの演算結果がそのまま出力される。
図7は、一方の第1CPU10のが正常に動作していない状態を示している。
図3に基づいて説明したとの同様に、第1CPU10が正常に動作していないとき、第1ウォッチドッグタイマ20の正論理出力P1が”1”になる。よって、第1の論理和素子30aからの第2の信号は”1”に固定される。一方、第2ウォッチドッグタイマ21の正論理出力P2は”0”であるため、第2CPU11の第1の出力ポートP11から第1の信号は、第2の論理和素子30bからそのままの符号で第2信号として出力される。
したがって、第2の論理和素子30bからの第2の信号が、そのまま第1の論理積素子30cから出力される。
第3の演算素子41には、第1ウォッチドッグタイマ20から”1”が、第2ウォッチドッグタイマ21から”0”が与えられるため、第3の演算素子41からは論理積である”0”が第3の出力となり、これが反転されて第4の演算素子42に与えられる。よって、第4の演算素子42で論理積演算されて出力される制御信号としては、第1の論理積素子30cの演算結果がそのまま出力される。
図8は、第1CPU10と第2CPU20がともに正常に動作していない状態を示している。
図4に基づいて説明したのと同様に、第1CPU10と第2CPU20がともに正常に動作していない場合、第1ウォッチドグタイマ20の正論理出力P1と第2ウォッチドッグタイマ21の正論理出力P2がともに”1”になる。よって、第1の論理和素子30aの出力である第2の信号と、第2の論理和素子30bの出力である第2の信号がともに”1”となり、第1の論理積素子30cの出力が”1”に固定される。
第1ウォッチドグタイマ20の正論理出力P1の”1”と、第2ウォッチドッグタイマ21の正論理出力P2の”1”は、第3の演算素子41に与えられ、その論理積である第3の信号が”1”となる。第4の演算素子42には、第3の信号”1”が反転した”0”と、第1の論理積素子30cの出力の”1”とが与えられるため、第4の演算素子42から出力される制御信号は”0”となる。
このように、図5に示す基本的な制御装置101Aに、第3の演算素子41と第4の演算素子42を付加することで、2つのCPU(10,11)が共に正常に動作していないときの制御信号を、図5における”1”から”0”に変更することができ、図5に示す基本的な回路構成を使用して、制御信号が”0”なった場合にフェールセーフとなる制御対象に適用することが可能になる。
[第3実施形態]
図9に本発明の基本的な実施形態の制御装置102Aが示され、図10ないし図12に、制御装置102Aを基本とした第3実施形態の制御装置102が示されている。
図9に示す制御装置102Aには、図1に示す制御装置100における第2の論理回路31に相当する回路が設けられているが、第1の論理回路30に相当する回路は設けられていない。
制御装置102Aでは、第1CPU10から、第1の出力ポートP01からの第1の信号と、動作信号出力φ1とが得られる。第2CPU11からは、第1の出力ポートP11からの第1の信号と、動作信号出力φ2とが得られる。また、第1ウォッチドッグタイマ20からは正論理出力P1が出力され、第2ウォッチドッグタイマ21からも正論理出力P2が出力される。
図4に基づいて説明したのと同様に、第1CPU10と第2CPU11がともに正常に動作していない場合には、第1ウォッチドッグタイマ20からの正論理出力P1が”1”となり、これが反転された”0”が第1の演算素子の第2の論理積素子31aに与えられる。第2ウォッチドッグタイマ21からの正論理出力P2も”1”となり、これがが反転された”0”が第1の演算素子の第3の論理積素子31bに与えられる。
そのため、第1の演算素子の第2の論理積素子31aから出力される第2信号が、第1CPU10の第1の出力ポートP01からの出力に関わらず”0”に固定される。同様に、第1の演算素子の第3の論理積素子31bから出力される第2信号も、第2CPU11の第1の出力ポートP11からの出力に関わらず”0”に固定される。
よって、第1CPU10と第2CPU11がともに正常に動作していない場合に、第2の演算素子の第3の論理和素子31cからは、”0”に固定された制御信号が出力される。よって、制御信号が”0”なった場合にフェールセーフとなる制御対象に適用することができる。ただし、図9に示す基本的な回路構成を、制御信号が”1”となった場合にフェールセーフとなる制御対象に適用することはできない。
そこで、図10ないし図12に示す第3実施形態の制御装置102では、図9に示す基本構成の制御装置102Aに、第3の演算素子45と第4の演算素子46を付加している。第3の演算素子45は論理積素子であり、第1ウォッチドッグタイマ20の正論理出力P1と第2ウォッチドッグタイマ21の正論理出力P2との論理積が演算され、演算結果が第3の信号として出力される。第4の演算素子46は論理和素子であり、第3の演算素子45から出力される第3の信号と、第3の論理和素子31cからの出力信号の論理和が演算されて制御信号として出力される。
図10は、第3実施形態の制御装置102が正常に動作している場合を示している。
図2に基づいて説明したのと同様に、第1CPU10が正常に動作していると、第1ウォッチドッグタイマ20の正論理出力P1の”0”が反転した”1”が第2の論理積素子31aに与えられ、第2ウォッチドッグタイマ21の正論理出力P2の”0”が反転した”1”が第3の論理積素子31bに与えられる。そのため、第1CPU10の第1の出力ポート01から出力される第1の信号と第2CPU11の第1の出力ポート11から出力される第1の信号は、そのままの符号で、第2の論理積素子31aと第3の論理積素子31bから第2の信号として出力される。したがって、第3の論理和素子31cからは、第1の論理和素子30aから出力される第2の信号と第2の論理和素子30bから出力される第2信号とが論理和演算される。
第3の演算素子45の論理積素子では、第1ウォッチドッグタイマ20からの正論理出力P1の”0”と、第2ウォッチドッグタイマ21からの正論理出力P2の”0”が入力される。よって第3の演算素子45で論理積演算される第3の信号は”0”である。したがって、第4の演算素子46で論理和演算されて出力される制御信号としては、第3の論理和素子31cの演算結果がそのまま出力される。
図11は、一方の第1CPU10のみが正常に動作していない状態を示している。
図3に基づいて説明したとの同様に、第1CPU10が正常に動作していないとき、第1ウォッチドッグタイマ20の正論理出力P1が”1”になる。この”1”が反転されて第2の論理積素子31aに与えらるため、第2の論理積素子31aからの第2の信号は”0”に固定される。一方で、第3の論理和素子31cからは、第2CPU11の第1の出力ポートP11からの第1の信号がそのままの符号で第2信号として出力される。
第3の演算素子45には、第1ウォッチドッグタイマ20からの正論理出力P1の”1”と、第2ウォッチドッグタイマ21からの正論理出力P2の”0”が与えられるため、第3の演算素子41からは論理積である”0”が第3の出力となる。よって、第4の演算素子46で論理和演算されて出力される制御信号として、第3の論理和素子31cの演算結果がそのまま出力される。
図12は、第1CPU10と第2CPU20がともに正常に動作していない状態を示している。
図4に基づいて説明したのと同様に、第1CPU10と第2CPU20がともに正常に動作していない場合、第1ウォッチドグタイマ20の正論理出力P1と第2ウォッチドッグタイマ21の正論理出力P2がともに”1”になる。これらが反転した”0”が、第2の論理積素子31aと第3の論理積素子31bにあたえられるため、第2の論理積素子31aの出力である第2の信号と、第3の論理積素子31bの出力である第2の信号がともに”0”となり、第3の論理和素子31cの出力も”0”となる。
第1ウォッチドグタイマ20の正論理出力P1の”1”と第2ウォッチドッグタイマ21の正論理出力P2の”1”が、第3の演算素子45に与えられるため、その論理積である第3の信号が”1”となる。第4の演算素子46には、第3の論理和素子31cの出力の”0”と前記第3の信号の”1”が与えられるため、第4の演算素子46から出力される制御信号は”1”となる。
すなわち、図9に示す基本的な制御装置102Aに第3の演算素子45と第4の演算素子46を付加することで、2つのCPU(10,11)が共に正常に動作していないときの制御信号を、図6における”0”から図12に示す”1”に変更することができ、制御信号が”1”なった場合にフェールセーフとなる制御対象に適用することが可能になる。
10 第1CPU
11 第2CPU
20 第1ウォッチドッグタイマ
21 第2ウォッチドッグタイマ
30 第1の論理回路
30a 第1の論理和素子(第1の演算素子)
30b 第2の論理和素子(第1の演算素子)
30c 第1の論理積素子(第2の演算素子)
31 第2の論理回路
31a 第2の論理積素子(第1の演算素子)
31b 第3の論理積素子(第1の演算素子)
31c 第3の論理和素子(第2の演算素子)
41 第3の演算素子
42 第4の演算素子
45 第3の演算素子
46 第4の演算素子
50 外部装置
100 制御装置

Claims (8)

  1. 複数のCPUと、複数のウォッチドッグタイマと、を備えた制御装置であって、
    前記複数のCPUは、それぞれ第1の信号を出力する 出力ポートを有し、
    前記複数のウォッチドッグタイマは、前記複数のCPUと同数設けられ、前記複数のCPUに個別に接続され
    前記複数のCPUから出力された前記第1の信号を論理演算する論理回路を有し、
    前記論理回路は、前記複数のCPUに対応してそれぞれ配置される第1の演算素子と、前記複数のCPUに対して一つ配置される第2の演算素子と、を備え、
    前記複数のCPUに所定の同じ処理を行わせるとともに、
    前記第1の演算素子は、前記複数のCPUにそれぞれ接続された前記複数のウォッチドッグタイマから出力されるウォッチドッグタイマ出力信号と、前記複数のCPUのそれぞれの前記出力ポートから出力される前記第1の信号と、を論理演算して第2の信号として出力し、
    前記第2の演算素子は、複数の前記第1の演算素子から出力される複数の前記第2の信号を論理演算して制御信号として出力することを特徴とする制御装置。
  2. 前記 論理回路は、前記第1の演算素子と前記第2の演算素子の組合せが、論理和素子と論理積素子の組合せであり、
    前記ウォッチドッグタイマの出力は、CPUの動作異常を検出した場合に前記第1の演算素子の出力が不変となる極性で前記第1の演算素子に供給されることを特徴とする請求項1に記載の制御装置。
  3. 前記複数のCPUは、それぞれ第1の信号を出力する複数の出力ポートを有し、
    前記論理回路を複数有し、
    それぞれの前記ウォッチドッグタイマは、一つの前記CPUに接続されるとともに、複数の出力を有し、
    一つの前記ウォッチドッグタイマからの複数の前記ウォッチドッグタイマ出力信号が、複数の前記論理回路のそれぞれに個別に与えられることを特徴とする請求項1または2に記載の制御装置。
  4. 前記論理回路のうち少なくともその1つは、前記第1の演算素子が論理和素子であるとともに、前記第2の演算素子が論理積素子であり、
    前記ウォッチドッグタイマは、CPUの動作異常を検出した場合に論理出力”1”を出力するよう動作することを特徴とする請求項3に記載の制御装置。
  5. 前記論理回路のうち少なくともその1つは、前記第1の演算素子が論理積素子であるとともに、前記第2の演算素子が論理和素子であり、
    前記ウォッチドッグタイマは、CPUの動作異常を検出した場合に論理出力”0”を出力するよう動作することを特徴とする請求項3に記載の制御装置。
  6. 複数の前記ウォッチドッグタイマからのウォッチドッグタイマ出力信号を論理演算して第3の信号として出力する第3の演算素子と、
    前記第2の演算素子から出力される信号と、前記第3の信号を論理演算して制御信号を出力する第4の演算素子とを有することを特徴とする請求項1ないし3のいずれかに記載の制御装置。
  7. 前記第3の演算素子と前記第4の演算素子が、共に論理積素子であることを特徴とする請求項6記載の制御装置。
  8. 前記第3の演算素子が論理積素子であり、前記第4の演算素子が論理和素子であることを特徴とする請求項6記載の制御装置。
JP2016116632A 2015-06-12 2016-06-10 制御装置 Expired - Fee Related JP6660818B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015119031 2015-06-12
JP2015119031 2015-06-12

Publications (2)

Publication Number Publication Date
JP2017004530A JP2017004530A (ja) 2017-01-05
JP6660818B2 true JP6660818B2 (ja) 2020-03-11

Family

ID=57751907

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016116632A Expired - Fee Related JP6660818B2 (ja) 2015-06-12 2016-06-10 制御装置

Country Status (1)

Country Link
JP (1) JP6660818B2 (ja)

Also Published As

Publication number Publication date
JP2017004530A (ja) 2017-01-05

Similar Documents

Publication Publication Date Title
US20060200278A1 (en) Generic software fault mitigation
JP6266239B2 (ja) マイクロコンピュータ
CN107003915B (zh) 驱动控制装置
KR100296984B1 (ko) 전자제어장치용감시시스템
JP2013012069A (ja) 車載電子制御装置
US10033389B2 (en) Clock signal stop detection circuit
JP2015118687A (ja) 多重マイクロコア監視装置及び方法
KR20190035480A (ko) 마이크로 컨트롤러 및 마이크로 컨트롤러의 제어방법
US20200333381A1 (en) Voltage diagnostic circuit
JP6660818B2 (ja) 制御装置
KR101448013B1 (ko) 항공기용 다중 컴퓨터의 고장 허용 장치 및 방법
JP2018163498A (ja) 監視回路
US9703672B2 (en) Method for verifying the processing of software
US9823302B2 (en) Semiconductor circuit and semiconductor system
JP6588068B2 (ja) マイクロコンピュータ
JP2012160149A (ja) 二重化回路、半導体装置およびテスト方法
JP6274947B2 (ja) 車載制御装置のマイクロプロセッサの異常診断方法
RU2718168C2 (ru) Автоматизированная система безопасности промышленной установки
US10528417B2 (en) Clock signal inspection device, plant monitoring controller, and method for diagnosing clock signal inspection device
JP6813963B2 (ja) 作動状態記録システム及び作動状態記録方法
JP6839212B2 (ja) 電子制御装置
JP5925925B2 (ja) 診断付き出力装置
JP2006309639A (ja) コンピュータ異常検知回路およびコンピュータ異常検知方法
JP5561329B2 (ja) 車載電子制御装置
WO2016042751A1 (ja) メモリ診断回路

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20160613

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191226

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: 20200114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200210

R150 Certificate of patent or registration of utility model

Ref document number: 6660818

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees