[go: up one dir, main page]

JP2014119912A - 制御装置および制御プログラム - Google Patents

制御装置および制御プログラム Download PDF

Info

Publication number
JP2014119912A
JP2014119912A JP2012273886A JP2012273886A JP2014119912A JP 2014119912 A JP2014119912 A JP 2014119912A JP 2012273886 A JP2012273886 A JP 2012273886A JP 2012273886 A JP2012273886 A JP 2012273886A JP 2014119912 A JP2014119912 A JP 2014119912A
Authority
JP
Japan
Prior art keywords
unit
identification information
information
actual machine
setting
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
JP2012273886A
Other languages
English (en)
Other versions
JP6509477B2 (ja
Inventor
Takamasa Ueda
貴雅 植田
Akihiro Tamura
明広 田村
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2012273886A priority Critical patent/JP6509477B2/ja
Publication of JP2014119912A publication Critical patent/JP2014119912A/ja
Application granted granted Critical
Publication of JP6509477B2 publication Critical patent/JP6509477B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Abstract

【課題】システム構成をよりフレキシブルに追加/変更することができる環境を提供する。
【解決手段】各々が与えられた設定情報に従って動作する1つ以上のスレーブ装置54−1,54−2とバスを介して通信可能に接続されて、マスタ装置52として機能する制御装置が提供される。制御装置は、設定情報D24と各スレーブ装置を特定するための識別情報D22とを含む構成情報をスレーブ装置別に格納するための記憶手段D20を含む。設定情報は、対応するスレーブ装置のバスにおける識別情報を示す情報を含む。制御装置は、スレーブ装置から識別情報の実機値を取得するとともに、構成情報に含まれる識別情報と当該取得した識別情報の実機値とを照合する照合手段(1),(3)と、取得した識別情報の実機値と一致する識別情報を含む構成情報に対応する設定情報を、識別情報の実機値を取得したスレーブ装置へ与える設定手段(2),(4)とを含む。
【選択図】図8

Description

本発明は、機械や設備などの動作を制御するために用いられる制御装置に関する。
多くの生産現場で使用される機械や設備は、典型的には、プログラマブルコントローラ(Programmable Logic Controller;以下「PLC」とも称す)などからなる制御装置を含む制御システムによって制御される。このような制御システムにおいて、PLCは、CPU(Central Processing Unit)ユニットと、外部のスイッチやセンサからの信号入力および外部のリレーやアクチュエータへの信号出力を担当するIO(Input Output)ユニットなどの機能ユニットとを含む。また、PLCは、ネットワークにより、複数のリモートIOターミナルと接続されこともある。このような各リモートIOターミナルは、通信カプラと、1または複数の機能ユニットとを含む。
このようなリモートIOターミナルは複数の機能ユニットを含むことが一般的であり、これらの機能ユニットが故障する場合なども生じ得る。このような機能ユニットの故障により制御システムが停止すると、制御対象の機械や設備も停止せざるを得ない。そのため、このような機能ユニットの故障時の迅速な復旧が要求される。
このような課題に対して、以下のような先行技術が存在する。例えば、特開2007−102764号公報(特許文献1)に開示されるリモートターミナル装置は、各I/Oユニットのユニット情報並びに設定値情報を保存することが可能とされたバックアップ手段を有しており、交換されたI/Oユニットが所定のリストア条件を満たしているかどうかを判定することができる。また、特開2008−097369号公報(特許文献2)は、ユニットのツールレスオンライン脱着が可能なプログラマブル・コントローラを開示する。
特開2007−102764号公報 特開2008−097369号公報
上述のような制御システムに対する低コスト化の要求や、PLCユニットの処理能力の向上などに伴って、単一のPLCユニットに対して、より多くの機能ユニットが装着される傾向にある。これに伴って、PLCユニットで実行される制御プログラムも大規模化する傾向にある。このような制御システムを設計するにあたっては、機能ユニットをよりフレキシブルに追加/変更できることが好ましい。
これに対して、上述の先行技術に記載の構成は、既に設定されて稼働中の制御システムにおいて、機能ユニットなどの交換を容易化することを目的としているため、このようなニーズを考慮したものではない。
本発明は、上記のような点を考慮してなされたものであり、その目的は、システム構成をよりフレキシブルに追加/変更することができる環境を提供することにある。
本発明のある局面に従えば、各々が与えられた設定情報に従って動作する1つ以上のスレーブ装置とバスを介して通信可能に接続されて、マスタ装置として機能する制御装置が提供される。制御装置は、設定情報と各スレーブ装置を特定するための識別情報とを含む構成情報をスレーブ装置別に格納するための記憶手段を含む。設定情報は、対応するスレーブ装置のバスにおける識別情報を示す情報を含む。制御装置は、スレーブ装置から識別情報の実機値を取得するとともに、構成情報に含まれる識別情報と当該取得した識別情報の実機値とを照合する照合手段と、取得した識別情報の実機値と一致する識別情報を含む構成情報に対応する設定情報を、識別情報の実機値を取得したスレーブ装置へ与える設定手段とを含む。
好ましくは、設定手段は、取得した識別情報の実機値と一致する識別情報を含む構成情報が存在しない場合に、当該識別情報の実機値を取得したスレーブ装置に対しては、設定情報を与えない。
好ましくは、照合手段は、取得した識別情報の実機値と一致する識別情報を含む構成情報が存在しない場合に、エラーを出力する。
さらに好ましくは、構成情報は、対応するスレーブ装置がバスに現実に接続されているか否かの判断を無効化するための情報を含み、照合手段は、構成情報に無効化するための情報が含まれている場合には、対応する識別情報と一致する識別情報の実機値がいずれのスレーブ装置からも取得されなくとも、エラーを出力しない。
さらに好ましくは、照合手段は、設定情報に無効化するための情報が含まれている場合であって、対応する識別情報とは異なる識別情報の実機値がスレーブ装置から取得されたときには、エラーを出力する。
好ましくは、識別情報は、各スレーブ装置の種類を特定するための種別情報と、各スレーブ装置をユニークに特定するための個体識別番号とを含み、照合手段は、種別情報および個体識別番号の両方を用いて照合を行うモードと、種別情報を用いて照合を行うモードとを選択可能に構成される。
本発明の別の局面に従えば、各々が与えられた設定情報に従って動作する1つ以上のスレーブ装置とバスを介して通信可能に接続されて、マスタ装置として機能する処理装置において実行される制御プログラムが提供される。処理装置は、設定情報と各スレーブ装置を特定するための識別情報とを含む構成情報をスレーブ装置別に格納するための記憶手段を備え、設定情報は、対応するスレーブ装置のバスにおける識別情報を示す情報を含む。制御プログラムは、処理装置に、スレーブ装置から識別情報の実機値を取得するとともに、構成情報に含まれる識別情報と当該取得した識別情報の実機値とを照合するステップと、取得した識別情報の実機値と一致する識別情報を含む構成情報に対応する設定情報を、識別情報の実機値を取得したスレーブ装置へ与えるステップとを実行させる。
本発明によれば、システム構成をよりフレキシブルに追加/変更することができる。
本実施の形態に係る制御システムの構成例を示す模式図である。 本実施の形態に係るリモートIOターミナルの接続構成を示す模式図である。 本実施の形態に係るリモートIOターミナルを構成する通信カプラのハードウェア構成を示す模式図である。 本実施の形態に係るリモートIOターミナルの機能ユニットのハードウェア構成を示す模式図である。 本実施の形態に係るPLCの接続構成を示す模式図である。 本実施の形態に係るPLCを構成するCPUユニットのハードウェア構成を示す模式図である。 本実施の形態に係るPLCに接続されるサポート装置のハードウェア構成を示す模式図である。 本実施の形態に係るユニット構成データの照合処理を説明するための模式図である。 本実施の形態に係る通信カプラに格納されるユニット構成管理情報D1のデータフォーマットの一例を示す図である。 本実施の形態に係る機能ユニットに格納される固有の識別情報(実機値)D40のデータフォーマットの一例を示す図である。 本実施の形態に係る通信カプラに設定されるユニット無効化設定の一例を示す図である。 図11に示すユニット無効化設定において設定されるユニットNoの設定例を示す図である。 図11に示すユニット無効化設定において設定されるメモリ空間の一例を示す図である。 本実施の形態に係るユニット無効化設定を含むユニット構成データの照合処理を説明するための模式図である。 本実施の形態に係るユニット無効化設定の別に実行されるエラー出力処理の対応関係を示す図である。 本実施の形態に係るユニット構成データの照合処理の処理手順を示すシーケンス図である。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
<A.制御システムの構成例>
まず、本実施の形態に係る制御システムの構成例について説明する。図1は、本実施の形態に係る制御システムの構成例を示す模式図である。図1を参照して、制御システムSYSは、PLC1と、フィールドネットワーク2を介してPLC1に接続されるサーボモータドライバ3およびリモートIOターミナル5と、フィールド機器である検出スイッチ6およびリレー7とを含む。PLC1には、接続ケーブル10などを介してサポート装置8が接続される。
PLC1は、主たる演算処理を実行するCPUユニット13と、1つ以上の機能ユニット14とを含む。これらの機能ユニット14は、システムバス(内部バス)であるPLCシステムバス11を介して、データを互いに遣り取りできるように構成される。また、機能ユニット14には、電源ユニット12によって適切な電圧の電源が供給される。このような機能ユニット14は、IOユニットや特殊ユニットを含む。
IOユニットは、一般的な入出力処理に関するユニットであり、オン/オフといった2値化されたデータの入出力を司る。すなわち、IOユニットは、検出スイッチ6などのセンサが何らかの対象物を検出している状態(オン)および何らの対象物も検出していない状態(オフ)のいずれであるかという情報を収集する。また、IOユニットは、リレー7やアクチュエータといった出力先に対して、活性化するための指令(オン)および不活性化するための指令(オフ)のいずれかを出力する。
特殊ユニットは、アナログデータの入出力、温度制御、特定の通信方式による通信といった、IOユニットではサポートしない機能を有する。
フィールドネットワーク2は、CPUユニット13と遣り取りされる各種データを伝送する。フィールドネットワーク2としては、各種の産業用イーサネット(登録商標)を用いることができる。産業用イーサネット(登録商標)としては、例えば、EtherCAT(登録商標)、PROFINET(登録商標)、MECHATROLINK(登録商標)−III、Powerlink、SERCOS(登録商標)−III、CIP Motionなどがある。さらに、産業用イーサネット(登録商標)以外のフィールドネットワークを用いてもよい。例えば、DeviceNet、CompoNet(登録商標)などを用いてもよい。
サーボモータドライバ3は、フィールドネットワーク2を介してCPUユニット13と接続されるとともに、CPUユニット13からの指令値に従ってサーボモータ4を駆動する。
図1に示す制御システムSYSのフィールドネットワーク2には、さらに、1つ以上のリモートIOターミナル5が接続されている。リモートIOターミナル5は、機能ユニット14と同様に、一般的な入出力処理に関する処理を行う。より具体的には、リモートIOターミナル5は、フィールドネットワーク2でのデータ伝送に係る処理を行うための通信カプラ52と、1つ以上の機能ユニット54(IOユニットや特殊ユニットを含む)とを含む。これらの機能ユニット54は、システムバス(内部バス)であるリモートIOターミナルバス51を介して、データを互いに遣り取りできるように構成される。
通信カプラ52は、機能ユニット54の動作を制御するとともに、CPUユニット13との間のデータ伝送を制御する。通信カプラ52は、フィールドネットワーク2を介して、PLC1のCPUユニット13に接続されている。
リモートIOターミナル5において、通信カプラ52は、装着される機能ユニット54(IOユニットや特殊ユニット)との間のリモートIOターミナルバス51を介したデータ伝送を主体的に(マスタとして)管理する。同様に、PLC1において、CPUユニット13は、装着される機能ユニット14(IOユニットや特殊ユニット)との間のPLCシステムバス11を介したデータ伝送を主体的に(マスタとして)管理する。
そこで、以下の説明では、リモートIOターミナル5における通信カプラ52、および、PLC1におけるCPUユニット13について、その機能に着目して「マスタ装置」あるいは「バスマスタ」とも称す。これに対して、リモートIOターミナル5において通信カプラ52と接続される機能ユニット、および、PLC1においてCPUユニット13と接続される機能ユニットについて、その機能に着目して「スレーブ装置」とも称す。
また、通信カプラ52およびCPUユニット13においては、搭載されたプロセッサがシステムプログラムを実行するなどして、後述するような処理を実現する。そのため、通信カプラ52およびCPUユニット13は、各種処理を実行する処理装置であるとも言える。
<B.リモートIOターミナル5のハードウェア構成>
次に、本実施の形態に係る制御システムSYSの一部を構成するリモートIOターミナル5のハードウェア構成について説明する。
(b1.接続構成)
図2は、本実施の形態に係るリモートIOターミナル5の接続構成を示す模式図である。図2を参照して、リモートIOターミナル5では、1つ以上の機能ユニット54−1,54−2,54−3,…が通信ラインであるリモートIOターミナルバス51(ダウンリンク511およびアップリンク512)を介して通信カプラ52と互いにデータ伝送可能になっている。
一例として、ダウンリンク511およびアップリンク512では、シリアル通信が採用されており、対象のデータは、時系列に一列に並べられた形で伝送する。より具体的には、ダウンリンク511では、マスタ装置として機能する通信カプラ52からスレーブ装置として機能する機能ユニット54へ向けて、ダウンリンク511を介して一方向にデータが送信される。一方、アップリンク512では、いずれかの機能ユニット54から通信カプラ52へ向けて、アップリンク512を介して一方向にデータが送信される。
機能ユニット54の各々は、ダウンリンク511またはアップリンク512を伝送するフレームを受信すると、そのフレームからデータを復号して必要な処理を実行する。そして、機能ユニット54の各々は、フレームを再生成した上で、次段の機能ユニット54へ再送信(フォワード)する。
データを含むフレームのこのような順次転送を実現するために、各機能ユニット54は、ダウンリンク511に関して、受信部(以下「RX」とも記す。)210aおよび送信部(以下「TX」とも記す。)210bを含むとともに、アップリンク512に関して、受信部220aおよび送信部220bを含む。受信部210aおよび220aは、通信ラインであるリモートIOターミナルバス51を介して他の機能ユニット54からフレームとして送信されるデータを受信する。送信部210bおよび220bは、通信ラインであるリモートIOターミナルバス51を介して他の機能ユニット54へフレームとしてデータを送信する。
各機能ユニット54は、プロセッサ200を含み、プロセッサ200がこれらのデータの処理を制御する。
通信カプラ52は、演算主体であるプロセッサ100と、フィールドバス制御部110と、受信部112と、送信部114と、内部バス制御部130とを含む。すなわち、通信カプラ52は、リモートIOターミナルバス51(ダウンリンク511およびアップリンク512)と接続されるだけではなく、受信部112および送信部114を介して、上位通信ネットワークであるフィールドネットワーク2とも接続される。フィールドバス制御部110は、フィールドネットワーク2を介したデータ伝送を管理し、内部バス制御部130は、リモートIOターミナルバス51を介したデータ伝送を管理する。
(b2.通信カプラ52の構成)
図3は、本実施の形態に係るリモートIOターミナル5を構成する通信カプラ52のハードウェア構成を示す模式図である。なお、図3には、機能ユニット54の一例として、IOユニットを示す。図3を参照して、リモートIOターミナル5の通信カプラ52は、プロセッサ100と、不揮発性メモリ101と、フィールドバス制御部110と、受信部112と、送信部114と、内部バス制御部130とを含む。
受信部112は、PLC1からフィールドネットワーク2を介して送信される上位通信フレームを受信してデータへ復号した上で、フィールドバス制御部110へ出力する。送信部114は、フィールドバス制御部110から出力されるデータから上位通信フレームを再生成してフィールドネットワーク2を介して再送信(フォワード)する。
フィールドバス制御部110は、受信部112および送信部114と協働して、フィールドネットワーク2を介して予め定められた制御周期毎に他の装置(PLC1および他のリモートIOターミナル5)との間でデータを送受信する。より具体的には、フィールドバス制御部110は、上位通信コントローラ120と、メモリコントローラ122と、FIFO(First In First Out)メモリ124と、受信バッファ126と、送信バッファ128とを含む。
上位通信コントローラ120は、PLC1からフィールドネットワーク2を介して送信されるコマンドなどを解釈して、フィールドネットワーク2を介した通信を実現するために必要な処理を実行する。また、上位通信コントローラ120は、FIFOメモリ124に順次格納される上位通信フレームからのデータコピー、および上位通信フレームに対するデータ書込みの処理を行う。
メモリコントローラ122は、DMA(Dynamic Memory Access)などの機能を実現する制御回路であり、FIFOメモリ124、受信バッファ126および送信バッファ128などへのデータの書込み/読出しを制御する。
FIFOメモリ124は、フィールドネットワーク2を介して受信された上位通信フレームを一時的に格納するとともに、その格納された順序に従って上位通信フレームを順次出力する。受信バッファ126は、FIFOメモリ124に順次格納される上位通信フレームに含まれるデータのうち、自装置に接続されている機能ユニット54の出力部から出力すべき状態値を示すデータを抽出して一時的に格納する。送信バッファ128は、機能ユニット54の入力部で検出された状態値を示すプロセスデータであって、FIFOメモリ124に順次格納される上位通信フレームの所定領域に書込むべきデータを一時的に格納する。
プロセッサ100は、フィールドバス制御部110および内部バス制御部130に対して指示を与えるとともに、フィールドバス制御部110と内部バス制御部130との間のデータ転送などを制御する。
不揮発性メモリ101は、システムプログラム102およびユニット構成管理情報D1を格納する。ユニット構成管理情報D1は、機能ユニット54の設定情報を含む。このユニット構成管理情報D1の詳細については後述する。
内部バス制御部130は、リモートIOターミナルバス51(ダウンリンク511およびアップリンク512)を介して機能ユニット54との間でフレーム(データ)を送受信する。
より具体的には、内部バス制御部130は、内部バス通信コントローラ132と、送信回路142と、受信回路144と、記憶部160とを含む。
内部バス通信コントローラ132は、リモートIOターミナルバス51を介したデータ伝送を主体的に管理する。送信回路142は、内部バス通信コントローラ132からの指示に従って、リモートIOターミナルバス51のダウンリンク上を流れるフレームを生成して送信する。受信回路144は、リモートIOターミナルバス51のアップリンク上を流れるフレームを受信して、内部バス通信コントローラ132へ出力する。
記憶部160は、リモートIOターミナルバス51を伝送するフレーム(データ)を格納するバッファメモリに相当する。より具体的には、記憶部160は、共有メモリ162と、受信バッファ164と、送信バッファ166とを含む。共有メモリ162は、フィールドバス制御部110と内部バス制御部130との間で遣り取りされるデータを一時的に格納する。受信バッファ164は、リモートIOターミナルバス51を介して機能ユニット54から受信したデータを一時的に格納する。送信バッファ166は、フィールドバス制御部110で受信された上位通信フレームに含まれるデータを一時的に格納する。
(b3.機能ユニット54の構成)
図4は、本実施の形態に係るリモートIOターミナル5の機能ユニット54のハードウェア構成を示す模式図である。図4を参照して、リモートIOターミナル5の機能ユニット54の各々は、逆シリアル変換器(de-serializer:以下「DES部」とも称す。)212,222と、シリアル変換器(SER:serializer:以下「SER部」とも称す。)216,226と、フォワードコントローラ214,224とを含む。さらに、機能ユニット54の各々は、バス250を介して互いに接続された、受信処理部230と、送信処理部240と、プロセッサ200と、共有メモリ202と、IOモジュール206と、メモリ208とを含む。メモリ208は、一例として、揮発性領域と不揮発性領域とを含む。
DES部212、フォワードコントローラ214およびSER部216は、図2に示すダウンリンク511についての受信部210aおよび送信部210bに対応する。これらの部分は、ダウンリンク511を流れるフレームの送受信に係る処理を実行する。同様に、DES部222、フォワードコントローラ224およびSER部226は、図2に示すアップリンク512についての受信部220aおよび送信部220bに対応する。これらの部分は、アップリンク512を流れるフレームの送受信に係る処理を実行する。
受信処理部230は、復号部232と、CRCチェック部234とを含む。復号部232は、受信されたフレームを所定のアルゴリズムに従ってデータへ復号する。CRCチェック部234は、フレームの最後に付加されるフレームチェックシーケンス(Frame Check Sequence:FCS)などに基づいて誤りチェック(例えば、CRC(Cyclic Redundancy Check)符号)を行う。
送信処理部240は、フォワードコントローラ214および224に接続され、プロセッサ200などからの指示に従って、次段の機能ユニット54へ再送信(フォワード)するフレームの生成およびタイミング制御などを行う。また、送信処理部240は、プロセッサ200などと協働して、次段の機能ユニット54へ送信すべきデータを生成する。より具体的には、送信処理部240は、CRC生成部242と、符号化部244とを含む。CRC生成部242は、プロセッサ200などからのデータに対して誤り制御符号(CRC)を算出して、当該データを格納するフレームに付加する。符号化部244は、CRC生成部242からのデータを符号化し、対応するフォワードコントローラ214または224へ出力する。
プロセッサ200は、機能ユニット54を主体的に制御する演算主体である。より具体的には、プロセッサ200は、受信処理部230を介して受信されたフレームを共有メモリ202に格納し、あるいは共有メモリ202から所定のデータを読み出して送信処理部240へ出力し、フレームを生成させる。
共有メモリ202は、受信処理部230を介して受信されたフレームを一時的に格納するための受信バッファ203と、送信処理部240へ介して送信するためのフレームを一時的に格納するための送信バッファ204とを含む。また、共有メモリ202は、各種データを格納するための領域を含む。
IOモジュール206は、外部のスイッチやセンサからの入力信号を受信し、その値を共有メモリ202に書込むとともに、共有メモリ202の対応する領域に書込まれた値に従って、その信号を外部のリレーやアクチュエータへ出力する。
メモリ208は、システムプログラム209および設定情報D50を格納する。典型的には、システムプログラム209は、メモリ208の不揮発性領域に格納され、設定情報D50は、メモリ208の揮発性領域に格納される。
<C.PLC1のハードウェア構成>
次に、本実施の形態に係る制御システムSYSの一部を構成するPLC1のハードウェア構成について説明する。
(c1.接続構成)
図5は、本実施の形態に係るPLC1の接続構成を示す模式図である。図5を参照して、PLC1においても、上述のリモートIOターミナル5と同様に、CPUユニット13および1つ以上の機能ユニット14−1,14−2,14−3,…が通信ラインであるPLCシステムバス11(ダウンリンク611およびアップリンク612)を介して互いにデータ伝送可能になっている。
機能ユニット14の各々は、ダウンリンク611またはアップリンク612を伝送するフレームを受信すると、そのフレームからデータを復号して必要な処理を実行する。そして、機能ユニット14の各々は、フレームを再生成した上で、次段の機能ユニット14へ再送信(フォワード)する。各機能ユニット14は、ダウンリンク611に関して、受信部(RX)210aおよび送信部(TX)210bを含むとともに、アップリンク612に関して、受信部220aおよび送信部220bを含む。
CPUユニット13は、プロセッサ150と、フィールドバス制御部110と、受信部112と、送信部114と、内部バス制御部130とを含む。
(c2.通信カプラ52の構成)
図6は、本実施の形態に係るPLC1を構成するCPUユニット13のハードウェア構成を示す模式図である。図6を参照して、PLC1のCPUユニット13は、プロセッサ150と、主メモリ152と、不揮発性メモリ154と、フィールドバス制御部110と、受信部112と、送信部114と、内部バス制御部130とを含む。不揮発性メモリ154は、ユーザプログラム156、システムプログラム158、およびユニット構成管理情報D1を格納する。CPUユニット13のデータ伝送に係る基本的な構成は、上述の通信カプラ52(図2)と同様であるので、対応する部分(同一の参照符号を付している)についての説明は繰り返さない。
CPUユニット13のプロセッサ150は、対象の制御を実現するためのプログラムを実行する。より具体的には、CPUユニット13は、不揮発性メモリ154などからユーザプログラム156およびシステムプログラム158を読み出すとともに、主メモリ152に展開して実行する。このユーザプログラム156およびシステムプログラム158の実行によって、機能ユニット14の入力部によって検出された状態値に基づいて、機能ユニット14の出力部から出力すべき状態値が順次算出される。
PLC1の機能ユニット14の構成については、上述したリモートIOターミナル5の機能ユニット54の構成(図4参照)と同様であるので、詳細な説明は繰り返さない。
<D.サポート装置8>
次に、本実施の形態に係るPLC1に接続されるサポート装置8について説明する。図7は、本実施の形態に係るPLC1に接続されるサポート装置8のハードウェア構成を示す模式図である。図7を参照して、サポート装置8は、典型的には、汎用のコンピュータで構成される。なお、メンテナンス性の観点からは、可搬性に優れたノート型のパーソナルコンピュータが好ましい。
図7を参照して、サポート装置8は、OS(Operating System)を含む各種プログラムを実行するCPU81と、BIOS(Basic Input Output System)や各種データを格納するROM(Read Only Memory)82と、CPU81でのプログラムの実行に必要なデータを格納するための作業領域を提供するメモリRAM83と、CPU81で実行されるプログラムなどを不揮発的に格納するハードディスク(HDD)84とを含む。ハードディスク84は、ツールプログラム841を格納している。
サポート装置8は、さらに、ユーザからの操作を受け付けるキーボード85およびマウス86と、情報をユーザに提示するためのディスプレイ87とを含む。さらに、サポート装置8は、PLC1(CPUユニット13)などと通信するための通信インターフェイス(IF)を含む。
後述するように、サポート装置8で実行されるツールプログラム841は、CD−ROM(Compact Disk-Read Only Memory)9に格納されて流通する。このCD−ROM9に格納されたプログラムは、CD−ROM駆動装置88によって読取られ、ハードディスク84などへ格納される。あるいは、上位のホストコンピュータなどからネットワークを通じてプログラムをダウンロードするように構成してもよい。
<E.ユニット構成データの照合処理の概要>
次に、本実施の形態に係る通信カプラ52およびCPUユニット13におけるバスマスタとしての機能の一つとして、ユニット構成データの照合処理について説明する。以下の説明では、説明の便宜上、リモートIOターミナル5における照合処理について例示するが、PLC1においても同様の照合処理を適用できる。
図8は、本実施の形態に係るユニット構成データの照合処理を説明するための模式図である。図8を参照して、本実施の形態に係るバスマスタとして機能する通信カプラ52は、スレーブ装置としての機能ユニット54に対して、予め設定された設定情報D24を与える。機能ユニット54の各々は、通信カプラ52によって与えられる設定情報D50に従って動作する。この設定情報D24を与える処理は、例えば、リモートIOターミナル5の電源投入時やリセット時などのユニット構成情報の照合実施タイミングに実行される。
このような構成を採用することで、リモートIOターミナル5の電源がオフされている期間において、機能ユニット54の各々は自身の設定情報D50を記憶しておく必要がない。そのため、機能ユニット54の構成をより簡素化できる。
より具体的には、通信カプラ52は、ユーザがサポート装置8などを操作して予め設定したユニット構成管理情報D1を格納している。このユニット構成管理情報D1は、機能ユニット54毎のユニット構成データD20を含む。ユニット構成データD20の各々は、対象とする機能ユニット54を特定するための識別情報D22と、対象とする機能ユニット54に対して与えるための設定情報D24とを含む。
設定情報D24を対象の機能ユニット54へ与える前に、通信カプラ52は、各機能ユニット54から固有の識別情報(実機値)D40を取得し、この取得した識別情報(実機値)D40と予め格納されているユニット構成データD20に含まれる識別情報D22とを照合する。そして、通信カプラ52は、正しく照合された機能ユニット54に対してのみ、対応する設定情報D24を与える。
通信カプラ52から与えられる設定情報D24(機能ユニット54が格納する設定情報D50)は、対応する機能ユニット54のリモートIOターミナルバス51における識別情報を含む。このようなリモートIOターミナルバス51における識別情報として、「ユニットNo」を用いる例について説明する。本実施の形態に係るリモートIOターミナル5では、この「ユニットNo」は、リモートIOターミナルバス51上の機能ユニット54が装着される物理的な位置(すなわち、スロット位置)とは独立して設定することができる。そのため、例えば、3番目のスロット位置に装着された機能ユニット54に対して、ユニットNoとして「5」を設定するようなことも可能である。
このユニットNoは、各機能ユニット54がリモートIOターミナルバス51上でデータ伝送を行うために必要な識別子である。そのため、ユニットNoを含む設定情報D50が与えられない機能ユニット54は、リモートIOターミナルバス51上で有効にデータ伝送を行うことができない。つまり、設定情報D50が与えられない機能ユニット54は、無効化(deactivate)の状態になる。
図8に示すように、マスタ装置(バスマスタ)として機能する制御装置である通信カプラ52は、各々が与えられた設定情報D50に従って動作する1つ以上のスレーブ装置(機能ユニット54)とリモートIOターミナルバス51を介して通信可能に接続されている。通信カプラ52は、設定情報D24と各機能ユニット54を特定するための識別情報D22とを含む構成情報を機能ユニット54別に格納するための記憶部(図3に示す不揮発性メモリ101など)を有している。この設定情報D24は、対応する機能ユニット54のリモートIOターミナルバス51における識別情報(ユニットNo)を含む。
そして、通信カプラ52は、電源投入時やリセット時などに、機能ユニット54−1から識別情報(実機値)D40を取得するとともに、構成情報に含まれる識別情報D22と当該取得した識別情報(実機値)D40とを照合する(図8に示す(1)照合)。そして、通信カプラ52は、取得した識別情報(実機値)D40と一致する識別情報D22を含む構成情報に対応する設定情報D24を、その識別情報(実機値)D40を取得した機能ユニット54−1へ与える(図8に示す(2)設定)。通信カプラ52は、別の機能ユニット54−2についても、識別情報(実機値)D40を取得するとともに、構成情報に含まれる識別情報D22と当該取得した識別情報(実機値)D40とを照合し(図8に示す(3)照合)、取得した識別情報(実機値)D40と一致する識別情報D22を含む構成情報に対応する設定情報D24を、その識別情報(実機値)D40を取得した機能ユニット54−2へ与える(図8に示す(4)設定)。
なお、図8には、説明の便宜上、機能ユニット54の接続順(通信カプラ52から近い順)に、識別情報(実機値)D40を取得する例を示すが、リモートIOターミナルバス51に接続されているすべての機能ユニット54に対して、識別情報(実機値)D40を要求する信号を一斉に送信(ブロードキャストまたはマルチキャスト)してもよい。この場合には、機能ユニット54の各々は、自ユニットが保持している識別情報(実機値)D40を通信カプラ52へ応答する。
このように、予め格納されたユニット構成データD20と機能ユニット54からの識別情報(実機値)D40との照合が成功した場合に限って、設定情報D50を与えるようにする。言い換えれば、通信カプラ52は、取得した識別情報(実機値)D40と一致する識別情報D22を含む構成情報が存在しない場合に、当該識別情報(実機値)D40を取得した機能ユニット54に対しては、設定情報D24を与えない。さらに、ユーザが予め設定された構成情報とは異なった機能ユニット54を装着したような場合には、エラーなどを通知してもよい。
上述のような照合処理に伴って、リモートIOターミナルバス51における識別情報(ユニットNo)を各機能ユニット54に対して任意に設定できるので、システム構成をよりフレキシブルに追加/変更することができる。
上述した照合処理などの詳細については、関連する処理を含めて後述する。
<F.データ構造>
次に、通信カプラ52に格納されるユニット構成管理情報D1および機能ユニット54が格納する識別情報(実機値)D40のデータ構造について説明する。
(f1.ユニット構成管理情報D1)
図9は、本実施の形態に係る通信カプラ52に格納されるユニット構成管理情報D1のデータフォーマットの一例を示す図である。図9を参照して、ユニット構成管理情報D1は、各機能ユニット54についてのユニット構成データD20とを含む。
(f2.ユニット構成データD20)
ユニット構成データD20は、各機能ユニット54に関する情報を含む。ユニット構成データD20の各々は、ユニット構成情報を含む。ユニット構成情報は、識別情報D22と、設定情報D24とを含む。識別情報D22は、Product Codeと、シリアル番号との情報を含む。これらの情報は、対応する機能ユニット54を識別するための固有の情報である。より具体的には、Product Codeは、各機能ユニット54の種類を特定するための種別情報に相当する。シリアル番号は、各機能ユニット54をユニークに特定するための個体識別番号に相当する。
設定情報D24は、ユニットNoと、ユニット無効化設定とを含む。ユニットNoは、対応する機能ユニット54のリモートIOターミナルバス51における識別情報に相当する。後述するように、ユニット無効化設定が「ON」に設定(つまり、対応する機能ユニット54が無効化された)状態であっても、対応するユニットNoが付与される。ユニット無効化設定は、対応する機能ユニット54(スレーブ装置)がリモートIOターミナルバス51に現実に接続されているか否かの判断を無効化するための情報に相当する。より具体的にはユニット無効化設定は、「0」または「1」により、対応する機能ユニット54が無効化されているか否かを示す。
(f3.固有の識別情報(実機値)D40)
図10は、本実施の形態に係る機能ユニット54に格納される固有の識別情報(実機値)D40のデータフォーマットの一例を示す図である。図10を参照して、固有の識別情報(実機値)D40は、ユニット構成管理情報D1に含まれる識別情報D22と同様に、Product Codeと、シリアル番号との情報を含む。これらの情報の詳細については、上述したので、その説明は繰り返さない。
<G.機能ユニットの無効化処理>
上述したように、本実施の形態に係るバスマスタ(通信カプラ52およびCPUユニット13)は、ユニット構成データが正しく照合された機能ユニット54に対して設定情報D50を与える。この設定情報D50が与えられない機能ユニット54については、無効化された状態に維持される。このような機能に加えて、特定の機能ユニット54について予め無効化できるように設定してもよい。以下、この機能ユニットの無効化処理について説明する。
例えば、機能ユニット54の将来的な拡張や機能ユニット54のレイアウトの均一化などを考慮して、ユーザプログラムにおいては使用しないが、システム構成上は、いくつかの機能ユニット54を含むように設定される場合がある。このような場合、上述のユニット構成データの照合処理において、そのような機能ユニット54がリモートIOターミナルバス51に実際に装着されているか否かについては判断しない(無視する)ように設定することが好ましい。図9のユニット構成管理情報D1の設定情報D24に含まれるユニット無効化設定は、このような設定に向けられている。
但し、このようなユニット無効化設定がなされた機能ユニット54がリモートIOターミナルバス51に脱着されることで、その前後に位置する機能ユニット54へ影響を与えることは好ましくない。例えば、ユニット無効化設定がなされた機能ユニット54が追加されることで、その次位に装着された機能ユニット54を参照するユーザプログラムなどの再構成(リビルド)などが必要になるといった事態は避ける必要がある。
そこで、本実施の形態においては、ユニット無効化設定がなされた機能ユニット54に対して割り当てる予定の、リモートIOターミナルバス51における識別情報(本実施の形態においては、ユニットNo)を予め設定しておく。さらに、ユニット無効化設定がなされた機能ユニット54が利用する予定のメモリ空間についても予め確保しておく。
すなわち、ユニット無効化設定がなされた機能ユニット54がいつ有効化されても他の部位へ影響を及ぼさないように、ユニットNoおよびメモリ空間に対する予約処理が実行される。
図11は、本実施の形態に係る通信カプラ52に設定されるユニット無効化設定の一例を示す図である。図12は、図11に示すユニット無効化設定において設定されるユニットNoの設定例を示す図である。図13は、図11に示すユニット無効化設定において設定されるメモリ空間の一例を示す図である。
図11に示すユニット構成情報では、4つの機能ユニット54が装着されるように設定されている。それぞれの機能ユニット54の識別情報は、「AAA」,「BBB」,「CCC」,「DDD」であるとする。これらの機能ユニット54のうち2番目の機能ユニット54に対して、ユニット無効化設定がなされているとする。このようなユニット構成情報を図12(a)〜(c)にそれぞれ示すようなリモートIOターミナルの実構成に適用した場合を考える。
図12(a)に示すリモートIOターミナル5においては、それぞれ「AAA」,「BBB」,「CCC」,「DDD」の固有の識別情報(実機値)を含む機能ユニット54−1〜54−4が装着されている。このような実構成において、固有の識別情報(実機値)として「BBB」を含む機能ユニット54−2は無効化される。すなわち、機能ユニット54−2に対して、ユニットNoは割り当てられない。
但し、機能ユニット54−2に対応するユニット構成データD20に設定されるユニットNoは、機能ユニット54−1および54−3にそれぞれ対応するユニット構成データD20に設定されるユニットNoの値と同一にすることはできず、異なる値に設定する必要がある。そのため、機能ユニット54−2に割り当てられるユニットNoは、実質的に予約されることになる。
図12(b)に示すリモートIOターミナル5においては、図12(a)に示す実構成に比較して、固有の識別情報(実機値)として「BBB」を含む機能ユニット54−2が存在しない。このような実構成であっても、機能ユニット54−1,54−3,54−4に対して、それぞれユニットNoが有効に割り当てられる。すなわち、図12(a)と図12(b)とを比較すると、機能ユニット54−3,54−4の装着されるスロット位置は変化しているが、このスロット位置の変化に影響を受けず、予め定められたユニットNoが割り当てられる。そのため、ユーザプログラムなどを修正する必要はない。
これに対して、図12(c)に示す実構成においては、図12(a)に示す実構成に比較して、機能ユニット54−2に代えて、固有の識別情報(実機値)として「EEE」を含む機能ユニット54−5が装着されている。図12(c)に示すような実構成における機能ユニット54−5の存在に対して、無効化(ユニットNoを割り当てない)のみを行ってエラーを通知しないようにしてもよいし、本来のユニット無効化設定とは異なった機能ユニット54−5が装着されていることをもってエラーを通知するようにしてもよい。
上述のように、リモートIOターミナルバス51上にユニット無効化設定がなされた機能ユニット54の存在は不定である。そのため、ユニット無効化設定がなされた機能ユニット54の存在に影響を受けることなく、リモートIOターミナルバス51でのデータ伝送を実現するために、そのような機能ユニット54に対しても、データの入出力に係るメモリ領域を確保しておく。例えば、図11に示すユニット無効化設定に対応して、図13に示すようなメモリ空間が割り当てられる。すなわち、ユニット無効化設定がなされた機能ユニット54−2に対しても、予めメモリ領域が割り当てられており、機能ユニット54−2の有無がいつ有効化されても他の部位へ影響を及ぼさないようになっている。
<H.ユニット無効化設定を含むユニット構成データの照合処理>
次に、上述したようなユニット無効化設定を含むユニット構成データの照合処理について説明する。
図14は、本実施の形態に係るユニット無効化設定を含むユニット構成データの照合処理を説明するための模式図である。図14を参照して、通信カプラ52にはユニット構成データ1,2,3…が予め設定されており、このうち、ユニット構成データ2に対してユニット無効化設定がなされている(つまり、無効化されている)とする。
バスマスタとして機能する通信カプラ52は、ユニット構成情報の照合実施タイミングが到来すると、まず、機能ユニット54−1から識別情報(実機値)D40を取得するとともに、ユニット構成データ1に含まれる識別情報D22と当該取得した識別情報(実機値)D40とを照合する(図14に示す(1)照合)。そして、通信カプラ52は、ユニット構成データ1に含まれる識別情報D22が取得した識別情報(実機値)D40と一致すれば、対応する識別情報D22を機能ユニット54−1へ与える(図14に示す(2)設定)。
続いて、通信カプラ52は、機能ユニット54−1に隣接するスロット位置に装着されている機能ユニット54−3から識別情報(実機値)D40を取得するとともに、ユニット構成データ2に含まれる識別情報D22と当該取得した識別情報(実機値)D40とを照合する(図14に示す(3)照合)。この場合には、ユニット構成データ2に対してユニット無効化設定がなされているので、通信カプラ52は、無効化用処理を実行する(図14に示す(4)無効化用処理)。この無効化用処理は、図13に示すようなメモリ領域の確保を含む。但し、通信カプラ52からの設定情報の設定は行われない。
さらに、通信カプラ52は、機能ユニット54−3から識別情報(実機値)D40を取得するとともに、ユニット構成データ3に含まれる識別情報D22と当該取得した識別情報(実機値)D40とを照合する(図14に示す(5)照合)。なお、この例では、機能ユニット54−3から識別情報(実機値)D40を再度取得する必要しなくともよい。そして、通信カプラ52は、ユニット構成データ3に含まれる識別情報D22が取得した識別情報(実機値)D40と一致すれば、対応する識別情報D22を機能ユニット54−3へ与える(図14に示す(6)設定)。
このように、ユニット構成データD20がユニット無効化設定を含むことで、識別情報D22と一致する識別情報(実機値)D40が取得されない場合もあり、このような場合には、機能ユニット54に対して設定情報D50が与えられないが、対応するメモリ領域が確保される。これによって、ユニット無効化設定が解除され、対応する機能ユニット54が有効化された場合であっても、ユーザプログラムなどの変更は必要ない。
<I.ユニット構成データの照合処理の詳細>
(i1:照合処理の対象データ)
再度図9および図10を参照して、照合処理に用いられる識別情報D22および識別情報(実機値)D40は、Product Codeと、シリアル番号との情報を含む。これらの情報をすべて照合処理に用いてもよいが、その一部の情報のみを用いるようにしてもよい。
例えば、シリアル番号は、機能ユニット54に対してユニークに付与される番号であり、特定の機能ユニット54が装着されているか否かを判断する場合に有効である。例えば、制御システムの開発メーカが使用される機能ユニット54に制限を加えたいような場合に、照合処理にシリアル番号を用いることが好適である。
一方、機能ユニット54が故障などによって交換される場合もあり、このような場合には、同一機能および同一性能の機能ユニット54であれば、予め設定された特定の機能ユニット54に制限する必要はない。そのため、ユニット構成データの照合処理では、予め設定されたフラグなどに応じて、シリアル番号を用いるか否かを任意に設定できるようにしてもよい。
また、Product Codeについても、ユニット構成データの照合処理において比較対象とすることが好ましい。
このように、通信カプラ52は、種別情報(Product Code)および個体識別番号(シリアル番号)の両方を用いて照合を行うモードと、種別情報を用いて照合を行うモードとを選択可能に構成される。
(i2:ユニット無効化設定における動作モード)
上述したように、ユニット無効化設定がなされた機能ユニット54については、リモートIOターミナルバス51に実際に装着されているか否かにかかわらず、ユニットNoおよびメモリ空間に対する予約処理が実行される。そのため、ユニット構成データの照合処理において、ユニット無効化設定がなされた機能ユニット54から固有の識別情報(実機値)D40を取得できない場合、つまりユニット無効化設定がなされた機能ユニット54がリモートIOターミナルバス51に実際に装着されていない場合には、エラーを出力しない。但し、図12(c)を参照して説明したように、ユニット構成データD20において設定された(すなわち、装着予定の)機能ユニット54とは異なる機能ユニット54が装着された場合には、エラーを出力するようにしてもよい。
図15は、本実施の形態に係るユニット無効化設定の別に実行されるエラー出力処理の対応関係を示す図である。図15を参照して、例えば、図12(c)に示すような状況におけるエラー出力処理が異なる2つのモード(モード1およびモード2)を用意してもよい。なお、エラーの出力方法としては、接続されているサポート装置8の画面上にエラーメッセージを表示する方法や、通信カプラ52に設けられたインジケータ(表示手段)にエラーを示す表示(例えば、特定のランプを点灯/点滅させるなど)を行う方法が考えられる。
いずれのモードにおいても、通信カプラ52は、無効化されていない機能ユニット54に関して、取得した識別情報(実機値)D40と一致する識別情報D22を含む構成情報に対応する設定情報D24を含む構成情報が存在しない場合に、エラーを出力する。すなわち、図15に示す表において、「無効化されていない機能ユニット」の「設定されている識別情報と識別情報(実機値)とが不一致」の場合には、「エラー出力」となる。
同様に、いずれのモードにおいても、通信カプラ52は、無効化されている機能ユニット54に関して、対応する識別情報(実機値)D40を取得できなかった場合には、エラーを出力しない。すなわち、通信カプラ52は、構成情報に無効化するための情報が含まれている場合には、対応する識別情報D22と一致する識別情報(実機値)D40がいずれの機能ユニット54(スレーブ装置)からも取得されなくとも、エラーを出力しない。これは、図15に示す表において、「無効化されている機能ユニット」の「識別情報(実機値)が存在しない」の場合に「エラー無」になる動作に対応する。
一方、モード1において、通信カプラ52は、無効化されている機能ユニット54に関して、対応する識別情報D22とは異なる識別情報(実機値)D40が取得されたときには、エラーを出力する。すなわち、通信カプラ52は、設定情報に無効化するための情報が含まれている場合であって、対応する識別情報D22とは異なる識別情報(実機値)D40が機能ユニット54(スレーブ装置)から取得されたときには、エラーを出力する。これは、図15に示す表の「モード1」において、「無効化されている機能ユニット」の「設定されている識別情報と識別情報(実機値)とが不一致」の場合に「エラー出力」になる動作に対応する。
このように、ユニット無効化設定の内容に応じてエラー出力処理を異ならせることで、よりユーザフレンドリで使いやすい制御システムを実現できる。
<J.処理手順>
次に、本実施の形態に係るユニット構成データの照合処理の処理手順について説明する。図16は、本実施の形態に係るユニット構成データの照合処理の処理手順を示すシーケンス図である。図16に示す処理手順は、サポート装置8、通信カプラ52、および機能ユニット54−1,54−2,…によって実行される。
サポート装置8は、典型的には、図7に示すようにCPU81がツールプログラム841を実行することで、図16に示す対応する処理を実行する。通信カプラ52は、図3に示すようにプロセッサ100がシステムプログラム102を実行することで、図16に示す対応する処理を実行する。機能ユニット54の各々は、図4に示すようにプロセッサ200がシステムプログラム209を実行することで、図16に示す対応する処理を実行する。なお、通信カプラ52および機能ユニット54については、プロセッサがシステムプログラムを実行する形態に代えて、ASIC(Application Specific Integrated Circuit)やFPGA(Field-programmable gate array)などのハードウェアを用いて実現してもよい。
図16を参照して、まず、ユーザは、サポート装置8を操作して、対象のリモートIOターミナルバス51に係るユニット構成管理情報D1を生成する(シーケンスSQ100)。そして、ユーザ操作に従って、サポート装置8は、生成されたユニット構成管理情報D1を通信カプラ52へ送信する(シーケンスSQ102)。なお、ユニット構成管理情報D1の通信カプラ52への送信は、サポート装置8を通信カプラ52に接続して行ってもよいし、フィールドネットワーク2を介して接続されるCPUユニット13にサポート装置8を接続して行ってもよい。
電源投入時やリセット時などのユニット構成情報の照合実施タイミングになると、通信カプラ52は、リモートIOターミナルバス51を介して、識別情報(実機値)D40の要求信号を接続されている機能ユニット54の各々に対して送信する(シーケンスSQ104)。図16に示す例では、識別情報(実機値)D40の要求信号をブロードキャストによって送信する例を示すが、メッセージ通信を用いて、機能ユニット54の各々に対して逐次送信するようにしてもよい。
機能ユニット54の各々は、識別情報(実機値)D40の要求信号に応答して、自ユニットが保持している識別情報(実機値)D40を通信カプラ52へ応答する(シーケンスSQ106)。
通信カプラ52は、機能ユニット54から受信したそれぞれの識別情報(実機値)D40を対応するスロット位置に関連付けて一次的に保持する(シーケンスSQ108)。各機能ユニット54が装着されているスロット位置の特定については、次のような方法で行ってもよい。例えば、機能ユニット54が自ユニットの接続されているスロット位置の情報を付加して識別情報(実機値)D40を送信する方法を採用できる。あるいは、機能ユニット54からリモートIOターミナルバス51を介して送信されるデータが通信カプラ52に到達するまでに、どれだけの数の機能ユニット54においてフォワードされたかを示す情報に基づいて、送信元の機能ユニット54が装着されているスロット位置を特定する方法を採用できる。
通信カプラ52は、機能ユニット54毎のユニット構成データD20に含まれる識別情報D22と取得したそれぞれの識別情報(実機値)D40とを照合する(シーケンスSQ110)。より具体的には、通信カプラ52は、識別情報D22と対応する機能ユニット54の識別情報(実機値)D40とを比較して、(1)設定されている識別情報D22と識別情報(実機値)D40とが一致する、(2)設定されている識別情報D22と識別情報(実機値)D40とが不一致である、(3)対応する識別情報(実機値)D40が存在しない、のいずれであるかを判断する。そして、通信カプラ52は、ユニット構成データD20の各々についての判断結果と、対応するユニット無効化設定とに基づいて、照合結果を算出する(シーケンスSQ112)。
続いて、通信カプラ52は、照合が成功した機能ユニット54に対して、対応する設定情報D24を送信する(シーケンスSQ114)。設定情報D24を受信した機能ユニット54は、設定情報D50を格納する(シーケンスSQ116)。
並行して、通信カプラ52は、機能ユニット54毎のユニット構成データD20に従って、各機能ユニット54についてのメモリ空間を割り当てる(シーケンスSQ118)。
そして、通信カプラ52は、リモートIOターミナルバス51を有効化し、リモートIOターミナル5をオペレーション状態に切り替える(シーケンスSQ120)。
なお、シーケンスSQ112において算出された照合結果において、所定のエラー発生条件に合致した機能ユニット54について、通信カプラ52は、サポート装置8に対してエラーを出力する(シーケンスSQ122)。
<K.利点>
本実施の形態によれば、マスタ装置(バスマスタ)は、設定情報を対象の機能ユニットへ与える前に、各機能ユニットから固有の識別情報(実機値)を取得し、この取得した識別情報(実機値)と予め格納されているユニット構成データに含まれる識別情報とを照合する。そして、マスタ装置(バスマスタ)は、正しく照合された機能ユニットに対してのみ、対応する設定情報を与える。このように正しく照合された場合に限って設定情報を与えるので、本来の設計とは異なる機能ユニットが装着されているような場合に、設定情報を誤って与えることがない。
また、本実施の形態によれば、照合処理の結果に基づいて、バスにおける識別情報(ユニットNo)を含む設定情報を各機能ユニットに個別に与えるので、各機能ユニットが実際に装着されているバス上の位置(スロット位置)とは独立して、それぞれのユニットNoを付与することができる。言い換えれば、それぞれの機能ユニットのユニットNoが設定された状態で、新たな機能ユニットを割り込ませても、先に設定されている他の機能ユニットについてのユニットNoへ影響を与えることがない。そのため、機能ユニットをよりフレキシブルに追加/変更できる。
さらに、本実施の形態によれば、機能ユニットを無効化するためのユニット無効化設定が可能である。このユニット無効化設定を利用することで、現実には存在しない機能ユニットに対するユニットNoやメモリ空間を予約しておくことができる。これによって、機能ユニットの将来的な拡張を容易化したり、機能ユニットのレイアウトの均一化することでユーザプログラムの作成を容易化したりすることができる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 PLC、2 フィールドネットワーク、3 サーボモータドライバ、4 サーボモータ、5 リモートIOターミナル、6 検出スイッチ、7 リレー、8 サポート装置、9 CD−ROM、10 接続ケーブル、11 PLCシステムバス、12 電源ユニット、13 CPUユニット、14,54 機能ユニット、51 ターミナルバス、52 通信カプラ、81 CPU、83 RAM、84 ハードディスク、85 キーボード、86 マウス、87 ディスプレイ、88 CD−ROM駆動装置、100,150,200 プロセッサ、101,154 不揮発性メモリ、102,158,209 システムプログラム、110 フィールドバス制御部、112,210a,220a 受信部、114,210b,220b 送信部、120 上位通信コントローラ、122 メモリコントローラ、124,208 メモリ、126,164,203 受信バッファ、128,166,204 送信バッファ、130 内部バス制御部、132 内部バス通信コントローラ、142 送信回路、144 受信回路、152 主メモリ、156 ユーザプログラム、160 記憶部、162,202 共有メモリ、206 IOモジュール、212,222 DES部、214,224 フォワードコントローラ、216,226 SER部、230 受信処理部、232 復号部、234 チェック部、240 送信処理部、242 CRC生成部、244 符号化部、250 バス、511,611 ダウンリンク、512,612 アップリンク、841 ツールプログラム、D1 ユニット構成管理情報、D20 ユニット構成データ、D22 識別情報、D24,D50 設定情報、SYS 制御システム。

Claims (7)

  1. 各々が与えられた設定情報に従って動作する1つ以上のスレーブ装置とバスを介して通信可能に接続されて、マスタ装置として機能する制御装置であって、
    前記設定情報と各スレーブ装置を特定するための識別情報とを含む構成情報をスレーブ装置別に格納するための記憶手段を備え、前記設定情報は、対応するスレーブ装置の前記バスにおける識別情報を示す情報を含み、
    前記スレーブ装置から識別情報の実機値を取得するとともに、前記構成情報に含まれる識別情報と当該取得した識別情報の実機値とを照合する照合手段と、
    前記取得した識別情報の実機値と一致する識別情報を含む構成情報に対応する設定情報を、前記識別情報の実機値を取得したスレーブ装置へ与える設定手段とを備える、制御装置。
  2. 前記設定手段は、前記取得した識別情報の実機値と一致する識別情報を含む構成情報が存在しない場合に、当該識別情報の実機値を取得したスレーブ装置に対しては、設定情報を与えない、請求項1に記載の制御装置。
  3. 前記照合手段は、前記取得した識別情報の実機値と一致する識別情報を含む構成情報が存在しない場合に、エラーを出力する、請求項1または2に記載の制御装置。
  4. 前記構成情報は、対応するスレーブ装置が前記バスに現実に接続されているか否かの判断を無効化するための情報を含み、
    前記照合手段は、前記構成情報に前記無効化するための情報が含まれている場合には、対応する識別情報と一致する識別情報の実機値がいずれのスレーブ装置からも取得されなくとも、エラーを出力しない、請求項3に記載の制御装置。
  5. 前記照合手段は、前記設定情報に前記無効化するための情報が含まれている場合であって、対応する識別情報とは異なる識別情報の実機値がスレーブ装置から取得されたときには、エラーを出力する、請求項4に記載の制御装置。
  6. 前記識別情報は、各スレーブ装置の種類を特定するための種別情報と、各スレーブ装置をユニークに特定するための個体識別番号とを含み、
    前記照合手段は、前記種別情報および前記個体識別番号の両方を用いて照合を行うモードと、前記種別情報を用いて照合を行うモードとを選択可能に構成される、請求項1〜5のいずれか1項に記載の制御装置。
  7. 各々が与えられた設定情報に従って動作する1つ以上のスレーブ装置とバスを介して通信可能に接続されて、マスタ装置として機能する処理装置において実行される制御プログラムであって、
    前記処理装置は、前記設定情報と各スレーブ装置を特定するための識別情報とを含む構成情報をスレーブ装置別に格納するための記憶手段を備え、前記設定情報は、対応するスレーブ装置の前記バスにおける識別情報を示す情報を含み、
    前記制御プログラムは、前記処理装置に、
    前記スレーブ装置から識別情報の実機値を取得するとともに、前記構成情報に含まれる識別情報と当該取得した識別情報の実機値とを照合するステップと、
    前記取得した識別情報の実機値と一致する識別情報を含む構成情報に対応する設定情報を、前記識別情報の実機値を取得したスレーブ装置へ与えるステップとを実行させる、制御プログラム。
JP2012273886A 2012-12-14 2012-12-14 制御装置および制御プログラム Active JP6509477B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012273886A JP6509477B2 (ja) 2012-12-14 2012-12-14 制御装置および制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012273886A JP6509477B2 (ja) 2012-12-14 2012-12-14 制御装置および制御プログラム

Publications (2)

Publication Number Publication Date
JP2014119912A true JP2014119912A (ja) 2014-06-30
JP6509477B2 JP6509477B2 (ja) 2019-05-08

Family

ID=51174708

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012273886A Active JP6509477B2 (ja) 2012-12-14 2012-12-14 制御装置および制御プログラム

Country Status (1)

Country Link
JP (1) JP6509477B2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5843932B1 (ja) * 2014-09-12 2016-01-13 三菱電機株式会社 プログラマブルコントローラ
WO2016030968A1 (ja) * 2014-08-26 2016-03-03 三菱電機株式会社 機器管理装置及び機器管理方法及びプログラム
JP2017135499A (ja) * 2016-01-26 2017-08-03 ファナック株式会社 通信設定通知装置
JP2017162413A (ja) * 2016-03-11 2017-09-14 オムロン株式会社 スレーブ装置、スレーブ装置の制御方法、情報処理プログラム、および記録媒体
WO2019043811A1 (ja) * 2017-08-30 2019-03-07 三菱電機株式会社 ネットワーク装置の局番設定装置
WO2020184034A1 (ja) * 2019-03-14 2020-09-17 オムロン株式会社 制御システムおよび制御装置
JP2021073098A (ja) * 2021-02-04 2021-05-13 オムロン株式会社 評価システム
US11724332B2 (en) 2018-03-15 2023-08-15 Omron Corporation Evaluation system and evaluation method
US12019419B2 (en) 2019-03-14 2024-06-25 Omron Corporation Control system and control apparatus
US12117786B2 (en) 2019-03-14 2024-10-15 Omron Corporation Control system and control apparatus

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268836A (ja) * 2005-02-28 2006-10-05 Omron Corp パラメータ設定装置
JP2007102764A (ja) * 2005-09-09 2007-04-19 Omron Corp プログラマブル・コントローラのリモートターミナル装置
JP2008097369A (ja) * 2006-10-12 2008-04-24 Omron Corp Plc
JP2008257400A (ja) * 2007-04-03 2008-10-23 Omron Corp プログラマブルコントローラ及びユニット
US20100235682A1 (en) * 2009-03-12 2010-09-16 Katsufumi Yoshida I/o unit and industrial controller

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268836A (ja) * 2005-02-28 2006-10-05 Omron Corp パラメータ設定装置
JP2007102764A (ja) * 2005-09-09 2007-04-19 Omron Corp プログラマブル・コントローラのリモートターミナル装置
JP2008097369A (ja) * 2006-10-12 2008-04-24 Omron Corp Plc
JP2008257400A (ja) * 2007-04-03 2008-10-23 Omron Corp プログラマブルコントローラ及びユニット
US20100235682A1 (en) * 2009-03-12 2010-09-16 Katsufumi Yoshida I/o unit and industrial controller
JP2010238223A (ja) * 2009-03-12 2010-10-21 Omron Corp I/oユニット並びに産業用コントローラ

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016030968A1 (ja) * 2014-08-26 2016-03-03 三菱電機株式会社 機器管理装置及び機器管理方法及びプログラム
JP5843932B1 (ja) * 2014-09-12 2016-01-13 三菱電機株式会社 プログラマブルコントローラ
JP2017135499A (ja) * 2016-01-26 2017-08-03 ファナック株式会社 通信設定通知装置
US10459816B2 (en) 2016-01-26 2019-10-29 Fanuc Corporation Communication setting notification apparatus
WO2017154272A1 (ja) * 2016-03-11 2017-09-14 オムロン株式会社 スレーブ装置、スレーブ装置の制御方法、情報処理プログラム、および記録媒体
CN107924171A (zh) * 2016-03-11 2018-04-17 欧姆龙株式会社 从装置、从装置的控制方法、信息处理程序以及记录介质
US10365624B2 (en) 2016-03-11 2019-07-30 Omron Corporation Slave device, method for controlling slave device, and non-transitory computer-readable recording medium
JP2017162413A (ja) * 2016-03-11 2017-09-14 オムロン株式会社 スレーブ装置、スレーブ装置の制御方法、情報処理プログラム、および記録媒体
CN107924171B (zh) * 2016-03-11 2020-05-19 欧姆龙株式会社 从装置、从装置的控制方法以及记录介质
WO2019043811A1 (ja) * 2017-08-30 2019-03-07 三菱電機株式会社 ネットワーク装置の局番設定装置
US11724332B2 (en) 2018-03-15 2023-08-15 Omron Corporation Evaluation system and evaluation method
JP2020150451A (ja) * 2019-03-14 2020-09-17 オムロン株式会社 制御システムおよび制御装置
JP7070479B2 (ja) 2019-03-14 2022-05-18 オムロン株式会社 制御システムおよび制御装置
WO2020184034A1 (ja) * 2019-03-14 2020-09-17 オムロン株式会社 制御システムおよび制御装置
US12019419B2 (en) 2019-03-14 2024-06-25 Omron Corporation Control system and control apparatus
US12117786B2 (en) 2019-03-14 2024-10-15 Omron Corporation Control system and control apparatus
US12356218B2 (en) 2019-03-14 2025-07-08 Omron Corporation Control system and control apparatus
JP2021073098A (ja) * 2021-02-04 2021-05-13 オムロン株式会社 評価システム
JP7272379B2 (ja) 2021-02-04 2023-05-12 オムロン株式会社 評価システム

Also Published As

Publication number Publication date
JP6509477B2 (ja) 2019-05-08

Similar Documents

Publication Publication Date Title
JP6509477B2 (ja) 制御装置および制御プログラム
JP6870568B2 (ja) 通信システム、制御装置、設定装置、設定方法およびプログラム
JP6163748B2 (ja) 通信カプラ、通信システム、制御方法、およびプログラム
CN108156016B (zh) 通信系统、通信装置以及通信方法
JP6094196B2 (ja) 情報処理装置、情報処理プログラムおよび情報処理方法
JP6349805B2 (ja) 通信ユニット、コントローラ、制御システム、制御方法、およびプログラム
JP6136228B2 (ja) 通信カプラ、通信システム、制御方法、およびプログラム
US9934111B2 (en) Control and data transmission system, process device, and method for redundant process control with decentralized redundancy
US20160205066A1 (en) Unique device address assignment technique for bidirectional daisy chain system
WO2013114926A1 (ja) サポート装置、サポートプログラムを記録した記録媒体、および実行可能プログラムを生成する方法
EP3376316B1 (en) Slave device, control method of slave device, information processing program and computer readable recording medium
JP6623856B2 (ja) スレーブ装置、スレーブ装置の制御方法、情報処理プログラム、および記録媒体
CN101405666A (zh) 用于验证安全通信部件安装位置的方法及控制和数据传送系统
US10466670B2 (en) Field bus module, machine controller, and method for parameterizing a field bus module, in particular a safety-oriented field bus module
WO2017154273A1 (ja) マスタースレーブ制御システム、マスタースレーブ制御システムの制御方法、情報処理プログラム、および記録媒体
JP6149393B2 (ja) 通信カプラ、情報処理装置、制御方法およびプログラム
JP7063976B2 (ja) 少なくとも1つの安全なプロデューサーと少なくとも1つの安全なコンシューマーとの間のデータ伝送
JP6135247B2 (ja) 情報処理装置および情報処理プログラム
JP5894553B2 (ja) 制御システム、回線接続診断方法及びプログラム
WO2019180812A1 (ja) 情報処理装置、方法、及びプログラム
JP2003273875A (ja) データサーバ
CN113545013A (zh) 网络管理装置、管理方法、管理程序以及记录介质
JP7183545B2 (ja) 制御システムおよび機能ユニット

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170512

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170620

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170913

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20170922

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20171020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190403

R150 Certificate of patent or registration of utility model

Ref document number: 6509477

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250