(57)【特許請求の範囲】
【請求項１】
プログラマブルロジックコントローラのラダープログラム開発支援装置において、
回路編集ウィンドウにラダープログラムを表示する回路表示手段と、
該回路編集ウィンドウに表示されたラダープログラムからコメント情報を抽出してコメントデータを作成するコメント抽出手段と、
前記コメントデータに従ってコメントウィンドウにコメントを表示するコメント表示手段と、
前記コメントウィンドウに表示されたコメントのインデント情報を操作し、インデントデータを変更するインデント処理手段と、を有し、
前記コメント表示手段は、前記インデントデータに基づいてコメントをアウトライン表示し、
前記コメントは名称部と内容部からなり、前記コメント表示手段は前記名称部をアウトライン表示することを特徴とするラダープログラム開発支援装置。
【請求項２】
前記インデント処理手段によりインデントデータが変更された場合に、該変更データを前記回路編集ウィンドウのコメントに反映させるコメント更新手段を有することを特徴とする請求項１記載のラダープログラム開発支援装置。
【請求項３】
前記コメントウィンドウ上のカーソルが位置する行番号を認識し、前記回路編集ウィンドウ上のカーソルの位置を前記行番号と同じ位置に移動させるカーソル位置判定手段を有することを特徴とする請求項１または２記載のラダープログラム開発支援装置。
【請求項４】
前記カーソル位置判定手段は、前記回路編集ウィンドウ上のカーソルが位置する行番号を認識し、前記コメントデータに対応する行番号がない場合には、該コメントデータに存在する行番号のうち前記回路編集ウィンドウ上のカーソルが位置する行番号より小さく、かつ一番近い行番号に前記コメントウィンドウ上のカーソルの位置を移動させることを特徴とする請求項３記載のラダープログラム開発支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルロジックコントローラ（ＰＬＣ）上で動作するユーザアプリケーションの開発を支援する、ラダープログラム開発支援装置に関するものである。
【背景技術】
【０００２】
ユーザは、ラダープログラムを作成する際にラダープログラム内に適宜コメント行を設けて、ラダープログラムの内容を理解しやすくするようにしている。
【０００３】
図４は、ラダープログラムの一例を示す図である。
ユーザはラダープログラム開発支援装置を用い、ラダー回路の編集、コメントの挿入等を行ってラダープログラムを作成する。
【０００４】
図５は、図４のラダープログラムにおいて回路の折りたたみ機能を実行した際の表示例を示す図である。ここで、回路の折りたたみ機能とは、ラダープログラムのコメント行以外の部分（ラダー回路部分）を一時的に非表示にする機能のことである。
図５では、図４のラダー回路部分が非表示となって、コメント部分のみが表示されている。コメントの左側に表示されている行番号は、図４における行番号に対応している。このように、コメント行以外の部分を一時的に非表示にすることにより、ラダープログラムの全体像を把握することができるようになる。
【０００５】
【特許文献１】特開２００６−２９３８８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
回路の折りたたみ機能においては、ラダー回路部分を一時的に非表示にするため、コメントを表示できる情報量は、回路編集ウィンドウの表示範囲に限られ、十数行程度となっていた。そのため、膨大な量のプログラムソースになった場合は、コメント行の総数は数百行にもなり、回路折りたたみ機能を用いてもプログラムの全体像を把握することが容易ではなくなってくるという問題点があった。
【０００７】
本発明は上述した問題点を解決するためになされたものであり、回路編集ウィンドウの表示範囲に限られずにコメントを表示でき、ラダープログラムの全体像を容易に把握することができるラダープログラム開発支援装置を実現することを目的とする。
【課題を解決するための手段】
【０００８】
このような課題を達成するために、本発明は次のとおりの構成になっている。
（１）プログラマブルロジックコントローラのラダープログラム開発支援装置において、
回路編集ウィンドウにラダープログラムを表示する回路表示手段と、
該回路編集ウィンドウに表示されたラダープログラムからコメント情報を抽出してコメントデータを作成するコメント抽出手段と、
前記コメントデータに従ってコメントウィンドウにコメントを表示するコメント表示手段と、
前記コメントウィンドウに表示されたコメントのインデント情報を操作し、インデントデータを変更するインデント処理手段と、を有し、
前記コメント表示手段は、前記インデントデータに基づいてコメントをアウトライン表示し、
前記コメントは名称部と内容部からなり、前記コメント表示手段は前記名称部をアウトライン表示することを特徴とするラダープログラム開発支援装置。
【００１０】
（２）前記インデント処理手段によりインデントデータが変更された場合に、該変更データを前記回路編集ウィンドウのコメントに反映させるコメント更新手段を有することを特徴とする（１）記載のラダープログラム開発支援装置。
【００１１】
（３）前記コメントウィンドウ上のカーソルが位置する行番号を認識し、前記回路編集ウィンドウ上のカーソルの位置を前記行番号と同じ位置に移動させるカーソル位置判定手段を有することを特徴とする（１）または（２）記載のラダープログラム開発支援装置。
【００１２】
（４）前記カーソル位置判定手段は、前記回路編集ウィンドウ上のカーソルが位置する行番号を認識し、前記コメントデータに対応する行番号がない場合には、該コメントデータに存在する行番号のうち前記回路編集ウィンドウ上のカーソルが位置する行番号より小さく、かつ一番近い行番号に前記コメントウィンドウ上のカーソルの位置を移動させることを特徴とする（３）記載のラダープログラム開発支援装置。
【発明の効果】
【００１３】
本発明によれば次のような効果がある。
回路編集ウィンドウとは別にコメント表示に特化したコメントウィンドウを設けることにより、ラダープログラムの全体像を容易に把握することができる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を用いて本発明を詳細に説明する。
図１は、本発明の一実施例を示す構成図である。
ユーザはラダープログラム開発支援装置を用い、ラダー回路の編集、コメントの挿入等を行ってラダープログラムを作成する。
回路表示手段１１は、ラダープログラムが記憶されているラダープログラム記憶手段１２からプログラムデータを取得し、回路編集ウィンドウにラダー回路、コメント等を表示させる。
【００１５】
コメント抽出手段２１は、ラダープログラム記憶手段１２からコメント情報を抽出してコメントデータを作成し、コメントデータ記憶手段２２にコメントデータを保存する。ここで、コメント情報とは、ラダープログラム内でのコメントの行番号、コメントのインデント位置情報、コメントの文字データ等であり、データテーブル等の形式にしたコメントデータを作成する。
【００１６】
コメント表示手段２３は、コメントデータ記憶手段２２からコメントデータを取得し、回路編集ウィンドウとは別にコメントウィンドウを新規に生成してラダープログラムから取得したコメントを表示する。
このように、新たにコメントウィンドウを作成するので、回路編集ウィンドウの表示範囲に限られずにコメントを表示でき、一度に多くのコメント情報を確認することでラダープログラムの全体像を把握しやすくすることができる。
【００１７】
インデント処理手段２４によりインデント情報を操作してコメントのインデント位置（コメントの行頭の位置）を変更することができ、これによりユーザは、コメントウィンドウに表示されているコメントを見やすくすることができる。この際インデント位置に合わせてインデントデータが変更される。
【００１８】
インデント情報とは、コメントの行頭の位置を他のコメントよりも字下げする等のようにコメントの行頭の位置を変更するための情報である。インデント情報は、インデントデータとしてコメントデータと対応させてデータテーブル等の形式でコメントデータと別個の構成としてもよいし、コメントデータ内にインデントデータを含んだ形式にしてもよい。
【００１９】
図１では、インデント処理手段２４によりインデント情報が操作された場合は、コメントデータ記憶手段２２に保存されているコメントデータ内のインデントデータを更新する例を示している。コメント表示手段２３は、コメントデータ記憶手段２２からコメントデータを取得し、コメントデータ内のインデントデータに基づいてコメントのアウトライン処理を実行する。その結果、コメントウィンドウに表示されているコメントのインデント位置が変更される。
【００２０】
コメント更新手段３１は、コメントデータ記憶手段２２からコメントデータを取得し、ラダープログラム記憶手段１２に記憶されているラダープログラム内のコメント情報を
コメントウィンドウ上で変更された情報に更新する。
回路表示手段１１は、ラダープログラム記憶手段１２から更新されたプログラムデータを取得し、回路編集ウィンドウにラダー回路、コメント等を表示させる。これにより、コメントウィンドウでの変更情報が回路編集ウィンドウに反映され、ラダープログラム内のコメント位置も変更される。
【００２１】
カーソル位置判定手段４１は、コメントウィンドウ上のカーソルの位置と回路編集ウィンドウ上のカーソルの位置との対応付けを行う。
カーソル位置判定手段４１は、コメントウィンドウ上のカーソルが位置するコメントの行番号をコメント表示手段２３から取得して認識する。この場合、コメントウィンドウのコメントの行番号と、回路編集ウィンドウのコメントの行番号とは一致しているので、カーソル位置判定手段４１は回路表示手段１１へコメントウィンドウ上のカーソルの行番号を伝える。これにより、回路表示手段１１は回路編集ウィンドウ上のカーソルの位置をカーソル位置判定手段４１から伝えられた行番号の位置へ変更する。
【００２２】
また、カーソル位置判定手段４１は、回路編集ウィンドウ上のカーソルが位置するコメント又はラダー回路の行番号を回路表示手段１１から取得して認識する。この場合、回路編集ウィンドウにはラダー回路の行番号が存在するが、コメントウィンドウにはラダー回路の行番号は存在しない。コメントは、ユーザがラダープログラムの内容を理解しやすくするためのものであり、ラダープログラム内においては、まずコメントが記入され、その後にそのコメントに対応するラダー回路が記載されていくのが通常である。
【００２３】
カーソル位置判定手段４１は、コメントデータに回路表示手段１１から取得したカーソル位置に対応する行番号があるかどうかを検索する。
その結果、対応する行番号がある場合は、カーソル位置判定手段４１はコメント表示手段２３へ回路編集ウィンドウ上のカーソルの行番号を伝える。
一方、対応する行番号がない場合は、コメントデータに存在する行番号のうち、回路編集ウィンドウ上のカーソルが位置する行番号より小さく、かつ一番近い行番号をコメント表示手段２３へ伝える。これにより、コメントウィンドウ上のカーソルの位置が回路編集ウィンドウ上のコメントと同一のコメントの位置又は、回路編集ウィンドウ上のラダー回路に対応するコメントの位置へ移動する。
【００２４】
コメントウィンドウ内のカーソルと回路編集ウィンドウ内のカーソルは連動して動き、一方のウィンドウのカーソルの位置を動かすと他方のウィンドウのカーソルの位置が自動的動くようにしてもよい。また、各ウィンドウのカーソルは独立して動き、例えば、一方のウィンドウ内の情報をカーソルでダブルクリックした場合に他方のウィンドウのカーソルの位置が対応した位置へ動くというように、一定の処理の後に両ウィンドウのカーソルの位置が対応するようにしてもよい。
【００２５】
図２は、コメントウィンドウを説明するための図である。
Ａ部は、回路編集ウィンドウのカーソル（四角枠）の位置に対応するカーソルの位置を示している。この例では、回路編集ウィンドウのラダー図上にカーソルがあるため、このラダー図の上にあるコメント「ＦＴＰＯＰＥＮ」の位置にコメントウィンドウ上のカーソルが位置することとなる。
Ｂ部は、コメントのアウトラインを示す記号であり、「−」記号は該当するコメントの下位階層のコメント情報が展開表示されていることを示しており、「＋」記号は該当するコメントには下位階層のコメント情報があるが展開表示されていないことを示している。この例では、コメント名称「サブ１．１」の下位階層に含まれるコメント「ＦＴＰＯＰＥＮ」が表示されている。
【００２６】
Ｃ部は、回路編集ウィンドウに記載されているコメントが一覧表示されている状態を表している。この例では、コメントが名称部と内容部とに分けて管理され、コメントウィンドウに表示されている。
Ｄ部は、コメントウィンドウ内の情報にインデントを付けるボタンであり、図１のインデント処理手段２４に対応するものである。右向きのボタンを押すとカーソルがあるコメントの行頭の位置が右へ移動し、左向きのボタンを押すとカーソルがあるコメントの行頭の位置が左へ移動する。この例では、インデントボタンにより、コメントの名称部のみのインデント位置が変更するものであり、右向きのボタンを押すとコメントの行頭の位置が右へ移動してコメントの階層が下がる。逆に、左向きのボタンを押すとコメントの行頭の位置が左へ移動してコメントの階層が上がる。
【００２７】
図３は、コメントウィンドウのアウトライン機能を説明するための図である。
図２のコメントウィンドウについてアウトライン機能を用いて、コメントウィンドウ情報を展開して、全て表示した例を示している。
【００２８】
コメントウィンドウにおけるコメントのインデント位置はインデントボタンによる変更の他、回路編集ウィンドウにおけるコメントの記載により変更するようにしてもよい。例えば、回路編集ウィンドウのコメントの行頭にある識別子（例えば、※印の数）とコメントウィンドウにおけるインデント位置を対応させるようにする。
また、回路編集ウィンドウにおけるコメントのうち、コメント中にスペースがあるものについては、スペースの前の文字部分を名称部として認識し、スペースの後の文字部分を内容部として認識するようにしてもよい。
【００２９】
このように、コメントウィンドウにおいて、アウトライン機能を用いてコメントを階層状に管理することができ、コメントの表示を一時的に消したり、上位のコメントだけを表示させたりすることで、ユーザがラダープログラムの全体像を容易に把握することができるようになる。また、コメント間の依存関係を容易に知ることができる。
【００３０】
コメントウィンドウのカーソルの位置と回路編集ウィンドウのカーソルの位置を対応させることで、ユーザが目的のプログラムの位置に素早くたどり着くことができ、プログラムの作成、デバック等のアプリケーション開発を効率的に行うことができる。
【図面の簡単な説明】
【００３１】
【図１】本発明の一実施例を示す構成図である。
【図２】コメントウィンドウを説明するための図である。
【図３】コメントウィンドウのアウトライン機能を説明するための図である。
【図４】ラダープログラムの一例を示す図である。
【図５】図４のラダープログラムにおいて回路の折りたたみ機能を実行した際の表示例を示す図である。
【符号の説明】
【００３２】
１１  回路表示手段
２１  コメント抽出手段
２３  コメント表示手段
２４  インデント処理手段
３１  コメント更新手段
４１  カーソル位置判定手段
【図１】
0005045372.tif 000002
【図２】
0005045372.tif 000003
【図３】
0005045372.tif 000004
【図４】
0005045372.tif 000005
【図５】
0005045372.tif 000006