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

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

▶ 浙江中控技術股▲ふん▼有限公司の特許一覧

特表2024-500196安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置
<>
  • 特表-安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置 図1
  • 特表-安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置 図2
  • 特表-安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置 図3
  • 特表-安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置 図4
  • 特表-安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-01-05
(54)【発明の名称】安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置
(51)【国際特許分類】
   G06F 9/54 20060101AFI20231225BHJP
   G06F 9/52 20060101ALI20231225BHJP
【FI】
G06F9/54 A
G06F9/52 120B
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023501611
(86)(22)【出願日】2021-09-26
(85)【翻訳文提出日】2023-06-23
(86)【国際出願番号】 CN2021120687
(87)【国際公開番号】W WO2022142529
(87)【国際公開日】2022-07-07
(31)【優先権主張番号】202011590531.2
(32)【優先日】2020-12-29
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】523009621
【氏名又は名称】浙江中控技術股▲ふん▼有限公司
(74)【代理人】
【識別番号】100142365
【弁理士】
【氏名又は名称】白井 宏紀
(72)【発明者】
【氏名】裘坤
(72)【発明者】
【氏名】平志明
(72)【発明者】
【氏名】江竹軒
(72)【発明者】
【氏名】毛欽暉
(72)【発明者】
【氏名】朱燕萍
(57)【要約】
安全及びプロセス制御アプリケーション間のデータ分離のための方法は、安全/プロセス制御タスクに交換データ領域を割り当てるステップS1と、割り当てられた交換データ領域に基づいて、安全及びプロセス制御アプリケーション間のデータ分離交換を行うステップS2と、を含む。安全及びプロセス制御アプリケーション間のデータ分離のための装置は、少なくとも2つのマルチチャネルアーキテクチャのシステムを含み、各チャネルは、分離された安全データ領域及びプロセスデータ領域を含み、プロセス制御タスクは、安全データ領域を書き換えることができない一方、プロセス交換入力領域を読み取ることはできるが、書き換えることはできず、安全制御タスクは、プロセスデータ領域に直接アクセスすることができない一方、安全交換入力データ領域を読み取ることはできるが、書き換えることはできない。
【特許請求の範囲】
【請求項1】
安全及びプロセス制御アプリケーション間のデータ分離のための方法であって、
安全制御アプリケーションが、安全データ領域と、いくつかの安全制御プログラムを含むいくつかの安全制御タスクと、を含み、
前記プロセス制御アプリケーションが、プロセスデータ領域と、いくつかのプロセス制御プログラムを含むいくつかのプロセス制御タスクと、を含み、
前記データ分離のための方法は、
安全制御アプリケーション/プロセス制御アプリケーションにおける制御タスクに交換データ領域を割り当てるステップS1と、
割り当てられた交換データ領域に基づいて、安全及びプロセス制御アプリケーション間のデータ分離交換を行うステップS2と、を含む、ことを特徴とする安全及びプロセス制御アプリケーション間のデータ分離のための方法。
【請求項2】
ステップS1は、
前記安全制御アプリケーションのいくつかの安全制御タスクに、それぞれ、独立した、第1の容量閾値に基づいて規定されるサイズの安全交換データ領域を割り当てるステップであって、前記安全交換データ領域には、安全交換入力データ領域と安全交換出力データ領域とが含まれる、ステップと、
前記プロセス制御アプリケーションのいくつかのプロセス制御タスクに、それぞれ、独立した、第2の容量閾値に基づいて規定されるサイズのプロセス交換入力データ領域を割り当てるステップと、を含む、ことを特徴とする請求項1に記載のデータ分離のための方法。
【請求項3】
前記安全交換入力データ領域は、前記プロセスデータ領域からコピーされた必要なプロセスデータを格納し、さらに、前記安全制御タスクの下の前記安全制御プログラムによって読み取られるためのものであり、
前記安全交換出力データ領域は、前記安全制御タスクによって書き換えられたプロセスデータの交換変数を格納するためのものであり、
前記プロセス交換入力データ領域は、指定された安全データを、関連する安全制御タスクの安全交換データ領域からコピーし、さらに、前記プロセス制御タスクの下の前記プロセス制御プログラムによって読み取られるためのものである、ことを特徴とする請求項2に記載のデータ分離のための方法。
【請求項4】
ステップS2におけるデータ分離交換は、
異なるメモリ、メモリ空間の分割、及びアクセス属性の設定により、前記プロセス制御タスクが、前記安全交換入力データ領域を直接読み書きすることはできないが、前記プロセス交換入力データ領域及び前記安全交換出力データ領域を読み取ることができるように限定するとともに、前記安全制御タスクが、前記プロセス交換入力データ領域を直接読み書きすることはできないが、前記安全交換入力データ領域を読み取ったり、前記安全交換出力データ領域を書き換えたりすることができるように限定するステップを含む、ことを特徴とする請求項2に記載のデータ分離のための方法。
【請求項5】
ステップS2は、
変数のメモリを割り当てるステップS21と、
前記安全交換入力データ領域/前記プロセス交換入力データ領域を更新し、読み取るステップS22と、を含む、ことを特徴とする請求項1に記載のデータ分離のための方法。
【請求項6】
ステップS21は、
前記安全交換入力データ領域では、前記安全制御タスクによって読み取られたプロセスデータに対して、対応する交換変数のメモリを割り当て、前記安全交換出力データ領域では、前記安全制御タスクによって書き換えられたプロセスデータに対して、対応する交換変数のメモリを割り当てるステップS211と、
前記プロセス交換入力データ領域では、前記プロセス制御タスクによって読み取られた安全データに対して、対応する交換変数のメモリを割り当てるステップS212と、を含む、ことを特徴とする請求項5に記載のデータ分離のための方法。
【請求項7】
ステップS22は、
前記安全制御タスクを実行し、必要なプロセスデータを、前記プロセスデータ領域から前記安全交換入力データ領域にコピーするステップS221、及び/又は、
前記プロセス制御タスクを実行し、安全データを、関連する制御タスクの安全交換出力データ領域から前記プロセス交換入力データ領域にコピーするステップS222と、
実行された安全制御タスク/プロセス制御タスクに基づいて、安全制御プログラム/プロセス制御プログラムを実行するステップS223と、を含む、ことを特徴とする請求項5に記載のデータ分離のための方法。
【請求項8】
前記方法は、
前記プロセスデータ領域及び前記安全交換出力データ領域がそれぞれ予め設定されるアクセス競合解決メカニズムに基づいて、前記安全制御タスクと前記プロセス制御タスクの前記プロセスデータ領域、前記安全交換入力データ領域、及び前記安全交換出力データ領域への読み書き競合を回避するステップをさらに含む、ことを特徴とする請求項2に記載のデータ分離のための方法。
【請求項9】
前記アクセス競合解決メカニズムは、制御タスクの優先度設定、タスク間の読み書きロック、データのダブルバッファリング、及びMMUメモリ保護を含む、ことを特徴とする請求項8に記載のデータ分離のための方法。
【請求項10】
安全及びプロセス制御アプリケーション間のデータ分離のための装置であって、
少なくとも2つのマルチチャネルアーキテクチャのシステムを含み、
各チャネルは、いくつかの安全制御アプリケーション及び/又はいくつかのプロセス制御アプリケーションを実行するためのものであり、
前記安全制御アプリケーションは、安全データ領域と、いくつかの安全制御タスクとを含み、
前記プロセス制御アプリケーションは、プロセスデータ領域と、いくつかのプロセス制御タスクとを含み、
前記安全データ領域と前記プロセスデータ領域とは互いに分離されており、
前記プロセス制御タスクは、前記安全データ領域を書き換えることができない一方、前記プロセスデータ領域のプロセス交換入力領域を読み取ることはできるが、書き換えることはできず、
前記安全制御タスクは、前記プロセスデータ領域に直接アクセスすることができない一方、前記安全データ領域の安全交換入力データ領域を読み取ることはできるが、書き換えることはできない、ことを特徴とする安全及びプロセス制御アプリケーション間のデータ分離のための装置。
【請求項11】
前記マルチチャネルアーキテクチャのシステムにおける1つのチャネルがマスタチャネルとして機能し、残りのチャネルがスレーブチャネルであり、チャネル間で安全データ及びプロセスデータが転送される、ことを特徴とする請求項10に記載のデータ分離のための装置。
【請求項12】
前記マスタチャネルの安全制御タスクは、前記プロセスデータを、前記プロセスデータ領域から前記安全制御タスクの安全交換入力データ領域にコピーし、スレーブチャネルに配信する、ことを特徴とする請求項11に記載のデータ分離のための装置。
【請求項13】
前記スレーブチャネルの安全制御タスクは、前記マスタチャネルから配信された安全交換入力データを選択し、前記スレーブチャネルの安全制御タスクの安全交換入力データ領域をカバーする、ことを特徴とする請求項11に記載のデータ分離のための装置。
【請求項14】
前記スレーブチャネルと前記マスタチャネルとが通信できない場合、必要なプロセスデータを、現在のチャネルのプロセスデータ領域から前記安全制御タスクの安全交換入力データ領域にコピーする、ことを特徴とする請求項11に記載のデータ分離のための装置。

