JP3712641B2 - Editor device and recording medium recording editor program - Google Patents

Editor device and recording medium recording editor program Download PDF

Info

Publication number
JP3712641B2
JP3712641B2 JP2001222092A JP2001222092A JP3712641B2 JP 3712641 B2 JP3712641 B2 JP 3712641B2 JP 2001222092 A JP2001222092 A JP 2001222092A JP 2001222092 A JP2001222092 A JP 2001222092A JP 3712641 B2 JP3712641 B2 JP 3712641B2
Authority
JP
Japan
Prior art keywords
data
editor
program
control
display
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 - Fee Related
Application number
JP2001222092A
Other languages
Japanese (ja)
Other versions
JP2002140106A (en
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.)
Schneider Electric Japan Holdings Ltd
Original Assignee
Digital Electronics 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 Digital Electronics Corp filed Critical Digital Electronics Corp
Priority to JP2001222092A priority Critical patent/JP3712641B2/en
Publication of JP2002140106A publication Critical patent/JP2002140106A/en
Application granted granted Critical
Publication of JP3712641B2 publication Critical patent/JP3712641B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、制御対象機器の状態を表示させる機能および制御対象機器の動作を制御する機能を有するシステムにおいて、制御対象機器の状態に応じた表示内容および制御対象機器の制御手順をプログラミングするエディタ装置およびエディタプログラムが記録された記録媒体に関するものである。
【0002】
【従来の技術】
プログラマブルロジックコントローラ(以降、PLCと称する)などと呼ばれる産業用制御装置は、シーケンス制御をはじめとする各種制御を実現するために、CPUおよびメモリを中心とするハードウェアの部分と、制御を司るソフトウェアの部分とを備えている。ソフトウェアの部分は、PLCを設計当初の制御システム通りに動作させるためのシーケンス制御フローの設計、その制御フローの命令語への変換、命令語のメモリへの書き込みなどを含んでいる。一般に、この一連の作業をプログラミングと称している。
【0003】
このようなプログラミングにおいては、コンピュータの専門知識を持たなくても簡単にプログラム作成ができるように、独自の言語を用いており、利用者に使いやすい各種のプログラミング言語が次々と開発されるようになった。現在、IEC(International Electrotechnical Commission) において、標準のプログラミング言語が制定されている(IEC 6 1131-3 )。それは、SFC(Sequential Function Chart) 、LD(Ladder Diagram)、IL(Instruction List)、FBD(Function Block Diagram)およびST(Structured Text) の5言語である。
【0004】
上記のように、各種のプログラミング言語を用いてプログラム開発を行うことができるように環境が整えられつつある。例えば、ラダー図(LD)は、リレーシンボルを用いて比較的容易にラダー回路を設計することができるので従来から広く普及しており、現在でも最もよく用いられているプログラミング言語である。このようなプログラミング言語を用いたプログラミング作業において用いられるプログラミングツールとしては、ラダーエディタなどのプログラミングソフトウェアが普及してきている。このソフトウェアは、パーソナルコンピュータなどのコンピュータ装置において、ラダー図などをシンボルを含む形態で作成できるので、プログラムの作成および編集が容易に行える。
【0005】
一方、プログラマブル表示器は、ドット表示画面、操作用入力スイッチ、ホストコントローラ(PLC)とのインターフェース、画面上での操作入力のような制御のためのプログラムメモリなどを備えた操作用表示器である。一般に、プログラマブル表示器は、グラフィック表示を行うので、操作盤、スイッチ、表示灯などの機能を備えることができる他、制御対象機器の稼働状況や作業指示のような管理のための各種のモニタ、機器に対する設定値を入力する端末としての機能を備えている。
【0006】
また、近年では、制御対象機器を接続するための入出力ユニットなどを搭載することによってPLCの制御機能を備えたプログラマブル表示器も登場してきている。
【0007】
このようなプログラマブル表示器で表示される制御画面(表示内容プログラム)は、画面作成ソフトウェア(作画エディタ)を用いてユーザ独自で作成できるようになっている。画面作成に際しては、ユーザが、パーソナルコンピュータなどにおいて作画ソフトによって提供されるスイッチ、テンキー、メータ表示器、グラフ表示器などの部品(マーク)、描画機能などを用いて所望の制御画面を構成する。
【0008】
作成された制御画面は、画面データとしてプログラマブル表示器に転送されて記憶される。PLCの稼働時には、プログラマブル表示器は、PLCとの間でやり取りされるデータに基づいて、制御対象機器の動作状態に応じて制御画面上に各部品や図形を表示させる。
【0009】
ところで、ラダーエディタなどを用いた制御手順プログラムの作成(プログラミング)と、作画エディタを用いた表示内容プログラムの作成(画面作成)とは、一般には独立して行われる。例えば、作成された制御手順プログラムに基づいて表示内容プログラムを作成する場合は、制御手順プログラムの作成時に各デバイスについて入力された名称およびアドレスをテーブルの形式で書き留めたような設計資料を作成しておき、その設計資料を参照しながらI/Oアドレスの定義付けなどを含む表示内容プログラムの作成作業を行う。また、作成された表示内容プログラムに基づいて制御手順プログラムを作成する場合も同様に、予め用意された設計資料に基づいて作業を行う。
【0010】
しかしながら、このような方法では、表示内容プログラムの作成のための入力作業が制御手順プログラムの作成のための入力作業と別途必要であるので、多大な時間と労力とを要する。また、一方のプログラムに対応する設計資料を参照しながら他方のプログラムを作成するので、他方のプログラムの作成時に誤入力が生じるおそれがあり、誤入力によってプログラムのデバッグ作業が困難になる。さらに、作成されたプログラムに対応する設計資料を予め用意しなければならず、これによって作業効率が低下するという不都合がある。
【0011】
このような不都合を解消するためになされた発明として、特開平11−175326号公報には、ラダー図を作成するラダーエディタと画面を作成する作画エディタとの間でラダーシンボルと画面に配置されるマークとを対応付けるエディタ装置が開示されている。このエディタ装置では、例えば、ラダー図のシンボルを作画エディタの作画ウインドウにドラッグ&ドロップすることによって、1つのシンボルおよびこのシンボルに対応する少なくとも1つのマークについて共通する制御対象機器の名称およびアドレスを含む属性データが共通データベースに蓄えられるとともに、その属性データを参照して作画ウインドウにドラッグされた上記のシンボルに対応するマークが表示される。
【0012】
【発明が解決しようとする課題】
ところが、上記公報に開示されたエディタ装置では、データの共通化を図ることによって、ラダーエディタと作画エディタとで重複するデータの再入力を避けることができるものの、属性データを蓄えるための共通データベースを、ラダーエディタ用のラダーファイルおよび作画エディタ用の画面ファイルと別途設ける必要がある。しかも、作成されたラダー図(ユーザプログラム)および画面(ユーザ画面)を、最終的にそれぞれラダーファイルおよび画面ファイルに登録する際に、両ファイルにも上記の属性データが格納されるため、さらに属性データが重複して登録されることになる。
【0013】
このように、従来のエディタ装置では、データが専用のファイルで管理されているため、データベースの効率的な利用が図られていないという不都合がある。
【0014】
本発明は、上記の事情に鑑みてなされたものであって、データの重複入力を避けることができるという従来のエディタ装置が備える操作性を維持しながら、データベースを効率的に利用することができるエディタ装置およびエディタプログラムを記録した記録媒体を提供することを目的としている。
【0015】
【課題を解決するための手段】
本発明のエディタ装置は、上記の課題を解決するために、制御対象機器の状態を表示する表示内容を定めるための表示内容プログラムを作成する第1エディタ手段と、上記制御対象機器を制御する制御手順を定めるための制御手順プログラムを作成する第2エディタ手段と、上記表示内容プログラムに固有の固有データと各制御対象機器に対応する所望の入出力番号に予め対応づけられている変数を定義する変数名とを含む画面データ、上記制御手順プログラムに固有の固有データと上記変数名とを含む制御データ、および上記表示内容プログラムと上記制御手順プログラムとの間で共通し、上記変数名および上記入出力番号からなっている共通データを統合して格納するファイルと、上記ファイルから検索することによって得られた上記共通データの上記変数名に基づいて、上記第1または第2エディタ手段に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを上記ファイルにおいて生成させるデータ生成手段とを備えていることを特徴としている。
【0016】
上記の構成では、単一のファイルに、画面データ、制御データおよび共通データが統合して格納されている。このファイルから、共通データの変数名が検索されることによって得られると、データ生成手段によって、第1または第2エディタ手段が、その変数名に基づいて固有データを生成する。それゆえ、一方のエディタ手段によって共通データが入力されていれば、その共通データの変数名を用いて他方のエディタ手段によって固有データを生成することができる。これにより、両エディタ手段によるデータの重複入力を避けることができる。
【0020】
本発明の記録媒体は、前記の課題を解決するために、制御対象機器の状態を表示する表示内容を定めるための表示内容プログラムを作成する第1エディタ処理と、上記制御対象機器を制御する制御手順を定めるための制御手順プログラムを作成する第2エディタ処理と、上記表示内容プログラムに固有の固有データと各制御対象機器に対応する所望の入出力番号に予め対応づけられている変数を定義する変数名とを含む画面データと、上記制御手順プログラムに固有の固有データと上記変数名とを含む制御データと、上記表示内容プログラムと上記制御手順プログラムとの間で共通し、上記変数名および上記入出力番号からなっている共通データとを統合して格納するファイルから検索することによって得られた上記共通データの上記変数名に基づいて、上記第1または第2エディタ処理に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを上記ファイルにおいて生成させるデータ生成処理とを含んでいることを特徴とするエディタプログラムを記録している。
【0021】
この記録媒体を用いると、データ生成処理によって、本発明のエディタ装置と同様、第1または第2エディタ処理が、表示内容プログラムまたは制御手順プログラムに固有の固有データを生成する。これにより、両エディタ処理によるデータの重複入力を避けることができる。
【0022】
また、本発明の他の記録媒体は、制御対象機器の状態を表示する表示内容を定めるための表示内容プログラムを作成する第1エディタ処理または上記制御対象機器を制御する制御手順を定めるための制御手順プログラムを作成する第2エディタ処理のいずれか一方と、上記表示内容プログラムに固有の固有データと各制御対象機器に対応する所望の入出力番号に予め対応づけられている変数を定義する変数名とを含む画面データと、上記制御手順プログラムに固有の固有データと上記変数名とを含む制御データと、上記表示内容プログラムと上記制御手順プログラムとの間で共通し、上記変数名および上記入出力番号からなっている共通データとを統合して格納するファイルから検索することによって得られた上記共通データの上記変数名に基づいて、上記第1または第2エディタ処理に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを上記ファイルにおいて生成させるデータ生成処理とを含んでいることを特徴とするエディタプログラムを記録している。
【0023】
この記録媒体を用いれば、前記の記録媒体と同様、データ生成処理によって、表示内容プログラムまたは制御手順プログラムに固有の固有データが生成されるので、両エディタ処理によるデータの重複入力を避けることができる。また、この記録媒体によれば、第1または第2エディタ処理のいずれか一方とデータ複写処理とを含んでいる2種類のエディタプログラム、すなわち第1または第2エディタプログラムを提供することができる。
【0024】
【発明の実施の形態】
本発明の実施の一形態について図1ないし図21に基づいて説明すれば、以下の通りである。
【0025】
本実施の形態に係る表示/制御システムは、様々な構成が考えられるが、ここでは、第1ないし第3の構成について説明する。
【0026】
まず、図1に示す第1の表示/制御システムは、プログラマブル表示器1およびPLC2を含んでいる。
【0027】
表示機能部としてのプログラマブル表示器1は、CPU11、メモリ部12、VRAM13、ディスプレイ14、グラフィックコントローラ15、タッチパネル16、タッチパネルコントローラ17、メンテナンスポート18および通信コントローラ19を備えている。
【0028】
メモリ部12は、DRAM12a、FEPROM(Flash Erasable and Programmable ROM)12b等のメモリを含んでいる。DRAM12aは、主に、表示制御などの演算処理時の作業用に用いられる他、PLC2との間でやり取りされるデータの一時的な記憶に用いられる。FEPROM12bは、書き替え可能な読み出し専用のフラッシュメモリであり、一般のパーソナルコンピュータにおけるハードディスクドライブの役割を果たす。フラッシュメモリは、可動部を持たず、かつ衝撃に強いので、劣悪な周囲環境でも安定して動作する。
【0029】
また、上記のFEPROM12bは、図2に示すように、表示制御システムプログラムと、通信プロトコルと、ユーザ画面とをそれぞれ格納するエリアを有している。表示制御システムプログラムは、画像表示制御を行うための基本機能を実現するためのプログラムである。通信プロトコルは、PLC2との通信処理で用いられるプロトコルであり、PLC2の機種(メーカ)に応じて固有に定められている。ユーザ画面は、後述する作画エディタ32bによって作成されて、FEPROM12bにダウンロードされている。このユーザ画面は、ディスプレイ14に表示すべきベース画面や画像ブロック(表示シンボル)としてのマークのデータおよび各マークに付与された後述する処理指示語W(図3参照)などを含んでおり、表示内容プログラムを構成している。
【0030】
上記のマークは、タッチスイッチ、ランプ、各種表示器などの画像化された基本的な部品として予め用意されている。また、マークとしては、スイッチや数値表示器などの動的変化を画面上の任意の位置で表現させるために、所望の位置に設定された矩形エリアに所望の動画機能が設定された機能部も含まれる。
【0031】
図3に示すように、画面データに含まれる処理指示語Wは、ベース画面上で実行されるべき事象毎に作成されている。この処理指示語Wは、基本的には、表示制御動作を実行すべきベース画面のファイル番号Fと、このベース画面上で実行されるべき動作内容を特定する事象名Tと、各実行事象毎に参照される1または複数のデータからなる参照情報Iとを一組として備えている。
【0032】
CPU11は、前述のFEPROM12bに格納された表示制御システムプログラムにしたがって、プログラマブル表示器1の各部の動作を制御する。また、CPU11は、後述するメンテナンスポート18を介しての後述するコンピュータ装置3との通信を制御する機能を有しており、作画エディタ32bからの画面データを受け取るとFEPROM12bに格納したり、ラダーエディタ32aからのラダープログラム(ユーザプログラム)を受け取るとPLC2に転送したりする。
【0033】
VRAM13は、ディスプレイ14に表示される画面のイメージを一時的に保持するメモリであり、FEPROM12bからの画面データのイメージを水平方向に表示される順にドットデータとして格納している。
【0034】
ディスプレイ14は、液晶パネルやELパネルのような平板型表示素子によって構成されている。グラフィックコントローラ15は、VRAM13に展開された画面のイメージを、ディスプレイ14に描画するドライバソフトウェアである。タッチパネル16は、ディスプレイ14の表示画面上で入力を行うために設けられており、アナログ抵抗膜式タッチパネルなどが好適である。タッチパネルコントローラ17は、タッチパネル16の出力電圧を入力位置情報に変換してCPU11に出力する。
【0035】
メンテナンスポート18は、後述するコンピュータ装置3との間の通信を行うための通信ポートである。一方、通信コントローラ19は、通信ケーブル(例えばRS−232C)を介してPLC2との間で入出力機器4…の制御や監視に関するデータなどの転送やPLC2の出力データの取り込みを制御するインターフェースである。
【0036】
制御機能部としてのPLC2は、内蔵するCPU部によって、制御機能プログラムにしたがい、ラダーエディタ32aで作成されたユーザプログラム(制御手順プログラム)で定められた手順で、入出力機器4…の動作を制御する。
【0037】
PLC2内のメモリには、アドレスを指定することにより、ワードデバイスおよびビットデバイスが格納場所を特定可能に設定されている。ワードデバイスは、入出力されるデータが数値のようなワードデータに対して設定され、ビットデバイスは、オン・オフ状態のようなビットデータに対して設定される。このような設定により、PLC2内の任意のワードデバイスまたはビットデバイスをアクセスするだけで入出力機器4…を制御し、またはその動作状態に関する情報を個別に取り出すことができる。
【0038】
プログラマブル表示器1は、上記のビットデバイスまたはワードデバイスが示す状態情報のうち、必要な情報を適時にメモリ部12に読み込む一方、上記の処理指示語Wを繰り返し読み出して各処理指示語Wの事象名Tで特定される内容の動作をPLC2側の状態情報を参照しながら実行する。これによって、ビットデバイスまたはワードデバイスの状態の変化に応じて変化する表示動作が実行される。
【0039】
プログラマブル表示器1の表示動作は、図4に示すフローチャートの手順にしたがって行われる。
【0040】
まず、PLC2と通信が可能なオンラインモード、またはプログラマブル表示器1のみを動作させるオフラインモードのいずれか一方を選択する(S1)。オフラインモードが選択された場合(NO)、プログラマブル表示器1において、設定処理、診断処理などの各種の処理を行い(S6)、処理をS1に戻す。
【0041】
S1でオンラインモードが選択された場合(YES)、起動処理としてプログラマブル表示器1のメモリ部12に設定されている前記の処理指示語Wで引用されているPLC2側の状態情報がプログラマブル表示器1側に取り出される。具体的には、メモリ部12に格納されている処理指示語W…のうち、現在表示されているベース画面に関係する処理指示語Wに含まれる情報から、PLC2に設定されたワードデバイスおよびビットデバイスのアドレスが抽出される。そして、そのアドレスに基づいてPLC2のメモリに直接アクセスすることによって、アドレス指定された状態情報がメモリ部12に展開され、操作画面上に表示される。オンラインモードでは、プログラマブル表示器1に表示された操作パネル画面による入力操作があったか否かを判断する(S2)。ここで、入力操作があった場合は、入力されたデータに基づいて所定の演算処理を実行し(S3)、さらにデータ通信処理を行う(S4)。
【0042】
次いで、各事象の表示処理を実行する(S5)。このとき、メモリ部12に格納されている処理指示語Wのうち、通信処理によって抽出された状態情報に基づく表示動作が行われる。
【0043】
続いて、コンピュータ装置3について説明する。
【0044】
図1に示すように、コンピュータ装置3は、パーソナルコンピュータなどの汎用コンピュータによって構成されている。このコンピュータ装置3は、CPU31、エディタ部32、プロジェクトファイル33、メモリ部34、ディスプレイ35、入力装置36、外部記憶装置37およびインターフェース部(図中、I/F)38を備えている。
【0045】
CPU31は、コンピュータ装置3にインストールされているOS(オペレーティングシステム)上でエディタ部32を含むアプリケーションソフトウェアを動作させる際の各部の制御や演算処理を行う。
【0046】
メモリ部34は、RAM、ROMなどのメモリを備えており、固定データの格納、一時的なデータ記憶、CPU31の演算処理時における作業エリアの提供といった役割を果たしている。
【0047】
エディタ部32は、ラダーエディタ32a、作画エディタ32b、複写機能部32cおよびファイル管理部32dを含んでいる。
【0048】
第2エディタ手段としてのラダーエディタ32aは、入出力機器4…が所望のシーケンスにしたがって動作するようにPLC2の制御手順を定めるユーザプログラムを作成するためのプログラミングソフトウェアであり、ディスプレイ35の表示画面35a(図17(a)参照)上で入出力機器4の動作に対応するラダー記号(制御シンボル)を配置してラダー図を作成できるように構成されている。このラダーエディタ32aにおいては、例えば、国際基準IECに準拠した前述のプログラミング言語が用いられる。
【0049】
また、ラダーエディタ32aは、PLC2の入力端子および出力端子のそれぞれに付与されている入力番号および出力番号と、各入出力端子に接続される入出力機器4の名称(デバイス名)との対応付けを入出力番号の割り付け(I/Oアサイン)として行う。この割り付けの結果は、後述のプロジェクトファイル33に保存される。
【0050】
割り付けを行う際、メモリ部34には、入力番号および出力番号をそれぞれアドレスとして、各アドレスに対応するデバイス名が格納される。従来、このような割り付けは、PLCのメーカによって異なっており、絶対アドレスで設定されるので、メーカに応じたメモリテーブルを用意する必要がある。ただし、IECに準拠した本ラダーエディタ32aは、自由変数によってユーザが入出力を決定できるので、上記のようなメモリテーブルは不要である。また、一度決定した割り付けも、後に変更することができる。
【0051】
ラダーエディタ32aで作成されたユーザプログラムは、プログラマブル表示器1を介して(または直接)PLC2に転送され、PLC2内のメモリにダウンロードされる。
【0052】
第1エディタ手段としての作画エディタ32bは、プログラマブル表示器1が、入出力機器4…の稼働状況や作業指示のような管理のための各種のモニタ、機器に対する設定値を入力する端末としての機能を備えるように、ディスプレイ14に表示させる画面を作成する画面作成ソフトウェアである。一般に、作画エディタ32bは、ユーザ独自の画面(ユーザ画面)を作成できるように、スイッチ、ランプ、テンキー、各種表示器(例えば、数値表示器、メータ表示器およびグラフ表示器)などの部品(マーク)、描画機能、テキスト入力機能などを備えている。また、作画エディタ32bは、作成された画面に配置されたマークの各入出力機器4に対する前記の入出力番号(アドレス)を割り付ける。
【0053】
このようにして作成されたユーザ画面は、後述のプロジェクトファイル33に格納され、必要に応じてインターフェース部38を介してプログラマブル表示器1に転送され、FEPROM12bにダウンロードされる。
【0054】
データ生成手段としての複写機能部32cは、OSのデータ複写機能を利用して、ラダーエディタ32aで作成されたラダー図におけるラダー記号と後述の変数データを介して対応するマークを、作画ウインドウ32b1 において、作画エディタ32bに自動的に生成(描画)させる。また、複写機能部32cは、同様にOSのデータ複写機能を利用して、作画エディタ32bで作成された画面におけるマークと変数データを介して対応するラダー記号を、ラダーウインドウ32a1 において、ラダーエディタ32aに自動的に生成(描画)させる。
【0055】
具体的には、ドラッグ&ドロップまたはコピー&ペーストの機能を利用して、マークまたはラダー記号を複写させたときに、メモリ部34に設けられる後述のクリップボードCB(図18参照)に属性データを一時的に保存し、複写先のエディタが、その変数データを参照することによってマークおよびラダー記号が自動生成される。
【0056】
ファイル管理部32dは、プロジェクトファイル33に後述するようなデータベースを構築することによって、ユーザプログラムおよびユーザ画面とを一元的に管理する。
【0057】
クリップボードCBに格納されるデータ構造は、図5(a)に示すように、ヘッダーコード、メモリサイズ、オブジェクトタイプ、予約、アドレス情報数、アドレス情報(1〜N)および予約によって構成されている。このうち、メモリサイズは、クリップボードCBへデータを格納する際に必要となるメモリのサイズであり、オブジェクトタイプは、クリップボードCBに格納する部品の予め設定された種類であり、図5(b)に示すように、ビットスイッチ、トグルスイッチ、ランプ、数値表示器、棒グラフ、円グラフ、半円グラフ、タンクグラフ、メータグラフおよび設定値表示器が設定される。アドレス情報は、図5(c)に示すように、アドレス(アドレス名)、予約、アドレス付加情報、予約、オブジェクトタイプおよび予約によって構成されている。アドレス付加情報は、シンボルの種類(整数シンボル、ディスクリートシンボルなど)に関する情報である。アドレス情報におけるオブジェクトタイプは、上記のオブジェクトタイプと同じ内容であって、アドレスがどの部品に対応しているかを指定し、このために必要な部品のビットのみONする。
【0058】
なお、上記の複写機能部32cおよびファイル管理部32dは、ラダーエディタ32aまたは作画エディタ32bのいずれか一方の一機能としてそれぞれに含まれていてもよい。
【0059】
コンピュータ装置3は、エディタ部32を備えることによってユーザプログラムおよびユーザ画面の作成および編集を行うためのエディタ装置として機能する。
【0060】
エディタ部32は、パッケージソフトウェアまたはオーダーメイドソフトウェアとしてプログラムメディアの形態で提供可能なソフトウェアであって、例えば、コンピュータ装置3と分離可能な記録媒体5に記録されている。そして、エディタ部32は、記録媒体5からコンピュータ装置3にインストールされることによってエディタ機能を発揮することができる。
【0061】
なお、エディタ部32は、単一の記録媒体5に記録されていてもよいが、ラダーエディタ32aと作画エディタ32bとがそれぞれ別個の記録媒体に記録されていてもよい。
【0062】
上記のプログラムメディアは、磁気テープやカセットテープなどのテープ系、フロッピディスクやハードディスクなどの磁気ディスク系、CD−ROM、MO、MD、DVDなどの光ディスク系、ICカード(メモリカードを含む)、光カードなどのカード系が好適である。その他、上記のプログラムメディアは、マスクROM、EPROM、EEPROM、フラッシュROMなどによる半導体メモリを含めた固定的にプログラムを担持する媒体であってもよい。
【0063】
また、コンピュータ装置3は、インターネットを含む通信ネットワークと接続可能であることから、通信ネットワークからプログラムをダウンロードするように流動的にプログラムを担持する媒体であってもよい。ただし、このように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード用プログラムは予めコンピュータ装置3に格納されるか、あるいは別な記録媒体からインストールされるものであってもよい。
【0064】
プロジェクトファイル33は、図6にも示すように、制御データと、画面データと、変数データとを含んでいる。ユーザプログラムは、制御データおよび変数データを含んでおり、ユーザ画面は、画面データおよび変数データを含んでいる。
【0065】
固有データとしての制御データは、入力されたラダー記号に対応する、制御シンボルデータとしてのラダー命令(ニーモニック)および変数名からなっている。変数名としては、スイッチに対応するSW1やランプに対応するLAMP1のようにデバイス(入出力機器4)に対応する符号や、操作指示、デバイスの動作状態のような事象名が挙げられる。このような変数名によって定義される変数は、デバイスに対応する所望の入出力番号(I/Oアドレス)に予め対応付けられている。
【0066】
固有データとしての画面データは、グラフィックデータ、テキストデータおよび部品データを含んでいる。グラフィックデータは、線、円、楕円、三角形、四角形、塗り込み図形などの図形データである。テキストデータは、文字や記号などによって構成されるユーザ画面のタイトルや文章などを含んでいる。部品データは、予め作画エディタ32bに用意されている前述の部品に関するデータであり、表示シンボルデータとしての部品名および上記の変数名からなっている。部品名としては、例えば、多種のスイッチから特定のスイッチを選択できるように区別されたスイッチAといった名称や、各部品毎に付された部品コード(例えば、アルファベットと数字との組み合わせからなるコード)が挙げられる。また、画面データとしては、図示しないが、動画機能が設定された前述の機能部も含まれる。
【0067】
共通データとしての変数データは、ユーザプログラムおよびユーザ画面に共通の情報であり、変数名およびアドレス(I/Oアドレス等)からなっている。この変数データは、属性データに含まれる。変数は、その他、ビット型、整数型、実数型などの型式で設定が可能であり、このようなデータは変数データとともに属性データに含まれている。
【0068】
図6に示すプロジェクトファイル33は、関連付け可能な特定のデータを含んだデータベースとして構成されている。プロジェクトファイル33においては、制御データと、画面データと、変数データとがそれぞれ関係表として構成されている。これによって、変数データの変数名を基本キーとする一方、制御データの変数名を外部キーとすることで変数データと制御データとが結合されて、ユーザプログラムが構成される。また、変数データの変数名を基本キーとする一方、画面データの変数名を外部キーとすることで変数データと画面データとが結合されて、ユーザ画面が構成される。
【0069】
例えば、リレーショナルデータベースは、表形式で表現されているので、ラダーエディタ32aおよび作画エディタ32bがCSV(Comma Separated Value) 形式のファイルの読み書きができるように構成されることによって、市販のデータベースソフトウェアや表計算ソフトウェアで作成されたデータを本データベースに取り込むことができ、その逆も可能である。
【0070】
このように、ユーザプログラムおよびユーザ画面が、ファイル管理部32dによる管理の下に、変数データによって互いに関連付けられているので、第1ないし第3の表示/制御システムにおける表示動作および制御動作は互いに関連する。
【0071】
プロジェクトファイル33は、リレーショナルデータベースとしてだけではなく、その他、階層型データベース、ネットワーク型データベース、オブジェクト指向型データベースなどとして構成されていてもよい。
【0072】
例えば、階層型データベースは、図7に示すように、変数名が根セグメントとして配置され、制御データ(ラダー命令)と、画面データ(部品名)と、アドレスとがその下位の従属セグメントとして配置され、さらに、グラフィックデータおよびテキストデータが画面データの下位の従属セグメントとして配置される階層構造を各変数名について形成している。また、ネットワーク型データベースでは、階層型データベースにおいて、従属セグメントが必要に応じて別の親セグメントに従属する。
【0073】
オブジェクト指向型データベースは、図8に示すように、ラダー命令(例えば、LD)、部品名(例えば、スイッチA)、変数名(例えば、SW1)およびアドレス(例えば、XB0001)がカプセル化されたスイッチなどの部品がオブジェクトとして扱われる。各オブジェクトにおいては、ラダー命令、部品名およびアドレスがデータとして扱われ、変数名が手続きとして扱われる。したがって、各データへのアクセス(各データの参照)は、変数名を介して行われる。
【0074】
ディスプレイ35は、CRT、LCDなどによって構成されるが、パネルコンピュータであるコンピュータ装置3においては、液晶パネルやELパネルのような平板型表示素子によって構成される。入力装置36は、キーボード、マウスなどの入力操作を行うための装置であり、特に、GUI(Graphical User Interface)環境上で動作するエディタ部32での入力作業にはマウスなどの装置が適している。外部記憶装置37は、ハードディスク装置などの磁気ディスクドライブ、CD−ROMドライブなどの光ディスクドライブといった装置であり、少なくとも、前記の記録媒体5に記録されたプログラムなどの情報を読み出すことができる装置を含んでいる。インターフェース部38は、プログラマブル表示器1との間でデータ通信を行う入出力部である。ラダーエディタ32aで作成されたユーザプログラムおよび作画エディタ32bで作成されたユーザ画面は、このインターフェース部38を介してプログラマブル表示器1に転送される。
【0075】
続いて、第2の表示/制御システムについて説明する。
【0076】
図9に示す第2の表示/制御システムは、前述の第1の表示/制御システムと同様、プログラマブル表示器1およびPLC2を含んでいるが、ここでのプログラマブル表示器1は、さらにPLC機能を備えており、入出力機器4…を直接制御するように構成されている。このため、プログラマブル表示器1は、メモリ部12にSRAM12cを備えるとともに、前述の通信コントローラ19に加えて入出力ユニット(図中、I/Oユニット)20およびI/O制御インターフェース21を備えている。
【0077】
SRAM12cは、ラダーエディタ32aによって作成されたユーザプログラムを格納するエリアを有している。また、FEPROM12bは、PLC機能を備えるために、図10に示すように、表示制御システムプログラムと、通信プロトコルと、ユーザ画面とをそれぞれ格納するエリアに加えて、制御機能プログラムとユーザプログラムとをそれぞれ格納するエリアを有している。制御機能プログラムは、シーケンス制御の基本機能を実現するためのプログラムである。
【0078】
入出力ユニット20は、入出力機器4…が接続可能となるように、多数の入出力端子、入出力回路などを備えている。I/O制御インターフェース21は、CPU11と入出力ユニット20との間の信号の授受を仲介するインターフェース回路であって、入出力メモリ、D/A変換器、A/D変換器などを備えている。
【0079】
引き続き、第3の表示/制御システムについて説明する。
【0080】
図11に示す第3表示/制御システムは、ソフトウェアで動作するいわゆるオープンコントローラ(ソフトウェアPLC)を中心として構成されている。
【0081】
オープンコントローラは、コンピュータ装置3によって構成されており、入出力機器4…を接続するために、前述の第1の表示/制御システムにおけるコンピュータ装置3のインターフェース部38の代わりに入出力ユニット(図中、I/Oユニット)39およびI/O制御インターフェース40を備えている。
【0082】
入出力ユニット39は、入出力機器4…が接続可能となるように、多数の入出力端子、入出力回路などを備えている。このような入出力ユニット39は、I/Oボードとしてコンピュータ装置3内に実装されるが、リモートI/Oとしてコンピュータ装置3の外部に独立して設けられてもよい。
【0083】
I/O制御インターフェース40は、CPU31と入出力ユニット39との間の信号の授受を仲介するインターフェース回路であって、入出力メモリ、D/A変換器、A/D変換器などを備えている。このI/O制御インターフェース40は、入出力機器4…との間で入出力されるデジタル信号またはアナログ信号をCPU31とやり取りするようになっている。
【0084】
また、コンピュータ装置3は、オープンコントローラとして機能するように、インターフェースユニット(図中、I/Fユニット)41を備えている。インターフェースユニット41は、イーサネット(登録商標)などの汎用の通信プロトコルを用いるオープンネットワーク8に対応した入出力部であり、オープンネットワーク8に接続されている。これによって、コンピュータ装置3は、オープンネットワーク8を介して他のコンピュータ装置、プログラマブル表示器、PLCなどと接続される。
【0085】
メモリ部34は、前述のSRAM12cと同様、図10に示すように、表示制御システムプログラムと、通信プロトコルと、ユーザ画面と、制御機能プログラムと、ユーザプログラムとをそれぞれ格納するエリアを有している。
【0086】
このように構成されるコンピュータ装置3は、入出力機器4…が配備されたターゲットシステムの運転時(オンライン状態)では、作成された画面や現場の様子をディスプレイ35に表示させることによってターゲットシステムの運転状況を監視するモニタとして機能するとともに、ターゲットシステムにおける入出力機器4…の制御を行う。このとき、コンピュータ装置3は、制御機能プログラムにしたがって、ラダーエディタ32aで作成され、プロジェクトファイル33に格納されているユーザプログラムを実行する。一方、コンピュータ装置3は、ターゲットシステムの非運転時(オフライン状態)において、ラダーエディタ32aまたは作画エディタ32bを起動することによってユーザプログラムまたはユーザ画面を作成するためのエディタ装置として機能する。
【0087】
ここで、第1ないし第3の表示/制御システムにおけるユーザプログラムおよびユーザ画面の作成手順について、図12ないし図16のフローチャートを参照して説明する。
【0088】
図12に示すように、先にユーザ画面を作成(作画)するか、ユーザプログラムを作成する(プログラミング)かをユーザによる入力操作に応じて判断する(S11)。先にユーザプログラムを作成する場合は、ラダーエディタ32aを用いたプログラミング処理(1)を実行し(S12)、その後、作画エディタ32bを用いた作画処理(2)を実行する(S13)。一方、先にユーザ画面を作成する場合は、作画エディタ32bを用いた作画処理(1)を実行し(S14)、その後、ラダーエディタ32aを用いたプログラミング処理(2)を実行する(S15)。
【0089】
次いで、作成されたユーザプログラムおよびユーザ画面を利用可能にするように所定の格納先に格納する(S16)。このとき、第1および第2の表示/制御システムでは、ユーザプログラムおよびユーザ画面が、一旦データファイル33に格納された後、それぞれPLC2およびプログラマブル表示器1にダウンロードされ、メモリに格納される。あるいは、第2の表示/制御システムでは、ユーザプログラムおよびユーザ画面が、一旦データファイル33に格納された後、プログラマブル表示器1にダウンロードされ、メモリ部12に格納される。第3の表示/制御システムでは、ユーザプログラムおよびユーザ画面がデータファイル33に格納される。
【0090】
なお、上記の例では、作画またはプログラミングの何れかを先に実行した後に他方を実行する手順について説明しているが、これに限らず、両方を並行して実行することも可能である。
【0091】
先にプログラミング処理(1)を実行する場合は、図13のフローチャートに示す手順にしたがう。ここでは、コンピュータ装置3において、ラダーエディタ32aおよび作画エディタ32bが起動されており、ディスプレイ35の表示部35a(図17(a)参照)には、ユーザ画面作成用のエディタ画面(第1エディタ画面)を表示するウインドウ(以降、作画ウインドウと称する)32b1 およびユーザプログラム作成用のエディタ画面(第2エディタ画面)を表示するウインドウ(以降、ラダーウインドウと称する)32a1 が同時に開いているものとする。しかしながら、先にプログラミング処理(1)を実行する際には、少なくともラダーエディタ32aが起動されていればよい。
【0092】
まず、ラダーウインドウ32a1 上にて、各入出力機器4を対象としてラダー記号を配置することによってラダー命令を記述する(S21)。次いで、記述されたラダー命令について使用する変数データ(変数名およびアドレス)を含む属性データを入力し(S22)、ラダー記号および属性データをテンポラリファイルに登録する(S23)。その後、ユーザの操作に応じてプログラミング処理を終了するか否かを判断する(S24)。ここで、終了しない場合はS21に処理を戻す一方、終了する場合は作成されたユーザプログラムをプロジェクトファイル33に登録する(S25)。
【0093】
続いて実行される作画(2)においては、図14のフローチャートに示す手順にしたがう。
【0094】
まず、ラダーウインドウ32a1 上のラダー記号がマウスなどによってドラッグされたか否かを判断し(S31)、ドラッグされた場合は、ドラッグされたラダー記号が作画ウインドウ32b1 にドロップされたか否かを判断する(S32)。ここで、ラダー記号のドロップが確認されると、ドロップされたラダー記号についての変数名をデータベースに登録されている変数データから抽出するために、プロジェクトファイル33のデータベースを検索する(S33)。
【0095】
次いで、ドラッグされたラダー記号についての変数名に含まれる機能に基づいて、その機能を有する複数のマークを含むダイアログボックスD1 (図17(c)参照)を表示する(S34)。
【0096】
その後、ダイアログボックスD1 に表示された複数のマークから1つのマークが選択されたか否かを判断する(S35)。マークが選択されている場合は、そのマークを表示し(S36)、さらにテンポラリファイルに登録する(S37)。そして、ユーザの操作に応じて作画処理を終了するか否かを判断する(S38)。ここで、終了しない場合はS31に処理を戻す一方、終了する場合は作成されたユーザ画面をプロジェクトファイル33に登録する(S39)。
【0097】
なお、S33ないしS36の処理の処理は、ユーザにマークの選択における自由度を提供するために設けられている。したがって、そのような自由度が必要なく、マークが1種類に固定されていれば、S33ないしS36の処理は不要になる。この場合、例えば、固定されたスイッチの番号データ(部品コード)を予めデータベースに登録しておく。
【0098】
ここで、図14のフローチャートの手順で行われる作画処理(2)の具体例について説明する。
【0099】
まず、図17(a)に示すように、ラダーウインドウ32a1 上には、ラダーエディタ32aによって既にスイッチ(入力)を表すラダー記号Lとランプ(出力)を表すラダー記号L′とが描画されている。これに伴って、プロジェクトファイル33は、図18に示すように、スイッチおよびランプについてのデータを登録している。具体的には、スイッチについては、変数データとして、変数名“SW1”およびアドレス“XB0001”が少なくとも登録されている。また、ランプについては、変数データとして、変数名“LAMP1”およびアドレス“YB0001”が少なくとも登録されている。
【0100】
この状態で、図17(a)に示すように、作画ウインドウ32b1 を開いておく。さらに、図17(b)に示すようにラダーウインドウ32a1 におけるラダー記号Lが作画ウインドウ32b1 にドラッグされた後にドロップされると、図18に示すように、プロジェクトファイル33から抽出された変数データがクリップボードCBに一時的に保存される。そして、作画エディタ32bが、その変数データを参照することによって、図17(c)に示すように、ダイアログボックスD1 が作画ウインドウ32b1 に表示される。
【0101】
前述のように、ラダーエディタ32aで選択かつ描画された全てのラダー記号についての変数データを含む属性データは、予めプロジェクトファイル33に登録されている。したがって、作画エディタ32bは、この変数データに基づいてダイアログボックスD1 を表示する。
【0102】
ダイアログボックスD1 におけるスイッチの機能を有する複数種類のマークの中から適当な1つのマークが選択されると、図17(d)に示すように、選択されたマークの画像Mが作画ウインドウ32b1 に表示されるとともに、属性データ(名称“SW1”および特性“ON”)を含むダイアログボックスD2 が表示される。ここで、OKボタンがクリックされると、作画ウインドウ32b1 上のマークMおよび画面データが確定し、プロジェクトファイル33におけるデータベースにスイッチのマークMについての図形データおよび変数データが関連付けられて格納される(図18参照)。
【0103】
したがって、ユーザは、作画ウインドウ32b1 上でスイッチのマークを描画する作業や必要な変数データを入力する作業を行う必要がなく、極めて容易にユーザ画面を作成することができる。
【0104】
一方、先に作画処理(1)を実行する場合は、図15のフローチャートに示す手順にしたがう。ここでは、コンピュータ装置3において、ラダーエディタ32aおよび作画エディタ32bが起動されており、ディスプレイ35の表示部35a(図19(a)参照)には、ラダーウインドウ32a1 および作画ウインドウ32b1 が同時に開いているものとする。しかしながら、先に作画処理(1)を実行する際には、少なくとも作画エディタ32bが起動されていればよい。
【0105】
まず、作画ウインドウ32b1 上にて、各入出力機器4を対象としてマークを配置する(S41)。次いで、配置されたマークについて使用する変数データを含む属性データを入力し(S42)、マークおよび属性データをテンポラリファイルに登録する(S43)。その後、ユーザの操作に応じてプログラミング処理を終了するか否かを判断する(S44)。ここで、終了しない場合はS41に処理を戻す一方、終了する場合は作成されたユーザ画面をプロジェクトファイル33に登録する(S45)。
【0106】
続いて実行されるプログラミング処理(2)は、図16のフローチャートに示す手順にしたがう。
【0107】
まず、作画ウインドウ32b1 上のマークがドラッグされたか否かを判断し(S51)、ドラッグされた場合は、ドラッグされたマークがラダーウインドウ32a1 にドロップされたか否かを判断する(S52)。ここで、マークのドロップが確認されると、ドロップされたマークについての変数名をデータベースに登録されている変数データから抽出するために、プロジェクトファイル33のデータベースを検索する(S53)。
【0108】
次いで、ドラッグされたマークについての属性データに含まれる機能に基づいて、その機能に対応するラダー記号とともに、上記の属性データ(少なくとも変数名)を表示する(S54)。その後、表示されたラダー記号をテンポラリファイルに登録する(S55)。そして、ユーザの操作に応じてプログラミング処理を終了するか否かを判断する(S56)。ここで、終了しない場合はS52に処理を戻す一方、終了する場合は作成されたユーザプログラムをプロジェクトファイル33に登録する(S57)。
【0109】
ここで、図16のフローチャートの手順で行われるプログラミング処理(2)の具体例について説明する。
【0110】
まず、図19(a)に示すように、作画ウインドウ32b1 上には、作画エディタ32bによって既にスイッチ(入力)を表すマークMが配置かつ描画されている。これに伴って、プロジェクトファイル33は、図20に示すように、スイッチについてのデータを登録している。具体的には、スイッチについては、変数データとして、変数名“SW1”およびアドレス“XB0001”が少なくとも登録されている。
【0111】
この状態で、図19(a)に示すように、ラダーウインドウ32a1 を開いておく。さらに、図19(b)に示すように作画ウインドウ32b1 におけるマークMがラダーウインドウ32a1 にドラッグされた後にドロップされると、図20に示すように、プロジェクトファイル33から抽出された変数データがクリップボードCBに一時的に保存される。そして、ラダーエディタ32aが、その変数データを参照することによって、図19(c)に示すように、ラダー記号LおよびダイアログボックスD3 がラダーウインドウ32a1 に表示される。
【0112】
前述のように、作画エディタ32bで配置された全てのマークについての変数データを含む属性データは、予めプロジェクトファイル33に登録されている。したがって、ラダーエディタ32aは、この変数データに基づいてダイアログボックスD3 を表示する。
【0113】
具体的には、スイッチの機能に対応するラダー記号Lがラダーウインドウ32a1 に描画されるとともに、変数データ(変数名“SW1”)を含むダイアログボックスD3 が表示される。ここで、ダイアログボックスD3 のOKボタンがクリックされると、ラダーウインドウ32a1 上のラダー記号Lおよび制御データが確定し、プロジェクトファイル33に、スイッチのラダー記号Lについての制御データおよび変数データが関連付けられて格納される(図20参照)。
【0114】
したがって、ユーザは、ラダーウインドウ32a1 上でスイッチのラダー記号を描画する作業や必要な属性データを入力する作業を行う必要がなく、極めて容易にユーザプログラムを作成することができる。
【0115】
上記のように、本実施の形態に係る第1ないし第3の表示/制御システムは、ユーザプログラムおよびユーザ画面に共通する属性データ(特に変数データ)と、ユーザプログラムに固有の制御データと、ユーザ画面に固有の画面データとをプロジェクトファイル33に格納して統合的に管理するファイル管理部32dを備えている。また、これらの表示/制御システムは、複写機能部32cによって、ラダー記号またはマークのドラッグ&ドロップ動作に伴って、ラダーエディタ32aに制御データを生成させるとともにラダー記号を描画させる一方、作画エディタ32bに画面データを生成させるとともにマークを描画させるように構成されている。
【0116】
これにより、全てのデータを単一のプロジェクトファイル33で管理することができ、データ管理を容易に行うことができる。また、データをラダーエディタ32aと作画エディタ32bとについて別個のファイルに格納する構成に比べて、変数データをそれぞれのファイルに持つためのファイル間でデータを複写するといった操作は必要ない。また、ユーザプログラムおよびユーザ画面をプロジェクトファイル33からプログラマブル表示器1などに一度でダウンロードすることも可能になる。さらに、データをプロジェクトファイル33で管理することによって、前述のような各種のデータベースを用途に応じて構成することができる。
【0117】
なお、本発明は、ラダー図だけではなく、前述のIEC 6 1131-3 で規定された5言語を含む他の言語によるプログラミングにおいても適用されるのは勿論である。
【0118】
また、本実施の形態では、ラダーウインドウと作画ウインドウとが同一のディスプレイに表示される例について説明したが、図21に示すように、ラダーウインドウと作画ウインドウとがネットワークを介して異なる機種のデータベースを基に表示される場合も本発明の適用が可能である。
【0119】
本発明のエディタ装置は、制御対象機器の状態を表示する表示機能部と、該制御対象機器の動作を制御する制御機能部とを有する表示/制御システムを対象として、上記表示機能部が実行する表示の内容を定めるための表示内容プログラムを第1エディタ画面上での入力操作に応じて作成する第1エディタ手段と、上記制御機能部が実行する制御の手順を定めるための制御手順プログラムを第2エディタ画面上での入力操作に応じて作成するための第2エディタ手段とを備えるエディタ装置であって、いずれか一方の上記第1または第2エディタ画面上で入力したデータに関して該エディタ画面上に表示されている画像ブロックを選択し、かつ他方のエディタ画面上へ複写させる操作に応じて、上記表示内容プログラムと上記制御手順プログラムとの間で共通する共通データに基づいて、上記第1または第2エディタ手段に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを生成させるデータ生成手段と、上記共通データおよび上記固有データを単一のファイルに格納するデータ統合手段とを備えていることを特徴としている。
【0120】
上記の構成では、第1エディタ手段の操作による表示内容プログラムの作成後または表示内容プログラムの作成時に、第2エディタ手段の操作による制御手順プログラムを作成する場合、データ生成手段によって、第1エディタ画面上での画像ブロックの選択およびそれを第2エディタ画面へ複写させる操作に応じて、第2エディタ手段が、共通データに基づいて固有データを生成する。一方、第2エディタ手段の操作による制御手順プログラムの作成後または制御手順プログラムの作成時に、第1エディタ手段の操作による表示内容プログラムを作成する場合、データ生成手段によって、第2エディタ画面上での画像ブロックの選択およびそれを第1エディタ画面へ複写させる操作に応じて、第1エディタ手段が、共通データに基づいて固有データを生成する。これによって、両エディタ手段によるデータの重複入力を避けることができる。
【0121】
また、上記のように生成された固有データは、データ統合手段によって、共通データとともに単一のファイルに格納される。すなわち、第1エディタ手段によって作成された表示内容プログラムおよび第2エディタ手段によって作成された制御手順プログラムは同じファイルに格納される。これによって、両プログラムに共通の単一のデータベースを作成することができる。
【0122】
上記のエディタ装置においては、上記第1エディタ手段が、上記第1エディタ画面に上記制御対象機器およびそれらの状態を表す複数の表示シンボルを上記画像ブロックとして描画するとともに、各制御対象機器に対応して設定された変数名を含む上記共通データを入力し、上記第2エディタ手段が、上記第2エディタ画面に上記制御対象機器に対応する制御動作を表す複数の制御シンボルを上記画像ブロックとして描画するとともに、上記共通データを入力し、上記データ生成手段が、上記第1または第2エディタ手段に、いずれか一方の上記第1または第2エディタ画面上で選択され、かつ他方のエディタ画面に複写された上記画像ブロックに付随する上記共通データを参照することによって、選択された画像ブロックに対応する制御対象機器と同一の制御対象機器についての画像ブロックを自動的に描画させることが好ましい。
【0123】
上記の構成では、第1エディタ手段の操作によって、制御対象機器に対応する表示シンボル(例えばマーク)が第1エディタ画面に画像ブロックとして描画されるとともに、制御対象機器に関する変数データが入力される。一方、第2エディタ手段の操作によって、制御対象機器に対応する制御シンボル(例えばラダー記号)が第1エディタ画面に画像ブロックとして描画されるとともに、制御対象機器に関する変数データが入力される。
【0124】
また、データ生成手段によって、第2エディタ手段は、第1エディタ画面から第2エディタ画面に複写された表示シンボルに付随する共通データを参照することで、選択された表示シンボルに対応する制御対象機器と同一の制御対象機器についての制御シンボルを自動的に描画する。一方、データ生成手段によって、第1エディタ手段は、第2エディタ画面から第1エディタ画面に複写された制御シンボルに付随する共通データを参照することで、選択された制御シンボルに対応する制御対象機器と同一の制御対象機器についての表示シンボルを自動的に描画する。
【0125】
このように、先に一方のエディタ手段で作成された表示シンボルまたは制御シンボルと、それらに付随する共通データとに基づいて、他方のエディタ手段での制御シンボルまたは表示シンボルの作成が行われるので、他方のエディタ手段によるそれらのシンボルの作成が容易になるとともに、該エディタ手段による共通データの入力が不要になる。
【0126】
さらに、このエディタ装置においては、上記データ統合手段が、上記制御対象機器のアドレスおよびそれに対応して設定された変数名を含む上記共通データとしての変数データと、上記制御シンボルおよびそれに対応する上記変数名を含む上記固有データとしての制御シンボルデータと、上記表示シンボルおよびそれに対応する上記変数名を含む上記固有データとしての表示シンボルデータとを、上記両シンボルデータがそれぞれ上記変数名を介して上記変数データと結合可能な形態で上記ファイルに格納することが好ましい。
【0127】
このような構成では、データ統合手段によって、両シンボルデータが変数名を介して結合可能な形態でファイルに格納されるので、異なるデータを結合する各種のデータベースを容易に構築することができる。例えば、広く普及している、扱いやすいリレーショナルデータベースだけでなく、階層型データベース、ネットワーク型データベース、オブジェクト指向型データベースの構築も可能である。
【0128】
本発明のエディタプログラムが記録された記録媒体は、制御対象機器の状態を表示する表示機能部と、該制御対象機器の動作を制御する制御機能部とを有する表示/制御システムを対象として、上記表示機能部が実行する表示の内容を定めるための表示内容プログラムを第1エディタ画面上での入力操作に応じて作成する第1エディタ処理と、上記制御機能部が実行する制御の手順を定めるための制御手順プログラムを第2エディタ画面上での入力操作に応じて作成するための第2エディタ処理とを含むエディタプログラムを記録したコンピュータ読み取り可能な記録媒体であって、上記エディタプログラムが、いずれか一方の上記第1または第2エディタ画面上で入力したデータに関して該エディタ画面上に表示されている画像ブロックを選択し、かつ他方のエディタ画面上へ複写させる操作に応じて、上記表示内容プログラムと上記制御手順プログラムとの間で共通する共通データに基づいて、上記第1または第2エディタ処理に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを生成させるデータ生成処理と、上記共通データおよび上記固有データを単一のファイルに格納するデータ統合処理とを含んでいることを特徴としている。
【0129】
この記録媒体を用いると、データ生成処理によって、本発明のエディタ装置と同様、第1または第2エディタ画面上での画像ブロックの選択およびそれを他方のエディタ画面へ複写させる操作に応じて、複写されたエディタ画面に対応するエディタが、表示内容プログラムまたは制御手順プログラムに固有の固有データを生成する。これにより、両エディタ処理によるデータの重複入力を避けることができる。そして、データ統合処理によって、その固有データと共通データとが単一のファイルに格納される。それゆえ、そのファイルにおいて共通のデータベースを作成することができる。
【0130】
本発明のエディタプログラムが記録された他の記録媒体は、制御対象機器の状態を表示する表示機能部と、該制御対象機器の動作を制御する制御機能部とを有する表示/制御システムを対象として、上記表示機能部が実行する表示の内容を定めるための表示内容プログラムを第1エディタ画面上での入力操作に応じて作成する第1エディタ処理または上記制御機能部が実行する制御の手順を定めるための制御手順プログラムを第2エディタ画面上での入力操作に応じて作成するための第2エディタ処理のいずれか一方を含むエディタプログラムが記録されたコンピュータ読み取り可能な記録媒体であって、上記エディタプログラムが、いずれか一方の上記第1または第2エディタ画面上で入力したデータに関して該エディタ画面上に表示されている画像ブロックを選択し、かつ他方のエディタ画面上へ複写させる操作に応じて、上記表示内容プログラムと上記制御手順プログラムとの間で共通する共通データに基づいて、上記第1または第2エディタ処理に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを生成させるデータ生成処理と、上記共通データおよび上記固有データを単一のファイルに格納するデータ統合処理とを含んでいることを特徴としている。
【0131】
この記録媒体を用いれば、前記の記録媒体と同様、データ生成処理によって、画像ブロックの選択および複写操作に応じて、表示内容プログラムまたは制御手順プログラムに固有の固有データが生成されるので、両エディタ処理によるデータの重複入力を避けることができる。また、データ統合処理によって、その固有データと共通データとが単一のファイルに格納されて、共通のデータベースを作成することができる。さらに、この記録媒体によれば、第1または第2エディタ処理のいずれか一方とデータ複写処理とを含んでいる2種類のエディタプログラム、すなわち第1または第2エディタプログラムを提供することができる。
【0132】
上記の両記録媒体は、上記第1エディタ処理が、上記第1エディタ画面に上記制御対象機器およびそれらの状態を表す複数の表示シンボルを上記画像ブロックとして描画するとともに、各制御対象機器に対応して設定された変数名を含む上記共通データを入力し、上記第2エディタ処理が、上記第2エディタ画面に上記制御対象機器に対応する制御動作を表す複数の制御シンボルを上記画像ブロックとして描画するとともに、上記共通データを入力し、上記データ生成処理が、上記第1または第2エディタ処理に、いずれか一方の上記第1または第2エディタ画面上で選択され、かつ他方のエディタ画面に複写された上記画像ブロックに付随する上記共通データを参照することによって、選択された画像ブロックに対応する制御対象機器と同一の制御対象機器についての画像ブロックを自動的に描画させることが好ましい。
【0133】
このような記録媒体を用いれば、前述のエディタ装置と同様、第1エディタ処理による表示シンボルの描画および変数データの入力が行われる一方、第2エディタ処理による制御シンボルの描画および変数データの入力が行われる。また、データ生成処理によって、第2エディタ処理が、変数データを参照することで、選択された表示シンボルに対応する制御対象機器と同一の制御対象機器についての制御シンボルを自動的に描画する一方、第1エディタ処理が、変数データを参照することで、選択された制御シンボルに対応する制御対象機器と同一の制御対象機器についての表示シンボルを自動的に描画する。それゆえ、他方のエディタ処理による表示または制御シンボルの作成が容易になるとともに、そのエディタでの変数データの入力が不要になる。
【0134】
また、この両記録媒体では、上記データ統合処理が、上記制御対象機器のアドレスおよびそれに対応して設定された変数名を含む上記共通データとしての変数データと、上記制御シンボルおよびそれに対応する上記変数名を含む上記固有データとしての制御手順データと、上記表示シンボルおよびそれに対応する上記変数名を含む上記固有データとしての表示内容データとを、上記両シンボルデータがそれぞれ上記変数名を介して上記変数データと結合可能な形態で上記ファイルに格納することが好ましい。
【0135】
これにより、前述のエディタ装置と同様、データ統合処理によって、両シンボルデータが変数名を介して結合可能な形態でファイルに格納されるので、異なるデータを結合する各種のデータベースを容易に構築することができる。
【0136】
以上のように、本発明のエディタ装置は、制御対象機器の状態を表示する表示内容を定めるための表示内容プログラムを作成する第1エディタ手段と、上記制御対象機器を制御する制御手順を定めるための制御手順プログラムを作成する第2エディタ手段と、上記表示内容プログラムに固有の固有データと各制御対象機器に対応する所望の入出力番号に予め対応づけられている変数を定義する変数名とを含む画面データ、上記制御手順プログラムに固有の固有データと上記変数名とを含む制御データ、および上記表示内容プログラムと上記制御手順プログラムとの間で共通し、上記変数名および上記入出力番号からなっている共通データを統合して格納するファイルと、上記ファイルから検索することによって得られた上記共通データの上記変数名に基づいて、上記第1または第2エディタ手段に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを上記ファイルにおいて生成させるデータ生成手段とを備えている構成である。
【0137】
これにより、一方のエディタ手段によって共通データが入力されていれば、その共通データの変数名を用いて他方のエディタ手段によって固有データを生成することができる。したがって、両エディタ手段によるデータの重複入力を避けることができる。
【0138】
本発明の記録媒体は、制御対象機器の状態を表示する表示内容を定めるための表示内容プログラムを作成する第1エディタ処理と、上記制御対象機器を制御する制御手順を定めるための制御手順プログラムを作成する第2エディタ処理と、上記表示内容プログラムに固有の固有データと各制御対象機器に対応する所望の入出力番号に予め対応づけられている変数を定義する変数名とを含む画面データと、上記制御手順プログラムに固有の固有データと上記変数名とを含む制御データと、上記表示内容プログラムと上記制御手順プログラムとの間で共通し、上記変数名および上記入出力番号からなっている共通データとを統合して格納するファイルから検索することによって得られた上記共通データの上記変数名に基づいて、上記第1または第2エディタ処理に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを上記ファイルにおいて生成させるデータ生成処理とを含んでいることを特徴とするエディタプログラムを記録している。
【0139】
また、本発明の他の記録媒体は、制御対象機器の状態を表示する表示内容を定めるための表示内容プログラムを作成する第1エディタ処理または上記制御対象機器を制御する制御手順を定めるための制御手順プログラムを作成する第2エディタ処理のいずれか一方と、上記表示内容プログラムに固有の固有データと各制御対象機器に対応する所望の入出力番号に予め対応づけられている変数を定義する変数名とを含む画面データと、上記制御手順プログラムに固有の固有データと上記変数名とを含む制御データと、上記表示内容プログラムと上記制御手順プログラムとの間で共通し、上記変数名および上記入出力番号からなっている共通データとを統合して格納するファイルから検索することによって得られた上記共通データの上記変数名に基づいて、上記第1または第2エディタ処理に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを上記ファイルにおいて生成させるデータ生成処理とを含んでいることを特徴とするエディタプログラムを記録している。
【0140】
これにより、データ生成処理によって、本発明のエディタ装置と同様、第1または第2エディタ処理が、表示内容プログラムまたは制御手順プログラムに固有の固有データを生成する。したがって、両エディタ処理によるデータの重複入力を避けることができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態に係る第1の表示/制御システムの構成を示すブロック図である。
【図2】上記第1の表示/制御システムにおけるプログラマブル表示器のFEPROMに格納されるプログラムを示す説明図である。
【図3】上記プログラマブル表示器などで表示されるユーザ画面に含まれる処理指示語の基本的フォーマットを示す説明図である。
【図4】上記プログラマブル表示器の表示動作の処理手順を示すフローチャートである。
【図5】(a)ないし(c)は、それぞれ第1ないし第3の表示/制御システムにおけるコンピュータ装置で実行される属性データの複写のために用いられるデータ構造、このデータ構造におけるオブジェクトタイプおよび上記データ構造におけるアドレス情報を示す説明図である。
【図6】上記コンピュータ装置のプロジェクトファイルにおいて形成されるデータベースの形態を示す説明図である。
【図7】上記コンピュータ装置のプロジェクトファイルにおいて形成される他のデータベースの形態を示す説明図である。
【図8】上記コンピュータ装置のプロジェクトファイルにおいて形成されるさらに他のデータベースの形態を示す説明図である。
【図9】本発明の実施の一形態に係る第2の表示/制御システムの構成を示すブロック図である。
【図10】第2および第3の表示/制御システムにおけるプログラマブル表示器のFEPROMに格納されるプログラムを示す説明図である。
【図11】本発明の実施の一形態に係る第3の表示/制御システムの構成を示すブロック図である。
【図12】上記第1ないし第3の表示/制御システムにおけるコンピュータ装置で実行されるエディタ処理の手順を示すフローチャートである。
【図13】上記エディタ処理において先に実行されるプログラミングの手順を示すフローチャートである。
【図14】図12のプログラミング処理の後に実行される作画処理の手順を示すフローチャートである。
【図15】上記エディタ処理において先に実行される作画処理の手順を示すフローチャートである。
【図16】図15の作画処理の後に実行されるプログラミングの手順を示すフローチャートである。
【図17】(a)ないし(d)は図14の手順の具体例を示す説明図である。
【図18】図17の手順にしたがって実行される処理の具体的な形態を示す説明図である。
【図19】(a)ないし(c)は図16の手順の具体例を示す説明図である。
【図20】図19の手順にしたがって実行される処理の具体的な形態を示す説明図である。
【図21】コピー&ペーストによる属性データの複写およびそれに伴うラダー記号またはマークの表示例を示す説明図である。
【符号の説明】
1 プログラマブル表示器(表示機能部、制御機能部)
2 PLC(制御機能部)
3 コンピュータ装置(表示機能部、制御機能部)
4 入出力機器(制御対象機器)
5 記録媒体
32a ラダーエディタ(第2エディタ手段)
32b 作画エディタ(第1エディタ手段)
32c 複写機能部(データ生成手段)
32d ファイル管理部
33 プロジェクトファイル(ファイル)
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an editor device for programming display contents according to a state of a control target device and a control procedure of the control target device in a system having a function of displaying the state of the control target device and a function of controlling the operation of the control target device. The present invention also relates to a recording medium on which an editor program is recorded.
[0002]
[Prior art]
An industrial control device called a programmable logic controller (hereinafter referred to as PLC) or the like is a hardware part mainly including a CPU and a memory and software for controlling the control in order to realize various controls including sequence control. And have a part. The software part includes design of a sequence control flow for operating the PLC in accordance with the control system at the time of design, conversion of the control flow into an instruction word, writing of the instruction word into a memory, and the like. In general, this series of operations is called programming.
[0003]
In such programming, a unique language is used so that it is easy to create a program without having expertise in computers, and various programming languages that are easy to use for users will be developed one after another. became. At present, a standard programming language has been established in the International Electrotechnical Commission (IEC) (IEC 61131-3). The five languages are SFC (Sequential Function Chart), LD (Ladder Diagram), IL (Instruction List), FBD (Function Block Diagram) and ST (Structured Text).
[0004]
As described above, an environment is being prepared so that program development can be performed using various programming languages. For example, a ladder diagram (LD) has been widely used in the past because a ladder circuit can be designed relatively easily using relay symbols, and is still the most frequently used programming language. Programming software such as a ladder editor has become widespread as a programming tool used in programming work using such a programming language. Since this software can create a ladder diagram or the like in a form including a symbol in a computer device such as a personal computer, the program can be easily created and edited.
[0005]
On the other hand, the programmable display is an operation display having a dot display screen, an operation input switch, an interface with a host controller (PLC), a program memory for control such as operation input on the screen, and the like. . In general, since the programmable display performs graphic display, it can be provided with functions such as an operation panel, a switch, and an indicator lamp, as well as various monitors for management such as the operating status and work instructions of the control target device, It has a function as a terminal for inputting setting values for the device.
[0006]
In recent years, a programmable display device having a PLC control function by mounting an input / output unit for connecting a device to be controlled has also appeared.
[0007]
The control screen (display content program) displayed on such a programmable display can be created by the user by using screen creation software (drawing editor). When creating a screen, the user configures a desired control screen using components (marks) such as a switch, a numeric keypad, a meter display, and a graph display provided by screen design software in a personal computer or the like, a drawing function, and the like.
[0008]
The created control screen is transferred to the programmable display device as screen data and stored. When the PLC is in operation, the programmable display device displays each component or figure on the control screen according to the operation state of the control target device based on data exchanged with the PLC.
[0009]
Incidentally, the creation of a control procedure program (programming) using a ladder editor or the like and the creation of a display content program (screen creation) using a drawing editor are generally performed independently. For example, when creating a display content program based on the created control procedure program, create a design document in which the names and addresses entered for each device at the time of creation of the control procedure program are written down in the form of a table. In addition, while referring to the design material, a display content program including I / O address definition is created. Similarly, when creating a control procedure program based on the created display content program, work is performed based on design materials prepared in advance.
[0010]
However, in such a method, since the input work for creating the display content program is required separately from the input work for creating the control procedure program, much time and labor are required. In addition, since the other program is created while referring to the design material corresponding to one program, there is a possibility that an erroneous input may occur when the other program is created, and it becomes difficult to debug the program due to the erroneous input. Furthermore, design materials corresponding to the created program must be prepared in advance, which has the disadvantage of reducing work efficiency.
[0011]
As an invention made to eliminate such inconvenience, Japanese Patent Application Laid-Open No. 11-175326 discloses a ladder symbol and a screen arranged between a ladder editor that creates a ladder diagram and a drawing editor that creates a screen. An editor device that associates marks is disclosed. In this editor device, for example, by dragging and dropping a symbol of a ladder diagram into a drawing window of the drawing editor, the name and address of a control target device common to at least one mark corresponding to the symbol and the symbol are included. The attribute data is stored in the common database, and a mark corresponding to the symbol dragged to the drawing window with reference to the attribute data is displayed.
[0012]
[Problems to be solved by the invention]
However, in the editor device disclosed in the above publication, by sharing data, it is possible to avoid re-entry of duplicate data between the ladder editor and the drawing editor, but a common database for storing attribute data is provided. It is necessary to provide a ladder file for the ladder editor and a screen file for the drawing editor separately. In addition, when the created ladder diagram (user program) and screen (user screen) are finally registered in the ladder file and the screen file, respectively, the attribute data is stored in both files. Duplicate data will be registered.
[0013]
As described above, the conventional editor device has a disadvantage that the database is not efficiently used because the data is managed by the dedicated file.
[0014]
The present invention has been made in view of the above circumstances, and can efficiently use a database while maintaining the operability of a conventional editor device capable of avoiding redundant input of data. An object is to provide an editor device and a recording medium in which an editor program is recorded.
[0015]
[Means for Solving the Problems]
In order to solve the above problems, an editor device of the present invention includes a first editor means for creating a display content program for defining display content for displaying a state of a control target device, and control for controlling the control target device. Second editor means for creating a control procedure program for determining the procedure, unique data unique to the display content program, and each control target device Define a variable that is pre-associated with the desired input / output number corresponding to Screen data including a variable name, control data including unique data unique to the control procedure program and the variable name, and the variable name common to the display content program and the control procedure program And the above input / output numbers Integrate and store common data Files and Based on the variable name of the common data obtained by searching from the file, unique data specific to the display content program or the control procedure program is generated in the file in the first or second editor means. And a data generation means for making it possible.
[0016]
In the above configuration, screen data, control data, and common data are integrated and stored in a single file. When the variable name of the common data is obtained by searching from this file, the first or second editor means generates unique data based on the variable name by the data generating means. Therefore, if common data is input by one editor means, unique data can be generated by the other editor means using the variable name of the common data. Thereby, it is possible to avoid redundant input of data by both editor means.
[0020]
In order to solve the above-described problems, the recording medium of the present invention includes a first editor process for creating a display content program for defining display content for displaying the state of a control target device, and control for controlling the control target device. Second editor process for creating a control procedure program for determining the procedure, unique data unique to the display content program, and each control target device Define a variable that is pre-associated with the desired input / output number corresponding to Screen data including a variable name, control data including unique data unique to the control procedure program and the variable name, and common to the display content program and the control procedure program. And the above input / output numbers Integrate and store common data File Data generation that causes the first or second editor process to generate unique data specific to the display content program or the control procedure program in the file based on the variable name of the common data obtained by searching from An editor program characterized by including processing is recorded.
[0021]
When this recording medium is used, the first or second editor process generates unique data unique to the display content program or the control procedure program by the data generation process as in the editor device of the present invention. Thereby, it is possible to avoid duplicate data input by both editor processes.
[0022]
Another recording medium of the present invention is a first editor process for creating a display content program for defining a display content for displaying a state of a control target device or a control for determining a control procedure for controlling the control target device. Any one of the second editor processes for creating a procedure program, unique data unique to the display content program, and each control target device Define a variable that is pre-associated with the desired input / output number corresponding to Screen data including a variable name, control data including unique data unique to the control procedure program and the variable name, and common to the display content program and the control procedure program. And the above input / output numbers Integrate and store common data File Data generation that causes the first or second editor process to generate unique data specific to the display content program or the control procedure program in the file based on the variable name of the common data obtained by searching from An editor program characterized by including processing is recorded.
[0023]
If this recording medium is used, unique data specific to the display content program or the control procedure program is generated by the data generation process, as in the case of the recording medium described above, so that it is possible to avoid redundant input of data by both editor processes. . Further, according to this recording medium, it is possible to provide two types of editor programs including either the first or second editor process and the data copying process, that is, the first or second editor program.
[0024]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described with reference to FIGS. 1 to 21 as follows.
[0025]
The display / control system according to the present embodiment may have various configurations, but here, the first to third configurations will be described.
[0026]
First, the first display / control system shown in FIG. 1 includes a programmable display 1 and a PLC 2.
[0027]
The programmable display device 1 as a display function unit includes a CPU 11, a memory unit 12, a VRAM 13, a display 14, a graphic controller 15, a touch panel 16, a touch panel controller 17, a maintenance port 18, and a communication controller 19.
[0028]
The memory unit 12 includes memories such as a DRAM 12a and a FEPROM (Flash Erasable and Programmable ROM) 12b. The DRAM 12a is used not only for operations during arithmetic processing such as display control but also for temporary storage of data exchanged with the PLC 2. The FEPROM 12b is a rewritable read-only flash memory and plays a role of a hard disk drive in a general personal computer. A flash memory does not have a movable part and is resistant to impacts, and thus operates stably even in a poor ambient environment.
[0029]
Further, as shown in FIG. 2, the FEPROM 12b has areas for storing a display control system program, a communication protocol, and a user screen, respectively. The display control system program is a program for realizing a basic function for performing image display control. The communication protocol is a protocol used in communication processing with the PLC 2 and is uniquely determined according to the model (manufacturer) of the PLC 2. The user screen is created by a drawing editor 32b described later and downloaded to the FEPROM 12b. This user screen includes a base screen to be displayed on the display 14, mark data as an image block (display symbol), a processing instruction word W (see FIG. 3) given to each mark, and the like. Consists of a content program.
[0030]
The mark is prepared in advance as a basic imaged part such as a touch switch, a lamp, and various displays. In addition, as a mark, there is also a functional unit in which a desired moving image function is set in a rectangular area set at a desired position in order to express a dynamic change such as a switch or a numerical display at an arbitrary position on the screen. included.
[0031]
As shown in FIG. 3, the processing instruction word W included in the screen data is created for each event to be executed on the base screen. The processing instruction word W basically includes the file number F of the base screen on which the display control operation is to be executed, the event name T that specifies the operation content to be executed on the base screen, and the execution event for each execution event. And a set of reference information I made up of one or a plurality of data.
[0032]
CPU11 controls operation | movement of each part of the programmable display 1 according to the display control system program stored in the above-mentioned FEPROM12b. Further, the CPU 11 has a function of controlling communication with a computer device 3 to be described later via a maintenance port 18 to be described later. When screen data is received from the drawing editor 32b, the CPU 11 stores it in the FEPROM 12b, When the ladder program (user program) from 32a is received, it is transferred to the PLC2.
[0033]
The VRAM 13 is a memory that temporarily holds an image of the screen displayed on the display 14, and stores the image of the screen data from the FEPROM 12b as dot data in the order of display in the horizontal direction.
[0034]
The display 14 is configured by a flat display element such as a liquid crystal panel or an EL panel. The graphic controller 15 is driver software that draws an image of a screen developed in the VRAM 13 on the display 14. The touch panel 16 is provided for inputting on the display screen of the display 14, and an analog resistance film type touch panel or the like is preferable. The touch panel controller 17 converts the output voltage of the touch panel 16 into input position information and outputs it to the CPU 11.
[0035]
The maintenance port 18 is a communication port for performing communication with the computer apparatus 3 described later. On the other hand, the communication controller 19 is an interface that controls the transfer of data related to control and monitoring of the input / output devices 4... And the capture of the output data of the PLC 2 via the communication cable (for example, RS-232C). .
[0036]
The PLC 2 as the control function unit controls the operation of the input / output devices 4 according to the procedure defined by the user program (control procedure program) created by the ladder editor 32a according to the control function program by the built-in CPU unit. To do.
[0037]
In the memory in the PLC 2, the storage location of the word device and the bit device can be specified by designating an address. In the word device, input / output data is set for word data such as a numerical value, and the bit device is set for bit data such as an on / off state. With such a setting, it is possible to control the input / output devices 4 simply by accessing an arbitrary word device or bit device in the PLC 2 or to individually retrieve information regarding the operation state.
[0038]
The programmable display 1 reads necessary information among the state information indicated by the bit device or the word device into the memory unit 12 in a timely manner, while repeatedly reading the processing instruction word W and causing an event of each processing instruction word W. The operation specified by the name T is executed while referring to the state information on the PLC 2 side. As a result, a display operation that changes according to a change in the state of the bit device or the word device is executed.
[0039]
The display operation of the programmable display 1 is performed according to the procedure of the flowchart shown in FIG.
[0040]
First, either an online mode capable of communicating with the PLC 2 or an offline mode in which only the programmable display 1 is operated is selected (S1). When the offline mode is selected (NO), the programmable display 1 performs various processes such as a setting process and a diagnostic process (S6), and returns the process to S1.
[0041]
When the online mode is selected in S1 (YES), the state information on the PLC 2 side quoted in the processing instruction word W set in the memory unit 12 of the programmable display 1 as the starting process is the programmable display 1 Take out to the side. Specifically, the word device and bit set in the PLC 2 from information included in the processing instruction word W related to the currently displayed base screen among the processing instruction words W... Stored in the memory unit 12. The device address is extracted. Then, by directly accessing the memory of the PLC 2 based on the address, the addressed status information is expanded in the memory unit 12 and displayed on the operation screen. In the online mode, it is determined whether or not there is an input operation on the operation panel screen displayed on the programmable display 1 (S2). Here, if there is an input operation, predetermined calculation processing is executed based on the input data (S3), and further data communication processing is performed (S4).
[0042]
Next, display processing of each event is executed (S5). At this time, the display operation based on the status information extracted by the communication process among the process instructions W stored in the memory unit 12 is performed.
[0043]
Next, the computer device 3 will be described.
[0044]
As shown in FIG. 1, the computer apparatus 3 is configured by a general-purpose computer such as a personal computer. The computer device 3 includes a CPU 31, an editor unit 32, a project file 33, a memory unit 34, a display 35, an input device 36, an external storage device 37, and an interface unit (I / F in the figure) 38.
[0045]
The CPU 31 performs control and arithmetic processing of each unit when operating application software including the editor unit 32 on an OS (operating system) installed in the computer apparatus 3.
[0046]
The memory unit 34 includes a memory such as a RAM and a ROM, and plays a role of storing fixed data, temporarily storing data, and providing a work area when the CPU 31 performs arithmetic processing.
[0047]
The editor unit 32 includes a ladder editor 32a, a drawing editor 32b, a copy function unit 32c, and a file management unit 32d.
[0048]
The ladder editor 32a as the second editor means is programming software for creating a user program that determines the control procedure of the PLC 2 so that the input / output devices 4... Operate according to a desired sequence, and a display screen 35a of the display 35. A ladder diagram can be created by arranging ladder symbols (control symbols) corresponding to the operation of the input / output device 4 (see FIG. 17A). In the ladder editor 32a, for example, the aforementioned programming language conforming to the international standard IEC is used.
[0049]
The ladder editor 32a associates the input number and output number assigned to the input terminal and output terminal of the PLC 2 with the name (device name) of the input / output device 4 connected to each input / output terminal. Are assigned as input / output numbers (I / O assignment). The result of this allocation is stored in a project file 33 described later.
[0050]
When performing allocation, the memory unit 34 stores device names corresponding to the addresses, with the input number and output number as addresses. Conventionally, such allocation differs depending on the manufacturer of the PLC, and is set with an absolute address. Therefore, it is necessary to prepare a memory table according to the manufacturer. However, the ladder editor 32a conforming to IEC does not require a memory table as described above because the user can determine input / output by a free variable. Moreover, the allocation once determined can be changed later.
[0051]
The user program created by the ladder editor 32a is transferred to the PLC 2 via the programmable display 1 (or directly) and downloaded to the memory in the PLC 2.
[0052]
The drawing editor 32b as the first editor means functions as a terminal through which the programmable display device 1 inputs various monitor values for management such as the operating status of the input / output devices 4. Is a screen creation software for creating a screen to be displayed on the display 14. In general, the drawing editor 32b has components (marks) such as switches, lamps, numeric keys, and various displays (for example, a numerical display, a meter display, and a graph display) so that a user-specific screen (user screen) can be created. ), Drawing function, text input function, etc. The drawing editor 32b assigns the input / output numbers (addresses) to the respective input / output devices 4 of the marks arranged on the created screen.
[0053]
The user screen created in this way is stored in a project file 33 described later, transferred to the programmable display device 1 via the interface unit 38 as necessary, and downloaded to the FEPROM 12b.
[0054]
The copy function unit 32c as data generation means uses the data copy function of the OS to display a ladder symbol in the ladder diagram created by the ladder editor 32a and a mark corresponding to the corresponding mark via variable data to be described later. 1 The drawing editor 32b automatically generates (draws). Similarly, the copy function unit 32c uses the data copy function of the OS to display the corresponding ladder symbol on the screen created by the drawing editor 32b and the variable symbol via the ladder window 32a. 1 Then, the ladder editor 32a is automatically generated (drawn).
[0055]
Specifically, when a mark or ladder symbol is copied using a drag and drop or copy and paste function, attribute data is temporarily stored in a later-described clipboard CB (see FIG. 18) provided in the memory unit 34. The mark and the ladder symbol are automatically generated when the copy destination editor refers to the variable data.
[0056]
The file management unit 32d manages a user program and a user screen in a unified manner by constructing a database as described later in the project file 33.
[0057]
As shown in FIG. 5A, the data structure stored in the clipboard CB includes a header code, a memory size, an object type, a reservation, the number of address information, address information (1 to N), and a reservation. Among these, the memory size is the size of the memory required when data is stored in the clipboard CB, and the object type is a preset type of parts stored in the clipboard CB, as shown in FIG. As shown, a bit switch, toggle switch, lamp, numerical display, bar graph, pie graph, semi-circle graph, tank graph, meter graph, and set value display are set. As shown in FIG. 5C, the address information includes an address (address name), a reservation, additional address information, a reservation, an object type, and a reservation. The address additional information is information regarding the type of symbol (integer symbol, discrete symbol, etc.). The object type in the address information has the same contents as the above object type, specifies which part the address corresponds to, and turns on only the bit of the part necessary for this purpose.
[0058]
Note that the copy function unit 32c and the file management unit 32d may be included as one function of either the ladder editor 32a or the drawing editor 32b.
[0059]
The computer device 3 functions as an editor device for creating and editing user programs and user screens by including the editor unit 32.
[0060]
The editor unit 32 is software that can be provided in the form of program media as package software or custom-made software, and is recorded in the recording medium 5 that is separable from the computer device 3, for example. The editor unit 32 can exhibit an editor function by being installed in the computer device 3 from the recording medium 5.
[0061]
The editor unit 32 may be recorded on a single recording medium 5, but the ladder editor 32a and the drawing editor 32b may be recorded on separate recording media.
[0062]
The above-mentioned program media include tape systems such as magnetic tapes and cassette tapes, magnetic disk systems such as floppy disks and hard disks, optical disk systems such as CD-ROM, MO, MD, and DVD, IC cards (including memory cards), optical A card system such as a card is preferred. In addition, the program medium may be a medium that carries a fixed program including a semiconductor memory such as a mask ROM, EPROM, EEPROM, flash ROM, or the like.
[0063]
Further, since the computer apparatus 3 can be connected to a communication network including the Internet, the computer apparatus 3 may be a medium that carries the program in a fluid manner so as to download the program from the communication network. However, when the program is downloaded from the communication network in this way, the download program may be stored in the computer device 3 in advance or may be installed from another recording medium.
[0064]
As shown in FIG. 6, the project file 33 includes control data, screen data, and variable data. The user program includes control data and variable data, and the user screen includes screen data and variable data.
[0065]
The control data as unique data includes a ladder instruction (mnemonic) as control symbol data and a variable name corresponding to the input ladder symbol. Examples of variable names include codes corresponding to devices (input / output devices 4) such as SW1 corresponding to switches and LAMP1 corresponding to lamps, and event names such as operation instructions and device operating states. A variable defined by such a variable name is previously associated with a desired input / output number (I / O address) corresponding to the device.
[0066]
The screen data as the unique data includes graphic data, text data, and component data. The graphic data is graphic data such as a line, a circle, an ellipse, a triangle, a quadrangle, and a filled graphic. The text data includes a user screen title and text composed of characters, symbols, and the like. The component data is data relating to the above-described component prepared in advance in the drawing editor 32b, and includes the component name as display symbol data and the variable name described above. As the part name, for example, a name such as a switch A distinguished so that a specific switch can be selected from various switches, or a part code assigned to each part (for example, a code composed of a combination of alphabets and numbers) Is mentioned. Further, the screen data includes the above-described function unit in which the moving image function is set, although not shown.
[0067]
The variable data as the common data is information common to the user program and the user screen, and includes a variable name and an address (I / O address or the like). This variable data is included in the attribute data. The variable can be set by other types such as a bit type, an integer type, and a real number type, and such data is included in the attribute data together with the variable data.
[0068]
The project file 33 shown in FIG. 6 is configured as a database including specific data that can be associated. In the project file 33, control data, screen data, and variable data are each configured as a relation table. Thus, the variable data and the control data are combined by using the variable name of the variable data as the basic key and the variable name of the control data as the external key, thereby configuring the user program. Further, by using the variable name of the variable data as a basic key and the variable name of the screen data as an external key, the variable data and the screen data are combined to form a user screen.
[0069]
For example, since the relational database is expressed in a table format, the ladder editor 32a and the drawing editor 32b are configured so that CSV (Comma Separated Value) format files can be read and written. Data created by calculation software can be imported into this database and vice versa.
[0070]
Thus, since the user program and the user screen are associated with each other by the variable data under the management of the file management unit 32d, the display operation and the control operation in the first to third display / control systems are associated with each other. To do.
[0071]
The project file 33 may be configured not only as a relational database but also as a hierarchical database, a network database, an object-oriented database, or the like.
[0072]
For example, as shown in FIG. 7, in the hierarchical database, variable names are arranged as root segments, and control data (ladder instructions), screen data (part names), and addresses are arranged as subordinate segments below it. Furthermore, a hierarchical structure in which graphic data and text data are arranged as subordinate segments below the screen data is formed for each variable name. In the network type database, in the hierarchical database, a dependent segment is subordinated to another parent segment as necessary.
[0073]
As shown in FIG. 8, the object-oriented database includes a switch in which a ladder instruction (for example, LD), a part name (for example, switch A), a variable name (for example, SW1), and an address (for example, XB0001) are encapsulated. Are treated as objects. In each object, ladder instructions, part names and addresses are treated as data, and variable names are treated as procedures. Therefore, access to each data (reference to each data) is performed via the variable name.
[0074]
The display 35 is configured by a CRT, LCD, or the like, but the computer device 3 that is a panel computer is configured by a flat display element such as a liquid crystal panel or an EL panel. The input device 36 is a device for performing an input operation such as a keyboard and a mouse. In particular, a device such as a mouse is suitable for an input operation in the editor unit 32 operating in a GUI (Graphical User Interface) environment. . The external storage device 37 is a device such as a magnetic disk drive such as a hard disk device or an optical disk drive such as a CD-ROM drive, and includes at least a device that can read information such as a program recorded in the recording medium 5. It is out. The interface unit 38 is an input / output unit that performs data communication with the programmable display device 1. The user program created by the ladder editor 32 a and the user screen created by the drawing editor 32 b are transferred to the programmable display device 1 through the interface unit 38.
[0075]
Next, the second display / control system will be described.
[0076]
The second display / control system shown in FIG. 9 includes the programmable display 1 and the PLC 2 as in the first display / control system described above. The programmable display 1 here further has a PLC function. The input / output devices 4 are directly controlled. For this reason, the programmable display 1 includes an SRAM 12c in the memory unit 12, and an input / output unit (I / O unit in the figure) 20 and an I / O control interface 21 in addition to the communication controller 19 described above. .
[0077]
The SRAM 12c has an area for storing a user program created by the ladder editor 32a. Since the FEPROM 12b has a PLC function, as shown in FIG. 10, in addition to an area for storing a display control system program, a communication protocol, and a user screen, a control function program and a user program are respectively stored. It has an area to store. The control function program is a program for realizing the basic functions of sequence control.
[0078]
The input / output unit 20 includes a large number of input / output terminals and input / output circuits so that the input / output devices 4... Can be connected. The I / O control interface 21 is an interface circuit that mediates transmission / reception of signals between the CPU 11 and the input / output unit 20, and includes an input / output memory, a D / A converter, an A / D converter, and the like. .
[0079]
Next, the third display / control system will be described.
[0080]
The third display / control system shown in FIG. 11 is configured around a so-called open controller (software PLC) that operates by software.
[0081]
The open controller is constituted by the computer device 3, and in order to connect the input / output devices 4..., An input / output unit (in FIG. , I / O unit) 39 and I / O control interface 40.
[0082]
The input / output unit 39 includes a large number of input / output terminals and input / output circuits so that the input / output devices 4... Can be connected. Such an input / output unit 39 is mounted in the computer apparatus 3 as an I / O board, but may be independently provided outside the computer apparatus 3 as a remote I / O.
[0083]
The I / O control interface 40 is an interface circuit that mediates transmission / reception of signals between the CPU 31 and the input / output unit 39, and includes an input / output memory, a D / A converter, an A / D converter, and the like. . The I / O control interface 40 exchanges digital signals or analog signals input / output to / from the input / output devices 4 with the CPU 31.
[0084]
Further, the computer apparatus 3 includes an interface unit (I / F unit in the figure) 41 so as to function as an open controller. The interface unit 41 is an input / output unit corresponding to the open network 8 using a general-purpose communication protocol such as Ethernet (registered trademark), and is connected to the open network 8. As a result, the computer apparatus 3 is connected to another computer apparatus, a programmable display, a PLC, and the like via the open network 8.
[0085]
Similar to the SRAM 12c described above, the memory unit 34 has areas for storing a display control system program, a communication protocol, a user screen, a control function program, and a user program, respectively, as shown in FIG. .
[0086]
The computer device 3 configured as described above displays the created screen and the state of the site on the display 35 when the target system in which the input / output devices 4. In addition to functioning as a monitor for monitoring operating conditions, it controls the input / output devices 4 in the target system. At this time, the computer device 3 executes the user program created by the ladder editor 32 a and stored in the project file 33 in accordance with the control function program. On the other hand, the computer device 3 functions as an editor device for creating a user program or a user screen by activating the ladder editor 32a or the drawing editor 32b when the target system is not in operation (offline state).
[0087]
Here, a user program and user screen creation procedure in the first to third display / control systems will be described with reference to the flowcharts of FIGS.
[0088]
As shown in FIG. 12, it is determined according to the input operation by the user whether the user screen is created (drawing) or the user program is created (programming) (S11). When the user program is created first, the programming process (1) using the ladder editor 32a is executed (S12), and then the drawing process (2) using the drawing editor 32b is executed (S13). On the other hand, when the user screen is created first, the drawing process (1) using the drawing editor 32b is executed (S14), and then the programming process (2) using the ladder editor 32a is executed (S15).
[0089]
Next, the created user program and user screen are stored in a predetermined storage location so that they can be used (S16). At this time, in the first and second display / control systems, the user program and the user screen are once stored in the data file 33, then downloaded to the PLC 2 and the programmable display 1, respectively, and stored in the memory. Alternatively, in the second display / control system, the user program and the user screen are temporarily stored in the data file 33, downloaded to the programmable display device 1, and stored in the memory unit 12. In the third display / control system, the user program and the user screen are stored in the data file 33.
[0090]
In the above example, the procedure of executing one of drawing and programming first and then executing the other is described. However, the present invention is not limited to this, and both can be executed in parallel.
[0091]
When the programming process (1) is executed first, the procedure shown in the flowchart of FIG. 13 is followed. Here, in the computer apparatus 3, a ladder editor 32a and a drawing editor 32b are activated, and an editor screen (first editor screen) for creating a user screen is displayed on the display unit 35a (see FIG. 17A) of the display 35. ) (Hereinafter referred to as a drawing window) 32b 1 And a window (hereinafter referred to as a ladder window) 32a for displaying an editor screen (second editor screen) for creating a user program. 1 Are open at the same time. However, when executing the programming process (1) first, it is sufficient that at least the ladder editor 32a is activated.
[0092]
First, the ladder window 32a 1 Above, a ladder command is described by arranging ladder symbols for each input / output device 4 (S21). Next, attribute data including variable data (variable name and address) used for the described ladder instruction is input (S22), and ladder symbols and attribute data are registered in the temporary file (S23). Thereafter, it is determined whether or not to end the programming process according to the user's operation (S24). Here, if not finished, the process is returned to S21. If finished, the created user program is registered in the project file 33 (S25).
[0093]
In the subsequent drawing (2), the procedure shown in the flowchart of FIG. 14 is followed.
[0094]
First, the ladder window 32a 1 It is determined whether or not the upper ladder symbol has been dragged with a mouse or the like (S31). If dragged, the dragged ladder symbol is displayed in the drawing window 32b. 1 It is determined whether or not it has been dropped (S32). Here, when the drop of the ladder symbol is confirmed, the database of the project file 33 is searched in order to extract the variable name for the dropped ladder symbol from the variable data registered in the database (S33).
[0095]
Then, based on the function included in the variable name for the dragged ladder symbol, a dialog box D containing a plurality of marks having that function 1 (See FIG. 17C) is displayed (S34).
[0096]
Then dialog box D 1 It is determined whether one mark has been selected from the plurality of marks displayed in (S35). If the mark is selected, the mark is displayed (S36), and further registered in the temporary file (S37). Then, it is determined whether or not to end the drawing process according to the user's operation (S38). Here, if not finished, the process is returned to S31. If finished, the created user screen is registered in the project file 33 (S39).
[0097]
Note that the processing of S33 to S36 is provided to provide the user with a degree of freedom in selecting a mark. Therefore, if such a degree of freedom is not necessary and the mark is fixed to one type, the processing of S33 to S36 becomes unnecessary. In this case, for example, fixed switch number data (part code) is registered in the database in advance.
[0098]
Here, a specific example of the drawing process (2) performed in the procedure of the flowchart of FIG. 14 will be described.
[0099]
First, as shown in FIG. 17A, a ladder window 32a. 1 Above, a ladder symbol L representing a switch (input) and a ladder symbol L ′ representing a lamp (output) have already been drawn by the ladder editor 32a. Accordingly, as shown in FIG. 18, the project file 33 registers data on switches and lamps. Specifically, at least a variable name “SW1” and an address “XB0001” are registered as variable data for the switch. For the lamp, at least a variable name “LAMP1” and an address “YB0001” are registered as variable data.
[0100]
In this state, as shown in FIG. 17A, the drawing window 32b 1 Keep open. Further, as shown in FIG. 17B, a ladder window 32a. 1 The ladder symbol L in the drawing window 32b 1 As shown in FIG. 18, the variable data extracted from the project file 33 is temporarily stored in the clipboard CB. Then, the drawing editor 32b refers to the variable data, and as shown in FIG. 1 Is the drawing window 32b 1 Is displayed.
[0101]
As described above, attribute data including variable data for all ladder symbols selected and drawn by the ladder editor 32a is registered in the project file 33 in advance. Therefore, the drawing editor 32b uses the dialog box D based on the variable data. 1 Is displayed.
[0102]
Dialog box D 1 When an appropriate mark is selected from a plurality of types of marks having the function of a switch in FIG. 17, an image M of the selected mark is displayed in the drawing window 32b as shown in FIG. 1 And a dialog box D containing attribute data (name "SW1" and characteristic "ON") 2 Is displayed. Here, when the OK button is clicked, the drawing window 32b. 1 The upper mark M and screen data are confirmed, and graphic data and variable data for the switch mark M are stored in the database in the project file 33 in association with each other (see FIG. 18).
[0103]
Therefore, the user can draw the drawing window 32b. 1 There is no need to draw a switch mark or input necessary variable data above, and a user screen can be created very easily.
[0104]
On the other hand, when the drawing process (1) is executed first, the procedure shown in the flowchart of FIG. 15 is followed. Here, a ladder editor 32a and a drawing editor 32b are activated in the computer device 3, and a ladder window 32a is displayed on the display unit 35a (see FIG. 19A) of the display 35. 1 And the drawing window 32b 1 Are open at the same time. However, when the drawing process (1) is executed first, it is sufficient that at least the drawing editor 32b is activated.
[0105]
First, the drawing window 32b 1 Above, a mark is arranged for each input / output device 4 (S41). Next, attribute data including variable data to be used for the arranged mark is input (S42), and the mark and the attribute data are registered in the temporary file (S43). Thereafter, it is determined whether or not to end the programming process according to the user's operation (S44). Here, if not finished, the process returns to S41, and if finished, the created user screen is registered in the project file 33 (S45).
[0106]
The programming process (2) executed subsequently follows the procedure shown in the flowchart of FIG.
[0107]
First, the drawing window 32b 1 It is determined whether or not the upper mark has been dragged (S51). If dragged, the dragged mark is displayed in the ladder window 32a. 1 It is determined whether or not it has been dropped (S52). Here, if the drop of the mark is confirmed, the database of the project file 33 is searched in order to extract the variable name for the dropped mark from the variable data registered in the database (S53).
[0108]
Next, based on the function included in the attribute data of the dragged mark, the attribute data (at least the variable name) is displayed together with the ladder symbol corresponding to the function (S54). Thereafter, the displayed ladder symbol is registered in the temporary file (S55). Then, it is determined whether or not to end the programming process according to the user's operation (S56). Here, if not finished, the process is returned to S52. If finished, the created user program is registered in the project file 33 (S57).
[0109]
Here, a specific example of the programming process (2) performed in the procedure of the flowchart of FIG. 16 will be described.
[0110]
First, as shown in FIG. 19A, the drawing window 32b 1 On the top, a mark M representing a switch (input) is already arranged and drawn by the drawing editor 32b. Accordingly, as shown in FIG. 20, the project file 33 registers data about the switch. Specifically, at least a variable name “SW1” and an address “XB0001” are registered as variable data for the switch.
[0111]
In this state, as shown in FIG. 19A, the ladder window 32a 1 Keep open. Further, as shown in FIG. 19B, the drawing window 32b 1 The mark M at is the ladder window 32a 1 As shown in FIG. 20, the variable data extracted from the project file 33 is temporarily stored in the clipboard CB. Then, the ladder editor 32a refers to the variable data, so that a ladder symbol L and a dialog box D are displayed as shown in FIG. Three The ladder window 32a 1 Is displayed.
[0112]
As described above, attribute data including variable data for all marks arranged in the drawing editor 32b is registered in the project file 33 in advance. Therefore, the ladder editor 32a uses the dialog box D based on the variable data. Three Is displayed.
[0113]
Specifically, the ladder symbol L corresponding to the function of the switch is displayed in the ladder window 32a. 1 Draw a dialog box D containing variable data (variable name “SW1”) Three Is displayed. Where dialog box D Three When the OK button is clicked, the ladder window 32a 1 The upper ladder symbol L and control data are determined, and the control data and variable data for the ladder symbol L of the switch are stored in the project file 33 in association with each other (see FIG. 20).
[0114]
Therefore, the user can enter the ladder window 32a. 1 There is no need to perform the work of drawing the ladder symbol of the switch or the input of necessary attribute data, and the user program can be created very easily.
[0115]
As described above, the first to third display / control systems according to the present embodiment include the attribute data (particularly variable data) common to the user program and the user screen, the control data specific to the user program, the user A file management unit 32d that stores screen data unique to the screen in a project file 33 and manages them in an integrated manner is provided. These display / control systems also cause the ladder editor 32a to generate control data and draw the ladder symbol in accordance with the drag and drop operation of the ladder symbol or mark by the copy function unit 32c, while the drawing editor 32b The screen data is generated and the mark is drawn.
[0116]
Thereby, all data can be managed by the single project file 33, and data management can be easily performed. Further, as compared with a configuration in which data is stored in separate files for the ladder editor 32a and the drawing editor 32b, an operation of copying data between files for having variable data in each file is not necessary. In addition, the user program and the user screen can be downloaded from the project file 33 to the programmable display 1 or the like at a time. Furthermore, by managing data with the project file 33, various databases as described above can be configured according to the application.
[0117]
Of course, the present invention is applied not only to the ladder diagram but also to programming in other languages including the five languages defined in the above-mentioned IEC 6 1131-3.
[0118]
In this embodiment, an example in which a ladder window and a drawing window are displayed on the same display has been described. However, as shown in FIG. The present invention can also be applied when displayed based on the above.
[0119]
The editor device according to the present invention is executed by the display function unit for a display / control system including a display function unit that displays a state of a control target device and a control function unit that controls the operation of the control target device. First editor means for creating a display content program for determining the contents of display in response to an input operation on the first editor screen, and a control procedure program for defining a control procedure executed by the control function unit An editor device comprising: a second editor means for creating in response to an input operation on the editor screen, the data input on either one of the first or second editor screens on the editor screen The display content program and the control procedure program are selected according to the operation of selecting the image block displayed on the other editor screen and copying it to the other editor screen. Data generating means for causing the first or second editor means to generate unique data unique to the display content program or the control procedure program based on common data common to the program, the common data and the unique data And a data integration means for storing data in a single file.
[0120]
In the above configuration, when creating the control procedure program by operating the second editor means after creating the display content program by operating the first editor means or at the time of creating the display content program, the first editor screen is created by the data generating means. In response to the selection of the image block and the operation of copying the image block to the second editor screen, the second editor means generates unique data based on the common data. On the other hand, when a display content program is created by the operation of the first editor means after the creation of the control procedure program by the operation of the second editor means or at the time of creation of the control procedure program, on the second editor screen by the data generation means In response to the selection of the image block and the operation of copying the image block to the first editor screen, the first editor means generates unique data based on the common data. Thereby, it is possible to avoid duplicate data input by both editor means.
[0121]
The unique data generated as described above is stored in a single file together with the common data by the data integration means. That is, the display content program created by the first editor means and the control procedure program created by the second editor means are stored in the same file. As a result, a single database common to both programs can be created.
[0122]
In the editor device, the first editor means draws the control target device and a plurality of display symbols representing their states on the first editor screen as the image block, and corresponds to each control target device. The common data including the set variable name is input, and the second editor means draws a plurality of control symbols representing the control operation corresponding to the control target device as the image block on the second editor screen. The common data is input, and the data generation means is selected by the first or second editor means on one of the first or second editor screens and copied to the other editor screen. By referring to the common data associated with the image block, a control pair corresponding to the selected image block is selected. It is preferable to automatically draw the image blocks of the same control target device and the device.
[0123]
In the above configuration, a display symbol (for example, a mark) corresponding to the control target device is drawn as an image block on the first editor screen by the operation of the first editor means, and variable data related to the control target device is input. On the other hand, by operating the second editor means, a control symbol (for example, a ladder symbol) corresponding to the control target device is drawn as an image block on the first editor screen, and variable data related to the control target device is input.
[0124]
In addition, the data generation means causes the second editor means to refer to the common data associated with the display symbol copied from the first editor screen to the second editor screen, thereby controlling the control target device corresponding to the selected display symbol. The control symbol for the same control target device is automatically drawn. On the other hand, by the data generation means, the first editor means refers to the common data associated with the control symbol copied from the second editor screen to the first editor screen, thereby controlling the control target device corresponding to the selected control symbol. The display symbol for the same control target device is automatically drawn.
[0125]
In this way, since the control symbol or display symbol is created in the other editor means based on the display symbol or control symbol previously created in one editor means and the common data associated therewith, The creation of those symbols by the other editor means becomes easy, and the input of common data by the editor means becomes unnecessary.
[0126]
Furthermore, in this editor device, the data integration means includes the variable data as the common data including the address of the device to be controlled and the variable name set corresponding thereto, the control symbol and the variable corresponding thereto. The control symbol data as the specific data including the name and the display symbol data as the specific data including the display symbol and the variable name corresponding to the display symbol and the variable data via the variable name. It is preferable to store in the file in a form that can be combined with data.
[0127]
In such a configuration, since both symbol data are stored in the file in a form that can be combined via variable names by the data integration means, various databases that combine different data can be easily constructed. For example, it is possible to construct not only a widespread and easy-to-handle relational database, but also a hierarchical database, a network database, and an object-oriented database.
[0128]
A recording medium on which an editor program of the present invention is recorded is a display / control system having a display function unit that displays a state of a control target device and a control function unit that controls the operation of the control target device. To define a first editor process for creating a display content program for determining the contents of display executed by the display function unit in response to an input operation on the first editor screen, and a control procedure executed by the control function unit A computer-readable recording medium on which an editor program including a second editor process for generating the control procedure program in response to an input operation on the second editor screen is recorded. An image block displayed on the editor screen with respect to data input on one of the first or second editor screens. The display contents are displayed in the first or second editor process based on common data common between the display contents program and the control procedure program in accordance with an operation to be selected and copied onto the other editor screen. It includes a data generation process for generating unique data unique to the program or the control procedure program, and a data integration process for storing the common data and the unique data in a single file.
[0129]
When this recording medium is used, the data generation process performs copying according to the selection of the image block on the first or second editor screen and the operation of copying it to the other editor screen, as in the editor device of the present invention. The editor corresponding to the editor screen thus generated generates unique data unique to the display content program or the control procedure program. Thereby, it is possible to avoid duplicate data input by both editor processes. Then, the unique data and the common data are stored in a single file by the data integration process. Therefore, a common database can be created in the file.
[0130]
Another recording medium in which the editor program of the present invention is recorded is intended for a display / control system having a display function unit for displaying the state of a control target device and a control function unit for controlling the operation of the control target device. The first editor process for creating a display content program for determining the content of the display executed by the display function unit according to the input operation on the first editor screen or the control procedure executed by the control function unit A computer-readable recording medium on which an editor program including any one of second editor processes for creating a control procedure program for generating a control procedure program in response to an input operation on the second editor screen is recorded. The program is displayed on the editor screen with respect to the data entered on either one of the first or second editor screens. The first or second editor process based on common data common between the display content program and the control procedure program in response to an operation of selecting an image block and copying it to the other editor screen Including a data generation process for generating unique data unique to the display content program or the control procedure program, and a data integration process for storing the common data and the unique data in a single file. Yes.
[0131]
If this recording medium is used, both the editors can generate unique data specific to the display content program or the control procedure program in accordance with the image block selection and copying operations by the data generation process, as in the case of the recording medium. Duplicate data input due to processing can be avoided. In addition, by the data integration process, the unique data and the common data are stored in a single file, and a common database can be created. Furthermore, according to this recording medium, it is possible to provide two types of editor programs including either the first or second editor process and the data copying process, that is, the first or second editor program.
[0132]
In both the recording media described above, the first editor process draws the control target device and a plurality of display symbols representing their states on the first editor screen as the image block, and corresponds to each control target device. The common data including the set variable name is input, and the second editor process renders a plurality of control symbols representing the control operation corresponding to the control target device as the image block on the second editor screen. In addition, the common data is input, and the data generation processing is selected on the first or second editor screen for the first or second editor processing and copied to the other editor screen. By referring to the common data associated with the image block, the same control target device as that corresponding to the selected image block is used. Automatically cause is preferably draws an image block of the control target apparatuses.
[0133]
When such a recording medium is used, drawing of display symbols and input of variable data are performed by the first editor process, and control symbols are drawn and variable data are input by the second editor process, as in the above-described editor device. Done. Further, by the data generation process, the second editor process automatically draws a control symbol for the same control target device as the control target device corresponding to the selected display symbol by referring to the variable data, The first editor process automatically draws a display symbol for the same control target device as the control target device corresponding to the selected control symbol by referring to the variable data. Therefore, display by the other editor process or creation of a control symbol is facilitated, and input of variable data in the editor becomes unnecessary.
[0134]
In both the recording media, the data integration processing includes the variable data as the common data including the address of the device to be controlled and the variable name set corresponding thereto, the control symbol and the variable corresponding thereto. The control procedure data as the specific data including the name and the display content data as the specific data including the display symbol and the variable name corresponding to the display symbol and the variable data via the variable name. It is preferable to store in the file in a form that can be combined with data.
[0135]
Thus, as with the editor device described above, both symbol data are stored in the file in a form that can be combined via variable names by data integration processing, so various databases that combine different data can be easily constructed. Can do.
[0136]
As described above, the editor device of the present invention is for defining the first editor means for creating the display content program for determining the display content for displaying the state of the control target device and the control procedure for controlling the control target device. Second editor means for creating the control procedure program, unique data unique to the display content program, and each control target device Define a variable that is pre-associated with the desired input / output number corresponding to Screen data including a variable name, control data including unique data unique to the control procedure program and the variable name, and the variable name common to the display content program and the control procedure program And the above input / output numbers Integrate and store common data File On the basis of the variable name of the common data obtained by searching from the file, unique data specific to the display content program or the control procedure program is stored in the first or second editor means in the file. And a data generation means to be generated.
[0137]
Thus, if common data is input by one editor means, unique data can be generated by the other editor means using the variable name of the common data. Therefore, it is possible to avoid duplicate data input by both editor means.
[0138]
The recording medium of the present invention includes a first editor process for creating a display content program for defining a display content for displaying a state of a control target device, and a control procedure program for determining a control procedure for controlling the control target device. Second editor process to be created, unique data unique to the display content program, and each control target device Define a variable that is pre-associated with the desired input / output number corresponding to Screen data including a variable name, control data including unique data unique to the control procedure program and the variable name, and common to the display content program and the control procedure program. And the above input / output numbers Integrate and store common data File Data generation that causes the first or second editor process to generate unique data specific to the display content program or the control procedure program in the file based on the variable name of the common data obtained by searching from An editor program characterized by including processing is recorded.
[0139]
Another recording medium of the present invention is a first editor process for creating a display content program for defining a display content for displaying a state of a control target device or a control for determining a control procedure for controlling the control target device. Any one of the second editor processes for creating a procedure program, unique data unique to the display content program, and each control target device Define a variable that is pre-associated with the desired input / output number corresponding to Screen data including a variable name, control data including unique data unique to the control procedure program and the variable name, and common to the display content program and the control procedure program. And the above input / output numbers Integrate and store common data File Data generation that causes the first or second editor process to generate unique data specific to the display content program or the control procedure program in the file based on the variable name of the common data obtained by searching from An editor program characterized by including processing is recorded.
[0140]
Thereby, by the data generation process, the first or second editor process generates unique data unique to the display content program or the control procedure program as in the editor device of the present invention. Therefore, it is possible to avoid duplicate data input by both editor processes.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a first display / control system according to an embodiment of the present invention.
FIG. 2 is an explanatory diagram showing a program stored in an FEPROM of a programmable display in the first display / control system.
FIG. 3 is an explanatory diagram showing a basic format of a processing instruction word included in a user screen displayed on the programmable display or the like.
FIG. 4 is a flowchart showing a processing procedure of display operation of the programmable display device.
FIGS. 5A to 5C are respectively a data structure used for copying attribute data executed by a computer apparatus in the first to third display / control systems, an object type in the data structure, and It is explanatory drawing which shows the address information in the said data structure.
FIG. 6 is an explanatory diagram showing a form of a database formed in a project file of the computer device.
FIG. 7 is an explanatory diagram showing another database form formed in the project file of the computer device.
FIG. 8 is an explanatory diagram showing still another database form formed in the project file of the computer device.
FIG. 9 is a block diagram showing a configuration of a second display / control system according to an embodiment of the present invention.
FIG. 10 is an explanatory diagram showing a program stored in the FEPROM of the programmable display in the second and third display / control systems.
FIG. 11 is a block diagram showing a configuration of a third display / control system according to an embodiment of the present invention.
FIG. 12 is a flowchart showing a procedure of editor processing executed by a computer device in the first to third display / control systems.
FIG. 13 is a flowchart showing a programming procedure executed first in the editor process.
14 is a flowchart showing a procedure of a drawing process executed after the programming process of FIG.
FIG. 15 is a flowchart showing a procedure of a drawing process executed first in the editor process.
FIG. 16 is a flowchart showing a programming procedure executed after the drawing process of FIG. 15;
FIGS. 17A to 17D are explanatory views showing a specific example of the procedure of FIG.
FIG. 18 is an explanatory diagram showing a specific form of processing executed according to the procedure of FIG. 17;
FIGS. 19A to 19C are explanatory views showing a specific example of the procedure of FIG.
20 is an explanatory diagram showing a specific form of processing executed in accordance with the procedure of FIG.
FIG. 21 is an explanatory diagram showing a copy example of attribute data by copy and paste and a display example of a ladder symbol or mark associated therewith.
[Explanation of symbols]
1 Programmable display (display function part, control function part)
2 PLC (control function part)
3 Computer devices (display function section, control function section)
4 Input / output devices (devices to be controlled)
5 recording media
32a Ladder editor (second editor means)
32b Drawing editor (first editor means)
32c Copy function unit (data generation means)
32d File Management Department
33 Project file (file)

