(57)【要約】【課題】単純なキー操作によりラダー命令シンボルを選択できるようにする。【解決手段】アクティブ切換部１２は、ラダープログラム編集機能部１１、命令ツールバー表示部１３の一方をアクティブ、他方を非アクティブとするものであり、スペースキー操作に応じて、アクティブとする機能部を交互に切り換える。ラダープログラム編集機能部１１は、アクティブのときには、上下左右のカーソルキー操作によりラダー編集領域上での任意位置を指定させる。命令ツールバー表示部１３は、複数の命令シンボルを表示し、アクティブのときには、上下左右のカーソルキー操作により任意の命令シンボルを選択させる。選択された命令シンボルが上記指定された位置に配置される。【選択図】図１
2012079132.tif 000002
【特許請求の範囲】
【請求項１】
任意のラダープログラムの作成作業を支援する支援装置において、
任意のラダープログラムの作成を行わせるためのラダー編集領域を表示するラダー編集手段と、
複数のラダー命令シンボルのなかから任意のラダー命令シンボルを選択させるための命令ツールバー領域を表示するシンボル選択支援手段と、
前記ラダー編集領域と命令ツールバー領域の何れか一方をアクティブ状態、他方を非アクディブ状態とし、所定の１つのキー操作に応じてアクティブ状態となる領域を交互に切り換えるアクティブ切換手段とを有し、
前記シンボル選択支援手段は、前記アクティブ状態のときには、カーソルキー操作によって前記命令ツールバー領域に表示される複数のラダー命令シンボルのなかから任意のラダー命令シンボルを選択・指定させることを特徴とするラダープログラム作成支援装置。
【請求項２】
前記複数のラダー命令シンボルは、複数行×複数列の二次元配列により各行毎にラダー命令シンボル群が格納される形式で第１記憶手段に記憶されており、
前記シンボル選択支援手段は、前記二次元配列に基づいて１行分ずつ前記ラダー命令シンボル群を前記命令ツールバー領域に表示し、前記アクティブ状態のときには、上下のカーソルキー操作に応じて任意の行のラダー命令シンボル群を前記命令ツールバー領域に表示すると共に、該前記命令ツールバー領域に表示されるラダー命令シンボル群のなかの任意のラダー命令シンボルを左右のカーソルキー操作によって指定させることを特徴とする請求項１記載のラダープログラム作成支援装置。
【請求項３】
前記第１記憶手段には、前記二次元配列の各行毎に、その行のラダー命令シンボル群が属する命令分類も記憶されており、
前記シンボル選択支援手段は、各命令分類毎にその命令分類に属するラダー命令シンボル群を表示することを特徴とする請求項２記載のラダープログラム作成支援装置。
【請求項４】
前記ラダー編集手段は、前記アクティブ状態のときには、前記ラダー編集領域上の任意の位置をカーソルキー操作によって指定可能とし、
前記シンボル選択支援手段によって選択・指定されたラダー命令シンボルは、前記ラダー編集手段によって指定された位置に配置・表示されることを特徴とする請求項１〜３の何れかに記載のラダープログラム作成支援装置。
【請求項５】
前記複数のラダー命令シンボルは、複数行×複数列の二次元配列により各行毎にラダー命令シンボル群が格納される形式で第１記憶手段に記憶されており、
前記シンボル選択支援手段は、前記第１記憶手段に記憶されている全てのラダー命令シンボルを該二次元配列に従って前記命令ツールバー領域に表示すると共に、前記アクティブ状態のときには、該命令ツールバー領域において上下左右のカーソルキー操作によって任意のラダー命令シンボルを選択・指定させることを特徴とする請求項１記載のラダープログラム作成支援装置。
【請求項６】
前記第１記憶手段に記憶されている複数行×複数列の二次元配列の内容を編集させることで前記命令ツールバー領域の表示内容を変更させる命令ツールバー編集手段を更に有することを特徴とする請求項２または５に記載のラダープログラム作成支援装置。
【請求項７】
任意のラダープログラムの作成作業を支援する支援装置のコンピュータを、
任意のラダープログラムの作成を行わせるためのラダー編集領域を表示するラダー編集手段、
複数のラダー命令シンボルのなかから任意のラダー命令シンボルを選択させるための命令ツールバー領域を表示するシンボル選択支援手段、
前記ラダー編集領域と命令ツールバー領域の何れか一方をアクティブ状態、他方を非アクディブ状態とし、所定の１つのキー操作に応じてアクティブ状態となる領域を交互に切り換えるアクティブ切換手段、
前記シンボル選択支援手段において、前記アクティブ状態のときに、カーソルキー操作によって前記命令ツールバー領域に表示される複数のラダー命令シンボルのなかから任意のラダー命令シンボルを選択・指定させる手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルコントローラのプログラム作成を支援する装置に関する。
【背景技術】
【０００２】
一般に、プログラマブルコントローラ（ＰＬＣ）は、その内部に格納されたシーケンスプログラムを実行することで、各種制御対象機器（モータ、センサ等）の制御を行う。このシーケンスプログラムは、ＰＬＣのプログラミング装置においてプログラマ（現場作業員等）によって任意に作成（またはバージョンアップ）等されて、ＰＬＣにダウンロードされる。
【０００３】
ＰＬＣのプログラミング装置（支援ツール）は、プログラマブルコントローラのプログラム作成／デバッグ／保守等をユーザに行わせる機能がインストールされた、パソコン等である。シーケンスプログラムは、ＰＬＣにダウンロードする段階ではコンパイル済みであるが（よって、マシン語に変換されている）、プログラマによる作成の際には任意のプログラム言語で作成される。このシーケンスプログラムのプログラム言語として、例えばファンクションブロックやラダープログラム（ラダー図）等が知られている。ここでは、特にラダープログラムが関係する。
【０００４】
上記支援ツールでは、そのディスプレイ上に例えばラダープログラム作成用の画面（ラダープログラム編集画面というものとする）を表示する。このラダープログラム編集画面には、ラダープログラムの編集を行う領域（ラダー編集領域というものとする）と、命令ツールバーと呼ばれる領域とが存在する。命令ツールバーには、例えば接点等の各種ラダー命令のシンボルが表示され、例えば各命令シンボルはそれぞれ所定のファンクションキーに対応付けられている。尚、ラダープログラムには例えばニーモニック等の命令語があるが、通常、ユーザ・インタフェースの為に各ラダー命令に対応するシンボル（図記号）が用いられている。本説明では、この様なシンボル（図記号）を“ラダー命令シンボル”または“命令シンボル”等と呼ぶものとする。
【０００５】
ユーザが、この様なラダープログラム編集画面上で任意のラダープログラムを作成する場合、まず、上記ラダー編集領域上で任意の位置をカーソル操作等によって指定し、続いて、任意のファンクションキーを操作することでこのファンクションキーに対応付けられているラダー命令シンボルを選択指定する。これによって、上記カーソルによって指定した位置に、選択したラダー命令シンボルが配置・表示される。そして、ユーザがこのラダー命令で使用するアドレス指定を行うと、上記配置・表示されたラダー命令シンボルの上部にアドレスが表示される（勿論、内部ではこのアドレスが対応付けられている）。
【０００６】
図８に、従来のラダープログラム編集画面の一例を示す。
まず、上記の通り、各ラダー命令シンボルが各ファンクションキーに割り当てられるが、一般的にキーボードにおけるファンクションキーはＦ１〜Ｆ１２の１２個程度であり、一方で現在はラダー命令シンボルの数が１２個よりもはるかに多くなっている。これより、予め、各種ラダー命令シンボルをグループ分け（大分類）しておく。各グループに属するラダー命令シンボルの数は、最大で１２個（ファンクションキーの数）となる。また、各グループ毎に、そのグループに属する各ラダー命令シンボルに（１対１で）ファンクションキーを割り当てておく。また、各グループに所定の切換キーを割り当てておく。
【０００７】
ここでは、ラダー命令の種別に応じて、接点、出力、応用命令、その他（共通）の各グループにグループ分けするものとする。これより、図８（ａ）に示すように、命令ツールバー領域の上側には、これら各グループ名（共通、接点、出力、応用命令）が表示されると共に、命令ツールバーには現在選択されているグループの各ラダー命令シンボルが、対応するファンクションキー（ＳＨＩＦＴ＋Ｆ１〜Ｆ１２）と共に表示される。また、図示の例では、上記切換キーは、例えば接点に対しては“＜Ａｌｔ＞＋＜Ｎ＞”、応用命令に対しては“＜Ａｌｔ＞＋＜Ｄ＞”等となっている。
【０００８】
この様なラダープログラム編集画面において、ユーザは、例えば上下左右のカーソルキーを操作してラダー編集領域上でカーソルにより所望の位置を指定し、次に所望の切換キーを操作して所望のグループを指定することで、このグループの各ラダー命令シンボルを命令ツールバーに表示させる。これより、続いて所望のファンクションキーを操作することで、上記カーソル指定した位置に所望のラダー命令シンボルを配置・表示させることができる。そして、上記アドレス指定を行う。この様な操作を繰り返すことで、所望のラダープログラムを作成することができる。
【０００９】
また、上記共通、接点、出力、応用命令のグループ分けを大分類とし、更に中分類、小分類等を行うようにしてもよい。これは、特にラダー命令シンボル数が多い応用命令の場合に、必要なものとなる。例えば、予め、この「応用命令」に関して、更に、プログラム、転送、演算、比較、タイマ／カウンタ等の中分類のグループ分けを行っておき、これら中分類の各グループ毎に、最大で１２個のラダー命令シンボルを割り当てておく。尚、上記中分類の各グループに所定のファンクションキーを割り当てておく。
【００１０】
これより、例えば上記図８（ａ）の画面上で切換キー“＜Ａｌｔ＞＋＜Ｄ＞”によって「応用命令」を指定すると、命令ツールバーには図８（ｂ）に示すように上記プログラム、転送、演算、比較、タイマ／カウンタ等の中分類の各グループ名が表示される。ユーザが、ファンクションキー操作によって任意のグループ名（例えば、Ｆ１０によってタイマ／カウンタ）を指定すると、命令ツールバーとは別の専用画面が表示され、この専用画面には上記指定されたグループ名のグループに属する全てのラダー命令シンボルリストが表示されることになる（不図示）。この状態で、ユーザが、例えばマウス操作等によって任意のラダー命令シンボルを選択・指定すると、上記ラダー編集領域上でカーソル指定した位置に、当該選択・指定されたラダー命令シンボルが配置・表示されることになる。
【００１１】
また、従来技術の他のとして特許文献１に記載のものが知られている。
特許文献１の背景技術に記載のように、従来より、ラダープログラムの入力方法として、全ての命令シンボルに対してそれぞれ１つずつ固有のショートカットキーを割り付けておく方法が知られている。この為、ユーザは、十から二十種類程度の命令シンボルのショートカットキーを覚える必要があった。
【００１２】
これに対して、特許文献１の発明では、カーソルの位置情報とキーボードからの入力情報を組み合わせることによって、オペレータが覚えるショートカットキーの種類を低減することができる。特許文献１では、その図９に示すように、同じショートカットキーであっても、それに対応するシンボルが、カーソルの位置（列）によって異なっている。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００８−２９３３９２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
ここで、ラダー命令シンボル数は、以前は上記のように十から二十種類程度であったが、増加し続けており、現在は非常に多数の種類が存在する。
上記特許文献１の場合、オペレータが覚えるショートカットキーの種類を低減することができ、上記のように命令シンボルが十から二十種類程度の比較的少ない場合であれば、ショートカットキーの割付をユーザが覚えて操作することにより、プログラミング作業を効率良く進めることが可能になるかもしれない。
【００１５】
しかしながら、現在のように命令シンボルが多数になると、ショートカットキーの割付をユーザが覚えることは困難になる。また、そもそも、特許文献１の発明の場合、操作するショートカットキーの数は減らせるが、１つのショートカットキーに複数の命令シンボルを割り付けることになるので、これをユーザが覚える必要があり、この点でのユーザ負担はそれほど軽減されない。
【００１６】
また、上記図８で説明した従来技術の場合でも、現在のように命令シンボルが多数になると、大分類グループの数を増やすか、もしくは上記中分類による対応が必要となる。大分類グループの数を増やすことは切換キーの種類を増やすことになり、ユーザは、各種切換キーの操作方法（＜Ａｌｔ＞＋＜Ｎ＞等）を覚えると共に、各切換キーと大分類との対応関係を覚える必要があり、また操作するキーの数が非常に多くなってしまう（ファンクションキーもあるので、操作するキー数が２０以上となる）。上記中分類による対応の場合、ユーザは、任意の命令シンボルの配置を行う毎に、切換キーによる大分類の選択→ファンクションキーによる中分類の選択→マウス等による命令シンボルの選択を行うことになり、操作するキーの種類と回数が多くなる。更に、各中分類に属する命令シンボルを覚える必要がある。
【００１７】
また、各種切換キーの操作方法（＜Ａｌｔ＞＋＜Ｎ＞等）等のような、キーボードで２つのキーを同時に操作することは、ユーザにとって操作し難いものであり、また操作方法を覚え難いものである。つまり、キー操作が複雑で操作性が悪かった。
【００１８】
上記のように、従来技術では何れも、ユーザは、ある程度はキーの割付を覚える必要があり、ある程度操作に慣れないと作業効率が悪かった。
これより、この様なユーザ負担を軽減して、不慣れな人間であっても短時間で操作に慣れて効率良くプログラム作成できるようにすることが望まれる。また、実際の現場では、マウス操作が困難な状況（スペースが無い等）である場合も少なくないので、マウスを用いずにキーボードだけで操作可能となることも望まれている。
【００１９】
本発明の課題は、単純なキー操作によりラダー命令シンボルを選択でき、不慣れな人間であっても直感的に選択操作でき操作性の向上を図ることができる、以って効率良くラダープログラム作成できユーザ負担を軽減できるラダープログラム作成支援装置等を提供することである。
【課題を解決するための手段】
【００２０】
本発明のラダープログラム作成支援装置は、任意のラダープログラムの作成作業を支援する支援装置において、任意のラダープログラムの作成を行わせるためのラダー編集領域を表示するラダー編集手段と、複数のラダー命令シンボルのなかから任意のラダー命令シンボルを選択させるための命令ツールバー領域を表示するシンボル選択支援手段と、前記ラダー編集領域と命令ツールバー領域の何れか一方をアクティブ状態、他方を非アクディブ状態とし、所定の１つのキー操作に応じてアクティブ状態となる領域を交互に切り換えるアクティブ切換手段とを有し、前記シンボル選択支援手段は、前記アクティブ状態のときには、カーソルキー操作によって前記命令ツールバー領域に表示される複数のラダー命令シンボルのなかから任意のラダー命令シンボルを選択・指定させる。
【００２１】
尚、例えば、前記ラダー編集手段は、前記アクティブ状態のときには、前記ラダー編集領域上の任意の位置をカーソルキー操作によって指定可能とし、前記シンボル選択支援手段によって選択・指定されたラダー命令シンボルは、前記ラダー編集手段によって指定された位置に配置・表示される。
【００２２】
上記ラダープログラム作成支援装置によれば、ユーザは、上記所定の１つのキー操作（例えばスペースキー操作）と、上下左右のカーソルキー操作と、カーソル指定を確定させる為のリターンキーの合計６つのキー操作のみで、ラダー編集領域における位置指定、ラダー命令シンボルの選択・指定を行うことができ、以って任意のラダープログラムの作成を行うことができる（但し、更にアドレス入力の為のキー操作が必要となる）。
【００２３】
また、上記ラダープログラム作成支援装置において、例えば、前記複数のラダー命令シンボルは、複数行×複数列の二次元配列により各行毎にラダー命令シンボル群が格納される形式で第１記憶手段に記憶されており、前記シンボル選択支援手段は、前記二次元配列に基づいて１行分ずつ前記ラダー命令シンボル群を前記命令ツールバー領域に表示し、前記アクティブ状態のときには、上下のカーソルキー操作に応じて任意の行のラダー命令シンボル群を前記命令ツールバー領域に表示すると共に、該命令ツールバー領域に表示されるラダー命令シンボル群のなかの任意のラダー命令シンボルを左右のカーソルキー操作によって指定させる。
【００２４】
あるいは、命令ツールバー領域において、第１記憶手段に記憶されている全てのラダー命令シンボルを一覧表示すると共に、そのなかの任意のラダー命令シンボルを、上下左右のカーソルキー操作によって指定させるようにしてもよい。何れにしても、基本的に、上下左右のカーソルキー操作のみで、記憶されている全てのラダー命令シンボルを選択・指定可能となる。
【発明の効果】
【００２５】
本発明のラダープログラム作成支援装置等によれば、単純なキー操作によりラダー命令シンボルを選択でき、不慣れな人間であっても直感的に選択操作でき操作性の向上を図ることができる、以って効率良くラダープログラム作成できユーザ負担を軽減できる。
【図面の簡単な説明】
【００２６】
【図１】本例のプログラマブルコントローラのプログラミング装置の構成・機能ブロック図である。
【図２】アクティブ切換部によるアクティブ状態切換の様子を示す図である。
【図３】（ａ）、（ｂ）は、命令シンボルテーブル、コード・シンボルテーブルの具体例である。
【図４】上下のカーソルキー操作による命令ツールバーの表示内容の切換えを示す図である。
【図５】ラダープログラム編集部の概略処理フローチャート図である。
【図６】ラダー命令編集画面の一例である。
【図７】変形例の命令ツールバー表示例である。
【図８】（ａ）、（ｂ）は、従来のラダー編集画面の一例を示す図である。
【発明を実施するための形態】
【００２７】
以下、図面を参照して、本発明の実施の形態について説明する。
図１は、本例のプログラマブルコントローラのプログラミング装置（支援ツール）の構成・機能ブロック図である。尚、この支援ツール１は、ラダープログラム作成支援装置であるといえる。
【００２８】
尚、本説明では上記の通り、各ラダー命令に対応するシンボル（図形／記号等）を“ラダー命令シンボル”または“命令シンボル”等と呼ぶものとする。
尚、支援ツール１は、ハードウェア的には従来と同様に汎用のパソコン等であり、特に図示しないが汎用のパソコン等の一般的な構成を有している。すなわち、ＣＰＵ、記憶装置（ハードディスク等）、メモリ、ディスプレイ、入力装置（キーボード、マウス等）、通信インタフェース等（何れも不図示）を有している。
【００２９】
例えば、上記不図示の記憶装置には、予め所定のアプリケーションプログラムが記憶されている。上記不図示のＣＰＵが、このアプリケーションプログラムをメモリに読出し・実行することにより、図１に示す各種処理機能部や図５に示す各種処理等が実現される。
【００３０】
図１に示す支援ツール１は、ラダープログラム表示部２、ラダープログラム記憶部３、通信部４、ラダープログラム編集部１０等を有する。ラダープログラム編集部１０は、ラダープログラム編集機能部１１、アクティブ切換部１２、命令ツールバー表示部１３、命令ツールバー編集部（カスタマイズ）１４、命令ツールバー構成記憶部１５等を有する。
【００３１】
ラダープログラム表示部２、ラダープログラム記憶部３、通信部４、ラダープログラム編集機能部１１は、従来と略同様と考えてよく、以下、簡単に説明する。
ラダープログラム記憶部３は、ラダープログラム編集部１０によって作成／編集された任意のラダープログラムを格納する。ラダープログラム表示部２は、ラダープログラムの新規作成／編集中のラダープログラムを表示する、上記ディスプレイ等である。ラダープログラムの編集（更新、変更、バージョンアップ等）の場合には、初期状態として、ラダープログラム記憶部３に記憶されている任意のラダープログラムが読み出されて表示され、このラダープログラムに対して任意の編集作業が行われることになる。
【００３２】
通信部４は、不図示の通信線に接続しており、この通信線を介して外部の装置（プログラマブルコントローラ２０等）との通信を行う為の通信モジュールである。例えば、ラダープログラム編集部１０によって新規作成／編集されたラダープログラムが、通信部４を介して、プログラマブルコントローラ２０にダウンロードされることになる。
【００３３】
ラダープログラム編集機能部１１は、上述したラダープログラム作成用の画面（ラダープログラム編集画面）の一部である、上述したラダープログラムの編集を行う領域（ラダー編集領域２６）の表示を行い、このラダー編集領域２６上でユーザに、任意の位置への任意のラダー命令シンボルの配置（但し、位置指定は行わせるが、ラダー命令シンボルの選択は命令ツールバー表示部１３によって行わせる）やアドレス入力を行わせる処理機能部である。ラダープログラム編集機能部１１は、既存のラダープログラムの編集（更新、変更、バージョンアップ等）の際には、初期処理において編集対象のラダープログラムをラダープログラム記憶部３から読み出して表示する（勿論、新規のラダープログラム作成の際には、この処理は行わない）。
【００３４】
上記の通り、このラダープログラム編集機能部１１も従来と略同様と見做してよく、よってユーザによる任意の位置指定は、上記従来と同様に上下左右のカーソルキーによって行われる。
【００３５】
命令ツールバー構成記憶部１５は、後述する命令シンボルテーブル３０を格納する。このテーブル３０は、「複数行×複数列」の二次元配列により各命令コードを保持している。これは、図５に一例を示すように（詳細には後に説明する）縦軸で命令分類を示し、横軸は各命令分類に属するラダー命令コード群を示す。換言すれば、「複数行×複数列」の二次元配列の各行は、１つの命令分類とこの命令分類に属するラダー命令コード群より成るものである。尚、命令コードは、例えば上述したラダー命令の命令語（ニーモニック）等であり、各命令コード毎に対応するラダー命令シンボルが予め用意されている。
【００３６】
また、命令ツールバー構成記憶部１５においては、別途、不図示のテーブル（後述するコード・シンボルテーブル４０等）に、各命令コードに対応付けて命令シンボル（図形／記号データ）が格納されている。尚、従来より、通常、各ラダー命令毎に、命令コードと、図形／記号である命令シンボルとが存在する。
【００３７】
上記テーブル４０も加えることで、命令ツールバー構成記憶部１５には「複数行×複数列」の二次元配列により各命令シンボルが記憶されていると見做すことができる。尚、上記テーブル４０も用いる形態は一例であり、この例に限るものではなく、例えばテーブル３０においてラダー命令コード群の代わりに命令シンボル群が格納されていてもよい（勿論、この場合にはテーブル４０は必要なくなる）。何れにしても、ユーザ・インタフェース上は（命令ツールバー領域２５、ラダー編集領域２６においては）、命令シンボルが表示される。
【００３８】
命令ツールバー表示部１３は、上記命令ツールバー構成記憶部１５に格納されているテーブルに基づいて命令ツールバーの表示を行うと共に、ユーザによる任意の命令シンボルの選択・指定を受け付ける。この選択・指定の入力方法は、上下左右のカーソルキーによって行われる。すなわち、上記ラダー編集領域２６上での位置指定と同じ操作であり、後述するアクティブ切換部１２によって命令ツールバー領域２５、ラダー編集領域２６の何れか一方の領域が有効（アクティブ状態）となる。有効（アクティブ状態）となっている領域上では、カーソルキー操作に応じてカーソルが移動して選択／指定が行われることになる。
【００３９】
命令ツールバー表示部１３は、命令ツールバー構成記憶部１５に記憶されている命令シンボルの配置構成（上記二次元配列）を読み込み、この配置構成に従って命令分類名と命令シンボルの表示を行う。この命令シンボルの表示は、従来の支援ツールで行われている、各命令コードに対応する命令シンボルの表示方法を利用して行う。すなわち、上記二次元配列（テーブル３０）の各命令コードに対応する命令シンボル（図形／記号等）を、上記コード・シンボルテーブル４０から取得して表示する。そして、ユーザによって選択・指定された命令シンボルを、ラダープログラム編集機能部１１へ渡す。
【００４０】
アクティブ切換部１２は、上記ラダープログラム編集機能部１１と命令ツールバー表示部１３の何れか一方をアクティブ状態、他方を非アクティブ状態とする。これは、換言すれば、命令ツールバー領域２５、ラダー編集領域２６の何れか一方の領域をアクティブ状態、他方の領域を非アクティブ状態とするものと言える。アクティブ切換部１２は、ユーザによる所定のキー操作に応じて、アクティブ状態とする領域を交互に切り換える。例えば、命令ツールバー領域２５がアクティブ状態のときに上記所定のキー操作があると、ラダー編集領域２６をアクティブ状態にする。この状態で上記所定のキー操作があると再び命令ツールバー領域２５をアクティブ状態にする。
【００４１】
尚、上記所定のキー操作は、本例では「スペースキー」とするが、この例に限らず、任意に決めてよい。
アクティブ状態となっている領域（機能部）が、キー操作による入力を受け付ける。特に、上記上下左右のカーソルキー操作、リターンキー操作による入力を受け付ける。
【００４２】
例えば、仮に現在はラダープログラム編集機能部１１がアクティブになっているとすると、上下左右のカーソルキー操作を行うことで、カーソル位置が上記ラダー編集領域２６上で上下左右に移動することになり、ユーザは所望の位置にカーソルを移動させて位置指定する。尚、所望の位置にカーソルを移動したら例えばリターンキーを押下することで、位置指定を確定させるようにしてもよい。
【００４３】
この状態でユーザが所定のキー（ここではスペースキー）を操作すると、命令ツールバー表示部１３がアクティブとなり、上下左右のカーソルキー操作によって、上記命令ツールバー領域２５の命令シンボル群上をカーソル位置が移動することになる。そして、カーソル位置が任意の命令シンボル上にあるときに例えば特定のキー操作（例えばリターンキー操作）があると、命令ツールバー表示部１３は、この命令シンボルが選択・指定されたものと判定し、当該選択・指定された命令シンボル（またはその命令コード）をラダープログラム編集機能部１１に渡す。
【００４４】
これによって、ラダープログラム編集機能部１１は、その後にアクティブ状態になったときには、渡された命令シンボルを上記位置指定された場所に配置・表示する。
尚、命令ツールバー表示部１３がアクティブの状態で任意の命令シンボルが選択・指定されたときには、スペースキー操作を行わなくても自動的に、ラダープログラム編集機能部１１がアクティブとなるようにしてもよい。
【００４５】
また、尚、各機能部１１，１３（各領域２５，２６）は、自己がアクティブ状態のときにスペースキー操作があると、その時点でのカーソル位置を保持しており、再び自己がアクティブ状態になったときには保持していたカーソル位置にカーソルを表示する。
【００４６】
尚、ラダープログラム編集機能部１１がアクティブになるとは上記ラダー編集領域２６がアクティブになることを意味し、命令ツールバー表示部１３がアクティブになるとは命令ツールバー領域２５がアクティブになることを意味すると考えても良い。
【００４７】
本例では、ユーザがスペースキーを押下する毎に、アクティブ切換部１２によって、図２に示すように、ラダー編集領域２６がアクティブの状態（画面２１Ａ）と、命令ツールバー領域２５がアクティブの状態（画面２１Ｂ）とに、交互に切り替わることになる（トグル切換え）。
【００４８】
ここで、命令ツールバー表示部１３による命令ツールバー領域２５の表示について、図３、図４を参照して説明する。
まず、図３（ａ）、（ｂ）には、上記命令ツールバー構成記憶部１５に記憶されている命令シンボルテーブル３０とコード・シンボルテーブル４０の具体例を示す。
【００４９】
図３（ａ）に示すように、命令シンボルテーブル３０には、各命令分類毎に、その命令分類の識別名（ここではグループ名３２）と、その命令分類に属する複数のラダー命令の命令コード群３３が格納される。また、各命令分類毎に（各行毎に）任意のシリアル番号であるＮＯ．３１が格納されている。
【００５０】
既に述べたように、テーブル３０は「複数行×複数列」の二次元配列により各命令コードを保持している。そして、既に述べたように、テーブル４０も加えることで命令ツールバー構成記憶部１５には実質的に「複数行×複数列」の二次元配列により各命令シンボルが記憶されていると見做すことができる。あるいは、テーブル３０において命令コード群３３の代わりに命令シンボル群が格納されるようにしてもよい。
【００５１】
図３（ａ）の例では、ＮＯ．３１＝‘１’〜‘８’の８行分あり、これは命令分類の数（グループ数）が８つあることを意味している。仮に、命令コード群３３の列数を１０列とした場合（つまり、各命令分類に属するラダー命令の数を最大で１０個とした場合）、命令コード群に関して８行×１０列の二次元配列が構成される。
【００５２】
この様な二次元配列に対して、縦横（行／列）それぞれに対してポインタ（図示のポインタＡ、ポインタＢ）が設けられており、この２つのポインタＡ，Ｂによって二次元配列の命令コード群３３における全ての命令コードが指定可能となる。命令ツールバー領域２５がアクティブの状態の状態においては、左右のカーソルキー操作によってポインタＢが左右に移動し、上下のカーソルキー操作によってポインタＡが上下に移動することになる。命令ツールバー表示部１３は、この様なポインタＡ，Ｂの管理制御も行っている。
【００５３】
但し、ポインタを用いる例に限るものではなく、「複数行×複数列」の二次元配列により保持される命令コード群（または命令シンボル群）に対して、上下左右のカーソルキー操作によって任意の１つの命令コード等を指定可能となるように管理制御するものであれば何でもよい。
【００５４】
尚、上記ポインタは一例であり、この例に限らず、例えば二次元の配列情報（例えば（Ｘ，Ｙ）座標情報のようなもの）によって命令分類と命令コード群を管理制御してもよい。
【００５５】
また、図３（ａ）に示す例では、命令コード群３３内の各項目名が“Ｆ２”、“Ｆ３”、・・・、“Ｆ１０”等となっているが、これは、ファンクションキーの割り当てを意味している。つまり、従来と略同様にして、各命令シンボル（命令コード）に対するファンクションキーの割り当ても行っている。そして、本例では、図２や図４に示すように、各命令シンボルに割り当てられたファンクションキー“Ｆ２”、“Ｆ３”、・・・、“Ｆ１０”が、命令シンボルの下側に表示されると共に、ファンクションキーによる命令シンボルの選択・入力も受け付けている。
【００５６】
本手法では、上下左右のカーソルキー、スペースキー、リターンキーという単純且つ少ないキー操作でラダープログラムを作成でき、初心者でも容易に操作可能となるが、一方で熟練者等から従来通りにファンクションキーで操作した方が遣り易いという意見が出るかもしれない。これより、本手法では、２種類の操作方法を提供してユーザが好きな操作方法を選べるようにしている。
【００５７】
上記図３に示す例のように、命令ツールバー領域２５には、命令コードではなく命令シンボル（図形／記号）が表示されるが、これは図３（ｂ）に示すコード・シンボルテーブル４０から取得して表示できる。
【００５８】
図３（ｂ）に示すコード・シンボルテーブル４０は、各命令コード４１に対応付けて、記号４２が格納されている。記号４２は、上記命令シンボルであり、各命令コードに対応する図形／記号等の画像データ等である。この様に、コード・シンボルテーブル４０も用いることで、命令ツールバー領域２５には命令コードではなく命令シンボル（図形／記号）が表示されるが、これ自体は既存の表示方法である。また、既に述べたように、この様な例に限るものではない。
【００５９】
例えば上記８行×１０列の二次元配列の例では最大８０個の命令シンボル（図形／記号）を、命令ツールバー領域２５に表示可能となる。但し、一実施形態では、８０個の命令シンボル画像を一度に全て表示するものではなく、１行分ずつ表示する（ここでは、任意の１つの命令分類に属する命令シンボル群を表示することになる。本例では一度に最大１０個の命令シンボルが表示されることになる）。
【００６０】
これは、現在のカーソル位置の“行”のグループ名３２と命令コード群３３に対応する命令シンボル群が、例えば図２に示すように命令ツールバー領域２５に表示される。換言すれば、上記ポインタＡが指す“行”のグループ名３２と命令コード群３３に対応する命令シンボル群が、命令ツールバー領域２５に表示される。表示される命令シンボル群におけるカーソル位置は、上記ポインタＢの位置によって決まる。そして、この状態でユーザが左右のカーソルキーを操作することで、ポインタＢの位置が横方向に移動し、表示される命令ポインタ群内でカーソル位置が左右に移動することになる。
【００６１】
尚、以下の説明では上記「命令コード群３３に対応する命令シンボル群」を「命令シンボル群３３」と記す場合がある。
また、この状態でユーザが上下のカーソルキーを操作することで、ポインタＡの位置が縦方向に移動し、命令ツールバー領域２５には別の“行”のグループ名３２と命令シンボル群３３が表示される。例えば、図３（ａ）に示すテーブル３０の１行目を表示している状態で、“下”カーソルキーを操作することで２行目が表示される状態となり、更に“下”カーソルキーを操作することで３行目が表示されることになる。また、最終行（８行目）表示状態で“下”カーソルキーを操作すると、１行目の表示に戻る。反対に、先頭行（１行目）表示状態で“上”カーソルキーを操作すると、８行目が表示される。この様な上下のカーソルキー操作による命令ツールバーの表示内容の切換えの様子を、図４に示してある。
【００６２】
尚、この様な“行”の切換えは、本例ではグループ（命令分類）の切換えを意味することになる。ユーザは、上下のカーソルキー操作によって命令分類を切換えて所望の命令分類を指定し、続いて、左右のカーソルキー操作によって当該命令分類の属する命令シンボル群のなかから所望の命令シンボルを指定することになる。
【００６３】
また、上記１行目→８行目や８行目→１行目のようなループ的なカーソル移動は、“行”に限らず、“列”にたいしても同様に行うことができる。すなわち、カーソル位置（ポインタＢ）が、命令コード群３３における最も左側の列（先頭列）にある状態で、“左”カーソルキーを操作すると、カーソル位置は、最も右側の列（最終列）に移動することになる（先頭列→最終列）。その逆に、カーソル位置（ポインタＢ）が上記最終列にある状態で“右”カーソルキーを操作すると、カーソル位置は上記先頭列に移動することになる（最終列→先頭列）。
【００６４】
以上、命令ツールバー表示部１３に係わる表示・操作例について説明した。再び図１の説明に戻る。
以下、上記命令ツールバー編集部１４について説明する。
【００６５】
命令ツールバー編集部１４の機能によって、ユーザは、命令シンボルテーブル３０の内容（命令ツールバーの内容）を任意に変更することができる。例えば、新たな“行”を作成・追加することができ、あるいは既存の“行”における命令コード群３３に新たな命令コードを追加／入れ替えすること、または既存の命令コードの削除等ができる。
【００６６】
命令ツールバー編集部１４は、例えば図６に示すラダー命令編集画面５０をディスプレイ上に表示する。
図示のラダー命令編集画面５０は、命令表示・編集領域５１、種別選択領域５２、命令リスト領域５３等を有する。また、特に符号は付さないが、図示の「グループを追加」、「グループを削除」、「適用」、「削除」、「ＯＫ」等の各種ボタンが表示されている。
【００６７】
命令表示・編集領域５１には、命令シンボルテーブル３０の内容が一覧表示される。図６においては、上記の例に応じて、ＮＯ．３１＝‘１’〜‘８’までの８行全てについてグループ名３２と命令コード群３３が表示されている。
【００６８】
尚、ここでも、命令表示・編集領域５１と、種別選択領域５２及び命令リスト領域５３との何れか一方をアクティブ状態、他方を非アクティブ状態とし、所定の１つのキー（本例ではスペースキー）操作によって、スペースキーを押下する毎にアクティブ状態となる領域が切り替わる。尚、上記「グループを追加」、「グループを削除」、「適用」、「削除」、「ＯＫ」等の各種ボタンは、例えば命令表示・編集領域５１がアクティブ状態のときにカーソルキー操作によって選択可能であるものとする。
【００６９】
そして、命令表示・編集領域５１がアクティブの状態では、命令表示・編集領域５１上において、カーソルによって命令コード群３３の任意の命令コードが選択・指定可能である。例えば上下左右のカーソルキー操作によってカーソルを上下左右方向に移動させることができる。あるいは、空欄を選択することもできる。尚、カーソルキー操作に限らず、例えばマウス操作によって直接的に任意の命令コード／空欄を選択可能としてもよい。但し、上記のようにマウス操作が困難な環境である場合もあり得るので、この様な環境下ではカーソルキー操作が望ましい。尚、非アクティブ状態への切換え時点でのカーソル位置は保持される。
【００７０】
ユーザは、上記命令表示・編集領域５１上で任意の命令コード／空欄を選択・指定したら、続いて、スペースキーを押下することで種別選択領域５２及び命令リスト領域５３をアクティブ状態に切り換える。そして、種別選択領域５２及び命令リスト領域５３上で任意のラダー命令（命令コード）をカーソルキー操作によって選択する。これは、例えば、左右のカーソルキー操作によって種別選択領域５２、命令リスト領域５３の何れかを選択し、選択した領域上で上下のカーソルキー操作によってカーソルを上下方向に移動させて種別／命令コードを選択する。
【００７１】
これは、まず、種別選択領域５２上で任意の種別を選択することで、この種別に属するラダー命令一覧（命令コード一覧）が命令リスト領域５３に表示されるので、この一覧から任意のラダー命令（命令コード）を選択する。そして、上記「適用」ボタンを操作することで、選択したラダー命令（命令コード）が上記カーソル位置に追加される。カーソル位置に既存の命令コードがある場合には、これと入れ替わって追加されることになる。
【００７２】
尚、種別選択領域５２及び命令リスト領域５３上での選択操作も、マウス操作によって行えるようにしてもよいが、上記の通り、状況によってはカーソルキー操作が望ましい。
また上記「削除」ボタンによってカーソル位置の（既存の）命令コードを削除したり、「グループを削除」によってグループ単位（行単位）で削除することもできる。また、任意の行における図示の「表示」５１ａのチェックを外すことで、命令シンボルテーブル３０から削除することなく、その行の命令シンボル群３３等を命令ツールバー領域２５に表示させないようにすることもできる。
【００７３】
尚、「ＯＫ」ボタンを操作することで、変更内容が反映される（命令シンボルテーブル３０の内容が更新される）。これによって、命令ツールバーの表示内容が、図示のカスタマイズ前からカスタマイズ後へと変わることになる。
【００７４】
図５に、上記ラダープログラム編集部１０の概略処理フローチャート図を示す。
ラダープログラム編集部１０を起動してラダープログラム編集機能を指定すると、まず、ワークシートを開き（ステップＳ１）、命令ツールバー表示部１３が命令ツールバー構成記憶部１５から命令シンボルテーブル３０等を読み出して（ステップＳ２）、これに基づいて命令ツールバー領域２５に命令ツールバーを表示する（ステップＳ３）。これは、例えば、上記テーブル３０、４０に基づいて二次元配列の命令シンボル群を生成してセットする（メモリ等に一時的に記憶する）。そして、例えば、デフォルト“行”（例えば１行目）のグループ名及び命令シンボル群を、命令ツールバー領域２５に表示する。
【００７５】
また、ユーザが既存のラダープログラムの編集を指定した場合には、ラダープログラム編集機能部１１は、ラダープログラム記憶部３から、ユーザが指定したラダープログラムを読み出して(ステップＳ４)、これを上記ワークシート上に表示する（ラダー編集領域２６に表示する）（ステップＳ５）。
【００７６】
以上の初期処理が完了したら、アクティブ切換部１２は、例えばデフォルトでラダープログラム編集機能部１１をアクティブにし、その後は上述したように所定のユーザ操作（スペースキー）に応じてアクティブ状態の切換え（トグル切換）を行う。
【００７７】
ユーザは、上記スペースキー操作などによって、ラダープログラム編集機能部１１、命令ツールバー表示部１３の何れか一方をアクティブにしつつ、所望のラダープログラム作成／編集を行う（ステップＳ６）。その際のラダー命令シンボルの選択は、既に図４等で説明したように、上下左右のカーソルキー操作のみで実現でき、これにスペースキーとリターンキーを加えても、わずか６つのキー操作のみでラダープログラム作成作業を実現できる。
【００７８】
ラダープログラム作成／編集が完了したら、新規作成または変更したラダープログラムを、ラダープログラム記憶部３に格納して、本処理を終了する。
また、ユーザが、ラダープログラム編集部１０を起動して、命令ツールバー編集部１４の機能を指定すると、命令ツールバー編集部１４は、図５に示すステップＳ１１〜Ｓ１５の処理を実行する。
【００７９】
すなわち、命令ツールバー構成記憶部１５から上記命令シンボルテーブル３０等を読み出してメモリ等に一時的に記憶すると共に（ステップＳ１１）、これに基づいて例えば上記図６に示すラダー命令編集画面５０を表示する（ステップＳ１２）。尚、この画面５０における上記種別選択領域５２及び命令リスト領域５３に表示させる情報は、特に図示・説明しないが、予め命令ツールバー構成記憶部１５等に記憶されているものとする。
【００８０】
そして、既に図６で説明したように、ラダー命令編集画面５０上でユーザに所望の命令ツールバー編集作業を行わせる（ステップＳ１３）。そして、例えばユーザが上記「ＯＫ」ボタンを操作することで編集後データの保存を指示すると（ステップＳ１４）、上記命令表示・編集領域５１で編集された情報を、上記命令シンボルテーブル３０に書き込むことで、命令シンボルテーブル３０を更新する（ステップＳ１５）。
【００８１】
現在、ラダー命令の数は非常に多くなっており、本手法のように多数（例えば８行×１０列＝８０個）の命令シンボルを命令ツールバーに表示可能とする場合であっても、全てのラダー命令の命令シンボルを命令ツールバーに表示することは、技術的には可能であるが、数が多すぎるとユーザが操作し難くなる。つまり、ユーザは、２次元配置される非常に多数の命令シンボルを参照しながらそのなかから所望の命令シンボルを選択することになり、数が多すぎると所望の命令シンボルを見つけ出すことに手間・時間が掛かることになる。
【００８２】
一方、現実上、ラダープログラム作成において、多数のラダー命令の全てを使用するようなことはなく、実際に使用するラダー命令は、ある程度限られてくる。また、殆ど全てのユーザが使用するラダー命令もあれば、使用するユーザもいれば使用しないユーザもいるようなラダー命令もある。あるいは、使用するにしても、使用頻度が高いラダー命令、低いラダー命令があるものである。
【００８３】
これより、上記命令ツールバー編集部１４の機能によって、各ユーザ毎に、自己が使用するラダー命令の命令シンボルのみが命令ツールバーに表示されるように、あるいは更に使用頻度が比較的高いラダー命令の命令シンボルのみが命令ツールバーに表示されるように、上記命令シンボルテーブル３０の内容を編集することができる。これによって、ラダープログラム作成の際のユーザの作業効率が向上する。あるいは、命令ツールバーに表示させる命令シンボル群のなかで、更に使用頻度が高いものほど例えばバーの左側となるように配置することで、カーソルの左右方向の移動がバーの左側領域に集中させることもでき、カーソルの左右方向の移動の距離を短くすることができ、以って操作性の向上を図ることができる。
【００８４】
尚、支援ツール１は、ハードウェア的には例えばパソコン等の汎用コンピュータにより実現される。一般的なパソコン等の構成は、特に図示しないが、ＣＰＵ、メモリ、記憶装置（ハードディスク）、通信機能部、入出力インタフェース、ディスプレイ等の表示装置、キーボード、マウス等の入力装置等から成る。
【００８５】
記憶装置（ハードディスク）には、予め所定のアプリケーションプログラムが格納されており、ＣＰＵがこのアプリケーションプログラムを読出し実行することにより、例えば図１に示す各種機能部２，１１，１２，１３，１４等の処理機能、図５に示すステップＳ１〜Ｓ６、Ｓ１１〜Ｓ１５等の処理が実現される。また、記憶装置（ハードディスク）には、上記命令ツールバー構成記憶部１５やラダープログラム記憶部３の格納データが格納される。
【００８６】
以下、変形例について説明する。
これは、命令ツールバー表示部１３に関する変形例であり、図７を参照して説明する。
上述した一実施例では、例えば図４に示すように、命令ツールバーは１行ずつ表示し、上下のカーソルキーによって、命令ツールバーに表示する“行”の切換えを行っていた。これに対して、変形例では、図７に示すように、命令シンボルテーブル３０に格納されている全てのラダー命令の命令シンボルを、命令ツールバーに一覧表示する。すなわち、命令シンボルテーブル３０に格納されている全ての行のグループ名３２及び命令コード群３３を取得して、これに基づいて各命令分類名および各命令分類に属する命令シンボル群３３を、図示の命令ツールバー領域６１内に一覧表示する。
【００８７】
スペースキーによってラダー編集領域６２と命令ツールバー領域６１とが交互にアクティブになる点は、上述した一実施例と略同様である。図７においては、図示の画面６０Ａではラダー編集領域６２がアクティブ状態であり、画面６０Ｂでは命令ツールバー領域６１がアクティブ状態となっている。
【００８８】
命令ツールバー領域６１がアクティブの状態でユーザが上下左右のカーソルキーを操作することで、命令ツールバー領域６１内のカーソル位置が上下左右に移動する。そして、カーソル位置が所望の命令シンボルの表示位置になったときにリターンキーを押下することで、この命令シンボルが選択されることになる。尚、命令シンボルの選択方法は、カーソルキー操作の例に限らず、マウス操作であってもよい。
【００８９】
この様に、変形例においても、上下左右のカーソルキー操作に、スペースキーとリターンキー操作を加えて、わずか６つのキー操作のみでラダープログラム作成作業（但し、アドレス入力作業は除く）を実現できる。アドレス入力の為のキー操作は、従来と略同様と考えてよい。また、一覧表示されることで、所望の命令シンボルを見つけ易くなり作業効率が向上する。その一方で、一覧表示する為に大きなスペースを必要とする為、画面６０Ｂに示すようにラダー編集領域６２が隠れてしまうという問題がある。このように一長一短あるので、例えば、予め決められた所定のキー操作（何でもよい）によって、命令ツールバーの表示形態を、上述した一実施例の表示形態（１行ずつ表示）と変形例の表示形態（全てを一覧表示）とに切り替えることができるようにしてもよい。
【００９０】
また、尚、他の変形例としては、例えばマウスを用いるものとし、マウスのホイール（回転部分）操作によって、上下のスクロールを行えるようにしてもよい。上下のスクロールとは、例えば、図４に示すような命令ツールバーの１行ずつの表示の切換え等である。尚、この場合、マウスポインタを命令ツールバー上に置くことで命令ツールバー上でのマウス操作が有効となるが、この例に限らず、例えば上記スペースキーによってアクティブ状態とする手法を適用しても構わない。また、マウスのホイール（回転部分）操作によって、例えばアクティブ状態の切換え（領域２５と領域２６とのアクティブ切換え）を行えるようにしてもよい。
【００９１】
尚、上記のように、本手法による簡易操作方法（上下左右のカーソルキー操作に、スペースキーとリターンキー操作）は、マウス操作が困難な環境下では特に便利なものとなるが、この様な環境下での使用に限るものではなく、マウス操作可能な環境下であれば、マウス操作を行っても構わない。
【００９２】
以上説明したように、本例のプログラマブルコントローラのプログラミング装置（支援ツール１；ラダープログラム作成支援装置）によれば、ラダー編集を行う部位と、命令ツールバー部位との間で、アクティブな部位を１つのキー操作（本例ではスペースキー）でトグル切換えできる。そして、命令ツールバー部位がアクティブな状態で、極めて単純なキー操作（上下左右のカーソルキーとリターンキー）で命令シンボルを選択・指定できる。これによって、従来のように様々なキー操作を覚える必要なく、熟練者でなくても（初心者等、不慣れな人間であっても）直感的に選択操作でき、すぐに操作に慣れることができ、操作性の向上を図ることができ、以って効率良くラダープログラム作成できユーザ負担を軽減できる。
【００９３】
また、上記極めて単純なキー操作は、ラダー編集を行う部位と同じキー操作であり、操作方法が統一されることで操作性の向上を図ることができ、また操作キーの数が少なくて済む。
【００９４】
また、図４に示すような命令分類の切換表示や命令ツールバー上のカーソル移動がループ的に行えることから、端から端へすばやい移動が可能となる。
また、命令ツールバー上に表示させる命令シンボル群を、各ユーザ毎にそのユーザの使用頻度が高い命令シンボル群になるように自由にカスタマイズできる。
【００９５】
以上のことから、ラダープログラム作成作業において特に命令シンボルの選択作業が、単純で軽快になり、以ってラダープログラム作成作業における操作性が向上する。
【符号の説明】
【００９６】
１  支援ツール
２  ラダープログラム表示部
３  ラダープログラム記憶部
４  通信部
１０  ラダープログラム編集部
１１  ラダープログラム編集機能部
１２  アクティブ切換部
１３  命令ツールバー表示部
１４  命令ツールバー編集部
１５  命令ツールバー構成記憶部
２０  プログラマブルコントローラ
２５  命令ツールバー領域
２６  ラダー編集領域
３０  命令シンボルテーブル
３１  Ｎｏ．
３２  グループ名
３３  命令コード群
４０  コード・シンボルテーブル
４１  命令コード
４２  記号（命令シンボル）
５０  ラダー命令編集画面
５１  命令表示・編集領域
５２  種別選択領域
５３  命令リスト領域
６１  命令ツールバー領域
６２  ラダー編集領域
【図１】
2012079132.tif 000003
【図３】
2012079132.tif 000004
【図５】
2012079132.tif 000005
【図２】
2012079132.tif 000006
【図４】
2012079132.tif 000007
【図６】
2012079132.tif 000008
【図７】
2012079132.tif 000009
【図８】
2012079132.tif 000010