(57)【要約】【課題】ユニットの位置やデバイスの割り当てが変更されてもマクロの修正作業を軽減し、マクロの利用を容易にする。【解決手段】ラダープログラムマクロ作成装置は、複数のユニットの内、マクロで使用される特定のユニットの、プログラマブルコントロール装置における接続位置を示すユニット番号と、マクロ中に含まれる任意のデバイス番号を、マクロの引数として設定可能な引数設定部と、登録前のマクロ中に含まれる複数のデバイス番号から、引数設定部で引数として設定されたユニットに割り当てられたデバイスの範囲に含まれるデバイス番号を抽出すると共に、抽出されたデバイス番号を、デバイスの範囲の先頭デバイス番号を基準とする相対位置に変換するマクロ登録変換部と、引数設定部で設定されたユニット番号を引数に含むマクロを登録するマクロ登録部とを備える。【選択図】図７
2005092808.tif 000002
【特許請求の範囲】
【請求項１】
複数のユニットで構成され、一以上のユニットに指定可能なデバイスの範囲が割り当てられているプログラマブルコントロール装置において実行されるラダープログラムを作成する際に利用可能なマクロを作成するためのラダープログラムマクロ作成装置であって、
複数のユニットの内、マクロで使用される特定のユニットの、プログラマブルコントロール装置における接続位置を示すユニット番号と、マクロ中に含まれる任意のデバイス番号を、マクロの引数として設定可能な引数設定部と、
登録前のマクロ中に含まれる複数のデバイス番号から、前記引数設定部で引数として設定されたユニットに割り当てられたデバイスの範囲に含まれるデバイス番号を抽出すると共に、前記抽出されたデバイス番号を、前記デバイスの範囲の先頭デバイス番号を基準とする相対位置に変換するマクロ登録変換部と、
前記引数設定部で設定されたユニット番号を引数に含むマクロを登録するマクロ登録部と、
を備えることを特徴とするラダープログラムマクロ作成装置。
【請求項２】
請求項１に記載のラダープログラムマクロ作成装置であって、さらに
前記マクロ登録部に登録されたマクロの呼び出し時に、入力された引数のユニット番号に該当するユニットに割り当てられたデバイスの範囲の先頭デバイス番号を参照することで、前記マクロ登録変換部で変換された相対位置で表現されるデバイス番号を、実デバイス番号に変換するマクロ実行変換部を備えることを特徴とするラダープログラムマクロ作成装置。
【請求項３】
複数のユニットで構成され、一以上のユニットに指定可能なデバイスの範囲が割り当てられているプログラマブルコントロール装置において実行されるラダープログラムを作成する際に利用可能なマクロを作成するためのラダープログラムマクロ作成方法であって、
複数のユニットの内、マクロで使用される特定のユニットの、プログラマブルコントロール装置における接続位置を示すユニット番号と、マクロ中に含まれる任意のデバイス番号を、マクロの引数として設定するステップと、
登録前のマクロ中に含まれる複数のデバイス番号から、引数として設定されたユニットに割り当てられたデバイスの範囲に含まれるデバイス番号を抽出すると共に、前記抽出されたデバイス番号を、前記デバイスの範囲の先頭デバイス番号を基準とする相対位置に変換するステップと、
前記設定されたユニット番号を引数に含むマクロを登録するステップと、
を備えることを特徴とするラダープログラムマクロ作成方法。
【請求項４】
請求項３に記載のラダープログラムマクロ作成方法であって、さらに
前記登録されたマクロの呼び出し時に、入力された引数のユニット番号に該当するユニットに割り当てられたデバイスの範囲の先頭デバイス番号を参照することで、前記変換された相対位置で表現されるデバイス番号を、実デバイス番号に変換するステップを備えることを特徴とするラダープログラムマクロ作成方法。
【請求項５】
複数のユニットで構成され、一以上のユニットに指定可能なデバイスの範囲が割り当てられているプログラマブルコントロール装置において実行されるラダープログラムを作成する際に利用可能なマクロを作成するためのラダープログラムマクロ作成プログラムであって、コンピュータに、
複数のユニットの内、マクロで使用される特定のユニットの、プログラマブルコントロール装置における接続位置を示すユニット番号と、マクロ中に含まれる任意のデバイス番号を、マクロの引数として設定する機能と、
登録前のマクロ中に含まれる複数のデバイス番号から、引数として設定されたユニットに割り当てられたデバイスの範囲に含まれるデバイス番号を抽出すると共に、前記抽出されたデバイス番号を、前記デバイスの範囲の先頭デバイス番号を基準とする相対位置に変換する機能と、
前記設定されたユニット番号を引数に含むマクロを登録する機能と、
を実現させることを特徴とするラダープログラムマクロ作成プログラム。
【請求項６】
請求項５に記載のラダープログラムマクロ作成プログラムであって、さらにコンピュータに、前記登録されたマクロの呼び出し時に、入力された引数のユニット番号に該当するユニットに割り当てられたデバイスの範囲の先頭デバイス番号を参照することで、前記変換された相対位置で表現されるデバイス番号を、実デバイス番号に変換する機能を実現させることを特徴とするラダープログラムマクロ作成プログラム。
【請求項７】
請求項５または６に記載されるラダープログラムマクロ作成プログラムを格納したコンピュータで読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルコントロール装置等に使用されるラダー図を作成、編集するためのラダー図編集装置やプログラムに使用可能なマクロを作成するための、ラダープログラムマクロ作成装置、ラダープログラムマクロ作成方法、ラダープログラムマクロ作成プログラムおよびコンピュータで読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
プログラマブルコントローラ、プログラマブルロジックコントローラ、ＰＬＣ、シーケンサ等と呼ばれるプログラマブルコントロール装置（以下、ＰＬＣという）による制御シーケンスを定めるプログラムには、ラダー図（ラダーダイヤグラム）が使用される。ラダー図はラダー図編集装置やプログラムなどで作成される。ラダー図を用いて作成された実行プログラムは、ＰＬＣに転送されて実行され、ＰＬＣに接続された外部の制御対象機器を制御して所望の処理を行う。
【０００３】
ＰＬＣには、必要な機能を内蔵した一体型のパッケージタイプと、個別のユニットに種々の機能を備え、必要なユニットを組み合わせて構成するビルディングブロックタイプがある。後者については、ＣＰＵを備えるＣＰＵユニット、外部の制御対象機器と通信するためのコミュニケーションユニットやリンクユニット、入出力部（Ｉ／Ｏ）を備える入出力ユニット、Ａ／Ｄ変換ユニット、Ｄ／Ａ変換ユニット、コンピュータリンクユニット、位置決めユニット、カウンタユニット、温度調節ユニット、電源ユニット、イーサネット（登録商標）ユニット、エンドユニット等がある。各ユニットは、それぞれ背面をベースユニットに固定して、隣接するユニット同士を接続する。あるいはベースユニットを解することなくユニット同士を直接連結する。またこれらのユニットの機能を複数、一台のユニットに統合することもできる。図１に、複数のユニット３３を組み合わせたビルディングブロックタイプのＰＬＣシステム３２の構成例を示す。
【０００４】
このように複数のユニット３３を連結してＰＬＣシステム３２を構成する場合は、接続された複数のユニット３３を区別するために、各ユニット３３には固有のユニット番号が付与されていることがある。ユニット番号は、ＰＬＣのシステムにおいては一般にＣＰＵユニットを基準として、そのユニットがＣＰＵユニットから数えて何番目に接続されているかを示すものである。例えば図２のＰＬＣシステム３２においては、図２（ａ）にＰＬＣシステム３２を構成する各ユニット３３の上に付された数字がユニット番号を示している。この図において、ＣＰＵユニット３１のユニット番号は０である。また各ユニット３３には、ユニット番号に応じて、ＰＬＣ中のデバイスの範囲が割り当てられる。ユニット番号は、ＣＰＵユニット３１で実行されるラダープログラムと各ユニット３３との情報のやり取りに用いられる。図２（ｂ）に、各ユニット３３にデバイス領域範囲を設定する例を示す。
【０００５】
ところで、ＰＬＣで実行されるラダープログラムの作成においては、所定の手順を記述したマクロプログラム（本明細書において「マクロ」と呼ぶ）が使用されることがある。マクロは、再利用を目的として作成されるプログラムの集合である。例えば、ＰＬＣと制御対象機器との通信を行うための通信プロトコルマクロにおいては、プロトコルマクロは複数の送受信シーケンスで構成される。各送受信シーケンスはステップ単位のコマンド群からなる。ＣＰＵユニットのラダープログラム上で専用命令によりプロトコルマクロのシーケンス番号を指定することにより、指定されたシーケンスを実行する。これにより、メッセージが作成され、伝送路を介してリンクユニットと汎用外部機器との間での送受信が行われる。
【０００６】
このようなＰＬＣのプログラミング用アプリケーションにおけるマクロ内のプログラム中では、使用時の状況によって可変となるようなデバイスや直値を引数に指定することができる。マクロの一例を図３に基づいて説明する。図３においては、アプリケーションに利用可能な登録済みマクロとして、ＭＡＣＲＯＡおよびＭＡＣＲＯＡが予めシステムのデータファイル３４に登録されている。ＭＡＣＲＯＡにおいては、Ｒ０は実リレーの０番を指定しており、またＰ０は引数に指定されている。このため、ＭＡＣＲＯＡを実際に使用するときは、引数Ｐ０をユーザが指定する必要がある。図３の例では、左上に示す制御プログラムにＭＡＣＲＯＡが利用され、ＭＡＣＲＯＡ内の引数Ｐ０としてＲ５００のデバイスを指定している。これによってＭＡＣＲＯＡ内のＰ０は、Ｒ５００に置き換えられて、展開された制御プログラムが実行される。
【０００７】
このようにマクロにおいては、プログラム中で用いることのできる任意のデバイスや直値を、引数として指定することができる。しかしながら、従来のマクロにおいては、ユニットに割り当てられたデバイスをそのままマクロの引数として登録した場合、通常のデバイスと何ら区別なく扱われる。このため、マクロを使用したプログラムで、ユニットに割り当てられたデバイスの位置が変更されると、プログラム中のマクロを使用している部分の引数を全て変更する必要があった。
【０００８】
すなわち、ユニットに割り当てられたデバイスが変更されると、デバイスを引数に含んでいるマクロについては、該引数で指定されたデバイスを新たなデバイスに変更するデバッグ作業が必要となり、プログラムの変更作業が極めて面倒になるという問題があった。特に従来のマクロではユニット番号を指定することができず、このため各ユニットに割り当てられたデバイスをマクロ側で検出できず、ユニット構成の変更に容易に対処できなかった。
【特許文献１】特開２００２−２２９６１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明は、このような問題点を解決するためになされたものである。本発明の主な目的は、ユニットの位置やデバイスの割り当てが変更されてもマクロの修正作業を軽減しマクロの利用を容易にしたラダープログラムマクロ作成装置、ラダープログラムマクロ作成方法、ラダープログラムマクロ作成プログラムおよびコンピュータで読み取り可能な記録媒体を提供することにある。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明の請求項１のラダープログラムマクロ作成装置は、複数のユニットで構成され、一以上のユニットに指定可能なデバイスの範囲が割り当てられているプログラマブルコントロール装置において実行されるラダープログラムを作成する際に利用可能なマクロを作成するためのラダープログラムマクロ作成装置であって、複数のユニットの内、マクロで使用される特定のユニットの、プログラマブルコントロール装置における接続位置を示すユニット番号と、マクロ中に含まれる任意のデバイス番号を、マクロの引数として設定可能な引数設定部と、登録前のマクロ中に含まれる複数のデバイス番号から、前記引数設定部で引数として設定されたユニットに割り当てられたデバイスの範囲に含まれるデバイス番号を抽出すると共に、前記抽出されたデバイス番号を、前記デバイスの範囲の先頭デバイス番号を基準とする相対位置に変換するマクロ登録変換部と、前記引数設定部で設定されたユニット番号を引数に含むマクロを登録するマクロ登録部とを備えることを特徴とする。
【００１１】
また、請求項２に記載されるラダープログラムマクロ作成装置は、請求項１に記載のラダープログラムマクロ作成装置であって、さらに前記マクロ登録部に登録されたマクロの呼び出し時に、入力された引数のユニット番号に該当するユニットに割り当てられたデバイスの範囲の先頭デバイス番号を参照することで、前記マクロ登録変換部で変換された相対位置で表現されるデバイス番号を、実デバイス番号に変換するマクロ実行変換部を備えることを特徴とする。
【００１２】
この構成よれば、マクロの引数登録を行なう時に、ユニットに割り当てられたデバイスに対してユニット番号を設定でき、さらに登録したマクロを用いる時に、引数であるユニット番号を入力することで、ユニットに割り当てられたデバイスを特定できる。この結果、マクロ中に引数として設定されたユニットに割り当てられたデバイスを含んでいる場合に、ユニットに割り当てられたデバイスが変更されてもプログラムに変更が生じず、マクロの管理、再利用が容易となる。
【００１３】
さらに、請求項３に記載されるラダープログラムマクロ作成方法は、複数のユニットで構成され、一以上のユニットに指定可能なデバイスの範囲が割り当てられているプログラマブルコントロール装置において実行されるラダープログラムを作成する際に利用可能なマクロを作成するためのラダープログラムマクロ作成方法であって、複数のユニットの内、マクロで使用される特定のユニットの、プログラマブルコントロール装置における接続位置を示すユニット番号と、マクロ中に含まれる任意のデバイス番号を、マクロの引数として設定するステップと、登録前のマクロ中に含まれる複数のデバイス番号から、引数として設定されたユニットに割り当てられたデバイスの範囲に含まれるデバイス番号を抽出すると共に、前記抽出されたデバイス番号を、前記デバイスの範囲の先頭デバイス番号を基準とする相対位置に変換するステップと、前記設定されたユニット番号を引数に含むマクロを登録するステップとを備えることを特徴とする。
【００１４】
さらにまた、請求項４に記載されるラダープログラムマクロ作成方法は、請求項３に記載のラダープログラムマクロ作成方法であって、さらに前記登録されたマクロの呼び出し時に、入力された引数のユニット番号に該当するユニットに割り当てられたデバイスの範囲の先頭デバイス番号を参照することで、前記変換された相対位置で表現されるデバイス番号を、実デバイス番号に変換するステップを備えることを特徴とする。
【００１５】
また、請求項５に記載されるラダープログラムマクロ作成プログラムは、複数のユニットで構成され、一以上のユニットに指定可能なデバイスの範囲が割り当てられているプログラマブルコントロール装置において実行されるラダープログラムを作成する際に利用可能なマクロを作成するためのラダープログラムマクロ作成プログラムであって、コンピュータに、複数のユニットの内、マクロで使用される特定のユニットの、プログラマブルコントロール装置における接続位置を示すユニット番号と、マクロ中に含まれる任意のデバイス番号を、マクロの引数として設定する機能と、登録前のマクロ中に含まれる複数のデバイス番号から、引数として設定されたユニットに割り当てられたデバイスの範囲に含まれるデバイス番号を抽出すると共に、前記抽出されたデバイス番号を、前記デバイスの範囲の先頭デバイス番号を基準とする相対位置に変換する機能と、前記設定されたユニット番号を引数に含むマクロを登録する機能とを実現させることを特徴とする。
【００１６】
さらに、請求項６に記載されるラダープログラムマクロ作成プログラムは、請求項５に記載のラダープログラムマクロ作成プログラムであって、さらにコンピュータに、前記登録されたマクロの呼び出し時に、入力された引数のユニット番号に該当するユニットに割り当てられたデバイスの範囲の先頭デバイス番号を参照することで、前記変換された相対位置で表現されるデバイス番号を、実デバイス番号に変換する機能を実現させることを特徴とする。
【００１７】
また、本発明の請求項７に記載されたコンピュータで読み取り可能な記録媒体は、請求項５または６に記載されるラダープログラムマクロ作成プログラムを格納したものである。記録媒体には、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷやフレキシブルディスク、磁気テープ、ＭＯ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ、ｂｌｕ−ｌａｙディスク、ＡＯＤ等の磁気ディスク、光ディスク、光磁気ディスク、半導体メモリその他のプログラムを格納可能な媒体が含まれる。また上記のプログラムは、ネットワークを介してダウンロード可能な形態も含まれる。
【発明の効果】
【００１８】
本発明のラダープログラムマクロ作成装置、ラダープログラムマクロ作成方法、ラダープログラムマクロ作成プログラムおよびコンピュータで読み取り可能な記録媒体によれは、マクロを再利用が容易な状態で登録でき、ユニット構成が変更されてもデバッグ工程を軽減できるという優れた特長が実現される。それは、本発明が、マクロの引数登録を行なう時に、ユニットに割り当てられたデバイスに対してユニット番号を指定できるようにしたからである。これによって、引数として登録されるデバイスの内、指定されたユニット番号のユニットに割り当てられたデバイスの範囲に含まれるデバイスを、該範囲における基準位置からのオフセットとして表現できる。そしてマクロの使用時においては、指定されたユニット番号のユニットに割り当てられたデバイスの範囲から、該当するオフセット位置のデバイスに変換することで、マクロにおけるデバイスが指定される。これによって、ユーザはユニットに割り当てられたデバイス領域範囲などの情報を意識することなく、引数を指定する際に単にユニット番号を伝えるのみで、プログラム側が正しくデバイスを解釈できる。このため、マクロを利用したプログラムの構造化を進め、マクロの再利用を促進し、プログラムの管理、デバッグ工数の削減が実現される。
【００１９】
特に、ユニットに割り当てられたデバイスの範囲や位置が変更された場合でも、変更されたデバイス割り当てにおけるオフセット位置としてデバイスが解釈される。このため、マクロの引数に指定されたデバイスをユーザが変更しなくてもよくなり、デバッグ工程の手間が解消される。このように本発明によればマクロとユニット構成との独立性が高まり、マクロの再利用性、保守性が向上する。
【００２０】
以上のように本発明は、デバイスの情報を意識することなくマクロを利用でき、しかもデバッグの手間も低減されるため、マクロを非常に使い易くして再利用を促進し、プログラミング作業の効率化が図られるという優れた特長が実現される。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態を図面に基づいて説明する。ただし、以下に示す実施の形態は、本発明の技術思想を具体化するためのラダープログラムマクロ作成装置、ラダープログラムマクロ作成方法、ラダープログラムマクロ作成プログラムおよびコンピュータで読み取り可能な記録媒体を例示するものであって、本発明はラダープログラムマクロ作成装置、ラダープログラムマクロ作成方法、ラダープログラムマクロ作成プログラムおよびコンピュータで読み取り可能な記録媒体を以下のものに特定しない。
【００２２】
また、本明細書は特許請求の範囲に示される部材を、実施の形態の部材に特定するものでは決してない。特に実施の形態に記載されている構成部品の寸法、材質、形状、その相対的配置等は特に特定的な記載がない限りは、本発明の範囲をそれのみに限定する趣旨ではなく、単なる説明例にすぎない。なお、各図面が示す部材の大きさや位置関係等は、説明を明確にするため誇張していることがある。さらに以下の説明において、同一の名称、符号については同一もしくは同質の部材を示しており、詳細説明を適宜省略する。さらに、本発明を構成する各要素は、複数の要素を同一の部材で構成して一の部材で複数の要素を兼用する態様としてもよいし、逆に一の部材の機能を複数の部材で分担して実現することもできる。
【００２３】
本明細書においてラダープログラムマクロ作成装置、ラダープログラムマクロ作成方法、ラダープログラムマクロ作成プログラムおよびコンピュータで読み取り可能な記録媒体は、ラダープログラムのマクロ作成や編集を行うシステムそのもの、ならびにマクロの作成などに関連する入出力、表示、演算、通信その他の処理をハードウェア的に行う装置や方法に限定するものではない。ソフトウェア的に処理を実現する装置や方法も本発明の範囲内に包含する。例えば汎用の回路やコンピュータにソフトウェアやプログラム、プラグイン、オブジェクト、ライブラリ、アプレット、コンパイラ、モジュール、特定のプログラム上で動作するプログラムマクロ等を組み込んでラダープログラムのマクロの作成や登録、呼び出し、あるいはこれに関連する処理を可能とした汎用あるいは専用のコンピュータ、ワークステーション、端末、携帯型電子機器、ＰＤＣやＣＤＭＡ、Ｗ−ＣＤＭＡ、ＦＯＭＡ（登録商標）、ＧＳＭ、ＩＭＴ２０００や第４世代等の携帯電話、ＰＨＳ、ＰＤＡ、ページャ、スマートフォンその他の電子デバイスも、本発明のラダープログラムマクロ作成装置、ラダープログラムマクロ作成方法、ラダープログラムマクロ作成プログラムおよびコンピュータで読み取り可能な記録媒体の少なくともいずれかに含まれる。また本明細書においては、プログラム自体もラダープログラムマクロ作成装置に含むものとする。また本プログラムは単体で使用するものに限られず、特定のコンピュータプログラムやソフトウェア、サービス等の一部として機能する態様や、必要時に呼び出されて機能する態様、ＯＳ等の環境においてサービスとして提供される態様、環境に常駐して動作する態様、バックグラウンドで動作する態様やその他の支援プログラムという位置付けで使用することもできる。
【００２４】
本発明の実施の形態において使用されるラダープログラムマクロ作成装置とこれに接続される操作、制御、表示、その他の処理等のためのコンピュータ、プリンタ、外部記憶装置その他の周辺機器との接続は、例えばＩＥＥＥ１３９４、ＲＳ−２３２ｘやＲＳ−４２２、ＵＳＢ等のシリアル接続、パラレル接続、あるいは１０ＢＡＳＥ−Ｔ、１００ＢＡＳＥ−ＴＸ、１０００ＢＡＳＥ−Ｔ等のネットワークを介して電気的、あるいは磁気的、光学的に接続して通信を行う。接続は有線を使った物理的な接続に限られず、ＩＥＥＥ８０２．１ｘ、ＯＦＤＭ方式等の無線ＬＡＮやＢｌｕｅｔｏｏｔｈ等の電波、赤外線、光通信等を利用した無線接続等でもよい。さらにデータの交換や設定の保存等を行うための記録媒体には、メモリカードや磁気ディスク、光ディスク、光磁気ディスク、半導体メモリ等が利用できる。なお本明細書においてラダープログラムマクロ作成装置とは、ラダープログラムマクロ作成装置本体のみならず、これにコンピュータ、外部記憶装置等の周辺機器を組み合わせた制御システムも含む意味で使用する。
【００２５】
図４に、ラダープログラムマクロ作成装置を接続した制御システムの一例を示す。この図に示す制御システムは、コンピュータ１と、ＰＬＣ２と、表示器３を備える。図４の例では、コンピュータ１は、ユニット構成作成プログラムと、ラダー図編集プログラムと、ラダープログラムマクロ作成プログラムの３つのプログラムを、記録媒体１１を介してインストールすることにより、ラダープログラムマクロの作成、登録、実行を実現している。これらのプログラムは、個別のプログラムで構成する他、ラダー作成支援プログラムとして統合したり、一のプログラムから他のプログラムの機能を呼び出して使用することもできる。またコンピュータ１は、ラダープログラムマクロ作成プログラムのみをインストールし、ラダープログラムマクロの登録のみを行わせてもよい。以下の実施例では、ラダープログラムマクロ作成プログラムに、上記の機能を統合したプログラムを例として説明する。なおラダープログラムマクロ作成装置やプログラムは、ラダー図を直接作成する他ニモニック形式のプログラムの作成にも利用できる。
【００２６】
ＰＬＣ２は制御対象機器である入出力機器４を接続し、これらを制御する装置である。ＰＬＣ２は、内蔵するＣＰＵ部によって制御機能プログラムに従い、ラダー図編集プログラムで作成されたラダープログラムで定められた手順で、入出力機器４の動作を制御する。
【００２７】
表示器３は、ＰＬＣ２に接続され、ＰＬＣ２やＰＬＣ２で制御される入出力機器４の動作状態を設定し表示する。また表示器３には、制御対象機器を接続するための入出力ユニットなどを搭載することによってＰＬＣの制御機能を備えたプログラマブル表示器を使用しても良い。あるいはソフトウェアで動作するいわゆるオープンコントローラ（ソフトウェアＰＬＣ）とすることもできる。
【００２８】
コンピュータ１は、汎用的なコンピュータであり、ＣＰＵ５、メモリ部６、表示部７、入力デバイス８、外部記憶部９、インターフェース部１０を備えている。ＣＰＵ５は、コンピュータ１にインストールされているＯＳ（オペレーティングシステム）上でユニット構成作成プログラムと、ラダー図編集プログラムと、ラダープログラムマクロ作成プログラムを含む各種のアプリケーションプログラムを動作させる際の各部の制御や演算処理を行う。メモリ部６は、ＲＡＭ、ＲＯＭなどのメモリを備えており、データの格納、一時的なデータ記憶、ＣＰＵの演算処理時における作業エリアの提供といった役割を果たしている。
【００２９】
表示部７は、ＣＲＴ、ＬＣＤ、あるいは液晶パネルやＥＬパネルのような平板型表示素子によって構成されている。入力デバイス８は、キーボード、マウスなどの入力操作を行うための装置であり、特に、ＧＵＩ環境下で動作するラダープログラムマクロ作成プログラムでの入力作業にはマウスなどのポインティングデバイスが好適である。外部記憶部９は、ハードディスク装置等の固定ディスクドライブや磁気ディスクドライブ、ＣＤ−ＲＯＭドライブなどの光ディスクドライブといった装置であり、少なくとも、記録媒体１１に記録されたラダープログラムマクロ作成プログラムなどの情報を読み出すことができる記録媒体駆動装置を含んでいる。なお、データやプログラムの読み出し、書き込みには、記録媒体を介さなくとも、ネットワーク接続されたサーバコンピュータなどと通信することにより直接外部記憶装置９で読み書きすることもできる。インターフェース部１０は、表示器３やＰＬＣ２との間でデータ通信を行う入出力部である。ラダー図編集プログラムで作成されたラダープログラムは、このインターフェース部１０を介してＰＬＣ２に転送され、ＰＬＣ２内のメモリにダウンロードされる。
【００３０】
上記のコンピュータ１で実現されるラダープログラムマクロ作成装置は、マクロの引数としてユニット番号やデバイス番号などを設定可能な引数設定部と、引数設定部で引数に設定されたデバイス番号を相対値に変換するマクロ登録変換部と、マクロ登録変換部で所定の変換を行ったマクロを登録するマクロ登録部と、マクロ登録部に登録されたマクロの呼び出し時に、引数の相対値をデバイス番号に変換するマクロ実行変換部を備える。これらの部材や機能を実現するための処理は、実質的にはコンピュータ１のＣＰＵ５で実行される。
【００３１】
［ユーザインターフェース］
図５は、ラダープログラムマクロ作成プログラムの一インターフェース画面を示す。この図に示す画面は、ツリー表示部１５と、ラダー図表示部１６と、検索結果文字列表示部１７を備える。なお、これらの画面において各入力欄や各ボタン等の配置、形状、表示の仕方、サイズ、配色、模様等は適宜変更できることはいうまでもない。デザインの変更によってより見やすく、評価や判断が容易な表示としたり操作しやすいレイアウトとすることもできる。例えば検索条件をウィザード形式で入力させるようにして、ユーザは質問に答えていくだけで必要な設定ができるようにしても良い。また、本明細書の説明では検索結果を別ウィンドウで表示させている場合や同一ウィンドウ内に表示している場合があるが、いずれか一方に変更したり両者を併用させても利用できることはいうまでもない。
【００３２】
これらのプログラムのユーザインターフェース画面において、仮想的に設けられたボタン類や入力欄に対するＯＮ／ＯＦＦ操作、数値や命令入力等の指定は、ラダープログラムマクロ作成プログラムをインストールされたコンピュータ１に設けられた入力デバイスで行う。本明細書において「押下する」とは、ボタン類に物理的に触れて操作する他、入力デバイスによりクリックあるいは選択して擬似的に押下することを含む。入出力デバイスはコンピュータ１と有線もしくは無線で接続され、あるいはコンピュータ１に固定されている。一般的な入力デバイスとしては、例えばマウスやキーボード、スライドパッド、トラックポイント、タブレット、ジョイスティック、コンソール、ジョグダイヤル、デジタイザ、ライトペン、テンキー、タッチパッド、アキュポイント等の各種ポインティングデバイスが挙げられる。また、インターフェース画面を表示する表示部自体にタッチスクリーンやタッチパネルを利用して、画面上をユーザが手で直接触れることにより入力や操作を可能としたり、または音声入力その他の既存の入力手段を利用、あるいはこれらを併用することもできる。
【００３３】
なお、ラダープログラムマクロ作成プログラムをインストールされたコンピュータ１に接続された入出力デバイスから設定を行う態様の他、ラダープログラムマクロ作成プログラムやハードウェアをＰＬＣに組み込み、ＰＬＣ側で設定を行えるようにしても良い。この場合、入出力デバイスはＰＬＣに設けられあるいは接続され、必要に応じて表示器やモニタ等が接続される。
【００３４】
［ツリー表示部１５］
ツリー表示部１５は、制御プログラムのファイル構成やＰＬＣシステムの構成などを表示すると共に、メインの作業領域であるラダー図表示部１６で表示、編集等の作業を行いたい項目を選択するための領域である。選択された項目はツリー表示部１５でハイライト表示されるとともに、選択された項目に応じてラダー図表示部１６での表示内容が切り替えられる。例えば、ラダープログラムのモジュールをツリー表示部１５から選択すると、選択されたラダープログラムがラダー図表示部１６で表示されて、プログラムの編集作業が可能となる。ラダープログラムの編集は、ラダー図編集プログラムで行う。
【００３５】
またツリー表示部１５で項目を選択することによって、ＰＬＣを構成するユニットに関する設定やコメント、ラベルなどの編集、ローカルデバイスの設定など、ＰＬＣのシステム設定も行える。例えばＰＬＣを構成する各ユニットに割り当てられたデバイスの範囲を設定できる。このような設定には、ユニット構成プログラムが使用される。
【００３６】
ユニット構成プログラムは、ＰＬＣシステムを構成するユニットとして選択可能なユニットの選択肢の中から、ユーザが選択したユニットをコンピュータ画面上で任意に配列することにより、図１や図２に示すようにＰＬＣシステムを画面上でイメージ的に構築する。各ユニットには、ＣＰＵユニットからの接続順に、ユニット番号が付与されている。また、構成されたＰＬＣの動作をシュミレーションすることもできる。
【００３７】
さらにユニット構成プログラムは、ＰＬＣシステムの各構成ユニットのデバイスにリレー使用可能範囲、ＤＭ使用可能範囲を割り付ける機能を備える。割り付けは、図２（ｂ）に示すようにユニット番号毎に範囲で指定される。ユニット構成プログラムプログラムは、図２（ａ）に示すようなビジュアル表示と、図２（ｂ）に示すようなボックス表示を切り替えて表示し、各ユニットのリレー等の割付の設定及び確認を行う。
【００３８】
このようなユニット構成プログラムを含むことで、ユニット構成プログラムで作成したデータを活用して、このデータをマクロの作成時に取り込むことで、ユニット構成プログラムで作成したデータをマクロ作成プログラムで活用し、また、マクロ作成プログラムで作成したデータをラダー図編集プログラムで活用することができ、ラダー図作成におけるユーザの入力作業の負担を軽減することができる。
【００３９】
［ラダー図表示部１６］
ラダー図表示部１６は、編集対象のラダー図を表示する。ラダー図は、ラダー図表示領域に構成され、ラダー図表示領域の一部もしくは全体がラダー図表示部１６で表示される。ラダー図表示領域の全体がラダー図表示部１６の表示領域に収まらないときは、ラダー図表示領域の一部をラダー図表示部１６で表示し、画面をスクロールして他の部分を表示する。また表示倍率を変更してラダー図表示領域の全体を表示したり、一部を拡大することもできる。
【００４０】
［検索結果文字列表示部１７］
ラダープログラムマクロ作成プログラムは検索機能を備えており、検索結果文字列表示部１７は、検索機能実行時に検索対象の文字列を含む行を一覧で表示するための領域である。検索は、文字列の検索であるため、プログラムをシンボルで表示するラダー図よりも文字列で表示するニモニック形式で行うのが好ましい。文字列の検索には既存のテキストエディタなどで利用される既知の手法や将来開発される文字列検索の手法が適宜利用できる。例えば大文字小文字、全角半角、長音記号の有無などの表記ゆれを考慮した曖昧検索、複数の検索キーワードによるＡＮＤ検索やＯＲ検索、ＮＯＴ検索やＧＲＥＰ検索などが適宜利用できる。検索したい文字列としては、例えば命令語、デバイス名やＰＬＣのアドレス、定数等のオペランド、コメント文等が挙げられる。また検索条件の指定には、範囲指定やワイルドカードの利用なども適宜採用できる。検索結果文字列表示部１７は、図５に示すように画面の下部に一体的に表示する方式の他、別ウィンドウで表示させることもできるし、図６のように非表示とすることもできる。
【００４１】
以上のようにして、ユーザはラダー図編集機能で作成された制御プログラムを、マクロとして登録しておき、これをプログラム作成時に呼び出して使用できる。マクロによって、ユーザは以前作成したラダー図を流用でき、プログラミング作業を省力化できる。しかしながら、従来のマクロにおいては、デバイスを表現する際、そのアドレスを直値で表現するか、あるいはアドレスを引数として、マクロ実行時にユーザが所望のアドレスを直値で入力する必要があった。この方法では、ユニットのシステム構成が変更された場合、すなわちユニットに割り当てられたアドレスが変更になった場合にマクロをそのまま使用できないという問題があった。
【００４２】
そこで本実施の形態では、マクロでデバイスを表現する際、引数としてユニット番号を指定可能とすることで、該ユニットに割り当てられたデバイスを直値でなく相対値として保持している。そして、マクロの使用時に引数として指定されたユニット番号に応じて、該ユニットにマクロの実行時点で割り当てられているデバイスに応じて、マクロ内のデバイスを相対値から直値に変換する。これによって、使用するユニットに応じてプログラム側が自動的にアドレスを変換してマクロを使用可能としてくれるため、ユーザはユニット毎に割り当てられたデバイスの範囲を意識することなく、マクロを登録、使用することが可能となり、マクロの利用が容易になる。またこの方法であれば、ユニットへのデバイス割り当てが変更されてもマクロが使用できるため、ユーザはマクロのデバッグ作業を行うことなく異なるシステム構成においても使用できる。
【００４３】
以下、ユニットに割り当てられたデバイスをマクロに登録して、このマクロを制御プログラム中で使用する手順を図６〜図８に基づいて説明する。
【００４４】
［マクロの登録］
ここでは、図７に示す制御プログラムをマクロとして登録する手順を説明する。この例で説明するＰＬＣ制御システムにはユニットＡのみが接続されており、ユニットＡのユニット番号は１、ユニットＡに割り当てられているデバイスの領域は、リレー番号がＲ３０００〜Ｒ３１１５と、データメモリアドレス番号がＤＭ１００〜ＤＭ４１９であるとする。
【００４５】
まず、図７の左側に表示されるマクロ登録前の制御プログラムを作成する。この作業はラダープログラムマクロ作成プログラムに含まれるラダー図編集機能や、別のプログラムであるラダー図編集プログラムを呼び出す等の方法により行われる。例えばラダーシンボルをテンプレート中から選択し、ドラッグ＆ドロップなどにより所望の位置に配置する。さらに、ラダー命令語やデバイス番号等のオペランドなど、必要な情報を入力する。デバイス番号には、リレー番号（Ｒ）やデータメモリアドレス番号（ＤＭ）等がある。なお、この制御プログラム中で使用されるデバイスの内、Ｒ３０００とＤＭ１２０はユニットＡに割り当てられたデバイス領域範囲内である。
【００４６】
また、マクロの作成においては、引数を指定することができる。引数とは、一般にはプログラム内の関数にあてられる値やパラメータであり、デバイス番号やユニット番号等を指定する。図６に、ラダープログラムマクロ作成プログラムで引数設定ダイヤログ３０を表示して引数を設定する画面例を示す。引数設定ダイヤログ３０は引数設定部の一形態であり、この画面上で引数のタイトル、パレット用説明、ユニット種類等を設定する。ここでは引数デバイスＰ０、Ｐ１、Ｐ２のそれぞれの内容を設定する。
【００４７】
以上のようにして引数設定部からマクロの引数を設定し、図７の例ではユニット番号１を設定する。このとき、引数としてユニット番号１が設定されたユニットＡに割り当てられたデバイス領域範囲内に含まれるデバイスＲ３０００とＤＭ１２０は、後述するようにマクロの登録時にマクロ登録変換部で自動的に抽出されて該ユニット用の引数デバイスに置換される。また、ユニット番号以外にも必要なデバイス番号を引数デバイスとして指定する。引数としてデバイス番号を指定する方法は、従来と同様である。
【００４８】
その後、マクロの登録を行なう。マクロの登録はドラッグ＆ドロップ類似の操作で登録できる。例えば、図５のラダー図表示部１６から、編集中のプログラムの所望の範囲を選択後、ツリー表示部１５にドラッグ＆ドロップ操作することにより、選択された範囲のプログラムがマクロとして登録され、ツリー表示部１５に登録されたマクロのアイコンが表示される。
【００４９】
また、登録されたマクロの使用時においても、ツリー表示部１５から所望のマクロをドラッグし、ラダー図表示部１６で編集中のプログラムの任意の位置にドロップすることで、マクロが貼り付けられる。このとき、マクロ内で引数に設定された項目の入力欄が表示され、ユーザは所望の値を入力する。マクロは、マクロとして登録された具体的なプログラムを展開して表示されても良いし、図３の展開プログラムに示すように、マクロとして省略して表示しても良い。なお、マクロに登録された回路のデバイスは、ユーザが任意のデバイスに変更することもできる。このようにマクロを利用することで、ラダー作成工数、デバッグ工数を大幅に削減できる。
【００５０】
図７の例では、マクロ登録部でＭＡＣＲＯＡとして登録した。登録されたマクロでは、ユニットに割り当てられたＲ３０００とＤＭ１２０のデバイスは、マクロ登録変換部でユニット用の引数デバイスに置換される。この例では、Ｒ３０００のデバイスはＵＲ０に、ＤＭ１２０のデバイスＵＭ０＋２０に、それぞれ置換されている。ここで、ＵＲ０、ＵＭ０はそれぞれ、ユニット番号で指定されるデバイス領域範囲の先頭デバイス番号を表す。また、ＵＭ０＋２０の表記は、ＵＭ０の示すデバイス番号から２０だけオフセットしたデバイスを表す。例えばＤＭ０＋１００であれば、ＤＭ１００を表す。
【００５１】
また、ユニットＡに割り当てられていないデバイス番号で引数として指定された引数デバイスについては、通常通りユーザがマクロの使用時に所望の値を指定することになる。図７の例では、マクロ登録後はデバイス番号Ｒ００００が引数Ｐ１として、デバイス番号ＤＭ０が引数Ｐ２としてそれぞれ表示され、またＤＭ２は引数Ｐ２に基づきＰ２＋２と表示される。さらに、引数として指定されたなかったデバイス番号については、実デバイスとしてそのまま表示される。図７の例では、デバイス番号Ｒ０５００、Ｒ０５１５がマクロ登録後もそのまま引き継がれる。
【００５２】
［マクロの使用］
次に、登録されたマクロを制御プログラムに使用する手順を図８に基づき説明する。図８では、図７で登録したマクロＭＡＣＲＯＡをユーザが別の制御プログラムに組み込んで、あるいは呼び出して使用する。この例では、ユニットＡはＣＰＵユニットから数えて３台目に接続されており、すなわちユニット番号は３であり、ユニットＡに割り当てられているデバイスの領域は、Ｒ３５００〜Ｒ３６１５とＤＭ１１０〜ＤＭ４２９であるとする。
【００５３】
まず、マクロの引数をユーザが入力あるいは指定する。ＭＡＣＲＯＡでは、引数としてユニット番号、Ｐ１、Ｐ２が設定されていた。ここでは、ユニット番号３、Ｐ１＝Ｒ１５００、Ｐ２＝ＤＭ１０を入力し、指定された値に基づいてマクロ実行変換部がマクロを変換する。ユニット番号３が割り当てられているデバイスＡの、デバイス領域範囲の先頭デバイスはＲ３５００であるから、ＭＡＣＲＯＡのＵＲ０はＲ３５００に、ＵＭ０＋２０は、ＤＭ１１０＋２０＝ＤＭ１３０に、それぞれ変換される。また、通常の引数デバイスとして指定されたＰ１はＲ１５００、Ｐ２はＤＭ１０、Ｐ２＋２はＤＭ１０＋２＝ＤＭ１２に、それぞれ変換される。さらに実デバイスで指定されたデバイスはそのまま維持される。この結果、ＭＡＣＲＯＡの実体として、図８の左側に示す展開マクロプログラムが生成される。
【００５４】
［ユニット構成の変更］
次に、登録されたマクロにおいて使用されるユニットの構成が変更になった場合の動作について説明する。まず、ユニットの接続順序を変更する等してユニット番号が変わった場合は、上述のとおり、ユニットに対応してマクロ中で用いられているマクロの引数を自動で検索して、ユニット番号を新しいものに変更する。この場合は、マクロを修正する必要はない。一方、ユニット自体が削除された場合は、該ユニットに対応するデバイスは、保留デバイスとする。この場合はユニットが存在しないためデバイス番号を決定できず、このマクロの使用時にユーザが直接デバイス番号を指定する、あるいはマクロを修正して新たなデバイス番号を指定する等の方法で対処する。
【００５５】
また、ユニット番号はそのままで、ユニットに割り当てられたデバイス領域範囲を変更した場合は、マクロの変更は不要である。マクロの登録時に、ユニットに割り当てられたデバイス領域範囲に対応してデバイス番号を決定できるように、予めオフセット位置等の相対値で規定されているため、マクロをプログラムで使用していてもマクロの引数を変更する必要はない。
【００５６】
このように、本発明の実施の形態によれば、ユニット構成の変更に応じてマクロを修正する手間を省き、プログラミング作業が省力化できるという優れた特長が得られる。ＰＬＣのプログラミングに利用される従来のマクロは、実デバイスで指定されていたため、ユニット構成が変更されると、これに応じて実デバイスの値を修正する必要があった。特に、従来のマクロではユニット毎に割り当てられたデバイス領域範囲を知ることができないため、自動的にマクロを修正することもできなかった。これに対して本発明の実施の形態では、特殊な引数としてユニット番号を指定可能とすることにより、該ユニット番号のユニットに割り当てられたデバイス領域範囲をプログラム側で問い合わせ可能とした。そして、このデバイス領域範囲に含まれるデバイス番号を実アドレスでなく、デバイス領域範囲の先頭デバイスを基準とする相対的な引数デバイスとすることで、マクロがユニット番号をＣＰＵユニットなどに問い合わせることで、該当するユニットに割り当てられたデバイス領域範囲を確認でき、相対的に特定される引数デバイスのデバイス番号も特定できる。これによって、一旦登録したマクロをユニット構成を変更した場合でもそのまま利用可能として、マクロの利用が大いに促進される。マクロは本来的に一度行った作業や手順と同様の作業を繰り返し行わせるものであり、プログラミング作業の負担を低減するものである。そのマクロを容易に利用できるようにすることで、本発明の実施の形態によってさらにマクロの使用が促進されてプログラミング作業の効率が改善されるという効果が得られる。また、ユーザは引数としてユニット番号を指定するだけで、このユニットのデバイス領域範囲に含まれるデバイス番号の抽出やオフセット量での引数デバイスの指定などの作業はマクロ側で自動的に処理可能であるため、ユーザは一々ユニット毎のデバイスの割り当てなどを気にする必要はない。このようなデバイス情報をユーザは意識することなく、マクロの登録や実行を容易に行うことができ、マクロを利用し易い環境が提供される。
【００５７】
本発明の実施の形態に係るラダープログラムマクロ作成は、以下のようにしてマクロを登録、実行する。
【００５８】
１．マクロの登録
編集作業中のプログラムで対象とされているユニットのシステム構成情報を、ＣＰＵユニットから取得する。特に、このユニットに割り当てられているデバイスの範囲を取得する。そしてプログラム中から、この範囲に含まれるデバイスをリストアップし、ユニット用のデバイスとしてマクロ登録変換部が置換する。例えば、ユニットＢが割り当てられているデバイスの領域を、ＤＭ３０００〜ＤＭ３１１５とし、マクロ中に使用されるデバイスとしてＤＭ２９９９、ＤＭ３０００、ＤＭ３０１０、ＤＭ３１１５、ＤＭ３１１６が存在する場合、これらのデバイスはマクロ登録変換部によって以下のように置換される。
ＤＭ２９９９→ＤＭ２９９９（デバイスの範囲外なので変更無し）
ＤＭ３０００→ＵＭ０
ＤＭ３０１０→ＵＭ０＋１０
ＤＭ３１１５→ＵＭ０＋１１５
ＤＭ３１１６→ＤＭ３１１６（デバイスの範囲外なので変更無し）
【００５９】
以上のように、マクロ登録変換部は、引数のユニット番号に割り当てられたデバイス範囲に含まれるデバイスについては、自動的にデバイス番号を相対アドレスに変更する。これによって、このユニットの接続位置や形態が変更されてユニット番号が変更され、割り当てられるデバイス番号が変更された場合でも、マクロ側でこれに応じたデバイス番号に自動的に変換される。
【００６０】
２．マクロの使用
プログラムでマクロを使用する場合は、引数を入力する必要がある。引数にユニット番号がある場合、ユニット番号に基づき、該当ユニットに割り当てられたデバイス先頭番号を取得する。そして、その先頭番号をマクロ実行変換部がマクロ内のユニット用のデバイスと置換する。例えば、ユニットＢに割り当てられているデバイスの領域を、ＤＭ４０００〜ＤＭ４１１５とする。このユニットに上記のマクロを使用する場合、マクロ実行変換部は先頭デバイス番号を基準として、マクロ中に登場したデバイスを以下のように置換する。
ＵＭ０→ＤＭ４０００
ＵＭ０＋１０→ＤＭ４０１０
ＵＭ０＋１１５→ＤＭ４１１５
なお、ＤＭ２９９９とＤＭ３１１６については、引数でないので変更はない。
【００６１】
以上のように、マクロ実行変換部はユニットに割り当てられた先頭デバイス番号を基準として、マクロ登録変換部で相対アドレスに変換されたデバイスを実デバイス番号に復号する。これによって、作成されたマクロは、ユニットの構成に応じて適切なデバイス番号に変換されて実行可能となる。
【００６２】
なお、マクロ登録変換部とマクロ実行変換部とは、別部材とする必要はなく、同じ部材で構成することもできる。例えば、ＣＰＵユニットに備えられたＣＰＵなどの制御部がこれらの変換機能を実現する。同様に、引数設定部やマクロ登録部についても、実際の処理はＣＰＵユニットなどで実現可能である。
【００６３】
以上、ＰＬＣのラダー回路をプログラミングする装置を説明したが、本発明はＰＬＣを接続した用途に限定されるものでなく、ラダープログラムの作成、編集を行うあらゆるアプリケーションに適用できる。
【産業上の利用可能性】
【００６４】
本発明のラダープログラムマクロ作成装置、ラダープログラムマクロ作成方法、ラダープログラムマクロ作成プログラムおよびコンピュータで読み取り可能な記録媒体は、作成したラダープログラムをＰＬＣに転送して制御プログラムを実行させることができる。
【図面の簡単な説明】
【００６５】
【図１】ＰＬＣシステムの一例においてユニット番号を示すイメージ図である。
【図２】ＰＬＣシステムの他の例において、各ユニットのユニット番号と各ユニットに割り当てられたデバイス領域範囲とを示すイメージ図である。
【図３】登録済みマクロをアプリケーションに使用する態様を示す概念図である。
【図４】本発明の実施の形態に係るラダープログラムマクロ作成装置を接続した制御システムの一例を示すブロック図である。
【図５】本発明の実施の形態に係るラダープログラムマクロ作成プログラムの一インターフェース画面を示すイメージ図である。
【図６】本発明の他の実施の形態に係るラダープログラムマクロ作成プログラムで引数を設定する画面を示すイメージ図である。
【図７】制御プログラムをマクロとして登録する手順を示す概念図である。
【図８】登録されたマクロを制御プログラムに使用する手順を示す概念図である。
【符号の説明】
【００６６】
１…コンピュータ
２…ＰＬＣ
３…表示器
４…入出力機器
５…ＣＰＵ
６…メモリ部
７…表示部
８…入力デバイス
９…外部記憶部
１０…インターフェース部
１１…記録媒体
１５…ツリー表示部
１６…ラダー図表示部
１７…検索結果文字列表示部
２１…ユニット構成作成プログラム
２２…ラダー図編集プログラム
２３…ラダープログラムマクロ作成プログラム
３０…引数設定ダイヤログ
３１…ＣＰＵユニット
３２…ＰＬＣシステム
３３…ユニット
３４…データファイル
【図３】
2005092808.tif 000003
【図４】
2005092808.tif 000004
【図７】
2005092808.tif 000005
【図８】
2005092808.tif 000006
【図１】
2005092808.tif 000007
【図２】
2005092808.tif 000008
【図５】
2005092808.tif 000009
【図６】
2005092808.tif 000010