Claims (3)

制御対象機器の状態を表示する表示内容を定めるための表示内容プログラムを作成する第1エディタ手段と、
上記制御対象機器を制御する制御手順を定めるための制御手順プログラムを作成する第2エディタ手段と、
上記表示内容プログラムに固有の固有データと各制御対象機器に対応する所望の入出力番号に予め対応づけられている変数を定義する変数名とを含む画面データ、上記制御手順プログラムに固有の固有データと上記変数名とを含む制御データ、および上記表示内容プログラムと上記制御手順プログラムとの間で共通し、上記変数名および上記入出力番号からなっている共通データを統合して格納するファイルと、
上記ファイルから検索することによって得られた上記共通データの上記変数名に基づいて、上記第1または第2エディタ手段に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを上記ファイルにおいて生成させるデータ生成手段とを備えていることを特徴とするエディタ装置。
First editor means for creating a display content program for determining display content for displaying the status of the control target device;
Second editor means for creating a control procedure program for determining a control procedure for controlling the device to be controlled;
Screen data including unique data unique to the display content program and a variable name defining a variable associated with a desired input / output number corresponding to each control target device , unique data unique to the control procedure program And the control data including the variable name, and a file that is shared between the display content program and the control procedure program, and stores the common data including the variable name and the input / output number in an integrated manner,
Based on the variable name of the common data obtained by searching from the file, the first or second editor means generates unique data specific to the display content program or the control procedure program in the file. An editor device comprising data generation means.
制御対象機器の状態を表示する表示内容を定めるための表示内容プログラムを作成する第1エディタ処理と、
上記制御対象機器を制御する制御手順を定めるための制御手順プログラムを作成する第2エディタ処理と、
上記表示内容プログラムに固有の固有データと各制御対象機器に対応する所望の入出力番号に予め対応づけられている変数を定義する変数名とを含む画面データと、上記制御手順プログラムに固有の固有データと上記変数名とを含む制御データと、上記表示内容プログラムと上記制御手順プログラムとの間で共通し、上記変数名および上記入出力番号からなっている共通データとを統合して格納するファイルから検索することによって得られた上記共通データの上記変数名に基づいて、上記第1または第2エディタ処理に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを上記ファイルにおいて生成させるデータ生成処理とを含んでいることを特徴とするエディタプログラムを記録したコンピュータ読み取り可能な記録媒体。
A first editor process for creating a display content program for determining the display content for displaying the status of the control target device;
A second editor process for creating a control procedure program for determining a control procedure for controlling the device to be controlled;
Screen data including unique data unique to the display content program and a variable name that defines a variable associated with a desired input / output number corresponding to each control target device , and unique data unique to the control procedure program A file that integrates and stores control data including data and the variable name, and common data consisting of the variable name and the input / output number common to the display content program and the control procedure program. Data generation that causes the first or second editor process to generate unique data specific to the display content program or the control procedure program in the file based on the variable name of the common data obtained by searching from A computer-readable recording of an editor program characterized in that Recording media.
制御対象機器の状態を表示する表示内容を定めるための表示内容プログラムを作成する第1エディタ処理または上記制御対象機器を制御する制御手順を定めるための制御手順プログラムを作成する第2エディタ処理のいずれか一方と、
上記表示内容プログラムに固有の固有データと各制御対象機器に対応する所望の入出力番号に予め対応づけられている変数を定義する変数名とを含む画面データと、上記制御手順プログラムに固有の固有データと上記変数名とを含む制御データと、上記表示内容プログラムと上記制御手順プログラムとの間で共通し、上記変数名および上記入出力番号からなっている共通データとを統合して格納するファイルから検索することによって得られた上記共通データの上記変数名に基づいて、上記第1または第2エディタ処理に上記表示内容プログラムまたは上記制御手順プログラムに固有の固有データを上記ファイルにおいて生成させるデータ生成処理とを含んでいることを特徴とするエディタプログラムを記録したコンピュータ読み取り可能な記録媒体。
Either the first editor process for creating a display content program for determining the display contents for displaying the state of the control target device or the second editor process for creating a control procedure program for determining a control procedure for controlling the control target device Either
Screen data including unique data unique to the display content program and a variable name that defines a variable associated with a desired input / output number corresponding to each control target device , and unique data unique to the control procedure program A file that integrates and stores control data including data and the variable name, and common data consisting of the variable name and the input / output number common to the display content program and the control procedure program. Data generation that causes the first or second editor process to generate unique data specific to the display content program or the control procedure program in the file based on the variable name of the common data obtained by searching from A computer-readable recording of an editor program characterized in that Recording media.
JP2001222092A 2001-07-23 2001-07-23 Editor device and recording medium recording editor program Expired - Fee Related JP3712641B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001222092A JP3712641B2 (en) 2001-07-23 2001-07-23 Editor device and recording medium recording editor program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001222092A JP3712641B2 (en) 2001-07-23 2001-07-23 Editor device and recording medium recording editor program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP24640799A Division JP2001075615A (en) 1999-08-31 1999-08-31 Editor device and recording medium recording editor program

