"シーケンスプログラムおよび通信ユニットパラメータを格納する記憶手段と、前記記憶手段から前記シーケンスプログラムを読み出すシーケンスプログラム読み出し手段と、前記記憶手段から前記通信ユニットパラメータを読み出す通信ユニットパラメータ読み出し手段と、前記シーケンスプログラムを構成する命令と前記命令が出力するデータサイズとが格納された情報テーブルと、前記シーケンスプログラムの前記命令が出力する第1データ領域と、前記通信ユニットパラメータに設定された受信データ領域を取得する受信データ領域取得手段と、前記受信データ領域取得手段により取得された第2データ領域と、前記第1データ領域および前記第2データ領域の使用状況を登録する使用状況テーブルと、前記第1データ領域および前記第2データ領域の使用状況を前記使用状況テーブル登録するとともに、領域間の重複状態を判定する使用状況登録手段と、前記重複状態にあるデータ領域を登録する重複リストと、前記重複リストにより、前記シーケンスプログラムと前記通信ユニットパラメータの重複状態の確認をおこなうプログラムチェック手段と、を備えることを特徴とするプログラマブルコントローラの周辺装置。請求項1に記載のプログラマブルコントローラの周辺装置であって、前記受信データ領域取得手段は、前記通信ユニットパラメータの通信方式を判別する通信方式判別手段と、前記通信方式ごとに定義されたパラメータ情報と、前記通信ユニットパラメータの設定値を取得するパラメータ設定値取得手段と、前記パラメータの設定値から受信データを格納するデータ領域の先頭アドレスおよびデータサイズを計算するアドレス計算手段と、を備えることを特徴とするプログラマブルコントローラの周辺装置。請求項1または2に記載のプログラマブルコントローラの周辺装置であって、前記データ領域の前記使用状況と重複状態を識別可能に画面に表示する使用状況表示手段を備えることを特徴とするプログラマブルコントローラの周辺装置。請求項1または2に記載のプログラマブルコントローラの周辺装置であって、重複状態にある前記データ領域のアドレスが割り付けられた前記シーケンスプログラムの前記命令コードを他の前記命令コードと識別可能に画面に表示するシーケンスプログラム表示手段を備えることを特徴とするプログラマブルコントローラの周辺装置。しかしながら、データ領域の重複状態は、シーケンスプログラムの各命令が出力するデータ領域の間で発生するだけではない。プログラマブルコントローラが通信ユニットを介してネットワークに接続され、シーケンスプログラムが他のプログラマブルコントローラとデータ交換をおこなっている場合、通信ユニットの受信データ領域とシーケンスプログラムの命令が出力するデータ領域との間でも重複状態が発生することが想定される。従来のプログラムチェック機能は、この重複状態を検出することができないという問題があった。本発明はかかる問題点を解決するためになされたもので、他のプログラマブルコントローラとのデータ交換をおこなうシーケンスプログラムに対し、通信ユニットの受信データ領域とシーケンスプログラムの命令が出力するデータ領域との間で重複状態を検出することができるプログラムチェック機能を備えたプログラマブルコントローラの周辺装置を提供することを目的とする。請求項1に係わる発明は、上記の課題を解決するため、シーケンスプログラムおよび通信ユニットパラメータを格納する記憶手段と、前記記憶手段から前記シーケンスプログラムを読み出すシーケンスプログラム読み出し手段と、前記記憶手段から前記通信ユニットパラメータを読み出す通信ユニットパラメータ読み出し手段と、前記シーケンスプログラムを構成する命令と前記命令が出力するデータサイズとが格納された情報テーブルと、前記シーケンスプログラムの前記命令が出力する第1データ領域と、前記通信ユニットパラメータに設定された受信データ領域を取得する受信データ領域取得手段と、前記受信データ領域取得手段により取得された第2データ領域と、前記第1データ領域および前記第2データ領域の使用状況を登録する使用状況テーブルと、前記第1データ領域および前記第2データ領域の使用状況を前記使用状況テーブル登録するとともに、領域間の重複状態を判定する使用状況登録手段と、前記重複状態にあるデータ領域を登録する重複リストと、前記重複リストにより、前記シーケンスプログラムと前記通信ユニットパラメータの重複状態の確認をおこなうプログラムチェック手段と、を備えることである。請求項2に係わる発明は、請求項1に記載のプログラマブルコントローラの周辺装置であって、前記受信データ領域取得手段は、前記通信ユニットパラメータの通信方式を判別する通信方式判別手段と、前記通信方式ごとに定義されたパラメータ情報と、前記通信ユニットパラメータの設定値を取得するパラメータ設定値取得手段と、前記パラメータの設定値から受信データを格納するデータ領域の先頭アドレスおよびデータサイズを計算するアドレス計算手段と、を備えることである。請求項3に係わる発明は、請求項1または2に記載のプログラマブルコントローラの周辺装置であって、前記データ領域の前記使用状況と重複状態を識別可能に画面に表示する使用状況表示手段を備えることである。請求項4に係わる発明は、請求項1または2に記載のプログラマブルコントローラの周辺装置であって、重複状態にある前記データ領域のアドレスが割り付けられた前記シーケンスプログラムの前記命令コードを他の前記命令コードと識別可能に画面に表示するシーケンスプログラム表示手段を備えることである。上記のように構成した請求項1の発明によれば、プログラマブルコントローラの周辺装置は、使用状況登録手段を呼び出すことにより、使用状況テーブルを生成し、シーケンスプログラムと通信ユニットパラメータの使用するデータ領域の重複状態の確認をおこなうことができる。このシーケンスプログラムと通信ユニットパラメータは、シーケンスプログラム読み出し手段および通信ユニットパラメータ読み出し手段により、読み出される。使用状況登録手段は、シーケンスプログラムの命令と情報テーブルとを参照して、命令が出力する先頭アドレスとデータサイズにより示されるデータ領域を求める。このシーケンスプログラムの命令が出力するデータ領域を第1データ領域とする。また、使用状況登録手段は、受信データ領域取得手段により、通信ユニットパラメータに設定された受信データ領域である第2データ領域を取得する。そして、使用状況登録手段は、前記第1データ領域および前記第2データ領域の使用状況を使用状況テーブルに登録するとともに、データ領域の重複状態を判定する。重複状態と判定されたデータ領域は、重複リストに登録する。この重複リストにデータ領域が登録されていない場合、シーケンスプログラムの命令が出力する第1データ領域どうしの間、およびシーケンスプログラムの命令が出力する第1データ領域と通信ユニットの受信データ領域である第2データ領域との間において、重複状態にあるデータ領域が存在しないことを示している。また、重複リストにデータ領域が登録されている場合、シーケンスプログラムの命令が出力する第1データ領域どうしの間、および、シーケンスプログラムの命令が出力する第1データ領域と通信ユニットの受信データ領域である第2データ領域との間において、重複状態にあるデータ領域が存在することを示している。このように、使用状況登録手段は、通信ユニットの受信データ領域を含め、重複状態を自動的に検出することができるので、シーケンスプログラムをプログラマブルコントローラに書き込む前に、使用状況登録手段により重複リストを生成することで、シーケンスプログラム実行前に重複状態を含めたプログラムチェックを確実におこなうことができる。さらに、重複状態の要因となったシーケンスプログラムの命令および通信ユニットパラメータを特定することができるので、重複状態の解消も容易におこなうことができる。請求項2に係わる発明によれば、通信ユニットパラメータが通信方式毎に異なるパラメータであっても、通信方式判別手段により、通信方式を判別し、パラメータ設定値取得手段が、通信方式ごとに定義されたパラメータ情報を参照することにより、パラメータの設定値を取得することができる。そして、アドレス計算手段により、パラメータの設定値から受信データを格納するデータ領域の先頭アドレスおよびデータサイズを計算することができるので、使用状況登録手段は、各種の通信方式の通信ユニットに対応して、重複状態を判定することができる。請求項3に係わる発明によれば、プログラマブルコントローラの周辺装置は、使用状況表示手段により、データ領域の使用状況の表示において、重複状態を識別可能に画面に表示するので、シーケンスプログラムおよび通信ユニットパラメータが使用するデータ領域の重複状態を一覧で見ることができる。請求項4に係わる発明によれば、プログラマブルコントローラの周辺装置は、シーケンスプログラム表示手段により、シーケンスプログラムの表示において、重複状態にあるデータ領域のアドレスが割り付けられた命令コードを、他の命令と識別可能に画面に表示することができる。これにより、重複状態の要因となったシーケンスプログラムの命令をシーケンスプログラムの表示上で容易に特定することができるので、重複状態の解消も容易におこなうことができる。[第1の実施形態]プログラマブルコントローラの周辺装置には、専用のハードウェアにより構成されるものや、汎用のパーソナルコンピュータ以下、PCと記すで構成されるもの等、種々のタイプが存在する。図1は、本実施形態の周辺装置ソフトウェアをインストールしたPCを周辺装置10として使用した場合のシステム構成図である。以下、本発明の実施形態の周辺装置10のシステム構成を図面に従って説明する。図1に示すように、周辺装置10は、CPUcentralprocessingunit11のシステムバス12を介して、システムメモリ28、HDDharddiskdrive24、通信インタフェース27、キーボード22、マウス23、ディスプレイ21が接続されている。HDD24には、周辺装置ソフトウェア26がインストールされている。システムメモリ28は、RAMrandomaccessmemory14及びROMreadonlymemory13等から構成される記憶手段である。RAM14は、CPU11によりHDD24から各プログラムを読み出して実行するのに使用される。また、RAM14は、各プログラムの実行に要するデータを一時記憶するデータ領域、各種情報を生成するワークエリアとして使用される。ROM13には、BIOSbasicinputoutputsystemプログラム13aが記憶されており、周辺装置10の起動時において、初期設定をするとともに、HDD24にインストールされているOSoperatingsystem25の起動をおこなう。通信インータフェース27は、通信ケーブル図示せずを介して、プログラマブルコントローラとの通信をおこなう。ディスプレイ21は、出力デバイスであり、周辺装置ソフトウェア26により、シーケンスプログラムの編集等をおこなう場合の画面表示の出力に使用される。キーボード22およびマウス23は、それぞれ入力デバイスであり、周辺装置ソフトウェア26により、シーケンスプログラムの編集をおこなう場合等の情報の入力に使用される。HDD24は、ハードディスクにて構成される記憶装置であり、周辺装置ソフトウェア26およびOS25等がインストールされている。周辺装置ソフトウェア26は、シーケンスプログラム編集プログラム26a、変換プログラム26b、通信ユニットパラメータ設定プログラム26c、プログラムチェックプログラム26d等が含まれている。周辺装置10は、周辺装置ソフトウェア26の各プログラムにより、各機能が実装されている。OS25は、例えば、Windows登録商標7等が適用される。シーケンスプログラム編集プログラム26aは、シーケンスプログラムソースコード14aを、対応するラダー図の形式にて編集する。シーケンスプログラムソースコード14aは、シーケンスプログラムバイナリコード図示せずを読み出し、変換プログラム26bによりに変換したものである。編集後のシーケンスプログラムソースコード14aは、変換プログラム26bにより、シーケンスプログラムバイナリコードに変換される。通信ユニットパラメータ設定プログラム26cは、シーケンスプログラムソースコード14aにて、通信ユニットを使用する場合に、通信ユニットパラメータ14bを設定する。プログラムチェックプログラム26dは、シーケンスプログラムソースコード14aの整合性のチェックおよび使用状況のチェックをおこなう。この使用状況のチェックにおいて、データ領域の使用状況を示す使用状況テーブル14cと重複リスト14dが生成される。作成したシーケンスプログラムは、通信インータフェース27を介して、プログラマブルコントローラとの通信をおこない、シーケンスプログラムおよびパラメータをプログラマブルコントローラへ書き込む。この時、シーケンスプログラムの動作不良を未然に防ぐため、この書き込み前において、プログラムチェック処理をおこなっている。図2は、FL-netのネットワークに接続された複数のプログラマブルコントローラにより構成された生産設備の中のプログラマブルコントローラ100の構成図である。このプログラマブルコントローラは、FL-netのネットワークを介して、他のプログラマブルコントローラとデータ交換をおこなっている。図2に示すように、プログラマブルコントローラ100は、CPUユニット110と通信ユニット120とから構成されている。CPUユニット110と通信ユニット120は、ユニット間を接続する内部バス112を介して接続されている。この通信ユニット120は、FL-net規格に対応したものである。FL-netとは、FA制御システムに組み込まれる様々な機器プログラマブルコントローラ、ロボットコントローラ、数値制御装置、パーソナルコンピュータ等を相互に接続するネットワークの規格である。FL-netは、JEMA日本電機工業会により提唱された規格であり、コモンメモリ方式が採用されている。プログラマブルコントローラ100は、このFL-net規格に対応した通信機器である通信ユニット120を備えることで、FL-netのネットワークに組み込むことが可能となる。FL-netでは、機器間をイーサネット登録商標Ethernet登録商標により接続し、通信プロトコルにはUDP/IPUserDatagramProtocolInternetProtocolが用いられている。CPUユニット110は、CPU111の内部バス112を介して、ROM115、RAM114、プログラムメモリ113、I/O制御回路118、通信インターフェース119が接続されている。通信インータフェース119は、通信ケーブル図示せずを介して、周辺装置10との通信をおこなう。周辺装置10により、通信インータフェース119を介して、書き込まれたシーケンスプログラムおよびパラメータは、プログラムメモリ113に格納される。ROM115には、システムプログラム115aが、RAM114には、内部メモリ114aが記憶されている。システムプログラム115aは、CPUユニット110を制御するとともに、シーケンスプログラム113aを実行することにより、シーケンス制御をおこなっている。通信ユニット120は、CPU121の内部バスを介して、ROM125、RAM124、コモンメモリ124a、通信インターフェース129が接続され、この通信インターフェース129を介して、FL-netのネットワークと接続されている。FL-netのネットワークとの接続には、イーサネット登録商標ケーブルが用いられる。制御プログラム125aは、通信ユニット120の制御をしている。通信ユニット120は、複数台備えることも可能である。図3は、CPUユニット110の内部メモリ114aと通信ユニット120のコモンメモリ124aの説明図である。シーケンスプログラム113aからアクセス可能な内部メモリ114aには、受信データ領域と送信データ領域が設定されている。ネットワークを介して受信したコモンメモリ124aの他装置データを、内部メモリ114aの受信データ領域に読み出す。また、送信データ領域のデータをコモンメモリ124aに書き込むことにより、自装置データをネットワークを介して送信している。このネットワークを介して、各プログラマブルコントローラ間でサイクリック通信をおこなうことによって、各プログラマブルコントローラはコモンメモリを共有している。図4は、通信ユニットパラメータ設定プログラム26cによる、FL-net通信ユニットパラメータ設定300である。このFL-net通信ユニットパラメータ設定300により、パラメータ値を設定した後、このパラメータをプログラマブルコントローラに書き込むことで、通信ユニットは設定の通信処理をおこなう。図4に示すように、FL-net通信ユニットパラメータ設定300は、リレーリンク310とレジスタリンク410の設定を有している。リレーリンク310は、主にビット単位でのアクセスが可能な内部メモリのデータ領域のアドレス設定であり、レジスタリンク410には、主にワード単位でのアクセスが可能な内部メモリのデータ領域のアドレス設定である。それぞれ、リンク領域先頭アドレス311,411、リンク領域ワード数313,413、送信領域先頭アドレス314,414、送信領域ワード数316,416のパラメータが設定可能となっている。なお、リンク領域末尾アドレス322,422、送信領域末尾アドレス325,425は、設定されたパラメータから自動的に計算される。ここで、通信ユニットパラメータは、通信ユニットごとに番号付けされ、通信方式等の付帯情報も有している。プログラマブルコントローラが複数台の通信ユニットを備える場合、台数分の通信ユニットパラメータの設定を、それぞれにおこなう必要がある。また、FL-netの通信ユニットの場合、別途ノード番号等の設定も必要である。図5は、図4のレジスタリンク410のパラメータ設定のメモリ構成を示す説明図である。レジスタリンク410の受信データ領域は、リンク領域の範囲から送信領域の範囲を除いたR0000~R02FFと、R0500~R05FFの領域となる。なお、図示していないが、リレーリンク310の受信データ領域は、L000~L0FFと、L200~L3FFの領域となる。ここで、R0000、L000等は、シーケンスプログラムが認識可能なアドレス形式であり、先頭の識別文字に16進のアドレスを付加したものである。先頭の識別文字がRのアドレスは、リンクレジスタと呼ばれるワード単位のアドレスであり、先頭の識別文字がLのアドレスは、リンクリレーと呼ばれるビット単位のアドレスである。また、アドレスL000~L00Fの16ビットをL00Wと表記することにより、ワード単位で指定することができる。なお、本実施形態においては、2バイト16ビットを1ワードとするシステムを想定している。以上のように構成された本実施形態の周辺装置10において、データ領域の重複状態を検出する処理について説明する。図6は、情報テーブル14eの説明図である。図6に示すように、情報テーブル14eは、命令600が出力するデータ領域のアドレス601を有するオペランド番号と、データサイズ602を有するオペランド番号を有している。例えば、WBMOVの場合、出力するデータ領域のアドレスは第2オペランドに記述され、データサイズは第3オペランドに記述されていることを示している。図7は、使用状況テーブル14cの説明図である。図7に示すように、使用状況テーブル14cは、プログラマブルコントローラの内部メモリの各アドレスに対応する使用状況のフラグ情報で構成されている。アドレス順の10H毎のレコードに区切って、各アドレスの使用状況のフラグ情報をアドレス昇順にテーブル表記している。使用状況テーブル14c中、フラグ情報がオン状態の部位は、そのアドレスの内部メモリのデータ領域が使用されていることを表している。例えば、図7において、アドレスR0300~R04FFのフラグ情報はオフ状態であり、このデータ領域426が使用されていないことを示している。次に、本実施形態のプログラムチェック処理を図9のフローチャートにより説明する。図9に示すように、プログラムチェック処理は、データ領域の重複状態のチェックと整合性のチェックをおこなっている。整合性チェックは、シーケンスプログラム14aが所定の形式であるか、命令が使用するアドレスが正しいか、ジャンプ先ラベルが存在するか、等についてチェックする。ステップS101そして、チェック結果を判定し、問題があればチェック結果を記憶し、問題がなければスキップする。ステップS102ステップS103次に、シーケンスプログラム14aに対し、使用状況登録処理により、データ領域の重複状態のチェックをおこなう。使用状況テーブルと重複リストが出力される。ステップS104出力された重複リストを読み出し、重複リストが空でなければ内容を記憶し、重複リストが空ならばスキップする。ステップS105ステップS106ステップS107記憶された整合性チェックの結果および重複リストの内容を表示形式にして、ディスプレイに表示する。ステップS108次に、本実施形態の使用状況登録処理を図10のフローチャートにより説明する。図10に示すように、使用状況登録処理は、最初に初期化と先頭の通信ユニットパラメータの取得をおこなう。初期化は、使用状況テーブルと重複リストを生成し、使用状況テーブルのすべてのアドレスのフラグ情報をオフ状態にする。また、重複リストは空の状態にする。ステップS001次に、受信データ格納領域取得処理により、通信ユニットパラメータに設定された受信データを格納するアドレスとデータサイズを取得する。ステップS002例えば、図4のFL-net通信ユニットパラメータ設定300により設定されたパラメータを取得した場合について説明する。受信データ格納領域取得処理は、通信方式判別手段により、パラメータの通信方式がFL-netであると判別する。そして、FL-netのパラメータ情報を参照して、リンク領域先頭アドレス、リンク領域ワード数、送信領域先頭アドレス、送信領域ワード数の設定値を取得する。これにより、リンク領域先頭アドレスL00W、リンク領域ワード数64、送信領域先頭アドレスL10W、送信領域ワード数16が取得される。そして、アドレス計算手段により、リレーリンクの受信データ領域は、リンク領域の範囲から送信領域の範囲を除いたアドレスL00WからデータサイズFHワード分と、アドレスL20Wからデータサイズ1FHワード分と計算される。また、レジスタリンクの受信データ領域は、リンク領域の範囲から送信領域の範囲を除いたアドレスR0000からデータサイズ2FFワード分と、アドレスR0500からデータサイズFFHワード分と計算される。使用状況テーブルを参照して、このアドレスとデータサイズにより示されるデータ領域に対応するフラグ情報を取得し、使用状況を判定する。ステップS003そして、フラグ情報がデータ領域が使用されていないことを示すオフ状態ならば、データ領域が使用されていることを示すオン状態に変更する。ステップS004すでに、データ領域が使用されているならば、この通信ユニットパラメータを示す番号とアドレスを重複リストに登録する。ステップS005例えば、上述の通信ユニットパラメータを読み出した場合にあって、使用状況テーブルを参照すると、アドレスR0000~R02FF、R0500~R05FF、L000~L0FF、L200~L3FFに対応するフラグ情報がオフ状態であったとする。通信ユニットパラメータの受信データ領域は、アドレスR0000~R02FF、R0500~R05FF、L000~L0FF、L200~L3FFであり、これらは、使用されていないので、アドレスR0000~R02FF、R0500~R05FF、L000~L0FF、L200~L3FFに対応するフラグ情報をオン状態として、使用状況テーブルに登録する。ここで、使用状況テーブルにおいて、アドレスR0000~R02FF、R0500~R05FF、L000~L0FF、L200~L3FFに対応するフラグ情報の中に、すでにオン状態であるアドレスが存在した場合、そのアドレスは重複状態にあると判定する。そして、その通信ユニットパラメータを示す番号とアドレスを重複リストに登録する。なお、重複状態アドレス以外のアドレスのフラグ情報はオン状態として、使用状況テーブルに登録する。そして、パラメータから次の通信ユニットパラメータを取得する。ステップS006すべての通信ユニットパラメータについて、パラメータを取得したかを判定し、取得していなければ、ステップS002~ステップS006を繰り返し、取得していれば、次のステップへ進む。ステップS007次に、シーケンスプログラムソースコードから、先頭ステップの1命令を取得する。ステップS008情報テーブルを参照して、ステップの命令が出力するデータのアドレスとデータサイズを取得する。ステップS009例えば、図8bのシーケンスプログラムソースコードは、図8aのラダー図に対応するものである。図8bの、ステップ0105を読み出した場合、ニーモニック700のFUNCと、オペランド710のWBMOVを得る。これは、ステップ0105は、命令が関数タイプFUNCであり、その種別がWBMOVであることを示している。WBMOVはワード単位のブロック転送の命令関数であり、3個のオペランドを引数として、第1オペランド721のアドレスから第2オペランド722のアドレスへ、第3オペランド723のデータサイズ分ワード数を転送する仕様である。そして、図6の情報テーブル14eを参照することにより、命令600がWBMOVの場合、データ領域のアドレス601が第2オペランドに記述され、データサイズ602が第3オペランドに記述されていることが把握できる。ここで、図8bから第1オペランド721のD0100と、第2オペランド722のR04FCと、第3オペランド723の8dが取得される。従って、図8cに示すように、ステップ0105のWBMOVが出力するデータ領域は、アドレスR04FCからデータサイズ8ワード分である。ここでdは10進の値を示している。使用状況テーブルにおいて、このアドレスとデータサイズにより示されるデータ領域と対応するフラグ情報を取得し、使用状況を判定する。ステップS010そして、フラグ情報がデータ領域が使用されていないことを示すオフ状態ならば、データ領域が使用されていることを示すオン状態に変更する。ステップS011また、フラグ情報がデータ領域がすでに使用されていることを示すオン状態ならば、この命令のステップ番号とアドレスを重複リストに登録する。ステップS012例えば、図8bステップ0105のWBMOVを読み出した場合にあって、使用状況テーブルを参照すると、アドレスR04FC~R0503と対応するフラグ情報がオフ状態、であったとする。ステップ0105のWBMOVが出力するデータ領域は、アドレスR04FCからデータサイズ8ワード分であり、アドレスR04FC~R0503は使用されていないので、アドレスR04FC~R0503に対応するフラグ情報をオン状態として、使用状況テーブルに登録する。そして、図7に示すように、使用状況テーブルが、アドレスR04FC~R04FFと対応するフラグ情報がオフ状態、アドレスR0500~R0503と対応するフラグ情報がオン状態、であったとする。ステップ0105のWBMOVが出力するデータ領域は、アドレスR04FCからデータサイズ8ワード分であるので、アドレスR04FC~R0503が使用されているかを、使用状況テーブルをチェックして判定する。この場合、使用状況テーブルにおいて、アドレスR04FC~R04FFのフラグ情報はオフ状態であるが、アドレスR0500~R0503のフラグ情報はすでにオン状態であるため、アドレスR0500~R0503のデータ領域は、重複状態と判定される。そして、アドレスR0500~R0503とステップ番号0105の情報を重複リストに登録する。なお、アドレスR04FC~R04FFのフラグ情報はオン状態として、使用状況テーブルに登録する。次に、シーケンスプログラムソースコードから、次ステップの1命令を取得する。ステップS013シーケンスプログラムソースコードの末尾のステップまで、命令を取得したか判定し、取得していなければ、ステップS009~ステップS013を繰り返し、取得していれば、処理を終了する。ステップS014このように、使用状況登録処理は、通信ユニットの受信データ領域とシーケンスプログラムの命令が出力するデータ領域の使用状況をチェックし、その結果を使用状況テーブルおよび重複リストに出力する。本発明のプログラムチェック機能は、使用状況登録処理により、通信ユニットの受信データ領域とシーケンスプログラムの命令が出力するデータ領域との間で、重複状態を検出することができるので、シーケンスプログラムが他のプログラマブルコントローラとのデータ交換をおこなっている場合においても、確実なプログラムチェックをおこなうことができる。さらに、重複状態の要因となったシーケンスプログラムの命令および通信ユニットパラメータを特定することができるので、重複状態の解消も容易におこなうことができる。[第2の実施形態]図11は、本発明の第2の実施形態を示す使用状況表示例である。本実施形態では、シーケンスプログラム14aの使用状況を周辺装置10のディスプレイに表示する。図11に示すように、使用状況表示800は、指定されたアドレスの使用状況を表示する。使用状況表示800は、使用状況登録処理により生成された使用状況テーブルと重複リストの情報をアドレス順に一覧表形式にして表示したものである。表示アドレス801に、表示したいアドレスの識別文字を入力すると、アドレス順の10H毎の行に区切って、各アドレスの使用状況のフラグ情報をアドレス昇順に一覧802表示する。一覧802の横に備えたスクロールバー803を操作することにより、表示するアドレス範囲を変更することができる。使用状況表示800において、シーケンスプログラムの命令が使用しているデータ領域は、アドレスの識別文字811で示され、使用されていないデータ領域810は、中点で示される。また、通信ユニットパラメータに設定された受信データ領域820は、背景色を他と識別可能に表示される。そして、重複リストの情報にあるアドレスは、重複状態にあるデータ領域として、アドレスの識別文字821を強調表示する。従って、図11において、アドレスR04EC~R04F3およびR04FC~R0503は、シーケンスプログラムの命令が使用しており、R0500~R05FFは、受信データ領域に設定されているので、R0500~R0503は重複状態にあることが把握できる。このように、任意のタイミングで使用状況を表示できるので、例えば、シーケンスプログラムの編集中に使用状況表示をおこなうことにより、どこのデータ領域を使用すれば重複状態を発生させずに、領域を確保できるか、容易に把握することができる。また、使用状況表示において、重複状態にあるデータ領域を識別することができるので、このデータ領域を確認するとともに、重複状態を解消するには、どこのデータ領域を使用すればよいか、容易に把握することができる。[第3の実施形態]図12は、本発明の第3の実施形態を示すシーケンスプログラム表示例である。本実施形態では、周辺装置10によるシーケンスプログラムの表示において、重複状態にあるデータ領域を使用している命令およびアドレスを識別可能に表示する。図12に示すように、シーケンスプログラム表示900は、シーケンスプログラム上において、重複状態にあるデータ領域を使用している命令を識別可能に表示することができる。シーケンスプログラム表示900は、使用状況登録処理により生成された使用状況テーブルと重複リストの情報を参照して、重複状態にあるデータ領域を使用している命令およびアドレスを強調表示する。従って、図12において、コイル911のアドレスL220と、命令関数912は重複状態にあることが把握できる。このように、周辺装置10は、シーケンスプログラムの表示において、重複状態にあるデータ領域を使用している命令およびアドレスを強調表示できるので、係わる命令およびアドレスを容易に見つけることができる。なお、本実施形態では、使用状況表示において、命令の出力データ領域および受信データ領域を表示しているが、命令の入力データ領域および送信データ領域を識別可能にして、双方のデータ領域を表示してもよい。シーケンスプログラムにおいて使用される、すべてのデータ領域を視覚的に把握することができる。"