(57)【要約】      （修正有）【課題】  実行中のプログラムと停止中のプログラムを画面上で容易に区別することができるようにしたプログラム開発支援装置を提供する。【解決手段】  読み出した回路のアドレスに基づきアドレス現在値取得部３４がＰＬＣ２０の在値を取得し、回路導通情報生成部３５に渡す。回路導通情報生成部では、回路の現在値（接点のＯＮ／ＯＦＦ等）に基づき導通箇所を検出し、現在値・導通描画部３６は、回路の所定箇所を強調表示する。回路実行判定情報生成部３７により、表示中の回路のタスク番号を認識し、回路実行判定アドレス抽出部３８が抽出したタスクの実行か否かを特定する実行状態フラグが格納されたアドレスに基づき実行状態フラグを取得する。現在値・導通描画部は、実行状態フラグに基づき、非実行中のタスクプログラムに属する回路に対しては、現在値に基づく強調表示はするが、導通表示は非表示にした。【選択図】        図５
2005038260.tif 000002
【特許請求の範囲】
【請求項１】
複数の部分プログラムで構成されるシーケンスプログラムを実行するプログラマブルコントローラと、前記部分プログラム単位で動作状況をラダー図で表示可能とするプログラム開発支援装置からなるプログラマブルコントローラシステムにおいて、
前記プログラマブルコントローラは、前記部分プログラムが実行状態か非実行状態かをあらわすフラグを部分プログラム単位に記憶する実行状態記憶手段を備え、
前記プログラム開発支援装置は、プログラマブルコントローラから読み出した前記フラグに基づき、表示する部分プログラムが実行中か否かを判断し、
実行中の前記部分プログラムに属する回路に対する動作状況の表示方式と、非実行中の前記部分プログラムに属する回路に対する動作状況の表示方式を異ならせるようにしたことを特徴とするプログラマブルコントローラシステム。
【請求項２】
複数の部分プログラムから構成されるシーケンスプログラムを備えたプログラマブルコントローラ用のプログラム開発支援装置であって、
アップロードにより取得したプログラマブルコントローラに格納された前記シーケンスプログラムを記憶する記憶手段と、
前記記憶手段に格納されたシーケンスプログラムを構成する回路を読み出す回路読み出し手段と、
その回路読み出し手段で読み出された回路をラダー図で表示すべく表示手段に出力する回路描画手段と、
前記回路読み出し手段により読み出された回路の現在値を前記プログラマブルコントローラから取得する手段と、
収集した回路の現在値に基づく回路の状態表示情報を生成し、前記回路描画手段により表示される回路に合わせて動作状況を表示する描画手段とを備え、
前記描画手段による描画は、実行中の前記タスクプログラムに属する回路に対する表示方式と、非実行中の前記タスクプログラムに属する回路に対する表示方式を異ならせるようにした特徴とするプログラマブルコントローラ用のプログラム開発支援装置。
【請求項３】
前記回路の状態表示情報は、回路の現在値を示すもので、少なくとも回路を構成する接点がＯＮの部分を強調表示するものであることを特徴とする請求項２に記載のプログラマブルコントローラ用のプログラム開発支援装置。
【請求項４】
前記回路の状態表示情報は、導通している接続線の部分を強調表示する導通表示と、現在値を示す情報であり、
前記表示方式を異ならせるのは、少なくとも前記導通表示に対して行うようにしたことを特徴とする請求項２に記載のプログラマブルコントローラ用のプログラム開発支援装置。
【請求項５】
非実行中の前記タスクプログラムに属する回路に対する前記状態表示情報を非表示にすることにより前記表示方式を異ならせるようにしたことを特徴とする請求項２〜４のいずれか１項に記載のプログラマブルコントローラ用のプログラム開発支援装置。
【請求項６】
複数の部分プログラムから構成されるシーケンスプログラムを備えたプログラマブルコントローラ用のプログラム開発支援装置であって、
アップロードにより取得したプログラマブルコントローラに格納された前記シーケンスプログラムを記憶する記憶手段と、
前記記憶手段に格納されたシーケンスプログラムを構成する回路を読み出す回路読み出し手段と、
その回路読み出し手段で読み出された回路をラダー図で表示すべく表示手段に出力する回路描画手段と、
前記回路読み出し手段により読み出された回路の現在値を前記プログラマブルコントローラから取得する手段と、
収集した回路の現在値に基づく回路の状態表示情報を生成し、前記回路描画手段により表示される回路に合わせて動作状況を表示する描画手段とを備え、
実行中の前記タスクプログラムに属する回路に対する表示方式と、非実行中の前記タスクプログラムに属する回路に対する表示方式を異ならせるようにしたことを特徴とするプログラマブルコントローラ用のプログラム開発支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、プログラマブルコントローラ用のプログラム開発支援装置およびプログラマブルコントローラシステムに関するものである。
【背景技術】
【０００２】
生産工場（製造現場）に設置されるＦＡ（ファクトリーオートメーション）システムの制御をつかさどるＰＬＣ（プログラマブルロジックコントローラ）は、入力ユニットで入力した信号をＣＰＵユニットのＩ／Ｏメモリに取り込み（ＩＮリフレッシュ）、予め登録されたラダー言語で組まれたユーザプログラム（シーケンスプログラム）に基づき論理演算をし（演算実行）、その演算実行結果をＩ／Ｏメモリに書き込んで出力ユニットに送り出し（ＯＵＴリフレッシュ）、その後、いわゆる周辺サービス処理を行うことをサイクリックに繰り返し処理するようになる。
【０００３】
そして、係るユーザプログラムは、ＰＬＣに接続されたプログラム開発支援装置を介してダウンロードされ、ＰＬＣ（ＣＰＵユニット）のユーザメモリに格納される。また、ＰＬＣに格納されているシーケンスプログラムを修正等する場合には、プログラム開発支援装置をＰＬＣに接続するとともに、ＰＬＣに格納されているシーケンスプログラムをアップロードし、必要な修正をした後、修正後の新シーケンスプログラムをＰＬＣに再度ダウンロードすることが行われる。
【０００４】
さらに、この修正に際し、ＰＬＣ上で実行されるユーザプログラムをデバッグする場合、ＰＬＣ上のユーザプログラムの動作確認をすることがある。そして、ユーザプログラムをラダー図形式で表示させた状態でラダー図の回路としての動作状況を把握するものとしては、特許文献１，特許文献２の図面で示されるような接点や出力コイルの図形を強調表示させることで間接的に回路の動作を把握できるものがある。
【０００５】
また、本出願人が商品化しているように、接点や出力コイルに加えて接続線も強調表示することでラダー回路の動作状況を把握できるようにしたものがある。具体的には、表示中のラダー回路に使用されている接点の現在値をＰＬＣより読み出し、その現在値とラダー回路に従った論理演算の結果でラダー図上の接点や出力コイル、および接続線の強調表示（導通表示）を行なっている。
【０００６】
すなわち、図１に示すように、接点ＩＮ−１，ＩＮ−２がＯＮの場合には、該当する接点部分に所定の色を表示し、ＯＦＦの場合には該当する接点部分を白抜きの状態とする（図示の例では、ＩＮ−１がＯＮでＩＮ−２がＯＦＦ）。そして、接点がＯＮすると、次の接点の入力まで導通状態になるので、導通部分の接続線を強調表示する。図１の場合、接点ＩＮ−２の入力まで導通状態となるので、当該部分まで所定幅で色を付した強調表示をする。この接続線の部分に対する強調表示を導通表示という。
【０００７】
係る表示を見ると、出力ＯＵＴ−１がＯＦＦになっている原因は、接点ＩＮ−２がＯＦＦのためであるこが原因であると理解できる。このように、回路の導通表示（接続線の部分に導通／非道通）を行うことにより、ＰＬＣで回路の実行結果（入出力の成立条件）が理解しやすくなるというメリットがあった。
【特許文献１】特開平０５−２４１６１９
【特許文献２】特開平１０−２８３００５
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、機能単位に分割して部分プログラム（タスクプログラム）の集合として作成されたユーザプログラム（シーケンスプログラム）をＰＬＣで実行する場合、特定の条件が成立した場合に該当する部分プログラムを実行する方式のＰＬＣがある。この実行方式の場合、特定の条件が成立しない場合は、実行されない部分プログラムが存在することになる。
【０００９】
このような複数のタスクプログラムで構成されるシーケンスプログラムの動作確認を行なう場合、プログラム開発支援装置の操作者は、タスクプログラムが実行中か否かにかかわらず複数のタスクプログラムを表示するようにしている。そして、プログラム開発支援装置は、接点のＯＮ／ＯＦＦ等の回路の状態も、タスクプログラムが実行中か否かに関係なく表示していた。さらに、プログラム開発支援装置は、回路の状態に基づいて導通状態を認識し、導通表示もしていた。
【００１０】
一方、シーケンスプログラムをデバッグ・メンテナンスする場合、タスクプログラムが実行中であるのか、停止中であるのかを容易に理解したいという要求がある。しかし、プログラム開発支援装置は、画面表示する際に、タスクプログラムが実行中か否かにかかわらず、同じように表示しているので、そのため、シーケンスプログラムをデバッグ・メンテナンスする場合、プログラム開発支援装置の操作者は、実行されている回路と実行されていない回路の区別ができず、シーケンスプログラムの問題の箇所を発見する効率が下がるという問題があった。
【００１１】
特に、導通表示をすると、あたかも実際に動作しているように見えるので、画面に表示するすべてのシーケンスプログラムに対して導通表示すると、実行していないシーケンスプログラムも実行されているかのように見えるため、上記した問題はより顕著に現れる。
【００１２】
また、動作していないタスクプログラム自体を表示しないようにすることも考えられるが、タスクプログラムの動作／非実行が実行状態に応じて適宜切り替わるようにしたものがあり、現在非実行中でもその後あるタイミングで動作中になる場合がある。従って、プログラムはタスクの動作中か否かにかかわらず表示する必要がある。
【００１３】
この発明は、実行中のプログラムと停止中のプログラムを画面上で容易に区別・理解することができ、シーケンスプログラムの開発，メンテナンスの効率を上げることができるプログラマブルコントローラ用のプログラム開発支援装置およびプログラマブルコントローラシステムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明に係るプログラマブルコントローラシステムは、複数の部分プログラムで構成されるシーケンスプログラムを実行するプログラマブルコントローラと、前記部分プログラム単位で動作状況をラダー図で表示可能とするプログラム開発支援装置からなるプログラマブルコントローラシステムである。そして、前記プログラマブルコントローラは、前記部分プログラムが実行状態か非実行状態かをあらわすフラグを部分プログラム単位に記憶する実行状態記憶手段を備えた。さらに、前記プログラム開発支援装置は、プログラマブルコントローラから読み出した前記フラグに基づき、表示する部分プログラムが実行中か否かを判断し、実行中の前記部分プログラムに属する回路に対する動作状況の表示方式と、非実行中の前記部分プログラムに属する回路に対する動作状況の表示方式を異ならせるように構成した。
【００１５】
本発明に係るプログラマブルコントローラ用のプログラム開発支援装置は、複数のタスクプログラムから構成されるシーケンスプログラムを備えたプログラマブルコントローラ用のプログラム開発支援装置であって、アップロードにより取得したプログラマブルコントローラに格納された前記シーケンスプログラムを記憶する記憶手段と、前記記憶手段に格納されたシーケンスプログラムを構成する回路を読み出す回路読み出し手段と、その回路読み出し手段で読み出された回路をラダー図で表示すべく表示手段に出力する回路描画手段と、前記回路読み出し手段により読み出された回路の現在値を前記プログラマブルコントローラから取得する手段と、収集した回路の現在値に基づく回路の状態表示情報を生成し、前記回路描画手段により表示される回路に合わせて動作状況を表示する描画手段とを備え、前記描画手段による描画は、実行中の前記タスクプログラムに属する回路に対する表示方式と、非実行中の前記タスクプログラムに属する回路に対する表示方式を異ならせるようにした。
【００１６】
前記回路の状態表示情報は、各種のものがあるが、例えば、回路の現在値を示すもので、少なくとも回路を構成する接点がＯＮの部分を強調表示するものとすることができる。また、これとは別に、前記回路の状態表示情報は、導通している接続線の部分を強調表示する導通表示と、現在値を示す情報であり、前記表示方式を異ならせるのは、少なくとも前記導通表示に対して行うようにすることもできる。もちろん、現在値を示す情報に対しても表示方式を異ならせても良い。
【００１７】
また、表示方式を異ならせる方法として、例えば非実行中の前記タスクプログラムに属する回路に対する前記状態表示情報を非表示にすることがある。これ以外にも、表示色や表示濃度を変えるなど各種の方式をとることができる。
【００１８】
また、本発明の別の解決手段としては、複数の部分プログラムから構成されるシーケンスプログラムを備えたプログラマブルコントローラ用のプログラム開発支援装置であって、アップロードにより取得したプログラマブルコントローラに格納された前記シーケンスプログラムを記憶する記憶手段と、前記記憶手段に格納されたシーケンスプログラムを構成する回路を読み出す回路読み出し手段と、その回路読み出し手段で読み出された回路をラダー図で表示すべく表示手段に出力する回路描画手段と、前記回路読み出し手段により読み出された回路の現在値を前記プログラマブルコントローラから取得する手段と、収集した回路の現在値に基づく回路の状態表示情報を生成し、前記回路描画手段により表示される回路に合わせて動作状況を表示する描画手段とを備え、実行中の前記タスクプログラムに属する回路に対する表示方式と、非実行中の前記タスクプログラムに属する回路に対する表示方式を異ならせるようにすることもできる。
【００１９】
すなわち、上記した各発明では、回路の状態表示情報についての描画の表示方式を変えるようにしたが、本発明はこれに限ることはなく、回路の背景色を変えることで、タスクプログラムが実行中かどうかを判断できるようにする等、各種の方式をとることができる。
【００２０】
プログラマブルロジックコントローラで実行するシーケンスプログラムは、プログラマブルコントローラのマルチプログラム化に伴い、個々のタスクプログラム単位で実行／停止を制御できるようになった。そして、そのように複数のタスクプログラムを備えたシーケンスプログラムを構成する回路をプログラム開発支援装置で表示画面に表示し、さらに、プログラマブルコントローラ上での現在の回路の状態（接点のＯＮ／ＯＦＦ等）を合わせて表示することで、プログラムの実行状態をチェックすることができる。
【００２１】
係る場合に、実行中のタスクプログラムに属する回路と、非実行中のタスクプログラムに属する回路の表示方式を異ならせる（実行中のプログラムと停止中のプログラムを区別して表示する）ことで、ユーザは一目で実行中のプログラムを認識することができ、シーケンスプログラムの開発、およびメンテナンスの効率を上げることができる。特に、導通表示は回路が実際に動作しているように見えるので、非実行中のタスクプログラムでは係る導通表示を行わないようにすると、より大きな効果を得られる。
【発明の効果】
【００２２】
本発明では、ユーザはシーケンスプログラムのプログラマブルコントローラにおける実行状態を容易に識別できるで、デバッグ・メンテナンスの効率が向上するという効果が得られる。
【発明を実施するための最良の形態】
【００２３】
図２は、本発明の好適な一実施の形態を実現するシステム全体を示している。図２に示すように、専用装置或いはパソコンからなるプログラム開発支援装置１０とＰＬＣ（ＣＰＵユニット）２０が、所定の通信回線１を介して接続されている。この通信回線１は、例えば、ＲＳ２３２Ｃなどのシリアル回線を用いて直接ケーブル接続することにより実現される。もちろん、このように直接接続するものに限ることはなく、他の通信回線を用いネットワーク経由でＰＬＣ２０とプログラム開発支援装置１０とを接続する構成を採っても良い。そして、プログラム開発支援装置１０は、通信回線１を介してＰＬＣ２０に格納されたシーケンスプログラムをアップロードして取得し、更に、ＰＬＣ２０のＩＯメモリに記憶された現在値情報等を取得し、表示装置にプログラムを構成する回路と、現在値さらには導通表示を行うようにしている。なお、プログラム開発支援装置１０で作成（修正も含む）したシーケンスプログラムは、通信回線１を介してＰＬＣ２０にダウンロードされる。
【００２４】
プログラム開発支援装置１０は、パソコンから構成され、図３に示すように、ハードウエア構成としてキーボード，ポインティングデバイス等の入力装置１１と、ディスプレイ等の表示装置１２と、ＣＰＵ１３と、記憶部１４と、通信インタフェース１５を備えている。通信インタフェース１５は、ＰＬＣ２０とデータの送受を行うものである。また、ＰＬＣ２０からアップロードしたシーケンスプログラムは、記憶部１４に格納される。そして、ＣＰＵ１３は、記憶部１４に格納されたシーケンスプログラムや、ＰＬＣ２０からオンライン（リアルタイム）で取得した現在値情報などから、ＰＬＣのシーケンスプログラム実行状態を画面に表示するための画面情報を作成し、表示装置１２に出力するようになっている。なお、係る画面表示機能の具体的な説明は後述する。
【００２５】
ＰＬＣ２０は、本発明との関係では、図４に示すように、ユーザメモリ２１に複数のタスクプログラムからなるシーケンスプログラムが格納され、また、各タスクプログラムが実行状態にあるか否かを識別する実行状態フラグがＩＯメモリ２２に格納されている。もちろん、このＩＯメモリ２２には、接点のＯＮ／ＯＦＦその他のＩＯデータも格納されている。
【００２６】
すなわち、シーケンスプログラムを構成するタスクプログラムは、ＰＬＣ２０で実行される場合、タスクプログラム毎に実行／非実行の状態を持ち、その実行／非実行の状態をシーケンスプログラム内に記述された専用命令（例えば、タスク起動命令やタスク終了命令）によりシーケンスプログラム実行中に動的に切り替えることができる。タスクプログラムが非実行の状態においては、ＰＬＣ２０はタスクプログラムに格納されたシーケンスプログラムを実行せず、そのタスクプログラムはＰＬＣ２０の制御動作にはまったく影響を及ぼさなくなる。つまり、仮に（１）〜（４）のタスクプログラムが存在した場合において、（２）のタスクプログラムを非実行にすると、（１），（３），（４）の３つのタスクプログラムから構成されるシーケンスプログラムとなる。このような、実行／非実行の状態は同ＰＬＣ２０のメモリアドレスに確保された「タスク実行状態フラグ」に反映されるようになっている。
【００２７】
ここで本発明の特徴であるＰＬＣのシーケンスプログラム実行状態を画面に表示するための処理機能としては、ラダー図と、各命令語のオペランドの現在値、命令語の相互の論理的な入出力関係から生成した回路の導通情報を表示するもので、具体的には、ＣＰＵ１３に、図５に示す各処理部を実装することにより実現できる。
【００２８】
すなわち、ユーザが入力装置１１を操作し、表示画面１２上に表示されたメニュー画面からモニタ開始等の命令を与えると、表示画面１２側から回路情報の表示要求が来るので、その表示要求を受けた回路読み出し部３１が、記憶部１４にアクセスし、予めＰＬＣ２０からアップロードして格納されたシーケンスプログラムの回路を読み出す。この読み出しは、１回路単位で行い、表示装置１２のタスクプログラムの表示画面いっぱいになるまで回路番号を１インクリメントしながら対応する回路の読み出しを繰り返し行う。なお、初期画面では、先頭の回路（回路番号０）から順に呼び出すことになり、一旦表示されると、以後は、スクロール命令を受ける都度、そのスクロール処理により決定される表示画面の先頭の回路から順番に呼び出しを行う。
【００２９】
回路読み出し部３１により読み出された１回路分の回路情報は、回路描画部３２，命令語オペランドアドレス抽出部３３並びに回路導通情報生成部３５に与えられる。回路描画部３２は、取得した回路を構成する接点，接続線などを所定の位置に配置した状態で表示装置１２に表示するものである。
【００３０】
命令語オペランドアドレス抽出部３３は、取得した回路の命令語で使用しているオペランドのアドレスを抽出し、抽出したアドレスをアドレス現在値取得部３４に渡すものである。
【００３１】
アドレス現在値取得部３４は、与えられたアドレスを基にＰＬＣ２０のＩＯメモリをアクセスし、該当するアドレスの現在値（接点のＯＮ／ＯＦＦ，数値等）を取得し、次段の回路導通情報生成部３５に渡す。なお、アドレス現在値取得部３４は、指定されたアドレス（メモリアドレス）のデータを取得するもので、後述するように、タスクプログラムの実行状態を規定する実行状態フラグも取得するようになる。
【００３２】
回路導通情報生成部３５は、読み出したアドレスの現在値と、回路を構成する命令語の相互の論理的な入出力関係から、回路の導通状態を描画するための回路導通情報を生成するもので、生成した回路導通情報は、現在値・導通描画部３６に与えられる。そして現在値・導通描画部３６では、回路導通情報生成部３５にて指定された箇所を強調表示する。
【００３３】
そして、回路導通情報生成部３５における回路導通情報の生成アルゴリズムは、以下のようになっている。図６に示すような直列した接点に出力コイルを一つ持つラダープログラムを例にあけながら説明する。まず、図６のラダープログラムを実行すると、接点ＩＮ−１，接点ＩＮ−２がともにＯＮの場合に、出力コイルＯＵＴ−１がＯＮする。ラダープログラムの各要素（上記は接点ＩＮ−１、接点ＩＮ−２、出力コイルＯＵＴ−１の３つの要素からなる）は、３つの状態を示すことができる。すなわち、接点ＩＮ−１を例にすると、図７（ａ）〜（ｃ）に示すようになる。
【００３４】
まず、要素の入力がＯＮ（要素の状態（１））となっている場合には、図７（ａ）に示すように、要素の左側の接続線を強調表示するように決定する。また、要素の状態（現在値）がＯＮ（要素の状態（２））となっている場合には、図７（ｂ）に示すように、接点（縦線の間）を強調表示する。これは、要素（接点ＩＮ−１）に割り付けられたＰＬＣ上のメモリアドレスの状態（現在値）をアドレス現在値取得部３４で読出し、その現在値がＯＮの場合、アドレスと対応する接点の対応付けを回路導通情報生成部３５で行う。つまり、ＰＬＣのメモリの現在値に基づく強調表示する要素を特定する。さらに、上記（１），（２）がともにＯＮの場合、要素の出力がＯＮ（要素の状態（３））となるので、回路導通情報生成部３５は、係る状態を検知すると、要素の右側の接続線を強調表示（導通表示）するように決定する。
【００３５】
換言すると、回路導通情報生成部３５は、要素の現在値がＯＮの場合にその要素部分（縦線の間）を強調表示するように決定し、さらにその要素がＯＮでかつ入力がＯＮの場合に、要素の出力つまり右側の接続線を強調表示（導通表示）するように決定する。
【００３６】
現在値・導通描画部３６は、回路導通情報生成部３５から受け取った強調表示する部分に従い、該当する部分を強調表示する。そして、要素の出力の接続線については、次に続く要素までの間が単なる接続線の場合、現在値・導通描画部３６によりその接続線をすべて強調表示とする。さらに、図８に示すように、分岐する接続線も同様に現在値・導通描画部３６により強調表示する。
【００３７】
上記の要素の状態の組み合わせにより、図６に示すラダープログラムの導通状態を表示することができる。すなわち、２つの接点ＩＮ−１，ＩＮ−２が共にＯＦＦの場合（図９（ａ））、要素がＯＦＦであるので、要素部分は強調表示されず、先頭の接点ＩＮ−１がＯＦＦであるので、出力もＯＦＦになり右側の接続線も強調表示されない。よって、図９（ｂ）に示すように、左母線から接点ＩＮ−１への接続線のみを強調する表示を行う。
【００３８】
このような表示形態を見たユーザは、出力コイルＯＵＴ−１はＯＦＦであり、その理由は、接点ＩＮ−１で導通が遮断されているためであるということを一目で理解することができる。
【００３９】
同様に、接点ＩＮ−１がＯＮで接点ＩＮ−２がＯＦＦの場合（図１０（ａ）参照）、図９（ｂ）の状態に加えて、接点ＩＮ−１の状態を示す縦線の間を強調表示し、これにより、接点ＩＮ−１においては、入力，要素がともにＯＮの状態となるので図７（ｃ）の状態になり、回路全体の表示としては、図１０（ｂ）に示すように、さらに接点ＩＮ−２へつながる接続線も強調表示するように動作される。このような表示から、出力コイルＯＵＴ−１はＯＦＦであり、その理由は、接点ＩＮ−２で導通が遮断されているためであることをユーザは表示から一目で理解することができる。
【００４０】
上記とは逆に、接点ＩＮ−２がＯＮで接点ＩＮ−１がＯＦＦの場合（図１１（ａ）参照）、図9（ｂ）の状態に加えて、接点ＩＮ−２の状態を示す縦線の間を強調表示する。ただし、接点ＩＮ−２の入力はＯＦＦであるので、図７（ｂ）の状態となり回路全体の表示としては、図１１（ｂ）に示すようになる。よって、出力コイルＯＵＴ−１はＯＦＦであり、その理由は、接点ＩＮ−１で導通が遮断されているためということをユーザは表示から一目で理解することができる。
【００４１】
さらに、接点ＩＮ−１，接点ＩＮ−２がともにＯＮの場合（図１２（ａ）参照）、回路導通情報生成部３５は、接点ＩＮ−１，接点ＩＮ−２の状態を示す縦線の間を強調表示することを決定するとともに、各接点の入力がＯＮになるので出力もＯＮとなることを認識し、各接点の出力側の接続線を強調表示すべく決定する。これにより、図１２（ｂ）に示すように、すべての接続線も強調表示する。このような表示から、２つの接点がともにＯＮであり、その結果、出力コイルＯＵＴ−１もＯＮとなっていることが、ユーザは表示から一目で理解することができる。
【００４２】
上記した各例において、強調表示箇所は、回路導通情報生成部３５が決定し、その決定した情報に基づいて現在値・導通描画部３６が表示する。なお、現在値・導通描画部３６では、上記した具体的な回路の表示例のうち、強調表示する部分のみ表示し、回路部分は回路描画部３２が行う。つまり、表示装置１２上で、回路部分と強調表示する部分を重ね合わせて表示する。
【００４３】
また、具体的な図示は省略するが、本実施の形態では、タスク単位で表示ウインドウを形成し、表示装置１２の表示画面上ではマルチウインドウ形式で表示するようにしている。もちろん、このようにマルチウインドウにて各タスクプログラムごとに表示するのではなく、１つの表示ウインドウ内に連続して表示するようにしても良い。また、ひとつのタスクプログラムが複数のサブプログラム（セクションプログラムと呼ぶ）で構成される場合は、セクションプログラム単位で表示ウインドウに表示するようにしても良い。
【００４４】
本発明では、実行中のタスクプログラムと停止中のタスクプログラムとの表示形態を変えることにより、ユーザが一目で実行中か否かを識別でき、実行中のプログラムに対する監視，デバッグの利便性を向上するようにした。
【００４５】
そして、本実施の形態では、回路実行判定情報生成部３７と、回路実行判定アドレス抽出部３８を設けた。すなわち、回路実行判定情報生成部３７は、シーケンスプログラム中の処理対象の回路の回路番号を取得し、その回路が属するタスク番号を調べ、図１３に示すような対応表を作成する。回路がどのタスクに属しているかの情報は、シーケンスプログラムをＰＬＣ２０からアップロードして記憶部１４に格納する際や、シーケンスプログラムを作成（セクションプログラム単位またはタスクプログラム単位）して記憶部１４に格納する際に作成されシーケンスプログラムとともに記憶部１４に格納される。なお、この回路実行判定情報生成部３７では、図１３の表中、「回路番号」と「タスク番号」の欄のみ具体的なデータを格納し、タスクプログラムの実行状態の欄は、空欄のままとする。そして、回路実行判定情報生成部３７は、生成した対応表を現在値・導通描画部３６に渡すとともに、取得したタスク番号を回路実行判定アドレス抽出部３８に渡す。
【００４６】
回路実行判定アドレス抽出部３８は、取得したタスク番号の実行状態フラグが格納されたＩＯメモリのメモリアドレス（予め定められた値としてプログラム開発支援装置内に記憶保持されているデータ）を取得し、取得したアドレスをアドレス現在値取得部３４に渡す。すると、アドレス現在値情報取得部３４は、取得したアドレスに基づきＰＬＣ２０のＩＯメモリにアクセスし、現在の実行状態フラグ（ＯＮ／ＯＦＦ）を取得するとともに、取得した実行状態フラグを、現在値・導通描画部３６に渡す。これにより、現在値・導通描画部３６では、取得した実行状態フラグを対応表の対応する領域に格納する。
【００４７】
現在値・導通描画部３６は、アドレス現在値取得部３４，回路実行判定情報生成部３７で作成された対応表に基づき、回路導通情報生成部３５で求められた導通状態の表示を実際に行うか否かを判断し、その判断結果に基づき強調表示をする。具体的には、表示する回路の回路番号から対応表のタスク実行状態フラグを抽出し、フラグがＯＮであれば導通表示の強調表示をし、ＯＦＦであれば導通表示について強調表示をしないようにする。
【００４８】
これにより、例えば実行状態フラグがＯＮになっている場合には、図１２に示すようになっている場合でも、実行状態フラグがＯＦＦの場合には、図１４に示すように要素部分の現在値に基づく強調表示されるが、接続線上に形成する導通表示についての強調表示はしないようにする。これにより、接続線の強調表示（導通表示）の有無により、一目で実行中のタスクを認識することができる。
【００４９】
なお、上記した実施の形態では、非実行のタスクは接続線の強調表示をしない（導通状態表示をしない）ようにしたが、本発明はこれに限ることはなく、接続線に重ねて表示する強調表示（導通状態表示）の表示色を実行中か否かで変えるようにしてもよい。また、接続線に重ねた導通状態表示のみならず、要素（接点）についての強調表示（現在値情報）もタスクの実行／非実行により替えても良い。さらには、本実施の形態では、導通している接続線を強調表示（導通表示）するようにしたが、係る導通表示をすることなく要素（接点）の現在値に基づく強調表示のみをするものにおいて、その要素についての状態表示の仕方をタスクの実行／非実行に応じて変更するようにしてももちろん良い。また、上述の実施の形態の図１３では、シーケンスプログラム全体を通して回路番号とタスク番号の対応表を示しているが、本発明はこれに限ることはなく、回路番号とタスク番号の対応表をタスクプログラム単位あるいはセクションプログラム単位で作成しても良い。
【図面の簡単な説明】
【００５０】
【図１】回路の表示方式の一例を示す図である。
【図２】本発明のシステムの一実施の形態を示す図である。
【図３】プログラム開発支援装置の内部構成を示す図である。
【図４】ＰＬＣの内部構造を示す図である。
【図５】プログラム開発支援装置の内部構成を示す図である。
【図６】回路導通情報生成部，現在値・導通描画部の機能を説明する図である。
【図７】回路導通情報生成部，現在値・導通描画部の機能を説明する図である。
【図８】回路導通情報生成部，現在値・導通描画部の機能を説明する図である。
【図９】回路導通情報生成部，現在値・導通描画部の機能を説明する図である。
【図１０】回路導通情報生成部，現在値・導通描画部の機能を説明する図である。
【図１１】回路導通情報生成部，現在値・導通描画部の機能を説明する図である。
【図１２】回路導通情報生成部，現在値・導通描画部の機能を説明する図である。
【図１３】回路とタスクの関係を示す対応表の一例を示す図である。
【図１４】非実行のタスクプログラムの表示例を示す図である。
【符号の説明】
【００５１】
１  通信回線
１０  プログラム開発支援装置
１１  入力装置
１２  表示装置
１３  ＣＰＵ
１４  記憶部
１５  通信インタフェース
２０  ＰＬＣ
２１  ユーザメモリ
２２  ＩＯメモリ
３１  回路読み出し部
３２  回路描画部
３３  命令語オペランドアドレス抽出部
３４  アドレス現在値取得部
３５  回路導通情報生成部
３６  現在値・導通描画部
３７  回路実行判定情報生成部
３８  回路実行判定アドレス抽出部
【図１】
2005038260.tif 000003
【図２】
2005038260.tif 000004
【図３】
2005038260.tif 000005
【図４】
2005038260.tif 000006
【図５】
2005038260.tif 000007
【図６】
2005038260.tif 000008
【図７】
2005038260.tif 000009
【図８】
2005038260.tif 000010
【図９】
2005038260.tif 000011
【図１０】
2005038260.tif 000012
【図１１】
2005038260.tif 000013
【図１２】
2005038260.tif 000014
【図１３】
2005038260.tif 000015
【図１４】
2005038260.tif 000016