IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 三菱電機株式会社の特許一覧

特許7693134シーケンスロジックの作成方法、作成システムおよびプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-06-06
(45)【発行日】2025-06-16
(54)【発明の名称】シーケンスロジックの作成方法、作成システムおよびプログラム
(51)【国際特許分類】
   G05B 19/05 20060101AFI20250609BHJP
【FI】
G05B19/05 B
【請求項の数】 9
(21)【出願番号】P 2024561624
(86)(22)【出願日】2024-04-30
(86)【国際出願番号】 JP2024016701
【審査請求日】2024-10-17
【早期審査対象出願】
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】古志 亘
(72)【発明者】
【氏名】山口 優太
(72)【発明者】
【氏名】角井 康浩
【審査官】影山 直洋
(56)【参考文献】
【文献】特開2017-091458(JP,A)
【文献】特許第5769900(JP,B2)
【文献】特開2003-223204(JP,A)
【文献】特許第7241989(JP,B1)
【文献】特許第7374380(JP,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/05
(57)【特許請求の範囲】
【請求項1】
制御装置上で動作するシーケンスロジックの作成方法であって、
複数の制御装置間で共通に実行される処理をグラフィカルプログラミング言語で記述した共通シートを演算装置により作成するステップと、
前記複数の制御装置の各々で個別に実行される処理を前記グラフィカルプログラミング言語で記述した個別シートを前記演算装置により作成するステップと、
作成された前記共通シートおよび前記個別シートの一覧を表示するステップと、
前記共通シートおよび前記個別シートの一覧から選択された複数のシートを、前記制御装置における実行順序に従って組み合わせることにより、前記シーケンスロジックを前記演算装置により作成するステップとを備え、
前記シーケンスロジックを作成するステップは、前記制御装置の実行周期における前記複数のシートの実行順序を設定するステップを含み、
前記複数のシートの実行順序を設定するステップは、前記制御装置のタスクごとにシートの実行順序を設定するステップを含み、
前記タスクごとにシートの実行順序を設定するステップは、
1つのタスクの実行順序を指定するための階層構造を設定するステップと、
前記階層構造の各階層に、シートまたはグループを配置するステップとを含み、
前記グループは、前記制御装置の実行周期毎に実行されるシートを保存する通常グループ、前記制御装置の実行周期毎に時分割で順番に実行されるシートを保存する時分割グループ、および、前記時分割グループに保存されるシートのうち、同じ実行周期にて実行されるシートを保存する時分割ルートグループのうちのいずれかであり、前記時分割ルートグループは、前記時分割グループの直下の階層に配置され、
前記タスクごとにシートの実行順序を設定するステップは、前記通常グループ、および前記時分割ルートグループの各々に、対応するシートを配置するステップをさらに含む、シーケンスロジックの作成方法。
【請求項2】
前記シーケンスロジックを作成するステップは、
前記制御装置が管理する信号および整定値を設定するステップと、
各シートに含まれる入力部品および出力部品に対して、前記信号および前記整定値を割り当てるステップとをさらに含み、
前記信号および前記整定値を割り当てるステップは、前記制御装置の管理から外された信号および整定値について、前記入力部品および前記出力部品に対する割り当てを解除するステップを含む、請求項1に記載のシーケンスロジックの作成方法。
【請求項3】
作成された前記シーケンスロジックを前記演算装置により確認するステップをさらに備え、
前記シーケンスロジックを確認するステップは、前記複数のシート間で、入力部品および出力部品の対応関係を検索するステップを含む、請求項1または2に記載のシーケンスロジックの作成方法。
【請求項4】
前記入力部品および出力部品の対応関係を検索するステップは、
検索対象の部品と対応関係にある部品が配置されているシートの識別情報を表示するステップと、
前記対応関係にある部品が配置されているシートを表示するとともに、前記対応関係にある部品および当該部品に接続される信号線を強調表示するステップとを含む、請求項に記載のシーケンスロジックの作成方法。
【請求項5】
作成された前記シーケンスロジックを前記演算装置により確認するステップをさらに備え、
前記シーケンスロジックを確認するステップは、1シート内における部品の接続関係を追跡するステップを含む、請求項1または2に記載のシーケンスロジックの作成方法。
【請求項6】
前記部品の接続関係を追跡するステップは、追跡対象の部品と当該部品に接続される信号線とを強調表示するステップを含む、請求項に記載のシーケンスロジックの作成方法。
【請求項7】
前記共通シートおよび前記個別シートの各々は、前記グラフィカルプログラミング言語で記述された入力部品、演算部品および出力部品の視認性を担保することができるサイズを有する、請求項1または2に記載のシーケンスロジックの作成方法。
【請求項8】
制御装置上で動作するシーケンスロジックの作成システムであって、
演算装置と、
前記演算装置によって実行されるプログラムを記憶する記憶装置とを備え、
前記演算装置は、前記プログラムに従って、
複数の制御装置間で共通に実行される処理をグラフィカルプログラミング言語で記述した共通シートをコンピュータにより作成し、
前記複数の制御装置の各々で個別に実行される処理を前記グラフィカルプログラミング言語で記述した個別シートを作成し、
作成された前記共通シートおよび前記個別シートの一覧を表示し、
前記共通シートおよび前記個別シートの一覧から選択された複数のシートを、前記制御装置における実行順序に従って組み合わせることにより、前記シーケンスロジックを作成するように構成され、
前記演算装置は、前記シーケンスロジックを作成する場合には、前記制御装置の実行周期における前記複数のシートの実行順序を、前記制御装置のタスクごと設定するように構成され、
前記演算装置は、
1つのタスクの実行順序を指定するための階層構造を設定し、
前記階層構造の各階層に、シートまたはグループを配置し、
前記グループは、前記制御装置の実行周期毎に実行されるシートを保存する通常グループ、前記制御装置の実行周期毎に時分割で順番に実行されるシートを保存する時分割グループ、および、前記時分割グループに保存されるシートのうち、同じ実行周期にて実行されるシートを保存する時分割ルートグループのうちのいずれかであり、前記時分割ルートグループは、前記時分割グループの直下の階層に配置され、
前記演算装置は、前記通常グループ、および前記時分割ルートグループの各々に、対応するシートを配置する、シーケンスロジックの作成システム。
【請求項9】
制御装置上で動作するシーケンスロジックの作成方法をコンピュータに実施させるためのプログラムであって、
前記シーケンスロジックの作成方法は、
複数の制御装置間で共通に実行される処理をグラフィカルプログラミング言語で記述した共通シートを作成するステップと、
前記複数の制御装置の各々で個別に実行される処理を前記グラフィカルプログラミング言語で記述した個別シートを作成するステップと、
作成された前記共通シートおよび前記個別シートの一覧を表示するステップと、
前記共通シートおよび前記個別シートの一覧から選択された複数のシートを、前記制御装置における実行順序に従って組み合わせることにより、前記シーケンスロジックを作成するステップとを備え、
前記シーケンスロジックを作成するステップは、前記制御装置の実行周期における前記複数のシートの実行順序を設定するステップを含み、
前記複数のシートの実行順序を設定するステップは、前記制御装置のタスクごとにシートの実行順序を設定するステップを含み、
前記タスクごとにシートの実行順序を設定するステップは、
1つのタスクの実行順序を指定するための階層構造を設定するステップと、
前記階層構造の各階層に、シートまたはグループを配置するステップとを含み、
前記グループは、前記制御装置の実行周期毎に実行されるシートを保存する通常グループ、前記制御装置の実行周期毎に時分割で順番に実行されるシートを保存する時分割グループ、および、前記時分割グループに保存されるシートのうち、同じ実行周期にて実行されるシートを保存する時分割ルートグループのうちのいずれかであり、前記時分割ルートグループは、前記時分割グループの直下の階層に配置され、
前記タスクごとにシートの実行順序を設定するステップは、前記通常グループ、および前記時分割ルートグループの各々に、対応するシートを配置するステップをさらに含む、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、制御装置上で動作するシーケンスロジックの作成方法、作成システムおよびプログラムに関する。
【背景技術】
【0002】
制御装置は、一種のコンピュータであり、ユーザが作成した制御プログラムを実行する。制御プログラムには、制御装置上で動作するシーケンスロジックを表すシーケンスプログラムが含まれている。シーケンスプログラムは、通常、制御装置とは別に用意された装置により作成される。
【0003】
このような装置として、特開平5-19816号公報(特許文献1)、特開2000-47716号公報(特許文献2)、および特開2009-9314号公報(特許文献3)には、シーケンスプログラムを編集するエディタ装置が開示されている。エディタ装置の表示画面には、シーケンスロジック作成用画面が表示される。この作成用画面には、ラダー図形式のプログラムが表示される。ラダー図に記述された部品記号または結線記号によって、制御装置の制御内容が特定される。
【先行技術文献】
【特許文献】
【0004】
【文献】特開平5-19816号公報
【文献】特開2000-47716号公報
【文献】特開2009-9314号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来技術では、制御装置上で動作するシーケンスロジックの規模が大きい場合に、視認性に欠けるという問題がある。
【0006】
また、複数の制御装置のシーケンスロジックを作成する場面では、制御装置間の制御内容の違いを考慮して、制御装置毎に個別にシーケンスロジックが作成される。複数の制御装置のシーケンスロジックに共通する内容がある場合においても、全ての制御装置のシーケンスロジックごとにシーケンスロジック作成用画面を表示させて、変更部分を修正する作業が行われる。そのため、修正作業に手間がかかることが懸念される。
【0007】
本開示は、制御装置上で動作するシーケンスロジックの作成を効率化する技術を提供することである。
【課題を解決するための手段】
【0008】
本開示の作成方法は、制御装置上で動作するシーケンスロジックの作成方法であって、複数の制御装置間で共通に実行される処理をグラフィカルプログラミング言語で記述した共通シートを演算装置により作成するステップと、複数の制御装置の各々で個別に実行される処理をグラフィカルプログラミング言語で記述した個別シートを演算装置により作成するステップと、作成された共通シートおよび個別シートの一覧を表示するステップと、共通シートおよび個別シートの一覧から選択された複数のシートを、制御装置における実行順序に従って組み合わせることにより、シーケンスロジックを演算装置により作成するステップとを備える。
【0009】
本開示の作成システムは、制御装置上で動作するシーケンスロジックの作成システムであって、演算装置と、演算装置によって実行されるプログラムを記憶する記憶装置とを備える。演算装置は、プログラムに従って、複数の制御装置間で共通に実行される処理をグラフィカルプログラミング言語で記述した共通シートをコンピュータにより作成する。演算装置は、複数の制御装置の各々で個別に実行される処理をグラフィカルプログラミング言語で記述した個別シートを作成し、作成された共通シートおよび個別シートの一覧を表示する。演算装置は、共通シートおよび個別シートの一覧から選択された複数のシートを、制御装置における実行順序に従って組み合わせることにより、シーケンスロジックを作成する。
【0010】
本開示のプログラムは、制御装置上で動作するシーケンスロジックの作成方法をコンピュータに実施させるためのプログラムである。シーケンスロジックの作成方法は、複数の制御装置間で共通に実行される処理をグラフィカルプログラミング言語で記述した共通シートを作成するステップと、複数の制御装置の各々で個別に実行される処理をグラフィカルプログラミング言語で記述した個別シートを作成するステップと、作成された共通シートおよび個別シートの一覧を表示するステップと、共通シートおよび個別シートの一覧から選択された複数のシートを、制御装置における実行順序に従って組み合わせることにより、シーケンスロジックを作成するステップとを備える。
【発明の効果】
【0011】
本開示によれば、制御装置上で動作するシーケンスロジックの作成を効率化する技術を提供することができる。
【図面の簡単な説明】
【0012】
図1】実施の形態に従うシーケンスロジックの作成システムの適用例を示す図である。
図2図1に示した作成システムおよび保護制御装置のハードウェア構成例を示す模式図である。
図3】作成システムによる、シーケンスロジックの作成の全体的な流れを示すフローチャートである。
図4】実施の形態1に従う作成システムの機能構成を示すブロック図である。
図5図3のステップS10における処理の流れを示すフローチャートである。
図6】シーケンスロジック作成画面の一例を示す図である。
図7図6に示したシート一覧表示領域の構成例を説明する図である。
図8】シーケンスロジックの作成手順の一例を示す図である。
図9】実施の形態2に従う作成システムの機能構成を示すブロック図である。
図10図3のステップS20における処理の流れを示すフローチャートである。
図11】信号および整定値の設定画面の一例を示す図である。
図12】マッピングの手順を説明する図である。
図13】実施の形態3に従う作成システムの機能構成を示すブロック図である。
図14図3のステップS30における処理の流れを示すフローチャートである。
図15】実行順序設定部の動作を説明する図である。
図16】1つのグループに配置される2つのシートの一例を示す図である。
図17図16に示した第1および第2のシートの実行順序を説明する図である。
図18】実行順序ファイルの一例を示す図である。
図19】実施の形態4に従う作成システムの機能構成を示すブロック図である。
図20】シート作図設定部の追跡機能を説明するフローチャートである。
図21】シート作図設定部の追跡機能の一例を説明する図である。
図22】シート作図設定部の検索機能を説明するフローチャートである。
図23】シート作図設定部の検索機能の一例を説明する図である。
図24】シート作図設定部の検索機能の一例を説明する図である。
【発明を実施するための形態】
【0013】
以下、図面を参照しつつ、本開示の実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。また、各実施の形態および各変形例等は、適宜選択的に組み合わされてもよい。
【0014】
<用語>
最初に、本明細書で記載される用語について説明する。
【0015】
「シーケンスロジック」は、制御装置上で動作する数々のソフトウェアの一種である。シーケンスブロックは、信号、整定値および定数を入力として、演算部品により加工した値を示す信号を出力するように構成されている。制御装置には、例えば、電力系統を保護するための保護制御装置がある。演算部品には、例えば、AND(論理和)などの論理演算部品、およびタイマなどがある。
【0016】
「信号」は、制御装置で管理される種々のデータを示す。信号のデータ型には、例えば、2値データ(ON/OFF)および、整数または実数の数値データなどがある。
【0017】
「整定値」は、制御装置の運用中にユーザが変更することができるデータである。
「シート」は、シーケンスロジックを作成する単位である。シートは、制御装置上での実行順序を指示する単位でもある。すなわち、シーケンスロジックは、制御装置上での実行順序に従って組み合わされた複数のシートから構成されている。シートには「共通シート」と「個別シート」とがある。
【0018】
「共通シート」は、複数の制御装置間で共通に実行される処理を記述したシートである。共通シートは、複数の制御装置間で共通に使用される。
【0019】
「個別シート」は、制御装置ごとに個別に実行される処理を記述したシートである。個別シートは、対応する制御装置でのみ使用される。
【0020】
シート上には、制御装置の実行単位である処理が、グラフィカルプログラミング言語を用いて記述される。具体的には、シート上には、入力部品、演算部品および出力部品が配置され、これらの部品が信号線で繋がれる。グラフィカルプログラミング言語には、国際規格IEC61131-3に規定された、LD(ラダーダイアグラム)、FBD(ファンクションブロックダイアグラム)などがある。
【0021】
シートは、例えばA4サイズの用紙に印刷しても、グラフィカルプログラミング言語で記述された入力部品、演算部品および出力部品の視認性を担保することができるサイズを有している。
【0022】
「時分割処理」は、シーケンスロジックを分割し、制御装置の実行周期ごとに、分割したシーケンスロジックを順番に実行する仕組みである。
【0023】
<適用例>
図1は、本開示の実施の形態に従うシーケンスロジックの作成システムの適用例を示す図である。図1には、保護制御装置上で動作するシーケンスロジックを作成するための作成システム10が示されている。
【0024】
図1に示すように、作成システム10は、ネットワークNWを介して複数の保護制御装置20_1,20_2,20_3と通信可能に接続されている。ネットワークNWには、例えば、インターネット、LAN(Local Area network)、USB(Universal Serial Bus)などを利用できる。
【0025】
作成システム10は、複数の保護制御装置20_1,20_2,20_3(以下、包括的に「保護制御装置20」と称する場合がある)とネットワークNWを介して各種データを遣り取りすることができる。図示は省略するが、作成システム10は、USBメモリ、メモリカードなどの記憶媒体を介して保護制御装置20とデータを遣り取りしてもよい。
【0026】
作成システム10は、各保護制御装置20上で動作するシーケンスロジックを作成する。作成システム10は、例えば、PC(Personal Computer)、タブレット端末、スマートフォンなどの演算処理装置である。なお、作成システム10を構成する演算処理装置の個数は限定されない。作成システム10は、クラウド環境上に構築されてもよい。
【0027】
作成システム10は、シーケンスロジックを構成する複数のシートを作成する機能、作成した各シートに含まれる部品のパラメータを設定する機能、作成した複数のシートの実行順除を設定する機能、作成したシーケンスロジックのエラーをチェックする機能、シーケンスロジック内で、指定された部品を検索する機能、および作成したシーケンスロジックを出力する機能を有している。
【0028】
作成されたシーケンスロジックを表すシーケンスプログラムは、ネットワークNWまたは記憶媒体を介して、対応する保護制御装置20にダウンロードされて、保護制御装置20内の記憶装置に保存される。記憶装置に保存されたシーケンスプログラムを保護制御装置20が実行することにより、保護制御装置20上でシーケンスロジックが動作する。
【0029】
<ハードウェア構成>
図2は、図1に示した作成システム10および保護制御装置20のハードウェア構成例を示す模式図である。
【0030】
(作成システム10)
図2に示すように、作成システム10は、主な構成として、演算装置102と、記憶装置104と、入力装置106と、出力装置108と、通信装置110とを備える。
【0031】
演算装置102は、1または複数のCPU(Central Processing Unit)を含み、各種の演算処理を実行する。上記の各機能は、ソフトウェア、ファームウェアまたはこれらの組み合わせにより実現される。ソフトウェアまたはファームウェアは、プログラムとして記述され、記憶装置104に記憶される。1または複数のCPUは、記憶装置104に記憶されたプログラムを読み出して実行する。これらのプログラムは、上記の各機能を実現する手順および方法をコンピュータに実行させるものであると言える。
【0032】
記憶装置104は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、またはEEPROM(Electrically Erasable Programmable Read Only Memory)(登録商標)などの半導体メモリが適用され得る。半導体メモリは、不揮発性メモリでもよいし揮発性メモリでもよい。
【0033】
また、記憶装置104には、半導体メモリ以外にも、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディクス、またはDVD(Digital Versatile Disc)が適用され得る。あるいは、記憶装置104は、作成システム10の外部のサーバまたはクラウドによって実現してもよい。
【0034】
なお、演算装置102および記憶装置104には、専用処理回路のような専用のハードウェアを利用してもよい。この場合、専用処理回路は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、またはこれらを組み合わせたものが該当する。
【0035】
入力装置106は、作成システム10を利用するユーザからのデータの入力操作を受け付ける。入力装置106は、例えば、マウス、キーボード、タッチパネルなどの操作機器である。入力装置106は、作成システム10とは別体として形成してもよい。
【0036】
出力装置108は、液晶ディスプレイまたは有機EL(Electroluminescence)ディスプレイなどを含み、シーケンスロジック作成画面(図6参照)などを表示する。出力装置108は、作成システム10とは別体として形成してもよい。
【0037】
通信装置110は、図1に示したネットワークNWに接続されており、ネットワークNWを介して保護制御装置20とデータを遣り取りする。
【0038】
(保護制御装置20)
保護制御装置20は、主な構成として、演算装置202と、記憶装置204と、通信装置206と、入出力(I/O)装置208とを備える。演算装置202は、シーケンスロジックを表すプログラムを含む各種のプログラムに従って各種処理を実行する。演算装置202は、例えば、CPU、FPGA、GPU(Graphics Processing Unit)およびMPU(Micro Processing Unit)のうちの少なくとも1つを含む。演算装置202は、DRAM(Dynamic Random Access Memory)およびSRAM(Static Random Access Memory)などの揮発性メモリ、ROMおよびフラッシュメモリなどの不揮発性メモリを含んでいてもよい。演算装置202は、少なくとも1つの演算回路(Processing Circuitry)で構成されていてもよい。演算装置202は、複数の演算装置の集合体であってもよく、単一の演算装置であってもよい。
【0039】
記憶装置204は、HDD(Hard Disk Drive)およびSSD(Solid State Drive)などの不揮発性メモリを含み、各種のプログラムおよびデータを記憶する。記憶装置204には、作成システム10により作成されたシーケンスロジックを表すシーケンスプログラムが少なくとも記憶される。
【0040】
通信装置206は、図1に示したネットワークNWに接続されており、ネットワークNWを介して、作成システム10を含む外部の装置とデータを遣り取りする。
【0041】
I/O装置208は、デジタル入力回路と、デジタル出力回路と、アナログ回路とを含んでもよい。デジタル入力回路は、他の電力系統設備などからデジタル信号を受ける。デジタル出力回路は、例えば遮断器を開放するためのトリップ信号を出力する。アナログ入力回路は、他の電力系統設備などからアナログ信号を受ける。
【0042】
<シーケンスロジックの作成手順の概略>
図3は、作成システム10による、シーケンスロジックの作成の全体的な流れを示すフローチャートである。
【0043】
図3に示すように、最初に、作成システム10は、シーケンスロジックを構成するためのシートを新規作成する(ステップS10)。新規作成されるシートは、共通シートおよび個別シートのいずれかに区別される。新規作成されたシートには、ユーザの入力操作に応じて、入力部品、出力部品および演算部品がグラフィカルプログラミング言語を用いて記述される。
【0044】
次に、作成システム10は、ユーザの入力操作に応じて、各シート上に記述された入力部品および出力部品の各々に対して、保護制御装置20が管理する信号および整定値を割り当てるマッピングを行う(ステップS20)。
【0045】
次に、作成システム10は、保護制御装置20における複数のシートの実行順序を設定する(ステップS30)。作成システム10は、作成された複数のシートを、保護制御装置20における実行順序に従って組み合わせることにより、シーケンスロジックを作成する。
【0046】
次に、作成システム10は、作成したシーケンスロジックを確認する(ステップS40)。S40では、シーケンスロジックのエラーチェック、部品の検索などが行われる。S40の処理は任意選択的に行うことができる。
【0047】
最後に、作成システム10は、作成したシーケンスロジックを出力する(ステップS50)。S50では、作成したシーケンスロジックが記憶装置104および/または記憶媒体に保存される。または、作成したシーケンスロジックが印刷される。シーケンスロジックを表すシーケンスプログラムは、ネットワークNWまたは記憶媒体を介して、対応する保護制御装置20にダウンロードされて、保護制御装置20内の記憶装置204に保存される。
【0048】
<シーケンスロジックの詳細な作成手順>
以下に、図3に示したシーケンスロジックの作成手順について詳細に説明する。
【0049】
実施の形態1では、シートを新規作成するステップS10を実行するための機能構成および処理の手順について説明する。実施の形態2では、新規作成されたシートに信号および整定値をマッピングするステップS20を実行するための機能構成および処理の手順について説明する。実施の形態3では、複数のシートの実行順序を設定するステップS30を実行するための機能構成および処理の手順について説明する。実施の形態4では、作成されたシーケンスロジックを確認するステップS40を実行するための機能構成および処理の手順について説明する。
【0050】
実施の形態1.
図4は、実施の形態1に従う作成システム10の機能構成を示すブロック図である。図4に示すように、作成システム10は、シート管理部30と、シート作図設定部32とを含んで構成される。シート管理部30およびシート作図設定部32は、図2に示す演算装置102が記憶装置104に記憶されるプログラムを実行することによって実現される。
【0051】
シート管理部30は、シートの新規作成を行う。図4には、新規作成されたシートを示すデータ(以下、「シートデータSD」とも称する)が示されている。シート作図設定部32は、新規作成されたシートの作図および編集を行う。
【0052】
図5は、図3のステップS10における処理の流れを示すフローチャートである。図5に示すように、ステップS101により、シート管理部30は、シートの新規作成を行う。新規作成されるシートは、共通シートおよび個別シートのいずれかに区別される。
【0053】
共通シートは、複数の保護制御装置20間で共通に実行される処理を記述したシートである。共通シートは、複数の保護制御装置20_1,20_2,20_3の少なくとも2つの間で共通に使用されるために、基本的に、複数の保護制御装置20_1,20_2,20_3につき1回作成される。
【0054】
個別シートは、保護制御装置20ごとに個別に実行される処理を記述したシートである。個別シートは、対応する保護制御装置20でのみ使用されるため、保護制御装置20ごとに作成される。
【0055】
ステップS102により、シート管理部30は、新規作成されたシート(共通シートおよび個別シート)を、出力装置108が出力するシーケンスロジック作成画面上に一覧表示する。図6は、シーケンスロジック作成画面の一例を示す図である。図6に示すシーケンスロジック作成画面1000は、出力装置108のディスプレイに表示される。
【0056】
図6に示すように、シーケンスロジック作成画面1000は、シート一覧表示領域1100と、シート作成領域1200と、演算部品選択領域1300と、情報表示領域1400と、実行順序表示領域1500と、各種情報表示領域1600とを含む。
【0057】
シート一覧表示領域1100には、新規作成されたシートが一覧表示される。シーケンスロジック作成画面1000において、「Common」は共通シートを特定する名称を示し、「Device」は個別シートを特定する名称を示している。図7は、図6に示したシート一覧表示領域1100の構成例を説明する図である。
【0058】
図7に示すように、シート一覧表示領域1100は、新規作成された共通シートを一覧表示するための表示領域1102と、新規作成された個別シートを一覧表示するための表示領域1104とを有している。2つの表示領域1102,1104は、ユーザの操作に応じて、シート一覧表示領域1100に選択的に表示される。
【0059】
表示領域1102には、新規作成された共通シートを特定するための識別情報が示される。識別情報は、例えば、共通シートに付されたシート番号(例えば「0001」)および名称(例えば「aaa」)などを含む。共通シートの識別情報は、ユーザが任意に設定することができる。図7の例では、表示領域1102には、新規作成された3つの共通シート(シート番号0001~0003)が示されている。
【0060】
表示領域1104には、新規作成された個別シートを特定するための識別情報が示される。識別情報は、例えば、個別シートに付されたシート番号(例えば「0004」)および名称(例えば「ddd」)などを含む。個別シートの識別情報は、ユーザが任意に設定することができる。図7の例では、表示領域1104には、新規作成された3つの個別シート(シート番号0004~0006)が示されている。
【0061】
図5に戻って、ステップS103により、作成システム10の入力装置106は、シート一覧表示領域1100に一覧表示された複数のシートの中から1つのシートを選択するためのユーザ操作を受け付ける。ステップS104により、シート管理部30は、ユーザにより選択された1つのシートをシート作成領域1200に表示する。図6の例では、表示領域1102に示される3つの共通シートの中から第1の共通シート(シート番号「0001」、名称「aaa」)が選択されてシート作成領域1200に表示されている。
【0062】
ステップS105により、シート作図設定部32は、ユーザの入力操作に従って、シート作成領域1200に表示されているシートの作図および編集を実行する。図6に示すように、シート作図設定部32は、ユーザの入力操作に従って、シート上に入力部品、出力部品および演算部品を配置するとともに、これらの部品を信号線で繋ぐ。
【0063】
このとき、シート上に配置される演算部品は、演算部品選択領域1300に表示されている複数の演算部品(例えば、論理演算部品およびタイマなど)の中から選択することができる。演算部品選択領域1300に表示される各演算回路に関する情報は、情報表示領域1400に表示される。
【0064】
図6の例では、第1の共通シート(シート番号「0001」、名称「aaa」)上に、2つの入力部品IN1,IN2と、1つの演算部品LO1と、1つの出力部品OUT2とが配置されている。演算部品LO1は、2つの入力端子と1つの出力端子とを有する論理積(AND)演算部品である。演算部品LO1の2つの入力端子には入力部品IN1,IN2がそれぞれ接続され、1つの出力端子には出力部品OUT1が接続される。このようにして第1の共通シートには、複数の保護制御装置20の間で共通に実行される処理が記述される。
【0065】
なお、シートは入力部品、演算部品および出力部品の視認性を担保することができるサイズを有しているため、ユーザは、シートの作図および編集作業を効率的に行うことができる。
【0066】
このようにしてシート作図設定部32は、シート一覧表示領域1100から選択された1つのシートの作図および編集を行うことにより、保護制御装置20の実行単位である処理が記述されたシートを作成する。
【0067】
シート作図設定部32は、上述した手順により共通シートおよび個別シートを作成すると、ステップS106にて、作成されたこれらのシートを組み合わせることにより、保護制御装置20上で動作するシーケンスロジックを作成する。図8は、シーケンスロジックの作成手順の一例を示す図である。
【0068】
図8には、保護制御装置20_1,20_2,20_3のシーケンスロジックを作成する手順が示されている。シートデータSD1,SD2は、シート作図設定部32により作成された共通シートを示すデータである。シートデータSD4は、シート作図設定部32により、第1の保護制御装置20_1に向けて作成された個別シートを示すデータである。シートデータSD5は、シート作図設定部32により、第2の保護制御装置20_2に向けて作成された個別シートを示すデータである。シートデータSD6は、シート作図設定部32により、第3の保護制御装置20_3に向けて作成された個別シートを示すデータである。
【0069】
シート作図設定部32は、シートデータSD1,SD2,SD4~SD6を組み合わせることにより、各保護制御装置20のシーケンスロジックを作成する。具体的には、シート作図設定部32は、共通シートであるシートデータSD1,SD2と、個別シートであるシートデータSD4とを組み合わせることにより、第1の保護制御装置20_1のシーケンスロジックを作成する。シート作図設定部32は、共通シートであるシートデータSD1,SD2と、個別シートであるシートデータSD5とを組み合わせることにより、第2の保護制御装置20_2のシーケンスロジックを作成する。シート作図設定部32は、共通シートであるシートデータSD2と、個別シートであるシートデータSD6とを組み合わせることにより、第3の保護制御装置20_3のシーケンスロジックを作成する。
【0070】
図8に示すように、共通シートであるシートデータSD1,SD2を2以上の保護制御装置20の間で共通に使用して、各保護制御装置20のシーケンスロジックを作成することができる。これによると、複数の保護制御装置20間で共通に実行される処理については、保護制御装置20ごとに個別にシートを作成することが不要となるため、複数の保護制御装置20のシーケンスロジックの作成にかかる負担を軽減することができる。
【0071】
また、複数の保護制御装置20間で共通に実行される処理において変更が生じた場合には、当該処理を記述した共通シートを修正することで、複数の保護制御装置20のシーケンスロジックの修正を一括して行うことが可能となる。
【0072】
さらに、各保護制御装置20で個別に実行される処理において変更が生じた場合には、当該処理を記述した個別シートを修正すれば済むため、修正範囲が局所的になり、保護制御装置20のシーケンスロジックの修正を効率良く行うことができる。
【0073】
実施の形態2.
図9は、実施の形態2に従う作成システム10の機能構成を示すブロック図である。図9に示すように、実施の形態2に従う作成システム10は、図4に示した実施の形態1に従う作成システム10に、データ設定部34および設定データ36を追加したものである。データ設定部34および設定データ36は、図2に示す演算装置102が記憶装置104に記憶されるプログラムを実行することによって実現される。
【0074】
図10は、図3のステップS20における処理の流れを示すフローチャートである。図10に示すように、ステップS201により、データ設定部34は、ユーザの入力操作に応じて、各保護制御装置20が管理する信号および整定値を設定する。信号および整定値の設定は、例えば、シーケンスロジック作成画面1000(図6参照)上で行うことができる。図11は、信号および整定値の設定画面の一例を示す図である。図11に示す設定画面は、シート作成領域1200に重畳して表示することができる。なお、信号および整定値の設定は、シーケンスロジック作成画面1000以外で行ってもよい。
【0075】
図11に示すように、設定画面は、保護制御装置20が管理する信号の名称と、その信号のデータ型と、その信号のメモリの番地(IDX)とを少なくとも設定することが可能なように構成されている。信号のIDXとして、例えば、その信号の読み出しまたは書き込みが行われる、保護制御装置20内のメモリの番地が用いられる。図11では、保護制御装置20が管理する信号A,B,Cの各々について、その信号のデータ型とメモリの番地とが設定されている。なお、図示は省略するが、保護制御装置20が管理する整定値についても、図11に示した設定画面を用いて設定することができる。
【0076】
データ設定部34は、設定した信号および整定値を示す設定データ36を作成する。シート作図設定部32は、設定データ36を用いて、各シートに含まれている入力部品および出力部品に対して、信号値および整定値を割り当てるマッピングを行う。
【0077】
図12は、マッピングの手順を説明する図である。図12には、シート番号「0001」のシートに対するマッピングの手順が示される。当該シートは、シート作成領域1200に表示される。
【0078】
ステップS202により、シート作図設定部32は、シート上に、設定データ36の参照画面Wを表示する。この参照画面Wは、設定データ36に含まれる信号または整定値を選択するユーザ操作を受け付けるためのGUI(Graphical User Interface)として機能する。
【0079】
ステップS203により、シート作図設定部32は、ユーザ操作に応じて、シートに含まれる入力部品IN1,IN2および出力部品OUT1の各々に信号または整定値を割り当てるマッピングを行う。例えば、シート作図設定部32は、ドラッグアンドドロップなどのユーザ操作を受け付けたことに応じて、参照画面W上の信号または整定値をシート上の部品に割り当てることができる。
【0080】
図12の例では、信号Aを入力部品IN1にドラッグアンドドロップ操作することにより、入力部品IN1に信号Aを割り当てることができる。この場合、入力部品IN1には、信号Aの名称である「A」が表示される。
【0081】
同様に、信号Bを入力部品IN2にドラッグアンドドロップ操作することにより、入力部品IN2に信号Bが割り当てられ、入力部品IN2に信号Bの名称である「B」が表示される。信号Cを出力部品OUT1にドラッグアンドドロップ操作することにより、出力部品OUT1に信号Cが割り当てられ、出力部品OUT1に信号Cの名称である「C」が表示される。
【0082】
このようにして保護制御装置20が管理する信号および整定値を、シーケンスロジックにおける各シートの入力または出力としてマッピングすることができる。なお、一部の信号または整定値が保護制御装置20による管理から外された場合には、ステップS204により、シート作図設定部32は、当該信号または整定値が割り当てられているシートにおいて、部品に対する当該信号または整定値の割り当てを自動的に解除する。これによると、管理外の信号または整定値が一部のシートに残っていることによる不具合(例えば、保護制御装置20の動作異常など)を回避することができる。なお、ステップS204の処理は、ステップS201~S203とは異なり、一部の信号または整定値が管理から外された場合に単発的に実行される。
【0083】
実施の形態3.
図13は、実施の形態3に従う作成システム10の機能構成を示すブロック図である。図13に示すように、実施の形態3に従う作成システム10は、図8に示した実施の形態2に従う作成システム10に、実行順序設定部38と、実行順序データ40と、実行順序出力部42と、実行順序ファイル44とを追加したものである。実行順序設定部38、実行順序データ40、実行順序出力部42、および実行順序ファイル44は、図2に示す演算装置102が記憶装置104に記憶されるプログラムを実行することによって実現される。
【0084】
実行順序設定部38は、保護制御装置20ごとに、シート作図設定部32により作図および編集された複数のシートの実行順序を設定する。そして、実行順序設定部38は、設定した実行順序を示す実行順序データ40を作成する。
【0085】
本実施の形態では、保護制御装置20の演算装置202は、CPUごとに、実行周期が異なる複数のタスクを並行して実行することが可能に構成されている。演算装置202は、複数のCPU(例えば、CPU1,CPU2,・・・)を有していてもよい。また、例えば、複数のタスクは、第1の実行周期で繰り返し実行される第1のタスクと、第1の実行周期よりも長い第2の実行周期で実行される第2のタスクとを含んでいる。第1のタスクは、高速の応答処理(リアルタイム処理)が要求される「高速タスク」に該当する。第2のタスクは、リアルタイム処理が要求されず、低速の応答処理を行う「低速タスク」に該当する。
【0086】
実行順序設定部38は、複数のシートの実行順序を、保護制御装置20の演算装置202が実行するタスクごとに設定することができる。図14は、図3のステップS30における処理の流れを示すフローチャートである。図14に示すように、ステップS301により、実行順序設定部38は、1つのタスクの実行順序を指定するための階層構造を設定する。階層構造は、基本的に、保存制御装置20の各実行周期における実行順序が早い階層が上位に配置されるように設定される。
【0087】
ステップS302により、実行順序設定部38は、階層構造の各階層に、シートまたはグループを配置する。なお、同一階層には、シートまたはグループが配置される。グループは、同一階層で実行されるシートを保存するためのフォルダの機能を有している。このグループには、「通常グループ」と、「時分割グループ」と、「時分割ルートグループ」とがある。
【0088】
「通常グループ」は、保護制御装置20の実行周期毎に繰り返し実行されるシートを保存するためのグループである。
【0089】
「時分割グループ」は、保護制御装置20の実行周期毎に時分割で順番に実行されるシートを保存するためのグループである。時分割グループに保存されるシートはさらに、2以上の「時分割ルートグループ」に分類される。時分割ルートグループは、時分割グループに保存されるシートのうち、同じ実行周期にて実行されるシートを保存するためのグループである。
【0090】
図15は、実行順序設定部38の動作を説明する図である。複数のシートの実行順序の設定および編集は、例えば、シーケンスロジック作成画面1000(図6参照)における実行順序表示領域1500を用いて行うことができる。図15には、シーケンスロジック作成画面1000から実行順序表示領域1500が抽出して示されている。
【0091】
図15の例では、実行順序表示領域1500は、CPU1の高速タスクにおけるシートの実行順序を設定するための表示領域1502と、CPU1の低速タスクにおけるシートの実行順序を設定するための表示領域1504とを含んでいる。表示領域1502と表示領域1504とは、ユーザ操作に応じて、実行順序表示領域1500に選択的に表示される。図15では、表示領域1504が選択的に表示されている。
【0092】
図15に示すように、表示領域1504には、シートまたはグループ(通常グループ、時分割グループおよび時分割ルートグループ)を、その実行順序に従って階層的に配置することができる。ただし、同一階層には、シートおよびグループのいずれかが配置される。また、時分割ルートグループは、必ず時分割グループの直下の階層に配置される。
【0093】
図15の例では、最上位の「Compile Gruop」の下層に、通常グループである「Group」、時分割グループである「Group TSO」の順に配置されている。この時分割グループ「Group TSO」の直下には、第1の時分割ルートグループ「TSC1」と、第2の時分割ルートグループ「TSC2」とが配置されている。
【0094】
ステップS303により、実行順序設定部38は、通常グループおよび時分割ルートグループの各々に、対応するシートを配置する。1つのタスクが、保護制御装置20の実行周期毎に繰り返し実行されるシートを含んでない場合には、通常グループに配置されるシートの数は0となる。また、1つのタスクが、保護制御装置20の実行周期毎に時分割で順番に実行されるシートを含んでいない場合には、各時分割ルートグループに配置されるシートの数は0となる。なお、時分割グループに複数のシートが保存される場合であっても、一部の時分割ルートグループに配置されるシートの数は0であってもよい。図15の例では、通常グループ「Group」および時分割ルートグループ「TSC1」,「TSC2」の各々に配置されるシートの数は0であってもよい。
【0095】
本実施の形態では、保護制御装置20の運用時において、演算装置202は、実行周期毎に、図15に示す階層構造を有する「Compile Gruop」の上層から下層に向かって順番に実行する。具体的には、1番目の実行周期では、演算装置202は、最初に、通常グループ「Group」を実行し、次に、時分割グループ「Group TSO」を実行する。ここでは、演算装置202は、第1の時分割ルートグループ「TSC1」を実行する。
【0096】
続いて2番目の実行周期では、演算装置202は、最初に、通常グループ「Group」を実行し、次に、時分割グループ「Group TSO」を実行する。ここでは、演算装置202は、第2の時分割ルートグループ「TSC2」を実行する。
【0097】
3番目の実行周期では、演算装置202は、最初に、通常グループ「Group」を実行し、次に、時分割グループ「Group TSO」を実行する。ここでは、演算装置202は、第1の時分割ルートグループ「TSC1」を実行する。
【0098】
このようにして演算装置202は、実行周期毎に、第1の時分割ルートグループ「TSC1」と第2の時分割ルートグループ「TSC2」とを順番に実行する。これにより時分割処理にてタスクが実行されることになる。
【0099】
図14のステップ304にて、実行順序設定部38は、任意選択的に、通常グループおよび時分割グループの各々に対して、実行条件(Exec Condition)を設定することができる。図15の例では、通常グループ「Group」に対して実行条件が設定されている。ある局面では、データ型がON/OFFである1つの信号に基づいて、通常グループ「Group」を実行するか否かを設定することができる。この場合、当該信号がONであるときには通常グループ「Group」を実行し、当該信号がOFFであるときには通常グループ「Group」を実行しないように設定することができる。図15中の「IDX:02432)は、当該信号が格納されるメモリ番地を表している。
【0100】
ここで、図15に示した階層構造において、1つのグループ(通常グループまたは時分割ルートグループ)に複数のシートが配置されている場合を想定する。この場合、当該複数のシートは、当該グループに、それらの実行順序に従って配置される。以下の説明では、1つのグループに2つのシートが配置されているものとして、当該2つのシートの実行順序について説明する。
【0101】
図16は、1つのグループに配置される2つのシートの一例を示す図である。図16には、シーケンスロジック作成画面1000におけるシート作成領域1200が抽出して示されている。
【0102】
1つのグループは、第1のシート(シート番号「0001」)と、第2のシート(シート番号「0002」)とを含んでいる。図16の上段には第1のシートが示され、図16の下段には第2のシートが示されている。なお、階層構造上では、第1のシートは第2のシートの上位に配置されているものとする。したがって、第1のシートおよび第2のシートの順で実行される。
【0103】
第1のシートは、入力部品IN1,IN2と、演算部品LO1,LO2と、出力部品OUT1と、仮の出力部品TEO1とを含んでいる。入力部品IN1,IN2には、信号「signal1」および整定値「set value」がそれぞれ割り当てられている。演算部品LO1は論理積(AND)演算部品であり、演算部品LO2は論理否定(NOT)演算部品である。出力部品OUT1には、信号「signal2」が割り当てられている。仮の出力部品TEO1には、仮の信号「temp」が割り当てられている。
【0104】
第2のシートは、入力部品IN3,IN4と、演算部品LO3,LO4と、出力部品OUT2,OUT3と、仮の入力部品TEI1とを含んでいる。入力部品IN3,IN4には、信号「signal1」,「signal2」がそれぞれ割り当てられている。演算部品LO3は論理和(OR)演算部品であり、演算部品LO4は論理積の否定(NAND)演算部品である。出力部品OUT2,OUT3には、信号「signal1」,「signal3」がそれぞれ割り当てられている。仮の入力部品TEI1には、仮の信号「temp」が割り当てられている。
【0105】
保護制御装置20が第1および第2のシートを順に実行する場面では、入力部品IN1,IN3,IN4の各々には、対応する信号のメモリ番地に格納された値が読み出されて入力される。入力部品IN2には、対応する整定値のメモリ番地に格納された値が読み出されて入力される。また、出力部品OUT1~OUT3の値は、対応する信号のメモリ番地に書き込まれる。
【0106】
これに対して、仮の出力部品TEO1および仮の入力部品TEI1は、第1のシートで演算部品LO1から出力された仮の信号「temp」を、第2のシートの演算部品LO3に入力することを表している。なお、仮の信号「temp」は、メモリ内の予め用意されている番地に一時的に格納される。
【0107】
次に、図16に示した第1および第2のシートの実行順序について説明する。
上述したように、第1のシートおよび第2のシートの順で実行される。ただし、第1および第2のシートに含まれている入力部品IN1~IN4については、最初のシート(すなわち、第1のシート)を実行する前に、対応する信号または整定値の値がメモリから読み出されて割り当てられる。また、第1および第2のシートに含まれている出力部品OUT1~OUT3については、最後のシート(すなわち、第2のシート)を実行した後に、対応する信号の値がメモリに書き込まれる。
【0108】
図17は、図16に示した第1および第2のシートの実行順序を説明する図である。図17には、実行順序の順に上位から11位までの部品が示されている。図17に示すように、入力部品IN1~IN4に対する処理(信号または整定値の読み出し)が最初に実行され、次に、演算部品LO1~LO4に対する処理(論理演算)が実行される。最後に、出力部品OUT1~OUT3に対する処理(信号の書き込み)が実行される。
【0109】
図13に戻って、実行順序出力部42は、実行順序データ40を、テキスト形式またはPDF形式などの所定のファイル形式で記述された実行順序ファイル44に変換する。実行順序出力部42は、変換された実行順序ファイル44を出力する。図18は、実行順序ファイル44の一例を示す図である。実行順序ファイル44は、タスク毎に設定された実行順序を含んで構成されている。
【0110】
実施の形態4.
図19は、実施の形態4に従う作成システム10の機能構成を示すブロック図である。図19に示すように、実施の形態4に従う作成システム10は、図13に示した実施の形態3に従う作成システム10とは、実行順序データ40がシート作図設定部32に入力されている点が異なる。
【0111】
本実施の形態では、シート作図設定部32は、実行順序データ40を用いて、シーケンスロジックの接続関係を簡便に確認するための機能を提供する。具体的には、シート作図設定部32は、1つのシート内における部品の接続関係を追跡する機能(追跡機能)と、複数のシート間で、入力部品および出力部品の対応関係を検索する機能(検索機能)とを有している。
【0112】
(追跡機能)
図20は、シート作図設定部32の追跡機能を説明するフローチャートである。図20は、図3のステップS40における処理の第1例に相当する。図20に示すように、ステップS401では、シート作図設定部32は、シーケンスロジック作成画面1000(図6参照)のシート作成領域1200に表示されているシートにおいて、追跡対象となる部品の選択を受け付ける。ユーザは、シートに含まれる入力部品、出力部品および演算部品のうちのいずれか1つを追跡対象として選択することができる。
【0113】
ステップS402により、シート作図設定部32は、対象部品に接続されている信号線をシートから抽出する。シート作図設定部32は、対象部品と、抽出された信号線とを強調表示する。
【0114】
図21は、シート作図設定部32の追跡機能の一例を説明する図である。図21には、シーケンスロジック作成画面1000におけるシート作成領域1200が抽出して示されている。図21では、第1のシート(シート番号「0001」)に含まれている複数の部品IN1,IN2,LO1,LO2,TEO1,OUT1のうち、仮の出力部品TEO1が追跡対象として選択されている。追跡対象となる部品は、例えば、ユーザがシート上の部品をクリック操作することにより選択することができる。
【0115】
仮の出力部品TEO1が追跡対象として選択されると、シート作図設定部32は、仮の出力部品TEO1に接続されている信号線を入力部品IN1,IN2まで辿る。そして、シート作図設定部32は、対象部品と当該信号線とを、太線を用いて強調表示する。強調表示の仕方は太線に限定されない。
【0116】
(検索機能)
図22は、シート作図設定部32の検索機能を説明するフローチャートである。図22は、図3のステップS40における処理の第2例に相当する。図22に示すように、ステップS411では、シート作図設定部32は、シーケンスロジック作成画面1000(図6参照)のシート作成領域1200に表示されているシートにおいて、検索対象となる部品の選択を受け付ける。ユーザは、シートに含まれる入力部品および出力部品のうちのいずれか1つを検索対象として選択することができる。以下の説明では、入力部品および出力部品の対応関係を「呼び合い」とも称する。また、検索対象の部品を「呼び合い元の部品」と称し、検索対象の部品と対応関係にある部品を「呼び合い先の部品」とも称する。
【0117】
図23は、シート作図設定部32の検索機能の一例を説明する図である。図23には、シーケンスロジック作成画面1000におけるシート作成領域1200が抽出して示されている。図23では、第1のシート(シート番号「0001」)に含まれている複数の部品IN1,IN2,LO1,LO2,TEO1,OUT1のうち、仮の出力部品TEO1が検索対象として選択されている。検索対象となる部品(呼び合い元の部品)は、例えばユーザがシート上の部品をクリック操作することにより選択することができる。S411では、シート作図設定部32は、対象部品と、当該対象部品に接続されている信号線とを、太線を用いて強調表示する。強調表示の仕方は太線に限定されない。
【0118】
検索対象の部品(呼び合い元の部品)に対するユーザ操作(例えば、左クリック操作)を受け付けると、シート作図設定部32は、ステップS412により、対象部品と対応関係にある部品(呼び合い先の部品)が配置されているシートの識別情報(シートID)をシート上に表示する。図23の例では、対象部品に対するユーザ操作に応じて、対象部品の右肩には、呼び合い先の部品が配置されているシートの識別情報(シートID)が表示される。シートIDは、5桁の数字「00023」で構成されている。最初4桁の数字「0002」は、呼び合い先の部品が配置されている第2のシートのシート番号「0002」を表している。最後の1桁の数字は、呼び合い先の部品が第2のシート内のどの区画に配置されているかを表している。
【0119】
次に、ステップS413により、シート作図設定部32は、ユーザ操作(例えば、右クリック操作)に応じて、対象部品(仮の出力部品「TEO1」)の近傍にコンテクストメニューM1を表示する。コンテクストメニューM1は、対象部品に対して現在適用できる操作項目を並べたものである。操作項目には、対象部品と対応関係にある部品(呼び合い先の部品)が配置されているシートに関する情報を表示するためのリレーションブロック(Relation Blocks)が含まれている。シート作図設定部32はさらに、リレーションブロックを選択するユーザ操作に応じて、リレーションブロックRB1を表示する。図23の例では、リレーションブロックRB1には、第2のシートの情報(シート番号「0002」、名称「bbb」)が表示されている。
【0120】
このリレーションブロックRB1を選択するユーザ操作を受け付けると、シート作図設定部32は、ステップS414に進み、対象部品と対応関係にある部品(呼び合い先の部品)が配置されているシート(すなわち、第2のシート)を、シート作成領域1200に表示する(図24参照)。このとき、シート作図設定部32は、ステップS415により、例えば対象部品と対応関係にある部品(呼び合い先の部品)である仮の入力部品TEI1を上述した追跡機能の追跡対象として選択状態にする。追跡機能により、仮の入力部品TEI1と、当該部品に接続されている信号線とを、例えば太線を用いて強調表示する。
【0121】
次に、ステップS416では、既にステップS415で対象部品が選択状態になっているため、当該部品についてステップS412に相当する処理を行う。具体的には、対象部品(呼び合い元の部品)が配置されているシートの識別情報(シートID)をシート上に表示する。図24の例では、呼び合い先の部品の左肩には、呼び合い元の部品が配置されているシートの識別情報(シートID)が表示される。シートIDは、5桁の数字「00014」で構成されている。最初4桁の数字「0001」は、呼び合い元の部品が配置されている第1のシートのシート番号「0001」を表している。最後の1桁の数字は、呼び合い元の部品が第1のシート内のどの区画に配置されているかを示している。
【0122】
<効果>
上述した実施の形態によれば、制御装置上で動作するシーケンスロジックを複数のシートで構成することにより、シーケンスロジックの作成を、シート単位に分割して作成することができる。これによると、各シートに作成されるシーケンスロジックの視認性が高められるため、シートの作図および編集作業の効率化が可能となる。
【0123】
また、シートを共通シートと個別シートとに区別したことにより、複数の制御装置の間で共通に実行される処理については、共通シートを使用してシーケンスロジックを作成することができるため、各制御装置のシーケンスロジックの作成にかかる負担を軽減することができる。さらに、複数の制御装置間で共通に実行される処理に変更が生じた場合には、当該処理を記述した共通シートを修正することで、複数の制御装置のシーケンスロジックの修正を一括して行うことが可能となる。
【0124】
また、各制御装置で個別に実行される処理において変更が生じた場合には、当該処理を記述した個別シートを修正すれば済むため、修正範囲が局所的になり、シーケンスロジックの修正を効率良く行うことが可能となる。
【0125】
また、制御装置が管理する信号および整定値を示す設定データの参照画面をシーケンスロジック作成画面に表示させて各シートに含まれる入力部品および出力部品に対するマッピングを行うことができるため、各シートの入力部品および出力部品に信号または整定値を効率的に割り当てることができる。
【0126】
また、シーケンスロジックを複数のシートで構成したことにより、制御装置のタスクごとにシートの実行順序を設定することができる。さらに、制御装置が時分割処理するためのシーケンスロジックの実行順序をシート単位で簡便に設定することができる。また、設定した実行順序の内容を簡便に確認することができる。
【0127】
また、作成システムは、1つのシート内における部品の接続関係を追跡する機能と、複数のシート間で、入力部品および出力部品の対応関係を検索する機能とを備えているため、作成したシーケンスロジックの接続関係を簡便に確認することができる。
【0128】
今回開示された実施の形態は、全ての点で例示であって制限的なものではないと考えられるべきである。本開示により示される技術的範囲は、上記した実施の形態の説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【0129】
10 作成システム、20,20_1,20_2,20_3 保護制御装置、30 シート管理部、32 シート作図設定部、34 データ設定部、36 設定データ、38 実行順序設定部、40 実行順序データ、42 実行順序出力部、44 実行順序ファイル、1000 シーケンスロジック作成画面、102,202 演算装置、104,204 記憶装置、106 入力装置、108 出力装置、110,206 通信装置、208 I/O装置、1100 シート一覧表示領域、1102,1104,1502,1504 表示領域、1200 シート作成領域、1300 演算部品選択領域、1400 情報表示領域、1500 実行順序表示領域、1600 各種情報表示領域、NW ネットワーク、SD シートデータ、IN1~IN4 入力部品、OUT1~OUT3 出力部品、LO1~LO4 演算部品、TEI1 仮の入力部品、TEO1 仮の出力部品。
【要約】
制御装置上で動作するシーケンスロジックの作成方法は、複数の制御装置間で共通に実行される処理をグラフィカルプログラミング言語で記述した共通シートを演算装置により作成するステップと、複数の制御装置の各々で個別に実行される処理をグラフィカルプログラミング言語で記述した個別シートを演算装置により作成するステップと、作成された共通シートおよび個別シートの一覧を表示するステップと、共通シートおよび個別シートの一覧から選択された複数のシートを、制御装置における実行順序に従って組み合わせることにより、シーケンスロジックを演算装置により作成するステップとを備える。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24