【発明の詳細な説明】
【関連出願】
【0001】
本願は、2020年12月29日にて出願された、出願番号が202011590531.2で、発明の名称が「安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置」である中国特許出願の優先権を主張しており、その内容を全て参照により本願に組み込むものとする。
【技術分野】
【0002】
本願は、産業用プロセス(process)制御の技術分野に関し、特に、安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置に関する。
【背景技術】
【0003】
安全制御システムと一般のプロセス制御システムの機能的利点を統合し、制御システムの配備及び応用展開の柔軟性を高め、制御システムの生産と使用コストを下げるなどの目的で、オイル・ガス輸送、小型基幹システム制御などの産業応用分野において、安全制御機能とプロセス制御機能の両方を同一の制御システムの中でサポートする必要性がますます高まっている。
【0004】
安全制御機能には高い信頼性や可用性が求められ、関連する機能安全規格に従って開発及び実施する必要がある。安全制御アプリケーションでは、安全制御機能を実施する安全制御アプリケーションは、一般に、安全入力データ(一般に、例えばDI、AIなどの安全入力信号点を指す)、安全制御アルゴリズム/機能ブロック、安全出力データ(一般に、例えばDOなどの安全出力信号点を指す)を含む。一般的には、プロセスデータ(プロセス入出力信号点、プロセス中間変数などを含む)が安全アプリケーションに直接入るか又は影響を与えることは許可されず、そして、プロセス制御アプリケーションの動作が安全制御アプリケーションに直接影響を与えることを回避する。そうしないと、安全制御機能の安全完全性を低下させてしまう。即ち、安全制御アプリケーションとプロセス制御アプリケーションとの分離を確保する必要がある。それゆえ、安全制御アプリケーションがアクセスするプロセスデータは、制限された小規模なものとなる。
【0005】
安全ハイブリッド制御システムにおいて、安全制御アプリケーションの機能完全性を確保するために、一般に、マルチチャネル議決のシステムアーキテクチャを採用してフォールトトレランスを高める。各コントローラチャネルは、同じ安全制御アプリケーション及びプロセス制御アプリケーションを含み、独立してすべての制御アプリケーションを実行する。制御システムは、一定のポリシーに従って、あるチャネルをマスタチャネルとして選択し、他のチャネルをスレーブチャネルとする。ここで、安全制御アプリケーションは、特定のソフトウェアとハードウェアの議決メカニズムを通じて外部に出力し、プロセス制御アプリケーションは、一般に、マスタチャネルから出力するが、スレーブチャネルからは出力しないものである。
【0006】
制御システムの障害許容性及びプロセス制御機能の可用性を確保するために、制御システムは、マスタチャネルのプロセスデータを各スレーブチャネルに冗長的に同期させ、これらのデータは、プロセス入出力信号点、及びそれに関連するプロセス変数を含む。1回の冗長同期を完了する周期は長く、一般に、複数の制御周期となる。制御システムは、スレーブチャネルのプロセスデータが安全制御アプリケーションに入った後、安全アプリケーションの出力のデータリバウンドを起こしやすいという問題を回避しなければならない。例えば、プロセスデータが(データ値Aからデータ値Bに)変化した場合、各スレーブチャネルの安全制御アプリケーションは、このプロセスデータ(データ値B)の影響を受けて、直ちに議決出力(データ値Bを出力)する。その後、各スレーブチャネルは、マスタチャネルからの変化前の冗長なプロセスデータ(データ値A)を短時間内に受信し、このとき、各スレーブチャネルは、このプロセスデータの影響を受けて、直ちに変化前のデータ(データ値A)を議決出力し、その後、各スレーブチャネルが、マスタチャネルからの変化後の冗長なプロセスデータ(データ値B)を受信した場合にのみ、この影響を受けて変化後のデータ(データ値B)を議決出力する。
【0007】
また、実際の制御アプリケーションのシーンでは、プロセスデータ領域、安全データ領域、交換データ領域は、いずれも構造化データ又は複数のデータの組み合わせであるため、非同期の複数のタスクが同時にこれらのデータ領域を読み書きする可能性がある場合、タスク間の読み書きの相互排他を確保する必要があり、1つのタスクが構造化データの一部を書き換えているときに、別のタスクがこの構造化データを読み取ることに起因して、後者がデータを不完全に読み取ったり、誤って読み取ったりすることを回避する。
【0008】
関連技術において、安全でないアプリケーションを実行するための第1のプロセッサと、安全なアプリケーションを実行するための専用の第2のプロセッサとがある。安全アプリケーションでは、タスクは1つだけであり、グローバルデータ領域を介してデータを交換し、マイクロコントローラシステムのみに基づいて、安全制御とプロセス制御のメモリへの共有アクセスに対して相互排他的保護を行う。
【発明の概要】
【発明が解決しようとする課題】
【0009】
本願は、マルチタスク制御、マルチチャネル動作を備えた産業用制御システムにおける安全制御アプリケーションの機能安全の完全性、機能の正確性、及び制御応答性に対処することを目的とする。安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置を提供する。
【課題を解決するための手段】
【0010】
本願の第1の態様は、安全及びプロセス制御アプリケーション間のデータ分離のための方法であって、安全制御アプリケーションが、安全データ領域と、いくつかの安全制御プログラムを含むいくつかの安全制御タスクと、を含み、前記プロセス制御アプリケーションが、プロセスデータ領域と、いくつかのプロセス制御プログラムを含むいくつかのプロセス制御タスクと、を含み、前記データ分離のための方法は、安全制御アプリケーション/プロセス制御アプリケーションにおける制御タスクに交換データ領域を割り当てるステップS1と、割り当てられた交換データ領域に基づいて、安全及びプロセス制御アプリケーション間のデータ分離交換を行うステップS2と、を含む、安全及びプロセス制御アプリケーション間のデータ分離のための方法を提供する。
【0011】
さらに、ステップS1は、具体的には、安全制御アプリケーションのいくつかの安全制御タスクに、それぞれ、独立した、第1の容量閾値に基づいて規定されるサイズの安全交換データ領域を割り当てるステップであって、前記安全交換データ領域には、安全交換入力データ領域と安全交換出力データ領域とが含まれる、ステップと、プロセス制御アプリケーションのいくつかのプロセス制御タスクに、それぞれ、独立した、第2の容量閾値に基づいて規定されるサイズのプロセス交換入力データ領域を割り当てるステップと、を含む。
【0012】
さらに、前記安全交換入力データ領域は、プロセスデータ領域からコピーされた必要なプロセスデータを格納し、さらに、安全制御タスクの下の安全制御プログラムによって読み取られるためのものであり、前記安全交換出力データ領域は、安全制御タスクによって書き換えられたプロセスデータの交換変数を格納するためのものであり、前記プロセス交換入力データ領域は、指定された安全データを、関連する安全制御タスクの安全交換データ領域からコピーし、さらに、プロセス制御タスクの下のプロセス制御プログラムによって読み取られるためのものである。
【0013】
さらに、ステップS2におけるデータ分離交換は、異なるメモリ、メモリ空間の分割、アクセス属性の設定により、プロセス制御タスクが、安全交換入力データ領域を直接読み書きすることはできないが、プロセス交換入力データ領域及び安全交換出力データ領域を読み取ることができるように限定するとともに、安全制御タスクが、プロセス交換入力データ領域を直接読み書きすることはできないが、安全交換入力データ領域を読み取ったり、安全交換出力データ領域を書き換えたりすることができるように限定するステップを含むが、これに限定されるものではない。
【0014】
さらに、ステップS21は、具体的には、安全交換入力データ領域では、安全制御タスクによって読み取られたプロセスデータに対して、対応する交換変数のメモリを割り当て、安全交換出力データ領域では、安全制御タスクによって書き換えられたプロセスデータに対して、対応する交換変数のメモリを割り当てるステップS211と、プロセス交換入力データ領域では、プロセス制御タスクによって読み取られた安全データに対して、対応する交換変数のメモリを割り当てるステップS212と、を含む。
【0015】
さらに、ステップS22は、具体的には、安全制御タスクを実行し、必要なプロセスデータを、プロセスデータ領域から安全交換入力データ領域にコピーするステップS221、及び/又は、プロセス制御タスクを実行し、安全データを、関連する制御タスクの安全交換出力データ領域からプロセス交換入力データ領域にコピーするステップS222と、実行された安全制御タスク/プロセス制御タスクに基づいて、安全制御タスク/プロセス制御プログラムを実行するステップS223と、を含む。
【0016】
さらに、データ分離のための方法は、プロセスデータ領域及び安全交換出力データ領域がそれぞれ予め設定されるアクセス競合解決メカニズムに基づいて、安全制御タスクとプロセス制御タスクのプロセスデータ領域、安全交換入力データ領域、及び安全交換出力データ領域への読み書き競合を回避するステップをさらに含む。
【0017】
さらに、前記アクセス競合解決メカニズムは、制御タスクの優先度設定、タスク間の読み書きロック、データのダブルバッファリング、及びMMUメモリ保護を含むが、これらに限定されるものではない。
【0018】
本願の第2の態様は、安全及びプロセス制御アプリケーション間のデータ分離のための装置であって、少なくとも2つのマルチチャネルアーキテクチャのシステムを含み、各チャネルは、いくつかの安全制御アプリケーション及び/又はいくつかのプロセス制御アプリケーションを実行するためのものであり、安全制御アプリケーションは、安全データ領域と、いくつかの安全制御タスクとを含み、プロセス制御アプリケーションは、プロセスデータ領域と、いくつかのプロセス制御タスクとを含み、安全データ領域とプロセスデータ領域とは互いに分離されており、プロセス制御タスクは、安全データ領域を書き換えることができない一方、プロセスデータ領域のプロセス交換入力領域を読み取ることはできるが、書き換えることはできず、安全制御タスクは、プロセスデータ領域に直接アクセスすることができない一方、安全データ領域の安全交換入力データ領域を読み取ることはできるが、書き換えることはできない、安全及びプロセス制御アプリケーション間のデータ分離のための装置を提供する。
【0019】
さらに、マルチチャネルアーキテクチャのシステムにおける1つのチャネルがマスタチャネルとして機能し、残りのチャネルがスレーブチャネルであり、チャネル間で安全データ及びプロセスデータが転送されることができる。
【0020】
さらに、前記マスタチャネルの安全制御タスクは、前記プロセスデータを、プロセスデータ領域から安全制御タスクの安全交換入力データ領域にコピーし、スレーブチャネルに配信する。
【0021】
さらに、前記スレーブチャネルの安全制御タスクは、マスタチャネルから配信された安全交換入力データを選択し、スレーブチャネルの安全制御タスクの安全交換入力データ領域をカバーする。
【0022】
さらに、スレーブチャネルとマスタチャネルとが通信できない場合、必要なプロセスデータが、現在のチャネルのプロセスデータ領域から安全制御タスクの安全交換入力データ領域にコピーされる。
【発明の効果】
【0023】
本願は、以下の有益な技術効果を有する。
【0024】
1、複数の安全制御タスクに対応可能である。
【0025】
2、プロセス制御アプリケーションのデータ、タスク/プログラムから安全データを効果的に保護し、安全制御アプリケーションの機能安全の完全性を確保する。
【0026】
3、マルチタスクの実行中におけるタスク間のデータ交換の完全性を確保する。
【0027】
4、マルチチャネル間のタスクのデータ交換の同期リアルタイム性をよりよく解決でき、制御応答のリアルタイム性を確保する。
【0028】
5、安全制御アプリケーション及びプロセス制御アプリケーションに適用するだけでなく、マルチタスク間でのデータ交換の制御性、完全性又はリアルタイム性などが高く要求される任意の産業用制御システム又は装置に広く使用することができる。
【図面の簡単な説明】
【0029】
ここに説明される図面は、本願をさらに理解させるためのものであり、本願の一部を構成し、また、本願の模式的な実施例及びその説明は本願を説明するものであり、本発明を不当に限定するものではない。図面において、
図1】本願の実施例における、安全及びプロセス制御アプリケーション間のデータ分離のための方法を示す模式的なフローチャートである。
図2】本願の実施例における、安全及びプロセス制御アプリケーション間のデータ分離交換のための方法を示す模式的なフローチャートである。
図3】本願の実施例における、安全及びプロセス制御アプリケーション間のデータ分離のための装置を示す部分模式図である。
図4】本願の実施例における、単一チャネル内の安全及びプロセス制御アプリケーション間のデータ分離を示す部分模式図である。
図5】本願の実施例における、単一チャネル内の安全及びプロセス制御アプリケーションの複数のタスク間のデータ分離を示す部分模式図である。
【発明を実施するための形態】
【0030】
以下、本願をさらに理解するために、実施例を参照しながら本願の好適な実施形態を説明するが、これらの説明は、本願の特徴及び利点をさらに説明するためのものに過ぎず、本願の請求項を限定するものではないことが理解されるべきである。
【0031】
本願の理解を容易にするために、まず、本願で言及されているいくつかの専門用語について説明する。
【0032】
安全ハイブリッド制御システム:安全制御アプリケーション、及びプロセス制御アプリケーションの両方を含む産業用制御システムを指す。
【0033】
チャネル:機能安全制御システムなどの多重議決アーキテクチャを有するシステム装置に特化した用語である。チャネルは、多重化議決システムアーキテクチャの基本的な処理ユニットである。1つのチャネルは、一般に、1つのCPU、対応するメモリ、及び関連するマイクロ電子デバイスを含む。各システムチャネルは独立して制御ロジックを実行し、他のチャネルと並行して非同期に動作する。一般に、安全ハイブリッド制御システムにおいて、各チャネルは、同じ安全制御アプリケーション及びプロセス制御アプリケーションを含み、安全制御アプリケーションは、特定のハードウェアとソフトウェア議決メカニズム(マスタチャネル及びスレーブチャネルが同時に参加)を介して外部に出力するのに対し、プロセス制御アプリケーションは、一般に、マスタチャネルから出力するが、スレーブチャネルからは出力しないというワーク/スタンバイメカニズムである。
【0034】
安全制御アプリケーション:機能安全に向けた制御アプリケーションを指し、その機能は、生産装置の運行状况を監視し、異常な作業状况が発生した時に既定の安全制御ロジックに従って迅速に対処して、危害を最小限に抑え、人員や装置が安全な生産状態にあることを確保することである。高い信頼性を持つのがその特徴であり、主要な装置及びデバイスの保護と制御、ガス及び火災の監視と保護、オイル・ガス輸送プロセスの安全、蒸気ボイラーの監視と保護、ユニット制御の保護などの分野で多く適用されている。準拠している規格には、主にIEC 61508、GB/T20438などがある。
【0035】
安全制御アプリケーションは、安全でない信号点データへの勝手なアクセスを許可しない。安全制御アプリケーションは、安全データ領域と、いくつかの安全制御タスクとを含み、各安全制御タスクは、タスクバックグラウンド制御プログラムと、いくつかの安全制御プログラムとを含み、各安全制御プログラムは、いくつかの安全制御ループを含む。各安全制御ループは、安全な信号入出力点と、安全な制御ロジックとを含む。
【0036】
プロセス(process)制御アプリケーション:プロセス制御に向けた制御アプリケーションを指し、一般の生産プロセスの連続測定、プロセス制御、操作制御管理に適用され、生産装置の円滑な運行を確保する。プロセス制御アプリケーションは、プロセスデータ領域と、いくつかのプロセス制御タスクとを含み、各プロセス制御タスクは、タスクバックグラウンド制御プログラムと、いくつかのプロセス制御プログラムとを含み、各プロセス制御プログラムは、いくつかのプロセス制御ループを含む。各プロセス制御ループは、プロセス信号入出力点と、プロセス制御ロジックとを含む。
【0037】
安全データ領域:安全制御アプリケーションに従属するデータ領域を指し、一般に、安全入力信号データ、安全出力信号データ、安全内部データなどを含む。データ領域は、一般に、構造化データ又は緊密に関連するデータの組み合わせであり、制御タスク又は制御プログラムがデータの読み書き時に、データの一部のみを読み書きするのではなく、データ構造全体又はデータの組み合わせ全体を完全に読み書きできることを確保しなければならない。
【0038】
プロセスデータ領域:プロセス制御アプリケーションに従属するデータ領域を指し、一般に、プロセス入力信号データ、プロセス出力信号データ、プロセス内部データなどを含む。同様に、データ領域は、一般に、構造化データ又は緊密に関連するデータの組み合わせであり、制御タスク又は制御プログラムがデータの読み書き時に、データの一部のみを読み書きするのではなく、データ構造全体又はデータの組み合わせ全体を完全に読み書きできることを確保しなければならない。
【0039】
タスク:いくつかの制御プログラム、データの一部、及びタスクバックグラウンド制御プログラムを含み、制御システムにおける制御ロジックのスケジューリング制御の主な対象である。タスクの実行は、非同期で比較的独立しており、複数のタスクが同時に同一のデータにアクセスするシーンが存在する可能性がある。
【0040】
制御プログラム:いくつかのプログラムセグメントを含み、一般に、IEC61131-3規格に準拠したプログラミング言語を用いて制御ロジックを記述する。
【0041】
制御ループ:制御ロジックの基本ユニットであり、一般に、入力信号点データ、出力信号点データ、制御アルゴリズム又は機能ブロックなどを含み、例えば古典的なPID制御ループである。
【0042】
本願は、安全ハイブリッド制御システムにおける安全制御アプリケーションとプロセス制御アプリケーションとの間のデータ分離の問題を解決することを目的として、安全及びプロセス制御アプリケーション間のデータ分離のための方法及び対応する装置を設計するものである。以下、当業者が本願発明をよりよく理解できるように、実施例を参照しながら、本願の安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置について詳細に説明する。
【0043】
図1は、本願に係る安全及びプロセス制御アプリケーション間のデータ分離のための方法を示す模式的なフローチャートであり、以下のステップを含む。
【0044】
S1では、交換データ領域を割り当てる。安全制御アプリケーションの安全制御タスクごとに、安全交換入力データ領域及び安全交換出力データ領域を含む、独立した規定されたサイズの安全交換データ領域を割り当てる。また、プロセス制御アプリケーションのプロセス制御タスクごとに、独立した規定されたサイズのプロセス交換入力データ領域を割り当てる。安全交換入力データ領域は、プロセスデータ領域からコピーされた指定されたプロセスデータを格納し、さらに、安全制御タスクの下の安全制御プログラムによって読み取られる。安全交換出力データ領域は、安全制御タスクによって書き換えられたプロセスデータの交換変数を格納する。プロセス交換入力データ領域は、指定された安全データを、関連する安全制御タスクの安全交換データ領域からコピーし、さらに、プロセス制御タスクの下のプロセス制御プログラムによって読み取られる。
【0045】
S2では、割り当てられた交換データ領域に基づいて、安全及びプロセス制御アプリケーション間のデータ分離交換を行う。
【0046】
図2に示すように、データ交換は、異なるメモリ、メモリ空間の分割、アクセス属性の設定により、プロセス制御タスクが、安全交換入力データ領域を直接読み書きすることはできないが、プロセス交換入力データ領域及び安全交換出力データ領域を読み取ることができるように限定するとともに、安全制御タスクが、プロセス交換入力データ領域を直接読み書きすることはできないが、安全交換入力データ領域を読み取ったり、安全交換出力データ領域を書き換えたりすることができるように限定するステップを含むが、これに限定されるものではない。具体的には、以下のステップを含む。
【0047】
S21では、変数メモリを割り当てる。
【0048】
安全交換入力データ領域において、安全制御タスクに入力されたプロセスデータごとに、対応する交換変数のメモリを割り当てる。ここで、安全制御タスクによって読み取られたプロセスデータに対応する交換変数は、安全交換入力データ領域に割り当てられ、安全制御タスクによって書き換えられたプロセスデータの交換変数は、安全交換出力データ領域に割り当てられ、プロセス制御タスクによって読み取られた安全交換変数に対応するプロセス交換入力変数は、プロセス交換入力データ領域に割り当てられる。
【0049】
S22では、安全交換入力データ領域/プロセス交換入力データ領域を更新し、読み取る。
【0050】
具体的には、安全交換入力データ領域を更新し、読み取り、各安全制御タスクの実行時に、まず、指定されたプロセスデータの一部を、プロセスデータ領域から対応する安全交換入力データ領域にコピーし、その後、該安全制御タスク配下の各安全制御プログラムを実行するステップを含む。
【0051】
さらに、プロセス交換入力データ領域を更新し、読み取り、各プロセス制御タスクの実行時に、まず、指定されたデータの一部を、関連する安全制御タスクの安全交換出力データ領域からプロセス交換入力データ領域にコピーし、その後、該プロセス制御タスク配下の各プロセス制御プログラムを実行するステップを含む。
【0052】
なお、各安全制御タスク、プロセス制御タスクの実行は、互いに独立して非同期であり、安全交換入力データ領域を更新し、読み取るステップとプロセス交換入力データ領域を更新し、読み取るステップとは並行して実行可能である。
【0053】
また、安全制御タスクが読み取ったプロセスデータの正確さと完全性を確保し、安全制御タスクとプロセス制御タスクのプロセスデータ領域への読み書き競合を回避するために、この装置は、「制御タスクの優先度設定」、「タスク間の読み書きロック」、「データのダブルバッファリング」又は「MMUメモリ保護」などのアクセス競合解決メカニズムを採用している。
【0054】
いくつかの実施形態では、安全制御タスクがプロセスデータ領域の読み取りを終了した後に、プロセス制御タスクがプロセスデータ領域を書き換えることを許可することが優先的に確保される。
【0055】
以下に示す実施例では、図3は、本願に係る安全及びプロセス制御アプリケーション間のデータ分離のための装置を示す部分模式図である。この装置は、少なくとも2つのマルチチャネルアーキテクチャのシステムを含み、各チャネルは、いくつかの安全制御アプリケーション及び/又はいくつかのプロセス制御アプリケーションを実行するためのものであり、ここで、安全制御アプリケーションは、安全データ領域と、いくつかの安全制御タスクとを含み、プロセス制御アプリケーションは、プロセスデータ領域と、いくつかのプロセス制御タスクとを含み、安全データ領域とプロセスデータ領域とは互いに分離されている。プロセス制御タスクは、安全データ領域を書き換えることができない一方、プロセスデータ領域のプロセス交換入力領域を読み取ることはできるが、書き換えることはできない。安全制御タスクは、プロセスデータ領域に直接アクセスすることができない一方、安全データ領域の安全交換入力データ領域を読み取ることはできるが、書き換えることはできない。
【0056】
図3において、その装置は、1つのマスタチャネルと2つのスレーブチャネルとを含み、各チャネル間の制御タスク及びそれに含まれる制御プログラムは、すべて同じである。マスタチャネルの安全制御タスクは、指定されたプロセスデータの一部を、マスタチャネルのプロセスデータ領域からマスタチャネルの安全交換入力データ領域にコピーし、スレーブチャネル1#及びスレーブチャネル2#に迅速に配信する。ここでいう迅速とは、一般に、1つの基本制御周期又はタスク周期内に、スレーブチャネル1#及びスレーブチャネル2#の安全制御タスクが、マスタチャネルからの安全交換入力データを選択することを指す。スレーブチャネルとマスタチャネルとの接続が切断されると、スレーブチャネル1#又はスレーブチャネル2#の安全制御タスクは、指定されたプロセスデータの一部を、自身に対応するプロセスデータ領域から安全制御タスクの安全交換入力データ領域にコピーする。
【0057】
以下、当業者が本願発明をよりよく理解できるように、上記実施例に示された安全及びプロセス制御アプリケーション間のデータ分離のための方法及び装置について、実際の操作例によりさらに説明する。
【0058】
図4は、単一チャネル内の一部を示す模式図であり、その図において、単一チャネルは、1つのプロセス制御アプリケーションと、1つの安全制御アプリケーションとを含み、安全制御アプリケーションとプロセス制御アプリケーションのデータ、プログラムは相対的に独立して、互いに分離されている。プロセス制御アプリケーションは、主に、プロセスデータ領域と、いくつかのプロセス制御タスクとを含み、安全制御アプリケーションは、主に、安全データ領域と、いくつかの安全制御タスクとを含む。
【0059】
一般に、プロセス制御タスクは、安全データ領域におけるデータを直接読み取ることができる。しかしながら、プロセス制御タスクの実行中に読み取られる安全データの完全性、一貫性に寄与するために、本願の実施例では、図4に示すように、構造化又は一貫性の要求が高いデータを、安全交換出力データ領域に割り当て、プロセス交換入力データ領域を介してプロセス制御タスクに転送することができる。
【0060】
安全制御タスクごとに、専用の安全交換入力データ領域が割り当てられる。各安全制御タスクが実行されるたびに、まず、指定されたプロセスデータの一部を、プロセスデータ領域から安全交換入力データ領域にコピーし、その後、該安全制御タスク配下の各安全制御プログラムを実行する。この装置は、メモリ空間の分割、アクセス属性の設定などにより、安全制御プログラムが安全交換入力データ領域を読み取ることしかできず、書き換えることはできないように限定する。
【0061】
図4に示すように、安全制御タスクごとに、専用の安全交換出力データ領域が割り当てられ、プロセス制御タスクごとに、専用のプロセス交換入力データ領域が割り当てられる。この装置は、異なるメモリ、メモリ空間の分割、アクセス属性の設定などにより、プロセス制御タスクが、プロセス交換入力データ領域を直接読み取ることができ、安全制御タスクが、プロセス交換入力データ領域に直接アクセスすることができないように限定する。同様に、安全制御タスクは、安全交換出力データ領域を読み書きすることができ、プロセス制御タスクにおける各プロセス制御プログラムは、安全交換出力データ領域に直接アクセスすることができない。
【0062】
プロセス制御タスクが実行されるたびに、指定されたデータの一部を、関連する安全制御タスクの安全交換出力データ領域からプロセス交換入力データ領域にコピーし、その後、該プロセス制御タスク配下の各プロセス制御プログラムを実行する。プロセス制御タスクが読み取った安全交換出力データの正確さと完全性を確保し、安全制御タスクとプロセス制御タスクの安全交換出力データ領域への読み書き競合を回避するために、「制御タスクの優先度設定」、「タスク間の読み書きロック」、「データのダブルバッファリング」又は「MMUメモリ保護メカニズム」などのアクセス競合解決メカニズムにより、安全制御タスクが安全交換出力データ領域の書き換えを終了した後に、プロセス制御タスクが安全交換出力データ領域を読み取ることを許可することを確保する。
【0063】
図5は、複数の安全制御タスクと複数のプロセス制御タスクとの間のデータ分離を示す部分模式図であり、本願の実施例では、その装置の単一チャネル内で1つのプロセス制御アプリケーションと1つの安全制御アプリケーションとが実行され、安全制御アプリケーションは、安全制御タスク1#と安全制御タスク2#とを含み、プロセス制御アプリケーションは、プロセス制御タスク1#とプロセス制御タスク2#とを含む。なお、安全制御アプリケーション及びプロセス制御アプリケーションには、それぞれ、いくつかの制御タスクが含まれてもよく、各安全制御タスク、プロセス制御タスク間は相対的に独立して、非同期に実行される。本実施例では、説明を明確にするために、それぞれ2つの制御タスクを含む場合のみを示している。安全制御タスクの実行及びプロセス制御タスクの実行のルールは、次の通りである。
【0064】
1、安全制御タスク1#及び安全制御タスク2#は、プロセスデータ領域のそれぞれの指定されたデータを、同時にかつそれぞれ独立して読み取り、安全交換入力データ1#及び安全交換入力データ2#にそれぞれコピーすることができる。
【0065】
2、プロセス制御タスク1#及びプロセス制御タスク2#は、関連する安全タスクの安全交換出力データ領域1#及び安全交換出力データ領域2#における指定されたデータを、同時にかつそれぞれ独立して読み取り、プロセス交換入力データ領域1#及びプロセス交換入力データ領域2#にそれぞれコピーすることができる。
【0066】
以上の実施例の説明は、本願の方法及びその核となる思想の理解を助けるためのものに過ぎない。当業者にとって、本願の原理を逸脱しないことを前提として、本願に対して若干の改良及び修正が可能であり、これらの改良及び修正も本願の請求項の保護範囲内に入ることに留意すべきである。上述した実施例の各技術的特徴は任意に組み合わせることができ、説明を簡潔にするために、上述した実施例における各技術的特徴のすべての可能な組み合わせについては説明していないが、これらの技術的特徴の組み合わせが矛盾しない限り、すべて本明細書に記載された範囲内にあると見なすべきである。

図1
図2
図3
図4
図5
【手続補正書】
【提出日】2021-11-30
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
安全及びプロセス制御アプリケーション間のデータ分離のための方法であって、
安全制御アプリケーションが、安全データ領域と、いくつかの安全制御プログラムを含むいくつかの安全制御タスクと、を含み、
前記プロセス制御アプリケーションが、プロセスデータ領域と、いくつかのプロセス制御プログラムを含むいくつかのプロセス制御タスクと、を含み、
前記データ分離のための方法は、
安全制御アプリケーション/プロセス制御アプリケーションにおける制御タスクに交換データ領域を割り当てるステップS1と、
割り当てられた交換データ領域に基づいて、安全及びプロセス制御アプリケーション間のデータ分離交換を行うステップS2と、を含む、ことを特徴とする安全及びプロセス制御アプリケーション間のデータ分離のための方法。
【請求項2】
ステップS1は、
前記安全制御アプリケーションのいくつかの安全制御タスクに、それぞれ、独立した、第1の容量閾値に基づいて規定されるサイズの安全交換データ領域を割り当てるステップであって、前記安全交換データ領域には、安全交換入力データ領域と安全交換出力データ領域とが含まれる、ステップと、
前記プロセス制御アプリケーションのいくつかのプロセス制御タスクに、それぞれ、独立した、第2の容量閾値に基づいて規定されるサイズのプロセス交換入力データ領域を割り当てるステップと、を含む、ことを特徴とする請求項1に記載のデータ分離のための方法。
【請求項3】
前記安全交換入力データ領域は、前記プロセスデータ領域からコピーされた必要なプロセスデータを格納し、さらに、前記安全制御タスクの下の前記安全制御プログラムによって読み取られるためのものであり、
前記安全交換出力データ領域は、前記安全制御タスクによって書き換えられたプロセスデータの交換変数を格納するためのものであり、
前記プロセス交換入力データ領域は、指定された安全データを、関連する安全制御タスクの安全交換データ領域からコピーし、さらに、前記プロセス制御タスクの下の前記プロセス制御プログラムによって読み取られるためのものである、ことを特徴とする請求項2に記載のデータ分離のための方法。
【請求項4】
ステップS2におけるデータ分離交換は、
異なるメモリ、メモリ空間の分割、及びアクセス属性の設定により、前記プロセス制御タスクが、前記安全交換入力データ領域を直接読み書きすることはできないが、前記プロセス交換入力データ領域及び前記安全交換出力データ領域を読み取ることができるように限定するとともに、前記安全制御タスクが、前記プロセス交換入力データ領域を直接読み書きすることはできないが、前記安全交換入力データ領域を読み取ったり、前記安全交換出力データ領域を書き換えたりすることができるように限定するステップを含む、ことを特徴とする請求項2に記載のデータ分離のための方法。
【請求項5】
ステップS2は、
変数のメモリを割り当てるステップS21と、
前記安全交換入力データ領域/前記プロセス交換入力データ領域を更新し、読み取るステップS22と、を含む、ことを特徴とする請求項に記載のデータ分離のための方法。
【請求項6】
ステップS21は、
前記安全交換入力データ領域では、前記安全制御タスクによって読み取られたプロセスデータに対して、対応する交換変数のメモリを割り当て、前記安全交換出力データ領域では、前記安全制御タスクによって書き換えられたプロセスデータに対して、対応する交換変数のメモリを割り当てるステップS211と、
前記プロセス交換入力データ領域では、前記プロセス制御タスクによって読み取られた安全データに対して、対応する交換変数のメモリを割り当てるステップS212と、を含む、ことを特徴とする請求項5に記載のデータ分離のための方法。
【請求項7】
ステップS22は、
前記安全制御タスクを実行し、必要なプロセスデータを、前記プロセスデータ領域から前記安全交換入力データ領域にコピーするステップS221、及び/又は、
前記プロセス制御タスクを実行し、安全データを、関連する制御タスクの安全交換出力データ領域から前記プロセス交換入力データ領域にコピーするステップS222と、
実行された安全制御タスク/プロセス制御タスクに基づいて、安全制御プログラム/プロセス制御プログラムを実行するステップS223と、を含む、ことを特徴とする請求項5に記載のデータ分離のための方法。
【請求項8】
前記方法は、
前記プロセスデータ領域及び前記安全交換出力データ領域がそれぞれ予め設定されるアクセス競合解決メカニズムに基づいて、前記安全制御タスクと前記プロセス制御タスクの前記プロセスデータ領域、前記安全交換入力データ領域、及び前記安全交換出力データ領域への読み書き競合を回避するステップをさらに含む、ことを特徴とする請求項2に記載のデータ分離のための方法。
【請求項9】
前記アクセス競合解決メカニズムは、制御タスクの優先度設定、タスク間の読み書きロック、データのダブルバッファリング、及びMMUメモリ保護を含む、ことを特徴とする請求項8に記載のデータ分離のための方法。
【請求項10】
安全及びプロセス制御アプリケーション間のデータ分離のための装置であって、
少なくとも2つのマルチチャネルアーキテクチャのシステムを含み、
各チャネルは、いくつかの安全制御アプリケーション及び/又はいくつかのプロセス制御アプリケーションを実行するためのものであり、
前記安全制御アプリケーションは、安全データ領域と、いくつかの安全制御タスクとを含み、
前記プロセス制御アプリケーションは、プロセスデータ領域と、いくつかのプロセス制御タスクとを含み、
前記安全データ領域と前記プロセスデータ領域とは互いに分離されており、
前記プロセス制御タスクは、前記安全データ領域を書き換えることができない一方、前記プロセスデータ領域のプロセス交換入力領域を読み取ることはできるが、書き換えることはできず、
前記安全制御タスクは、前記プロセスデータ領域に直接アクセスすることができない一方、前記安全データ領域の安全交換入力データ領域を読み取ることはできるが、書き換えることはできない、ことを特徴とする安全及びプロセス制御アプリケーション間のデータ分離のための装置。
【請求項11】
前記マルチチャネルアーキテクチャのシステムにおける1つのチャネルがマスタチャネルとして機能し、残りのチャネルがスレーブチャネルであり、チャネル間で安全データ及びプロセスデータが転送される、ことを特徴とする請求項10に記載のデータ分離のための装置。
【請求項12】
前記マスタチャネルの安全制御タスクは、前記プロセスデータを、前記プロセスデータ領域から前記安全制御タスクの安全交換入力データ領域にコピーし、スレーブチャネルに配信する、ことを特徴とする請求項11に記載のデータ分離のための装置。
【請求項13】
前記スレーブチャネルの安全制御タスクは、前記マスタチャネルから配信された安全交換入力データを選択し、前記スレーブチャネルの安全制御タスクの安全交換入力データ領域をカバーする、ことを特徴とする請求項11に記載のデータ分離のための装置。
【請求項14】
前記スレーブチャネルと前記マスタチャネルとが通信できない場合、必要なプロセスデータを、現在のチャネルのプロセスデータ領域から前記安全制御タスクの安全交換入力データ領域にコピーする、ことを特徴とする請求項11に記載のデータ分離のための装置。
【国際調査報告】