特許第5700223号(P5700223)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社安川電機の特許一覧

<>
  • 特許5700223-制御装置 図000002
  • 特許5700223-制御装置 図000003
  • 特許5700223-制御装置 図000004
  • 特許5700223-制御装置 図000005
  • 特許5700223-制御装置 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5700223
(24)【登録日】2015年2月27日
(45)【発行日】2015年4月15日
(54)【発明の名称】制御装置
(51)【国際特許分類】
   G06F 1/26 20060101AFI20150326BHJP
   G06F 1/28 20060101ALI20150326BHJP
【FI】
   G06F1/00 331Z
   G06F1/00 333A
   G06F1/00 335A
【請求項の数】4
【全頁数】13
(21)【出願番号】特願2012-171097(P2012-171097)
(22)【出願日】2012年8月1日
(65)【公開番号】特開2014-32451(P2014-32451A)
(43)【公開日】2014年2月20日
【審査請求日】2013年3月15日
(73)【特許権者】
【識別番号】000006622
【氏名又は名称】株式会社安川電機
(74)【代理人】
【識別番号】100104503
【弁理士】
【氏名又は名称】益田 博文
(74)【代理人】
【識別番号】100191112
【弁理士】
【氏名又は名称】益田 弘之
(72)【発明者】
【氏名】大澤 和正
(72)【発明者】
【氏名】富田 昌良
【審査官】 内田 正和
(56)【参考文献】
【文献】 特開2009−140357(JP,A)
【文献】 特開2005−115762(JP,A)
【文献】 特開2007−281728(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 1/26
G06F 1/28
(57)【特許請求の範囲】
【請求項1】
第1電源モジュール及び第1CPUモジュールを含む複数のモジュールを有する基本ラックと、
前記基本ラックとデータ送受信可能に接続され、少なくとも第2電源モジュールを有する1以上の拡張ラックと、
を備え、前記基本ラックに係わるフェールセーフ機能を備えた制御装置であって、
前記第1CPUモジュールは、
前記フェールセーフ機能の有効化状態又は前記フェールセーフ機能の無効化状態を切り替え可能な第1スイッチと、
前記第1スイッチが前記有効化状態であるときに、前記第1電源モジュール及び前記第2電源モジュールの少なくともいずれかへ供給される外部電源の電圧が所定値より低下した場合に前記基本ラックを初期化する前記フェールセーフ機能を実行する、フェールセーフ実行手段と、
前記第1スイッチが前記無効化状態であるときに、前記フェールセーフ機能を不実行とする、フェールセーフ不実行手段と、
を有することを特徴とする制御装置。
【請求項2】
第1電源モジュール及び第1CPUモジュールを含む複数のモジュールを有する基本ラックと、
前記基本ラックとデータ送受信可能に接続され、第2電源モジュール及び第2CPUモジュールを有する1以上の拡張ラックと、
を備え、前記基本ラックに係わる第1フェールセーフ機能、及び、前記拡張ラックに係わる第2フェールセーフ機能、を備えた制御装置であって、
前記第1CPUモジュールは、
前記第1フェールセーフ機能の有効化状態又は前記第1フェールセーフ機能の無効化状態を切り替え可能な第1スイッチと、
前記第1スイッチが前記有効化状態であるときに、前記第1電源モジュール及び前記第2電源モジュールの少なくともいずれかへ供給される外部電源の電圧が所定値より低下した場合に前記基本ラックを初期化する前記第1フェールセーフ機能を実行する、第1フェールセーフ実行手段と、
前記第1スイッチが前記無効化状態であるときに、前記第1フェールセーフ機能を不実行とする、第1フェールセーフ不実行手段と、
を有し、
前記第2CPUモジュールは、
前記第2フェールセーフ機能の有効化状態又は前記第2フェールセーフ機能の無効化状態を切り替え可能な第2スイッチと、
前記第2スイッチが前記有効化状態であるときに、前記第1電源モジュール及び前記第2電源モジュールの少なくともいずれかへ供給される外部電源の電圧が所定値より低下した場合に前記拡張ラックを初期化する前記第2フェールセーフ機能を実行する、第2フェールセーフ実行手段と、
前記第2スイッチが前記無効化状態であるときに、前記第2フェールセーフ機能を不実行とする、第2フェールセーフ不実行手段と、
を有することを特徴とする制御装置。
【請求項3】
前記第1CPUモジュール又は前記第2CPUモジュールは、
外部電源の電圧が低下した電源モジュールが自己のラックに係る電源モジュールであるか否かを判別する判別部を有する
ことを特徴とする請求項2に記載の制御装置。
【請求項4】
前記第1CPUモジュール又は前記第2CPUモジュールは、
前記判別部により、前記外部電源の電圧が低下した電源モジュールが自己のラックに係る電源モジュールであると判別された場合には、自己停電処理を実行し、
前記外部電源の電圧が低下した電源モジュールが他のラックに係る電源モジュールであると判別された場合には、他者停電処理を実行する
ことを特徴とする請求項3に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御装置に関する。
【背景技術】
【0002】
例えば特許文献1には、複数のモジュール(ユニット)を接続して構成するビルディングブロック形式の制御装置(増設型PLCシステム)が記載されている。この制御装置は、電源モジュール(電源ユニット)及びCPUモジュール(CPUユニット)を含む複数のモジュールからなる基本ラック(第一列のユニット群)と、同様に電源モジュールを含む複数のモジュールからなる拡張ラック(第二列のユニット群)とを有する。基本ラックと拡張ラックはバスラインを介して接続される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2002−108417号公報(図1(b))
【発明の概要】
【発明が解決しようとする課題】
【0004】
基本ラックと拡張ラックの各々が個別に電源ユニットを有する制御装置においては、相互の電源ユニットにおいて電源異常を監視し、例えば拡張ラックの電源モジュールへの外部電源の供給が遮断された(あるいは電源電圧が低下した)場合に、CPUモジュールが基本ラック及び拡張ラックの両方をリセットして装置全体を初期化するフェールセーフ機能を有するものがある。
【0005】
このようなフェールセーフ機能を有する制御装置の場合、例えばCPUモジュールのアプリケーションデバッグ等の調整作業を行っている最中に、ユーザが意図的に拡張ラックの電源を遮断したり、又はユーザの意図に反して拡張ラックの電源が遮断されると、上記フェールセーフ機能によりシステム全体が初期化される。その結果、編集中のアプリケーションがユーザによって保存されていない場合には消失してしまうおそれがあり、調整作業時の利便性が低いという問題があった。
【0006】
本発明はこのような問題点に鑑みてなされたものであり、調整作業時の利便性を向上することができる制御装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するため、本発明の一の観点によれば、第1電源モジュールと第1CPUモジュールを含む複数のモジュールを有する基本ラックと、前記基本ラックとデータ送受信可能に接続され、少なくとも第2電源モジュールを有する1以上の拡張ラックと、を備え、前記第1CPUモジュールは、前記第1電源モジュール及び前記第2電源モジュールの少なくともいずれかへ供給される外部電源の電圧が所定値より低下した場合に、前記基本ラックを初期化する第1フェールセーフ機能を有するとともに、前記第1フェールセーフ機能の有効又は無効を切り替え可能な第1スイッチを有する制御装置が適用される。
【発明の効果】
【0008】
本発明の制御装置によれば、調整作業時の利便性を向上することができる。
【図面の簡単な説明】
【0009】
図1】実施形態の制御装置のシステム構成を表す図である。
図2】Dスイッチ周辺の回路構成を表す図である。
図3】パーソナルコンピュータでメインCPUユニットを代用する場合のシステム構成を表す図である。
図4】サブCPUユニットを設けた場合の制御装置のシステム構成を表す図である。
図5】メインCPUユニットとサブCPUユニットのDスイッチ周辺の回路構成を表す図である。
【発明を実施するための形態】
【0010】
以下、一実施の形態について図面を参照しつつ説明する。
【0011】
まず、図1を用いて、本実施形態に係る制御装置の概略的な構成について説明する。図1に示すように、制御装置1は、それぞれ外部電源4に接続されるメインラック100と、拡張ラック200とを互いに情報送受可能に接続して構成され、例えばいわゆるファクトリーオートメーション(以下、FAという;図示省略)の各部の制御を統合的に行う制御装置である。メインラック100は、複数のモジュールユニットを設置可能な基盤である。このメインラック100においては、設置したそれぞれのモジュールユニットに対して電力を給電する電源ユニット101を備えるとともに、各モジュールユニットどうしを内部バス(図示省略)を介して情報送受可能に接続する。そしてこのメインラック100には、当該制御装置1全体を統括する唯一のCPUを備えたメインCPUユニット102のモジュールが設置されている。このメインCPUユニット102は、同じメインラック100に設置されている他のI/Oユニット11やモーション制御ユニット12(サーボ13を介してモータ14の駆動制御を行うユニット)などのモジュールユニットを介してFAの各部の制御を行う。
【0012】
しかし、このメインラック100におけるモジュールユニットの設置可能数、及び電源ユニット101の給電容量は有限であり、FA側における制御対象部分の数が多い場合にはメインラック100におけるモジュールユニットの設置可能数が不足する場合がある。そこで、メインラック100と同等の構成の拡張ラック200を用意し、モジュールユニットの設置可能数を増設する。この拡張ラック200にも電源ユニット201を備えて個別に給電管理を行う。そして、メインラック100と拡張ラック200との間をコネクタ100a、200a及び外部バス2を介して情報送受可能に接続する。これにより、メインラック100中の1つのメインCPUユニット102によってメインラック100及び拡張ラック200に設置された全てのモジュールユニットの制御を一元管理でき、すなわち上記FAの全体を統括制御できる。
【0013】
上述したように各ラック100、200はそれぞれ電源ユニット101、201を備えて個別に給電を管理する。しかし、FA全体における機構構造の都合上、一方のラックでの給電を停止して他方のラックだけで駆動制御を継続することは望ましくない。このため当該制御装置1には、一方のラックで給電を停止した際に制御装置1全体の給電をリセット(給電を一旦停止した後に給電を再開して初期化処理を実行すること)するフェールセーフ機能が備えられている。具体的には、2つのラック100、200間で上記外部バス2と並列に(もしくは外部バス2中に含めて)フェールセーフ信号線3を接続しており、各ラック100、200の電源ユニット101、201がそれぞれの給電停止又は給電電力が所定値より低下したことを検知した際に相手のラックの電源ユニットにフェールセーフ信号を送信する。そして相手のラックからこのフェールセーフ信号を受信した側の電源ユニット自身においても、そのフェールセーフ信号の受信に合わせて給電のリセットを行う。このようなフェールセーフ機能は、例えばFAの通常運転における緊急停止時に、当該FA内における機械干渉などを回避して機構構造を保護するために有用である。
【0014】
しかしながら、FAの試運転調整時やメンテナンス作業時には、作業者が意図的に又は誤って一方のラックだけに対して給電を停止させる操作を行う場合がある。この場合には、上述したフェールセーフ機能によって他方のラックも含めた制御装置1全体の給電がリセットされる。しかし、このFAの試運転調整時やメンテナンス作業時には、メインCPUユニット102において各種のパラメータの設定作業やラダープログラムなどのアプリケーションプログラムの編集作業を行っている場合が多い。そのような設定作業中又は編集作業中の状態で、上記フェールセーフ機能が作動して制御装置全体の給電が強制的にリセットされた場合には、設定中のパラメータや編集中のアプリケーションプログラムがフラッシュメモリなどの不揮発性記憶装置に保存されないまま消失してしまう問題がある。
【0015】
そこで本実施形態の制御装置では、メインCPUユニット102のモジュールにおいて、上記フェールセーフ機能の有効又は無効を切り替え可能なDスイッチ(Disable−スイッチ)102aを設けている。このDスイッチ102aは、例えばピアノスイッチやDIPスイッチで構成されるハードウェアスイッチであり、メインCPUユニット102の前面に設けてユーザが容易にアクセスできるようにする。なお、メインラック100が備える電源ユニット101が各請求項記載の第1電源モジュールに相当し、メインCPUユニット102が各請求項記載の第1CPUモジュールに相当し、メインラック100が各請求項記載の基本ラックに相当し、拡張ラック200が備える電源ユニット201が各請求項記載の第2電源モジュールに相当し、上記のフェールセーフ機能が各請求項記載の第1フェールセーフ機能に相当し、Dスイッチ102aが各請求項記載の第1スイッチに相当する。
【0016】
このDスイッチ102aの周辺回路は、図2に示すように、1つのORゲート111と、1つのディレイ回路112と、1つのANDゲート113とで構成される。メインラック100と拡張ラック200のそれぞれの電源ユニット101、201から出力されるフェールセーフ信号POKがORゲート111に入力される。そしてこのORゲート111の出力が割り込み要求信号*IRQ0となり、メインCPUユニット102のCPU(図示省略)へ直接入力される。また、この割り込み要求信号*IRQ0は一方でディレイ回路112を介してその切り替え変化が遅延されてANDゲート113に入力される。このANDゲート113には、Dスイッチ102aの切り替え状態を示すDスイッチ信号*D−RST(Disable−RESET)も入力される。そしてこのANDゲート113の出力が全リセット指令信号*ALL−RESETとなり、メインCPUユニット102のCPUへ直接入力される。
【0017】
なお、図中及び説明中の「*」は負論理を表しており、それぞれがLレベルで動作(アクティブ)することを意味する。そして、各論理ゲートの入出力部には、各負論理信号に対応する配置でNOT記号(図中の丸で表記されている端子記号)が付帯されている。例えば図示する例において、各ラック100、200の電源ユニット101、201から出力される2つのフェールセーフ信号POKは、通常の給電状態ではHレベルとなり、給電停止状態ではLレベルとなる。これに対応して各フェールセーフ信号POKがそれぞれNOTで反転されてからORゲート111に入力される。このため、通常の給電状態では2つのフェールセーフ信号POKの両方がHレベルであるため、ORゲート111そのものの出力はLレベルであり、それがNOTで反転されて割り込み要求信号*IRQ0がHレベルとなる。これにより、負論理の割り込み要求信号*IRQ0がHレベルを維持するため、CPUはメインラック100の電源ユニット101に対して給電リセットを実行せずに通常給電状態が維持される。
【0018】
しかし、2つのフェールセーフ信号POKのうち少なくともいずれか一方がLレベル(給電停止)となった際には、ORゲート111がHレベルを出力し、それがNOTで反転されて割り込み要求信号*IRQ0がLレベルに変化する。この割り込み要求信号*IRQ0は、システム保護の観点でCPUに対し各種内部レジスタのデータを保存させる等といった給電停止直前に最低限行うべき処理を割り込み実行させる信号である。また場合によっては、この割り込み要求信号*IRQ0が入力された際に、CPUは設定作業中の各種パラメータや編集作業中のアプリケーションプログラムを不揮発性記憶装置に保存させる処理まで割り込み実行してもよい。
【0019】
ディレイ回路112は、そのようなCPUにおける給電停止前処理や各種保存処理のための実行時間を十分稼げるよう、割り込み要求信号*IRQ0の変化を遅延させる。ANDゲート113には、このようにレベルの切り替え変化が時間的に遅延された割り込み要求信号*IRQ0をNOTで反転した信号と、上記Dスイッチ102aの切り替え状態を示すDスイッチ信号*D−RSTが入力されている。ユーザが当該メインラック100のフェールセーフ機能を有効にする場合には、Dスイッチ102aをON状態(接続状態)に設定し、Dスイッチ信号*D−RSTがHレベルを維持する。この場合に、上記割り込み要求信号*IRQ0がLレベルのアクティブとなった際にNOTで反転されてANDゲート113にHレベルで入力され、またDスイッチ信号*D−RSTがHレベルであるために当該ANDゲート113はHレベルを出力する。そしてこの出力がNOTで反転されてLレベルで出力され、負論理の全リセット指令信号*ALL−RESETをアクティブとする。これにより、メインCPUユニット102からの指示によって全てのラック100、200の電源ユニット101、102に給電リセット動作を行わせ、フェールセーフ機能が有効に機能する。
【0020】
一方、ユーザが当該メインラック100のフェールセーフ機能を拒否する場合には、Dスイッチ102aをOFF状態(遮断状態)に設定し、Dスイッチ信号*D−RSTがLレベルを維持する。この場合に、上記割り込み要求信号*IRQ0がLレベルのアクティブとなってNOTで反転されてANDゲート113にHレベルで入力されたとしても、Dスイッチ信号*D−RSTがLレベルであるために当該ANDゲート113はLレベルを維持する。そしてこの出力がNOTで反転されてHレベルで出力し、全リセット指令信号*ALL−RESETはノンアクティブとなる。これにより、Dスイッチ102aがOFF状態である間はフェールセーフ機能が無効となり、メインCPUユニット102において設定中の各種パラメータや編集中のアプリケーションプログラムが意図せずに消失することを防止できる。なお、各信号の正論理及び負論理は、CPUや各種信号の論理仕様に準拠して変更され得るものであり、それに対応して図中のNOT記号の配置も適宜変更する必要がある。
【0021】
また、上記のDスイッチ102aとその周辺回路を備えていない拡張ラック200では、その電源ユニット201において通常のフェールセーフ機能が常に有効に機能している。このため、当該拡張ラック200における電源電圧の低下時及び給電停止時にはもちろんのこと、メインラック100での給電停止時においても当該拡張ラック200の電源ユニット201は給電リセットを行う。
【0022】
また、各ラック100、200の電源ユニット101、201は、その給電を停止された直後でも平滑コンデンサ等の充電電力を利用して一定時間給電を維持可能な瞬停保持機能を有している。このため、メインラック100で給電が停止された場合でも、フェールセーフ機能の作動までを行うことができる。
【0023】
以上説明した実施形態によれば、次のような効果を得る。すなわち、本実施形態の制御装置1では、メインCPUユニット102が、各ラック100、200の電源ユニット101、201の少なくともいずれかへ供給される外部電源4の電圧が所定値より低下した場合に、メインラック100及び拡張ラック200の両方を初期化するフェールセーフ機能を有する。この場合、例えばメインCPUユニット102のアプリケーションデバッグ等の調整作業を行っている最中に、ユーザが意図的に拡張ラック200の給電を停止したり、又はユーザの意図に反して拡張ラック200の給電が停止されると、上記フェールセーフ機能により制御装置1全体が初期化されることになる。その結果、編集中のアプリケーションがユーザによって保存されていない場合には消失してしまうおそれがあり、調整作業時の利便性が低いという問題がある。
【0024】
そこで、メインCPUユニットに、フェールセーフ機能の有効又は無効を切り替え可能なDスイッチ102aを設ける。これにより、ユーザがメインCPUユニット102のアプリケーションデバッグ等の調整作業を行う際にDスイッチ102aを操作してフェールセーフ機能を無効としておくことにより、拡張ラック200の給電の停止による制御装置1全体の初期化を防止することができる。その結果、ユーザは、編集中のアプリケーションの保存の有無に関わらずに必要に応じて拡張ラック200の給電を停止することが可能となるので、調整作業時の利便性を向上することができる。
【0025】
なお、上記実施形態ではメインラック100に設置するメインCPUユニット102が、それ単独でCPUを内蔵してパラメータの設定やアプリケーションプログラムの編集が可能なユニットモジュールを構成していたが、本発明はこれに限られない。他にも、図3に示すように、一般のパーソナルコンピュータ15でパラメータの設定やアプリケーションプログラムの編集を行い、当該パーソナルコンピュータ15側の拡張スロット(例えばPCI準拠など)に接続するケーブルとコネクタを備えたユニットモジュール16をメインラック100に設置する構成としてもよい。この構成においては、当該パーソナルコンピュータ15が備えているCPUが、メインCPUユニット102と同等に機能する。この場合には、上記図2に示したDスイッチ102a及びその周辺回路をユニットモジュール16に設けてもよいし(図3参照)、もしくはパーソナルコンピュータ15側の拡張スロットに差し込まれている拡張カード(図示省略)に設けてもよい。
【0026】
また、Dスイッチ102a及びその周辺回路は、上記図2に示したようにハードウェア回路で構成する以外にも、ソフトウェア的な処理で実現してもよい。具体的には、メインCPUユニット102でDスイッチ102aの設定内容に相当するパラメータ値をソフトウェア的に設定し、各論理ゲート111、113及びディレイ回路112の機能をソフトウェア的な判定処理や遅延処理で代用することで、同等の割り込み要求信号*IRQ0及び全リセット指令信号*ALL−RESETを生成してもよい。
【0027】
なお、本発明は、上記実施形態に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。以下、そのような変形例を順を追って説明する。
【0028】
(1)拡張ラックにもサブCPUユニットを設置する場合
上記実施形態では、複数のラック100、200からなる制御装置1全体のうちメインラック100にのみメインCPUユニット102を設置する構成としていたが、本発明はこれに限られない。他にも、メインラック100以外の拡張ラック200にもサブCPUユニットを設置する構成としてもよい。
【0029】
本変形例の制御装置1Aにおいては、図4に示すように、メインラック100にメインCPUユニット102を設置するとともに、拡張ラック200にもCPUを備えたサブCPUユニット202を設置している。このサブCPUユニット202は、メインCPUユニット102からの指令を受けて当該拡張ラック200内に設置されている他のユニットモジュール(図示する例ではモーション制御ユニット12)の制御を従動的に行うものである。このように拡張ラック200にサブCPUユニット202を設置していることで、メインCPUユニット102における制御処理を拡張ラック200単位で分散させることができる。そして、本変形例ではメインCPUユニット102とサブCPUユニット202のそれぞれにDスイッチ102a、202aを個別に設けている。なお、サブCPUユニット202が各請求項記載の第2CPUモジュールに相当し、サブCPUユニット202に設けられるDスイッチ202aが各請求項記載の第2スイッチに相当する。
【0030】
これら2つのラック100、200におけるDスイッチ102a、202aとのその周辺回路の構成、及びそれらの接続構成は、図5に示すような構成となる。まず、メインCPUユニット102側の周辺回路はほぼ上記実施形態と同じ構成であり、さらに本変形例では各ラック100、200の電源ユニット101、201から出力されるフェールセーフ信号POKの内容を検出できるモニタレジスタ121を備えている。一方、サブCPUユニット202側の周辺回路は、メインCPUユニット102側の周辺回路と同等の構成に対してさらに割り込み要求信号*IRQ0とディレイ回路212の間にORゲート214を設けている。このORゲート214には、サブCPUユニット202における割り込み要求信号*IRQ0をNOTで反転して入力するとともに、上記メインCPUユニット102における全リセット指令信号*ALL−RESETをNOTで反転して入力する。そして当該ORゲート214の出力をNOTで反転してディレイ回路に出力する。
【0031】
なお、このサブCPUユニット202におけるANDゲート213の出力は、NOTで反転されて単独リセット指令信号*SELF−RESETとなり、サブCPUユニット202のCPUへ直接入力される。この単独リセット指令信号*SELF−RESETは、上記の全リセット指令信号*ALL−RESETとは異なり、当該拡張ラック200の電源ユニット201に限定して給電リセットを行わせる信号である。また、サブCPUユニット202側の周辺回路においても、各ラック100、200の電源ユニット101、201から出力されるフェールセーフ信号POKの内容を検出できるモニタレジスタ221を備えている。
【0032】
以上の接続構成において、メインCPUユニット102では上記実施形態と同等に機能する。つまり、Dスイッチ102aがON状態であればメインCPUユニット102におけるフェールセーフ機能が有効となり、いずれかのラックで給電停止された際に全てのラック100、200の給電リセットを行う。また、Dスイッチ102aがOFF状態であれば、メインCPUユニット102におけるフェールセーフ機能が無効となる。
【0033】
また、サブCPUユニット202においても、同様にしてDスイッチ202aの切り替え状態によって当該サブCPUユニット202におけるフェールセーフ機能の有効と無効が設定可能である。しかし、当該サブCPUユニット202におけるフェールセーフ機能は、メインCPUユニット102における全リセット指令信号*ALL−RESETがアクティブとなった場合も併せて作動契機としている。また、当該サブCPUユニット202におけるフェールセーフ機能の作動範囲は、当該拡張ラックの給電リセットに限定されている。このようなサブCPUユニット202におけるフェールセーフ機能が、各請求項記載の第2フェールセーフ機能に相当する。
【0034】
以上の各ラック100、200におけるフェールセーフ機能を組み合わせることにより、メインラック100において給電停止した場合及び拡張ラック200において給電停止した場合のいずれにおいても、メインCPUユニット102によるフェールセーフ機能とサブCPUユニット202によるフェールセーフ機能が重畳的に働き、メインラック100及び拡張ラック200の両方が給電リセットされる。その上で、Dスイッチ102a、202aの切り替え設定によりフェールセーフ機能を無効としたラックだけが給電リセットを回避できる。これにより、ユーザは、その時点でパラメータ設定やアプリケーションプログラム編集を行っている対象のCPUユニットのDスイッチ102a、202aをOFF状態に設定して当該ラックにおけるフェールセーフ機能を無効としている間は、他のラックの給電を停止させた場合でも操作対象のCPUユニットにおける設定内容、編集内容を保持できる。
【0035】
また上述したように本変形例では、メインCPUユニット102及びサブCPUユニット202のいずれにおいても、各フェールセーフ信号の内容を検出するモニタレジスタ121、221を備えている。これにより、メインCPUユニット102とサブCPUユニット202のそれぞれのCPUは、いずれのフェールセーフ信号がアクティブになったか、つまりいずれのラックの給電が停止したかを判別できる。このため、メインCPUユニット102とサブCPUユニット202のそれぞれのCPUは、当該CPUに対応するラックの給電が停止した場合と、他のラックの給電が停止した場合とで異なる割り込み処理(割り込み要求信号*IRQ0による処理)を実行できる。例えば、当該CPUに対応するラックの給電が停止した場合には、システム保護の観点から、バッテリバックアップされたユーザメモリへのアクセスの停止を行うなどの自己停電処理を上記瞬停保持時間内に実行する。また、他のラックの給電が停止した場合には、ハンドシェイク処理の停止を想定した外部同期制御の停止を行うなどの他者停電処理を実行する。なお、モニタレジスタ121、221が各請求項記載の判別部に相当する。
【0036】
以上説明した変形例によれば、次のような効果を得る。すなわち、本変形例の制御装置1Aでは、拡張ラック200がサブCPUユニット202を有する。サブCPUユニット202は、メインラック100の電源ユニット101及び拡張ラック200の電源ユニット201の少なくともいずれかへ供給される外部電源4の給電が停止した場合に、当該拡張ラック200を初期化するフェールセーフ機能(単独リセット指令信号*SELF−RESETによるフェールセーフ機能)を有する。これにより、メインラック100への給電が停止した場合及び拡張ラック200への給電が停止した場合のいずれにおいても、メインCPUユニット102によるフェールセーフ機能とサブCPUユニット202によるフェールセーフ機能が重畳的に働き、メインラック100及び拡張ラック200が初期化される。したがって、サブCPUユニット202で設定中の各種パラメータや編集中のアプリケーションプログラムが消失する場合がある。
【0037】
そこで、本変形例では、サブCPUユニット202においてもDスイッチ202aを設けている。ユーザがメインCPUユニット102でパラメータ設定やプログラム編集を行う際にはメインCPUユニット102のDスイッチ102aを操作してメインCPUユニット102におけるフェールセーフ機能を無効とする。また、サブCPUユニット202でパラメータ設定やプログラム編集を行う際にはサブCPUユニット202のDスイッチ202aを操作してサブCPUユニット202におけるフェールセーフ機能を無効としておくことにより、いずれのラックでの給電停止に対しても当該サブCPUユニット202の初期化を防止することができる。したがって、調整作業時の利便性を向上することができる。
【0038】
また、本変形例では特に、メインCPUユニット102又はサブCPUユニット202が有するモニタレジスタ121、221が、外部電源4からの給電が停止した電源ユニットが自己のラックに係る電源ユニットであるか、他者のラックに係る電源ユニットであるかを判別する。これにより、判別結果に応じたその後の処理を実行することが可能となる。
【0039】
また、本変形例では特に、自己のラックに係る電源ユニットの給電が停止する場合、メモリへアクセスしつつ実行している処理を継続すると、メモリへ書き込まれた値が変更されて正常な処理が実行されないおそれがある。そこで本変形例では、給電停止が自己のラックであると判別された場合に、例えばメモリへのアクセス停止等の自己停電処理を実行することで、上記事態を防止できる。
【0040】
また、他のラックに係る電源ユニットの電圧が低下する場合、いわゆるハンドシェイク処理のようにラック間で同期をとりつつ実行されるデータ処理がその後停止することになる。そこで本変形例では、給電停止が他のラックであると判別された場合に、例えばハンドシェイク処理の停止を想定した他者停電処理を実行することで、その後の処理を円滑に進めることができる。
【0041】
なお、上記図4図5に示した例では、メインラック100に対して拡張ラック200を1つだけ増設した構成としていたが、これに限られない。他にも、特に図示しないが、1つのメインラック100に対して複数の拡張ラック200を増設し、それら複数の拡張ラック200のうちの任意のものにサブCPUユニット202を設けてもよい。拡張ラック200どうしは、1つのメインラック100に対して並列な処理関係としてもよいし、直列に従属する処理関係としてもよい。いずれの処理関係の場合でも、フェースセーフ機能は並列に連動する。つまり、いずれのサブCPUユニット202においても、図5中のサブCPUユニット202側の周辺回路を備えて、それぞれのORゲート214にメインCPUユニット102の全リセット指令信号*ALL−RESETを並列に入力する。また、サブCPUユニット202中の単独リセット指令信号*SELF−RESETで作動するフェールセーフ機能は、当該拡張ラック200に限定してもよいし、当該サブCPUユニット202に割り当てられた他のサブCPUユニット202を備えない拡張ラック200に対しても適用してもよい。
【0042】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。
【0043】
その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
【符号の説明】
【0044】
1、1A 制御装置
2 外部バス
3 フェールセーフ信号線
4 外部電源
100 メインラック(基本ラック)
101 電源ユニット(電源モジュール)
102 メインCPUユニット(第1CPUモジュール)
102a Dスイッチ(第1スイッチ)
121 モニタレジスタ(判別部)
200 拡張ラック
201 電源ユニット(電源モジュール)
202 サブCPUユニット(第2CPUモジュール)
202a Dスイッチ(第2スイッチ)
221 モニタレジスタ(判別部)
図1
図2
図3
図4
図5