JP2007249937A - 収集データのモニタ方法及び装置 - Google Patents
収集データのモニタ方法及び装置 Download PDFInfo
- Publication number
- JP2007249937A JP2007249937A JP2006355617A JP2006355617A JP2007249937A JP 2007249937 A JP2007249937 A JP 2007249937A JP 2006355617 A JP2006355617 A JP 2006355617A JP 2006355617 A JP2006355617 A JP 2006355617A JP 2007249937 A JP2007249937 A JP 2007249937A
- Authority
- JP
- Japan
- Prior art keywords
- variable
- data
- virtual
- key
- display area
- 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.)
- Pending
Links
Images
Landscapes
- Programmable Controllers (AREA)
Abstract
【課題】PLCが稼働状態に移行したのちにあっても、所望の変数を自在に生成することを可能とした収集データのモニタ方法及び装置を提供する。
【解決手段】1もしくは2以上の実変数を使用した演算式により定義された仮想変数を設定する第1のステップと、PLC側のデータ収集装置から実変数データ列を読み込む第2のステップと、設定された仮想変数を定義する演算式にPLC側から読み込まれた実変数データ列を代入して仮想変数データ列を生成する第3のステップと、実変数データ列と仮想変数データ列とを内部テーブルに格納する第4のステップと、内部テーブルに格納された各実変数データ列とモニタ装置側で設定した仮想変数データ列とに基づいてモニタ装置側の画像表示器の画面上に対応する波形表示を行う第5のステップと、を具備する。
【選択図】図6
【解決手段】1もしくは2以上の実変数を使用した演算式により定義された仮想変数を設定する第1のステップと、PLC側のデータ収集装置から実変数データ列を読み込む第2のステップと、設定された仮想変数を定義する演算式にPLC側から読み込まれた実変数データ列を代入して仮想変数データ列を生成する第3のステップと、実変数データ列と仮想変数データ列とを内部テーブルに格納する第4のステップと、内部テーブルに格納された各実変数データ列とモニタ装置側で設定した仮想変数データ列とに基づいてモニタ装置側の画像表示器の画面上に対応する波形表示を行う第5のステップと、を具備する。
【選択図】図6
Description
この発明は、プログラマブル・コントローラにバス接続されたデータ収集ユニットがプログラマブル・コントローラメモリから複数の制御データを収集し、その収集データを画像表示器などのモニタ装置へ出力し、モニタ装置がその制御データを時系列的に表示し、モニタするための方法及び装置に関する。
プログラマブル・コントローラ(PLC)は、制御を司るCPUユニット、外部とデータ通信する通信ユニット、センサなどを接続するI/Oユニット等をバス接続して構成される。CPUユニットはマイクロプロセッサと、制御内容に応じて予め作成されたユーザプログラムを記憶したユーザメモリとを内蔵している。所定のシステムプログラムを実行することによって、I/Oリフレッシュ処理、ユーザプログラム実行処理、周辺サービス処理をサイクリックに実行する。この一巡実行サイクルをサイクルタイムと一般に称する。I/Oリフレッシュ処理とは、PLCのCPUユニットがI/Oユニットとの間でバス通信を介して制御データであるINデータ、OUTデータを交換する処理である。CPUユニットは制御データであるINデータ、OUTデータを記憶するメモリ(例えば、入出力メモリ、データメモリ等々)を内蔵している。ところでPLCに接続可能なデータ収集ユニットが従来から知られている。このデータ収集ユニットは、CPUユニットのメモリに記憶された各種の制御データ(前述のINデータ、OUTデータを含む。具体的には例えば入出力信号のオンオフデータ)を周期的にかつ自動的に収集する機能を備えている。データ収集ユニットは、CPUユニットから指定周期でデータを収集し続け、時系列的な一連の制御データの変化を記憶する。なおデータ収集ユニットを「SPU」と略称する場合もある。データ収集ユニットはCPUユニットとバス接続している(特許文献1参照)。また、この種のデータ収集装置が収集した一連の制御データを表示器等のモニタ装置にてモニタすることが従来から知られている(特許文献2参照)。一連の制御データを記憶することで、例えば時系列的に変化する入出力信号のオンオフ信号(時系列ビットデータ列)を後述するモニタ装置で把握できる。
この種のモニタ装置は、データ収集ユニットがCPUユニットから収集した一連の制御データを受け取り、それらのデータのそれぞれの時系列的な変化をユーザが認識できるようにパルス列波形にし、表示画面上に複数行にわたって並べて表示させる機能を持つのが通例である。
ところで、この種のデータ収集ユニットにとって収集可能であるためには、PLCにおいて制御データや変数として扱われることが必要である。さらにCPUユニットに内蔵されるI/Oメモリ、データメモリに割り付けられている必要、つまりメモリの格納エリアが一義に決まっていることが必要である。したがって、例えば変数どうしの計算により求められるような特殊なデータをデータ収集ユニットにて収集したい場合には、変数を新しく設定し、PLCが変数どうしの計算を演算実行するようにユーザプログラム(例えばラダー図言語で作成されるプログラム)を追加修正するとともに、その新しい変数をI/Oメモリまたはデータメモリ内に割付ることが必要である。データ収集ユニット側でも、PLCのCPUユニットのメモリの割付エリアからその新たな変数を周期的に収集するように設定し、モニタ装置がそのデータを読み込んで表示するように設定することが必要である。
例えば、一般に、PLCのデータメモリ内には、生産数や不良数と言った変数が定義されている場合において、それとは別に、良品数や良品率と言った情報をデータ収集ユニットやモニタ装置にて取得しようとした場合には、良品数や良品率に対応する変数を新たに定義し、PLCのユーザプログラムにおいて固有の命令語を使用してそれらの変数に相当する演算式を追加しなければならない。具体的な演算式を書くと「良品数=生産数−不良数」、「良品率=(生産数−不良数)÷生産数」となるが、これをユーザプログラムに書き加えなければならない。
特開2005−128721
特開2003−21650
しかしながら、既に、PLCが正常に稼働する運転状態に移行した後、変数どうしの計算を伴なうような新たな情報をモニタしたくなったことにより、新たに、ユーザプログラムを追加修正等をすることは一般には躊躇されることが多い。その理由は、新たな演算が加わることによりPLCのサイクルタイムが増加する虞や、予期せぬ誤動作が起きる虞が懸念されるからである。その結果、一旦、PLCが稼働状態になった後にあっては、モニタ装置側に新たな情報を表示させてモニタすることについて制約を受けるのが現状である。
この発明は、上述の問題点に着目してなされたものであり、その目的とするところは、PLCが稼働状態に移行した後にあっても、PLCのユーザプログラムを追加変更等をすることなく、変数どうしの計算を伴なうような新たな情報をモニタすることを可能とした収集データに基づくモニタ方法及び装置を提供することにある。
この発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
この発明の収集データのモニタ方法及び装置は、データ収集ユニットがプログラマブル・コントローラのメモリから収集した複数の変数の各収集時点の値のそれぞれに相当する一連のデータ列をモニタ装置側の画像表示器を介してモニタするための方法(又は装置)であって、1もしくは2以上の変数を使用した演算式により定義された仮想変数を設定登録する第1のステップ(又は手段)と、プログラマブル・コントローラ側のデータ収集ユニットから変数データを読み込む第2のステップ(又は手段)と、設定された仮想変数を定義する演算式にデータ収集ユニットから読み込んだ変数データを代入して仮想変数データを生成する第3のステップ(又は手段)と、読み込んだ変数データと生成した仮想変数データとを内部テーブルに格納する第4のステップ(又は手段)と、内部テーブルに格納した各変数データと仮想変数データとのうち任意に設定したデータの時系列変化を表示を行う第5のステップ(又は手段)と、を具備することを特徴とする。
このような構成によれば、内部テーブルに格納された各変数データとモニタ装置側で設定した仮想変数データとに基づいてモニタ装置側の画像表示器の画面上に対応する波形表示を行うため、新たな変数を定義するについても、PLC側でラダー図言語等々の固有言語を使用してメモリ割付を追加乃至変更することは不要であるから、ユーザプログラムの追加によるサイクルタイムの遅れ等が発生することを気にすることなくもモニタ対象データを拡張することができる。
このとき、第1のステップが、仮想変数の名称表示領域と、仮想変数のデータ型表示領域と、仮想変数を定義するための演算式表示領域とを有する入力データ表示領域と、仮想変数の設定のために選択可能な変数一覧をメニュー表示する変数一覧表示領域と、仮想変数を定義する際に使用する数値キー、論理値キー、数値演算子キー、論理演算子キー、仮想変数を入力確定するための確定キーの各表示領域を有する操作キー表示領域と、を有する仮想変数設定画面をモニタ装置側の画像表示器の画面上に表示させるステップと、変数一覧表示領域におけるユーザによる変数選択操作と、操作キー表示領域における数値キー、論理値キー、数値演算子キー、論理演算子キー、仮想変数を入力確定するための確定キーの操作とに基づいて、ユーザ操作に対応する仮想変数を生成するステップと、生成された仮想変数に相当する演算式を登録するステップと、を具備するものであれば、新たな仮想変数を定義するについて、モニタ装置側の操作性を良好なものとすることができる。
本発明は、請求項1又は2に記載の方法をコンピュータに実行させるためのコンピュータプログラムとしても実現することができる。
本発明によれば、内部テーブルに格納された各変数データとモニタ装置側で設定した仮想変数データとに基づいてモニタ装置側の画像表示器の画面上に対応する波形表示を行うため、新たな変数を定義するについても、PLC側でラダー図言語等々の固有言語を使用してメモリ割付を追加乃至変更することは不要であるから、ユーザプログラムの追加によるサイクルタイムの遅れ等が発生することを気にすることなくもモニタ対象データを拡張することができる。
以下に、本発明に係る収集データのモニタ方法及び装置の好適な実施の一形態を添付図面を参照しつつ詳細に説明する。
データ収集ユニットを含むPLCシステムのハードウェア構成図の一例が図1に示されている。同図に示されるように、このPLCシステムは、第1のPLC1と、第2のPLC5と、パーソナル・コンピュータ(以下、PCと言う)2とを中心として構成されている。第1のPLC1とPC2とは通信線9aを介して結ばれており、第1のPLC1と第2のPLC5とは通信線9bを介して結ばれている。
第1のPLC1はビルディング・ブロック型に構成されており、この例では、制御を司るCPUユニット11と、外部とデータ通信する通信ユニット12と、入力機器または出力機器を接続するI/Oユニット13と、データ収集ユニット(SPU)14とを含んでいて、それらのユニットがバックプレインボードを介してバス接続されている。
CPUユニット11は、当業者にはよく知られているように、全般の処理を実行するマイクロプロセッサと、ユーザプログラムを記憶するユーザプログラムメモリと、いわゆるI/Oデータを記憶するI/Oメモリまたはデータメモリ(以下、I/Oメモリ)とを内蔵している。そして、CPUユニット11の内蔵マイクロプロセッサは、所定のシステムプログラムを実行することによって、I/Oリフレッシュ処理と、ユーザプログラム実行処理と、周辺サービス処理とをサイクリックに実行する。このとき一巡実行サイクルをサイクルタイムと一般に称する。
I/Oユニット13は複数の入力機器、出力機器が接続されていて(図示せず)、各機器に対応するデータを記憶するメモリを備えている。そして定期的に外部センサ4から入力データ(オンオフデータであるビット変数データ、数値データであるアナログ変数データを含む)を取り込んで記憶する。また、CPUユニット11のIOリフレッシュ処理により送られて来た出力データ(ユーザプログラム実行結果であるデータを含む)を外部のアクチュエータ3などに送出する。
CPUユニット11におけるI/Oリフレッシュ処理において、マイクロプロセッサがI/Oユニット13からバスを介して入力データをI/Oメモリの該当エリアに書き込む。また、マイクロプロセッサがI/Oメモリの該当エリアの出力データを、バスを介してI/Oユニット13へ送る。CPUユニット11におけるユーザプログラム実行処理において、マイクロプロセッサがユーザプログラムメモリに記憶されたユーザプログラムのユーザ命令を順に実行する。つまり、I/Oメモリに記憶した入力データの内容を参照してユーザ命令に従って演算実行し、その実行結果に基づいてメモリの出力データの内容を書き換える。
CPUユニット11における周辺サービス処理において、通信ユニット12を介して例えば第2のPLC5と通信を行うことにより、第2のPLC5との間でI/Oデータの交換などを行う。
データ収集ユニット14はプロセッサを内蔵しており、プロセッサが上述したCPUユニット11におけるI/Oリフレッシュ処理に際して、CPUユニット1からバスを介してI/Oメモリの全てのデータを読み出すと共に、これをデータ収集ユニット(SPU)14内のメモリに蓄積保存する。なお、全てのデータを読み出す代わりに、データ収集ユニット14に対して読み出す対象を予め設定しておくことにより、指定されたデータのみをCPUユニット1のメモリから読み出すようにしてもよい。なお、データ収集するのを、CPUユニット1のI/Oリフレッシュ処理に際して行うことに代えて、例えば周辺サービス処理に際して行うことでもよいし、ユーザプログラム実行処理の前あるいは後に別途の処理期間を設けて行うことでもよい。要するに、CPUユニット1における一巡実行サイクルごとに1回データ収集するような構成であればよい。さらに、データ収集周期をCPUユニット1における一巡実行サイクルに同期せずに、CPUユニット1における複数回の実行サイクルごとにデータ収集を1回するように収集周期を長くしてもよい。
こうしてCPUユニットの制御データはデータ収集ユニット14によって収集され、データ収集ユニット14のメモリ内に蓄積保存される。この収集データは、CPUユニットの制御データであり、ビット変数、アナログ変数を含むし、あるいは入力データ、出力データを含む。データ収集ユニット14は、CPUユニット側の制御データや変数のメモリ割付情報を持っている。データ収集ユニット側に収集対象となるデータがCPUユニットのどのメモリエリアに記憶されているかという情報を予め設定しておくことにより、データ収集ユニット14は収集データをCPUユニットから周期的に収集できるようになる。なおデータ収集ユニット14にメモリ割付情報に加えてシンボル情報を登録しておくのが好ましい。シンボル情報とは、ユーザがある制御データや変数を認識あるいは特定するのを補助する情報であり、例えば「センサ4からの入力信号」である旨や「アクチュエータ3への出力信号」である旨の情報である。前述の「生産数」「不良数」もシンボル情報である。このシンボル情報は文字列で表わされる情報であり、タグ情報またはコメント(図9のコメント133と同視できる)と呼ばれる場合もある。そして収集データは、適当なタイミングでPC2とデータ収集ユニット14とが通信することにより、データ収集ユニット14から読み出されて、PC2へと送り込まれる。
データ収集ユニットが収集するデータのシンボル情報やCPUユニットのメモリ割付情報についてはPC2にも予め登録しておく(なお、シンボル情報は図9のコメント133の表示に用いられ、メモリ割付情報は図9のアドレス132の表示に用いられる)。PC2は適当なタイミングでデータ収集ユニット14と通信を行うことにより、データ収集ユニット14から収集データを取得する。なお、シンボル情報とメモリ割付情報とについては、予め登録することに代えて、PC2がデータ収集ユニット14と通信することにより取得するようにしてもよい。こうして取得された取得データは、PC2のメモリ内に設けた変数テーブルへと記憶される。
そして、PC2は、それらの取得データに基づき、画像表示器の画面上に各制御データに対応させて、時系列的な変化をパルス列波形やアナログ波形で表示する(図9にて詳述する)。こうすることによって、ユーザは画像表示器の画面を介して、PLC1の取り扱う制御データや各種アナログデータを視覚的にモニタすることができる。なお第1のPLC1(CPUユニット11とも言ってもよい)が周辺サービス処理を行うことにより第2のPLC5のデータを取得し、データ収集ユニット14がCPUユニット11を経由してPLC2のデータを収集するようにすれば、PC2にて第2のPLCのデータも同様にモニタすることができるようになる。
そして、本発明にあっては、先に説明したように、単にCPUユニット11のI/Oメモリの内容そのままをモニタ表示するのみならず、それらを適宜演算して得られた新規なデータ(以下、仮想変数データと言う)についても、PC2の画像表示器の画面上に任意に表示することができるようにしている。以下、この点についてさらに詳細に説明する。
仮想変数データに関する設定処理のフローチャートが図2に、また仮想変数データに関する設定画面のイメージ図が図6にそれぞれ示されている。
図2のフローチャートに示されるように、仮想変数の設定処理においては、まず所望の仮想変数の『名称』及び『データ型』を設定する(ステップ201)。この設定操作は、図6に示されるように、仮想変数設定画面に従って行われる。
図6の仮想変数設定画面は、PC2の画像表示器の画面上に表示される。PC2は、この仮想変数設定画面に仮想変数の『名前』を表示するための名前表示領域101と、仮想変数の『データ型』を表示するためのデータ型表示領域102と、仮想変数の『演算式』を定義するための演算式表示領域103と、仮想変数の設定に使用可能な制御データ及び仮想変数の一覧をメニュー表示可能な変数一覧表示領域104と、仮想変数の設定に必要な各種操作キーを表示させた操作キー表示領域105と、OKボタン106及びキャンセルボタン107とを表示する。名前は、ユーザが仮想変数が何の情報であるかを認識あるいは特定するための情報であり、例えば図中の「稼動時間」や前述の「良品数」や「良品率」などの文字列情報である。データ型はデータ形式の定義である。例えばBOOLは1か0、オンかオフなどの2値データを意味し、UINTBCDはプラスマイナス符号がつかない整数を意味する、というように予め定められている。演算式は、取得データから直接得られない情報を求めるための演算内容を表わすもので、例えば図中に示した式であったり、前述の良品数を求めるための「生産数−不良数」という式であったり、良品率を求めるための「(生産数−不良数)÷生産数」という式である。名前、データ型、演算式は後述する図8のようにそれぞれ対応付けされる。
PC2は、変数一覧表示領域104に各取得データ(以下、変数という)並びに仮想変数に対応する『データ型』、『アドレス』、『説明』(変数または仮想変数の意味内容を示す文字列)を表示する。のちに図2のフローチャートを参照しつつ詳述するように、PC2はこの変数一覧表示領域104に、ユーザの設定した『データ型』に応じて最適なメニューを表示する。なお変数(つまり取得データ)の源はデータ収集ユニット側の収集データであり、CPUユニット側の制御データである。仮想変数は図2のフローに従って作成されたものである。
また、PC2は、操作キー表示領域105に、バックキー105a、クリアキー105b、数値キー105c、数値演算子キー105d、論理演算子キー105e、論理値キー105fを表示する。
従って、ユーザはこの仮想変数設定画面を見ながら仮想変数の設定をプログラマブルに行う。ユーザは、まず、PC2のワープロ機能を操作し、名前表示領域101及びデータ型表示領域102のそれぞれに、該当する仮想変数の名前(例えば、『稼働時間』)及びデータ型(例えば『REAL』など)を入力する。PC2はユーザ入力により、仮想変数の名前、データ型の情報を受け付ける(ステップ201。202)。しかる後、PC2は、変数一覧表示領域104内においてカーソルを表示し、ユーザに対してカーソルを上下するよう促す。ユーザが所望の変数あるいは仮想変数を選択し、同時に操作キー表示領域105に表示された各種のキー105a〜105fを操作することにより、所望の仮想変数に相当する演算式を作成する。PC2はこれらの操作内容を受付け、演算式表示領域103に演算式を表示する。しかる後、ユーザによりOKボタン106が操作され、PC2は演算式表示領域103の内容で定義された仮想変数『稼働時間』の演算式を、名前とデータ型とを関連付けてメモリ内所定エリアに格納する。
ユーザが『データ型』を『ビット型』(オンオフ信号)と選んだ場合は、PC2での処理はステップ202でYESとなり、変数一覧表示領域104の表示内容をビット型に切換え表示する(ステップ203)。ユーザは、以後、変数一覧表示領域104からビット型のデータを選択し、論理演算式105eと論理値キー105fとを操作しつつ、所望の演算式を作成する。PC2はこれらの操作内容を受け付けて、名前、データ型および演算式を関連付けてPC2内メモリの所定エリアに登録する(ステップ204)。
これに対して、ユーザが『データ型』について『ビット型』以外のものを選択した場合は、PC2の処理はステップ202NOとなり、変数一覧表示領域104に『変数型』を表示する(ステップ205)。ユーザは、数値キー105cと数値演算式105dとを操作しつつ四則演算式を作成する。PC2はこれらの操作内容を受け付けて、名前、データ型および演算式を関連付けてPC内メモリの所定エリアに登録する(ステップ206)。
このようにして、PC2は仮想変数の設定を対話式画面を通じてプログラマブルに行う。設定処理を終了すると、PC2のメモリ内所定エリアに新たに設定された仮想変数とその演算式とを共に記憶する。以後モニタ処理を起動することによって、こうして新たに設定された仮想変数を任意に指定して、収集データである変数の変化と並べてモニタ表示することが可能となる。
図8は、図2と図6により説明した処理によって新たに設定された仮想変数の一覧画面のイメージ図を示している。ユーザにより所定の表示モードが設定されることにより、PC2は同図に示されるように画像表示器の画面上に、仮想変数一覧画面を表示する。ユーザはこの一覧画面を観察すれば新たに設定した仮想変数の『名前』、『データ型』、『演算式』を認識できる。なお、記憶された仮想変数については、その後に別の仮想変数を新た設定する際に、変数一覧表示領域104に表示し、1つの変数として選択対象とすることもできる。
収集設定画面のイメージ図の一例が図7に示されている。ユーザにより所定のモードが設定されることにより、PC2は同図に示されるように画像表示器の画面上に表示可能な取得データの一覧を表示する。例えば、この一部だけを実際にモニタ表示したい場合はこの一覧からモニタ表示対処とするものを任意に選択操作するようにしてもよい。この収集設定画面に、PC2が取得する変数(前述のように、源はデータ収集ユニットの収集データであり、CPUユニットの制御データである)のみならず、図2および図6を通じて設定した任意の仮想変数を含ませることができる。図7の例にあっては、『良品数』、『良品率』は仮想変数に相当する。
そして、こうして設定された仮想変数は、PC2においてその仮想変数を求めるための演算式が自動的に実行されることにより求められる。つまり、あたかもPLC側において新たに仮想変数をラダー図言語を用いて求め、それをPC2へ送信した場合と同じように、仮想変数を取り扱うことができる。
次にモニタ処理について説明する。モニタ処理全体のゼネラルフローチャートが図3に示されている。
同図において、PC2が処理を開始すると、まず、演算式の読み出し処理が実行される(ステップ301)。演算式読み出し処理の詳細フローチャートが図4に示されている。同図に示されるように、この演算式読み出し処理においては、まず、設定ファイル(図7に示される収集設定画面、図8に示される仮想変数一覧画面に示された情報を含むもの)から仮想変数を読み出す(ステップ401)。
PC2は続いて、読み出した仮想変数や変数の演算式の入れ子処理を分解する(ステップ402)。ここで、仮想変数に対応する各演算式は演算式記憶テーブルに格納されている。
図5に示されるように、実IO値、仮想変数のそれぞれにはポインタP(n)が付されている。例えば、実IO値Aのポインタはp1、実IO値Bのポインタはp2、・・・と言ったような具合である。また、各仮想変数は、それら実IO値を示すポインタを利用して表されている。例えば、仮想変数Aにはポインタp11が付されており、この仮想変数Aを求める式は実IO値Bを示すポインタp2と実IO値Hを示すポインタp8・・・との加算式として表現されている。同様に、仮想変数Cにはポインタp31が付されており、この仮想変数Cを求める式は仮想変数Aを示すポインタp11と仮想変数Bを示すポインタp21との積として表現されている。従って、ステップ402の演算式の入れ子処理を分解するとは、図5の演算式記憶テーブルにおけるポインタのかかり具合を分解することを意味している。
続いて、演算式の処理順をソートする処理が実行される(ステップ403)。このソート処理は、演算式の入れ子は演算のしやすさを考慮して、後の演算に用いる変数についての演算処理を先に済ませておくような処理順にするようにソートされる。
続いて、以上のソート結果に基づき、演算処理の最適化ルーチンが作成される(ステップ404)。ここで、『最適化ルーチン』とは、各演算式の中で同じ演算式(例えば、A+B−C)がある場合、それを別変数として登録し、各演算式で再利用することで処理時間を短縮するといったことを意味している。
例えば、X=A+B−C+D−Eの式と、Y=G−H+A+B−C+Fの式とがあったとする。2つの式の中で同じ演算式(共通する式)はA+B−Cであるから、それを別の変数Zとおき、
X=A+B−C+D−E → X=変数Z+D−E
Y=G−H+A+B−C+F → Y=G−H+変数Z+F
として最適化をはかる。
例えば、X=A+B−C+D−Eの式と、Y=G−H+A+B−C+Fの式とがあったとする。2つの式の中で同じ演算式(共通する式)はA+B−Cであるから、それを別の変数Zとおき、
X=A+B−C+D−E → X=変数Z+D−E
Y=G−H+A+B−C+F → Y=G−H+変数Z+F
として最適化をはかる。
図3に戻って、続くステップ302においては、PC2がPLC1のデータ収集ユニット(SPU)14から収集データを読み出す。このデータ読み出しについては、PC2が自発的にPLC1のデータ収集ユニット14へ収集データ送信要求をするようにし、データ収集ユニット14がそれに返信することでもよいし、PC2からの収集データ送信要求をすることなしにPLC1のデータ収集ユニット14が自発的にPC2へ収集データを送りつけるようにしてもよいし、PC2とPLC1のデータ収集ユニット14とが互いに定期的にデータ通信をするようにしてよいし、それらのいずれでもよい。収集データの読み出しは、CSVファイル形式でもよいし、DBにいったん格納するようにしてもよい。
続く、ステップ303では、PC2が読み出された変数のデータの値を仮想変数の演算式に代入することによって、各仮想変数の値を生成する。すなわち、PLC1側から読み出された各変数に相当するデータを仮想変数を定義する演算式に代入することによって、PLC側には存在しなかった仮想変数をあたかもPLC側に存在したかのごとく生成するのである。
続く、ステップ304においては、こうして演算により求められた仮想変数の内容を、PC2のメモリ内の内部テーブルに格納する。この内部テーブルには、先に説明したように、新たに生成された仮想変数の値のみならず、従前からPLC1より読み出した各種変数(ビット変数、アナログ変数を含む)が格納されている。
以後、ステップ305においては、内部テーブルの内容に基づいて、PC2の画像表示器の画面上に、各ビット変数に対応するパルス列波形を複数行に並べて表示すると共に、各アナログ変数に対応するアナログ波形をそれぞれ固有の色で重ねて表示することになる。
このときの、モニタ画面全体のイメージ図が図9に示されている。同図に示されるように、モニタ画面100の全体は、ビット変数波形表示領域110と、アナログ変数波形表示領域120と、ビット変数関連情報表示領域130と、アナログ変数関連情報表示領域140とを含んでいる。
ビット変数波形表示領域110には、L1〜L16に対応する表示行が設定されており、各表示行には16個のビット変数のそれぞれに対応するデータ列に相当するパルス列波形が表示可能となされている。横軸が時間軸であり、領域の左方向が時間を過去へさかのぼる方向で、右方向が時間が進む方向である。縦軸が信号変化の軸であり、オフからオンに変化したことを波形の立上がりで示し、オンからオフに変化したことを波形の立下がりで示している。一方、アナログ変数波形表示領域120にも、所定個数のアナログ変数のそれぞれに相当するアナログ変数波形がそれぞれ固有の色を有する線で描かれている。横軸が時間軸であり、ビット変数波形表示領域110と同様に、領域の左方向が時間を過去へさかのぼる方向で、右方向が時間が進む方向である。縦軸が信号変化の軸であり、上方向が数値が大きくなる方向である。
また、ビット変数関連情報表示領域130には、各表示行をアクティブとするかノンアクティブとするかを設定するチェックボックス列131と、各表示行に対応する変数色を表す色ボックス列132と、各変数に対応するアドレス又はコメントを択一的に表示可能なアドレス/コメント表示列133と、各表示行L1〜L16においてカーソル線111が指し示す時点のオンオフ状態を2色の色で示すオンオフ色ボックス列134と、同様にオンオフ状態をON/OFFの何れかで示すON/OFF文字列135と、カーソル線111が指し示すオンパルスまたはオフパルスのオン時間またはオフ時間を表示するON/OFF時間列136が設けられている。
同様にして、アナログ変数関連情報表示領域140には、各アナログ変数の表示をアクティブまたはノンアクティブの何れかに設定するチェックボックス列141と、各変数の線色を示す色ボックス列142と、各変数の説明(コメント)を表示するためのコメント列143と、カーソル線111が指し示す時点における各変数の値を示す数値ボックス列144とが設けられている。
そして、特にこの発明と関連して、『良品数』および『良品率』に対応する仮想変数がコメント列に表示されており、これに対応してアナログ変数波形表示領域120には、生産数に対応する波形121と、良品数に対応する波形122と、不良数に対応する波形123とが表示されている。波形122の良品数は、PC2にて演算式=生産数−不良数で求めた値である。これらの波形で示されるように、生産数と不良数と良品数の関係の推移を観察することができる。なお、仮想変数の良品率については、演算式=(生産数−不良数)÷生産数で求められる値である。アナログ変数波形表示領域120に表示する場合は、縦軸に率をとり、最下点を0%、最高点を100%とするとよい。図9のアナログ変数波形表示領域120では波形122とほぼ重なって見える。
言うまでもないが、この仮想変数データは、PC2の側で独自に生成したものであって、PLC1の側のメモリには存在しないし、データ収集ユニット14にて収集されるものではない。このように、本発明によれば、あたかもPLC1側においてラダー図言語などで変数を新たに設定したかのごとく、仮想変数データを取り扱うことができるから、様々な仮想変数を設定してはその時間的推移をモニタ画面を介して観察することにより、生産設備のメンテナンスや故障原因分析に最適な仮想変数を導くことが可能となる。
本発明によれば、内部テーブルに格納された各変数データ列とモニタ装置側で設定した仮想変数データ列とに基づいてモニタ装置側の画像表示器の画面上に対応する波形表示を行うため、新たな変数を定義するについても、PLC側でラダー図言語等々の固有言語を使用してメモリ割付を追加乃至変更することは不要であるから、ユーザプログラムの追加によるサイクルタイムの遅れ等が発生することを気にすることなくもモニタ対象データを拡張することができる。
1 第1のPLC
2 PC
3 アクチュエータ
4 センサ
5 第2のPLC
6 アナログI/Oユニット
7 デジタルI/Oユニット
11 CPUユニット
12 通信ユニット
13 I/Oユニット
14 データ収集ユニット(SPU)
51 CPUユニット
52 通信ユニット
53 I/Oユニット
100 表示画面
101 名前表示領域
102 データ型表示領域
103 演算式表示領域
104 変数一覧表示領域
105 操作キー表示領域
106 OKボタン
107 キャンセルボタン
110 ビット変数波形表示領域
120 アナログ変数波形表示領域
130 ビット変数関連情報表示領域
140 アナログ変数関連情報表示領域
2 PC
3 アクチュエータ
4 センサ
5 第2のPLC
6 アナログI/Oユニット
7 デジタルI/Oユニット
11 CPUユニット
12 通信ユニット
13 I/Oユニット
14 データ収集ユニット(SPU)
51 CPUユニット
52 通信ユニット
53 I/Oユニット
100 表示画面
101 名前表示領域
102 データ型表示領域
103 演算式表示領域
104 変数一覧表示領域
105 操作キー表示領域
106 OKボタン
107 キャンセルボタン
110 ビット変数波形表示領域
120 アナログ変数波形表示領域
130 ビット変数関連情報表示領域
140 アナログ変数関連情報表示領域
Claims (5)
- ユーザプログラムを実行して制御を行うプログラマブル・コントローラのメモリから変数をデータ収集ユニットが収集し、収集した複数の変数の値をモニタ装置が読み込んでそれぞれに相当する一連のデータ列をモニタ装置の画像表示器を介してモニタするための方法であって、
モニタ装置における処理が、
1もしくは2以上の変数を使用した演算式により定義された仮想変数を設定登録する第1のステップと、
データ収集ユニットから変数データを読み込む第2のステップと、
第1ステップにて設定された仮想変数を定義する演算式に第2ステップにて読み込んだ変数データを代入して仮想変数データを生成する第3のステップと、
読み込んだ変数データと生成した仮想変数データを内部テーブルに格納する第4のステップと、
内部テーブルに格納した各変数データと仮想変数データとのうち任意のデータの時系列変化を前記画像表示器の画面上に波形表示する第5のステップと、
を具備することを特徴とする収集データのモニタ方法。 - 第1のステップが、
仮想変数の名称表示領域と、仮想変数のデータ型表示領域と、仮想変数を定義するための演算式表示領域とを有する入力データ表示領域と、
仮想変数の設定のために選択可能な変数一覧をメニュー表示する変数一覧表示領域と、
仮想変数を定義する際に使用する数値キー、論理値キー、数値演算子キー、論理演算子キー、仮想変数を入力確定するための確定キーの各表示領域を有する操作キー表示領域と、
を有する仮想変数設定画面をモニタ装置側の画像表示器の画面上に表示させるステップと、
変数一覧表示領域におけるユーザによる変数選択操作と、操作キー表示領域における数値キー、論理値キー、数値演算子キー、論理演算子キー、仮想変数を入力確定するための確定キーの操作とに基づいて、ユーザ操作に対応する仮想変数に相当する演算式を生成するステップと、
生成された仮想変数に相当する演算式を登録するステップと、
を具備することを特徴とする収集データのモニタ方法。 - データ収集ユニットがプログラマブル・コントローラのメモリから収集した複数の変数の各収集時点の値のそれぞれに相当する一連のデータ列をモニタ装置側の画像表示器を介してモニタするための装置であって、
1もしくは2以上の変数を使用した演算式により定義された仮想変数を設定登録する第1の手段と、
プログラマブル・コントローラ側のデータ収集ユニットから変数データを読み込む第2の手段と、
第1の手段にて設定された仮想変数を定義する演算式に前記データ収集ユニットから読み込んだ変数データを代入して仮想変数データを生成する第3の手段と、
第1の手段にて読み込んだ変数データと第3の手段により生成した仮想変数データとを内部テーブルに格納する第4の手段と、
内部テーブルに格納した各変数データと仮想変数データとのうち任意に設定したデータの時系列変化を表示する第5の手段と、
を具備することを特徴とする収集データのモニタ装置。 - 第1の手段が、
仮想変数の名称表示領域と、仮想変数のデータ型表示領域と、仮想変数を定義するための演算式表示領域とを有する入力データ表示領域と、
仮想変数の設定のために選択可能な変数一覧をメニュー表示する変数一覧表示領域と、
仮想変数を定義する際に使用する数値キー、論理値キー、数値演算子キー、論理演算子キー、仮想変数を入力確定するための確定キーの各表示領域を有する操作キー表示領域と、
を有する仮想変数設定画面をモニタ装置側の画像表示器の画面上に表示させる手段と、
変数一覧表示領域におけるユーザによる変数選択操作と、操作キー表示領域における数値キー、論理値キー、数値演算子キー、論理演算子キー、仮想変数を入力確定するための確定キーの操作とに基づいて、ユーザ操作に対応する仮想変数を生成する手段と、
生成された仮想変数に相当する演算式を登録する手段と、
を具備することを特徴とする収集データのモニタ装置。 - 請求項1又は2に記載の方法をコンピュータにより実行させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006355617A JP2007249937A (ja) | 2006-02-14 | 2006-12-28 | 収集データのモニタ方法及び装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006037259 | 2006-02-14 | ||
JP2006355617A JP2007249937A (ja) | 2006-02-14 | 2006-12-28 | 収集データのモニタ方法及び装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007249937A true JP2007249937A (ja) | 2007-09-27 |
Family
ID=38594099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006355617A Pending JP2007249937A (ja) | 2006-02-14 | 2006-12-28 | 収集データのモニタ方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007249937A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023276351A1 (ja) | 2021-07-02 | 2023-01-05 | オムロン株式会社 | 制御装置、システムプログラムおよび方法 |
-
2006
- 2006-12-28 JP JP2006355617A patent/JP2007249937A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023276351A1 (ja) | 2021-07-02 | 2023-01-05 | オムロン株式会社 | 制御装置、システムプログラムおよび方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1818743B1 (en) | Monitor system, and monitor device and data collecting device therefor | |
KR101401158B1 (ko) | 프로젝트 데이터 작성 장치 및 프로그래머블 표시기 | |
CN106843141B (zh) | 数值控制装置 | |
JP5102362B2 (ja) | プラント監視制御システム | |
US20210182101A1 (en) | Program generating device, program generating method, and information storage medium | |
JP4085286B2 (ja) | Plcのモニタシステム | |
US20130185620A1 (en) | Ladder program creation apparatus | |
JPH08221107A (ja) | シーケンス制御プログラム作成装置 | |
JP6318500B2 (ja) | シミュレーション装置およびシミュレーションプログラム | |
JP2005267267A (ja) | 制御用表示装置、画面データ生成装置、並びに、それらのプログラムおよび記録媒体 | |
JP4971226B2 (ja) | 設計支援装置 | |
JP2007249937A (ja) | 収集データのモニタ方法及び装置 | |
US9792000B2 (en) | System construction assistance apparatus, method, and recording medium | |
KR101498877B1 (ko) | 프로그램 작성 장치 및 화상 제어 시스템 | |
US20230129280A1 (en) | Computer readable storage medium, program creation support apparatus, and program creation support method | |
JP2008077467A (ja) | 表示器 | |
CN112654939B (zh) | 控制系统以及控制装置 | |
CN107018673B (zh) | 信息取得显示程序、信息取得显示装置及信息取得显示方法 | |
JP6389947B1 (ja) | 情報処理システム、情報処理装置、及びプログラム | |
JP2004030193A (ja) | 画像処理装置、これを含む画像処理システムおよび画像処理方法 | |
JP2007207196A (ja) | プログラマブルロジックコントローラ、情報処理装置、制御プログラム、およびテーブル作成プログラム | |
US20220299968A1 (en) | Control system, information processing apparatus, and information processing program | |
US11520315B2 (en) | Production system, production method, and information storage medium | |
CN110352390B (zh) | 报警功能设定装置、报警功能设定系统及报警功能设定程序 | |
JP2004094421A (ja) | 制御コントローラにおけるデータの入出力定義を行うシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090723 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090729 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20091202 |