JP2007011956A - プログラマブルコントローラ - Google Patents

プログラマブルコントローラ Download PDF

Info

Publication number
JP2007011956A
JP2007011956A JP2005194966A JP2005194966A JP2007011956A JP 2007011956 A JP2007011956 A JP 2007011956A JP 2005194966 A JP2005194966 A JP 2005194966A JP 2005194966 A JP2005194966 A JP 2005194966A JP 2007011956 A JP2007011956 A JP 2007011956A
Authority
JP
Japan
Prior art keywords
information
cpu
programmable controller
control
information processing
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.)
Granted
Application number
JP2005194966A
Other languages
English (en)
Other versions
JP4494299B2 (ja
Inventor
Arata Tanide
新 谷出
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2005194966A priority Critical patent/JP4494299B2/ja
Publication of JP2007011956A publication Critical patent/JP2007011956A/ja
Application granted granted Critical
Publication of JP4494299B2 publication Critical patent/JP4494299B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Safety Devices In Control Systems (AREA)
  • Programmable Controllers (AREA)

Abstract

【課題】簡易な構成で効率よくプログラマブルコントローラ間のデータ通信を行うことが可能なプログラマブルコントローラを得ること。
【解決手段】二重化システムに用いられる制御系システム100において、二重化システムを制御する制御データの送受信を待機系システム200との間で行う制御用CPU11と、制御系機能ユニット30から送信される要求情報を受信する情報処理用CPU15と、を備え、制御用CPU11は、要求情報に応じた指示情報を実行処理中のユーザプログラムとは異なるプログラムを用いて情報処理用CPU15に送信するとともに、待機系システム200からの応答情報を情報処理用CPU15を介して受信し、情報処理用CPU15は、指示情報、応答情報を、制御データの送受信とは異なるチャネルで待機系システム200と送受信する。
【選択図】 図1

Description

本発明は、二重化システムのプログラマブルコントローラ間で通信を行うプログラマブルコントローラに関するものである。
コンピュータシステム等において、複数のプログラマブルコントローラを接続し、互いにデータの送受信を行う技術として二重化システムがある。このような二重化システムは、ユーザプログラムを実行してシステムの制御を行う制御系システムと、ユーザプログラムの実行は行わず制御系システムの監視を行う待機系システムを含んで構成され、制御系システムと待機系システムを二重化用ケーブルで接続している。制御系システム、待機系システムは、それぞれ同様のシステム構成を有し、電源、CPU(Central Processing Unit)、ネットワークの管理等を行う機能ユニット等を備えている。
制御系システムは、制御系システムに異常が発生した際に待機系システムに制御を続行させるためのデータ(以下、制御データという)を、二重化用ケーブルを介して周期的に待機系システムに送信する。これにより、二重化システムの制御に必要となる制御データを制御系システムと待機系システムで同一化(共有化)している。そして、制御系システムに異常が発生すると、待機系システムはそれまでに受信した制御データを用いて、制御系システムに代わって制御を続行する。ここでの制御データの転送範囲は静的に設定されており、プログラム実行中に動的に送信範囲を変更することはできない。
二重化システムにおいては、制御データの転送とは別に、例えば待機系システムの診断を行うために、制御系システムが待機系システム(他系システム)が有するデータ(診断データ)を取得するといった処理が行われる。例えば、待機系システムの機能ユニットが記憶するエラーに関する情報を制御系システムのCPUユニットが取得することによって、待機系システムの機能ユニットの健全性を制御系CPUユニットが監視可能となる。また、異常発生によって制御系システムが新たな待機系システムに切り替わり、待機系システムが新たな制御系システムに切り替わった場合には、新たな制御系システムは新たな待機系システムから必要なデータを取得し、新たな待機系システムの状態を診断することによって、新たな制御系システムが新たな待機系システムのトラブルシューティング等を行うことが可能となる。
二重化システムにおいては、周期的に送受信される制御データや、制御系システムと待機系システムの間で任意に送受信されるデータを簡易な構成で迅速に送受信することが望まれる。
特許文献1に記載のコントローラは、コントローラ間でデータを共有する転写エリア以外のデータをコントローラが取得または変更する際、送信側のコントローラは転写エリアのデータの中に転写エリア外のデータにアクセスするためのコマンドを埋め込み、受信側のコントローラは埋め込まれたコマンドを検出するとともに検出したコマンドに基づいた処理を行い、処理結果を送信側のコントローラに返している。
特開平11−305811号公報
しかしながら、上記従来の技術によれば、転写エリア内にコマンドやコマンドの応答を含めるため、本来転送すべき共有データの領域を圧迫し、転写エリアを共有データの転送のために有効に利用できないという問題があった。また、コマンドを埋め込むアドレスをあらかじめ送信側と受信側の両方のコントローラに設定しておく必要があるため、コントローラの設定に手間がかかるとともに、コントローラを利用する際の柔軟性に欠けるという問題があった。さらに、受信側のコントローラは、埋め込まれたコマンドを検出する手段、検出したコマンドの処理を行う手段等を実装する必要があり、コントローラの構成が複雑になるといった問題があった。
本発明は、上記に鑑みてなされたものであって、簡易な構成で効率よくプログラマブルコントローラ間のデータ通信を行うことが可能なプログラマブルコントローラを得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、二重化されたプログラマブルコントローラ間でデータ通信を行う二重化システムに用いられるプログラマブルコントローラにおいて、ユーザプログラムを実行するとともに予め設定された所定のタイミングで二重化された他のプログラマブルコントローラと前記二重化システムを制御する制御データの送受信を行う制御CPUと、外部機器から送信される所定の要求情報を受信するとともに、前記要求情報が自らのプログラマブルコントローラへの要求である場合に前記要求情報を前記制御CPUに送信し、前記要求情報が前記他のプログラマブルコントローラへの要求である場合に前記要求情報を前記他のプログラマブルコントローラへ転送する情報処理CPUと、を備え、前記制御CPUは、前記他のプログラマブルコントローラで処理可能な前記要求情報に応じた第1の指示情報を、実行処理中のユーザプログラムとは異なるプログラムを用いて前記情報処理CPUに送信するとともに、前記他のプログラマブルコントローラから、自らのプログラマブルコントローラで処理可能な前記第1の指示情報に対応する第1の応答情報を前記情報処理CPUを介して受信し、前記情報処理CPUは、前記第1の指示情報を前記制御データの送受信とは異なるチャネルで前記他のプログラマブルコントローラに送信するとともに、前記第1の応答情報を前記制御データの送受信とは異なるチャネルで前記他のプログラマブルコントローラから受信することを特徴とする。
この発明によれば、他のプログラマブルコントローラへ送信する第1の指示情報と他のプログラマブルコントローラから受信する第1の応答情報を、制御データの送受信とは異なるチャネルで送受信するので、簡易な構成で効率よくプログラマブルコントローラ間のデータ通信を行うことが可能になるという効果を奏する。
以下に、本発明にかかるプログラマブルコントローラの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態
図1は、本発明にかかる二重化システムの実施の形態の構成を示す図である。二重化システムは、プログラマブルコントローラ間を接続して相互にデータの送受信を行うシステムであり、制御系システム100、待機系システム200を含んで構成されている。二重化システムにおいて、制御系システム100と待機系システム200は、二重化用ケーブル3によって接続されている。また、制御系システム100は制御系システムバス41に接続され、待機系システム200は待機系システムバス42に接続されている。
制御系システム100は、二重化システムの制御を行うプログラマブルコントローラであり、待機系システム200は制御系システム100の監視を行うプログラマブルコントローラである。
制御系システム100は、制御系システム100に異常が発生した際に待機系システム200に制御を続行させるためのデータ(制御データ)を、二重化用ケーブル3を介して周期的に待機系システム200に送信する。これにより、二重化システムの制御に必要となる制御データを制御系システムと待機系システムで同一化(共有化)する。制御系システム100は、制御系システム100に異常が発生した際に新たな待機系システムとして動作する。
待機系システム200は、制御系システム100に異常が発生すると、制御系システム100から受信した制御データを用いて、制御系システム100に代わって二重化システムの制御を行う(新たな制御系システムとして機能する)。すなわち、待機系システム200は、制御系システム100に異常が発生した際、制御系システム100から二重化システムの制御を引き継ぎ、システムを停止させることなく制御を続行(系切替え)する。
すなわち、制御系システム100と待機系システム200は、それぞれ同様の構成を有し、一方のシステムが制御系システムとして機能する際には、他方のシステムが待機系システムとして機能する。
制御系システム100は、制御系CPUユニット10、制御系機能ユニット30を含んで構成されている。制御系CPUユニット10は、ユーザプログラムの実行やユーザプログラムの実行に伴う各機能ユニット(制御系機能ユニット30)へのアクセス等の汎用的な処理を行うユニットである。制御系機能ユニット30は、例えばネットワークの管理等の各機能ユニットの目的に特化した処理を行う機能ユニットである。制御系CPUユニット10と制御系機能ユニット30は、制御系システムバス41によって接続されている。
制御系CPUユニット10は、制御用CPU11、制御用ROM(Read Only Memory)12、制御用RAM(Random Access Memory)13、ユーザプログラムメモリ14、情報処理用CPU15、情報処理用ROM16、情報処理用RAM17、共有RAM18、通信I/F19、デバイスメモリ20、バスI/F21、制御用バス22、情報処理用バス23を備えている。
制御用バス22は、制御用CPU11、制御用ROM12、制御用RAM13、ユーザプログラムメモリ14、デバイスメモリ20を接続する。情報処理用バス23は、情報処理用CPU15、情報処理用ROM16、情報処理用RAM17を接続する。また、共有RAM18、通信I/F19、バスI/F21は、制御用バス22と情報処理用バス23に接続されている。
制御用CPU11、情報処理用CPU15は、制御系CPUユニット10の全体の信号処理を行う。制御用CPU11は、制御用ROM12に格納されたシステムプログラム(ユーザプログラム)に基づいて所定の処理(二重化システムを制御する制御データの送受信等)を行う。また、制御用CPU11は、ユーザプログラムメモリ14に格納されるユーザプログラムの実行に関する処理を行う。
情報処理用CPU15は、情報処理用ROM16に格納されたシステムプログラムに基づいて所定の処理を行う。情報処理用CPU15は、例えば不定期に発生する外部機器(制御系CPUユニット10以外の機器(制御系機能ユニット30等))からの要求に応じた処理(要求情報の転送等)を行う。情報処理用CPU15は、外部機器から送信される所定の要求情報を受信するとともに、要求情報が制御系CPUユニット10への要求である場合に要求情報を制御用CPU11に送信し、要求情報が待機系システム200等の他のプログラマブルコントローラへの要求である場合に要求情報を他のプログラマブルコントローラへ転送する。
制御用ROM12、情報処理用ROM16は、それぞれ制御用CPU11、情報処理用CPU15で実行されるシステムプログラムを格納する。制御用RAM13、情報処理用RAM17は、それぞれ制御用CPU11、情報処理用CPU15で実行されるシステムプログラムのワークエリアとして使用される。また、制御用RAM13、情報処理用RAM17は、通信I/F19を介して待機系システム200等の他系システムと通信を行う際の、通信データ格納エリアとしても使用される。
ユーザプログラムメモリ14は、二重化システムのユーザが指定する待機系システム200等の他系システムの任意のデータを取得するためのプログラムを含むユーザプログラムを格納するメモリ(エリア)である。
共有RAM18は、制御用CPU11と情報処理用CPU15のそれぞれからアクセス可能なRAMである。本実施の形態においては、共有RAM18を用いることによって、制御用CPU11と情報処理用CPU15の間で通信を可能としている。
デバイスメモリ20は、ユーザプログラムメモリ14に格納されるユーザプログラムを実行する際、一時的なデータの退避場所として使用したり、各種ログ情報を保存するためのメモリである。
バスI/F21は、制御系CPUユニット10の制御用バス22、情報処理用バス23と、制御系機能ユニット30等の各機能ユニットの制御系システムバス(ユニットバス)41を接続する通信インタフェースである。制御用CPU11、情報処理用CPU15は、バスI/F21を介して、各機能ユニットのバッファメモリ(バッファメモリ33等)にアクセスする。
通信I/F19は、制御系CPUユニット10と待機系CPUユニット50を二重化用ケーブル3で接続する通信インタフェースである。制御系CPUユニット10の制御用CPU11と待機系CPUユニット50の制御用CPU51は、通信I/F19を介して通信を行う。また、制御系CPUユニット10の情報処理用CPU15と待機系CPUユニット50の情報処理用CPU55は、通信I/F19を介して通信を行う。通信I/F19は、情報処理用CPU15と情報処理用CPU55の間で送受信されるデータを、制御用CPU11と制御用CPU51の間で制御データを送受信する際のチャネルとは異なるチャネルで送受信する。
本実施の形態における二重化システムは、制御系CPUユニット10の制御用RAM13内に作成した通信データを、通信I/F19を介して待機系CPUユニット50の制御用RAM53に転送する。また、二重化システムは、制御系CPUユニット10の情報処理用RAM17内に作成した通信データを、通信I/F19を介して待機系CPUユニット50の情報処理用RAM57に転送する。
制御系機能ユニット30は、ユニットCPU31、ユニットRAM32、バッファメモリ33、バスI/F34を備えている。ユニットCPU31は、所定のプログラムに基づいて制御系機能ユニット30内を制御するCPUである。ユニットRAM32は、ユニットCPU31で実行されるプログラムのワークエリアとして使用される。
バッファメモリ33は、所定のデータを格納するメモリであり、必要に応じて待機系システム200によってデータの読み書きが行われる。バスI/F34は、制御系機能ユニット30と制御系システムバス41を接続する通信インタフェースである。
待機系システム200は、制御系システム100と同様の構成を有している。すなわち、待機系システム200は、制御系CPUユニット10に対応する待機系CPUユニット50と制御系機能ユニット30に対応する待機系機能ユニット70を含んで構成されている。
待機系CPUユニット50は、制御用CPU11に対応する制御用CPU51、制御用ROM12に対応する制御用ROM52、制御用RAM13に対応する制御用RAM53、ユーザプログラムメモリ14に対応するユーザプログラムメモリ54、情報処理用CPU15に対応する情報処理用CPU55、情報処理用ROM16に対応する情報処理用ROM56、情報処理用RAM17に対応する情報処理用RAM57、共有RAM18に対応する共有RAM58、通信I/F19に対応する通信I/F59、デバイスメモリ20に対応するデバイスメモリ60、バスI/F21に対応するバスI/F61、制御用バス22に対応する制御用バス62、情報処理用バス23に対応する情報処理用バス63を備えている。
また、待機系機能ユニット70は、ユニットCPU31に対応するユニットCPU71、ユニットRAM32に対応するユニットRAM72、バッファメモリ33に対応するバッファメモリ73、バスI/F34に対応するバスI/F74を備えている。また、待機系CPUユニット50と待機系機能ユニット70は、待機系システムバス42によって接続されている。
ここで、制御系システム100の制御用ROM12に格納されるシステムプログラムと待機系システム200の制御用ROM52に格納されるシステムプログラムの構成、制御系システム100の情報処理用ROM16に格納されるシステムプログラムと待機系システム200の情報処理用ROM56に格納されるシステムプログラムの構成について説明する。なお、以下の説明では制御系システム100に対する待機系システム200を他系システム、制御系システム100自身を自系システムとよぶ場合がある。
図2−1は、情報処理用ROM内に格納するシステムプログラムの構成を説明するための図であり、図2−2は、制御用ROM内に格納するシステムプログラムの構成を説明するための図である。
なお、制御系システム100の制御用ROM12に格納されるシステムプログラムと待機系システム200の制御用ROM52に格納されるシステムプログラムは、同様の機能を有したプログラムであるため、ここでは制御系システム100の制御用ROM12に格納されるシステムプログラムを例にとって説明する。
また、制御系システム100の情報処理用ROM16に格納されるシステムプログラムと待機系システム200の情報処理用ROM56に格納されるシステムプログラムは、同様の機能を有したプログラムであるため、ここでは制御系システム100の情報処理用ROM16に格納されるシステムプログラムを例にとって説明する。
本実施の形態における制御用ROM12内のシステムプログラムは、系間交信手順プログラムAG11、内部CPU間交信手順プログラムAG12を備えている。系間交信手順プログラムAG11は、制御用CPU11が他系システムである待機系システム200の制御用CPU51と二重化用ケーブル3を介して要求(制御データ)の送受信を行うプログラムである。
内部CPU間交信手順プログラムAG12は、自系システムである制御系CPUユニット10内の制御用CPU11と情報処理用CPU15の間で、共有RAM18を介して要求(要求電文、要求電文に対する応答情報(後述する応答電文))等の送受信を行うプログラムである。
また、本実施の形態における情報処理用ROM16内のシステムプログラムは、機器間交信手順プログラムAG1、外部要求処理手順プログラムAG2、内部CPU間交信手順プログラムAG3、交信中継手順プログラムAG4を備えている。
機器間交信手順プログラムAG1は、系が異なるCPUユニット間やCPUユニットと各機能ユニットの間で、機器間要求IDで定義される要求の依頼を行うためのプログラムである。ここでの機器間交信手順プログラムAG1は、自系システムの制御系CPUユニット10以外の外部機器(例えば、待機系システム200の情報処理用CPU55)と情報処理用CPU15が通信(交信)を行う際に用いられる。
機器間交信手順プログラムAG1で用いられる電文には、要求先機器を識別するための要求先IDと要求元機器を識別するための要求元ID、機器間での要求種別(自系システムへのデータ要求であることを示す情報、バッファメモリ73等の他系システムへのデータ要求であることを示す情報等の処理内容を示す情報)を識別するための機器間要求IDが含まれている。
外部要求処理手順プログラムAG2は、機器間交信手順プログラムAG1で受け付けた外部機器からの要求が自系システム(制御系システム100)宛てであれば自系システムで要求に対応する処理を行い、要求が他系システム(待機系システム200)宛てであれば機器間交信手順プログラムAG1を用いて要求を他系システムに転送するプログラムである。
内部CPU間交信手順プログラムAG3は、自系システムである制御系CPUユニット10内の制御用CPU11と情報処理用CPU15の間で、共有RAM18を介して要求の送受信を行うプログラムである。内部CPU間交信手順プログラムAG3は、内部CPU間要求IDで定義される情報処理用CPU15への要求電文を発行する。内部CPU間要求IDで定義される要求の中には、通信の中継手順を定義する情報が含まれている。
交信中継手順プログラムAG4は、内部CPU間交信手順AG3による要求電文を機器間交信手順プログラムAG1による要求電文に変換し、他系システムの情報処理用CPU55へ中継するプログラムである。
ここでの通信の中継手順は、内部CPU間交信手順プログラムAG3,AG12で使用するヘッダ情報を機器間交信手順プログラムAG1で用いられるヘッダ情報(宛先アドレス等)に変換することによって、内部CPU間交信手順プログラムAG3,AG12で送受信される要求電文の通信手順を機器間で通信される要求電文の通信手順として使用する。
つぎに、ユーザプログラムメモリ14、ユーザプログラムメモリ54に格納されるユーザプログラムによる処理内容を説明する。なお、ユーザプログラムメモリ14に格納されるユーザプログラムとユーザプログラムメモリ54に格納されるユーザプログラムは、同様の機能を有したプログラムであるため、ここではユーザプログラムメモリ14に格納されるユーザプログラムを例にとって説明する。
ユーザプログラムメモリ14に格納されるユーザプログラムには、他系システムからのデータの読み出しを行うユーザプログラム(他系システムから固有データを取得するラダープログラム(以下、他系データ読み出しプログラムという))と他系システムへデータの書き込みを行うユーザプログラム(以下、他系データ書き込みプログラムという)がある。
まず、他系データ読み出しプログラムの処理について説明する。図3−1は、他系データ読み出しプログラムの処理を説明するための図である。他系データ読み出しプログラムは、他系システムのデバイスメモリ60または待機系機能ユニット70のバッファメモリ73からデータを読み出すためのプログラムである。
他系データ読み出しプログラムは、起動信号MOのONによって、引数デバイスS1で指定される他系システムのデータを引数デバイスN1ワード(データサイズ)分取得し、引数デバイスD1で指定される自系システムのデバイスメモリ20に格納する。引数デバイスD2には処理の実行状態が格納され、この実行状態をユーザが確認することによって当該命令の実行が完了したか否かを判断することが可能となる。
ここでの引数デバイスS1は、取得対象のデータを格納するデバイスメモリ60やバッファメモリ73の先頭アドレスを指定している。また、引数デバイスD1は、取得したデータを格納するデバイスメモリ20の先頭アドレスを指定し、引数デバイスD2は所定の数値によって処理の実行状態(処理状態)を示す。ここでの引数デバイスD2は、例えば「0」がアイドル状態を示し、「1」が処理中を示し、「2」が処理の正常完了を示し、「3」が処理の異常完了を示す。
つぎに、他系データ書き込みプログラムの処理について説明する。図3−2は、他系データ書き込みプログラムの処理を説明するための図である。他系データ書き込みプログラムは、他系システムのデバイスメモリ60または待機系機能ユニット70のバッファメモリ73にデータを書き込むためのプログラムである。
他系データ書き込みプログラムは、起動信号M1のONによって、引数デバイスS1で指定される自系システムのデータを引数デバイスN1ワード分、引数デバイスD1で指定される他系システムのデバイスメモリ60や待機系機能ユニット70のバッファメモリ73に格納する。引数デバイスD2には処理の実行状態が格納され、この実行状態をユーザが確認することによって当該命令の実行が完了したか否かを判断することが可能となる。
つぎに、二重化システムの動作処理手順を説明する。ここでは、制御系CPUユニット10が待機系システム200からデータの読み出しを行う処理の処理手順について説明する。ここでの制御系CPU10ユニット10が実行する読み出し命令は、取得対象データが待機系機能ユニット70のバッファメモリ73であり、取得データの格納エリアが制御系CPUユニット10のデバイスメモリ20であることを想定している。
図4は、二重化システムの動作処理手順を示すシーケンス図である。二重化システムにおいて、例えば外部機器である制御系機能ユニット30から制御系CPUユニット10にデータの読み出し命令が送信される。
制御系システム100がユーザプログラム実行中に、制御用CPU11によって待機系システム200(他系システム)へのデータの読み出し命令(他系データ読み出しプログラム)を検出すると、制御用CPU11が制御系システム100の制御用ROM12で記憶する内部CPU間交信手順プログラムAG12(実行処理中のユーザプログラムとは異なるユーザプログラム)を用いて、制御系システム100の情報処理用CPU15に所定の要求情報(要求電文)を送信(発行)する(SQ1)。
制御用CPU11から情報処理用CPU15への要求電文には、機器間要求ID、取得対象データの種別を示す情報、取得するデータの先頭アドレスと取得データサイズに関する情報を含んでいる。ここでの、機器間要求IDは、待機系システム200(他系システム)のバッファメモリ73に対するデータ取得(リード命令)であることを識別する情報を含んでいる。
情報処理用CPU15は、内部CPU間交信手順AG3によって制御用CPU11からの要求電文を受信する。内部CPU間交信手順プログラムAG12による要求電文を受信した制御系CPUユニット10の情報処理用CPU15は、受信した要求電文を交信中継手順プログラムAG4によって機器間交信手順プログラムAG1で処理可能な要求電文(特許請求の範囲に記載の第1の指示情報)に変換する。
ここで、内部CPU間交信手順プログラムAG12用の要求電文(内部CPU間交信データ)から機器間交信手順プログラムAG1用の要求電文(機器間交信データ)への変換処理について説明する。
図5−1は、内部CPU間交信手順プログラム用の要求電文から機器間交信手順プログラム用の要求電文への変換処理を説明するための図である。情報処理用CPU15は、交信中継手順プログラムAG4によって、内部CPU間交信用ヘッダ情報(要求電文のヘッダ)を機器間交信用ヘッダ情報に変換する。
具体的には、交信中継を示す内部CPU間要求IDを、要求先ID(データの要求先アドレス)が待機系システム200(他系システム)の待機系CPUユニット50、要求元ID(データの要求元アドレス)が制御系システム100(自系システム)の制御系CPUユニット10であるヘッダ情報に変換して要求電文に付加する。なお、ここでの情報処理用CPU15は、交信中継手順プログラムAG4によってヘッダ情報以外の要求電文自体の変換は行わない。
情報処理用CPU15は、交信中継手順プログラムAG4によって変換された要求電文を、機器間交信手順プログラムAG1を用い、通信I/F19、二重化用ケーブル3を介して待機系CPUユニット50に送信した後、待機系CPUユニット50から要求電文に対応する応答電文の受信を待つ(SQ2)。
待機系システム200の情報処理用CPU55は、制御系システム100の情報処理用CPU15から機器間交信手順プログラムAG1によって要求電文を受信する。要求電文を受信した情報処理用CPU55は、要求電文内の要求先IDが待機系CPU50であることから、外部要求処理手順プログラムAG2に基づいて、待機系CPUユニット50内で要求電文を処理する(SQ3)。
ここでの要求電文の機器間要求IDはバッファメモリ73の読出しを示すため、待機系システム200の情報処理用CPU55は、バスI/F61を介して待機系機能ユニット70のバッファメモリ73上のデータを取得し(SQ4)、要求電文に対する応答電文として取得したデータを制御系システム100の情報処理用CPU15に送信する(SQ5)。ここでの、待機系システム200の情報処理用CPU55は、外部要求処理手順プログラムAG2によって応答電文を作成する。そして、情報処理用CPU55は、作成した応答電文を、交信中継手順プログラムAG4を用いて機器間交信手順プログラムAG1で処理可能な応答電文(特許請求の範囲に記載の第1の応答情報)に変換し情報処理用CPU15に送信する。
制御系システム100の情報処理用CPU15は、機器間交信手順プログラムAG1によって応答電文を受信する。情報処理用CPU15は、交信中継手順プログラムAG4によって、応答電文のヘッダ情報を内部CPU間交信手順プログラムAG3用のヘッダ情報に変換し、ヘッダ情報を変換した応答データを制御用CPU11に送信する(SQ6)。
ここで、機器間交信手順プログラムAG1用の応答電文(機器間交信データ)から内部CPU間交信手順プログラムAG12用の応答電文(内部CPU間交信データ)への変換(復元)処理について説明する。
図5−2は、機器間交信手順プログラム用の応答電文から内部CPU間交信手順プログラム用の応答電文への変換処理を説明するための図である。情報処理用CPU15は、交信中継手順プログラムAG4によって、機器間交信用ヘッダ情報(応答電文のヘッダ)を内部CPU間交信用ヘッダ情報に変換する。
具体的には、要求先IDが待機系システム200(他系システム)の待機系CPUユニット50、要求元IDが制御系システム100(自系システム)の制御系CPUユニット10であるヘッダ情報を、交信中継を示す内部CPU間要求IDに変換して応答電文に付加する。なお、ここでの情報処理用CPU15は、交信中継手順プログラムAG4によってヘッダ情報以外の応答電文自体の変換は行わない。
内部CPU間交信手順プログラムAG3によって、応答電文を受信した制御系システム100の制御用CPU11は、応答電文に含まれる他系システムの機能ユニットのバッファメモリデータを、他系データ読み出しプログラムで指定される取得データの格納エリア(デバイスメモリ20)に格納し、データの読み出し命令を完了する(SQ7)。
なお、SQ1〜SQ7までの処理の間、他系データ読み出しプログラムの処理とユーザプログラムの処理は、それぞれ独立して行われ、他系データ読み出しプログラムの実行によってユーザプログラムの実行が妨げられることはない。
つぎに、制御用CPU11においてデータのリード(READ)命令を実行する際(要求発行時)の処理手順を説明する。図6は、リード命令処理の処理手順を示すフローチャートである。
制御系システム100の制御用CPU11は、データのリード命令(要求電文の発行)を行う際、リード命令で指定される引数に異常があるか否かのチェックを行う(ステップST1,ST2)。
引数に異常がない場合(ステップST2、No)、制御用CPU11はリード命令で指定された引数に基づいて、内部CPU間(制御用CPU11と情報処理用CPU15の間)での通信データ(内部CPU間交信用データ)を作成する(ステップST3)。ここでの電文は、内部CPU間要求IDとして交信中継(制御系システム100から待機系システム200への通信)を示す情報を含んでいる。交信中継を示す情報によって、本電文は機器間交信手順プログラムAG1を用いて他系システムに中継されることが指定される。
また、制御用CPU11は、内部CPU間交信用電文を、内部CPU間交信手順プログラムAG12用の要求電文として作成しておく。制御用CPU11は、作成した電文を内部CPU間交信手順プログラムAG12を用いて情報処理用CPU15に送信する(ステップST4)。
この後、制御用CPU11は、電文の送信が完了(成功)したか否かの確認を行う(ステップST5)。電文の送信が成功である場合(ステップST5、Yes)、制御用CPU11は命令の処理状態を処理中(「1」)としてデバイスメモリ20(引数デバイスD2)に格納し、まだ取得データが参照できない状態であることをユーザプログラムに通知する(ステップST6)。
一方、引数に異常がある場合(引数チェックで制御用CPU11が異常を検出した場合)(ステップST2、Yes)や、電文の送信が失敗である場合(ステップST5、No)、ユーザプログラムの実行を停止し、所定の表示手段(図示せず)によって電文送信のエラー表示を行う(ステップST7)。
つぎに、制御系システム100が待機系システム200からデータの読み出しを行う際の制御用CPU11、情報処理用CPU15の詳細な処理手順を説明する。まず、制御用CPU11が、内部CPU間交信手順プログラムAG3,AG12による要求電文送受信に対する応答電文を情報処理用CPU15から受信した際(応答受信時)の処理手順を説明する。
図7は、応答電文を受信した際の制御用CPUの処理手順を示すフローチャートである。制御系システム100の制御用CPU11は、情報処理用CPU15から応答電文を受信すると、応答電文が正常であるか否かをチェックする(ステップST11,12)。
応答電文が異常でない場合(ステップST12、No)、制御用CPU11は応答電文に含まれる取得データをリード命令の引数(引数デバイスD1)の取得データ格納先頭アドレス(デバイスメモリ20の先頭アドレス)で示されるエリアにコピーする(ステップST13)。制御用CPU11は、処理状態を正常完了(「2」)としてデバイスメモリ20(引数デバイスD2)に格納し、取得データを参照可能であることをユーザプログラムに通知する(ステップST14)。
一方、応答電文が異常である場合(ステップST12、Yes)、制御用CPU11は、処理状態を異常完了(「3」)としてデバイスメモリ20(引数デバイスD2)に格納し、取得データが無効であることをユーザプログラムに通知する(ステップST15)。
つぎに、情報処理用CPU15が内部CPU間交信手順プログラムAG3によって交信中継を指定する要求電文を受信した際の、交信中継手順の処理手順を説明する。図8は、交信中継の処理手順を示すフローチャートである。制御系システム100の情報処理用CPU15は、制御用CPU11から受信した要求電文が正常か否かをチェックする。具体的には、情報処理用CPU15が受信した要求電文に含まれる機器間要求ID等が正常か否かをチェックする(ステップST21,ST22)。
要求電文が正常である場合(チェックが正常に終了した場合)、要求電文を機器間交信手順プログラムAG1に従って送信するために、情報処理用CPU15は、交信中継手順プログラムAG4によって機器間交信手順プログラムAG1用のヘッダ情報を作成する。
なお、ここでのヘッダ情報に含まれる要求先IDは他系システムの待機系CPUユニット50を指定し、要求元IDは自系システムの制御系CPUユニット10を指定する(ステップST23)。
この後、情報処理用CPU15は、作成した機器間交信手順プログラムAG1用のヘッダ情報に制御用CPU11から受信した要求電文を結合して機器間交信データを作成する(ステップST24)。情報処理用CPU15は、作成した機器間交信データ(要求電文)を機器間交信手順プログラムAG1を用いて待機系CPUユニット50に送信する(ステップST25)。情報処理用CPU15からの機器間交信データは、通信I/F19、二重化用ケーブル3を介して他系システムである待機系システム200に送信される。次に、情報処理用CPU15は、送信した要求電文に対する応答電文の受信を待つ(ステップST26)。
情報処理用CPU15は、情報処理用CPU55から要求電文に対する応答電文を受信すると、受信した応答電文の応答結果をチェックする(ステップST27,ST28)。応答電文の応答結果が正常である場合(ステップST28、Yes)、応答結果をそのまま内部CPU間交信手順プログラムAG3用の応答電文とする。
この後、情報処理用CPU15は、内部CPU間交信手順プログラムAG3用のヘッダ情報を作成し(ステップST29)、応答電文とヘッダ情報を結合して内部CPU間交信データを作成する(ステップST30)。情報処理用CPU15は、内部CPU間交信手順プログラムAG3を用いて制御用CPU11に内部CPU間交信データを送信する(ステップST31)。
情報処理用CPU15は、送信結果の確認を行う(ステップST32)。送信が成功していれば要求電文の送信処理、応答電文の受信処理は終了となるが、送信に失敗した場合はエラー表示を行って(ステップST33)、処理を終了する。
一方、情報処理用CPU15が情報処理用CPU55から受信した応答電文の応答結果が正常でない場合や(ステップST28、No)、情報処理用CPU15が制御用CPU11から受信した要求電文が異常である場合(ステップST22、Yes)、情報処理用CPU15は制御用CPU11に対して異常終了用の応答電文を作成する(ステップST34)。そして、情報処理用CPU15はステップST29〜ST33の処理を行う。
すなわち、情報処理用CPU15は、内部CPU間交信手順プログラムAG3用のヘッダ情報を作成し(ステップST29)、応答電文とヘッダ情報を結合して(ステップST30)、内部CPU間交信手順プログラムAG3を用いて制御用CPU11にデータ送信する(ステップST31)。
情報処理用CPU15は、送信結果の確認を行い(ステップST32)、送信が成功していれ処理を終了し、送信に失敗した場合はエラー表示を行って(ステップST33)、処理を終了する。
このように、制御系システム100は、制御系CPUユニット10で実行されるユーザプログラムの処理速度や、周期的に制御系システムから待機系システムに送信される制御データの転送の影響を小さくして、待機系システム200のデータへアクセス可能となる。
また、本実施の形態においては、制御系システム100が待機系システム200からデータの読み出しを行う処理の処理手順について説明したが、制御系システム100が待機系のシステムとなり、待機系システム200が制御系のシステムになった場合は、制御系のシステムとなった待機系システム200が待機系のシステムとなった制御系システム100からデータの読み出し等を行なってもよい。
この場合の待機系システム200は実施の形態で説明した制御系システム100と同様の動作を行い、制御系システム100は実施の形態で説明した待機系システム200と同様の動作を行なう。すなわち、情報処理用CPU55が、内部CPU間交信手順AG3によって制御用CPU51からの要求電文を受信する。そして、内部CPU間交信手順プログラムAG12による要求電文を受信した制御系CPUユニット50の情報処理用CPU55は、受信した要求電文を交信中継手順プログラムAG4によって機器間交信手順プログラムAG1で処理可能な要求電文(特許請求の範囲に記載の第2の指示情報)に変換する。
また、制御系システム100が待機系システム200から要求電文を受信すると、制御系システム100の情報処理用CPU15は、外部要求処理手順プログラムAG2によって応答電文を作成する。そして、情報処理用CPU15は、作成した応答電文を、交信中継手順プログラムAG4を用いて機器間交信手順プログラムAG1で処理可能な応答電文(特許請求の範囲に記載の第2の応答情報)に変換し情報処理用CPU55に送信する。
なお、本実施の形態においては、制御系CPUユニット10が待機系システム200からデータの読み出しを行う処理の処理手順について説明したが、制御系CPUユニット10が待機系システム200へデータの書き込みを行う処理の処理手順もデータの読み出し処理と同様の処理によって行う。
すなわち、制御系CPUユニット10によって待機系システム200へデータの書き込みを行う場合、制御系CPUユニット10がデバイスメモリ20等から書き込み対象となるデータを抽出する。
また、制御用CPU11から情報処理用CPU15への要求電文の機器間要求IDには、待機系システム200のバッファメモリ73等に対してデータの書き込み取得(ライト命令)であることを識別する情報を含ませておく。そして、待機系システム200の情報処理用CPU55は、バスI/F61を介して待機系機能ユニット70のバッファメモリ73等にデータの書き込みを行う。
また、本実施の形態においては、制御系CPU10ユニット10が待機系機能ユニット70のバッファメモリ73からデータの読み出しを行う場合について説明したが、制御系CPU10ユニット10がデバイスメモリ60からデータの読み出しを行ってもよい。また、制御系CPU10ユニット10がデバイスメモリ60へデータの書き込みを行ってもよい。
このように、実施の形態によれば、自系システムのユーザプログラムから他系システムのデータへアクセスし、データの読み出しや書き込みを行うので、容易に他系システムのデータを利用することが可能となる。したがって、簡易な構成で他系システムの診断やトラブルシュートを容易に行うことが可能となる。
また、プログラマブルコントローラが外部機器からの要求処理を行う情報処理用CPU11を備え、情報処理用CPU11が他系システムのデータの取得やデータの変更処理等を行うので、制御用CPU15で行われるユーザプログラムの実行や制御データの転送処理を阻害しない。したがって、プログラマブルコントローラは、簡易な構成で高速に他系システムの任意データにアクセスすることができるとともに、制御データの転送を高いスループットで処理することが可能となる。これにより、プログラマブルコントローラ間のデータ通信を効率よく行うことが可能となる。
以上のように、本発明にかかるプログラマブルコントローラは、二重化システムで通信を行うプログラマブルコントローラに適している。
本発明にかかる二重化システムの実施の形態の構成を示す図である。 情報処理用ROM内に格納するシステムプログラムの構成を説明するための図である。 制御用ROM内に格納するシステムプログラムの構成を説明するための図である。 他系データ読み出しプログラムの処理を説明するための図である。 他系データ書き込みプログラムの処理を説明するための図である。 二重化システムの動作処理手順を示すシーケンス図である。 内部CPU間交信手順プログラム用の要求電文から機器間交信手順プログラム用の要求電文への変換処理を説明するための図である。 機器間交信手順プログラム用の応答電文から内部CPU間交信手順プログラム用の応答電文への変換処理を説明するための図である。 リード命令処理の処理手順を示すフローチャートである。 応答電文を受信した際の制御用CPUの処理手順を示すフローチャートである。 交信中継の処理手順を示すフローチャートである。
符号の説明
3 二重化用ケーブル
10 制御系CPUユニット
11,51 制御用CPU
12,52 制御用ROM
13,53 制御用RAM
14,54 ユーザプログラムメモリ
15,55 情報処理用CPU
16,56 情報処理用ROM
17,57 情報処理用RAM
18,58 共有RAM
19,59 通信I/F
20,60 デバイスメモリ
21,34,61,74 バスI/F
22,62 制御用バス
23,63 情報処理用バス
30 制御系機能ユニット
31,71 ユニットCPU
32,72 ユニットRAM
33,73 バッファメモリ
41 制御系システムバス
42 待機系システムバス
50 待機系CPUユニット
70 待機系機能ユニット
100 制御系システム
200 待機系システム
AG1 機器間交信手順プログラム
AG2 外部要求処理手順プログラム
AG3,AG12 内部CPU間交信手順プログラム
AG4 交信中継手順プログラム
AG11 系間交信手順プログラム

Claims (5)

  1. 二重化されたプログラマブルコントローラ間でデータ通信を行う二重化システムに用いられるプログラマブルコントローラにおいて、
    ユーザプログラムを実行するとともに予め設定された所定のタイミングで二重化された他のプログラマブルコントローラと前記二重化システムを制御する制御データの送受信を行う制御CPUと、
    外部機器から送信される所定の要求情報を受信するとともに、前記要求情報が自らのプログラマブルコントローラへの要求である場合に前記要求情報を前記制御CPUに送信し、前記要求情報が前記他のプログラマブルコントローラへの要求である場合に前記要求情報を前記他のプログラマブルコントローラへ転送する情報処理CPUと、
    を備え、
    前記制御CPUは、前記他のプログラマブルコントローラで処理可能な前記要求情報に応じた第1の指示情報を、実行処理中のユーザプログラムとは異なるプログラムを用いて前記情報処理CPUに送信するとともに、前記他のプログラマブルコントローラから、自らのプログラマブルコントローラで処理可能な前記第1の指示情報に対応する第1の応答情報を前記情報処理CPUを介して受信し、
    前記情報処理CPUは、前記第1の指示情報を前記制御データの送受信とは異なるチャネルで前記他のプログラマブルコントローラに送信するとともに、前記第1の応答情報を前記制御データの送受信とは異なるチャネルで前記他のプログラマブルコントローラから受信することを特徴とするプログラマブルコントローラ。
  2. 前記情報処理CPUは、前記制御CPUと当該情報処理CPUとの間で送受信する前記第1の指示情報を、前記他のプログラマブルコントローラと自らのプログラマブルコントローラとの間で送受信可能な情報に変換して前記他のプログラマブルコントローラに送信することを特徴とする請求項1に記載のプログラマブルコントローラ。
  3. 前記制御CPUと前記情報処理CPUとの間で送受信する前記第1の指示情報および前記第1の応答情報は、前記第1の指示情報に応じた処理内容を示す情報を含み、
    前記他のプログラマブルコントローラに送信する前記第1の指示情報は、前記第1の指示情報の送信元アドレスに関する情報および前記第1の指示情報の送信先アドレスに関する情報を含むことを特徴とする請求項1または2に記載のプログラマブルコントローラ。
  4. 前記情報処理CPUは、前記他のプログラマブルコントローラから送信される自らのプログラマブルコントローラで処理可能な第2の指示情報を受信して前記他のプログラマブルコントローラで処理可能な前記第2の指示情報に対応する第2の応答情報を前記他のプログラマブルコントローラに送信する際に、前記第2の応答情報を前記他のプログラマブルコントローラと自らのプログラマブルコントローラとの間で送受信可能な情報に変換して前記他のプログラマブルコントローラに送信することを特徴とする請求項1〜3のいずれか1つに記載のプログラマブルコントローラ。
  5. 前記制御CPUと前記情報処理CPUとの間で送受信する前記第2の指示情報および前記第2の応答情報は、前記第2の指示情報の送信元アドレスに関する情報および前記第2の指示情報の送信先アドレスに関する情報を含み、
    前記他のプログラマブルコントローラに送信する前記第2の応答情報は、前記第2の指示情報に応じた処理内容を示す情報を含むことを特徴とする請求項1〜4のいずれか1つに記載のプログラマブルコントローラ。
JP2005194966A 2005-07-04 2005-07-04 プログラマブルコントローラ Expired - Fee Related JP4494299B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005194966A JP4494299B2 (ja) 2005-07-04 2005-07-04 プログラマブルコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005194966A JP4494299B2 (ja) 2005-07-04 2005-07-04 プログラマブルコントローラ

Publications (2)

Publication Number Publication Date
JP2007011956A true JP2007011956A (ja) 2007-01-18
JP4494299B2 JP4494299B2 (ja) 2010-06-30

Family

ID=37750313

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005194966A Expired - Fee Related JP4494299B2 (ja) 2005-07-04 2005-07-04 プログラマブルコントローラ

Country Status (1)

Country Link
JP (1) JP4494299B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008578A (ja) * 2009-06-26 2011-01-13 Mitsubishi Electric Corp 制御装置
WO2023176164A1 (ja) * 2022-03-18 2023-09-21 株式会社 東芝 制御システム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10232704A (ja) * 1997-02-20 1998-09-02 Fuji Electric Co Ltd 二重化プログラマブルコントローラ
JPH11312007A (ja) * 1998-04-28 1999-11-09 Hitachi Ltd プログラマブルコントローラ
JP2002149212A (ja) * 2000-11-13 2002-05-24 Fuji Electric Co Ltd 制御データを等値化する冗長化プログラマブルコントローラ及び等値化方法。
JP2004054907A (ja) * 2002-05-31 2004-02-19 Omron Corp プログラマブルコントローラ及びcpuユニット並びに通信ユニット及び通信ユニットの制御方法
JP2004213412A (ja) * 2003-01-06 2004-07-29 Hitachi Ltd 二重化制御装置
JP2004326531A (ja) * 2003-04-25 2004-11-18 Mitsubishi Electric Corp プログラマブルコントローラ及びプログラマブルコントローラの多重化システム
JP2005129026A (ja) * 2003-10-02 2005-05-19 Omron Corp プログラマブルコントローラおよび通信ユニットならびにコントローラシステムおよびデータ処理方法ならびに変数解決方法およびデータ受渡方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10232704A (ja) * 1997-02-20 1998-09-02 Fuji Electric Co Ltd 二重化プログラマブルコントローラ
JPH11312007A (ja) * 1998-04-28 1999-11-09 Hitachi Ltd プログラマブルコントローラ
JP2002149212A (ja) * 2000-11-13 2002-05-24 Fuji Electric Co Ltd 制御データを等値化する冗長化プログラマブルコントローラ及び等値化方法。
JP2004054907A (ja) * 2002-05-31 2004-02-19 Omron Corp プログラマブルコントローラ及びcpuユニット並びに通信ユニット及び通信ユニットの制御方法
JP2004213412A (ja) * 2003-01-06 2004-07-29 Hitachi Ltd 二重化制御装置
JP2004326531A (ja) * 2003-04-25 2004-11-18 Mitsubishi Electric Corp プログラマブルコントローラ及びプログラマブルコントローラの多重化システム
JP2005129026A (ja) * 2003-10-02 2005-05-19 Omron Corp プログラマブルコントローラおよび通信ユニットならびにコントローラシステムおよびデータ処理方法ならびに変数解決方法およびデータ受渡方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008578A (ja) * 2009-06-26 2011-01-13 Mitsubishi Electric Corp 制御装置
WO2023176164A1 (ja) * 2022-03-18 2023-09-21 株式会社 東芝 制御システム

Also Published As

Publication number Publication date
JP4494299B2 (ja) 2010-06-30

Similar Documents

Publication Publication Date Title
US7633856B2 (en) Multi-node system, internodal crossbar switch, node and medium embodying program
US7047341B2 (en) Multi-processing memory duplication system
JP3882783B2 (ja) プログラマブルコントローラ及びcpuユニット並びに通信ユニット及び通信ユニットの制御方法
JP4494299B2 (ja) プログラマブルコントローラ
US8055939B2 (en) Memory control device and methods thereof
JP4001093B2 (ja) プログラマブルコントローラおよび二重化ネットワークシステム
US7315913B2 (en) CPU system, bus bridge, control method therefor, and computer system
US7873861B2 (en) Apparatus to use fabric initialization to test functionality of all inter-chip paths between processors in system
US6523077B1 (en) Data processing apparatus and data processing method accessing a plurality of memories in parallel
US20020089940A1 (en) Duplexing apparatus and method in large scale system
KR102102160B1 (ko) 중앙처리장치와 주기억장치의 인터페이스 장치 및 방법
US20040153584A1 (en) Information processor
JP3938377B2 (ja) 監視制御装置
JPS63128837A (ja) 回線制御装置
KR101397993B1 (ko) 접속 교환 프로세서 이중화 시스템 및 방법
JP2737480B2 (ja) 二重化通信制御装置の切り替え方法及び装置
JPH0427239A (ja) Lan接続装置の制御方法
WO2004079573A1 (ja) マルチプロセッサシステム
JPH04360242A (ja) 二重化システムの系切替装置およびその方法
JP3861649B2 (ja) モジュール間のメッセージ通信方式
JP2512847B2 (ja) デ―タ通信システムのメッセ―ジ制御方式
JPH0293702A (ja) 二重化伝送装置
JPH1094073A (ja) 冗長化コントローラ用伝送装置
JPH08137709A (ja) 情報処理システム
JPH0555236U (ja) 二重化データ処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091006

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100316

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100407

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140416

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees