JP3939518B2 - Input / output address setting device, input / output address setting program and recording medium recording the same - Google Patents
Input / output address setting device, input / output address setting program and recording medium recording the same Download PDFInfo
- Publication number
- JP3939518B2 JP3939518B2 JP2001274328A JP2001274328A JP3939518B2 JP 3939518 B2 JP3939518 B2 JP 3939518B2 JP 2001274328 A JP2001274328 A JP 2001274328A JP 2001274328 A JP2001274328 A JP 2001274328A JP 3939518 B2 JP3939518 B2 JP 3939518B2
- Authority
- JP
- Japan
- Prior art keywords
- input
- unit
- output
- output unit
- allocation
- 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
Links
Images
Landscapes
- 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の入力端子および出力端子のそれぞれに付与されている入力番号および出力番号(I/Oアドレス)と、各入出力端子に接続される制御対象機器(デバイス)との割り付けを行う必要がある。このため、上記のプログラミングソフトウェア(エディタ)では、その割り付けのための設定や登録を行えるようになっている。従来、このような割り付けは、PLCのメーカによって異なっており、絶対アドレスで設定されるので、メーカに応じたメモリテーブルを用意する必要がある。ただし、上記のIECに準拠したエディタでは、変数(自由変数)を介してデバイスとI/Oアドレスとを割り付けるので、上記のようなメモリテーブルが不要であり、また、PLCの機種の変更などによってI/Oアドレスが変わっても、一度決定した割り付けを容易に変更することができる。
【0006】
このため、上記のエディタでは、上記のI/Oアドレスに変数を割付けた結果を割付情報(I/O設定)として保存しておく。
【0007】
また、近年、メーカ独自の仕様で構成されるPLCに対して、PLCの機能をソフトウェアで実現するいわゆるオープンコントローラ(ソフトウェアPLC)のように汎用化が進みつつある。オープンコントローラは、汎用のパーソナルコンピュータやFA現場に適したパネルコンピュータによって構成されており、I/O、OS、プログラミング言語などが標準化されて、メーカ独自の仕様にとらわれないシステム構成を可能にしている。
【0008】
さらに、HMI(Human Machine Interface) 機器としてのプログラマブル表示器にも、I/Oなどを搭載することによってPLC機能を備えた機種が登場してきている。
【0009】
このようなPLC機能を備えた機器にも、PLCと同様、割付情報が必要となる。
【0010】
I/Oは、それぞれに接続されるデバイスの種類や数、扱うデータの種類などに応じて各種用意されている。このようなI/Oは、PLC機能を有する装置本体に着脱可能に設けられるようにユニット化されて、交換可能になっている機種がある。I/Oユニットとしては、例えば、デジタルデータの入出力を行うためのDIOユニットや、高速通信を行うためのリモートI/Oを構成するFlex Network(登録商標)I/Fユニットに接続される各種I/Oユニット(アナログ/デジタル変換ユニット、高速カウンタユニットなど)が用いられる。このようなI/Oユニットを介してデータ通信を行うには、装置本体にドライバソフトウェア(I/Oドライバ)をインストールする必要がある。
【0011】
また、I/O設定をする場合、まず、I/Oドライバを選択し、そのI/Oドライバに対してユニット番号を指定する。そして、各端子に接続されるデバイスのデータタイプ(ビットまたはワード)を指定した後、I/Oアドレスに変数を割り付ける。このような一連の作業によって、割付情報が設定される。
【0012】
【発明が解決しようとする課題】
しかしながら、上記の方法では、I/Oユニット(Flex NetworkI/Fユニットのようなインターフェースユニットを含む)の交換に伴ってI/Oドライバを変更する場合、前のI/Oドライバについて設定した割付情報を、変更したI/Oドライバについて使用することができない。このため、そのI/Oドライバについて上記の一連の作業を行って割付情報を再設定する必要がある。したがって、I/Oドライバの種類を変更する都度、割付情報を設定し直さなければならず、そのための作業が煩わしい。また、各種のI/Oドライバについて設定した割付情報を再利用のために保管・管理する際には、そのために余分な記憶領域を必要とする。
【0013】
本発明は、上記の事情に鑑みてなされたものであって、I/Oドライバに関わらず割付情報を共有化して、上記のような不都合を解消することができる入出力アドレス設定装置、入出力アドレス設定プログラムおよびそれを記録した記録媒体を提供することを目的としている。
【0014】
【課題を解決するための手段】
本発明の入出力アドレス設定装置は、上記の課題を解決するために、デバイスとの間でのデータ入出力のために該デバイスが接続される端子を有する入出力ユニットが交換可能に取り付けられ、上記端子を特定する入出力アドレスと、上記デバイスに対応付けられる変数との割り付けにしたがって上記入出力ユニットの通信動作を管理する当該入出力ユニットに対応したドライバを有するプログラマブルロジックコントローラ機能を有するプログラマブル表示器に対し、上記入出力アドレスと上記変数とを割り付ける入出力アドレス設定装置であって、デジタルデータを入出力するためのデジタル入出力ユニットである上記入出力ユニットに対し、当該入出力ユニットがデジタル入出力ユニットであることを示すユニット番号を指定するユニット指定手段と、上記ユニット番号が指定された入出力ユニットの上記端子に接続されるデバイスのデータがビットデータであるかまたはワードデータであるかを指定するデータタイプ指定手段と、上記入出力ユニットが交換される際に、交換後の上記入出力ユニットに対応した上記ドライバを選択する操作が行われることを契機に、上記プログラマブル表示器のメモリに格納された上記ドライバに組み込まれている交換前の上記入出力ユニットについての変数と入出力アドレスとの割付関係を外部ファイルに転送する転送手段と、交換前後の上記入出力ユニットについての上記ユニット番号と上記データタイプとの組み合わせが上記端子毎に一致したときに、上記外部ファイルに転送された上記割付関係を読み出す読出手段と、読み出された上記割付関係に基づいて、交換後の上記入出力ユニットについて新たに設定された上記入出力アドレスと交換前の入出力ユニットで使用した上記変数とを割り付ける割付手段とを備えていることを特徴としている。
【0015】
上記の構成では、入出力ユニット(Flex NetworkI/Fユニットのようなインターフェースユニットを含む)を交換する際に、ユニット指定手段によってユニット番号が指定され、データタイプ指定手段によってデータタイプが指定される。このような指定は、通常、交換される入出力ユニットに応じてユーザによる入力操作で行われる。
【0016】
交換後の入出力ユニットについて、上記のようにユニット番号と、データタイプとが指定されると、割付手段によって、交換前後の入出力ユニットについて、上記ユニット番号と上記データタイプとの組み合わせの端子毎の一致が判定される。その結果、これらが一致している場合、入出力ユニットが交換されても、交換前の入出力ユニットと同じ変数が利用できるので、割付手段によって、その変数と、交換後に新たに設定された入出力アドレスとを割り付けていく。
【0017】
これにより、入出力ユニットの交換に伴って、I/Oドライバが変更されても、前の変数が自動的に入出力アドレスに割り付けられるので、同じ変数を用いた同様な割り付けの作業を再度行う必要がない。
【0018】
上記の入出力アドレス設定装置において、上記割付手段は、交換後の上記入出力ユニットの端子数が交換前の上記入出力ユニットの端子数より少ないときに、変数と入出力アドレスとの割付を行わないことが好ましい。入出力ユニットの交換後の端子数が減少して、入出力アドレスを介して変数を同じ番号の端子に対応付けることができなくなることがあるので、このような場合には、割付手段が割付を行わないことによって、上記の不都合を回避することができる。
【0019】
上記の入出力アドレス手設定装置において、上記入出力ユニットが交換される際に、上記割付関係を外部ファイルに転送する転送手段を備えていることが好ましい。これにより、割付関係を他のアプリケーションプログラムによって編集することが可能になる。
【0020】
本発明の入出力アドレス設定プログラムは、上記の各入出力アドレス設定装置を実現するコンピュータを上記各手段として機能させるものである。また、本発明の記録媒体は、上記のエディタプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【0021】
これらの入出力アドレス設定プログラムおよび記録媒体を用いても、上記の各入出力アドレス設定装置で実現される、入出力ユニット交換後の変数と入出力アドレスとの割り付けの自動化を同様に実現することができる。
【0022】
【発明の実施の形態】
本発明の実施の一形態について図1ないし図8に基づいて説明すれば、以下の通りである。
【0023】
本実施の形態に係る表示/制御システムは、図1に示すように、プログラマブル表示器1を含んでいる。
【0024】
プログラマブル表示器1は、CPU11、メモリ部12、VRAM13、ディスプレイ14、グラフィックコントローラ15、タッチパネル16、タッチパネルコントローラ17、メンテナンスポート18、I/Oユニット19およびI/O制御インターフェース20を備えている。
【0025】
メモリ部12は、DRAM12a、FEPROM(Flash Erasable and Programmable ROM)12b等のメモリを含んでいる。DRAM12aは、主に、表示制御などの演算処理時の作業用に用いられる他、I/Oユニット19を介して入出力される入出力機器4のデータの一時的な記憶に用いられる。SRAM12cは、入出力機器4(入力機器)から得られたデータをロギングしたり、入出力機器4(出力機器)に与える制御データ(レシピデータ)を記憶したりするために用いられる。FEPROM12bは、書き替え可能な読み出し専用のフラッシュメモリであり、一般のパーソナルコンピュータにおけるハードディスクドライブの役割を果たす。フラッシュメモリは、可動部を持たず、かつ衝撃に強いので、劣悪な周囲環境でも安定して動作する。
【0026】
また、上記のFEPROM12bは、図2に示すように、表示制御システムプログラムと、画面データと、制御機能プログラムと、ユーザプログラムと、I/Oドライバとをそれぞれ格納するエリアを有している。
【0027】
表示制御システムプログラムは、画像表示制御を行うための基本機能を実現するためのプログラムである。画面データは、後述するコンピュータ装置3の構成要素の一つである図示しない作画エディタによって作成されて、FEPROM12bにダウンロードされている。この画面データは、ディスプレイ14に表示すべきベース画面や図形要素としての部品のデータおよび各マークに付与された後述する処理指示語W(図3参照)などを含んでおり、表示内容プログラムを構成している。
【0028】
制御機能プログラムは、シーケンス制御の基本機能を実現するためのプログラムである。ユーザプログラム(制御手順プログラム)は、後述するユーザプログラムエディタによって作成されて、FEPROM12bにダウンロードされている。このユーザプログラムは、入出力機器4…が所望のシーケンスにしたがって動作するように制御手順を定めるプログラムである。制御機能プログラムおよびユーザプログラムは、表示器2のPLC機能を利用する際に用いられる。
【0029】
I/Oドライバは、後述するI/Oユニット19を管理するためのプログラムである。このI/Oドライバは、後述するI/Oユニット19の機種毎に異なっており、プログラマブル表示器1に仕様上で予め接続が許可されたI/Oユニット19に対応するものがインストールされている。
【0030】
上記の画面データに含まれる部品は、タッチスイッチ、ランプ、各種表示器(例えば、数値表示器やメータ表示器)などの画像化された基本的な部品として予め用意されている。また、部品としては、スイッチや数値表示器などの動的変化を画面上の任意の位置で表現させるために、所望の位置に設定された矩形エリアに所望の動画機能が設定された機能部(タグ)も含まれる。このような部品を含むユーザ画面においては、部品が入出力機器4の動作に応じて動くようになっており、入出力機器4の動作状況が視覚化されている。
【0031】
図3に示すように、画面データに含まれる処理指示語Wは、ベース画面上で実行されるべき事象毎に作成されている。この処理指示語Wは、基本的には、表示制御動作を実行すべきベース画面のファイル番号Fと、このベース画面上で実行されるべき動作内容を特定する事象名Tと、実行事象毎に参照される1または複数のデータからなる参照情報Iとを一組として備えている。
【0032】
CPU11は、前述のFEPROM12bに格納された表示制御システムプログラムにしたがって、プログラマブル表示器1の各部の動作を制御する。また、CPU11は、後述するメンテナンスポート18を介しての後述するコンピュータ装置3との通信を制御する機能を有しており、作画エディタからの画面データやユーザプログラムエディタからのユーザプログラムを受け取るとFEPROM12bに格納する。
【0033】
VRAM13は、ディスプレイ14に表示される画面のイメージを一時的に保持するメモリであり、FEPROM12bからの画面データのイメージを水平方向に表示される順にドットデータとして格納している。
【0034】
ディスプレイ14は、液晶パネルやELパネルのような平板型表示素子によって構成されている。グラフィックコントローラ15は、VRAM13に展開された画面のイメージを、ディスプレイ14に描画するドライバソフトウェアである。タッチパネル16は、ディスプレイ14の表示画面上で入力を行うために設けられており、アナログ抵抗膜式タッチパネルなどが好適である。タッチパネルコントローラ17は、タッチパネル16の出力電圧を入力位置情報に変換してCPU11に出力する。
【0035】
メンテナンスポート18は、後述するコンピュータ装置3との間の通信を行うための通信ポートである。
【0036】
また、プログラマブル表示器1は、PLC機能を備えて入出力機器4…を直接制御するように構成されている。このため、プログラマブル表示器1は、図1に示すように、I/Oユニット19およびI/O制御インターフェース20を備えている。
【0037】
入出力ユニットとしてのI/Oユニット19は、入出力機器4…が接続可能となるように、多数の入出力端子、入出力回路などを備えている。このI/Oユニット19は、接続される通信システムに応じて異なる機種が、プログラマブル表示器1の本体に着脱可能に取り付けられる。例えば、I/Oユニット19としては、デジタルデータの入出力を行うためのDIOユニットや、高速通信を行うためのリモートI/Oを構成するFlex NetworkI/Fユニットに接続される各種I/Oユニット(アナログ/デジタル変換ユニット、高速カウンタユニットなど)が用いられる。プログラマブル表示器1には、予め装着可能な動作を保証しているI/Oユニット19が規定されている。
【0038】
I/O制御インターフェース20は、CPU11と入出力ユニット20との間の信号の授受を仲介するインターフェース回路であって、入出力メモリ、D/A変換器、A/D変換器などを備えている。
【0039】
PLC機能を有する表示器1は、CPU11によって、制御機能プログラムにしたがい、ユーザプログラムエディタで作成されたユーザプログラムで定められた手順で、入出力機器4…の動作を制御する。
【0040】
表示器1内のメモリ部12には、アドレスを指定することにより、ワードデバイスおよびビットデバイスが格納場所を特定可能に設定されている。ワードデバイスは、入出力されるデータが数値のようなワードデータに対して設定され、ビットデバイスは、オン・オフ状態のようなビットデータに対して設定される。このような設定により、表示器1内の任意のワードデバイスまたはビットデバイスをアクセスするだけで入出力機器4…を制御し、またはその動作状態に関する情報を個別に取り出すことができる。
【0041】
プログラマブル表示器1は、上記のビットデバイスまたはワードデバイスが示す状態情報のうち、必要な情報を適時にメモリ部12に読み込む一方、上記の処理指示語Wを繰り返し読み出して各処理指示語Wの事象名Tで特定される内容の動作を状態情報を参照しながら実行する。これによって、ビットデバイスまたはワードデバイスの状態の変化に応じて変化する表示動作が実行される。
【0042】
続いて、コンピュータ装置3について説明する。
【0043】
コンピュータ装置3は、パーソナルコンピュータなどの汎用コンピュータによって構成されている。このコンピュータ装置3は、図1に示すように、CPU31、I/O割付情報作成部32、割付情報ファイル33、メモリ部34、ディスプレイ35、入力装置36、外部記憶装置37およびインターフェース部(図中、I/F)38を備えている。
【0044】
CPU31は、コンピュータ装置3にインストールされているOS(オペレーティングシステム)上でI/O割付情報作成部32を含む各種のアプリケーションソフトウェアを動作させる際の各部の制御や演算処理を行う。
【0045】
メモリ部34は、RAM、ROMなどのメモリを備えており、固定データの格納、一時的なデータ記憶、CPU31の演算処理時における作業エリアの提供といった役割を果たしている。
【0046】
I/O割付情報作成部32は、変数エディタ32a、ドライバ指定部32b、データタイプ指定部32c、割付部32dおよびインポート/エクスポート部32eを含んでいる。このI/O割付情報作成部32は、通常、ユーザプログラムエディタに含まれている。
【0047】
ラダーエディタなどのユーザプログラムエディタは、入出力機器4…が所望のシーケンスにしたがって動作するように制御手順を定めるユーザプログラムを作成するためのプログラミングソフトウェアである。ラダーエディタの場合、ディスプレイ35の表示画面上で入出力機器4の動作に対応するラダー記号(図形要素)を配置してラダー図を作成できるように構成されている。このユーザプログラムエディタにおいては、例えば、国際基準IECに準拠した前述のプログラミング言語が用いられる。上記のエディタで作成されたユーザプログラムは、I/O割付情報作成部32で設定された割付情報(割付関係)とともに、プログラマブル表示器1のFEPROM12bにダウンロードされる。
【0048】
変数エディタ32aは、入出力機器4(デバイス)に個々に対応付けられる変数を作成するためのエディタである。変数としては、スイッチに対応するSW1やランプに対応するLAMP1のようにデバイスに対応する符号や、操作指示、デバイスの動作状態のような事象名やコメントが挙げられる。
【0049】
また、変数エディタ32aは、変数が、I/Oユニット19を介して接続されるデバイスに対応しているか、あるいは、プログラマブル表示器1の内部デバイスに対応しているかを属性データとして設定できる。内部デバイスは、例えば、操作回数を示すカウンタなど、プログラマブル表示器1の計算機能を利用して、I/Oユニット19を介して通信することなくデータを取得可能なプログラマブル表示器1に設けられるデバイスである。前者の場合は、「入力」または「出力」の設定入力を受け入れた後、デバイスに対応付けるI/Oアドレス(入出力アドレス)の入力を受け付ける一方、後者の場合は「インターナル」の設定入力を受け入れる。
【0050】
ユニット指定手段としてのドライバ指定部32bは、プログラマブル表示器1に装着されるI/Oユニット19に対応したI/Oドライバ、およびそのI/Oユニット19のユニット番号を指定する。このドライバ指定部32bは、I/Oドライバおよびユニット番号の指定のために、予めFEPROM12bに格納されているI/Oドライバから選択して決定することができるユーザーインターフェースを提供する。
【0051】
データタイプ指定手段としてのデータタイプ指定部32cは、I/Oユニット19に接続される入出力機器4(デバイス)のデータタイプ(ビットまたはワード)を指定する。このデータタイプ指定部32cは、データタイプの指定のために、予め定められているデータタイプから選択して決定することができるユーザーインターフェースを提供する。例えば、スイッチなど、デバイスがオン/オフの状態を取る場合には、「ビット」が選択される。また、例えば、製品の生産個数を計数するようなカウンタである場合や、所定時間までの計時を行うようなタイマである場合には、「ワード」が選択される。さらに、例えば、メータなどの数値を扱う場合や、文字列を扱う場合も「ワード」が選択される。
【0052】
割付部32dは、I/Oユニット19の入力端子および出力端子のそれぞれに付与されている入力番号および出力番号と、各入出力端子に接続される入出力機器4について設定された変数との対応付けを入出力番号(端子番号)に基づいたI/Oアドレスを用いて割り付け(I/Oアサイン)として行う。変数は、例えば、ユーザプログラムの作成時に、プログラムで用いられる命令や処理を表すシンボル(記号)に対応付けられることによって、プログラム上でI/Oアドレスと命令・処理とを対応付ける機能を有する。
【0053】
上記の割り付けの結果は、割り付け作業時には、メモリ部34のRAMにテンポラリファイルとして登録され、設定完了後には割付情報としてFEPROM12bにダウンロードされ、I/Oドライバに組み込まれる。I/Oドライバは、その割付情報にしたがって、I/Oユニット19の通信動作を管理する。
【0054】
前記のプログラミング言語で用いられるI/Oアドレスは、例えば、入力アドレスの場合「%IX1.0.1」と表され、出力アドレスの場合「%QX1.0.1」と表される。1桁目の数値“1”は、I/Oユニット19の端子番号を表し、2桁目の数値“0”は、ユニット番号を表す。このユニット番号は、プログラマブル表示器1に接続可能なI/Oユニット19に対応付けられた番号であり、前述のドライバ指定部32bで指定される。
【0055】
割り付けを行う際、メモリ部34には、入力番号および出力番号にそれぞれ基づいたI/Oアドレスに対応するデバイス名が格納される。従来、このような割り付けは、PLCのメーカによって異なっており、絶対アドレスで設定されるので、メーカに応じたメモリテーブルを用意する必要がある。ただし、IECに準拠したユーザプログラムエディタでは、自由変数によってユーザが入出力を決定できるので、上記のようなメモリテーブルは不要である。また、一度決定した割り付けも、後に変更することができる。したがって、すでに設定した変数にI/Oアドレスの対応付けを行うことによって、割り付けの変更を行うことができる。
【0056】
また、割付手段としての割付部32dは、I/Oドライバが変更されたとき、改めてドライバ指定部32bで指定されたユニット番号と、データタイプ指定部32cで指定されたデータタイプとに基づいて、前に使用していたI/Oドライバについて設定された割付情報(割付関係)を利用できるか否かを判定し、可能であれば、その割付情報に基づいて自動的に割付処理を行う。具体的には、割付部32dは、I/Oユニット19のタイプとデータタイプとの組み合わせが一致すれば、同じ割付情報を利用できると判定する。I/Oユニット19のタイプは、ユニット番号で特定される。
【0057】
転送手段としてのインポート/エクスポート部32eは、I/Oドライバが交換されるのに先立って、FEPROM12bに格納されているI/Oドライバから割付情報を割付情報ファイル33にエクスポートする。また、インポート/エクスポート部32eは、I/Oドライバが交換された後に、割付情報ファイル33に格納された割付情報を読み出して、割付部32dにインポートする。なお、インポート/エクスポート部32eは、割付情報のインポートを割付情報ファイル33以外の領域、例えばメモリ部34の所定エリアにインポートし、そこから割付情報をエクスポートしてもよい。
【0058】
割付情報ファイル33は、インポート/エクスポート部32eによってインポートされてきた割付情報を保存する外部ファイルである。
【0059】
上記のI/O割付情報作成部32を含むユーザプログラムエディタは、パッケージソフトウェアまたはオーダーメイドソフトウェアとしてプログラムメディアの形態で提供可能なソフトウェアであって、例えば、コンピュータ装置3と分離可能な記録媒体5に記録されている。そして、ユーザプログラムエディタは、記録媒体5からコンピュータ装置3にインストールされることによってエディタ機能を発揮することができる。
【0060】
上記のプログラムメディアは、磁気テープやカセットテープなどのテープ系、フロッピディスクやハードディスクなどの磁気ディスク系、CD−ROM、MO、MD、DVDなどの光ディスク系、ICカード(メモリカードを含む)、光カードなどのカード系が好適である。その他、上記のプログラムメディアは、マスクROM、EPROM、EEPROM、フラッシュROMなどによる半導体メモリを含めた固定的にプログラムを担持する媒体であってもよい。
【0061】
また、コンピュータ装置3は、インターネットを含む通信ネットワークと接続可能であることから、通信ネットワークからプログラムをダウンロードするように流動的にプログラムを担持する媒体であってもよい。ただし、このように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード用プログラムは予めコンピュータ装置3に格納されるか、あるいは別な記録媒体からインストールされるものであってもよい。
【0062】
続いて、上記のように構成される表示/制御システムにおいて、I/Oドライバが変更された際のI/O割り付けについて説明する。ここでは、I/Oユニット19としてDIOユニットを装着している状態から、Flex NetworkI/Fユニットに変更し、このFlex NetworkI/FユニットにDIOユニットを接続する場合について説明する。先に接続されているDIOユニットの入出力点数は、入力/出力で16/16である。
【0063】
プログラマブル表示器1に、I/Oユニット19としてDIOユニットを接続する場合、ユーザは、I/O割付情報作成部32が提供する図4に示す割付ウインドウ7において以下の各種の入力操作を行う。この割付ウインドウ7では、DIOドライバの各端子に割り付けられる変数が表示される。上記のように、このDIOの入出力点数は、合計32であるが、割付ウインドウ7に表示しきれない端子については画面のスクロールによって表示が可能である。
【0064】
まず、ユーザは、割付ウインドウ7における右側に配置されたドライバ指定ボタン7aをクリックして、ドライバ指定部32bおよびデータタイプ指定部32cが提供するドライバ指定用のウインドウ(図示せず)を開く。ユーザは、そのウインドウにおいて、プログラマブル表示器1に登録されているI/Oユニット19の種類からDIOユニットに対応するI/OドライバであるDIOドライバを選択して指定するとともに、DIOユニットのユニット番号を指定する。
【0065】
次いで、ユーザは、上記のウインドウで、併せてDIOユニットの各端子に接続されるデバイスのデータタイプを指定する。データタイプは、ユニット番号と関連して指定されるため、その関連付けを持った状態で登録される。
【0066】
これにより、ユニット番号を含む前述のI/Oアドレスが決定される。したがって、I/Oアドレスは、ユニット番号を介してデータタイプと関連付けられる。
【0067】
さらに、ユーザは、割付ウインドウ7における割付設定ボタン7bをクリックして、割付部32dが提供する割付用のウインドウ(図示せず)を開く。ユーザは、そのウインドウにおいて、すでに変数エディタ32aによって作成された変数と、I/Oアドレスとの割り付けを行う。このようにして作成された割付情報は、プログラマブル表示器1にダウンロードされて、FEPROM12bに格納されているI/Oドライバに組み込まれる。
【0068】
この状態から、I/Oユニット19を、DIOユニットから、Flex NetworkI/Fユニットに接続されるDIOユニットに変更する場合、まず、インポート/エクスポート部32eによって、I/Oドライバの割付情報が割付情報ファイル33にエクスポートされる。このエクスポートの処理手順を図5のフローチャートを参照して説明する。
【0069】
ユーザによって交換後のI/Oユニット19についてのI/Oドライバを選択する(S1)。このとき、ユーザは、割付ウインドウ7のドライバ指定ボタン7aをクリックして開いたウインドウにおいて、プログラマブル表示器1に登録されているI/Oユニット19の種類からFlex NetworkI/Fユニットを介して接続されるDIOユニットに対応するI/OドライバであるFlex Networkドライバを選択して指定するとともに、そのDIOユニットのユニット番号を指定する。そして、ユーザは、上記のウインドウで、併せてDIOユニットの各端子に接続されるデバイスのデータタイプを指定する。これにより、ユニット番号を含む前述のI/Oアドレスが決定される。
【0070】
次いで、上記のI/Oドライバの選択を契機に、FEPROM12bに格納されているI/Oドライバから割付情報を外部ファイルとしての割付情報ファイル33へ出力する(S2)。
【0071】
このように、予めI/Oドライバの割付情報を保存しておいてから、Flex NetworkI/FユニットについてI/O割付の設定を行う。また、割付情報を割付情報ファイル33のような外部ファイルにエクスポートすることによって、割付情報の他のアプリケーションプログラムによる編集が可能になる。具体的には、CVSファイルなどの形式でエクスポートして表計算プログラムなどのファイルに保存する。したがって、一旦決定された割付情報でも、I/Oユニット19の交換時に変更することができる。
【0072】
この場合のI/O割付設定について、データタイプの指定までは、前述のDIOユニットについてした手順と同様に操作が行われる。ここでは、図6のフローチャートを参照してその手順を説明する。
【0073】
まず、前述のS1と同様、ユーザによって交換後のI/Oユニット19についてのI/Oドライバを選択する(S11)。続いて、上記のようにして選択されたI/Oドライバが、前述の割付情報ファイル33に格納された割付情報をインポートして利用できるI/Oドライバであるか否かを判定する(S12)。
【0074】
このとき、ユーザは、割付ウインドウ7の割付設定ボタン7bをクリックして開いた割付用のウインドウにおいて、すでに変数エディタ32aによって作成された変数と、上記のI/Oアドレスとの自動割り付けを指示するためのボタン(図示せず)をクリックする。すると、割付部32dによって、ユニット番号(これによって特定されるユニットの種類)とデータタイプとの組み合わせが入出力端子毎に一致するか否かが判定され、それらが一致している場合にのみ、割付情報を利用できるI/Oドライバであると判定される。
【0075】
S12において、選択されたI/Oドライバが割付情報を利用できると判定されなかった場合は、交換前のDIOユニットの割付情報が利用できないものとしてそのまま処理を終える。また、S12において、選択されたI/Oドライバが割付情報を利用できると判定された場合は、交換前のDIOユニットの割付情報に含まれる変数がインポートできる変数であるか、すなわち交換後のDIOユニットのI/O割付に利用できるか否かが判定される(S13)。ここでは、交換前のDIOユニットの入出力点数と、交換後のDIOユニットの入出力点数との関係から、交換前後で対応しているか否かが判定される。
【0076】
例えば、交換前後のI/Oユニット19の入出力点数が同じである場合や、交換後のI/Oユニット19の入出力点数が交換前のそれより増加する場合では、変数を同じ端子番号に対応付けることができる。しかし、交換後のI/Oユニット19の入出力点数が交換前のそれより減少する場合では、変数を同じ端子番号に対応付けできないことがあるので、割付情報を利用できない場合として処理する。
【0077】
S13において、インポートできる変数でないと判定された場合、交換前のDIOユニットの割付情報が利用できないものとしてそのまま処理を終える。また、S13において、インポートできる変数であると判定された場合、交換前後で変数が対応している場合、インポート/エクスポート部32eは、割付部32dの要求を受けて、外部ファイルとしての割付情報ファイル33から、交換前のDIOユニットの割付情報を読み出す(S14)。
【0078】
この割付情報から得られた両DIOユニットに共通するデータタイプは、上記のユニット番号の指定によって、交換後のDIOユニット(Flex NetworkI/Fユニットを含む)のユニット番号ひいてはそれを含むI/Oアドレスと関連付けられる。これにより、割付部32dは、上記の割付情報の変数とI/Oアドレスとの対応関係に基づいて、交換後のDIOユニットのI/Oアドレスと、すでに決定されている上記の変数とを1つずつ割り付けていく。
【0079】
この結果、例えば、図7に示す割付ウインドウ7に表示されているI/O割付では、Flex NetworkI/Fユニットを介して接続されるDIOユニットに対応するI/Oドライバ(Flex Networkドライバ)については、図4に示す割り付けに対して、同じ対応で変数とI/Oアドレスとが割り付けられる。具体的には、図4に示すI/O割付では、DIOユニットの入出力点数が、入力/出力で16/16であり、入力端子では、端子番号“0”〜“4”に変数が割り付けられる一方、出力端子でも、端子番号“0”〜“4”に変数が割り付けられる。これに対し、図7に示すI/O割付では、DIOユニットの入出力点数が、入力/出力で8/8であり、入力端子では、端子番号“0”〜“4”に変数が割り付けられる一方、出力端子でも、端子番号“0”〜“4”に変数が割り付けられる。このように、双方のI/O割付において、同じ端子番号に同じ変数が割り付けられている。
【0080】
そして、この結果得られた割付情報は、割付部32dによって、プログラマブル表示器1にダウンロードされて、FEPROM12bに格納されているI/Oドライバに組み込まれる。
【0081】
以上に述べたように、本実施の形態の表示/制御システムでは、I/O割付部32において、割付部32dが、I/Oユニット19が交換される際に、交換前のI/Oユニット19の割付情報が利用できると判定すると、その情報に基づいて、自動的に変数とI/Oアドレスとの割り付けを行う。このとき、交換されたI/Oユニット19について、ドライバ指定部32bでI/Oドライバおよびユニット番号の指定と、データタイプ指定部32cでデータタイプの指定とをユーザが行う必要があるが、そのための入力作業は入力項目数が少なく、さほど手間はかからない。しかし、その後の変数とI/Oアドレスとの割り付け作業が自動化されるので、ユーザは、変数とI/Oアドレスとを1つずつ割り付ける手間の係る作業から開放される。
【0082】
また、割付情報が共通するI/Oドライバについては、I/Oドライバ毎に重複して割付情報を作成する必要がないので、それだけ割付情報の保存時の記憶領域を削減することができる。
【0083】
なお、本実施の形態では、割付情報をダウンロードする対象として、PLC機能を有するプログラマブル表示器1を用いたが、I/Oユニット19と同等のI/Oユニットを介してデバイスと通信を行い、かつI/OドライバでI/Oユニット19による通信を管理する装置や機器であれば、プログラマブル表示器1と同様に、I/O割り付けを自動化することができる。
【0084】
例えば、図8に示す表示/制御システムは、ソフトウェアで動作するいわゆるオープンコントローラ(ソフトウェアPLC)を中心として構成されている。
【0085】
オープンコントローラは、コンピュータ装置3によって構成されており、入出力機器4…を接続するために、前述の表示/制御システムにおけるコンピュータ装置3のインターフェース部38の代わりにI/Oユニット39およびI/O制御インターフェース40を備えている。
【0086】
I/Oユニット39は、入出力機器4…が接続可能となるように、多数の入出力端子、入出力回路などを備えている。このようなI/Oユニット39は、I/Oボードや着脱自在のユニットとしてコンピュータ装置3内に実装されるが、リモートI/Oとしてコンピュータ装置3の外部に独立して設けられてもよい。
【0087】
I/O制御インターフェース40は、CPU31と入出力ユニット39との間の信号の授受を仲介するインターフェース回路であって、入出力メモリ、D/A変換器、A/D変換器などを備えている。このI/O制御インターフェース40は、入出力機器4…との間で入出力されるデジタル信号またはアナログ信号をCPU31とやり取りするようになっている。
【0088】
コンピュータ装置3は、オープンコントローラとして機能するように、インターフェースユニット(図中、I/Fユニット)41を備えている。インターフェースユニット41は、イーサネット(登録商標)などの汎用の通信プロトコルを用いるオープンネットワーク6に対応した入出力部であり、オープンネットワーク6に接続されている。これによって、コンピュータ装置3は、オープンネットワーク6を介して他のコンピュータ装置、プログラマブル表示器、PLCなどと接続される。
【0089】
コンピュータ装置3がパネルコンピュータなどの現場に設置されるタイプのコンピュータである場合、メモリ部34は、前述のFEPROM12bと同様、図2に示すように、表示制御システムプログラムと、通信プロトコルと、画面データと、制御機能プログラムと、ユーザプログラムと、I/Oドライバとをそれぞれ格納するエリアを有している。また、コンピュータ装置3がパーソナルコンピュータやワークステーションである場合、これらは、それぞれ外部記憶装置37に形成された専用のファイルに格納されている。
【0090】
このように構成されるコンピュータ装置3は、入出力機器4…が配備されたターゲットシステムの運転時(オンライン状態)では、作成された画面や現場の様子をディスプレイ35に表示させることによってターゲットシステムの運転状況を監視するモニタとして機能するとともに、ターゲットシステムにおける入出力機器4…の制御を行う。このとき、コンピュータ装置3は、ユーザプログラムを制御機能プログラムにしたがって実行する。一方、コンピュータ装置3は、ターゲットシステムの非運転時(オフライン状態)において、ユーザプログラムエディタを起動することによってユーザプログラムの作成・編集やI/O割付情報作成部32を用いたI/O割り付けを行うエディタ装置として機能する。
【0091】
このようなコンピュータ装置3においても、I/Oユニット39の交換時に、併せてI/Oドライバを変更する場合、前述の図1に示す表示/制御システムと同様、交換前のI/Oユニット39についての割付情報が利用できる場合は、割付部32dによって自動的に変数とI/Oアドレスとの割り付けを行うことができる。
【0092】
なお、本実施の形態では、I/O19・39として、DIOユニットおよびFlex NetworkI/FユニットとDIOユニットとの組み合わせについて例示して説明した。しかしながら、I/Oユニット19・39は、これらに限定されず、I/O割付情報作成部32でI/O割り付けを行うことができる各種のI/Oユニットも本実施の形態に適用することができる。
【0093】
【発明の効果】
以上のように、本発明の入出力アドレス設定装置は、デバイスとの間でのデータ入出力のために該デバイスが接続される端子を有する入出力ユニットが交換可能に取り付けられ、上記端子を特定する入出力アドレスと、上記デバイスに対応付けられる変数との割り付けにしたがって上記入出力ユニットの通信動作を管理する当該入出力ユニットに対応したドライバを有するプログラマブルロジックコントローラ機能を有するプログラマブル表示器に対し、上記入出力アドレスと上記変数とを割り付ける入出力アドレス設定装置であって、デジタルデータを入出力するためのデジタル入出力ユニットである上記入出力ユニットに対し、当該入出力ユニットがデジタル入出力ユニットであることを示すユニット番号を指定するユニット指定手段と、上記ユニット番号が指定された入出力ユニットの上記端子に接続されるデバイスのデータがビットデータであるかまたはワードデータであるかを指定するデータタイプ指定手段と、上記入出力ユニットが交換される際に、交換後の上記入出力ユニットに対応した上記ドライバを選択する操作が行われることを契機に、上記プログラマブル表示器のメモリに格納された上記ドライバに組み込まれている交換前の上記入出力ユニットについての変数と入出力アドレスとの割付関係を外部ファイルに転送する転送手段と、交換前後の上記入出力ユニットについての上記ユニット番号と上記データタイプとの組み合わせが上記端子毎に一致したときに、上記外部ファイルに転送された上記割付関係を読み出す読出手段と、読み出された上記割付関係に基づいて、交換後の上記入出力ユニットについて新たに設定された上記入出力アドレスと交換前の入出力ユニットで使用した上記変数とを割り付ける割付手段とを備えていることを特徴としている。
【0094】
これにより、入出力ユニットの交換に伴って、I/Oドライバが変更されても、ユニット番号と上記データタイプとの組み合わせが上記端子毎に同じであれば、前の変数が自動的に入出力アドレスに割り付けられるので、同じ変数を用いた同様な割り付けの作業を再度行う必要がない。したがって、入出力アドレスの設定作業の効率を向上させることができるという効果を奏する。
【0095】
上記の入出力アドレス設定装置においては、上記割付手段が、交換後の上記入出力ユニットの端子数が交換前の上記入出力ユニットの端子数より少ないときに、変数と入出力アドレスとの割付を行わないことにより、入出力ユニットの交換後の端子数が減少して、入出力アドレスを介して変数を同じ番号の端子に対応付けることができなくなるという不都合を回避することができる。したがって、より信頼性の高い入出力アドレスの設定を実現することができるという効果を奏する。
【0096】
上記の入出力アドレス設定装置においては、上記入出力ユニットが交換される際に、上記割付関係を外部ファイルに転送する転送手段を備えていることにより、割付関係を他のアプリケーションプログラムによって編集することが可能になる。したがって、一旦決定された割付関係でも、入出力ユニットの交換時に変更することができるという効果を奏する。
【0097】
本発明の入出力アドレス設定プログラムは、上記の各入出力アドレス設定装置を実現するコンピュータを上記各手段として機能させるもである。また、本発明の記録媒体は、上記の入出力アドレス設定プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【0098】
これらの入出力アドレス設定プログラムおよび記録媒体を用いても、上記の各入出力アドレス設定装置で実現される、入出力ユニット交換後の変数と入出力アドレスとの割り付けの自動化を同様に実現することができる。したがって、上記の各入出力アドレス設定装置によって奏される上記の効果を同様に奏することができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態に係る表示/制御システムの構成を示すブロック図である。
【図2】上記表示/制御システムにおけるプログラマブル表示器のFEPROMに格納されるプログラム構成を示す説明図である。
【図3】上記プログラマブル表示器で表示されるユーザ画面の画面データに含まれる指示処理語の基本的フォーマットを示す説明図である。
【図4】上記表示/制御システムにおけるコンピュータ装置のI/O割付情報作成部がI/O割り付けのために提供する割付ウインドウを示す説明図である。
【図5】上記表示/制御システムにおけるプログラマブル表示器のI/Oユニットの交換に伴って、それに対応するI/Oドライバを選択する際に、I/Oドライバ内に組み込まれた割付情報を外部ファイルにエクスポートする手順を示すフローチャートを示す。
【図6】上記表示/制御システムにおけるプログラマブル表示器のI/Oユニットの交換に伴って、それに対応するI/Oドライバを選択する際に、外部ファイル内の割付情報を上記I/O割付部にインポートする手順を示すフローチャートを示す。
【図7】図4の割付ウインドウに表示されたI/O割付と異なるI/O割付を表示した上記割付ウインドウを示す説明図である。
【図8】本発明の実施の一形態に係る他の表示/制御システムの構成を示すブロック図である。
【符号の説明】
1 プログラマブル表示器(制御装置)
3 コンピュータ装置(制御装置)
4 入出力機器(デバイス)
5 記録媒体
19 I/Oユニット(入出力ユニット)
32 I/O割付情報作成部
32b ドライバ指定部(ユニット指定手段)
32c データタイプ指定部(データタイプ指定手段)
32d 割付部(割付手段)
32e インポート/エクスポート部(転送手段)
33 割付情報ファイル(外部ファイル)[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an input / output address setting device, in which assignment information for assigning an input / output address to a device connected to the input / output unit is used as it is even if the input / output driver is changed when the input / output unit is replaced. The present invention relates to an output address setting program and a recording medium on which it 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) is a programming language that has been widely used since the ladder circuit can be designed relatively easily using a relay symbol, and is still the most commonly used programming language. Programming software such as a ladder editor has become widespread as a programming tool used in such programming work using a programming language. Since this software can create a ladder diagram or the like in a form including a ladder symbol in a computer device such as a personal computer, it is easy to create and edit a program.
[0005]
In addition, in order to execute the created program, the input number and output number (I / O address) previously assigned to the input terminal and output terminal of the PLC, and the control target connected to each input / output terminal It is necessary to make assignments with devices. For this reason, the above-described programming software (editor) can be set and registered for the assignment. 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 above IEC-compliant editor assigns devices and I / O addresses via variables (free variables), so the above memory table is not necessary, and it is possible to change the PLC model. Even if the I / O address changes, the allocation once determined can be easily changed.
[0006]
For this reason, the above editor stores the result of assigning variables to the above I / O addresses as assignment information (I / O settings).
[0007]
Further, in recent years, generalization has been progressing like a so-called open controller (software PLC) that realizes a PLC function by software, with respect to a PLC configured by a manufacturer's original specification. The open controller is composed of a general-purpose personal computer and a panel computer suitable for the factory floor. The I / O, OS, programming language, etc. are standardized, enabling a system configuration that is not bound by the manufacturer's own specifications. .
[0008]
Furthermore, a model equipped with a PLC function by mounting an I / O or the like on a programmable display as an HMI (Human Machine Interface) device has appeared.
[0009]
Allocation information is also required for a device having such a PLC function, as with a PLC.
[0010]
Various types of I / O are prepared according to the type and number of devices connected to each, the type of data to be handled, and the like. There is a model in which such an I / O is unitized so that it can be detachably attached to an apparatus main body having a PLC function and can be replaced. Examples of the I / O unit include various types of I / O units connected to a DIO unit for inputting / outputting digital data and a Flex Network (registered trademark) I / F unit constituting a remote I / O for high-speed communication. An I / O unit (analog / digital conversion unit, high-speed counter unit, etc.) is used. In order to perform data communication via such an I / O unit, it is necessary to install driver software (I / O driver) in the apparatus main body.
[0011]
When setting I / O, first, an I / O driver is selected, and a unit number is designated for the I / O driver. Then, after designating the data type (bit or word) of the device connected to each terminal, variables are assigned to the I / O addresses. The allocation information is set by such a series of operations.
[0012]
[Problems to be solved by the invention]
However, in the above method, when the I / O driver is changed due to the replacement of the I / O unit (including the interface unit such as the Flex Network I / F unit), the allocation information set for the previous I / O driver. Cannot be used for a modified I / O driver. For this reason, it is necessary to reset the allocation information by performing the above-described series of operations for the I / O driver. Therefore, every time the type of the I / O driver is changed, the allocation information must be reset, and the work for that is troublesome. Further, when the allocation information set for various I / O drivers is stored and managed for reuse, an extra storage area is required.
[0013]
The present invention has been made in view of the circumstances described above, and is an input / output address setting device and an input / output device that can share the allocation information regardless of the I / O driver and solve the above-described disadvantages. An object of the present invention is to provide an address setting program and a recording medium on which the address setting program is recorded.
[0014]
[Means for Solving the Problems]
In order to solve the above-described problems, the input / output address setting device of the present invention has an input / output unit having a terminal to which the device is connected for data input / output with the device, and is exchangeably attached. Programmable display having a programmable logic controller function having a driver corresponding to the input / output unit for managing the communication operation of the input / output unit according to the assignment of the input / output address for identifying the terminal and the variable associated with the device An input / output address setting device for assigning the input / output address and the variable to the input / output unit, wherein the input / output unit is a digital input / output unit for inputting / outputting digital data. A unit that specifies a unit number indicating that it is an I / O unit And specifiers unit, a data type specification means for data devices connected to the terminals of the input and output units in which the unit number is designated to specify whether or word data is bit data, When the input / output unit is replaced, an operation for selecting the driver corresponding to the replaced input / output unit is performed, and the driver is incorporated in the driver stored in the memory of the programmable display. Transfer means for transferring the allocation relationship between the variable and the input / output address of the input / output unit before replacement to an external file; When the combination of the unit number and the data type for the input / output unit before and after replacement matches for each terminal, Reading means for reading the allocation relationship transferred to the external file, and the read An allocation means for allocating the input / output address newly set for the input / output unit after replacement and the variable used in the input / output unit before replacement based on the allocation relationship is provided. .
[0015]
In the above configuration, when the input / output unit (including the interface unit such as the Flex Network I / F unit) is replaced, the unit designation means Unit number Is specified, and the data type is specified by the data type specifying means. Such designation is usually performed by an input operation by the user in accordance with the input / output unit to be replaced.
[0016]
For the I / O unit after replacement, Unit number And the data type are specified, the input / output unit before and after replacement is assigned by the assigning means. For each terminal of the combination of the unit number and the data type A match is determined. As a result, if they match, the same variable as the input / output unit before replacement can be used even if the input / output unit is replaced. Assign an output address.
[0017]
As a result, even if the I / O driver is changed due to the replacement of the input / output unit, the previous variable is automatically assigned to the input / output address, so the same assignment work using the same variable is performed again. There is no need.
[0018]
In the input / output address setting device, the assigning means assigns the variable and the input / output address when the number of terminals of the input / output unit after replacement is less than the number of terminals of the input / output unit before replacement. Preferably not. Since the number of terminals after replacement of the input / output unit decreases, it may not be possible to associate variables with the same numbered terminals via the input / output addresses. In such a case, the assigning means performs the assignment. By not having the above, the above-mentioned inconvenience can be avoided.
[0019]
The input / output address manual setting device preferably includes transfer means for transferring the allocation relationship to an external file when the input / output unit is replaced. As a result, the allocation relationship can be edited by another application program.
[0020]
The input / output address setting program of the present invention includes the above-described input / output address setting devices. Functions as a computer that realizes Let me of It is. The recording medium of the present invention is a computer-readable recording medium on which the editor program is recorded.
[0021]
Even with these input / output address setting programs and recording media, the automation of allocation of variables and input / output addresses after replacement of input / output units, which is realized by each of the above input / output address setting devices, is similarly realized. Can do.
[0022]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described with reference to FIGS. 1 to 8 as follows.
[0023]
The display / control system according to the present embodiment includes a
[0024]
The
[0025]
The
[0026]
As shown in FIG. 2, the
[0027]
The display control system program is a program for realizing a basic function for performing image display control. The screen data is created by a drawing editor (not shown), which is one of the components of the
[0028]
The control function program is a program for realizing the basic functions of sequence control. The user program (control procedure program) is created by a user program editor described later and downloaded to the
[0029]
The I / O driver is a program for managing an I /
[0030]
The components included in the above screen data are prepared in advance as imaged basic components such as a touch switch, a lamp, and various displays (for example, a numerical display and a meter display). In addition, as a component, in order to express a dynamic change such as a switch or a numerical value display at an arbitrary position on the screen, a function unit (in which a desired moving image function is set in a rectangular area set at a desired position ( Tag). On the user screen including such a component, the component moves according to the operation of the input /
[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. A set of reference information I including one or a plurality of data to be referred to is provided.
[0032]
CPU11 controls operation | movement of each part of the
[0033]
The
[0034]
The
[0035]
The
[0036]
Moreover, the
[0037]
The I /
[0038]
The I /
[0039]
The
[0040]
The
[0041]
The
[0042]
Next, the
[0043]
The
[0044]
The
[0045]
The
[0046]
The I / O allocation
[0047]
The user program editor such as a ladder editor is programming software for creating a user program that defines a control procedure so that the input /
[0048]
The
[0049]
Further, the
[0050]
The
[0051]
The data
[0052]
The allocating
[0053]
The above allocation result is registered as a temporary file in the RAM of the
[0054]
The I / O address used in the programming language is represented by, for example, “% IX 1.0.1” for the input address and “% QX 1.0.1” for the output address. The first digit “1” represents the terminal number of the I /
[0055]
When performing the allocation, the
[0056]
Further, the
[0057]
The import /
[0058]
The
[0059]
The user program editor including the I / O allocation
[0060]
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.
[0061]
Further, since the
[0062]
Next, I / O allocation when the I / O driver is changed in the display / control system configured as described above will be described. Here, the case where the I /
[0063]
When connecting a DIO unit as the I /
[0064]
First, the user clicks a
[0065]
Next, the user specifies the data type of the device connected to each terminal of the DIO unit in the above window. Since the data type is specified in association with the unit number, it is registered with the association.
[0066]
As a result, the aforementioned I / O address including the unit number is determined. Thus, the I / O address is associated with the data type via the unit number.
[0067]
Further, the user clicks an
[0068]
In this state, when the I /
[0069]
The user selects an I / O driver for the replaced I / O unit 19 (S1). At this time, the user is connected via the Flex Network I / F unit from the type of the I /
[0070]
Next, with the selection of the I / O driver described above, the allocation information is output from the I / O driver stored in the
[0071]
As described above, after the I / O driver allocation information is stored in advance, the I / O allocation is set for the Flex Network I / F unit. Further, by exporting the allocation information to an external file such as the
[0072]
For the I / O assignment setting in this case, the operation is performed in the same manner as the procedure for the DIO unit until the data type is specified. Here, the procedure will be described with reference to the flowchart of FIG.
[0073]
First, as in S1 described above, the user selects an I / O driver for the replaced I / O unit 19 (S11). Subsequently, it is determined whether or not the I / O driver selected as described above is an I / O driver that can import and use the allocation information stored in the allocation information file 33 (S12). .
[0074]
At this time, the user instructs automatic allocation between the variable already created by the
[0075]
If it is not determined in S12 that the selected I / O driver can use the allocation information, the allocation information of the pre-replacement DIO unit cannot be used, and the process is terminated. If it is determined in S12 that the selected I / O driver can use the allocation information, the variable included in the allocation information of the DIO unit before replacement is a variable that can be imported, that is, the DIO after replacement. It is determined whether the unit can be used for I / O allocation (S13). Here, based on the relationship between the number of input / output points of the DIO unit before replacement and the number of input / output points of the DIO unit after replacement, it is determined whether or not it is compatible before and after replacement.
[0076]
For example, when the number of input / output points of the I /
[0077]
If it is determined in S13 that the variable is not an importable variable, the processing is terminated as it is because the allocation information of the DIO unit before replacement cannot be used. If it is determined in S13 that the variable can be imported, and if the variable corresponds before and after the exchange, the import /
[0078]
The data type common to both DIO units obtained from this allocation information is the unit number of the replaced DIO unit (including the Flex Network I / F unit), and the I / O address including it, according to the designation of the unit number. Associated with. Thereby, the allocating
[0079]
As a result, for example, in the I / O allocation displayed in the allocation window 7 shown in FIG. 7, the I / O driver (Flex Network driver) corresponding to the DIO unit connected via the Flex Network I / F unit The variables and the I / O addresses are assigned with the same correspondence to the assignment shown in FIG. Specifically, in the I / O assignment shown in FIG. 4, the number of input / output points of the DIO unit is 16/16 for input / output, and variables are assigned to terminal numbers “0” to “4” for input terminals. On the other hand, variables are assigned to terminal numbers “0” to “4” at the output terminals. On the other hand, in the I / O assignment shown in FIG. 7, the number of input / output points of the DIO unit is 8/8 for input / output, and variables are assigned to terminal numbers “0” to “4” at the input terminal. On the other hand, variables are assigned to terminal numbers “0” to “4” at the output terminals. Thus, the same variable is assigned to the same terminal number in both I / O assignments.
[0080]
Then, the allocation information obtained as a result is downloaded to the
[0081]
As described above, in the display / control system according to the present embodiment, in the I /
[0082]
Also, for I / O drivers with common allocation information, it is not necessary to create allocation information redundantly for each I / O driver, so that it is possible to reduce the storage area when storing allocation information.
[0083]
In the present embodiment, the
[0084]
For example, the display / control system shown in FIG. 8 is configured around a so-called open controller (software PLC) that operates by software.
[0085]
The open controller is constituted by the
[0086]
The I / O unit 39 includes a large number of input / output terminals, input / output circuits and the like so that the input /
[0087]
The I / O control interface 40 is an interface circuit that mediates transmission / reception of signals between the
[0088]
The
[0089]
When the
[0090]
The
[0091]
In such a
[0092]
In the present embodiment, as the I /
[0093]
【The invention's effect】
As described above, the input / output address setting device according to the present invention is provided with an exchangeable input / output unit having a terminal to which the device is connected for data input / output with the device. For a programmable display having a programmable logic controller function having a driver corresponding to the input / output unit that manages the communication operation of the input / output unit according to the assignment of the input / output address and the variable associated with the device, An input / output address setting device for assigning the input / output address and the variable, wherein the input / output unit is a digital input / output unit with respect to the input / output unit for inputting / outputting digital data. A unit designating means for designating a unit number indicating that there is A data type specification means for data devices connected to the terminals of the input and output units in which the unit number is designated to specify whether or word data is bit data, When the input / output unit is replaced, an operation for selecting the driver corresponding to the replaced input / output unit is performed, and the driver is incorporated in the driver stored in the memory of the programmable display. Transfer means for transferring the allocation relationship between the variable and the input / output address of the input / output unit before replacement to an external file; When the combination of the unit number and the data type for the input / output unit before and after replacement matches for each terminal, Reading means for reading the allocation relationship transferred to the external file, and the read An allocation means for allocating the input / output address newly set for the input / output unit after replacement and the variable used in the input / output unit before replacement based on the allocation relationship is provided. .
[0094]
As a result, even if the I / O driver is changed due to the replacement of the input / output unit, The combination of unit number and data type is If they are the same, the previous variable is automatically assigned to the input / output address, so there is no need to perform the same assignment work using the same variable again. Therefore, it is possible to improve the efficiency of the input / output address setting operation.
[0095]
In the above input / output address setting device, when the assigning means assigns a variable to an input / output address when the number of terminals of the input / output unit after replacement is less than the number of terminals of the input / output unit before replacement. By not doing so, it is possible to avoid the inconvenience that the number of terminals after replacement of the input / output unit is reduced and variables cannot be associated with terminals of the same number via the input / output addresses. Therefore, the input / output address setting with higher reliability can be realized.
[0096]
In the above input / output address setting device, when the input / output unit is replaced, the assignment relation is edited by another application program by providing a transfer means for transferring the assignment relation to an external file. Is possible. Therefore, there is an effect that even the allocation relationship once determined can be changed when the input / output unit is replaced.
[0097]
The input / output address setting program of the present invention includes the above-described input / output address setting devices. Functions as a computer that realizes I will let you. The recording medium of the present invention is a computer-readable recording medium that records the above input / output address setting program.
[0098]
Even with these input / output address setting programs and recording media, the automation of allocation of variables and input / output addresses after replacement of input / output units, which is realized by each of the above input / output address setting devices, is similarly realized. Can do. Therefore, the above-described effects achieved by each of the above input / output address setting devices can be similarly achieved.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a display / control system according to an embodiment of the present invention.
FIG. 2 is an explanatory diagram showing a program configuration stored in an FEPROM of a programmable display in the display / control system.
FIG. 3 is an explanatory diagram showing a basic format of instruction processing words included in screen data of a user screen displayed on the programmable display.
FIG. 4 is an explanatory diagram showing an allocation window provided for I / O allocation by an I / O allocation information creation unit of a computer device in the display / control system.
FIG. 5 shows the allocation information incorporated in the I / O driver when the I / O driver corresponding to the I / O unit of the programmable display in the display / control system is replaced. The flowchart which shows the procedure exported to a file is shown.
FIG. 6 shows the allocation information in the external file when the I / O driver corresponding to the I / O unit of the programmable display in the display / control system is replaced. Shows a flowchart showing the import procedure.
7 is an explanatory diagram showing the allocation window displaying an I / O allocation different from the I / O allocation displayed in the allocation window of FIG. 4. FIG.
FIG. 8 is a block diagram showing a configuration of another display / control system according to an embodiment of the present invention.
[Explanation of symbols]
1 Programmable display (control device)
3 Computer device (control device)
4 I / O devices
5 recording media
19 I / O unit (input / output unit)
32 I / O assignment information creation part
32b Driver designation part (unit designation means)
32c Data type designation part (data type designation means)
32d Allocation part (allocation means)
32e Import / export section (transfer means)
33 Allocation information file (external file)
Claims (4)
デジタルデータを入出力するためのデジタル入出力ユニットである上記入出力ユニットに対し、当該入出力ユニットがデジタル入出力ユニットであることを示すユニット番号を指定するユニット指定手段と、
上記ユニット番号が指定された入出力ユニットの上記端子に接続されるデバイスのデータがビットデータであるかまたはワードデータであるかを指定するデータタイプ指定手段と、
上記入出力ユニットが交換される際に、交換後の上記入出力ユニットに対応した上記ドライバを選択する操作が行われることを契機に、上記プログラマブル表示器のメモリに格納された上記ドライバに組み込まれている交換前の上記入出力ユニットについての変数と入出力アドレスとの割付関係を外部ファイルに転送する転送手段と、
交換前後の上記入出力ユニットについての上記ユニット番号と上記データタイプとの組み合わせが上記端子毎に一致したときに、上記外部ファイルに転送された上記割付関係を読み出す読出手段と、
読み出された上記割付関係に基づいて、交換後の上記入出力ユニットについて新たに設定された上記入出力アドレスと交換前の入出力ユニットで使用した上記変数とを割り付ける割付手段とを備えていることを特徴とする入出力アドレス設定装置。An input / output unit having a terminal to which the device is connected for data input / output with the device is interchangeably attached, and an input / output address that identifies the terminal and a variable associated with the device An input / output address setting device that assigns the input / output address and the variable to a programmable display having a programmable logic controller function having a driver corresponding to the input / output unit that manages the communication operation of the input / output unit according to the assignment. Because
Unit designation means for designating a unit number indicating that the input / output unit is a digital input / output unit for the input / output unit which is a digital input / output unit for inputting / outputting digital data;
Data type designating means for designating whether data of a device connected to the terminal of the input / output unit in which the unit number is designated is bit data or word data;
When the input / output unit is replaced, an operation for selecting the driver corresponding to the replaced input / output unit is performed, and the driver is incorporated in the driver stored in the memory of the programmable display. Transfer means for transferring the allocation relationship between the variable and the input / output address of the input / output unit before replacement to an external file;
Reading means for reading out the assignment relationship transferred to the external file when the combination of the unit number and the data type for the input / output unit before and after replacement matches for each terminal ;
An allocation means for allocating the newly set input / output address and the variable used in the input / output unit before replacement based on the read allocation relationship; An input / output address setting device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001274328A JP3939518B2 (en) | 2001-09-10 | 2001-09-10 | Input / output address setting device, input / output address setting program and recording medium recording the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001274328A JP3939518B2 (en) | 2001-09-10 | 2001-09-10 | Input / output address setting device, input / output address setting program and recording medium recording the same |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003085119A JP2003085119A (en) | 2003-03-20 |
JP3939518B2 true JP3939518B2 (en) | 2007-07-04 |
Family
ID=19099388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001274328A Expired - Fee Related JP3939518B2 (en) | 2001-09-10 | 2001-09-10 | Input / output address setting device, input / output address setting program and recording medium recording the same |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3939518B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107092206A (en) * | 2016-02-17 | 2017-08-25 | 霍尼韦尔国际公司 | With automatic International Electrotechnical Commission(IEC)The input/output of address generation(I/O)Binding |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4743282B2 (en) * | 2009-01-26 | 2011-08-10 | 横河電機株式会社 | Redundant input / output module |
JP5810563B2 (en) * | 2011-03-15 | 2015-11-11 | オムロン株式会社 | Control program development support apparatus, control program development support program, and recording medium |
JP6289322B2 (en) * | 2014-09-12 | 2018-03-07 | 発紘電機株式会社 | Programmable display with I / O control function, control system |
US11531315B2 (en) * | 2017-10-12 | 2022-12-20 | Mitsubishi Electric Corporation | Distributed control system |
-
2001
- 2001-09-10 JP JP2001274328A patent/JP3939518B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107092206A (en) * | 2016-02-17 | 2017-08-25 | 霍尼韦尔国际公司 | With automatic International Electrotechnical Commission(IEC)The input/output of address generation(I/O)Binding |
CN107092206B (en) * | 2016-02-17 | 2022-01-04 | 霍尼韦尔国际公司 | Input/output (I/O) binding with automatic International Electrotechnical Commission (IEC) address generation |
Also Published As
Publication number | Publication date |
---|---|
JP2003085119A (en) | 2003-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7603183B1 (en) | Editor device and recorded medium on which editor program is recorded | |
US7456839B2 (en) | Screen creating device | |
JP2012194678A (en) | Control program development support device, program for supporting control program development, and recording medium | |
JP2009146229A (en) | Programmable controller system | |
JP3847585B2 (en) | Editor registration device, registration 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 | |
JP3847601B2 (en) | Control display device, control program, and recording medium recording the same | |
JP4462426B2 (en) | PLC tool device | |
JP3913414B2 (en) | Editor device and recording medium recording editor program | |
JP3795357B2 (en) | Editor device, editor program, and recording medium recording the same | |
JP2002062910A (en) | Editor device and storage medium recording editor program | |
JP3795473B2 (en) | Editor device and recording medium recording editor program | |
US7080353B2 (en) | Addon mechanism for a control system based on a type data field | |
JP3195322B2 (en) | Editor device and recording medium recording editor program | |
JP3710731B2 (en) | Editor device and recording medium recording editor program | |
JP2001075791A (en) | Editor device and recording medium recording editor program | |
JP3712640B2 (en) | Editor device and recording medium recording editor program | |
JP2001075614A (en) | Editor device and recording medium recording editor program | |
JP4515434B2 (en) | Unit information setting device, unit information setting program, and recording medium recording the same | |
JP2001075616A (en) | Editor device and recording medium recording editor program | |
JP2003044277A (en) | Program development support device, program development support program and recording medium having the same program recorded thereon | |
JP2002244705A (en) | Data transfer system and data transfer program for editor device | |
JP3712641B2 (en) | Editor device and recording medium recording editor program | |
EP3933523A1 (en) | Engineering device, engineering method, and program | |
US20220398355A1 (en) | Design support device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051003 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051101 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051222 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20051222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060620 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060811 |
|
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: 20070327 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070328 |
|
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: 20110406 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120406 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130406 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130406 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140406 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |