(57)【要約】【課題】本発明は、ＰＬＣの外部の機器や制御対象を含めた制御システム全体の動作まで考慮したフィードバック関係を、プログラム図として表示することができるプログラム図表示装置を提供する。【解決手段】本発明に係るプログラム図表示装置は、シート定義情報が保管されるシート定義情報保管部１４と、変数定義情報が保管されている変数定義情報保管部１５と、プラントモデル定義情報が保管されるプラントモデル定義情報保管部１７と、フィードバック提示情報を生成するフィードバック提示情報生成部１６とを、有している。ここで、フィードバック提示情報生成部１６は、プラントモデル定義情報をも用いて、指定された変数に対するフィードバック関係を提示するフィードバック提示情報を生成する。【選択図】図２
2013148947.tif 000002
【特許請求の範囲】
【請求項１】
シートは少なくとも、変数と、命令と、前記変数と前記命令とを接続する接続線とから構成されており、複数の前記シートによって規定される制御プログラムを表示し、前記シートにおける、前記命令および前記変数の表示位置情報と、前記命令と前記変数との接続に関する接続関係情報とから構成される、シート定義情報が保管されるシート定義情報保管部と、前記変数の持つ情報が定義される、変数定義情報が保管されている変数定義情報保管部とを、備えたプログラム図表示装置であって、
前記制御プログラムが搭載されるコントローラと、当該コントローラ外部の外部構成要素とを含めた制御システム全体をモデル化した、プラントモデル定義情報が保管されるプラントモデル定義情報保管部と、
前記シート定義情報、前記変数定義情報および前記プラントモデル定義情報を用いて、指定された前記変数に対するフィードバック関係を提示するフィードバック提示情報を生成するフィードバック提示情報生成部と、
前記シート定義情報と前記フィードバック提示情報とを用いて、表示画面情報を生成する画面表示管理部と、
前記表示画面情報に基づいて、前記フィードバック関係を提示した前記制御プログラムを表示する画面出力部とを、さらに備える、
ことを特徴とするプログラム図表示装置。
【請求項２】
前記フィードバック提示情報生成部は、
（Ａ）選択された所定のシートにおいて指定された変数である複数の起点変数に対して、前記シート定義情報を用いて、前記命令の入力変数である入力起点変数であるか、前記命令の出力変数である出力起点変数であるかを判断し、
（Ｂ）前記入力起点変数に対しては、前記シート定義情報および前記変数定義情報を用いて、当該入力起点変数を起点として、前記コントローラの入力端子から入力を受けることを示す変数であるコントローラ入力変数を検出し、
（Ｃ）前記出力起点変数に対しては、前記シート定義情報および前記変数定義情報を用いて、当該出力起点変数を起点として、前記コントローラの出力端子への出力を示す変数であるコントローラ出力変数を検出し、
（Ｄ）前記コントローラ入力変数と前記コントローラ出力変数との少なくとも１以上の組合せの内、前記プラントモデル定義情報および前記変数定義情報を用いて、前記外部構成要素を介した前記コントローラのループを形成する組合せを選択し、
（Ｅ）前記（Ｄ）で選択された前記組合せを構成する前記コントローラ入力変数を検出する際に起点となった前記入力起点変数と、前記（Ｄ）で選択された前記組合せを構成する前記コントローラ出力変数を検出する際に起点となった前記入出起点変数との間の前記フィードバック関係、を示す情報を含む前記フィードバック提示情報を、前記起点変数に対して生成する、
ことを特徴とする請求項１に記載のプログラム図表示装置。
【請求項３】
前記フィードバック提示情報生成部は、
（Ｈ）前記シート定義情報を用いて、前記入力起点変数から前記コントローラ入力変数に至るまでの経由する前記シートを示す、第一のシート経由情報を検出し、
（Ｉ）前記シート定義情報を用いて、前記出力起点変数から前記コントローラ出力変数に至るまでの経由する前記シートを示す、第二のシート経由情報を検出し、
前記（Ｅ）において、前記フィードバック提示情報に、前記第一のシート経由情報および前記第二のシート経由情報を、加える、
ことを特徴とする請求項２に記載のプログラム図表示装置。
【請求項４】
前記フィードバック提示情報生成部は、
（Ｊ）前記シート定義情報を用いて、前記入力起点変数から前記コントローラ入力変数に至るまでの経由する前記命令を示す、第一の経由命令情報を検出し、
（Ｋ）前記シート定義情報を用いて、前記出力起点変数から前記コントローラ出力変数に至るまでの経由する前記命令を示す、第二の経由命令情報を検出し、
前記（Ｅ）において、前記フィードバック提示情報に、前記第一の経由命令情報および前記第二の経由命令情報を、加える、
ことを特徴とする請求項２に記載のプログラム図表示装置。
【請求項５】
前記フィードバック提示情報生成部は、
（Ｌ）前記プラントモデル定義情報を用いて、前記起点出力変数から前記起点入力変数に至るまでの経由する前記外部構成要素を示す、経由外部構成要素情報を検出し、
前記（Ｅ）において、前記フィードバック提示情報に、前記経由外部構成要素情報を加える、
ことを特徴とする請求項２乃至請求項４の何れかに記載のプログラム図表示装置。
【請求項６】
前記出力起点変数と前記入力起点変数との間において、少なくとも２以上の前記フィードバック関係が検出されたとき、前記フィードバック提示情報生成部は、
（Ｍ）各前記フィードバック関係に対して、経由するシートの数であるシート経由数を検出し、
（Ｎ）前記シート経由数に基づいて、前記各フィードバック関係について優先度を付与する、
ことを特徴とする請求項２乃至請求項５の何れかに記載のプログラム図表示装置。
【請求項７】
前記出力起点変数と前記入力起点変数との間において、少なくとも２以上の前記フィードバック関係が検出されたとき、前記フィードバック提示情報生成部は、
（Ｏ）各前記フィードバック関係に対して、経由する前記外部構成要素の数である外部構成要素経由数を検出し、
（Ｐ）前記外部構成要素経由数に基づいて、前記各フィードバック関係について優先度を付与する、
ことを特徴とする請求項２乃至請求項５の何れかに記載のプログラム図表示装置。
【請求項８】
前記出力起点変数と前記入力起点変数との間において、少なくとも２以上の前記フィードバック関係が検出されたとき、前記フィードバック提示情報生成部は、
（Ｑ）各前記フィードバック関係に対して、経由するシートの数であるシート経由数および経由する前記外部構成要素の数である外部構成要素経由数を検出し、
（Ｒ）前記シート経由数および前記外部構成要素に基づいて、前記各フィードバック関係について優先度を付与する、
ことを特徴とする請求項２乃至請求項５の何れかに記載のプログラム図表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プラントや工場を制御する際に利用されるコントローラ上の制御プログラムを表示する、プログラム図表示装置に関するものである。
【背景技術】
【０００２】
ＰＬＣ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｃｏｎｔｒｏｌｌｅｒ）向け制御プログラム図表示装置において、制御プログラム内のフィードバック関係を明示することができる先行技術として、たとえば特許文献１が存在している。
【０００３】
当該特許文献１に係るファンクションブロック図作成装置では、制御プログラム中の同一シート内のフィードバック関係や、同一タスク内の複数シート間のフィードバック関係を、明示することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１９８５３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、一般的には、ＰＬＣを用いた制御システムでは、ＰＬＣからの制御出力が外界に何らかの影響を与え、当該影響の結果が前記ＰＬＣへの入力値としてフィードバックされる構成を取ることが多い。これは、外界からＰＬＣへ入力される値に応じて、当該ＰＬＣから外界への制御出力の値を変化させることができるためである。
【０００６】
しかしながら、特許文献１を含む従来の技術では、ＰＬＣの外部の機器や制御対象を考慮した上記フィードバック関係を提示することはできない。
【０００７】
そこで、本発明は、ＰＬＣの外部の機器や制御対象を含めた制御システム全体の動作まで考慮したフィードバック関係を、プログラム図として表示することができるプログラム図表示装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明に係る請求項１に記載のプログラム図表示装置は、シートは少なくとも、変数と、命令と、前記変数と前記命令とを接続する接続線とから構成されており、複数の前記シートによって規定される制御プログラムを表示し、前記シートにおける、前記命令および前記変数の表示位置情報と、前記命令と前記変数との接続に関する接続関係情報とから構成される、シート定義情報が保管されるシート定義情報保管部と、前記変数の持つ情報が定義される、変数定義情報が保管されている変数定義情報保管部とを、備えたプログラム図表示装置であって、前記制御プログラムが搭載されるコントローラと、当該コントローラ外部の外部構成要素とを含めた制御システム全体をモデル化した、プラントモデル定義情報が保管されるプラントモデル定義情報保管部と、前記シート定義情報、前記変数定義情報および前記プラントモデル定義情報を用いて、指定された前記変数に対するフィードバック関係を提示するフィードバック提示情報を生成するフィードバック提示情報生成部と、前記シート定義情報と前記フィードバック提示情報とを用いて、表示画面情報を生成する画面表示管理部と、前記表示画面情報に基づいて、前記フィードバック関係を提示した前記制御プログラムを表示する画面出力部とを、さらに備える。
【発明の効果】
【０００９】
本発明の請求項１に記載のプログラム図表示装置は、シート上に表示された制御プログラムに、プラントモデル定義情報保管部中のプラントモデル定義情報を用いて、指定された前記変数に対するフィードバック関係を提示するフィードバック提示情報をあわせて提示する。
【００１０】
このように、本発明に係るプログラム図表示装置は、プラントモデル定義情報を利用して、指定された変数に対するフィードバック提示情報を生成している。したがって、所望の変数に対する、コントローラの外部の機器や制御対象を含めた制御システム全体の動作まで考慮したフィードバック関係を、プログラム図として表示することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係るプログラム図表示装置を実現するハードウェア構成を示す図である。
【図２】実施の形態１に係るプログラム図表示装置の構成を示す図である。
【図３】実施の形態１に係るプログラム図表示装置が表示する実行画面例を示す図である。
【図４】実施の形態１に係るプログラム図表示装置を説明するための、プラント事例を示す図である。
【図５】シート定義情報を例示した図である。
【図６】変数定義情報を例示した図である。
【図７】キスト表記されたプラントモデル定義情報を例示する図である。
【図８】図的表記されたプラントモデル定義情報を例示する図である。
【図９】本実施の形態に係るプログラム図表示装置の動作を説明するためのフローチャートである。
【図１０】フィードバック提示情報に従って表示された出力画面の一例を示す図である。
【図１１】フィードバック提示情報生成処理の具体的な動作をフローチャートである。
【図１２】フィードバック提示情報生成処理の際に生成される、ＰＬＣ入出力リストを示す図である。
【図１３】フィードバック提示情報生成処理の際に生成される、ＰＬＣ入出力リストを示す図である。
【図１４】フィードバック提示情報生成処理の際に生成される、ＰＬＣ入出力リストを示す図である。
【図１５】実施の形態２に係るプログラム図表示装置で表示される出力画面例を示す図である。
【図１６】実施の形態３に係るプログラム図表示装置で表示される出力画面例を示す図である。
【図１７】実施の形態４に係るプログラム図表示装置で表示される出力画面例を示す図である。
【図１８】実施の形態４に係るプログラム図表示装置で表示される出力画面の他の例を示す図である。
【発明を実施するための形態】
【００１２】
以下、この発明をその実施の形態を示す図面に基づいて具体的に説明する。
【００１３】
＜実施の形態１＞
図１は、本発明の実施の形態１に係るプログラム図表示装置を実現する、ハードウェア構成を示すブロック図である。当該ハードウェア構成では、パーソナルコンピュータ（以下、ＰＣ）１と、ディスプレイ２と、キーボード３と、ポインティングデバイス４とから構成されている。
【００１４】
ＰＣ１は、演算処理装置としてＣＰＵ５と、記憶装置としてメモリ６と、記憶装置としてハードディスク７とを有する。また、ＰＣ１には、表示装置として、ディスプレイ２が接続されている。さらに、ＰＣ１には、入力装置として、キーボード３およびポインティングデバイス４が接続されている。当該ハードウェア構成により、監視画面作成装置が実現される。
【００１５】
なお、表示装置はディスプレイ２に、入力装置はキーボード３やポインティングデバイス４に、記憶装置はメモリ６やハードディスク７に限定されるものではない。
【００１６】
図２は、本発明の実施の形態１に係るプログラム図表示装置の構成を示すブロック図である。
【００１７】
プログラム図表示装置は、入力操作受理部１１と、画面出力部１２と、画面表示管理部１３と、シート定義情報保管部１４と、変数定義情報保管部１５と、フィードバック提示情報生成部１６と、プラントモデル定義情報保管部１７とから、構成されている。
【００１８】
入力操作受理部１１は、操作者の各種操作命令を受け付ける。
【００１９】
シート定義情報保管部１４には、シート定義情報が保管されている。ここで、シート定義情報は、制御プログラムのシート上における、命令および変数の表示位置情報と、命令および変数の接続関係情報と、命令間同士の接続関係情報とから構成されている。
【００２０】
変数定義情報保管部１５には、変数定義情報が保管されている。ここで、変数定義情報では、制御プログラムのシートにおいて利用される変数の持つ情報（当該変数の名前・型・種別・アドレス等）が定義されている。
【００２１】
プラントモデル定義情報保管部１７には、プラントモデル定義情報が保管されている。ここで、プラントモデル定義情報は、ＰＬＣと外部構成要素とを含めた制御システム全体を、接続関係と影響関係とを用いてモデル化した定義情報である。換言すると、プラントモデル定義情報は、制御プログラムが実行される制御システム全体をモデル化した情報である。
【００２２】
ここで、外部構成要素とは、ＰＬＣ外部の機器やＰＬＣ外部の制御対象などである。また、制御システム全体としては、工場やプラント等が例示できる。
【００２３】
また、接続関係とは、ＰＬＣと外部構成要素との間における結線による接続関係および各外部構成要素間における結線による接続関係である。
【００２４】
他方、影響関係とは、結線による接続関係ではなく、各外部構成要素間における自然現象を利用した影響の及ぼし合いを通じた繋がり関係である。たとえば、制御システムにおける制御の観点で、第一の外部構成要素の物理的・化学的等の作用が、第二の外部構成要素に何らかの影響を及ぼしている（物理的・化学的等の変化がある）場合には、第一の外部構成要素と第二の外部構成要素との間には、影響関係がある。
【００２５】
フィードバック提示情報生成部１６は、フィードバック提示情報を生成する。ここで、フィードバック提示情報は、入力操作受理部１１により指定されたシート上の対象変数に対応する、外部構成要素を含めた制御システム全体に対するフィードバック関係を提示するための情報である。また、当該フィードバック提示情報は、プラントモデル定義情報、変数定義情報およびシート定義情報を用いて生成される。
【００２６】
画面表示管理部１３は、フィードバック提示情報に従って、シート定義情報の内容を補正することにより、画面に出力するための画面表示情報を生成する。さらに、画面表示管理部１３は、各ブロック１１，１２，１４〜１７間における指示や情報を、仲介している。
【００２７】
画面出力部１２は、画面表示情報を受信し、当該画面表示情報に従って画面を表示する。
【００２８】
プログラム図表示装置は、入力操作受理部１１、画面出力部１２、画面表示管理部１３、シート定義情報保管部１４、変数定義情報保管部１５から構成されることも可能である。しかしながら、本実施の形態に係るプログラム図表示装置では、上記構成に加えて、フィードバック提示情報生成部１６およびプラントモデル定義情報保管部１７が付加されている。本実施の形態に係るプログラム図表示装置の当該構成により、外部構成要素を含めたフィードバック関係を、シート上に提示することが可能となる。
【００２９】
ここで、図１と図２と比較において、入力操作受理部１１は、キーボード３およびポインティングデバイス４に相当し、ＰＣ１への操作情報の入力を実現する。また、画面出力部１２は、ディスプレイ２に相当し、ＰＣ１から受けた画面表示を実現する。また、シート定義情報保管部１４、変数定義情報保管部１５およびプラントモデル定義情報保管部１７は、ＰＣ１内のハードディスク７上に搭載されており、ＣＰＵ５によりメモリ６上に展開される。そして、画面表示管理部１３およびフィードバック提示情報生成部１６は、ＰＣ１内のハードディスク７上に搭載されており、ＣＰＵ５によりメモリ６上に展開され、実行される。
【００３０】
なお、本発明のプログラム図表示装置は、ＰＬＣ用の制御プログラムを作成するプログラム図編集装置と同一の装置として、表示機能を担う構成でも良い。
【００３１】
本実施の形態に係るプログラム図表示装置が、ディスプレイ２を用いて提供する実行画面例を図３に示す。
【００３２】
図３に例示するように、実行画面は、メインメニュー５１、シート選択ボタン５２、表示エリア５３、起点変数指定ボタン５４およびフィードバック提示ボタン５５を持っている。
【００３３】
シート選択ボタン５２は、表示するための制御プログラムのシートを選択するために使用される。表示エリア５３には、制御プログラム図が表示される。起点変数指定ボタン５４は、フィードバック関係の起点となる変数を指定するモードに変更する際に使用される。そして、フィードバック提示ボタン５５は、フィードバック関係を提示するために使用される。
【００３４】
以降における本実施の形態に係るプログラム図表示装置の説明では、図４に示すプラントＡをプラントの事例とし、当該プラントＡを想定して説明を進める。
【００３５】
ここで、プラントＡでは、ＰＬＣであるＰＬＣ−１を用いて、制御対象である水槽Ｗの温度を一定に保つというプラント制御が実施される。なお、プラントＡには、ＰＬＣ−１と水槽Ｗ（外部構成要素と把握できる）の他に、６個の機器Ａ〜Ｆ（外部構成要素と把握できる）が配設されている。
【００３６】
図４に示すように、ＰＬＣ−１は、３つの入力(Ｉ１〜Ｉ３)と、３つの出力（Ｏ１〜Ｏ３)を持っている。プラントＡにおける、ＰＬＣと外部構成要素との接続関係および各外部構成要素間の接続関係（結線による接続関係）は、次の通りである。
【００３７】
ＰＬＣ−１のＩ１には、機器Ｅの出力が接続されている。ＰＬＣ−１のＩ２には、機器Ｂ（温度計）の出力が接続されている。ＰＬＣ−１のＩ３には、機器Ｆの出力が接続されている。ＰＬＣ−１のＯ１には、機器Ａ（温熱器）の入力が接続されている。ＰＬＣ−１のＯ２には、機器Ｃの入力が接続されている。そして、ＰＬＣ−１のＯ３には、機器Ｄの入力が接続されている。
【００３８】
上述の結線による接続関係に加えてプラントＡには、外部構成要素間における影響関係も存在する。
【００３９】
つまり、プラントＡでは、制御対象である水槽Ｗは機器Ａの温熱器の温度変化により水温を上昇させられ、当該水槽Ｗの水温の変化が機器Ｂの温度計により計測される。このように、水槽Ｗと機器Ａとの間および水槽Ｗと機器Ｂとの間に、自然現象を利用した影響の及ぼし合いによる繋がりがある。よって、機器Ａと水槽Ｗとの間に影響関係が存在し、水槽Ｗと機器Ｂとの間にも影響関係が存在する。
【００４０】
ＰＬＣ−１には、図５に示す４枚の制御プログラムが規定されたシート（シートＳ１〜シートＳ４）と、図６に示す前記シートで利用される各種変数の定義から生成された実行可能ファイルとが搭載されている。また、ＰＬＣ−１は、プラントＡの制御動作を実行する。
【００４１】
また、本実施の形態においては、制御プログラムの記法の一例として、国際規格ＩＥＣ６１１３１−３において規定されているＦＢＤ（Ｆｕｎｃｔｉｏｎ  Ｂｌｏｃｋ  Ｄｉａｇｒａｍ）形式にて書かれた制御プログラムを用いる。
【００４２】
ＦＢＤ形式の各シートは、入力を受け、演算を行い、演算結果を出力する命令と、命令の入力に渡す値、もしくは命令の出力から得た値を格納する変数と、命令と変数、あるいは命令同士を接続し、データの代入を行なう接続線とから、構成される。
【００４３】
たとえば図５に示す各シートＳ１においては、ＦＢ１およびＦＢ２が命令であり、ＡＩ−１，ＡＩ−２，ＡＩ−３，ｔｍｐ１およびｔｍｐ５が変数であり、ＡＩ−１とＦＢ１とを繋ぐ線分、ＡＩ−３とＦＢ１とを繋ぐ線分、ＦＢ１とｔｍｐ１とを繋ぐ線分、ＡＩ−２とＦＢ２とを繋ぐ線分およびＦＢ２とｔｍｐ５とを繋ぐ線分が、接続線である。
【００４４】
また、図５に示す各シートＳ２においては、ＦＢ３が命令であり、ｔｍｐ２およびｔｍｐ５が変数であり、ｔｍｐ５とＦＢ３とを繋ぐ線分およびＦＢ３とｔｍｐ２とを繋ぐ線分が、接続線である。
【００４５】
また、図５に示す各シートＳ３においては、ＦＢ４およびＦＢ５が命令であり、ｔｍｐ１，ｔｍｐ２，ｔｍｐ３およびｔｍｐ４が変数であり、ｔｍｐ１とＦＢ４とを繋ぐ線分、ｔｍｐ２とＦＢ４とを繋ぐ線分、ＦＢ４とｔｍｐ３とを繋ぐ線分、ＦＢ４とＦＢ５とを繋ぐ線分およびＦＢ５とｔｍｐ４とを繋ぐ線分が、接続線である。
【００４６】
また、図５に示す各シートＳ４においては、ＦＢ６，ＦＢ７およびＦＢ８が命令であり、ＡＯ−１，ＡＯ−２，ＡＯ−３，ｔｍｐ３およびｔｍｐ４が変数であり、ｔｍｐ３とＦＢ６とを繋ぐ線分、ＦＢ６とＡＯ−１とを繋ぐ線分、ＦＢ６とＦＢ７とを繋ぐ線分、ＦＢ７とＡＯ−２とを繋ぐ線分、ｔｍｐ４とＦＢ８とを繋ぐ線分およびＦＢ８とＡＯ−３とを繋ぐ線分が、接続線である。
【００４７】
なお、図５に示した各シートの情報は、プログラム図表示装置上において、シート定義情報としてシート定義情報保管部１４に保管されている。また、図５に示した変数の定義の情報は、プログラム図表示装置上において、変数定義情報として変数定義情報保管部１５に保管されている（図６参照）。
【００４８】
図６において、変数名の欄には、変数の名前が定義されている。また、型の欄には、変数の型として、整数を表すＩＮＴ型や実数を表すＲＥＡＬ型や二値を表すＢＯＯＬ型などが定義されている。また、種別の欄には、変数の種別として、ＰＬＣの入力端子からの入力を受けることを意味するＩＮ種別や、ＰＬＣの出力端子へ出力することを意味するＯＵＴ種別や、ＰＬＣの入出力とは無関係な制御ロジック内の一時変数であることを意味するＴＭＰ種別などが定義されている。また、アドレスの欄には、変数がＰＬＣのメモリ上に配置される際のアドレスが定義されている。
【００４９】
ここで、アドレスの値により、ＰＬＣの入力や出力との対応付けが規定されている。図６では、アドレス０がＰＬＣのＩ１、アドレス１がＰＬＣのＩ２、アドレス２がＰＬＣのＩ３、アドレス１００がＰＬＣのＯ１、アドレス１０１がＰＬＣのＯ２、アドレス１０２がＰＬＣのＯ３、アドレス１０００以降が一時変数として規定されている。
【００５０】
なお、図６における説明の欄には、変数の意味がテキストで表記されている。
【００５１】
さて、本発明に係るプログラム図表示装置では、プラントモデル定義情報をさらに用意する必要がある。図７は、テキスト表記されたプラントモデル定義情報を例示する図である。
【００５２】
図７は、図４のプラントＡの構成を、上記した接続関係や影響関係に着目し、プログラム図表示装置上で扱える形式としたものである。図７では、プラントＡの構成は、ＰＬＣや外部構成要素をノードとし、接続関係と影響関係をアークとし、ノードとアークとで構成されるグラフとしてモデル化されている。
【００５３】
図７に例示したプラントモデル定義情報は、プログラム図表示装置上において、プラントモデル定義情報保管部１７に保管されている。
【００５４】
なお、プラント定義情報の形式は、図７に示したテキストでの記法以外にも、図８に示すような図的な記法で定義されていてもよい。
【００５５】
プラントや工場などの設計作業において、上記プラントモデル定義情報と同様の、接続関係や影響関係を定義した情報を作成しているケースもあり、その場合には、当該情報をプラントモデル定義情報として利用することができる。また、当該情報に相当するものが無い場合には、プログラム図表示装置の導入に当たり、プラントや工場などの設計図面等に記載されている情報から、接続関係や影響関係を抽出し、プラントモデル定義情報を作成することができる。
【００５６】
次に、本実施の形態に係るプログラム図表示装置の動作を、図９のフローチャートを用いて説明する。
【００５７】
まず、操作者は、プログラム図表示装置を起動し、図３におけるシート選択ボタン５２を押下し、シート一覧から所望のシートを選択する。これにより、図３における表示エリアに、選択された所望のシートのプログラム図が表示される。
【００５８】
次に、画面表示管理部１３は、入力操作受理部１１から入力される入力情報を受けるまで待つ（ステップＳＴ１）。
【００５９】
そして、画面表示管理部１３が入力操作受理部１１から入力情報を受けたとき、当該画面表示管理部１３は、受けた入力情報の内容を判定する（ステップＳＴ２）。
【００６０】
入力情報が起点変数指定情報であった場合には（ステップＳＴ２「起点変数指定情報」）、ステップＳＴ３が実施される。ここで、当該起点変数指定情報は、フィードバック関係の起点となる変数を指定したものであり、対象とする一つのシートと該シート上の一つ以上の変数の情報が含まれる。
【００６１】
他方、入力情報が終了情報であった場合には（ステップＳＴ２「終了情報」）、処理は終了される（図９の「ＥＮＤ」参照）。
【００６２】
なお、入力情報が起点変数指定情報および終了情報以外の情報であった場合には（ステップＳＴ２「その他」）、ステップＳＴ１に戻る。
【００６３】
ここで、表示したシートに対するフィードバックの起点となる変数を指定する場合には、操作者は、図３における起点変数指定ボタン５４を押下する。これにより、プログラム図表示装置は、起点変数を指定することができるモードに変更される。起点変数の指定方法としては、以下に例示する、直接変数指定、直間接変数指定および命令指定などがある。
【００６４】
直接変数指定では、ポインティングデバイス４などで、起点変数としたいシート上の変数を、１つ以上指定する。
【００６５】
たとえば、図３において、ｔｍｐ１やｔｍｐ２等を直接選択することで、当該直接選択した変数を起点変数として指定することができる。
【００６６】
また、直間接変数指定では、ポインティングデバイス４などで、注目する一つの変数を選択する。これにより、選択した変数および当該選択した変数に所定の関連性を有する他の変数を、起点変数として自動的に指定することがきる。
【００６７】
たとえば、直間接変数指定において、図３に示した出力変数であるｔｍｐ３を選択したとする。この場合には、ｔｍｐ３に加えて、ｔｍｐ３と接続関係のある入力変数としてｔｍｐ１とｔｍｐ２とが、起点変数として自動的に指定される。他の例において、直間接変数指定において、図３に示した入力変数であるｔｍｐ１を選択したとする。この場合には、ｔｍｐ１に加えて、ｔｍｐ１と接続関係のある出力変数としてｔｍｐ３とｔｍｐ４とが、起点変数として自動的に指定される。
【００６８】
また、命令指定では、ポインティングデバイス４などで、注目する命令を選択することで、該当選択した命令と直接的または間接的に接続関係のある変数が自動的に起点変数として指定される。
【００６９】
例えば、命令指定において、図３に示したシートおけるＦＢ１を選択したとする。この場合には、当該ＦＢ１と直接の接続関係にあるｔｍｐ１、ｔｍｐ２、ｔｍｐ３が起点変数として自動的に指定される。または、当該ＦＢ１と直接および間接的な接続関係にあるｔｍｐ１、ｔｍｐ２、ｔｍｐ３，ｔｍｐ４が起点変数として自動的に指定されてもよい。また、他の例において、図５のシートＳ４におけるＦＢ８を選択したとする。この場合には、ｔｍｐ４およびＡＯ−３が起点変数として自動的に指定される。
【００７０】
図９に話を戻し、ステップＳＴ３では、画面表示管理部１３は、受けた起点変数指定情報を、フィードバック提示情報生成部１６に渡す。ここでは、対象シートであるシートＳ３が指定され、シートＳ３上の変数（ｔｍｐ１，ｔｍｐ２，ｔｍｐ３，ｔｍｐ４）が、起点変数指定情報として指定されたものとする。なお、起点変数指定情報として指定された変数を、起点変数と称する。
【００７１】
なお、操作者は、起点変数を指定した状態で、図３におけるフィードバック提示ボタン５５を押下することにより、プログラム図表示装置では、次のステップＳＴ４以降の各処理も実施される。
【００７２】
ステップＳＴ４では、フィードバック提示情報生成部１６は、受信した起点変数指定情報を基にしてフィードバック関係を検出し、当該フィードバック関係を画面上に提示するためのフィードバック提示情報を生成する。
【００７３】
当該フィードバック提示情報生成処理においては、シート定義情報保管部１４上のシート定義情報と、変数定義情報保管部１５上の変数定義情報と、プラントモデル定義情報保管部１７上のプラントモデル定義情報とが、利用される。
【００７４】
ここでは、指定された上記４つの起点変数のうち、ｔｍｐ３とｔｍｐ２との間にフィードバック関係（図１０の点線矢印参照）が検出され、当該検出されたフィードバック関係がフィードバック提示情報として生成される。
【００７５】
ここで、図１１に示すフローチャートを用いて、フィードバック提示情報生成部１６におけるフィードバック提示情報生成処理（図９におけるステップＳＴ４）を、詳細に説明する。
【００７６】
まず、フィードバック提示情報生成部１６は、上記起点変数指定情報として指定された起点変数（ｔｍｐ１，ｔｍｐ２，ｔｍｐ３，ｔｍｐ４）を受けると、ＰＬＣ入出力リストを作成する（ステップＳＴ４１）。当該ＰＬＣ入出力リストは、次のような方法により作成される。
【００７７】
まず、フィードバック提示情報生成部１６は、シート定義情報保管部１４上のシート定義情報を用いて、上記起点変数ｔｍｐ１，ｔｍｐ２，ｔｍｐ３，ｔｍｐ４が入力変数なのか、出力変数なのかを判定する。
【００７８】
変数が、命令の入力端子に接続されていれば、当該変数は入力変数である。これに対して、変数が、命令の出力端子に接続されていれば、当該変数は出力変数である。なお、入力変数である起点変数を入力起点変数と称し、出力変数である起点変数を出力起点変数と称する。
【００７９】
ここでは、シート定義情報である図５のシートＳ３から、起点変数ｔｍｐ１，ｔｍｐ２は入力起点変数であり、起点変数ｔｍｐ３，ｔｍｐ４が出力起点変数であると、判断される。よって、フィードバック提示情報生成部１６は、図１２に示すＰＬＣ入出力リストにおいて、ＰＬＣ入出力リストのＳｈｅｅｔ Ｉｎ列に、入力起点変数であるｔｍｐ１およびｔｍｐ２を配置し、ＰＬＣ入出力リストのＳｈｅｅｔ Ｏｕｔ列に、出力起点変数であるｔｍｐ３およびｔｍｐ４を配置する。
【００８０】
次に、フィードバック提示情報生成部１６は、シート定義情報保管部１４上のシート定義情報を用いて、入力起点変数と出力起点変数との間における関係性の有無を判定する。つまり、ある入力起点変数とある出力起点変数との間に、１以上の命令を介して、該当シート内での接続関係が無い場合には、フィードバック提示情報生成部１６は、ＰＬＣ入出力リスト上における当該ある入力起点変数と当該ある出力起点変数との交点となる項目に「−(ハイフン)」を入れる。
【００８１】
なお、当該「−(ハイフン)」が入力された場合には、当該ある入力起点変数と当該ある出力起点変数との関係は、フィードバック関係の候補（つまり、フィードバック提示情報の生成の候補）から除外される。このような除外を行うのは、ＰＬＣ外部で二つの起点変数（当該ある入力起点変数と当該ある出力起点変数）に関係があったとしても、該当シート内での関係性が無いため、フィードバック関係のループを形成できないためである。
【００８２】
なお、今の場合にはシートＳ３において、入力起点変数であるｔｍｐ１は、１以上の命令（ＦＢ４，ＦＢ５）を介して、出力起点変数であるｔｍｐ３、ｔｍｐ４との間に接続関係があり、入力起点変数であるｔｍｐ２は、１以上の命令（ＦＢ４，ＦＢ５）を介して、出力起点変数であるｔｍｐ３、ｔｍｐ４との間に接続関係がある（図３参照）。よって、図１２に示すＰＬＣ入出力リストにおいて、各入力起点変数と各出力起点変数とが交差する各欄には、「−（ハイフン）」は記載されない。
【００８３】
次に、フィードバック提示情報生成部１６は、シート定義情報保管部１４上のシート定義情報と変数定義情報保管部１５上の変数定義情報とを用いて、指定された起点変数に関連するＰＬＣの入出力変数を抽出する。
【００８４】
フィードバック提示情報生成部１６は、入力起点変数に対しては、当該入力起点変数を起点として、制御プログラムの実行順序を上流にさかのぼり（全ての経路で上流にさかのぼる）、該当する全てのＰＬＣの入力変数（ＰＬＣの入力端子からの入力を受けることを示す変数であり、以下ＰＬＣ入力変数と称する）を見つける。
【００８５】
他方、フィードバック提示情報生成部１６は、出力起点変数に対しては、当該出力起点変数を起点として、制御プログラムの実行順序を下流に進み（全ての経路で下流に進む）、該当する全てのＰＬＣの出力変数（ＰＬＣの出力端子への出力を示す変数であり、以下ＰＬＣ出力変数と称する）を見つける。
【００８６】
たとえば、入力起点変数ｔｍｐ１に対しては、フィードバック提示情報生成部１６は、シート定義情報を用いて制御プログラムを上流にさかのぼる。すると、フィードバック提示情報生成部１６は、図５のシートＳ１の命令ＦＢ１の出力にｔｍｐ１があることを検出する。当該シートＳ１の命令ＦＢ１の入力は、変数ＡＩ−１および変数ＡＩ−３となっている。
【００８７】
そこで、フィードバック提示情報生成部１６は、当該変数ＡＩ−１，ＡＩ−３がＰＬＣ入力変数であるか否かを、変数定義情報を用いて判定する。図６の変数定義情報の種別欄を参照すると、変数ＡＩ−１および変数ＡＩ−３は共に、ＩＮ種別となっている。したがって、フィードバック提示情報生成部１６は、変数ＡＩ−１，ＡＩ−３がＰＬＣ入力変数であると判断する。つまり、フィードバック提示情報生成部１６は、入力起点変数ｔｍｐ１に対して、変数ＡＩ−１，ＡＩ−３がＰＬＣ入力変数であると判断する。
【００８８】
そこで、図１３に示すように、フィードバック提示情報生成部１６は、ＰＬＣ入出力リストのｔｍｐ１の行でＰＬＣ  Ｉｎの列において、ｔｍｐ１に対するＰＬＣ入力変数として、ＡＩ−１およびＡＩ−３を各々記載する。このように、ＰＬＣ入力変数が複数ある場合には、ＰＬＣ入出力リストの該当箇所において行を増やすことになる。
【００８９】
また、フィードバック提示情報生成部１６は、シート定義情報を用いて、入力起点変数からＰＬＣ入力変数に至るまでの間の全てのシート番号（入力起点変数が存するシート番号は除く）を検出する。
【００９０】
図５を参照すると、入力起点変数ｔｍｐ１からＰＬＣ入力変数ＡＩ−１，ＡＩ−３に至るまでの経路には、シートＳ１のみを経由する。そこで、フィードバック提示情報生成部１６は、ｔｍｐ１のＡ１−１とシート経路とが交差する欄およびｔｍｐ１のＡ１−３とシート経路とが交差する欄に各々、たとえば「Ｓ１」と記入する（図１３参照）。
【００９１】
また、入力起点変数ｔｍｐ２に対しては、フィードバック提示情報生成部１６は、シート定義情報を用いて制御プログラムを上流にさかのぼる。するとまず、フィードバック提示情報生成部１６は、図５のシートＳ２の命令ＦＢ３の出力にｔｍｐ２があることを検出する。当該シートＳ２の命令ＦＢ３の入力は、変数ｔｍｐ５となっている。
【００９２】
そこで、フィードバック提示情報生成部１６は、当該変数ｔｍｐ５がＰＬＣ入力変数であるか否かを、変数定義情報を用いて判定する。図６の変数定義情報の種別欄を参照すると、変数ｔｍｐ５は、ＴＭＰ種別となっている。したがって、フィードバック提示情報生成部１６は、変数ｔｍｐ５がＰＬＣ入力変数でないと判断する。
【００９３】
そこで、入力起点変数ｔｍｐ２に対して、フィードバック提示情報生成部１６は、シート定義情報を用いて制御プログラムをさらに上流にさかのぼる（つまり、ｔｍｐ５よりさらに上流を検索する）。すると、フィードバック提示情報生成部１６は、図５のシートＳ１の命令ＦＢ２の出力にｔｍｐ５があることを検出する。当該シートＳ１の命令ＦＢ５の入力は、変数ＡＩ−２となっている。
【００９４】
そこで、フィードバック提示情報生成部１６は、当該変数ＡＩ−２がＰＬＣ入力変数であるか否かを、変数定義情報を用いて判定する。図６の変数定義情報の種別欄を参照すると、変数ＡＩ−２は、ＩＮ種別となっている。したがって、フィードバック提示情報生成部１６は、変数ＡＩ−２がＰＬＣ入力変数であると判断する。つまり、フィードバック提示情報生成部１６は、入力起点変数ｔｍｐ２に対して、変数ＡＩ−２がＰＬＣ入力変数であると判断する。
【００９５】
そこで、図１３に示すように、フィードバック提示情報生成部１６は、ＰＬＣ入出力リストのｔｍｐ２の行でＰＬＣ  Ｉｎの列において、ｔｍｐ２に対するＰＬＣ入力変数として、ＡＩ−２を各々記載する。
【００９６】
また、フィードバック提示情報生成部１６は、シート定義情報を用いて、入力起点変数からＰＬＣ入力変数に至るまでの間の全てのシート番号（入力起点変数が存するシート番号は除く）を検出する。
【００９７】
図５を参照すると、入力起点変数ｔｍｐ２からＰＬＣ入力変数ＡＩ−２に至るまでの経路には、シートＳ２とシートＳ１を経由している。そこで、フィードバック提示情報生成部１６は、ｔｍｐ２のＡ１−２とシート経路との交差する欄に、たとえば「Ｓ１」および「Ｓ２」と記入する（図１３参照）。
【００９８】
なお、前記のように、二つ以上のシート番号を記入する場合には、経由の順序が分かるように記入する。つまり、二つ以上のシートを経由する場合には、当該経由の順序を示す情報も、ＰＬＣ入出力リストに含ませる。たとえば、シート経路の該当する欄におけるシート番号の順序により、経由の順序を示すことができる。図１３では、変数ｔｍｐ２を起点に「シートＳ２→シートＳ１」の」順で上流に遡り、ＰＬＣ入力変数に至ることが示されている。
【００９９】
また、出力起点変数ｔｍｐ３に対しては、フィードバック提示情報生成部１６は、シート定義情報を用いて制御プログラムを下流に進む。すると、フィードバック提示情報生成部１６は、図５のシートＳ４の命令ＦＢ６の入力にｔｍｐ３があることを検出する。当該シートＳ４の命令ＦＢ６の出力は、変数ＡＯ−１と、命令ＦＢ７を経由した変数ＡＯ−２となっている。
【０１００】
そこで、フィードバック提示情報生成部１６は、当該変数ＡＯ−１，ＡＯ−２がＰＬＣ出力変数であるか否かを、変数定義情報を用いて判定する。図６の変数定義情報の種別欄を参照すると、変数ＡＯ−１および変数ＡＯ−２は共に、ＯＵＴ種別となっている。したがって、フィードバック提示情報生成部１６は、変数ＡＯ−１，ＡＯ−２がＰＬＣ出力変数であると判断する。つまり、フィードバック提示情報生成部１６は、出力起点変数ｔｍｐ３に対して、変数ＡＯ−１，ＡＯ−２がＰＬＣ出力変数であると判断する。
【０１０１】
そこで、図１３に示すように、フィードバック提示情報生成部１６は、ＰＬＣ入出力リストのｔｍｐ３の列でＰＬＣ  ＯＵＴの行において、ｔｍｐ３に対するＰＬＣ出力変数として、ＡＯ−１およびＡＯ−２を各々記載する。このように、ＰＬＣ出力変数が複数ある場合には、ＰＬＣ入出力リストの該当箇所において列を増やすことになる。
【０１０２】
また、フィードバック提示情報生成部１６は、シート定義情報を用いて、出力起点変数からＰＬＣ出力変数に至るまでの間の全てのシート番号（出力起点変数が存するシート番号は除く）を検出する。
【０１０３】
図５を参照すると、出力起点変数ｔｍｐ３からＰＬＣ出力変数ＡＯ−１，ＡＯ−２に至るまでの経路には、シートＳ４のみを経由する。そこで、フィードバック提示情報生成部１６は、ｔｍｐ３のＡＯ−１とシート経路とが交差する欄およびｔｍｐ３のＡＯ−２とシート経路とが交差する欄に各々、たとえば「Ｓ４」と記入する（図１３参照）。
【０１０４】
また、出力起点変数ｔｍｐ４に対しては、フィードバック提示情報生成部１６は、シート定義情報を用いて制御プログラムを下流に進む。すると、フィードバック提示情報生成部１６は、図５のシートＳ４の命令ＦＢ８の入力にｔｍｐ４があることを検出する。当該シートＳ４の命令ＦＢ８の出力は、変数ＡＯ−３となっている。
【０１０５】
そこで、フィードバック提示情報生成部１６は、当該変数ＡＯ−３がＰＬＣ出力変数であるか否かを、変数定義情報を用いて判定する。図６の変数定義情報の種別欄を参照すると、変数ＡＯ−３は、ＯＵＴ種別となっている。したがって、フィードバック提示情報生成部１６は、変数ＡＯ−３がＰＬＣ出力変数であると判断する。つまり、フィードバック提示情報生成部１６は、出力起点変数ｔｍｐ４に対して、変数ＡＯ−３がＰＬＣ出力変数であると判断する。
【０１０６】
そこで、図１３に示すように、フィードバック提示情報生成部１６は、ＰＬＣ入出力リストのｔｍｐ４の列でＰＬＣ  ＯＵＴの行において、ｔｍｐ４に対するＰＬＣ出力変数として、ＡＯ−３を記載する。
【０１０７】
また、フィードバック提示情報生成部１６は、シート定義情報を用いて、出力起点変数からＰＬＣ出力変数に至るまでの間の全てのシート番号（出力起点変数が存するシート番号は除く）を検出する。
【０１０８】
図５を参照すると、出力起点変数ｔｍｐ４からＰＬＣ出力変数ＡＯ−３に至るまでの経路には、シートＳ４のみを経由する。そこで、フィードバック提示情報生成部１６は、ｔｍｐ４のＡＯ−３とシート経路とが交差する欄に、たとえば「Ｓ４」と記入する（図１３参照）。
【０１０９】
なお、図１３の例と異なるが、出力起点変数からＰＬＣ出力変数に至るまでの間に、二つ以上のシートを経由する場合には、当該経由の順序を示す情報も、ＰＬＣ入出力リストに含ませる。たとえば、シート経路の該当する欄におけるシート番号の順序により、経由の順序を示すことができる。一例として、出力起点変数から下流に進みＰＬＣ出力変数に至るまでに、シートＳＤ、シートＳＨを当該順に経由したとする。当該場合には、該当する欄に、「ＳＤ→ＳＨ」と記す方法が考えられる。
【０１１０】
ここまでの処理が、図１１のステップＳＴ４１の処理である。
【０１１１】
次に、フィードバック提示情報生成部１６は、ステップＳＴ４１で生成されたＰＬＣ入出力リストにおいて、ＰＬＣ入力変数またはＰＬＣ出力変数の記載が無いか判断する（ステップＳＴ４２）。つまり、フィードバック提示情報生成部１６は、ステップＳＴ４１の結果が、ＰＬＣ入力変数が無い場合またはＰＬＣ出力変数が無い場合に該当するかを判断する。
【０１１２】
そして、ＰＬＣ入出力リストにおいて、ＰＬＣ入力変数の記載がない場合またはＰＬＣ出力変数の記載が無い場合には（ステップＳＴ４２で「Ｎｏ」）、指定された起点変数における外部構成要素を含めたフィードバック関係は存在しないことになるため、処理を終了する。
【０１１３】
また、ＰＬＣ入出力リストにおいて、ＰＬＣ入力変数の記載およびＰＬＣ出力変数の記載がある場合には（ステップＳＴ４２で「Ｙｅｓ」）、ステップＳＴ４３に進む。
【０１１４】
ステップＳＴ４３では、フィードバック提示情報生成部１６は、プラントモデル定義情報保管部１７上のプラントモデル定義情報を参照し、ＰＬＣの各出力端子とＰＬＣの各入力端子との間で、外部構成要素を含めて、接続関係および影響関係を介した繋がり（ループ）があるＰＬＣ出力端子とＰＬＣ入力端子との組合せを全て抽出する。
【０１１５】
プラントＡのプラントモデル定義情報である図８を参照すると、ＰＬＣ−１の出力１とＰＬＣ−１の入力２との間に、「出力Ｏ１→（接続関係）→機器Ａ→（影響関係）→水槽Ｗ→（影響関係）→機器Ｂ→（接続関係）→入力Ｉ２」、という繋がりが存在している。よって、フィードバック提示情報生成部１６は、図８を用いて、出力Ｏ１と入力Ｉ２との組合せを抽出する。
【０１１６】
さらに、フィードバック提示情報生成部１６は、変数定義情報を用いて、前記で抽出した組合せのＰＬＣの入力端子および出力端子の変数名を、検出する（ステップＳＴ４３）。
【０１１７】
フィードバック提示情報生成部１６が、図６の変数定義情報の変数名およびアドレスを参照する。すると、フィードバック提示情報生成部１６は、上記で抽出した（出力Ｏ１と入力Ｉ２との組合せにおいて、出力Ｏ１が変数ＡＯ−１に該当し、入力Ｉ２が変数ＡＩ−２に該当することを、検出する。以上により、ステップＳＴ４３では、結果的に、フィードバック提示情報生成部１６は、変数ＡＯ−１と変数ＡＩ−２との間に、外部構成要素を介した繋がりがあることを判断し、変数ＡＯ−１（ＰＬＣ−１の出力側）と変数ＡＩ−２（ＰＬＣ−１の入力側）との組合せ（変数組合せと称する）を抽出する。
【０１１８】
次に、フィードバック提示情報生成部１６は、図１３のＰＬＣ入出力リストを参照し、ステップＳＴ４１で抽出したＰＬＣ入力変数とＰＬＣ出力変数との組合せにおいて、ステップＳＴ４３で検出した変数組合せに合致する組合せがあるか否かを判断する（ステップＳＴ４４）。
【０１１９】
具体的に、図１３に示したＰＬＣ入出力リストの空白欄において、変数組合せと合致するＰＬＣ入力変数とＰＬＣ出力変数との組合せについては「○」を記入し、変数組合せと合致しないＰＬＣ入力変数とＰＬＣ出力変数との組合せについては「×」を記入する。今の場合、変数組合せは「変数ＡＯ−１と変数ＡＩ−２」である。よって、フィードバック提示情報生成部１６は、図１４に示すようなＰＬＣ入出力リストを作成する。
【０１２０】
ここで、ＰＬＣ入出力リストにおいて、変数組合せと合致するＰＬＣ入力変数とＰＬＣ出力変数との組合せが全くない場合には（全ての空白欄が「×」と記入される場合であり、ステップＳＴ４４で「Ｎｏ」）、処理は終了する。
【０１２１】
これに対して、ＰＬＣ入出力リストにおいて、変数組合せと合致するＰＬＣ入力変数とＰＬＣ出力変数との組合せが少なくとも１つ存在する場合には（空白欄において少なくとも１つでも「○」と記入される場合であり、ステップＳＴ４４で「Ｙｅｓ」）、ステップＳＴ４５へと進む。
【０１２２】
ＰＬＣ入出力リストにおいて「○」が付いたＰＬＣ入力変数とＰＬＣ出力変数との組合せには、外部構成要素を含めたフィードバック関係が存在する。すなわち、当該組合せのＰＬＣ出力変数の抽出の際に利用された入力起点変数と、当該組合せのＰＬＣ入力変数の抽出の際に利用された出力起点変数との間に、外部構成要素を含めたフィードバック関係が存在する。
【０１２３】
図１４の例では、シートＳ３において、ｔｍｐ３とｔｍｐ２との間に、外部構成要素を含めたフィードバック関係があることが分かる。
【０１２４】
次に、ステップＳＴ４４の結果を受けて、フィードバック提示情報生成部１６は、フィードバック関係をシート上に提示するためのフィードバック提示情報の生成を行う（ステップＳＴ４５）。フィードバック提示情報生成部１６は、生成されたフィードバック提示情報を、画面表示管理部１３に渡し、その後図９のステップＳＴ５に進む。
【０１２５】
以上で、図９のステップＳＴ４（図１１の一連の処理）は、終了する。
【０１２６】
ステップＳＴ５では、画面表示管理部１３は、受信したフィードバック提示情報に基づいて、表示画面情報の作成を行う。つまり、画面表示管理部１３は、受信したフィードバック提示情報に基づいて、現在選択中のシートのシート定義情報に対して、フィードバック関係を示す図形情報を付加する（よって、フィードバック提示情報は、シート上に、フィードバック関係を提示するための情報であることが分かる）。
【０１２７】
具体的に、画面表示管理部１３は、シート定義情報保管部１４上のシート定義情報のうち、現在選択中のシートに関するシート定義情報をコピーし、取得する。そして、画面表示管理部１３は、フィードバック提示情報に基づいて、当該取得したコピーのシート定義情報に、フィードバック関係を示す図形情報を付加する（表示画面情報の生成）。当該図形情報の付加の際に、既存の描画部分と重ならないように、ずらしなどのレイアウト処理も行う。
【０１２８】
たとえば、図１４の結果が得られ場合には、フィードバック提示情報生成部１６は、フィードバック提示情報として、「ｔｍｐ３⇒ｔｍｐ２にフィードバック関係あり」という情報を作成し、画面表示管理部１３に渡す。
【０１２９】
画面表示管理部１３では、図５に示したシートＳ３のシート定義情報を、シート定義情報管理部１４からコピーし、取得する。さらに、画面表示管理部１３は、受けたフィードバック提示情報に従い、図１０の点線矢印で示した図形を表示するための図形情報を作成し、当該取得したコピーのシート定義情報に対して当該図形情報を付加する（ステップＳＴ５における表示画面情報の生成）。
【０１３０】
次に、画面表示管理部１３は、ステップＳＴ５で生成した表示画面情報を、画面出力部１２に渡す。
【０１３１】
次に、画面出力部１２において、受けた表示画面情報に従って、画面上にフィードバック関係を含むシート定義情報を出力する（ステップＳＴ６）。図１４の結果が得られたときのステップＳＴ６における出力画面が、図１０である。
【０１３２】
図１０に示すように、シートＳ３には、出力起点変数ｔｍｐ３から入力起点変数ｔｍｐ２に至るフィードバック関係が、点線矢印にて提示される。図１０に示すように、図５に示したシートＳ３の既存の描画部分には、当該点線矢印が重ならないようにレイアウト処理が実施されている。
【０１３３】
ステップＳＴ４（図１１の一連の処理）から分かるように、ステップＳＴ６で提示されるフィードバック関係は、ｔｍｐ３とｔｍｐ２との間に存在する外部構成要素を含めフィードバック関係である。
【０１３４】
ここで、図１４に示すように、起点変数に関するフィードバック関係が存在する場合には、フィードバック関係が画面上に表示される（図１０参照）。これに対して、起点変数に関するフィードバック関係が存在しない場合（フィードバック提示情報生成部１６が起点変数に関するフィードバック関係を検出しなかった場合）には、画面上には当然、フィードバック関係は表示されない。
【０１３５】
なお、ステップＳＴ６の後、再度ステップＳＴ１の処理に戻る。
【０１３６】
以上のように、本実施の形態に係るプログラム図表示装置では、ＰＬＣと外部構成要素と含み、上記接続関係および上記影響関係を加味した、プラントモデル定義情報を利用して、選択された起点変数に対するフィードバック提示情報を生成している。
【０１３７】
したがって、所望の変数に対する、ＰＬＣの外部の機器や制御対象を含めた制御システム全体の動作まで考慮したフィードバック関係を、プログラム図として表示することができる。よって、制御プログラムのプログラマにとって、制御プログラムの処理内容の把握が容易になり、監視画面の開発工数を低減することができる。
【０１３８】
また、本実施の形態に係るプログラム図表示装置では、当該シートにおいて接続関係がない、入力起点変数と出力起点変数との組合せは、フィードバック提示情報の生成の候補から除外している。
【０１３９】
したがって、フィードバック提示情報の生成の候補を減らすことにより、より短時間で、指定した変数に対するフィードバック提示情報を生成することが可能となる。
【０１４０】
また、本実施の形態に係るプログラム図表示装置では、コントローラ入力変数またはコントローラ出力変数が検出されなかったとき、指定した変数に対するフィードバック提示情報の生成は行わない。
【０１４１】
したがって、指定した変数に対する、外部構成要素を含めたフィードバックが存在しない場合において、より早い段階で、フィードバック提示情報の生成を終了させることができる。
【０１４２】
＜実施の形態２＞
実施の形態１で用いた図１０では、基本的なフィードバック関係の提示方法を示した。しかしながら、フィードバック提示情報生成部１６の実装方法を変更し、ステップＳＴ４５で生成されるフィードバック提示情報の内容を変更することにより、フィードバック関係の他の提示方法も採用することができる。
【０１４３】
実施の形態２〜４では、フィードバック関係を提示した出力画面の他のバリエーションについて説明する。なお、実施の形態１〜４で説明する複数の出力画面のバリエーションのうち、何れか一つの出力画面のみを固定的に表示することができるプログラム図表示装置を生産しても良く、または、モード選択の切り替えにより何れか一つの出力画面を可変的に表示することができるプログラム図表示装置を生成しても良い。
【０１４４】
本実施の形態では、フィードバック提示情報に、シート経由情報（ＰＬＣ入出力リストの「シート経路」の欄の情報が、シート経由情報であると把握することができる）も含ませる。
【０１４５】
シート経由情報は、起点入力変数からＰＬＣ入力変数に至るまでに経由するシートを示す第一の経由情報、および、起点出力変数からＰＬＣ出力変数に至るまでに経由するシートを示す第二の経由情報から成る。
【０１４６】
フィードバック提示情報に含ませるシート経由情報は、フィードバック関係についてのものである。図１４の例では、変数ｔｍｐ３から変数ｔｍｐ２についてフィードバック関係があり、当該フィードバックのルートに関してのシート経由情報が、フィードバック提示情報に付加される。
【０１４７】
図１３を用いて説明したように、ＰＬＣ入出力リストには、入力起点変数からＰＬＣ入力変数に至るまでの間に経由するシートを示す情報（経由するシート番号を示す情報であり、上記第一のシート経由情報）、出力起点変数からＰＬＣ出力変数に至るまでの間に経由するシートを情報（経由するシート番号を示す情報であり、上記第二のシート経由情報）、および二つ以上のシートを経由する場合には経路の順序に関する情報（経由するシートの順番を示す情報であり、上記第一のシート経由情報および上記第二のシート経由情報に含まれる）が、シート経由情報として含まれている。
【０１４８】
そこで、ＰＬＣ入出力リストに含まれている上記シート経由情報をも用いて、フィードバック提示情報生成部１６は、フィードバック提示情報を生成する。
【０１４９】
たとえば、実施の形態１でも説明したように、図１４の例では、変数ｔｍｐ３から変数ｔｍｐ２へのフィードバック関係があることが分かる。さらに、図１４の例の場合には、入力起点変数ｔｍｐ２を起点としてシートＳ２→シートＳ１の順に各シートを上流にさかのぼりＰＬＣ入力変数ＡＩ−２に至り、出力起点変数ｔｍｐ３を起点として下流に進みシートＳ４を通ることによりＰＬＣ入力変数ＡＯ−１に至る、ことが分かる。
【０１５０】
そこで、フィードバック提示情報生成部１６は、実施の形態１で説明した「ｔｍｐ３⇒ｔｍｐ２にフィードバック関係あり」という情報に加えて、「ｔｍｐ３は、シートＳ４を経由して下流に進む」、「ｔｍｐ２は、シートＳ２⇒シートＳ１を経由して上流に遡る」というシート経由情報をも、フィードバック提示情報に含める。
【０１５１】
当該フィードバック提示情報を受けた画面表示管理部１３は、当該フィードバック提示情報を用いて、シートＳ３を修正することにより表示画面情報を作成し、当該作成した表示画面情報を画面出力部１２に渡す。画面出力部１２は、受けた当該表示画面情報に従って、図１５に示す出力画面を表示する。
【０１５２】
図１５には、上記フィードバック提示情報に従って、変数ｔｍｐ３から変数ｔｍｐ２へのフィードバック（点線矢印）の情報に加えて、当該フィードバック上における経由するシートの情報（変数ｔｍｐ３→シートＳ４→シートＳ１→シートＳ２→変数ｔｍｐ２）も表示されている。
【０１５３】
以上のように、本実施の形態に係るプログラム図表示装置では、フィードバック提示情報生成部１６は、フィードバック提示情報に、シート経由情報をも含ませている。
【０１５４】
したがって、図１５に示すように、出力画面には、フィードバック関係のみならず、当該フィードバック上における、経由するシートの情報をも表示することができる。よって、ユーザは、表示された出力画面を通して、該当のフィードバック関係におけるシート間の関係と処理の流れを、容易に理解することができる。
【０１５５】
＜実施の形態３＞
本実施の形態では、フィードバック提示情報に、経由命令情報も含ませる。
【０１５６】
経由命令情報は、起点入力変数からＰＬＣ入力変数に至るまでに経由する命令を示す第一の経由命令情報、および、起点出力変数からＰＬＣ出力変数に至るまでに経由する命令を示す第二の経由命令情報から成る。
【０１５７】
フィードバック提示情報に含ませる経由命令情報は、フィードバック関係についてのものである。図１４の例では、変数ｔｍｐ３から変数ｔｍｐ２についてフィードバック関係があり、当該フィードバックのルートに関しての経由命令情報が、フィードバック提示情報に付加される。
【０１５８】
フィードバック提示情報生成部１６は、シート定義情報を参照することにより、入力起点変数からＰＬＣ入力変数に至るまでの間に経由する命令（第一の経由命令情報）、出力起点変数からＰＬＣ出力変数に至るまでの間に経由する命令（第二の経由命令情報）、および二つ以上の命令を経由する場合には経由する命令の順序に関する情報（第一の経由命令情報および第二の経由命令情報に含まれる）を、経由命令情報として取得できる。
【０１５９】
そこで、上記経由命令情報をも用いて、フィードバック提示情報生成部１６は、フィードバック提示情報を生成する。
【０１６０】
たとえば、実施の形態１でも説明したように、図１４の例では、変数ｔｍｐ３から変数ｔｍｐ２へのフィードバック関係があることが分かる。さらに、当該フィードバック関係において、図５のシート定義情報を用いることにより、入力起点変数ｔｍｐ２を起点としてシートＳ２の命令ＦＢ３→シートＳ１の命令ＦＢ２の順に上流にさかのぼりＰＬＣ入力変数ＡＩ−２に至り、出力起点変数ｔｍｐ３を起点として下流に進みシートＳ４の命令ＦＢ６を通ることによりＰＬＣ入力変数ＡＯ−１に至る、ことが分かる。
【０１６１】
そこで、フィードバック提示情報生成部１６は、実施の形態１で説明した「ｔｍｐ３⇒ｔｍｐ２にフィードバック関係あり」という情報に加えて、「ｔｍｐ３は、シートＳ４の命令ＦＢ６を経由して下流に進む」、「ｔｍｐ２は、シートＳ２のＦＢ３⇒シートＳ１のＦＢ２を経由して上流に遡る」という経由命令情報をも、フィードバック提示情報に含める。
【０１６２】
当該フィードバック提示情報を受けた画面表示管理部１３は、当該フィードバック提示情報を用いて、シートＳ３を修正することにより表示画面情報を作成し、当該作成した表示画面情報を画面出力部１２に渡す。画面出力部１２は、受けた当該表示画面情報に従って、図１６に示す出力画面を表示する。
【０１６３】
図１６には、上記フィードバック提示情報に従って、変数ｔｍｐ３から変数ｔｍｐ２へのフィードバック（点線矢印）の情報に加えて、当該フィードバック上における経由するシートの情報と命令の情報（変数ｔｍｐ３→シートＳ４の命令ＦＢ６→シートＳ１の命令ＦＢ２→シートＳ２の命令ＦＢ３→変数ｔｍｐ２）も表示されている。つまり、本実施の形態では、フィードバック関係における、経由するシートの情報と経由する命令の情報とが表示される。
【０１６４】
以上のように、本実施の形態に係るプログラム図表示装置では、フィードバック提示情報生成部１６は、フィードバック提示情報に、経由命令情報をも含ませている。
【０１６５】
したがって、図１６に示すように、出力画面には、フィードバック関係のみならず、当該フィードバック上における、経由するシートの情報および経由する命令の情報をも表示することができる。よって、ユーザは、表示された出力画面を通して、該当のフィードバック関係における命令の関係と処理の流れを、容易に理解することができる。
【０１６６】
なお、本実施の形態では、フィードバック上における経由する命令の情報のみでなく、フィードバック上における経由するシート情報も、経由命令情報として含まれている。しかし、フィードバック上における経由する命令の情報のみを、経由命令情報として含ませてもよい。当該場合には、図１６において、経由するシートを示す情報は表示されず、経由する命令のみが情報としてフィードバック上において表示される。
【０１６７】
＜実施の形態４＞
実施の形態１のステップＳＴ４３において、フィードバック提示情報生成部１６は、プラントモデル定義情報保管部１７上のプラントモデル定義情報を参照し、ＰＬＣの各出力端子とＰＬＣの各入力端子との間で、外部構成要素を含めて、接続関係および影響関係を介した繋がり（ループ）があるＰＬＣ出力端子とＰＬＣ入力端子との組合せを全て抽出（検出）している。
【０１６８】
そして、ステップＳＴ４４において、フィードバック提示情報生成部１６は、ＰＬＣ入出力リストを構成するＰＬＣ入力変数とＰＬＣ出力変数との組合せと、ステップＳＴ４３で検出したＰＬＣ出力端子とＰＬＣ入力端子との組合せとの、合致を判断している。これにより、結果として、起点出力変数から起点入力変数に至る外部構成要素を介したフィードバック関係の有無を判断している。
【０１６９】
ここで、本実施の形態では、ステップＳＴ４３において、ＰＬＣ出力端子とＰＬＣ入力端子との組合せのみならず、ＰＬＣの各出力端子とＰＬＣの各入力端子との間の外部構成要素を介した繋がり（ループ）の情報（経由外部構成要素情報）をも、フィードバック提示情報生成部１６は検出する。
【０１７０】
このことから分かるように、フィードバック提示情報生成部１６は、プラントモデル定義情報を利用して、検出したフィードバック関係に関して、起点出力変数から起点入力変数に至るまでの経由する外部構成要素の情報も検出できる。
【０１７１】
つまり、ステップＳＴ４１において、フィードバック提示情報生成部１６は、ＰＬＣ内部における、「起点出力変数→（下流方向）→ＰＬＣ出力変数」のプログラムの繋がり、「起点入力変数→（上流方向）→ＰＬＣ入力変数」のプログラムの繋がりを、検出している。
【０１７２】
さらに、ステップＳＴ４３において、フィードバック提示情報生成部１６は、ＰＬＣ外部における外部構成要素を介したループ（ＰＬＣ出力変数→外部構成要素→ＰＬＣ入力変数の繋がり）を、検出している。
【０１７３】
そして、ステップＳＴ４４における「組合せ合致の処理」により、「起点出力変数→ＰＬＣ出力変数→外部構成要素→ＰＬＣ入力変数→起点入力変数」という、フィードバック関係を検出している。
【０１７４】
当該流れから分かるように、本実施の形態ではステップＳＴ４３においてフィードバック提示情報生成部１６が、ＰＬＣの各出力端子とＰＬＣの各入力端子との間の外部構成要素を介した繋がり（ループ）の情報（経由外部構成要素情報）を検出しているので、フィードバック提示情報生成部１６は、フィードバック関係における起点出力変数から起点入力変数に至るまでの経由する外部構成要素の情報も検出できる。
【０１７５】
そこで、本実施の形態では、フィードバック提示情報に、経由外部構成要素情報も含ませる。
【０１７６】
ここで、上記から分かるように、フィードバック提示情報に含ませる経由外部構成要素情報は、フィードバック関係についてのものであり、検出したフィードバックにおいて、起点出力変数から起点入力変数に至るまでのＰＬＣ外部で経由する外部構成要素を示す情報（経由する順序も含む）である。
【０１７７】
たとえば、図１４の例では、変数ｔｍｐ３から変数ｔｍｐ２についてフィードバック関係が検出された。さらに、実施の形態１で説明したように、フィードバック提示情報生成部１６は、変数ｔｍｐ３から変数ｔｍｐ２に至る検出したフィードバックに関して、「ＰＬＣ−１の出力Ｏ１（変数ＡＯ−１）→機器Ａ→水槽Ｗ→機器Ｂ→ＰＬＣ−１の入力Ｉ２（変数ＡＩ−２）」、という外部構成要素を介したループを検出できる（ステップＳＴ４３およびステップＳＴ４４参照）。
【０１７８】
そこで、フィードバック提示情報生成部１６は、変数ｔｍｐ３から変数ｔｍｐ２についてフィードバック関係に関して、実施の形態１で説明した「ｔｍｐ３⇒ｔｍｐ２にフィードバック関係あり」という情報に加えて、「ＰＬＣ−１の出力Ｏ１（変数ＡＯ−１）→機器Ａ→水槽Ｗ→機器Ｂ→ＰＬＣ−１の入力Ｉ２（変数ＡＩ−２）」という経由外部構成要素情報をも、フィードバック提示情報に含める。
【０１７９】
当該フィードバック提示情報を受けた画面表示管理部１３は、当該フィードバック提示情報を用いて、シートＳ３を修正することにより表示画面情報を作成し、当該作成した表示画面情報を画面出力部１２に渡す。画面出力部１２は、受けた当該表示画面情報に従って、図１７に示す出力画面を表示する。
【０１８０】
図１７には、上記フィードバック提示情報に従って、変数ｔｍｐ３から変数ｔｍｐ２へのフィードバック（点線矢印）の情報に加えて、当該フィードバック上における経由する外部構成要素の情報（変数ｔｍｐ３→機器Ａ→水槽Ｗ→機器Ｂ→変数ｔｍｐ２）も表示されている。つまり、本実施の形態では、フィードバック関係における経由する外部構成要素の情報が表示される。
【０１８１】
以上のように、本実施の形態に係るプログラム図表示装置では、フィードバック提示情報生成部１６は、フィードバック提示情報に、経由外部構成要素情報をも含ませている。
【０１８２】
したがって、図１７に示すように、出力画面には、フィードバック関係のみならず、当該フィードバック上における、経由する外部構成要素をも表示することができる。よって、ユーザは、表示された出力画面を通して、該当のフィードバック関係における外部構成要素の関係と処理の流れを、容易に理解することができる。
【０１８３】
なお、本実施の形態では、フィードバック提示情報に、経由外部構成要素情報を含ませて、図１７に示す出力画面を表示させている。これに対して、フィードバック提示情報に、経由外部構成要素情報に加えて、実施の形態２で説明したシート経由情報または実施の形態３で説明した経由命令情報を含ませても良い。
【０１８４】
たとえば、フィードバック提示情報生成部１６が、フィードバック関係に関する情報、経由外部構成要素情報およびシート経由情報を含ませたフィードバック提示情報を生成した場合には、図１８に示す出力画面が表示される。
【０１８５】
＜実施の形態５＞
図１４の例では、出力起点変数ｔｍｐ３と入力起点変数ｔｍｐ２との間で検出されたフィードバック関係は、一つのみであった。しかしながら、プラントモデル定義情報によっては（プラント構成によっては）、図１１の処理フローにより、指定された出力起点変数と指定された入力起点変数との間で、２以上のフィードバック関係が検出されるケースも想定される。
【０１８６】
当該２以上のフィードバック関係が検出された場合に、本実施の形態では、フィードバック提示情報生成部１６は、各フィードバック関係に対して優先度を付与する。より具体的に、本実施の形態では、フィードバック提示情報生成部１６は、シート経由数および／または外部構成要素の経由数に依存して、各フィードバック関係に対して優先度を付与する。
【０１８７】
フィードバック提示情報生成部１６が、出力起点変数ＯＯＶと入力起点変数ＩＯＶとの間で複数のフィードバック関係を検出したとする。当該場合には、フィードバック提示情報生成部１６は、ＰＬＣ入出力リストの「シート経路」の欄、シート定義情報または実施の形態２で説明したシート経由情報などを、参照する。そして、当該参照により、フィードバック提示情報生成部１６は、各フィードバック関係に対して、出力起点変数ＯＯＶと入力起点変数ＩＯＶに至るまでに経由するシートの数（シート経由数）を各々検出する。そして、フィードバック提示情報生成部１６は、シート経由数がより少ないフィードバック関係に対して、より高い優先度を付与する。
【０１８８】
または、出力起点変数ＯＯＶと入力起点変数ＩＯＶとの間で複数のフィードバック関係を検出した場合には、フィードバック提示情報生成部１６は、プラントモデル定義情報または実施の形態４で説明した外部構成要素情報を、参照する。そして、当該参照により、フィードバック提示情報生成部１６は、各フィードバック関係に対して、出力起点変数ＯＯＶと入力起点変数ＩＯＶに至るまでに経由する外部構成要素の数（外部構成要素経由数）を各々検出する。そして、フィードバック提示情報生成部１６は、外部構成要素経由数がより少ないフィードバック関係に対して、より高い優先度を付与する。
【０１８９】
または、出力起点変数ＯＯＶと入力起点変数ＩＯＶとの間で複数のフィードバック関係を検出した場合には、フィードバック提示情報生成部１６は、上記により、各フィードバック関係に対して、シート経由数および外部構成要素経由数を各々検出する。そして、フィードバック提示情報生成部１６は、シート経由数および外部構成要素経由数の合計数がより少ないフィードバック関係に対して、より高い優先度を付与する。
【０１９０】
ここで、フィードバック提示情報生成部１６は、最も優先度の高いフィードバック関係のみを表示させるために、当該最も優先度の高いフィードバック関係のみを対象に、画面表示管理部１３に送信するフィードバック提示情報を生成しても良い。
【０１９１】
または、優先度の高い順から所定番目までのフィードバック関係を対象に、当該優先度の情報も付加して、フィードバック提示情報を生成しても良い。または、フィードバック提示情報生成部１６は、検出された複数のフィードバック関係の各々を対象に、各優先度の情報も付加して、フィードバック提示情報を生成しても良い。これらの場合には、たとえば、ユーザの指示により、どの優先度のフィードバック関係をプログラム図に表示させるか選択できる。一例として、ユーザの指示により、優先度の高いフィードバック関係から順に、プログラム図の表示を切り替えることができる。
【０１９２】
以上のように、本実施の形態に係るプログラム図表示装置では、指定された出力起点変数と指定された入力起点変数との間で、２以上のフィードバック関係が検出された場合には、フィードバック提示情報生成部１６は、各フィードバック関係に対して優先度を付与している。
【０１９３】
したがって、優先度に基づいて、表示されるプログラム図にどのフィードバック関係を表示させるかの選択が可能となる。これにより、一画面のプログラム図表示において、複数のフィードバック関係が提示されることを防止でき、出力画面の表示の煩雑化を防止できる。
【０１９４】
たとえば、シート経由数および／または外部構成要素経由数が少ないフィードバック関係ほど、高い優先度を付与し、優先度の高いフィードバック関係ほど、優先的に表示させる場合には、より短いフィードバック関係を優先的に表示することとなる。
【０１９５】
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
【符号の説明】
【０１９６】
１１  入力操作受理部、１２  画面出力部、１３  画面表示管理部、１４  シート定義情報保管部、１５  変数定義情報保管部、１６  フィードバック提示情報生成部、１７  プラントモデル定義情報保管部。
【図１】
2013148947.tif 000003
【図２】
2013148947.tif 000004
【図３】
2013148947.tif 000005
【図４】
2013148947.tif 000006
【図５】
2013148947.tif 000007
【図６】
2013148947.tif 000008
【図７】
2013148947.tif 000009
【図８】
2013148947.tif 000010
【図９】
2013148947.tif 000011
【図１０】
2013148947.tif 000012
【図１１】
2013148947.tif 000013
【図１２】
2013148947.tif 000014
【図１３】
2013148947.tif 000015
【図１４】
2013148947.tif 000016
【図１５】
2013148947.tif 000017
【図１６】
2013148947.tif 000018
【図１７】
2013148947.tif 000019
【図１８】
2013148947.tif 000020