Publications (2)

Publication Number Publication Date
JP2002140106A JP2002140106A (en) 2002-05-17
JP3712641B2 true JP3712641B2 (en) 2005-11-02

Family

ID=19055643

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001222092A Expired - Fee Related JP3712641B2 (en) 2001-07-23 2001-07-23 Editor device and recording medium recording editor program

Country Status (1)

Country Link
JP (1) JP3712641B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4582414B2 (en) * 2005-09-29 2010-11-17 横河電機株式会社 Program management device
JP2009157534A (en) * 2007-12-25 2009-07-16 Fuji Electric Systems Co Ltd Programming support system, its programmable controller support device, and programmable indicator support device

Also Published As

Publication number Publication date
JP2002140106A (en) 2002-05-17

Similar Documents

Publication Publication Date Title
US7603183B1 (en) Editor device and recorded medium on which editor program is recorded
CN100511221C (en) Methods and apparatus for importing device data into a database system used in a process plant
US7945937B2 (en) Programmable display device
TWI465868B (en) Sequence program design support device
JP3847585B2 (en) Editor registration device, registration program, and recording medium recording the same
JP3835589B2 (en) Drawing device and computer-readable recording medium recording drawing program
JP3712641B2 (en) Editor device and recording medium recording editor program
JP3913414B2 (en) Editor device and recording medium recording editor program
JP4322780B2 (en) Screen creation device, screen creation program and recording medium
JP2007094724A (en) Programmable display, control program, storage medium recording the program, screen generating device, screen generating program, and storage medium recording the program
JP6337810B2 (en) Information processing apparatus, information processing method, and program
JP3847601B2 (en) Control display device, control program, and recording medium recording the same
JP2002062910A (en) Editor device and storage medium recording editor program
JP3712640B2 (en) Editor device and recording medium recording editor program
JP3710731B2 (en) Editor device and recording medium recording editor program
JP3795473B2 (en) Editor device and recording medium recording editor program
JP2001075614A (en) Editor device and recording medium recording editor program
JP2001075615A (en) Editor device and recording medium recording editor program
JP4335109B2 (en) Screen creation device, screen creation program, and recording medium recording the same
JP2001075616A (en) Editor device and recording medium recording editor program
JP3795357B2 (en) Editor device, editor program, and recording medium recording the same
JP3939518B2 (en) Input / output address setting device, input / output address setting program and recording medium recording the same
JPH11175326A (en) Editor device and computer readable recording medium recording editor program
JPH11265280A (en) Graphic editor and computer-readable recording medium for recording editor program
JP2001075791A (en) Editor device and recording medium recording editor program

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040629

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040827

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050817

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080826

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090826

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090826

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100826

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110826

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110826

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120826

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120826

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130826

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees