JP3729251B2 - コントローラ及びシステム - Google Patents

コントローラ及びシステム Download PDF

Info

Publication number
JP3729251B2
JP3729251B2 JP2001068288A JP2001068288A JP3729251B2 JP 3729251 B2 JP3729251 B2 JP 3729251B2 JP 2001068288 A JP2001068288 A JP 2001068288A JP 2001068288 A JP2001068288 A JP 2001068288A JP 3729251 B2 JP3729251 B2 JP 3729251B2
Authority
JP
Japan
Prior art keywords
information
controller
related information
control program
name
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 - Lifetime
Application number
JP2001068288A
Other languages
English (en)
Other versions
JP2002268707A (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.)
Omron Corp
Original Assignee
Omron 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 Omron Corp filed Critical Omron Corp
Priority to JP2001068288A priority Critical patent/JP3729251B2/ja
Priority to US10/091,113 priority patent/US20040139270A1/en
Priority to DE10210280A priority patent/DE10210280B4/de
Publication of JP2002268707A publication Critical patent/JP2002268707A/ja
Priority to US11/078,995 priority patent/US7117040B2/en
Application granted granted Critical
Publication of JP3729251B2 publication Critical patent/JP3729251B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13148Object oriented programming
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15009Object oriented configuring, graphical display of plant
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15032Exchange objects having I-O, configuration, status, parameters, functions attributes

Description

【0001】
【発明の属する技術分野】
この発明は、コントローラ及びシステムに関するものである。
【0002】
【発明の背景】
良く知られているように、FAなどの工業領域におけるコントロールシステムには、PLCなどの制御装置(コントローラ)と、その制御装置により制御される機器(デバイス)を適宜組み合わせて構築される。図1に示すように、コントローラ1には、ネットワーク2を介して1または複数のデバイス3a,3bが接続されている。またコントローラ1の内部には、各デバイス3a,3bをハンドリングするための制御プログラム(ドライバ)4a,4bが実装されている。この制御プログラム4a,4bは、デバイス3a,3bごとに用意され、I/Oメモリ5を利用しながら対応するデバイス3a,3bとデータの送受を行い、所定の処理を実行する。また、図示の例では、制御プログラム(X)6は、制御プログラム4a,4bを呼び出すもので、全体として1つのタスクが構成されている。
【0003】
なお、デバイス3a,3bは、例えば、ON/OFFセンサやデジタルI/Oのように、ON/OFF情報をコントローラ1(ドライバ:制御プログラム4a,4b)との間で通信するものもあれば、光電センサ(パラメ−タは光量,閾値),温度調節器(パラメ−タは設定温度,PID値など)などのように、デバイス内で設定すべきパラメータを持ち、ユーザが作成したプログラムが動作するものがある。
【0004】
また、図1に示した例では、各デバイス3a,3bはネットワーク2を介してコントローラ1に接続されているが、デバイスとコントローラ間の通信を、コントローラ1内のバスを介して行われる場合もある。例えばコントロ−ラ1としてビルディングブロック式のPLCを用い、そのベ−スユニット上のスロットにモ−ションコントロ−ルユニットやPID制御ユニットを直接接続した場合である。
【0005】
一方、上記した通信を行うためには、制御プログラム4a,4bと、その制御プログラム4a,4bがアクセスすべきデバイス3a,3bを関連付ける必要があり、通常、デバイス3a,3bに対してネットワーク2上にユニークに設定される識別子としてのノード番号を付与し、そのノード番号を指定してアクセスする。なお、デバイスがバス接続されている場合には、ノード番号はユニット番号となるが、基本的な考えは同じである。
【0006】
図1に示す例では、デバイス(A)3aのノード番号は#5となり、デバイス(B)3bのノード番号は#6となっている。従って、制御プログラム(A)4aが、デバイス(A)3aに対してメッセージ通信でアクセスする場合、プログラム中にデバイス(A)3aのノード番号(#5)を記述することになる。
【0007】
ところで、一度作成した制御プログラムを再利用することができると、新たに制御プログラムを作成しなくて済むことがあり、開発に係る労力が軽減される。一方、ドライバと称される制御プログラムは、その制御プログラム(ソフト)がアクセスするデバイス(ハード)と一体となって初めて機能を発揮するものであり、両者を一体として取り扱った方が好ましい。なお、以下の説明では、それら制御プログラムとデバイスを一体にしたものを制御オブジェクトと称する。
【0008】
しかしながら、従来のシステムでは、プログラム単位での再利用はできたものの、制御プログラムとデバイスを一体として扱う方法がなく、それぞれを別々に再利用することになり、再利用が煩雑である。
【0009】
また、図1に示すように、例えば、生産ラインの変更や、補強,修理のために、一方のコントローラ1で使用していたデバイス(A)3aを別のコントローラ1′に接続して使用したいという要求がある。このような場合に、上記した制御オブジェクトの考えに従い、制御プログラムとデバイスをともにコントローラ1′に移行(再利用)することを考える。すると、まず、制御プログラムは、プログラミングツールやコントローラに装備されているメモリカードなどを経由して、容易にコントローラにダウンロードすることができる。また、デバイス(A)3aをハード的にコントローラ1′が接続されているネットワーク2′に連結することにより移行できる。
【0010】
しかし、そのように単純に接続しただけでは、制御オブジェクトを動作させることはできない。すなわち、制御プログラムと対になるデバイスとの間でコミュニケーションを行うためのコンフィグレーションが必要であるが、元のコントローラ1で使用していた情報をそのまま使用すると動作しなくなってしまう。
【0011】
一例を示すと、図1に示したものの場合、制御オブジェクト(A)4aが管理するデバイス(A)のノード番号は,#5であったため、制御プログラム(A)の中、或いは制御プログラム(A)を呼出す制御プログラム(X)の中に、デバイス(A)にアクセスするためにノード番号(#5)を指定するプログラム部分がある。
【0012】
一方、コントローラ1′では、ノード番号(#5)は既に他のデバイスに使用されている。従って、制御プログラム(A),(X)において、ノード番号(#5)とある部分をそのままにしていると、エラーとなる。従って、図示の場合には、該当する部分のプログラムを正しいノード番号である(#2)に書き替える必要があるが、該当する部分を全てピックアップし、修正すること、並びに係る修正が他のプログラムへ影響を与えないことを注意,確認しながら実行することは煩雑である。
【0013】
さらに、デバイス(A)のコントローラ1,1′のI/Oメモリへの割付(I/Oコンフィグレーション)も、それぞれ異なることがある。そして、制御プログラム(A)におけるデバイス(A)の割付けられているI/Oメモリ5へのアクセス方法が、アドレスを指定するようなプログラミングスタイルの場合や、たとえ変数プログラミングであっても、上記I/Oメモリ5に配列でアクセスするような場合には、再利用の際に係る割り付けが変更されたことを考慮し、該当するプログラム部分を変更する必要があるので、やはり煩雑である。そして、当然のことながら、アドレスを間違えると、動作ができなくなる。
【0014】
さらにまた、上記したように、制御オブジェクトを再利用するに際し、I/Oメモリ5への再割り付けが必要な場合、さらに以下に示す問題がある。すなわち、開発者は、再利用先のコントローラ1′のI/Oメモリ5の使用状況、つまり、「どこに、どれだけの空きエリアがあるか」などのメモリマップを把握している必要があり、空きエリアを効率良く使用するように割り付けを行い、実際にプロクラムを組む必要がある。そのため、割付ミス等人為的なミスを起こしやすい。
【0015】
さらに、必要に応じて、既に接続されたデバイス用に割り付けたI/O割付けまで変更されることがあり、係る場合には、そのすでに接続されているデバイス用の制御プログラムまで変更しなければならず、煩雑であるばかりでなく、割り付けミスをする可能性が高くなる。
【0016】
さらにまた、デバイスの中には、光電センサ,温度調節器などのように、デバイス内で設定すべきパラメータを持つものがあるのは、既に述べたが、係るパラメータやプログラムをデバイスに設定するためには、ツール装置をデバイスに直接接続したり、或いは、コントローラに接続し、そのコントローラを介して各種の設定を行う必要がある。
【0017】
従って、仮にデバイスが故障した場合、そのデバイスを交換することになるが、新たなデバイスに対して、再度故障前のデバイスに対して行ったパラメータ等の設定処理と同じ工程を実施することになり、非常に工数がかかる。係る処理は、マニュアルで調整・設定することになるが、前回行った設定情報をどこかの記憶媒体や帳票に記憶しておき、その設定情報を見ながら操作員が設定することになる。従って、入力処理時の人為的ミスが発生しやすい。また、設定情報を記憶した帳票等が見つからなかったり、違う情報を見て設定してしまうおそれなどもある。
【0018】
一方、図2に示すようなシステム構成では、デバイス3で異常が発生した場合、デバイス3に割り付けられているコントローラ1のI/Oメモリ5の所定ビットが変化する。すると、そのコントローラ1のI/Oメモリ5を参照している表示器7が、そのビットの変化を検出し、異常ありと認識することにより異常画面を表示するようになっている。係る異常画面を表示するための具体的な処理は、以下の通りである。
【0019】
すなわち、コントローラ1のシステムソフト(第1通信処理8a)がデバイス3の状態を検出し、コントローラ1のI/Oメモリ5上の予め定めた所定アドレスに格納する。また、コントローラ1内の制御プログラム4は、上記したI/Oメモリ5の所定アドレスを監視し、ビットが立つか否かを判断する。そして、ビットが立ったことを確認すると、制御プログラム4は、I/Oメモリ5の別のアドレスにビットを立てる。このビットが立ったならば、制御プログラム4は、デバイスの状態をもとに、「表示器に表示させたい画面番号/数値データ(異常コード)/文字列データ(異常内容)」等の情報をメモリ5上の所定領域に格納する。係る情報は、第2通信処理8bを介して表示器7に送られる。表示器7側では、通信処理部8cが受け取った情報に基づき表示器7内のメモリ5に格納する。画像表示処理部4cでは、そのメモリ5に格納された情報に伴い、表示器7で表示すべき画面番号を獲得し、画面メモリ9から対応する画面を呼び出すとともに、その呼び出した画面を表示する。
【0020】
ところで、上記の表示される内容は、あるデバイスで異常が発生しても、そのデバイスがシステムにおいてどのような意味を持っているものかまではわからない。例えば、ネジ締めロボットという論理単位をユーザは認識しているが、その構成要素のデバイスの通信アドレスが異常、或いは、デバイスが割り付いているコントローラのあるビットのON/OFFで故障と通知しても、どういう制御要素で異常が発生したか理解することが容易でない。そのため、何らかの表をもとに論理的な意味を理解し、保守,メンテナンスを行うことになるので、その理解に時間がかかり、その結果、保守,運用に時間を要する。
【0021】
更にまた、生産ラインは、複数の設備から構成されており、各設備には、表示器,パネルコンピュータなど、いわゆるヒュ−マン・マシン・インタ−フェ−ス(以下、HMI)が装備され、その設備の稼動状況や設備を構成するデバイスの情報,生産情報,設備の操作のために使われる。また、生産ライン/工場自体の生産情報などをモニタするためのパソコン(これもHMIと言える)が工場内、或いは工場外に設置されている。
【0022】
ところで、係るHMIに表示される数値,文字,絵といった情報は以下のように決められる。すなわち、コントローラに接続されているデバイスの値を表示する際には、デバイスのメモリがコントローラのメモリに割り付いている場合、デバイスが割り付いているコントローラのメモリをHMIが通信によって参照し、その値をHMIで表示する。もし、上記値に演算が必要な場合には、一般に情報系のプログラムを実行するのに適したHMI内で演算処理を行う。
【0023】
しかしながら、HMIのプログラム・表示画面を設計する開発者、或いはそのHMIを見る保守員は、設備を構成するデバイスについては、理解容易性のためにオブジェクト名でアクセスして情報を収集したいという要求がある。しかし、従来のシステムでは、ユーザがデバイスをI/Oコンフィグレーションでコントローラにデバイスのメモリをマッピングし、その情報を把握した上で、HMIの設定ツールで、コントローラのメモリのアドレスを指定する必要がある(図2参照)。
【0024】
従って、設備変更等が発生して上記のデバイスのメモリマップが変更された場合には、HMIの演算プログラムも書き替える必要がある。つまり、仮にコントローラ(制御系)のプログラム開発と、情報系のプログラムを平行して行うような場合には、常に相手側の開発状況に注意をはらい、必要に応じて相手方の変更に伴う自己の開発プログラムの変更を行わなければならず、開発処理が煩雑で長期化する。
【0025】
この発明は、制御プログラムとデバイスを一体でオブジェクト(制御オブジェクト)として扱うことができ、また、デバイスの通信アドレスや、メモリ割付が変更された場合に、その通信アドレス,メモリ割付等が変更のデバイスにアクセスする制御プログラムや、情報系のプログラムに影響を与えることがなく、情報系のプログラムの作成と制御プログラムの作成の独立性を確保でき、さらに、デバイスの交換の際に発生するパラメータの設定の迅速化,正確化を図り、また、デバイス,コントローラで発生した異常をユーザフレンドリに通知することのできるコントローラ及びシステムを提供することを目的とする。
【0026】
【課題を解決するための手段】
この発明によるコントローラでは、制御対象のデバイスを接続し、接続されたデバイスの動作を管理するための制御プログラムを実行し、メモリを利用して前記デバイスに対してデータを読み書きするコントローラであって、前記制御プログラムは、デバイス名を定義してプログラムされていて、前記制御プログラムと、対象となるデバイスのデバイス名とそのデバイスに要するメモリ割付け領域のアドレス情報とを含むデバイス情報と、を関連付けた関連情報を記憶する関連情報記憶手段と、前記制御プログラムの実行にあたって、プログラム中に定義されたデバイス名のデバイスにアクセスするために、前記関連情報記憶手段に格納された関連情報を参照することにより、そのデバイスに対応するメモリの割付け領域を前記メモリ上に確保する割付処理部と、を有し、制御プログラムを実行することと、割付処理部にて確保されたメモリの割付け領域を利用してデバイスに対してデータを読み書きするようにした。
【0027】
前記関連情報記憶手段は、前記デバイスとINサイズとOUTサイズのアドレス情報を前記デバイス情報として含み、前記割付処理部は、前記関連情報記憶手段に格納された関連情報を参照することにより、そのデバイスのINデータおよびOUTデータに対応するメモリ割付けを行い、その割付結果を前記関連情報として登録するものとすることかできる。
また、制御対象の複数のデバイスを、コントローラに直接またはネットワークを介して接続し、前記関連情報記憶手段の関連情報のデバイス情報は、デバイス名と通信アドレスとを含み、前記関連情報記憶手段からデバイス名と通信アドレスとの情報を取得し、その取得した通信アドレスに接続されたデバイスに対して前記取得したデバイス名を含むデバイス情報を問い合わせし、そのデバイスから返信されてきた情報が正しいかどうかを判断することで、アクセス先を決定するとともに前記関連情報記憶手段にそのアクセス先を格納する通信処理手段を有するようにするとよい。
前記関連情報記憶手段の前記関連情報は、対象の制御プログラムとデバイスとの対の単位で、制御オブジェクト名を付与したものであって、その関連情報は、制御オブジェクト名と、対象の制御プログラムと、対象のデバイスのアドレス情報と、を関連付けた情報とすることができる。
さらに、前記関連情報記憶手段に格納された前記関連情報のデバイス情報は、通信アドレスを含み、動作終了の際に、制御プログラムの実行を停止し、前記関連情報記憶手段に格納された前記通信アドレスのデバイスから設定パラメータを取得するとともに、それを前記関連情報記憶手段に記憶保持し、動作開始の際に、前記関連情報記憶手段に記憶保持した設定パラメータを、対応する通信アドレスのデバイスに対してダウンロードする機能を備えるとよい。
また、前記メモリに、通信アドレスごとに前記デバイスが異常か正常かを識別するためのステータス情報と異常原因情報とを格納する領域を設け、前記メモリの領域を監視し、異常があった場合には、異常が発生した通信アドレスに対応する制御オブジェクト名、デバイス名、通信アドレス、異常原因情報をロギングするとともに、前記関連情報に基づいて異常のあったデバイス用の保守情報を出力するデバイス監視処理手段を有することができる。
【0028】
「デバイスを管理する」とは、デバイスと関連付けられ、デバイスを制御、つまり、デバイスが入力デバイスの場合には、その入力デバイスからの情報を取得して所定の処理を実行し、また、デバイスが出力デバイスの場合には、そのデバイスに対して命令を送り所定の動作を行わせることを意味する。広い意味では、デバイスと情報の通信を行う制御プログラムは、デバイスを管理するための制御プログラムとなる。
【0029】
関連情報は、少なくとも制御プログラムがデバイスに対してアクセス可能とするための情報であり、制御プログラム側でデバイスを特定するための情報(デバイス名など)と、実際にアクセス先を特定する通信アドレス(ノード番号)であったり、コントローラメモリに割付けられたメモリアドレス等を含む。このようにすることにより、制御プログラム側では、デバイス名などのデバイスを特定するための情報を用いてプログラムを組み、デバイスを呼び出す際には、関連情報記憶手段に格納されたそのデバイスについての関連情報を参照することにより、アクセスができる。
【0030】
よって、再利用などによりデバイスの通信アドレスや、割り付けられたメモリアドレスが変換されたとした場合には、関連情報を修正するだけで対応できる。つまり、制御プログラムを修正する必要がない。その結果、デバイスと制御プログラムを一体として扱い、移動なども簡単に行える。
【0031】
また、HIMなどの情報系の機器がデバイスにアクセスしたり、動作状況を監視する場合にも、上記の関連情報を参照することにより、対応できる。よって、仮に制御系のプログラム変更などがあったり、デバイスのアクセス先が変わったとしても、情報系のプログラムに影響はない。従って、制御系と情報系のプログラムを平行して開発ができる。
【0032】
関連情報には、具体的なアクセス先(アドレス)などを格納することになるが、係る情報をマニュアルにより開発者等が入力しても良いが、例えば、接続されたデバイスと通信を行い、前記アクセス先を決定するとともに、前記関連情報記憶手段に格納する通信処理手段を備えたり、前記デバイスと前記コントローラのデータの送受は、前記コントローラ内に設置されたコントローラメモリの所定領域を介して行うものであり、前記デバイスのメモリサイズに基づき、前記コントローラメモリに対するメモリ割付を行うとともに、その割付結果を前記関連情報として登録する割付処理手段を備えるようにすると、自動的に設定できるので、簡単かつ正確に行える。
【0033】
また、デバイスの中には、動作するために必要な動作情報(実施形態では、「設定パラメータ」)を保持し、それに基づいて所定の動作をするものがある。係るデバイスに対しては、動作終了の際に、前記動作情報を取得するとともに、記憶保持し、動作開始の際に、前記記憶保持した動作情報を前記デバイスに対してダウンロードする機能を備えるとよい。これにより、稼動中に動作情報が変更された場合であっても、終了時に係る動作情報をコントローラ側に記憶することにより、実際のデバイスの動作情報と、コントローラ側での記憶内容が整合された状態が保証され、動作情報の管理が容易に行える。
【0034】
前記デバイスと前記コントローラのデータの送受は、前記コントローラ内に設置されたコントローラメモリの所定領域を介して行うものであり、前記コントローラメモリに前記デバイスの異常情報を格納する領域を設定し、前記異常情報と、前記関連情報に基づき、異常のあったデバイス用の保守情報を出力するようにするとよい。異常のあったデバイスを知らせるだけでなく、そのデバイスの保守をする際の補助情報を出力することにより、効率的に保守作業が行える。ここで、保守情報は、実施の形態では、「異常が発生した制御オブジェクト名,異常が発生したデバイス名,異常が発生したデバイスの通信アドレス並びに異常原因等」である。これにより、故障したデバイスがどの制御オブジェクトに該当するか等の情報を知ることができ、迅速に保守作業が行える。
【0036】
さらに、本発明に係るシステムは、上述した各種のコントローラと、コントローラがデバイスを制御するのに必要な関連情報を作成して前記コントローラに向けて前記関連情報をダウンロードするツールと、を備えたシステムである。そして、前記ツールは、コントローラで実行される制御プログラムと制御対象のデバイスとの対を制御オブジェクトとして管理し、制御オブジェクトの制御プログラムが対象とするデバイスのデバイス名とデバイス情報とを定義するとともに、制御プログラムを記述し、その制御プログラムとデバイス情報とを前記コントローラにダウンロードするものであり、前記コントローラは、取得した制御プログラムとデバイス情報とに基づいて、前記関連情報を生成し、前記関連情報記憶手段に格納するようにした。
【0037】
実施の形態では、基本関連情報は、具体的なデバイスを特定するシリアルナンバーや、アドレス(通信,メモリ)が空欄で、そのデバイスの一般的な情報と制御プログラムの関係を格納するようにし、コントローラ側では、ダウンロードした基本関連情報に基づき、実際のデバイスと通信したりして、空欄の情報を埋めて関連情報を自動的に生成するようにしたが、マニュアル操作で関連情報を作成しても良い。また、基本関連情報のときから、必要な情報を全て(一部はマニュアル操作の場合もある)格納するようにすることもできる。その場合には、情報の内容としては、基本関連情報と関連情報は等価となる。なお、「関連情報」は、実施の形態ではオブジェクトデータベース13に対応し、「基本関連情報」は、オブジェクトデータベース22に対応する。
【0043】
この発明の以上説明した構成要素は可能な限り組み合わせることができる。この発明による装置を構成する各手段を専用のハードウェア回路によって実現することができるし、プログラムされたコンピュータによって実現することもできる。
【0044】
【発明の実施の形態】
図3は、本発明が適用されるシステムの一例を示している。また、図4は、ツール20の内部構造を示している。図3に示すように、本システムは、PLC等のコントローラ10とツール20とにより構成され、コントローラ10には、直接またはネットワークを介してデバイス30が接続されている。コントローラ10は、デバイス30の動作を管理する制御プログラム11を有する。また、デバイス30は、割り付けられたコントローラメモリ(I/Oメモリ)12の所定エリアに対し、データを読み込み或いは書き込みを行う。これらは、通常のコントローラとしての機能と同様であるのでその詳細な説明を省略する。
【0045】
ここで、本発明では、制御プログラム11とデバイス30とを一体にした制御オブジェクトという単位で取り扱いを可能とし、係る取り扱いを行うための必要な情報をオブジェクトデータベース13に格納する。
【0046】
すなわち、本形態では、デバイス30を特定するのに際し、オブジェクト名(デバイス名)を用いて識別するようにし、プログラム中でデバイスを読み出す場合、従来はアドレスを直接入力するようにしていたが、本形態ではデバイス名で定義するようにした。そして、デバイス名で特定されるデバイスが実際にどこに接続され存在するかの情報を別途用意するようにした。そして、具体的にどこに接続されているか等の情報は別途管理するようにした。これにより、再利用のために制御プログラム11とデバイス30を別のコントローラに接続した際に、アドレス(メモリアドレス,通信アドレス等)が異なった場合でも、別途管理しているデバイス名とアドレスの関係を修正するだけで済み、制御プログラムの内容の修正までは不要となる。
【0047】
係る処理を実現するため、オブジェクトデータベース13には、制御オブジェクトを構成するデバイス情報とデバイスをオブジェクト名で識別するための情報を保持するために、「制御オブジェクト名」と「制御オブジェクトを構成するデバイス情報」を格納している。ここで、デバイス情報としては、バス或いはネットワーク上におけるデバイスのアドレス(以下、通信アドレス)である。すなわち、デバイスがPLC等の内部状態を保持できる場合は、ユーザがPLC等に対して定義したデバイス名とそのデバイス名がPLC等のデバイスのどのエリアに保存されているかというアドレス情報がある。更に、デバイスが単純なデジタルI/Oのように内部状態を保持できない場合は、ユーザが定義するデバイス名に加え、デバイスの製造メーカが定義するデバイスのシリアル番号なども併せて格納するようにしている。さらにまた、ユーザが定義した制御オブジェクトのインタフェース情報(以下、オブジェクトインタフェース情報:サービス名、サービスに必要なデータの型情報、オブジェクトの属性名、及びその型情報)を保持する仕組みを持つ。
【0048】
よって、オブジェクトデータベース13により、制御オブジェクトがどのようなデバイスから構成されているかということと、デバイスをオブジェクト名という論理名で識別することが可能となる。
【0049】
上記各情報は、ツール20により作成されたものをコントローラ10にダウンロードすることにより実装される。また、コントローラ10にダウンロードされる際に必要なデータの修正が行われる。以下、データの生成順に従い、説明する。
【0050】
まず、ツール20は、図5に示すフローチャートを実現する機能を持ち、これによりオブジェクトデータベースに格納する情報を生成する。すなわち、ツール20は、パソコンその他のコンピュータなどにより構成される。そして、図6に示すように、そのモニタ画面Mに、接続可能なデバイスのリスト(H/W Cataiog)が表示されるリスト領域(デバイスカタログView)R1と、実際にグラフィック画面で1つの制御オブジェクトを組むための作業領域R2と、その作業領域R2の情報に作成中の制御オブジェクト名を登録する領域R3を有している。作業者(開発者)は、このモニタ画面Mを見ながら各種操作をすることになる。
【0051】
具体的には、まず最初にオブジェクト定義処理部21が、制御オブジェクト名を定義する(ST1)。つまり、ツール20のポインティングデバイスを操作してカーソルを領域R3にセットし、キーボードなどの入力装置を操作して制御オブジェクト名を入力する。オブジェクト定義処理部21は、係る入力を受けて、オブジェクト名を登録する。図6では、制御オブジェクト名として、「ネジ締めロボット」が登録されていることを示している。
【0052】
次に、制御オブジェクトの構成デバイスを定義する(ST2)。具体的には、図6に示すモニタ画面Mのリスト領域R1内から使用するデバイス(クラス)を選択し、右側の作業領域R2にドラッグ&ドロップして貼り付ける。デバイスが複数存在する場合には、この処理を複数回繰り返すことにより、制御オブジェクトに必要なデバイス構成を定義する(図7には、3つのデバイスA,B,Cが選択されたことを示している)。
【0053】
そして、上記のようにして選択された各デバイスの内容を設定する。具体的には、設定するデバイスをダブルクリックすると、図6,図7に示すように、設定画面Gが表示される。図示の便宜上モニタ画面Mの外側に記載しているが、実際には作業領域R2の情報に重ねて描画される。そして、この設定画面G上で、デバイス名(図では「C」),通信アドレス,INデータサイズ,OUTデータサイズ,通信方法等のネットワーク通信のコンフィグレーションに必要な情報を入力する。すると、オブジェクト定義処理部21では、その入力されたデータに基づきデバイスの設定情報をXML,Iniファイル等の所定のファイル形式でオブジェクトデータベース22に格納する。
【0054】
なお、各デバイスについての基本機能(デバイス名,INデータサイズ,OUTデータサイズ)は、初期値としてデータベースに登録されているので、上記のように、ダブルクリックされると、その指定されたデバイスについての初期値を読み出し、設定画面Gに表示する。よって、操作者は、空欄に所定のデータを入力することになる。そして、上記の設定により、オブジェクトデータベース22に格納された内容の一例としては、図8に示すようになる。また、係る処理を繰り返し行うことにより、「ネジ締めロボット」を構成する各デバイスA,B,Cについての情報は、図9に示すような内容で登録される。
【0055】
なお、デバイス番号(DeviceNun)や、ノード番号等は、空いてる番号や昇順方式などにより自動的に振り付けるようにしても良い。なおまた、この時点では、デバイスのシリアル番号や INデータの先頭アドレス(INadr0)やOUTデータの先頭アドレス(OUTadr0)は、格納されない。
【0056】
次に、オブジェクトインタフェース定義処理部24が、制御オブジェクトのインタフェースを定義する(ST3)。実際には、この処理部がINデータサイズやOUTデータサイズを初期値としてモニタ画面に表示し、それを見ながら開発者が定義を入力するので、それを受けてユーザが定義した情報をオブジェクトデータベース22に格納する。図10(デバイスCについて)では、デバイスのIN領域の下位1byteをIn_pram1,上位1byteをIn_pram2とユーザが定義し、OUT領域の下位1byteをOut_pram1,上位1byteをOut_pram2とユーザが定義した情報がオブジェクトデータベース22に格納されたことを示している。
【0057】
次いで、デバイスに対する制御プログラムを記述する(ST4)。すなわち、制御プログラム作成部23により別途汎用言語で作成された制御プログラムを、制御オブジェクトの1つのメソッドとして定義され、オブジェクトデータベース22に選択された制御プログラムが、制御オブジェクトのサービスとして登録される。
【0058】
一例を示すと、例えば図11に示すような「Add_Val」という制御プログラムが作成され、登録されているものとする。この場合に、制御オブジェクトの1つのメソッドとして「Add_Val」が定義され、オブジェクトデータベース22に「Add_Val」という制御プログラムが「ネジ締めロボット」というオブジェクトのサービスとして登録される。つまり、オブジェクトデータベース22には、ユーザが定義した制御オブジェクトのインタフェース情報(サービス名,サービスに必要なデータの型情報,オブジェクトの属性名,及びその型情報)が登録されることになる。これにより、図8に示した記憶内容が、図12に示すようになる。
【0059】
また、制御プログラムは、Java,FB,VB等で記述される。そして、Javaで記述されている場合には、「ネジ締めロボット」がJavaの1つのクラスとなる。またIEC1131で記述されている場合、「ネジ締めロボット」が1つのFBとなる。
【0060】
そして、制御オブジェクト管理部25が、制御オブジェクトをデータベース26に登録する(ST5)。登録の際には、オブジェクトデータベース22を参照して、制御オブジェクトを生成する。ここでの生成とは、Javaの場合、1つのJavaクラスのコード、FBならFBのコードを生成することを示す。図13では、オブジェクトデータベースからJavaのクラスが生成された場合の例を示している。生成されたネジ締めロボットJavaクラスの属性に、「ネジ締めロボット」という情報が格納される。これにより、オブジェクトデータベース22と制御プログラムが関連付けられる。
【0061】
なお、説明が前後するが、ここで関連付けられて登録する制御プログラムは、予めクラス作成処理部27にて制御クラスが生成されている。つまり、図4に示すように、このクラス作成処理部27は、オブジェクトデータベース22を参照し、ユーザが汎用言語で作成した制御プログラム28から汎用言語のクラスを生成するもので、生成されたクラスの属性として、オブジェクトデータベースに格納されている制御オブジェクト名が格納される。図13の例では、属性として「ネジ締めロボット」という制御オブジェクト名が格納された制御プログラム28′が生成される。これにより、制御プログラム(上記クラスのメソッド群)28′と、オブジェクトデータベース22が関連付けられ、制御プログラムとデバイスを対として制御オブジェクトとして扱うことが可能となる。
【0062】
また、ユーザが作成する制御オブジェクトのサービス以外に以下のようなシステムで自動的に生成されるサービスが存在する。すなわち、「Get_Profile」は、制御オブジェクトのプロファイル情報を獲得する。例えば制御オブジェクトを構成するデバイスの通信アドレスを獲得する処理を実行する。
【0063】
また、「Send_Message/Receive_Message」は、制御オブジェクトを構成するデバイスに対してメッセージを送信/受信する際のインタフェースである。DeivceNet(登録商標)の場合、「デバイス名,クラスID,インスタンスID,アトリビュートID」などのパラメータをもつ。このサービスが呼ばれた場合、このサービスのパラメータであるデバイス名をキーにオブジェクトデータベース22から通信アドレスを獲得し、パラメータを当該デバイスに対して送信する処理を実行する。これにより、制御オブジェクトにプログラムは、デバイスの識別子として通信アドレスを指定するのでなく、オブジェクト名でアクセスすることが可能となる。換言すると、通信アドレスは知らなくても、或いは、変更されていたとしても、オブジェクト名と通信アドレスの関連付け際しておくことにより、デバイスを呼び出すことができる。
【0064】
さらに、「Set_Attribute/Get_Attribute」は、制御オブジェクトの属性に値を設定したり、制御オブジェクトの属性の値を獲得する処理を実行する。
【0065】
また、制御オブジェクト管理部25は、作成したデータベース26に登録された制御プログラム28′とオブジェクトデータベース22を、コントローラ10にダウンロードする(ST6,ST7)。制御オブジェクトを定義する開発環境がコントローラ内に存在する場合は、同一装置の決められた場所(メモリの番地)に配置することを意味する。
【0066】
一方、コントローラ10は、ツール20からダウンロードされた情報(オブジェクトデータベース13に格納)に従い、コントローラシステムソフト14が、以下の処理を実行する。すなわち、図14に示すように、制御オブジェクト割付処理部14aは、オブジェクトデータベース13を参照し、制御オブジェクトの構成デバイスとINサイズ,OUTサイズを獲得し(▲1▼)、そしてコントローラメモリ12の空き領域にメモリマップを行う(▲2▼)。
【0067】
すなわち、オブジェクトデータベース13に格納された「ネジ締めロボット」についての情報が図9のようになっているとすると、デバイスCについては、INサイズが「2」であるので、図13に示すようにコントローラメモリ12のあいている所定のアドレス(図示の例では「AD1」)から2バイト分の領域を確保することにより、割り付け(マッピング)を実行する。
【0068】
そして、この割り付けに伴い、割り付けたコントローラメモリ12上の先頭アドレス(図示の場合「AD1」)をオブジェクトデータベース13に格納する(▲3▼)。
【0069】
そして、この割付によりデバイスCについての終了アドレスはわかっているので(先頭アドレス+INデータサイズ)、次のデバイスAについては、その終了アドレスの次のアドレスを先頭アドレスAD3として割付を行い、その結果をオブジェクトデータベース13に格納する。以下順に繰り返し処理をすることにより、全てのデバイスについてのINデータとOUTデータの割付が行え、図9に示す例では、図16に示すようなデータが作成される。
【0070】
次に、デバイスのシリアル番号を獲得し、オブジェクトデータベース13へ登録する。すなわち、図16に示すように、通信処理部14bが、オブジェクトデータベース13へアクセスし、処理対象のデバイスのノード番号とデバイス名等の情報を取得する。そして、その取得したノード番号に接続されたデバイスに対してデバイス名,シリアル番号などの問い合わせを行い、デバイスからの返答を待ち、デバイスから送られてきた情報が正しい(オブジェクトデータベース13に登録されている情報と一致する)場合に、送られてきたシリアル番号を正式なものと判断し、オブジェクトデータベース13の該当領域に登録する。
【0071】
図16に示す例では、ノード番号(#8)に接続されたデバイスは、デバイス名(オブジェクト名)がCで、シリアル番号が「SN−01」であるので、デバイス名が一致するため、図15に示すように、デバイス名Cのところに、シリアル番号「SN−01」を格納する。係る処理を全てのデバイスに対して行い、図15に示すようなネジ締めロボットについてのオブジェクトデータベースが完成する。
【0072】
また、PLCのように装置内部にデータを保持できるものについては、デバイスと通信する際に、オブジェクトデータベースに格納されているデバイスのデバイス名をデバイスの決められたエリア(どこに書き込むかはオブジェクトデータベースに格納されている)に書き込む。またこの際に、すでにデバイスにデバイス名が書き込まれている場合は、マッチングをかける。もし一致しない場合は異常を外部周辺機器などに通知する。
【0073】
これにより,オブジェクトデータベースとテバイスの関連付けができる。また、制御オブジェクト単位のI/Oコンフィグレーションが可能となる。つまり、制御プログラムがデバイスを読み出す場合、デバイス名でプログラムを組んでおくと、オブジェクトデータベース13によりデバイス名とそのデバイスが接続されたノード番号や、そのデバイスについてのIN/OUTデータを格納するメモリアドレスが関連付けられているので、その関連付けられた情報に基づきアクセスすることができる。
【0074】
一方、制御オブジェクト(制御プログラム+デバイス)の再利用をする場合には、以下の処理手順を実行することにより行われる。すなわち、ツール20内の制御オブジェクト管理部25が、制御プログラムとオブジェクトデータベースを管理しているデータベース26から、再利用する制御プログラムとオブジェクトデータベースを取り出し、取り出した情報(制御プログラム+オブジェクトデータベース)を再利用先のコントローラ10に、ダウンロードする。なお、オブジェクト定義ツールでは、制御オブジェクトを指定してコントローラ10にダウンロードすると、制御プログラムとオブジェクトデータベースが対でダウンロードされるようになっている。また、制御オブジェクトが複数の制御オブジェクトから構成される場合でも関係する制御オブジェクトの制御プログラム,オブジェクトデータベースもすべてダウンロードされる。また、制御プログラムと対になるデバイス30をコントローラ10に接続する。この接続は、使用状況に合わせてネットワーク,直接のいずれでも良い。
【0075】
そして、再利用先のコントローラ10における制御オブジェクト割付処理部14aと通信処理部14bが、それぞれ以下のような処理を実行する機能を有する。まず、制御オブジェクト割付処理部14aは、図17に示すように、すでにあるオブジェクトデータベース13′を参照して空き領域を検出し、新たにダウンロードしたオブジェクトデータベースの各デバイスについてのコントローラメモリを割り付ける。つまり、すでに存在するオブジェクトデータベースの割付情報(IN/OUTサイズ、割付けアドレス)を獲得し(▲1▼)、再利用のためにダウンロードされた制御オブジェクトのオブジェクトデータベースから割付情報(IN/OUTサイズ)を獲得する(▲2▼)。そして、上記▲1▼の処理に基づき求めたコントローラの空き領域に、▲2▼の処理で得られた新たなデバイスについてマッピングする(▲3▼)。
【0076】
次いで、そのマッピング情報(コントローラメモリ12に割付けた先頭アドレス)をオブジェクトデータベース13″に格納する(▲4▼)。これにより、新たにダウンロードしたデバイスに対するメモリ割付が完了する。そして、空き領域に行われるので、既存のオブジェクトデータベース13′への影響はない。もっとも、この再利用に伴う割付処理に際し、必要に応じて既存のオブジェクトデータベース13′に割り付けられているアドレスを変更してもかまわない。仮に係る変更をした場合でも、データが更新されるのはオブジェクトデータベース13′内の先頭アドレスを格納する領域であり、係る既存のデバイスに対する制御プログラムは、デバイス名で呼び出すので影響を与えないからである。なお、上記した処理▲2▼から▲4▼は、基本的に新規の割付処理(図14の▲1▼から▲3▼)と同様であるので、その詳細な説明を省略する。
【0077】
一方、図18に示すように、通信処理部14bは、既存のオブジェクトデータベース13′からオブジェクト名とシリアル番号と通信アドレス(以下、登録デバイス構成)を獲得する(▲1▼)。次にネットワーク上のデバイスに対して何が接続されているのかを問い合わせる(▲2▼)。つまり、全てのノードに対し、オブジェクト名と通信アドレス(ノード番号)の回答を要求する。すると、係る要求を受けた各デバイスは、要求に応じた回答をするので、実際に接続されているデバイスのデバイス名(デバイス名を記憶できないデバイスは、シリアル番号)と通信アドレスの対応(以下、実デバイス構成)を獲得後、オブジェクトデータベースから獲得された登録デバイス構成と比較を行う。
【0078】
これにより、実デバイス構成と登録デバイス構成があっているか否かを判断するとともに、あいている通信アドレスを認識する。既存の登録デバイス構成と異なるものがあれば、オブジェクトデータベースの記憶内容を実デバイス構成に併せて修正する。
【0079】
そして、ダウンロードしてきたオブジェクトデータベースに登録されているデバイスの通信アドレスが、既存の登録デバイスに付与されている通信アドレスと重複しているか否かを判断し、重複していない場合には、そのままの通信アドレスを設定する。一方重複している場合には、あいている通信アドレスに自動的に割付を行い、そのアドレスをオブジェクトデータベースに格納する(▲3▼)
図18に示したものの場合、すでに存在するデバイス(D,E,F)が通信アドレス#8,#3,#1を使用しており、制御オブジェクト「ネジ締めロボット」の構成要素であるデバイス(A,B,C)の通信アドレスと重複している。従って、例えばデバイスCは、あいている通信アドレス#2を自動的に割り付けられたとすると、図18に示すように、ノード番号が「8」から「2」に更新される。他のデバイスに対しても同様である。
【0080】
これにともない、デバイスに対するノード番号の設定も行う。このとき、係るデバイスの通信アドレスの設定が、ネットワーク経由で行えない場合(デバイスのディップスイッチ等のハードウェアスイッチで設定する)は、外部周辺機器に通信アドレスの再設定する必要があることを通知する。
【0081】
これにより、制御オブジェクトを流用した場合でも関係ない制御オブジェクトには影響を与えない。また、通信アドレスが重複した場合でも自動割付或いは手動割付により、ユーザの負荷が減少される。また通信アドレスが変更された場合でも制御プログラム(デバイス名の変更はないため)には影響を与えない。
【0082】
さらにまた、コントロールシステムを構築する場合に、あるデバイスがそろわないために、代用のデバイス(クラスは同じ)で対応し、インクリメンタル開発をする場合や、あるデバイスのメーカを変更したり、2つのデバイスを1つにする(8点デバイス2個を16点デバイス1個にする)等のデバイスの変更が発生した場合、図13の構成では、デバイスの情報は、全て関数コールで書き込み、参照となっていることから、制御オブジェクトのインタフェースを変更することなく,制御オブジェクトのメソッドを変更することなく、デバイスのI/Oコンフィグレーションの部分だけを実行すればよい。オブジェクト指向でいう、ポリモフィズムが達成される。これにより、コントロールシステム構築の際にインクリメンタル開発,設備変更が容易となる。
【0083】
図19は、本発明の第2の実施の形態を示している。本実施の形態では、上記した実施の形態を基本とし、さらに、設備の起動時にコントローラからデバイスに設定パラメータをダウンロードしたり、設備のシャットダウン時にデバイスの設定パラメータをアップロードする機能を設けている。
【0084】
まず、コントローラの動作を決定するシステム設定を記憶する記憶部15に、「電源ON時のデバイスパラメータのダウンロードの要否」並びに「電源OFF時のデバイスパラメータのアップロードの要否」情報を記憶するようにする。そして、それぞれに対してYes/Noの設定を行う。この設定は、例えば、コントローラ10に制御オブジェクトをダウンロードするタイミングで一緒にダウンロードすることにより登録することができる。
【0085】
そして、コントロ−ラシステムソフト14は、電源ON時に図20に示すフローチャートを実行する機能と、電源OFF時に図21に示すフローチャートを実行する機能を有している。
【0086】
まず、図20に示すように、設備の電源がONされ、設備内のコントローラも電源がONされた場合、記憶部15内に格納されたシステム設定を参照する(ST10)。そして、上記システム設定のうち「電源ON時にデバイスパラメータをダウンロードする」が有効になっているか否かを判断する(ST11)。そして、Noの場合には、そのまま処理を終了する。つまり、通常の制御動作に移行する。
【0087】
一方、Yesとなっていた場合には、コントローラ10内に存在するオブジェクトデータベース13の内容を参照し、オブジェクトデータベース13から制御オブジェクトの構成要素であるデバイスの通信アドレス,設定パラメータを獲得する(ST12,ST13)。そして、獲得した通信アドレスのデバイスに対して、設定パラメータをダウンロードする(ST14)。これにより、電源が投入される都度、デバイスの設定はその都度オブジェクトデータベース13に登録された設定パラメータの内容に書き換えられる。
【0088】
一方、設備のシャットダウン時の処理機能は、図21に示すように、コントローラ10の外部周辺機器からコントローラ10に対してコントローラ10のシャットダウン(コントローラのモード変更)指示をした場合、実行されている制御プログラムを停止し、コントロ−ラシステムソフト14は、記憶部15に格納されているシステム設定を参照する(ST21)。
【0089】
そして、システム設定の「電源OFF時にデバイスパラメータをダウンロードする」が有効(Yes)であるか否かを判断する(ST22)。Noの場合には、そのまま処理を終了、つまりシャットダウンする。
【0090】
一方、コントローラ10内に存在するオブジェクトデータベース13の内容を参照し、デバイス情報(通信アドレス)を取得する(ST23,ST24)。そして、取得した通信アドレスのデバイスに対して、デバイスの設定パラメータを読み込む(アップロードロードする)とともに、その読み込んだ設定パラメータを該当するオブジェクトデータベース13の領域に格納する(ST25,ST26)。これにより、コントローラが起動した後で、現場調整で設定パラメータが変更された場合には、その変更された内容がオブジェクトデータベース13に登録される。
【0091】
これにより、例えば、両方の設定をONにしておくと、電源が投入されると、常に前回シャットダウンしたときの情報で起動することができる。これにより、調整が以降も生きるので有意義となる。また、デバイスの設定パラメータを現場調整したときでも、調整された設定パラメータが制御オブジェクトの属性としてオブジェクトデータベースに格納され、保持されるので、実際のデバイスの設定パラメータと、オブジェクトデータベースの内容が整合された状態が保証され、設定パラメータの管理が容易に行える。また、再利用を考えた場合も、実際のデバイスの設定パラメータの値と整合がとれた状態で再利用されるので好ましい。なお、電源ON時のみYesにしておくと、前回の動作中に行った調整結果は保持されないので、調整前の状態に戻る。よって、一時的な調整などの場合に適する。
【0092】
次に、具体的な処理機能について説明する。まず、図19に示す例では、制御オブジェクトが「ネジ締めロボット」と「パーツフィーダ」の2つ存在することを示している。また、「ネジ締めロボット制御オブジェクトは、3つのデバイスA,B,Cから構成されており、デバイスAの通信アドレスとデバイスパラメータがそれぞれ「3」、「5」であることを示している。また上記の通信アドレス、デバイスパラメータ以外に、設定パラメータをデバイスのどこに格納するのかといったアドレス情報(以下、設定パラメータアドレス情報)が存在する。DeviceNet(登録商標)の場合、クラスID,インスタンスIDといった情報が格納される。またデバイスBの通信アドレス、デバイスパラメータがそれぞれ「1」,「2」であることを示している。またデバイスCの通信アドレス、デバイスパラメータがそれぞれ「8」,「10」である。
【0093】
次に「パーツフィーダ」制御オブジェクトは、Xという1つのデバイスで構成されており、通信アドレス,デバイスパラメータがそれぞれ10,100である。
【0094】
この場合において、電源ON時は、各デバイスB,A,C,Xに対して、それぞれ「3,5,10,100」がダウンロードされる(図19中実線)。そして、デバイスはコントローラよりダウンロードされた設定パラメータで動作する。なお、コントローラ10は制御プログラムの実行を開始する。
【0095】
一方、デバイスBについての設定パラメータは、使用中に変更(3→2)されている。。そして、「電源OFF時にデバイスパラメータをダウンロードする」が有効(Yes)であるので、シャットダウンの際には、各デバイスの設定パラメータ、つまり、デバイスB,A,C,Xに対して、それぞれ「2,5,10,100」が返される。これにより、デバイスBの設定パラメータの値として3がダウンロードされた後、現場調整で2に変更された情報が保持される。
【0096】
また、上記したように電源ON時に設定パラメータのダウンロードを行う機能を利用することにより、以下のような新たな機能が実現できる。係る場合において、コントロ−ラシステムソフト14が各デバイスに対してダウンロードするに際し、デバイス名で通信先を特定するようにする。
【0097】
すなわち、例えばデバイスが故障した場合、一旦電源をOFFにし、新たなデバイスに交換後、電源をONにする。このとき、交換後のデバイスは、交換前のデバイスとデバイス名は同じでもシリアル番号が異なる。また、通信アドレスは、ディップスイッチなどのハード的なスイッチでの設定を行わない限り、未設定となる。
【0098】
そこで、上記したようにデバイス名で問い合わせをすることにより、交換後のデバイスもコントローラ10と通信ができる。もちろん、既存のデバイスも通信ができることは言うまでもない。そして、デバイスは、デバイス名とともにシリアル番号も通知するようにする。すると、デバイスをデバイス名とシリアル番号(オブジェクトデータベースに格納)で管理しているので、コントローラは、起動時にオブジェクトデータベースからデバイスのシリアル番号を獲得し、交換されたデバイスのシリアル番号とマッチングをかける。すなわち、デバイス名が一致するデバイスのシリアル番号の異同をチェックする。
【0099】
そして、一致していれば交換されておらず元のデバイスが接続されていることが確認できる。また、シリアル番号が異なる場合には、コントローラ10(コントロ−ラシステムソフト14)は外部周辺機器に異なるシリアル番号のデバイスを制御オブジェクトのデバイスとして認めるかを問うメッセージを通知する。そして、外部周辺機器で、上記内容にYesというメッセージをコントローラに送信すると、コントローラ10のコントロ−ラシステムソフト14は、新たなシリアル番号をオブジェクトデータベースに書き込む。
【0100】
また、故障に伴い交換したデバイスに対しては、オブジェクトデータベース13に格納された故障前のデバイスについての設定パラメータをダウンロードする。これにより、自動的に設定が必要なデバイスの抽出から、実際にダウンロードするまでの処理が行える。もちろん、このように自動的に行うのではなく、外部装置から交換したデバイス情報(デバイス名など)を与え、対応する交換前のデバイスについての設定パラメータを交換後のデバイスに登録したり、交換後のデバイスのシリアル番号のオブジェクトデータベース13への登録などを行うようにしても良い。
【0101】
図22は、第3の実施の形態を示している。本実施の形態では、デバイスに異常が発生した場合に、外部周辺機器に異常を通知する機能を持たせたものである。
【0102】
すなわち、コントローラメモリ12の所定領域に、制御オブジェクトのデバイスのステータス(以下、デバイスステータス情報)を割り付ける。このデバイスステータス情報は、通信アドレスが異常なのか正常なのかを表す通信アドレス毎のステータス情報と、通信アドレスのデバイスが異常であった場合の異常原因を格納する領域を用意している。そして、デバイス30は、自己の状態、つまり正常/異常情報とその異常原因を上記した割り付けられたコントローラメモリ12内の所定エリアに格納する。
【0103】
上記の前提において、図3にも示したコントロ−ラシステムソフト14内に設けられたデバイス監視処理部14cが、以下の処理を実行する。すなわち、図23のフローチャートに示すように、コントローラ10が実施する通常のスキャン処理に同期して、コントローラメモリ12に格納されたデバイスステータス情報を監視する。すなわち、コントローラ10は、例えば、INリフレッシュ→命令実行→OUTリフレッシュ→通信処理を1サイクルとして繰り返し実行するため、その1サイクルごとに(図示の例では、通信処理を実行後)1度、デバイスの監視処理を行う。
【0104】
このデバイスの監視処理は、具体的には、デバイスステータス情報を参照して、異常が発生している通信アドレスがないかを判定する。全ての通信アドレスのステータスに異常がない場合には、そのサイクルにおける処理を終了する。また、異常があった場合には、その異常が発生した通信アドレスについて割り付けられている異常原因情報を参照する。
【0105】
次いで、オブジェクトデータベース13を参照して、異常が発生している通信アドレスがどの制御オブジェクトに該当するのかを検索する。そして、コントローラ10(デバイス監視処理部14c)は、「異常が発生した制御オブジェクト名,異常が発生したデバイス名,異常が発生したデバイスの通信アドレス並びに異常原因」を、外部周辺機器、或いはコントローラのメモリにロギングする。
【0106】
なお、異常原因の登録の仕方としては異常コードとしてもよいし、メッセージとしてもよい。前者の場合には、記憶する際のメモリ容量が小さく済むが、ユーザが異常コードをもとに、帳票を参照して異常原因を調べる作業が発生するので煩雑となる。一方、後者の場合には、メッセージである場合は、オブジェクトデータベースのサイズが大きくなるというデメリットがある反面、異常原因を人間が直接わかる文字情報で表現しているため、その文字情報を表示したり、その文字情報を音声情報に変換してユーザに伝えるというようにユーザが理解しやすいように伝えることが可能となる。
【0107】
何れの場合も、故障したデバイスがどの制御オブジェクトに該当するか等の情報を知ることができるので、異常に対する保守作業の効率化が図れる。さらに、異常原因についても、オブジェクトメッセージに異常原因,保守情報を格納しておくことにより、保守作業がさらに向上する。さらに、オブジェクトデータベースに異常原因,保守情報などを記述しておくと、係る情報はコントローラ10側に記憶されるので、保守のためにコントローラに接続するパソコン側にメッセージデータベースがなくても済むので、どのパソコンからコントローラにアクセスしても異常原因等を把握することができる。
【0108】
図24は、本発明の第4の実施の形態を示している。同図に示すように、コントローラ10並びデバイス30がDeviceNet(登録商標)等のネットワークで接続されている。そして、本形態では、HMI等の情報処理機器40もDeviceNet(登録商標)に接続されている。但し、この情報処理機器40はDeviceNetの1つのノードとして加入せずに、DeviceNet上を流れるメッセージを参照する機能を持つ(プロトコルアナライザと同じ)。
【0109】
このようにすると、コントローラ10とデバイス30間の通信サイクルに影響を与えないで、どのノード(通信アドレス)がどういうデータを通信しているかをこの情報機器が把握することが可能となる。
【0110】
この情報処理機40内にも、第1の実施の形態で説明したものと同様の手順により、デバイスA,B,Cに対するオブジェクトを定義し(A,B,C)、情報処理機器に制御プログラムとオブジェクトデータベースをダウンロードし、制御オブジェクトのI/Oコンフィグレーションを行う。そして、実際のシステム稼動時は、コントローラ10は、デバイスA,B,Cの制御を行う。このとき、情報処理機器40の中の制御プログラム(ここでは、情報処理目的で使われる)は、DeviceNet上を流れるメッセージを参照することにより、情報を収集し、収集したデバイスA,B,Cの情報をもとに演算処理をする。そして、その結果をコントローラ10にフィードバックする。
【0111】
このようにすることにより、コントローラ10が制御を行っている場合は、コントローラ10の制御性能に影響を与えない形で、コントローラ10が管理するデバイス30の状態を情報処理機器40からオブジェクト名という論理名でモニタすることが可能となる。そして、コントローラ10が制御を行っていない場合は、情報処理機器40からデバイス30に対してオブジェクトという論理名でデバイスにデータを書き込むことも可能となる。
【0112】
このとき、デバイスのノード番号が制御プログラムの開発者の都合で変更された場合でも情報処理機器の制御オブジェクトにアクセスするプログラムに影響を与えない。また、すでにコントロールシステムが構築されていてコントローラの制御プログラムがオブジェクト化されていないような場合でも、あとから情報処理機器40をネットワークに接続することにより、コントローラ10が制御するデバイス30をオブジェクト名と論理名でアクセスすることが可能となる。従って、情報処理を記述する開発者は、オブジェクトベースの情報処理プログラミングが容易となり、開発生産性が向上する。
【0113】
さらにまた、コントローラ10は、制御(性能も含め)に適した言語、プログラミングスタイル、デバイスへのアクセスの方法で開発を行い、情報処理は、上記コントローラがアクセスするデバイスに対してオブジェクト名という情報処理に適した論理名で情報プログラムが開発可能となるし、お互いの制御プログラム開発、情報プログラム開発が人,時期ともに分離可能となる。
【0114】
上記したように、デバイスとそれにアクセスする制御プログラムをオブジェクトデータベースという手段を用いて、1つの制御オブジェクトとして扱えるようにした。従って、一度開発した制御オブジェクト、すなわち「ハード+ソフト一体」で再利用することが可能となる。これにより、生産システムにおいて、負荷変動、多品種少量生産、割込み的な生産要求にともなう段取り替えに要する時間が短縮される。
【0115】
制御オブジェクト単位で、コントローラへのメモリ割付を管理するため、再利用の場合でも、他の制御オブジェクトへの影響がなく、かつ再利用する制御オブジェクトを利用するプログラムへの影響がない。制御プログラムとオブジェクトデータベースを一体で管理するため、制御オブジェクトの流用が容易となる。
【0116】
また、再利用だけでなく、新たな制御オブジェクトを追加する場合でも他の制御オブジェクトに影響を与えないため、設備変更を伴う生産システムの改善が容易となる。
【0117】
複数のデバイスをグルーピングして制御オブジェクトとして扱ったり、複数の制御オブジェクトを1つの制御オブジェクトとして扱えるため、様々な粒度の制御オブジェクトをユーザが定義可能である。これにより、様々な再利用要求に対応することが可能となる。
【0118】
デバイスの設定パラメータを制御オブジェクトの属性として扱い、設定パラメータをデバイスにダウンロード,アップロードをする仕組みを持たせるようにした場合には、デバイスの故障時の保守作業に要する時間が短縮される。
【0119】
デバイスが故障した場合にそのデバイスに対する制御オブジェクト名を特定する手段を持つことにより、どういう制御単位で故障が発生したかという意味付けが可能となり、保守作業が容易となる。
【0120】
デバイスに対して通信アドレスでなく、論理名でアクセスするため、通信アドレスの変更があった場合でも、制御オブジェクトを呼出しているプログラムへの影響がない。
【0121】
デバイスへのアクセスは、直接コントローラのメモリを参照していないため、制御オブジェクトのデバイスが変更された場合でもオブジェクトのインタフェース、及びオブジェクトのサービスの処理に影響を与えない。従って、コントロールシステムのインクリメンタル開発、及びデバイスの変更に柔軟に対応することが可能となる。
【0122】
【発明の効果】
以上のように、この発明では、制御プログラムとデバイスを関連付けた関連情報(オブジェクトデータベース)を用い、制御プログラム等がデバイスにアクセスするに際し、関連情報を参照することによりアクセス先を特定し、実行するようにしたため、制御プログラムとデバイスを一体でオブジェクト(制御オブジェクト)として扱うことができ、再利用が容易かつ確実に行え、再利用時に関係の無い制御オブジェクトへ影響を与えることが無くなる。
【図面の簡単な説明】
【図1】従来例を示す図である。
【図2】従来例を示す図である。
【図3】本発明が適用されるシステム全体の一例を示す図である。
【図4】ツールの内部構造を示す図である。
【図5】ツールで行われる初期設定の機能を説明するフローチャートである。
【図6】初期設定を説明する処理画面の一例を示す図である。
【図7】初期設定を説明する処理画面の一例を示す図である。
【図8】オブジェクトデータベースの一例を示す図である。
【図9】オブジェクトデータベースの一例を示す図である。
【図10】オブジェクトデータベースの一例を示す図である。
【図11】制御プログラムの一例を示す図である。
【図12】オブジェクトデータベースの一例を示す図である。
【図13】クラス作成処理部27の機能を説明する図である。
【図14】制御オブジェクト割付処理部の機能を説明する図である。
【図15】制御オブジェクト割付処理部により生成されたオブジェクトデータベースの一例を示す図である。
【図16】通信処理部の機能を説明する図である。
【図17】再利用時の制御オブジェクト割付処理部の機能を説明する図である。
【図18】再利用時の通信処理部の機能を説明する図である。
【図19】本発明の第2の実施の形態を示す図である。
【図20】システムソフトの機能を説明するフローチャートである。
【図21】システムソフトの機能を説明するフローチャートである。
【図22】本発明の第3の実施の形態を示す図である。
【図23】作用を説明するフローチャートである。
【図24】本発明の第4の実施の形態を示す図である。
【符号の説明】
10 コントローラ
11 制御プログラム
12 コントローラメモリ
13 オブジェクトデータベース
14 コントローラシステムソフト
14a 制御オブジェクト割付処理部
14b 通信処理部
14c デバイス監視処理部
20 ツール
21 オブジェクト定義処理部
22 オブジェクトデータベース
23 制御プログラム作成部
24 オブジェクトインタフェース定義処理部
25 制御オブジェクト管理部
26 データベース
27 クラス作成処理部
28,28′ 制御プログラム
30 デバイス
40 情報処理機器

Claims (7)

  1. 制御対象のデバイスを接続し、接続されたデバイスの動作を管理するための制御プログラムを実行し、メモリを利用して前記デバイスに対してデータを読み書きするコントローラであって、
    前記制御プログラムは、デバイス名を定義してプログラムされていて、
    前記制御プログラムと、対象となるデバイスのデバイス名とそのデバイスに要するメモリ割付け領域のアドレス情報とを含むデバイス情報と、を関連付けた関連情報を記憶する関連情報記憶手段と、
    前記制御プログラムの実行にあたって、プログラム中に定義されたデバイス名のデバイスにアクセスするために、前記関連情報記憶手段に格納された関連情報を参照することにより、そのデバイスに対応するメモリの割付け領域を前記メモリ上に確保する割付処理部と、を有し、
    制御プログラムを実行することと、割付処理部にて確保されたメモリの割付け領域を利用してデバイスに対してデータを読み書きすることとを行うことを特徴とするコントローラ。
  2. 前記関連情報記憶手段は、前記デバイスとINサイズとOUTサイズのアドレス情報を前記デバイス情報として含み、
    前記割付処理部は、前記関連情報記憶手段に格納された関連情報を参照することにより、そのデバイスのINデータおよびOUTデータに対応するメモリ割付けを行い、その割付結果を前記関連情報として登録するものである、
    ことを特徴とする請求項1に記載のコントローラ。
  3. 制御対象の複数のデバイスを、コントローラに直接またはネットワークを介して接続し、
    前記関連情報記憶手段の関連情報のデバイス情報は、デバイス名と通信アドレスとを含み、
    前記関連情報記憶手段からデバイス名と通信アドレスとの情報を取得し、その取得した通信アドレスに接続されたデバイスに対して前記取得したデバイス名を含むデバイス情報を問い合わせし、そのデバイスから返信されてきた情報が正しいかどうかを判断することで、アクセス先を決定するとともに前記関連情報記憶手段にそのアクセス先を格納する通信処理手段を有することを特徴とする請求項1または2に記載のコントローラ。
  4. 前記関連情報記憶手段の前記関連情報は、対象の制御プログラムとデバイスとの対の単位で、制御オブジェクト名を付与したものであって、
    その関連情報は、制御オブジェクト名と、対象の制御プログラムと、対象のデバイスのアドレス情報と、を関連付けた情報である
    ことを特徴とする請求項1〜3のいずれか1項に記載のコントローラ。
  5. 前記関連情報記憶手段に格納された前記関連情報のデバイス情報は、通信アドレスを含み、
    動作終了の際に、制御プログラムの実行を停止し、前記関連情報記憶手段に格納された前記通信アドレスのデバイスから設定パラメータを取得するとともに、それを前記関連情報記憶手段に記憶保持し、
    動作開始の際に、前記関連情報記憶手段に記憶保持した設定パラメータを、対応する通信アドレスのデバイスに対してダウンロードする機能を備えたことを特徴とする請求項1〜4のいずれか1項に記載のコントローラ。
  6. 前記メモリに、通信アドレスごとに前記デバイスが異常か正常かを識別するためのステータス情報と異常原因情報とを格納する領域を設け、
    前記メモリの領域を監視し、異常があった場合には、異常が発生した通信アドレスに対応する制御オブジェクト名、デバイス名、通信アドレス、異常原因情報をロギングするとともに、前記関連情報に基づいて異常のあったデバイス用の保守情報を出力するデバイス監視処理手段を有することを特徴とする請求項4に記載のコントローラ。
  7. 請求項1〜6のいずれか1項に記載のコントローラと、コントローラがデバイスを制御するのに必要な関連情報を作成して前記コントローラに向けて前記関連情報をダウンロードするツールと、を備えたシステムであって、
    前記ツールは、
    コントローラで実行される制御プログラムと制御対象のデバイスとの対を制御オブジェクトとして管理し、
    制御オブジェクトの制御プログラムが対象とするデバイスのデバイス名とデバイス情報とを定義するとともに、制御プログラムを記述し、その制御プログラムとデバイス情報とを前記コントローラにダウンロードするものであり、
    前記コントローラは、取得した制御プログラムとデバイス情報とに基づいて、前記関連情報を生成し、前記関連情報記憶手段に格納するようにしたことを特徴とするシステム。
JP2001068288A 2001-03-12 2001-03-12 コントローラ及びシステム Expired - Lifetime JP3729251B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2001068288A JP3729251B2 (ja) 2001-03-12 2001-03-12 コントローラ及びシステム
US10/091,113 US20040139270A1 (en) 2001-03-12 2002-02-28 Controllers, tools and systems comprising same
DE10210280A DE10210280B4 (de) 2001-03-12 2002-03-08 Steuerungen, Tools und diese umfassende Systeme
US11/078,995 US7117040B2 (en) 2001-03-12 2005-03-10 Tool attachable to controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001068288A JP3729251B2 (ja) 2001-03-12 2001-03-12 コントローラ及びシステム

Publications (2)

Publication Number Publication Date
JP2002268707A JP2002268707A (ja) 2002-09-20
JP3729251B2 true JP3729251B2 (ja) 2005-12-21

Family

ID=18926501

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001068288A Expired - Lifetime JP3729251B2 (ja) 2001-03-12 2001-03-12 コントローラ及びシステム

Country Status (3)

Country Link
US (2) US20040139270A1 (ja)
JP (1) JP3729251B2 (ja)
DE (1) DE10210280B4 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028153B1 (en) * 2002-06-19 2006-04-11 Veritas Operating Corporation Backup and retrieval of data storage using catalog data
DE10312756A1 (de) * 2003-03-21 2004-09-30 Focke & Co.(Gmbh & Co. Kg) Verfahren zum Betrieb einer Steuerung an einem Kommunikationsmedium
DE20314410U1 (de) * 2003-09-15 2004-09-30 Kuka Schweissanlagen Gmbh Konfigurierbare industrielle Fertigungsanlage
DE10352172A1 (de) * 2003-11-05 2005-06-09 Robert Bosch Gmbh Verfahren und Vorrichtung zur Anpassung von Funktionen zur Steuerung von Betriebsabläufen
DE102004010203B4 (de) * 2004-03-02 2007-05-10 Siemens Ag Verfahren, Vorrichtung und Computerprogramm zur Erstellung einer Projektierung für ein Bediengerät einer Automatisierungskomponente
JP4774683B2 (ja) * 2004-05-31 2011-09-14 富士電機株式会社 サーボ制御装置の支援装置
EP1679630A3 (en) * 2004-12-09 2006-08-30 Sysmex Corporation Method for setting operating condition of measuring apparatus, method for managing measurement result of measuring apparatus, measuring system, data processing apparatus for measuring apparatus, and storage medium
JP4773873B2 (ja) * 2006-04-28 2011-09-14 株式会社キーエンス 制御プログラム作成装置及び編集プログラム
EP2021886A1 (en) * 2006-05-15 2009-02-11 Timothy Sexton Process control method
JP4666172B2 (ja) * 2006-09-04 2011-04-06 オムロン株式会社 制御システム設定管理システム
DE102006046643A1 (de) * 2006-09-29 2008-04-03 Phoenix Contact Gmbh & Co. Kg Speicherprogrammierbare Steuereinrichtung mit integriertem Datenbanktreiber
CN101730867B (zh) * 2007-06-27 2012-08-08 皇家飞利浦电子股份有限公司 用于提供独立于设备的控制和修改的系统和方法
US9164501B2 (en) 2009-10-05 2015-10-20 Fisher-Rosemount Systems, Inc. Methods and apparatus to manage data uploading in a process control environment
JP2011186857A (ja) * 2010-03-09 2011-09-22 Glory Ltd 上位装置およびデバイス制御方法
JP5469510B2 (ja) * 2010-03-31 2014-04-16 株式会社キーエンス プログラマブルコントローラ、設定値変更システム、演算表示装置及び設定値変更ユニット
JP2011215814A (ja) * 2010-03-31 2011-10-27 Keyence Corp プログラマブルコントローラ、設定値バックアップ・リストアシステム、及び設定値バックアップ・リストアユニット
JP4941574B2 (ja) * 2010-04-14 2012-05-30 横河電機株式会社 レジスタコンフィギュレータおよびレジスタコンフィギュレーション方法
JP5796994B2 (ja) * 2010-06-08 2015-10-21 株式会社日立国際電気 処理システム、基板処理装置、処理システムのデータ処理方法、収集ユニット及び記録媒体並びに半導体装置の製造方法
JP6051545B2 (ja) * 2011-03-15 2016-12-27 オムロン株式会社 Plcシステム、状態表示方法、plc、およびプログラマブル表示器
JP5992777B2 (ja) * 2012-09-04 2016-09-14 株式会社キーエンス プログラマブルコントローラ、プログラム作成支援装置及びプログラム
DE112012007014T5 (de) 2012-11-22 2015-07-09 Mitsubishi Electric Corporation Systemkonstruktions-Unterstützungsapparatur
KR101907199B1 (ko) * 2016-11-11 2018-10-12 (주)위너스엔지니어링 계측제어 설비에서의 프로그램 구동 장치 및 계측제어 설비에서의 프로그램 구동 방법
US10826715B2 (en) * 2016-12-02 2020-11-03 Datalogic Ip Tech S.R.L. Simple device replacement in a Profinet IO conformance class A (CCA) network through ubiquitous computing paradigm and combining a token ring approach with a ubicomp paradigm to prevent real-time performance drop
KR102223336B1 (ko) * 2018-12-28 2021-03-04 경남정보대학교 산학협력단 스마트 팩토리의 구축 및 유지보수를 위한 플랫폼
JP7318264B2 (ja) * 2019-03-28 2023-08-01 オムロン株式会社 コントローラシステム
DE102022122909B3 (de) 2022-09-09 2023-09-21 Multivac Sepp Haggenmüller Se & Co. Kg Lebensmittelverarbeitungsmaschine und Verfahren zum Einschränken von durch einen Bediener an einer Lebensmittelverarbeitungsmaschine aktivierbaren Prozessen

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4910706A (en) * 1972-09-11 1990-03-20 Hyatt Gilbert P Analog memory for storing digital information
US4862067A (en) * 1987-06-24 1989-08-29 Schlumberger Technologies, Inc. Method and apparatus for in-circuit testing of electronic devices
US5532929A (en) * 1992-12-16 1996-07-02 Toyota Jidosha Kabushiki Kaisha Apparatus for controlling vehicle driving power
JPH0749651A (ja) * 1993-08-09 1995-02-21 Toshiba Corp 制御プログラムの作成支援装置
US5589892A (en) * 1993-09-09 1996-12-31 Knee; Robert A. Electronic television program guide schedule system and method with data feed access
DE69434161T2 (de) * 1993-12-01 2005-11-24 Canon K.K. Vorrichtung und Verfahren zum Drucken vertraulicher Daten
US6769128B1 (en) * 1995-06-07 2004-07-27 United Video Properties, Inc. Electronic television program guide schedule system and method with data feed access
US6721941B1 (en) * 1996-08-27 2004-04-13 Compuware Corporation Collection of timing and coverage data through a debugging interface
EP0827302A2 (de) * 1996-08-30 1998-03-04 Siemens Aktiengesellschaft Verfahren zur Isolierung von fehlerhaften, austauschbaren Einheiten von beliebig strukturierten Kommunikationsanordnungen
IL129767A0 (en) * 1996-12-12 2000-02-29 Prolume Ltd Apparatus and method for detecting and identifying infectious agents
US6385496B1 (en) * 1999-03-12 2002-05-07 Fisher-Rosemount Systems, Inc. Indirect referencing in process control routines
US6606624B1 (en) * 1999-08-13 2003-08-12 The Regents Of The University Of California Apparatus and method for recommending to an individual selective information contained within a computer network
US6591385B1 (en) * 2000-09-11 2003-07-08 Agilent Technologies, Inc. Method and apparatus for inserting programmable latency between address and data information in a memory tester
JP3932817B2 (ja) * 2001-03-14 2007-06-20 オムロン株式会社 制御システム

Also Published As

Publication number Publication date
US20050157543A1 (en) 2005-07-21
US7117040B2 (en) 2006-10-03
DE10210280A1 (de) 2002-10-17
JP2002268707A (ja) 2002-09-20
US20040139270A1 (en) 2004-07-15
DE10210280B4 (de) 2012-11-08

Similar Documents

Publication Publication Date Title
JP3729251B2 (ja) コントローラ及びシステム
US7275236B1 (en) Method for programming a multiple device control system using object sharing
US6098116A (en) Process control system including a method and apparatus for automatically sensing the connection of devices to a network
US7747718B2 (en) Control system apparatus, method for setting control system and setting program
US8185871B2 (en) System for configuring a process control environment
JP3932817B2 (ja) 制御システム
JP4197652B2 (ja) プラントの集中監視制御装置および方法
JP2014116027A5 (ja)
JPH11231927A (ja) 監視制御システム
JP6737298B2 (ja) コントローラ、制御方法、および制御プログラム
CN108459569B (zh) 工业过程自动化系统的工程设计系统运行方法和控制程序
JP2002268730A (ja) フィールドデバイスのメンテナンス装置
WO2019176486A1 (ja) 制御システム、コントローラ、および制御方法
US20080281844A1 (en) Interactive Data Access Method and Interactive Data Access System
JP3827051B2 (ja) ツール装置及びネットワークシステム構築方法並びに記録媒体
JP2009284119A (ja) フィールドバス通信システム及びデータ管理装置
JP2005259079A (ja) ツール
JP6954191B2 (ja) 制御システム、開発支援装置、および開発支援プログラム
JP4186383B2 (ja) プログラマブルコントローラシステム
JP6529680B1 (ja) データ管理システム、データ管理方法およびデータ管理プログラム
JP2003271209A (ja) 制御装置並びに拡張機器及びプログラミングツール
JP4666172B2 (ja) 制御システム設定管理システム
JP2007026122A (ja) プラント監視制御システム
JP2001325010A (ja) プログラマブルコントローラシステム
CN103580974A (zh) 在控制器的设备中存储规定地址的方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050707

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050927

R150 Certificate of patent or registration of utility model

Ref document number: 3729251

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20091014

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101014

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101014

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111014

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111014

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121014

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121014

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131014

Year of fee payment: 8

EXPY Cancellation because of completion of term