(57)【要約】【課題】簡素な構成で設計者の作業負担を軽減し、制御プログラムの作成時間を大幅に短縮でき、ＰＬＣメーカのプログラム様式によらず動作可能な汎用性に優れた制御プログラムを作成することができる制御プログラム作成支援ツール及び制御プログラムの作成方法を提供する。【解決手段】各対象機器の仕様データがリスト化された対象機器リスト１２と、制御プログラム１１が機能毎にモジュール化され、制御プログラム１１の作成に必要なパラメータがリスト化されており、パラメータの一部が対象機器リスト１２を参照する形式で記述された機能テンプレート１３と、対象機器リスト１２と機能テンプレート１３から、制御プログラム１１に変換可能なＸＭＬファイル１８の基となる機能リスト１９を作成する機能リスト作成手段２０と、機能リスト作成手段２０で作成された機能リスト１９から、ＸＭＬファイル１８を作成するＸＭＬファイル作成手段２１とを有する。【選択図】図１
2020086638.tif 000002
【特許請求の範囲】
【請求項１】
制御の対象となる対象機器の動作を制御する制御プログラムの作成を支援する制御プログラム作成支援ツールであって、
前記各対象機器の仕様データがリスト化された対象機器リストと、
前記制御プログラムが機能毎にモジュール化され、前記制御プログラムの作成に必要なパラメータがリスト化されており、該パラメータの一部が前記対象機器リストを参照する形式で記述された機能テンプレートと、
前記対象機器リストと前記機能テンプレートから、前記制御プログラムに変換可能なＸＭＬファイルの基となる機能リストを作成する機能リスト作成手段と、
該機能リスト作成手段で作成された前記機能リストから、前記ＸＭＬファイルを作成するＸＭＬファイル作成手段とを有することを特徴とする制御プログラム作成支援ツール。
【請求項２】
請求項１記載の制御プログラム作成支援ツールにおいて、前記機能テンプレートは、前記対象機器リストの行及び列を指定することにより、前記対象機器リストの中から必要な前記仕様データを選択することを特徴とする制御プログラム作成支援ツール。
【請求項３】
請求項１又は２記載の制御プログラム作成支援ツールにおいて、前記機能テンプレートには、前記対象機器リストの中から、指定した前記仕様データを繰返し読込むことを設定する繰返し指定子が記述可能であることを特徴とする制御プログラム作成支援ツール。
【請求項４】
制御の対象となる対象機器の動作を制御する制御プログラムの作成方法であって、
前記各対象機器の仕様データがリスト化された対象機器リストから、前記制御プログラムの作成に必要なパラメータの基となる前記仕様データを読み込んで、前記制御プログラムに変換可能なＸＭＬファイルの基となる機能リストを作成し、該機能リストから前記ＸＭＬファイルを作成して、該ＸＭＬファイルを変換して前記制御プログラムを作成することを特徴とする制御プログラムの作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、産業機器等の各種機器の制御に用いられるプログラマブルロジックコントローラ（以下、ＰＬＣという）で実行される制御プログラムの作成を支援する制御プログラム作成支援ツール及び制御プログラムの作成方法に関する。
【背景技術】
【０００２】
従来、工場や各種社会インフラ設備等のシステムの監視及びプロセスの制御は、制御装置として用いられるＰＬＣから、制御の対象となる対象機器へ動作指示が送られることによって行われている。このとき、ＰＬＣは、制御プログラム（ＰＬＣプログラム）を実行することで、動作指示を生成するが、この制御プログラムの作成（プログラミング）には特別な知識を必要としていた。例えば、ラダーダイアグラム言語を主体とする従来の制御プログラムは、ＰＬＣメーカ独自の応用命令を使用しており、特に複雑な制御プログラムは可読性に欠け、第三者が制御プログラムの内容を理解することは困難で、エラー（バグ）のチェック（修正）やトラブルシューティングに時間を要するという問題があった。また、ストラクチャードテキスト（ＳＴ）言語やファンクションブロックダイアグラム（ＦＢＤ）言語等の構造化プログラムを用いて、制御プログラムを手入力（手動）で作成する場合、入力ミスが発生し易く、全てのエラーが修正できるまで、作成（修正）した制御プログラムの変換（コンパイル）とエラーの修正を繰返し行わなければならず、設計者（プログラム作成者）の負担となっていた。
これに対し、制御プログラムの作成における設計者の負担を軽減するものとして、例えば、特許文献１には、制御プログラム中の制御（処理）を部品化し、それらを登録することにより、制御プログラムの作成工程の一部を自動化するプログラム開発支援装置及びその方法が提案されている。また、特許文献２のシミュレーションプログラム生成装置、シミュレーションプログラム生成方法、及びプログラムでは、設備機器レイアウトと、設備機器リストとに基づいて設備機器モデル部品を読み出し、パラメータ・リスト関連定義に従って設備機器リストから読み出した設定パラメータを設備機器モデル部品に設定することにより、シミュレーションプログラムを自動生成している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２０１４／１３６１８５号
【特許文献２】特開２０１６−１６４７５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１では、流用元プログラムの中から、部品化する部品化対象プログラムを選択し、流用先プログラムに組み込むので、流用元プログラム及び流用先プログラムを必要とし、一から制御プログラムを作成することはできない。また、部品化対象プログラムと流用先プログラムとの間で変数を統一する必要があり、そのために部品化対象プログラムに存在する変数を解析し、流用先プログラムで使用されている変数との対応付けを行って変数を置換する作業を行わなければならず、プログラム開発支援装置の構成が複雑になるという問題がある。さらに、流用元プログラムや流用先プログラムが、ＰＬＣメーカの制御プログラム作成ツールで作成されている場合、それぞれのプログラムが対応するＰＬＣメーカが異なれば、流用元プログラムの一部を流用して流用先プログラムに組合せることは困難である。従って、流用元プログラム及び流用先プログラムとして利用できる制御プログラムの組合せは限定されており、このようにして作成された制御プログラムも、特定のＰＬＣメーカに固有の制御プログラムとなり、汎用性に欠けるという問題がある。また、特許文献２では、パラメータ・リスト関連定義は、例えばストラクチャードテキスト（ＳＴ）言語によるプログラムで作成され、設備機器モデル部品は、例えばファンクションブロックダイアグラム（ＦＢＤ）言語で構築されている。このため、動作の異なる設備機器を新たに設備機器モデルとして登録する場合には、これらのプログラミング言語を用いて、パラメータ・リスト関連定義及び設備機器モデル部品を作成する必要があり、設計者には一定のスキルが要求され、作成にも手間がかかるという問題がある。なお、特許文献２では、シミュレーションプログラム自動生成部でプログラムシートに記述されたプログラムを、ＰＬＣにおいて規格化された世界標準フォーマット（ＰＬＣｏｐｅｎ  ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｇｕａｇｅ））に基づいた中間ファイルに変換する中間ファイル生成部を備えることにより、様々なメーカのＰＬＣ用プログラミングツールにシミュレーションプログラムを読み込ませることができる。しかし、ＸＭＬファイルはサイズが大きく、可読性が低いため、エラーの発見に時間がかかるという問題がある。そこで、特許文献２では、中間ファイル（ＸＭＬファイル）に変換したシミュレーションプログラムを一旦、ＰＬＣ用プログラミングツールに読み込ませ、シミュレーションプログラムの内容を表示させて、シミュレーションプログラム編集部によって変更（修正）を行っており、プログラムを完成させるまでの手順が煩雑で、作業の効率性に欠けるという問題がある。
【０００５】
本発明はかかる事情に鑑みてなされたもので、簡素な構成で、設計者の作業負担を軽減し、制御プログラムの作成時間を大幅に短縮できると共に、ＰＬＣメーカのプログラム様式によらず動作可能な汎用性に優れた制御プログラムを作成することができる制御プログラム作成支援ツール及び制御プログラムの作成方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
前記目的に沿う第１の発明に係る制御プログラム作成支援ツールは、制御の対象となる対象機器の動作を制御する制御プログラムの作成を支援する制御プログラム作成支援ツールであって、
前記各対象機器の仕様データがリスト化された対象機器リストと、
前記制御プログラムが機能毎にモジュール化され、前記制御プログラムの作成に必要なパラメータ（変数）がリスト化されており、該パラメータの一部が前記対象機器リストを参照する形式で記述された機能テンプレートと、
前記対象機器リストと前記機能テンプレートから、前記制御プログラムに変換可能なＸＭＬファイルの基となる機能リストを作成する機能リスト作成手段と、
該機能リスト作成手段で作成された前記機能リストから、前記ＸＭＬファイルを作成するＸＭＬファイル作成手段とを有する。
【０００７】
第１の発明に係る制御プログラム作成支援ツールにおいて、前記機能テンプレートは、前記対象機器リストの行及び列を指定することにより、前記対象機器リストの中から必要な前記仕様データを選択することが好ましい。
【０００８】
第１の発明に係る制御プログラム作成支援ツールにおいて、前記機能テンプレートには、前記対象機器リストの中から、指定した前記仕様データを繰返し読込むことを設定する繰返し指定子が記述可能であることが好ましい。
【０００９】
前記目的に沿う第２の発明に係る制御プログラムの作成方法は、制御の対象となる対象機器の動作を制御する制御プログラムの作成方法であって、
前記各対象機器の仕様データがリスト化された対象機器リストから、前記制御プログラムの作成に必要なパラメータの基となる前記仕様データを読み込んで、前記制御プログラムに変換可能なＸＭＬファイルの基となる機能リストを作成し、該機能リストから前記ＸＭＬファイルを作成して、該ＸＭＬファイルを変換して前記制御プログラムを作成する。
【発明の効果】
【００１０】
第１の発明に係る制御プログラム作成支援ツールは、各対象機器の仕様データがリスト化された対象機器リストと、制御プログラムが機能毎にモジュール化され、制御プログラムの作成に必要なパラメータがリスト化されており、パラメータの一部が対象機器リストを参照する形式で記述された機能テンプレートから、制御プログラムに変換可能なＸＭＬファイルの基となる機能リストを作成するので、設計者は、対象機器リストに対し、制御プログラムの作成に必要なパラメータ（変数）の基となる仕様データを入力するだけで、自動的に機能リストが作成され短時間で簡単に制御プログラムを得ることができ、直接、プログラミング言語を入力する必要がなく、設計者の負担を軽減することができる。また、ＸＭＬファイルを作成する前に、機能リスト上でバグをチェックすることができるので、機能リストからＸＭＬファイルへの変換（コンパイル）をバグのない状態で行うことができ、変換作業を繰返し行う必要がなく、制御プログラムの作成時間を短縮することができる。さらに、最終的に作成されるＸＭＬファイルはＰＬＣにおいて規格化された標準フォーマットで記述されているので、様々なメーカのＰＬＣに対応することができ、汎用性に優れる。
【００１１】
機能テンプレートが、対象機器リストの行及び列を指定することにより、対象機器リストの中から必要な仕様データを選択する場合、機能テンプレートの記述を一般化することができ、対象機器リストのみを変更するだけで、異なる対象機器の制御プログラムの作成に対応することが可能となり、汎用性に優れる。
【００１２】
機能テンプレートに、対象機器リストの中から、指定した仕様データを繰返し読込むことを設定する繰返し指定子が記述可能である場合、記述量の少ない機能テンプレートを使用して、複数の対象機器の制御に対応した制御プログラムの作成に対応することができ、汎用性を向上させることができる。
【００１３】
第２の発明に係る制御プログラムの作成方法は、各対象機器の仕様データがリスト化された対象機器リストから、制御プログラムの作成に必要なパラメータの基となる仕様データを読み込んで、制御プログラムに変換可能なＸＭＬファイルの基となる機能リストを作成し、機能リストからＸＭＬファイルを作成して、ＸＭＬファイルを変換して制御プログラムを作成するので、グラフィック言語やテキスト言語を用いて複雑なプログラムを作成する必要や、サイズが大きく可読性に欠けるＸＭＬファイルを直接作成する必要がなく、手入力ミスを減らして制御プログラムの作成時間を短縮でき、バグの発見（修正）も容易で、設計者の負担を大幅に軽減できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施の形態に係る制御プログラム作成支援ツールの構成を示す構成図である。
【図２】同制御プログラム作成支援ツールを用いた制御プログラムの作成方法を示すフローチャートである。
【図３】同制御プログラム作成支援ツールで使用する対象機器リストを示す説明図である。
【図４】同制御プログラム作成支援ツールで作成される機能テンプレートをグラフィック言語で記述した説明図である。
【図５】同制御プログラム作成支援ツールで作成される機能テンプレートを示す説明図である。
【発明を実施するための形態】
【００１５】
続いて、添付した図面を参照しつつ、本発明を具体化した実施の形態につき説明し、本発明の理解に供する。本発明の一実施の形態に係る制御プログラム作成支援ツール１０は、図１に示すように、ＰＬＣによる制御の対象となる各種の対象機器の動作を制御する制御プログラム１１の作成を支援するものである。
まず、制御プログラム作成支援ツール１０は、各対象機器の仕様データがリスト化された対象機器リスト１２を備えている。制御プログラム作成支援ツール１０を用いて制御プログラム１１を作成する際には、図２に示すように、まず対象機器リスト１２を作成する（第１のステップ：Ｓ１）。この対象機器リスト１２は、例えば公知の表計算ソフトウェアを用いることにより容易に作成することができる。対象機器がモータの場合の対象機器リスト１２は、例えば図３のようになるが、対象機器リスト１２に記載される仕様データは、対象機器の種類及び組合せ等によって適宜、選択することができる。
【００１６】
次に、制御プログラム作成支援ツール１０は、制御プログラム１１が機能（タスク）毎にモジュール化され、制御プログラム１１の作成に必要なパラメータ（変数）がリスト化された機能テンプレート１３を備えている。この機能テンプレート１３は、ＰＬＣのプログラミングに関する標準規格ＩＥＣ６１１３１−３（ＪＩＳＢ３５０３）で規定された、５つの言語（３種類のグラフィック言語と２種類のテキスト言語）による記述のいずれかに対応するように作成される（図２の第２のステップ：Ｓ２）。例えば、ある機能をグラフィック言語の１つであるファンクションブロックダイアグラム（ＦＢＤ）言語で記述すると、図４のようになる。従来のＦＢＤ言語によるプログラミングでは、複数のファンクションブロック１５〜１７の配置と接続状態をグラフィカルに記述し、各ファンクションブロック１５〜１７のインスタンス名、命令（処理）、１個以上の入力パラメータ及び１個の出力パラメータを設定する。これに対し、機能テンプレート１３では、直接、プログラミング言語を用いることなく、図５に示すように、プログラミングに必要な各ファンクションブロック１５〜１７のインスタンス名１〜インスタンス名３、命令１〜命令３、左上の頂点の座標（Ｘ１，Ｙ１）〜（Ｘ３，Ｙ３）、幅Ｗ１〜Ｗ３、高さＨ１〜Ｈ３、それぞれの入力パラメータ及び出力パラメータとなる変数１〜変数６等のパラメータのみをリスト化して記述している。この中で、命令１〜命令３、変数１〜変数６は対象機器リスト１２を参照する形式で記述される。例えば、公知の表計算ソフトウェアを用いて機能テンプレート１３を作成し、その中で対象機器リスト１２の行及び列を指定することにより、対象機器リスト１２の中から必要な仕様データを容易に選択し、制御プログラム１１の作成に必要なパラメータとして読込むことができる。これにより、機能テンプレート１３の記述を一般化することができ、対象機器リスト１２のみを変更するだけで、異なる対象機器の制御プログラムの作成に対応することが可能となる。なお、ファンクションブロックの数、配置、各ファンクションブロックの入力パラメータの数、命令の内容等は、対象機器の種類、配置、及び動作等に応じて、適宜、選択することができる。また、機能テンプレート１３には、対象機器リスト１２の中から、指定した仕様データを繰返し読込むことを設定する繰返し指定子が記述可能であることが好ましい。これにより、複数の対象機器が組合されたプロセスライン等に対する制御プログラムを作成する場合でも、機能テンプレート１３の記述量を削減し、汎用性を高めることができる。本実施の形態では、ＦＢＤ言語による記述に対応した機能テンプレート１３について説明したが、機能テンプレート１３の記述の基となるプログラミング言語は、各機能の処理内容に応じて、標準規格で規定された５つの言語の中から最適な言語を選択することができ、例えばストラクチャードテキスト（ＳＴ）言語等のテキスト言語による記述に対応した機能テンプレートを用いることもできる。そして、異なるプログラミング言語に対応した複数の機能テンプレートを組合せて１つの制御プログラムを作成することができる。
【００１７】
次に、制御プログラム作成支援ツール１０は、対象機器リスト１２と機能テンプレート１３から、制御プログラム１１に変換可能なＸＭＬファイル１８の基となる機能リスト１９を作成する機能リスト作成手段２０を備えている。この機能リスト作成手段２０は、例えば、ビジュアルベーシック等のプログラミング言語で作成されたプログラムであり、機能テンプレート１３の記述に従って、対象機器リスト１２から必要なパラメータとなる仕様データを読込み、機能リスト１９を作成する（図２の第３のステップ：Ｓ３）。この機能リスト１９は、公知の表計算ソフトウェアで読込むことが可能なファイルとして作成することができる。このように作成された機能リスト１９は、従来の煩雑なプログラムとは異なり、各機能の動作（処理）が一覧表示されたものであり、可読性に優れるので、短時間でバグのチェックを行って、必要な修正を簡単に行うことができる。
【００１８】
次に、制御プログラム作成支援ツール１０は、機能リスト１９から、ＸＭＬファイル１８を作成するＸＭＬファイル作成手段２１を備えている。このＸＭＬファイル作成手段２１は、例えば、ビジュアルベーシック等のプログラミング言語で作成されたプログラムであり、機能リスト１９の記述を基にして、制御プログラム１１に変換可能なＸＭＬファイル１８を作成する（図２の第４のステップ：Ｓ４）。このＸＭＬファイル１８は、ＰＬＣにおいて規格化された世界標準フォーマットに従って記載されるので、各メーカのＰＬＣ専用制御プログラム作成ツール２２を用いることにより、最終的に各メーカのＰＬＣで動作可能な制御プログラム１１が得られる（図２の第５のステップ：Ｓ５）。最終的に得られる制御プログラム１１は、ＦＢＤ言語やＳＴ言語等のプログラミング言語に変換されたものとなるが、これは機能テンプレート１３が、どのプログラミング言語の記述に対応して作成されたかに依存する。
【００１９】
本発明の一実施の形態に係る制御プログラムの作成方法では、上述したように、各対象機器の仕様データがリスト化された対象機器リスト１２から、制御プログラム１１の作成に必要なパラメータの基となる仕様データを読み込んで、制御プログラム１１に変換可能なＸＭＬファイル１８の基となる機能リスト１９（中間ファイル）を作成する。そして、機能リスト１９からＸＭＬファイル１８を作成し、ＸＭＬファイル１８を変換して制御プログラム１１を作成する。従って、グラフィック言語やテキスト言語を用いて複雑なプログラムを作成する必要や、サイズが大きく可読性に欠けるＸＭＬファイル１８を直接作成する必要がなく、手入力ミスを減らすことができる。また、ＸＭＬファイル１８に変換する前の機能リスト１９を利用することにより、容易にバグを発見（修正）することができ、設計者の負担も大幅に軽減できる。さらに、ＸＭＬファイル１８から制御プログラム１１への変換（コンパイル）には時間がかかるが、機能リスト１９上でバグをチェックすることにより、機能リスト１９からＸＭＬファイル１８への変換をバグのない状態で行うことが可能となり、変換作業を繰返し行う必要がなくなる。以上のことから、制御プログラム１１の作成時間を短縮することができる。
なお、本発明の制御プログラム作成支援ツール及び制御プログラムの作成方法が対象とする制御プログラムは、実際に各種機器の制御に用いられるものであり、シミュレーションプログラムは含まない。具体的には、上記の制御プログラム１１は、例えば工場等の自動機械の制御に使われるほか、エレベーター、自動ドア、ボイラー等の様々な機器の制御に使用される。
【００２０】
以上、本発明の実施の形態を説明したが、本発明は何ら上記した実施の形態に記載の構成に限定されるものではなく、特許請求の範囲に記載されている事項の範囲内で考えられるその他の実施の形態や変形例も含むものである。
例えば、対象機器リストの作成と機能テンプレートの作成の順序は、特に限定されるものではなく、機能リスト作成手段による機能リストの作成前に、適宜、行うことができる。また、機能テンプレートは、必要に応じて、対象機器リスト以外の各種リストから必要なパラメータ（設定値）となるデータを読込むこともできる。
【符号の説明】
【００２１】
１０：制御プログラム作成支援ツール、１１：制御プログラム、１２：対象機器リスト、１３：機能テンプレート、１５〜１７：ファンクションブロック、１８：ＸＭＬファイル、１９：機能リスト、２０：機能リスト作成手段、２１：ＸＭＬファイル作成手段、２２：ＰＬＣ専用制御プログラム作成ツール
【図１】
2020086638.tif 000003
【図２】
2020086638.tif 000004
【図３】
2020086638.tif 000005
【図４】
2020086638.tif 000006
【図５】
2020086638.tif 000007