(57)【特許請求の範囲】
【請求項１】
プログラム構成単位の組合わせでプログラミングが行われ、このプログラムで使用するグローバル変数が定義されるＰＬＣのグローバル変数定義方式において、
多数のグローバル変数を繰り返し定義を行う際に、グローバル変数の一括定義画面を表示し、この画面に対してグローバル変数の固定部分が指定されたときに当該変数の属性値を自動更新してグローバル変数を一括定義するツールを備えると共に、
前記ツールは、グローバル変数の一括定義画面上で、
グローバル変数名を固定部分と更新部分で設定でき、この更新部分では数値の桁数が指定できる変数名指定項目と、
前記変数名指定での更新部分の番号初期値を設定できる変数番号初期値項目と、
グローバル変数の個数を設定できる変数個数項目と、
変数のデータ種別が設定できるデータ種別項目と、
前記変数名指定の更新部分に使用する数値の表現形式を指定する変数番号表現項目と、
グローバル変数をデータメモリの固定アドレスに配置する場合に、先頭アドレスを設定できるアドレス先頭項目と、
各グローバル変数に共通に与えるコメントを設定できる共通コメント項目と、
を備え、各項目で設定された内容に従って、変数名、アドレス、コメントを更新しながら、指定された個数だけグローバル変数を一括定義することを特徴とするＰＬＣのグローバル変数定義方式。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＬＣ（プログラマブルコントローラ）のグローバル変数定義方式に関する。
【背景技術】
【０００２】
ＰＬＣは、ＰＯＵ（プログラム構成単位）の組合わせによってシーケンス制御システムの開発を可能にする。Ｊ１ＳＢ３５０３（ＩＥＣ６１１３１−３）ではＰＯＵによりプログラムの部品化が実現され、ＰＯＵにはファンクション、ファンクションブロック、プログラムがあり、これらＰＯＵで取り扱われるデータにはデータ種別や変数が定義可能にされる。
【０００３】
Ｊ１ＳＢ３５０３（ＩＥＣ６１１３１−３）に規定されるプログラマブルコントローラのグローバル変数の定義方式は、複数のＰＯＵで参照する変数をグルーバル変数として定義することになっている。現状では図４に示すような定義方法が規定されている。同図において、「ＶＡＲ＿ＧＬＯＢＡＬ」と「ＥＮＤ＿ＶＡＲ」に挟まれた部分がグローバル変数の定義領域である。この例では変数「ＶＡＬ１」がＢＯＯＬ型のグローバル変数で、変数「ＶＡＬ２」がＩＮＴ型のグローバル変数である。
【０００４】
また、図４のように、テキスト形式でグローバル変数を定義するのでなく、図５のように表形式でグローバル変数を定義する方法がある。
【０００５】
多くのプログラミング装置は、図４と図５の両方の定義方式を採用し、プログラム開発者は使用するグローバル変数を逐次定義していくことになる。プログラム開発を支援する装置として、グローバル変数の定義を必要としたときに、同じグローバル変数が別の変数として重複定義されてしまうのを回避するため、ソースプログラムでのグローバル変数間の干渉をチェック可能としたものがある（例えば、特許文献１参照）。
【特許文献１】特開２００３−２４１９９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
図４の方式でグローバル変数を定義する場合、一般的なテキストエディタを使用し、コピーと貼り付けを駆使して、変数名やアドレスを変更しながら定義していくことになる。図５の表形式で定義する場合も同様な操作が必要になる。
【０００７】
これらグローバル変数の定義において、変数の数が少ない場合には特に問題にならない。しかし、大きなプラントではグローバル変数が数万個になる場合がある。このような場合、図４または図５の方式で定義することは非常に多大な労力を必要とするし、重複定義の問題も発生する。
【０００８】
このうち、重複定義の問題は前記の特許文献１のようなツールを利用することで解決できる。しかし、図４または図５の両方の定義方式を採用して、多数のグローバル変数の繰り返し定義を簡易にするものはなかった。
【０００９】
本発明の目的は、多数のグローバル変数の繰り返し定義を簡易にしたＰＬＣのグローバル変数定義方式を提供することにある。
【課題を解決するための手段】
【００１０】
本発明は、前記の課題を解決するため、グローバル変数が同じような属性を持ったものが連続するという特徴を利用し、多数のグローバル変数を繰り返し定義を行う際に、テキスト形式または表形式で繰り返し記述する代わりに、グローバル変数の固定部分が指定されたときに属性値の自動更新を行うことによってグローバル変数を一括定義できるようにしたもので、以下の定義方式を特徴とする。
【００１１】
プログラム構成単位の組合わせでプログラミングが行われ、このプログラムで使用するグローバル変数が定義されるＰＬＣのグローバル変数定義方式において、
多数のグローバル変数を繰り返し定義を行う際に、グローバル変数の一括定義画面を表示し、この画面に対してグローバル変数の固定部分が指定されたときに当該変数の属性値を自動更新してグローバル変数を一括定義するツールを備えると共に、
前記ツールは、グローバル変数の一括定義画面上で、
グローバル変数名を固定部分と更新部分で設定でき、この更新部分では数値の桁数が指定できる変数名指定項目と、
前記変数名指定での更新部分の番号初期値を設定できる変数番号初期値項目と、
グローバル変数の個数を設定できる変数個数項目と、
変数のデータ種別が設定できるデータ種別項目と、
前記変数名指定の更新部分に使用する数値の表現形式を指定する変数番号表現項目と、
グローバル変数をデータメモリの固定アドレスに配置する場合に、先頭アドレスを設定できるアドレス先頭項目と、
各グローバル変数に共通に与えるコメントを設定できる共通コメント項目と、
を備え、各項目で設定された内容に従って、変数名、アドレス、コメントを更新しながら、指定された個数だけグローバル変数を一括定義することを特徴とする。
【発明の効果】
【００１３】
以上のとおり、本発明によれば、多数のグローバル変数を繰り返し定義を行う際に、グローバル変数の固定部分が指定されたときに属性値の自動更新を行うことによってグローバル変数を一括定義できるようにしたため、多数のグローバル変数の繰り返し定義が簡易になる。
【００１４】
（１）プログラム開発者は、同一の属性を持つグローバル変数が連続した場合に、グローバル変数定義を個別に行う必要がなくなる。
【００１５】
（２）個別にグローバル変数を定義した場合、グローバル変数名やアドレスを重複定義する可能性が大いにあるが、一括定義することで、そのような重複定義は無くなる。
【発明を実施するための最良の形態】
【００１６】
図１は、本発明の実施形態を示すプログラミング装置の要部構成図である。プログラミングツール１０は、通常のパーソナルコンピュータをコンピュータ資源としてそれを使用したソフトウェア構成とし、プログラム入力／編集機能１１，ソースファイル１２，コンパイル機能１３，オブジェクトファイル１４，ビルド機能１５および実行ファイル１６を搭載する。入力装置２０はキーボードやマウスで構成され、出力装置３０はディスプレイやプリンタ、さらにハードディスク等の外部記憶装置で構成される。
【００１７】
これらプログラミングツール１０と入力装置２０および出力装置３０を使ったプログラム開発は、プログラム入力／編集機能１１によりＰＯＵ等のプログラムをソースコードとして記述してソースファイル１２に順次格納し、このソースコードはコンパイル機能１３によるコンパイルでオブジェクトファイル１４として保存し、さらにビルド機能１５によるオブジェクトファイルのリンクで実行ファイル１６を作成する。
【００１８】
ここで、プログラム入力／編集機能１１によるＰＯＵ作成や編集に際し、グローバル変数は同じような属性を持ったものが連続するという特徴がある。例えば、入出力モジュールのデータはＢＯＯＬ型のグローバル変数として定義することになる。他装置との伝送データはＩＮＴ型データが連続したものになる。
【００１９】
このような特徴を利用して、本実施形態では、プログラミング装置に同じ属性を持つグローバル変数を一括して定義できるグローバル変数一括定義機能（ツール）をプログラミングツール１０に搭載しておき、グローバル変数の定義を必要とするときにこの機能の実行によって変数定義を簡易にする。
【００２０】
グローバル変数一括定義機能は、図２に例を示す入力画面を設け、設定項目名としては、「変数名指定」、「変数番号初期値」、「変数個数」、「変数番号表現」、「データ種別」、「アドレス先頭」、「共通コメント」を設け、設定操作ボタンとしては「ＯＫ」と「キャンセル」を設ける。
【００２１】
図２の各設定項目名のうち、変数名指定は、グローバル変数の固定部分と更新部分を設定する。図２では「ＡＢＣ」が固定部分で、「％３ｎ」が更新部分を示す。％３ｎで３桁の数値であることを示す。
【００２２】
変数番号初期値は、変数名指定での更新部分の番号初期値を設定する。図２では「０００」が初期値である。
【００２３】
変数個数は、画面で一括定義するクローバル変数の数である。図２では１２８個を一括定義する。
【００２４】
変数番号表現は、変数名指定の更新部分に使用する数値の表現形式を指定する。図２では１０進数で表現する設定になっている。したがって、更新部分は０００〜１２７になる。
【００２５】
データ種別は、グローバル変数のデータ種別を設定する。図２ではＢＯＯＬ型を設定している。プルダウンメニューで他のデータ種別を設定できるようになっている。
【００２６】
アドレス先頭は、グローバル変数をデータメモリの固定アドレスに配置する場合に、先頭となるアドレスを設定する。図２では％ＩＸ１０００が先頭になる。したがって、この例では％ＩＸ１０００〜％ＩＸ１１２７に配置される。
【００２７】
共通コメントは、各グローバル変数に与えるコメントである。これも変数名指定と同様に、固定部分と更新部分を設定できるようにする。
【００２８】
図３は表形式のグローバル変数定義例である。この定義により、図２と同等な定義を行っている。即ち、図２の例では１２８個のグローバル変数を一括定義したことになり、この定義方法で変数名とアドレスが自動的に更新されたグローバル変数を定義することができる。
【００２９】
以上のようにして設定されたグローバル変数は、グローバル変数定義ファイルとしてソースファイル１２に格納される。同様に、オブジェクトファイル１４にはグローバル変数オブジェクトファイルとして格納される。
【００３０】
したがって、多数のグローバル変数を定義する場合に一括定義で操作が簡易になり、しかもグローバル変数名やアドレスを重複定義することはない。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施形態を示すプログラミング装置の要部構成図。
【図２】グローバル変数一括定義画面例。
【図３】表形式のグローバル変数定義例。
【図４】テキスト形式のグローバル変数定義例。
【図５】表形式のグローバル変数定義例。
【符号の説明】
【００３２】
１０  プログラミングツール
１１  プログラム入力／編集機能
１２  ソースファイル
１３  コンパイル機能
１４  オブジェクトファイル
１５  ビルト機能
１６  実行ファイル
２０  入力装置
３０  出力装置
【図１】
0005205988.tif 000002
【図２】
0005205988.tif 000003
【図３】
0005205988.tif 000004
【図４】
0005205988.tif 000005
【図５】
0005205988.tif 000006