JP2022125962A - プロセス制御システム用の実装可能なシーケンシャルファンクションチャートコードを生成するための方法、システム、およびコンピュータプログラム製品 - Google Patents

プロセス制御システム用の実装可能なシーケンシャルファンクションチャートコードを生成するための方法、システム、およびコンピュータプログラム製品 Download PDF

Info

Publication number
JP2022125962A
JP2022125962A JP2021209333A JP2021209333A JP2022125962A JP 2022125962 A JP2022125962 A JP 2022125962A JP 2021209333 A JP2021209333 A JP 2021209333A JP 2021209333 A JP2021209333 A JP 2021209333A JP 2022125962 A JP2022125962 A JP 2022125962A
Authority
JP
Japan
Prior art keywords
operational
control
configuration parameters
function
receiving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021209333A
Other languages
English (en)
Inventor
大輔 安波
Daisuke Yasunami
イ・エエ・ロケ
Loke Yi Ee
マリセル・バカカオ
Bacacao Maricel
アーチー・サンビタン・オリド
Archie Sambitan Orido
マックス・ジソン・ジャン
Jisong Zhang Max
ウィルフレッド・ウーン・ユー・テオ
Woon Yew Teo Wilfred
裕之 中村
Hiroyuki Nakamura
忠輝 大河原
Tadateru Ogawara
慶子 湯浅
Keiko Yuasa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Publication of JP2022125962A publication Critical patent/JP2022125962A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32252Scheduling production, machining, job shop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Programmable Controllers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

【課題】プロセス制御システムによるその後の検索および実装のために、実行可能なシーケンシャルファンクションチャートの生成を可能にする方法を提供する。【解決手段】実行可能なシーケンシャルファンクションチャートを生成ステップは、(i)シーケンスフロー内で動作機能を実装するために選択された機器を表す機器選択データを受信するステップと、(ii)選択された機器によって実装される動作機能のセットを表す動作データを受信するステップと、(iii)1つまたは複数の構成パラメータに値を割り当てるステップと、(iv)動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセット受信するステップと、(v)1つまたは複数の制御ステートメント構成パラメータに値を割り当てるステップ、および動作機能のセットを実装する機械可読SEBOLプログラムコードを生成するステップとを備える。【選択図】図6

Description

本発明は、産業オートメーションおよびプロセス制御システムの分野に関する。より詳細には、本発明は、プロセス制御システムによるその後の検索および実装のために、実行可能なシーケンシャルファンクションチャートの生成を可能にする方法、システム、およびコンピュータプログラム製品を提供する。
産業環境は、製造、変換、または生産するためのプロセスを実行および制御するための制御システム(たとえば、分散プロセス制御システム)を実装する。制御システムは通常、1つまたは複数のフィールドデバイスに接続された1つまたは複数のプロセスコントローラを含む。フィールドデバイスは、産業環境内に配置され、物理制御機能またはプロセス制御機能用に構成された、バルブ、バルブアクチュエータ、スイッチ、およびトランスミッタ(たとえば、温度、圧力、レベル、および流量センサ)を含んでもよい。フィールドデバイス制御機能の例は、バルブの開閉、ならびにプロセスプラントまたはシステム内の1つまたは複数のプロセスを制御するためのプロセスおよび/または環境パラメータ(たとえば、温度または圧力)の測定を含む。
他方では、制御システム内のプロセスコントローラは、フィールドデバイスによって生成された信号を受信するように構成されてもよく、受信された信号は、フィールドデバイスによって測定されたプロセスパラメータに対応する情報、および/またはフィールドデバイスの状態に関する他の情報を伝える。プロセスコントローラは、プロセス制御決定を実装するための1つまたは複数の制御モジュールを実装する制御アプリケーションをさらに実行してもよい。プロセスコントローラ内の制御モジュールは、フィールドデバイスのうちの1つまたは複数の動作を制御するために、通信回線または接続を介してフィールドデバイスに制御信号を送信する。プロセスコントローラと1つまたは複数のフィールドデバイスとの間の通信仲介として配置される入出力(I/O)デバイスは、電気信号をデジタル値に変換することによって、および1つまたは複数の通信プロトコルを介してそのような信号を送受信することによって、プロセスコントローラとフィールドデバイスとの間のデータ転送および制御命令転送を可能にする。
プロセスプラント内の制御システムは、1つまたは複数のプロセスコントローラを含んでもよく、各コントローラは、I/Oカードおよび/またはI/Oポートを介して1つまたは複数のフィールドデバイスに接続される。1つまたは複数のコントローラは、制御アプリケーションを記憶し、フィールドデバイスの制御および動作のための制御戦略を実装する。制御システムは、フィールドデバイス、回転機器、および主要な機械を含むがこれらに限定されない、様々なプラント資産またはプラント機器に関連するデータを追跡または収集するように構成されてもよい。制御システムは、プラント資産の状態と健全性を監視し、保守作業を行う目的で、プラントまたはプラントグループ内のすべてのデバイスまたは資産のデバイス関連データおよび/またはパフォーマンスデータを検索可能に記憶する。さらに、制御システムは、そのようなフィールドデバイスの効率的な構成、試運転、検査、および保守を可能にする目的で、一方ではプラントオペレータまたはオペレータ端末と、他方では1つまたは複数のフィールドデバイスとの間の通信仲介として機能するように構成されてもよい。
本明細書の説明の目的のために、「フィールドデバイス」への言及は、バルブ、バルブアクチュエータ、スイッチ、トランスミッタ、スマートトランスミッタ、ポジショナ、または産業プロセス環境内に配置されてもよく、物理的またはプロセス制御機能用に構成されてもよい他のセンサデバイスのいずれかへの言及を含んでもよいことが理解される。フィールドデバイスは、「スマート」フィールドデバイス、すなわち、HARTまたはFoundationフィールドバス通信プロトコルなどのデジタル通信プロトコルをサポートするデバイスを含んでもよい。
本明細書の説明の目的のために、「制御システム」への言及は、プロセス制御環境、産業プラント、または産業環境内で実装されてもよい任意の制御システムへの言及として理解されるべきであり、分散制御システム(DCS)および/または安全制御システム(SCS)を含むものとする。
以下の明細書の説明の目的で、「物理デバイスタグ」という用語は、実際のフィールドデバイスに関連付けられているデバイス名またはデバイス識別子を意味するものとする。理想的には、産業環境内に配置されている、または産業環境内の制御システムと結合されているすべてのフィールドデバイスには、固有の物理デバイスタグが提供される。通常、各フィールドデバイスにはローカルメモリが提供され、そのようなフィールドデバイスに対応する物理デバイスタグはローカルメモリ内に検索可能に記憶される。フィールドデバイスが制御システムと結合されている場合、制御システムは、フィールドデバイスに対応する物理デバイスタグを検索および読取り、フィールドデバイスの動作、制御、または監視の目的で、フィールドデバイスに対応する一意の識別子としてそのような物理デバイスタグを使用することができる。
以下の明細書の説明の目的で、「システムタグ」という用語は、制御システム内のソフトウェア機能ブロックまたはソフトウェア制御モジュールに一意に関連付けられる名前または識別子を意味するものとし、ソフトウェア機能ブロックまたはソフトウェア制御モジュールは、特定のフィールドデバイスを制御、監視、またはそれとインターフェースするように構成される。理想的には、フィールドデバイスを制御、監視、またはそれとインターフェースするように構成されたソフトウェア制御モジュールのすべてのソフトウェア機能ブロックに、固有のシステムタグが提供される。システムタグは、対応するソフトウェア機能ブロックまたはソフトウェア制御モジュールを実装、制御、および/または動作するために制御システムによって使用される。
以下の明細書の説明の目的で、「タグ」という用語自体は、物理デバイスタグまたはシステムタグのいずれかを指すと理解される。
産業環境内でプロセスを構成および実装する場合、配管計装図(P&ID)は、設置された機器および計装とともにプロセスフローの配管を示す図として使用される。通常、1つまたは複数のP&IDは、印刷物の形式で、あるいはPDFファイルまたは画像ファイルの形式でエンジニアに提供される。P&IDは通常、パイプ、信号線、計器、および計器のグループの標準化された記号と番号を含む。
プロセス制御環境の設計プロセス(たとえば、産業プラントの設計プロセス)中に、制御エンジニアはP&ID図面に基づいてプロセス制御システムを設計してもよい。制御エンジニアはP&IDを読み取り、そこからエンジニアリングデータを抽出する。エンジニアリングデータは、プロセス制御環境内でバッチプロセスあるいは1つまたは複数の他のプロセスを構成するために使用されてもよい。
図1は、例示的なP&ID100を示している。図1に示されるP&ID100は、お茶を製造および分配するためのプロセス環境を示し、ティーポット、入口および出口バルブ、水および蒸気入力、ならびに前記プロセスに関係する対応する配管、バルブ、および制御コンポーネントの表現を含む。
P&ID内に表されるプロセスは、シーケンシャルファンクションチャート(SFC)を使用してキャプチャおよび表示されてもよい。SFCは、グラフィカルプログラミング言語で表現されたプログラムコードのシーケンスであり、プログラムコードのシーケンスは、プロセス制御システム内で実装するために生成される。これは、プロセス制御システム内で実装される一連の順次編成されたステップとして表すことができるプロセスをプログラムするために使用することができる。
たとえば、図2は、図1のプロセス環境100内でお茶を製造および分配するためにティーポットに水を充填するプロセスを実装するためのSFC200を示している。図2に示されるように、SFC200は、(i)ステップ202においてプロセスを初期化することと、(ii)ステップ204においてティーポットを充填することと、(iii)ステップ206において給水ステップを終了することとを備える。
SFC内の各ステップは、グラフィカルプログラミング言語(好ましい実施形態では、シーケンスおよびバッチ指向言語(SEBOL)プログラミング言語である)のプログラムコードによって定義される。プログラムコードは、各ステップにおいて実行されるアクションを定義する。SFCを生成するための既存のシステムは、SFCシーケンスビルダインターフェース内でのSFCの生成を含む。SFCシーケンスビルダインターフェースは、ユーザが一連の順序付けられリンクされたステップを定義できるようにするグラフィカルユーザインターフェースである。
従来技術のSFCシーケンスビルダインターフェース内でSFCを生成する場合、ユーザはP&IDを頻繁に参照する必要がある。これは、プログラムコードが物理機器を操作および制御できるようにするために、バッチプロセス内の物理機器のタグ識別子またはタグ名を対応するプログラムコードに含める必要があるためである。
図3は、例示的なP&ID302の表現300と、P&ID302に対応するSFC内に含まれてもよいタイプの対応するプログラムコード304を提供する。図3から分かるように、P&ID302からの様々なタグ識別子(たとえば、01XV001、01LI001)は、SFCがこれらのタグ識別子に対応する機器を操作および制御できるようにする目的で、プログラムコード304の対応するセグメント内に特に含まれる。したがって、SFCを生成する場合、ユーザは対応するP&IDを繰り返し参照および閲覧する必要があることが理解される。
図4は、SFCの生成を可能にするように構成されてもよい種類のSFCシーケンスエディタ400を示している。SFCシーケンスエディタ400は、1つまたは複数の特定の機器あるいはその1つまたは複数のコンポーネントによって実装される動作シーケンスが、SFCシーケンスエディタ400内で生成されてもよいように構成される場合がある。SFCシーケンスエディタ400は、ユーザまたは制御エンジニアがシーケンスフローチャートを表すために順序付けられたステップのシーケンスを作成するための描画キャンバスを提供してもよい。順序付けられたステップのシーケンス内の各ステップは、特定の機器あるいはその1つまたは複数のコンポーネント上でまたはそれによって実装可能な1つまたは複数のアクションを備えてもよい。ステップのシーケンスは、個々のステップを相互接続するために有向コネクタを使用することによって順序付けられてもよく、有向コネクタは制御フローを指定し、あるステップから次のステップに進む方法を定義してもよい。
SFCシーケンスエディタ400内の順序付けられたステップのシーケンスを作成するためのユーザ入力ベースまたは制御エンジニア入力ベースのアクションは、制御エンジニアが、SFCシーケンスエディタ400内で定義された動作シーケンスにおける1つまたは複数の特定のステップにおいて実装されることが意図されたプログラミングコード(たとえば、SEBOLコード)を指定または作成できるように、プログラムコードテキストエディタ内に実装されたステップをコーディングすることによって完了する必要がある。
図5は、SFCシーケンスエディタ502およびテキストベースのエディタ504の表現500を提供する。構築中のSFCの各ステップは、プログラムコード(たとえば、SEBOLコード)で構成することができる。SFCシーケンスエディタ502内のSFC内のステップを選択することによって(たとえば、それをダブルクリックするか、適切なコマンドまたはインターフェースオプションをトリガすることによって)、SFCシーケンスエディタ502は、テキストベースのエディタ(SFCシーケンスエディタ504)をディスプレイ上に呼び出して、ユーザまたは制御エンジニアが、選択されたステップに対応するプログラムコード(たとえば、SEBOLコード)を記述することができるようにする。テキストエディタSFCシーケンスエディタ504において記述されたコードは、SFCの選択されたステップに関連付けまたはリンクされているため、SFCのそのステップがプロセス制御システム内で実行されると、対応するプログラムコードは、特定の機器またはそのコンポーネントを操作または制御する目的で実行される。
上記の図1から図5に関連して記載された種類の従来技術の解決策は、SFCのプログラムコードを生成するために使用される既存のテキストベースのエディタは、エディタ内でP&IDの表示を統合しないため、ユーザまたは制御エンジニアは、P&IDに対応するSFCのプログラムコードを記述するために、P&ID表示とテキストエディタを継続的に切り替える必要があること、また、テキストベースのエディタでのプログラムコードの手動による記述は遅く、特に、ユーザまたは制御エンジニアがプログラミング言語に精通していない場合はエラーが発生しやすくなることを含む、複数の不利な点を提示する。
したがって、既存の最先端技術におけるこれらの欠点に対処する解決策が必要である。
本発明は、プロセス制御システムによるその後の検索および実装のために、実行可能なシーケンシャルファンクションチャートの生成を可能にする方法、システム、およびコンピュータプログラム製品を提供する。
本発明は、プロセス制御システム内のプロセス制御のためのシーケンシャルファンクションチャート内にプログラムコードを生成するためのプロセッサ実装方法を提供する。一実施形態では、本方法は、(i)シーケンスフローを実装するために選択された機器を表す機器選択データを受信するステップと、(ii)選択された機器によって実装されることを意図した動作機能のセットを表す動作データを受信するステップと、(iii)1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を割り当てるステップと、(iv)動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信するステップと、(v)制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を割り当てるステップと、(vi)受信した動作データ、受信した制御ステートメントデータ、割り当てられた動作機能構成パラメータ、および割り当てられた制御ステートメント構成パラメータのうちの1つまたは複数に基づいて、動作機能のセットを実装するための機械可読プログラムコードを生成するステップとを備える。
本方法のさらなる実施形態では、機器選択データを受信するステップは、(i)ディスプレイインターフェース700内で、機器選択的ユーザ入力を備える入力を受信するステップと、(ii)ディスプレイ上で、機器選択的ユーザ入力に基づいて選択された機器の視覚的表現をレンダリングするステップと、(iii)選択された機器に関連付けられる機能ブロック識別子データおよび機能ブロックタイプデータを受信するステップと、(iv)選択された機器によって実装されることを意図した動作機能のセットを表す動作データを受信するステップとを備える。
選択された機器によって実装されることを意図した動作機能のセットを表す動作データを受信する方法ステップは、(i)選択された機器で実行可能な動作機能のリストを表示することによって、ユーザ入力の受信に応答するステップと、(ii)別のユーザ入力を介して、表示された動作機能のリストから動作機能の選択を受信するステップと、(iii)選択された動作機能に関連付けられる動作機能タイプを識別するステップと、(iv)識別された動作機能タイプに関連付けられる構成パラメータのセットを検索するステップと、(v)ディスプレイインターフェース内で選択された動作機能の表示を開始するステップとを備えてもよい。
一実施形態では、動作機能のセット内の1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を割り当てる方法ステップは、(i)選択された動作機能に、選択された動作機能構成パラメータのセットを関連付けるステップと、(ii)選択された動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータのデフォルトの動作機能構成パラメータ値を検索するステップと、(iii)選択された動作機能に関連付けられる対応する動作機能構成パラメータにデフォルトの動作機能構成パラメータ値を割り当てるステップと、(iv)選択された動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータに割り当てるための1つまたは複数のユーザ指定パラメータ値を識別するユーザ入力を受信するステップと、(v)選択された動作機能に対応する動作機能構成パラメータにユーザ指定パラメータ値を割り当てるステップとを備える。
特定の実施形態では、動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信する方法ステップは、(i)選択された機器によって実装されることを意図した1つまたは複数の動作機能に対応するプロセスフロー制御のための選択可能な制御ステートメントのリストを表示するステップと、(ii)ユーザ入力に基づいて、選択可能な制御ステートメントのリストから制御ステートメントを選択するステップと、(iii)選択された制御ステートメントに関連付けられる構成パラメータのセットを検索するステップと、(iv)ディスプレイインターフェース内で選択された制御ステートメントの表示を開始するステップとを備える。
本方法の別の実施形態では、制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を割り当てるステップは、(i)制御ステートメントのセット内の制御ステートメントに対応する制御ステートメント構成パラメータのセットを識別するステップと、(ii)識別された制御ステートメント構成パラメータのセット内の1つまたは複数の制御ステートメント構成パラメータに対応するデフォルトの構成パラメータ値を検索するステップと、(iii)デフォルトの構成パラメータ値を対応する制御ステートメント構成パラメータに割り当てるステップと、(iv)制御ステートメント構成パラメータのうちの1つまたは複数に割り当てるための1つまたは複数のユーザ指定パラメータ値を識別するユーザ入力を受信するステップと、(v)ユーザ指定パラメータ値を対応する制御ステートメント構成パラメータに割り当てるステップとを備える。
本方法の特定の実施形態では、動作機能のセットを実装するための機械可読SEBOLプログラムコードを生成するステップは、(i)(a)選択された機器における実装のために選択された動作機能のセットと、(b)動作機能のセット内の1つまたは複数の動作機能に対応するプロセスフロー制御のために選択された制御ステートメントのセットとに対応する、機械コード生成ルールのセットを検索するステップと、(ii)選択された機器に動作機能のセットを実装するための機械可読プログラムコードを生成するステップであって、生成された機械可読プログラムコードが、(a)検索された機械コード生成ルールのセットと、(b)動作機能のセット、および動作機能のセットに関連付けられる1つまたは複数の動作機能構成パラメータに割り当てられた1つまたは複数の動作機能構成パラメータ値と、(c)制御ステートメントのセット、および制御ステートメントのセットに関連付けられる1つまたは複数の制御ステートメント構成パラメータに割り当てられる1つまたは複数の制御ステートメント構成パラメータ値と、(d)選択された機器に関連付けられる機能ブロックタイプデータとに基づく、ステップとを備える。
本発明は、プロセス制御システム内のプロセス制御のためのシーケンシャルファンクションチャート内にプログラムコードを生成するためのシステムをさらに提供し、本システムは、(i)メモリと、(ii)(a)シーケンスフローを実装するために選択された機器を表す機器選択データを受信することと、(b)選択された機器によって実装されることを意図した動作機能のセットを表す動作データを受信することと、(c)1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を割り当てることと、(d)動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信することと、(e)制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を割り当てることと、(f)受信した動作データ、受信した制御ステートメントデータ、割り当てられた動作機能構成パラメータ、および割り当てられた制御ステートメント構成パラメータのうちの1つまたは複数に基づいて、動作機能のセットを実装するための機械可読プログラムコードを生成することとを行うように構成されたプロセッサとを備える。
本システムは、機器選択データを受信するステップが、(i)ディスプレイインターフェース内で、機器選択的ユーザ入力を備える入力を受信することと、(ii)ディスプレイ上で、機器選択的ユーザ入力に基づいて選択された機器の視覚的表現をレンダリングすることと、(iii)選択された機器に関連付けられる機能ブロック識別子データおよび機能ブロックタイプデータを受信することと、(iv)選択された機器によって実装されることを意図した動作機能のセットを表す動作データを受信することとを備えるように構成されてもよい。
一実施形態では、本システムは、選択された機器によって実装されることを意図した動作機能のセットを表すデータを受信するステップが、(i)選択された機器で実行可能な動作機能のリストを表示することによって、ユーザ入力の受信に応答することと、(ii)別のユーザ入力を介して、表示された動作機能のリストから動作機能の選択を受信することと、(iii)選択された動作機能に関連付けられる動作機能タイプを識別することと、(iv)識別された動作機能タイプに関連付けられる構成パラメータのセットを検索することと、(v)ディスプレイインターフェース内で選択された動作機能の表示を開始することとを備えるように構成されてもよい。
別の実施形態では、本システムは、動作機能のセット内の1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を割り当てるステップが、(i)選択された動作機能に、選択された動作機能構成パラメータのセットを関連付けることと、(ii)選択された動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータのデフォルトの動作機能構成パラメータ値を検索することと、(iii)選択された動作機能に関連付けられる対応する動作機能構成パラメータにデフォルトの動作機能構成パラメータ値を割り当てることと、(iv)選択された動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータに割り当てるための1つまたは複数のユーザ指定パラメータ値を識別するユーザ入力を受信することと、(v)選択された動作機能に対応する動作機能構成パラメータにユーザ指定パラメータ値を割り当てることとを備えるように構成されてもよい。
特定の実施形態では、本システムは、動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信するステップが、(i)選択された機器によって実装されることを意図した1つまたは複数の動作機能に対応するプロセスフロー制御のための選択可能な制御ステートメントのリストを表示することと、(ii)ユーザ入力に基づいて、選択可能な制御ステートメントのリストから制御ステートメントを選択することと、(iii)選択された制御ステートメントに関連付けられる構成パラメータのセットを検索することと、(iv)ディスプレイインターフェース内で選択された制御ステートメントの表示を開始することとを備えるように構成されてもよい。
本システムのさらなる実施形態では、制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を割り当てるステップは、(i)制御ステートメントのセット内の制御ステートメントに対応する制御ステートメント構成パラメータのセットを識別することと、(ii)識別された制御ステートメント構成パラメータのセット内の1つまたは複数の制御ステートメント構成パラメータに対応するデフォルトの構成パラメータ値を検索することと、(iii)デフォルトの構成パラメータ値を対応する制御ステートメント構成パラメータに割り当てることと、(iv)制御ステートメント構成パラメータのうちの1つまたは複数に割り当てるための1つまたは複数のユーザ指定パラメータ値を識別するユーザ入力を受信することと、(v)ユーザ指定パラメータ値を対応する制御ステートメント構成パラメータに割り当てることとを備える。
本システムは、動作機能のセットを実装するための機械可読SEBOLプログラムコードを生成するステップが、(i)(a)選択された機器における実装のために選択された動作機能のセットと、(b)動作機能のセット内の1つまたは複数の動作機能に対応するプロセスフロー制御のために選択された制御ステートメントのセットとに対応する、機械コード生成ルールのセットを検索することと、(ii)選択された機器に動作機能のセットを実装するための機械可読プログラムコードを生成することであって、生成された機械可読プログラムコードが、(a)検索された機械コード生成ルールのセットと、(b)動作機能のセット、および動作機能のセットに関連付けられる1つまたは複数の動作機能構成パラメータに割り当てられた1つまたは複数の動作機能構成パラメータ値と、(c)制御ステートメントのセット、および制御ステートメントのセットに関連付けられる1つまたは複数の制御ステートメント構成パラメータに割り当てられる1つまたは複数の制御ステートメント構成パラメータ値と、(d)選択された機器に関連付けられる機能ブロックタイプデータとに基づく、生成することとを備えるように構成されてもよい。
本発明はまた、プロセス制御システム内のプロセス制御のためのシーケンシャルファンクションチャート内にプログラムコードを生成するためのコンピュータプログラム製品を提供する。コンピュータプログラム製品は、コンピュータ可読プログラムコードが具体化された非一時的コンピュータ使用可能媒体を備え、コンピュータ可読プログラムコードは、プロセッサベースのコンピューティングシステム内に、(i)シーケンスフローを実装するために選択された機器を表す機器選択データを受信することと、(ii)選択された機器によって実装されることを意図した動作機能のセットを表すデータを受信することと、(iii)1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を割り当てることと、(iv)動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信することと、(v)制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を割り当てることと、(vi)受信した動作データ、受信した制御ステートメントデータ、割り当てられた動作機能構成パラメータ、および割り当てられた制御ステートメント構成パラメータのうちの1つまたは複数に基づいて、動作機能のセットを実装するための機械可読プログラムコードを生成することとを実装するための命令を備える。
P&IDの例を示す図である。 例示的なシーケンシャルファンクションチャートである。 例示的なSFCの表現と、SFCのステップにリンクされてもよいタイプの対応するプログラムコードを示す図である。 SFCの生成を可能にするように構成されてもよい種類のSFCシーケンスエディタを示す図である。 SFCシーケンスエディタおよびリンクされたテキストベースのエディタの表現を示す図である。 SFCを生成するために、本発明の教示に従って構成されたシステムを示す図である。 本発明の教示に従って構成されたSFCシーケンスエディタのディスプレイインターフェースを示す図である。 本発明の教示に従って構成されたSFCシーケンスエディタによって生成された、動作シーケンスにおいて使用される機器の例示的な概略図である。 本発明の教示に従って構成された、SFCシーケンスエディタによって実装されるディスプレイメニューを示す図である。 本発明の教示に従って構成された、SFCシーケンスエディタによって実装されるディスプレイメニューを示す図である。 本発明の教示に従って構成された、SFCシーケンスエディタによって実装されるディスプレイメニューを示す図である。 本発明の教示に従って構成された、SFCシーケンスエディタによって実装されるディスプレイメニューを示す図である。 本発明の教示に従ってSFCを生成するための様々な方法を表すフローチャートである。 本発明の教示に従ってSFCを生成するための様々な方法を表すフローチャートである。 本発明の教示に従ってSFCを生成するための様々な方法を表すフローチャートである。 本発明の教示に従ってSFCを生成するための様々な方法を表すフローチャートである。 本発明の教示に従ってSFCを生成するための様々な方法を表すフローチャートである。 本発明の教示に従ってSFCを生成するための様々な方法を表すフローチャートである。 本発明の教示に従ってSFCを生成するための様々な方法を表すフローチャートである。 本発明の様々な実施形態が実装されてもよい例示的なコンピュータシステムを示す図である。
本発明は、プロセス制御システムによるその後の検索および実装のために、実行可能なシーケンシャルファンクションチャートの生成を可能にする方法、システム、およびコンピュータプログラム製品を提供する。
図6は、本発明の教示に従って、実行可能なシーケンシャルファンクションチャートを生成するように構成されたシステム600を示している。システム600は、SFCシーケンスエディタコントローラ602、コマンドリポジトリ604、動作機能リポジトリ606、コードジェネレータコントローラ608、およびシステム600の動作を通じて生成されたプログラムコード610(たとえば、SEBOLコード)を備える。システム600の構成および機能については、以下でより詳細に説明する。
SFCシーケンスエディタコントローラ602は、少なくともダイヤグラムパネル、制御ステートメントパネル、コマンドパネル、および構成パラメータパネルを備えるディスプレイインターフェースを生成および制御するように構成されたプロセッサ実装コントローラを備えてもよく、その機能については、以下でより詳細に説明する。
コマンドリポジトリ604は、特定のSFCに関連してユーザによって追加または選択された動作機能および制御ステートメントの非一時的メモリベースリポジトリを備える。コマンドリポジトリ604内に記憶されている動作機能および制御ステートメントのセットは、動作機能および制御ステートメントのセットがユーザによって追加または選択されている対応するSFCに関連付けられてもよい。
動作機能リポジトリ606は、特定の機能ブロックタイプに関連して実行するために利用可能な動作機能のセットを表す情報を記憶するために使用される非一時的メモリベースリポジトリを備える。
この説明の目的上、「制御ステートメント」は、プロセスフロー制御を定義し、制御パスの設定を可能にし、および/または1つまたは複数のプロセスステップの繰り返し実行を可能にするステートメントまたは命令として理解されるものとする。
この説明の目的上、「動作機能」は、機器またはそのコンポーネントで実行される可能性のあるアクションであり、およびそのアクションが機器またはコンポーネント内の状態変化をもたらすものとして理解されるものとする。「動作機能」の非限定的な例は、機器またはそのコンポーネントに移植可能な「PVを読み取る」、「PVを書き込む」、「開く」、「閉じる」、「実行する」、および「停止する」アクションである。
この説明の目的上、「機能ブロック」は、入力変数と出力変数の間の機能を定義および実装する命令またはコードのセットとして理解されるものとする。
この説明の目的上、「機能ブロックタイプ」は、機能ブロックのカテゴリとして理解されるものとし、カテゴリに関連付けられる機能ブロックは、共通のプロパティ、パラメータ、または属性のセットを共有する。
SFCを実装することを目的とした各機器あるいは対応する1つまたは複数のコンポーネントは、1つまたは複数の対応する機能ブロックを有する。対応する機能ブロックは、前記機器またはコンポーネントの制御、監視、またはそれとインターフェースすることを可能にする。そのような各機能ブロックは、対応する機能ブロックタイプを有する。さらに、各機能ブロックタイプは、それに関連付けられる対応する動作機能のセットを有し、そのため、そのような機能ブロックタイプのすべての機能ブロックは、対応する動作機能のセットを継承し、その機能ブロックに関連して実装することができる。各特定の機能ブロックタイプに関連して実装するために利用可能な動作機能を識別する情報は、動作機能リポジトリ606に記憶され、そこから検索可能である。
コードジェネレータコントローラ608は、SFCに関連して実装するためにユーザによって選択された動作機能および制御ステートメントを解析、解釈、およびコンパイルすることによって、構文的に正しいプログラムコード(たとえば、SEBOLコード)を生成するように構成されるプロセッサ実装コードジェネレータコントローラを備え、これは、コマンドリポジトリ604から検索された可能性がある。
図7は、本発明を実装するために、SFCシーケンスエディタによって生成および制御されるディスプレイインターフェース700を示している。一実施形態では、ディスプレイインターフェース700は、SFCシーケンスエディタコントローラ602によって生成されてもよい。ディスプレイインターフェース700は、ダイヤグラムパネル702、制御ステートメントパネル704、コマンドパネル706、および構成パラメータパネル708を含む、複数のインターフェースサブウィンドウを含むように構成されてもよい。
ディスプレイインターフェース700またはダイヤグラムパネル702は、SFC内の動作シーケンスに関与する機器またはコンポーネントの図式表現の生成、表示、および編集を可能にするように構成されてもよい。たとえば、(図8に示されるように)図式表現800を生成するために、ダイヤグラムパネル702が使用されてもよく、図面内の機器またはコンポーネントは、機器またはそのコンポーネントの選択可能な図式表現のライブラリまたはメニューからユーザによって選択されてもよい。図式表現800において、破線のボックス内の機器またはコンポーネントは、ユーザによって選択可能な機器またはコンポーネントを表す。選択された各機器またはコンポーネントは、機能ブロック識別子(たとえば、機能ブロック名)および機能ブロックタイプに関連付けられてもよい。
様々な実施形態では、ディスプレイインターフェース700は、ダイヤグラムパネル702が、(i)ユーザが、1つまたは複数の動作シーケンスに含まれる物理的な機器またはコンポーネントの図面、図、あるいは視覚的または図式的な表現を含めることができるようにすることと、(ii)ユーザが、ライブラリまたはメニューから物理的な機器またはコンポーネントの図あるいは視覚的または図式的な表現を選択できるようにすることと、(iii)ユーザが、ダイヤグラムパネル702内に含まれる機器またはコンポーネントを、対応する機能ブロック識別子(たとえば、機能ブロック名)および/または機能ブロックタイプと関連付けることができるようにすることと、(iv)図面、図、あるいは視覚的または図式的な表現に含まれている機器またはコンポーネントに関連付けられる動作の表示を可能にすることとを行うように構成されるように構成されてもよい。
一実施形態では、ディスプレイインターフェース700は、ダイヤグラムパネル702内に表される機器またはコンポーネント上でユーザ命令(たとえば、マウスまたはポインティングデバイスからの右クリック)を受信すると、機器またはそのコンポーネントにおいて実行することができる動作機能のリストが表示される(たとえば、ドロップダウンメニューの表示)ように構成されてもよい。例として、機器あるいは1つまたは複数のコンポーネントに関連付けられる動作機能は、「開く」、「閉じる」、「実行する」または「停止する」動作機能のいずれかを含んでもよい。
この実施形態の例示的な例は、図9に示される階層的コンテキストメニュー900内に提供される。図9は、ダイヤグラム800においてバルブデバイスを選択することによって、ユーザは、コマンドを呼び出してバルブを開く/閉じる/実行する/停止するか、前記バルブデバイスに関連付けられる機能ブロックのプロパティを読み取る/書き込む(たとえば、そのパラメータ値を処理、操作、および設定する)を選択することができる方法を示している。図9の階層的コンテキストメニュー900から観察されるように、タグ“01XV001”(バルブデバイスである)に対応する機器を選択すると、選択可能な「コマンド」、「読み取る」および「書き込む」オプションを提供するドロップダウンメニュー904が生じる。ドロップダウンメニュー904において「コマンド」オプションを選択すると、「開く」、「閉じる」、「実行する」および「停止する」動作機能を提供するドロップダウンサブメニュー906が表示され、ドロップダウンメニュー904において「読み取る」または「書き込む」オプションのいずれかを選択すると、「プロセス値(PV)」、「操作値(MV)」および「設定値(SV)」動作機能を提供するドロップダウンサブメニュー908が生じ、選択された機器に関連して「読み取る」または「書き込む」命令を実装するために、いずれかを選択することができる。したがって、ダイヤグラムパネル702は、様々な動作機能、および選択された機器またはコンポーネントの様々な動作パラメータが構成されることを可能にする。
図10により詳細に示されるように、特定の動作機能(たとえば、図9におけるバルブデバイスを開く/閉じる/実行する/停止する命令)を選択すると、選択された動作機能がディスプレイインターフェース700内のコマンドパネル706、1010に追加される。
さらに、図10に示されるように、ディスプレイインターフェース700は、コマンドパネル706、1010が少なくとも2つの列を含むように構成されてもよい。第1の列は、機能(すなわち、選択された動作機能の説明)を表示するために使用され、第2の列は、プログラムコード(たとえば、SEBOLコード)において擬似コードとして、または、擬似コードと同様の方法もしくは形式で実行される動作ステートメントを表示するために使用される。
機器またはコンポーネントに関連付けられる各動作機能は、対応する動作機能タイプを有していてもよく、動作機能タイプは、動作機能が対応するカテゴリを表す情報を備える。言い換えれば、動作機能タイプは、類似した動作機能の論理グループを表す。たとえば、(i)動作機能「開く」および「閉じる」は、動作機能タイプ「コマンド」に対応してもよく、(ii)動作機能「PVを読み取る」および「MVを読み取る」は動作機能タイプ「読み取る」に対応してもよく、(iii)動作機能「SVを書き込む」および「PVを書き込む」は、動作機能タイプ「書き込む」に対応してもよい。
機器またはコンポーネントに関連付けられている、または選択されている各動作機能タイプ(すなわち、動作機能の各カテゴリ)は、その動作機能タイプの動作機能に関連付けられている異なる構成パラメータを有していてもよい。言い換えれば、特定の動作機能タイプの動作機能は、その動作機能タイプに関連付けられる構成パラメータを継承する。したがって、同じ動作機能タイプに対応する動作機能は、通常、同じ構成パラメータを有する。
図11に示されるように、ディスプレイインターフェース700は、動作機能が選択されてコマンドパネル1102に追加されるときに、各動作機能に、動作機能タイプに関連付けられる構成パラメータ1106が割り当てられるように構成されてもよい。さらに、各構成パラメータにはデフォルト値が割り当てられてもよい。
ディスプレイインターフェース700は、構成パラメータ値(上記の方法で割り当てられたデフォルト値であるものを含む)が、構成パラメータパネル708を通じてユーザまたは制御エンジニアによって修正されてもよいように構成される場合がある。たとえば、図10のコマンドパネル1010に示されている初期のデフォルト変数名"var1"は、その後、ユーザ入力を通じてより適切な変数名に置き換えられてもよい。
動作機能に加えて、1つまたは複数の制御ステートメントを機器あるいはその1つまたは複数のコンポーネントに関連付けることもできる。
各制御ステートメントには、その制御ステートメントに関連付けられる異なる構成パラメータを有していてもよい。
図11に示されるように、コマンドパネル1102内に表される各制御ステートメントに、制御ステートメントに関連付けられる構成パラメータ1104および1108が割り当てられてもよい。構成パラメータ1104および1108のそのような各制御ステートメントセットには、デフォルト値が割り当てられてもよい。
ディスプレイインターフェース700は、制御ステートメントが制御ステートメントパネル704を通じて追加されることを可能にするようにさらに構成されてもよい。そのような制御ステートメント(たとえば、for-loop(s)、while-loop(s)、if-elseステートメント)を使用すると、ユーザまたはオペレータは、プログラムコードの順序とフローを制御できるようになる。図12に示されるように、1つまたは複数の制御ステートメントは、制御ステートメントパネル704内で(複数の利用可能なテンプレート制御ステートメントの中から)選択されてもよく、したがって、コマンドパネル706、1010に追加することができる。ディスプレイインターフェース700は、制御ステートメントパラメータが最初にデフォルトパラメータ値を割り当てられてもよいように構成されてもよく、これらのデフォルトパラメータ値は、構成パラメータパネル708を通じて後で修正することができる。
一実施形態では、ディスプレイインターフェース700は、制御ステートメントパネル704が、SFCにリンクされるか、またはSFC内に実装されることが意図されるプログラムコード内に含めるために、およびユーザ入力に基づいて、プログラムコードに含めるために表示された制御ステートメントのうちの1つまたは複数を選択するために、ユーザが選択できる制御ステートメントのリストを表示するように構成されてもよい。
さらに、ディスプレイインターフェース700は、コマンドパネル706が、SFCにリンクされるか、またはSFC内に実装されることが意図されるプログラムコード内に含めるためにユーザによって選択された制御ステートメントおよび動作のリストを表示することが可能になるように構成されてもよい。
さらに、ディスプレイインターフェース700は、構成パラメータパネル708により、ユーザは、SFCにリンクされるか、またはSFC内に実装されることが意図されるプログラムコード内に含めるために選択された動作機能および/または制御ステートメントの構成パラメータを修正することができるように構成されてもよい。
必要なすべての動作機能および制御ステートメントがコマンドパネル706内に適切に入力および構成されると、コードジェネレータ(たとえば、図6のシステム600のコードジェネレータコントローラ608によって実装されるコードジェネレータ)は、動作および制御ステートメントを構文的に正しいプログラムコード、たとえば、構文的に正しいSEBOLプログラムに変換するために実行され、これは、対応するSFCにリンクすることができ、また、対応するSFCを実装するために直接使用することができる。
図13は、本発明の教示に従って、SFC内でプログラムコードを生成する方法を示している。一実施形態では、図13の方法は、図6のシステム600内に実装されてもよい。
ステップ1302は、バッチプロセスのためのSFCの生成を開始することを備える。SFCの生成は、ユーザから受信した開始命令に基づいて、SFCシーケンスエディタコントローラ602において開始されてもよい。
ステップ1304は、SFCを実装するために選択された機器を表す機器選択データを受信することを備える。機器選択データは、SFC内の動作機能の実装のためにユーザによって選択された1つまたは複数の機器またはコンポーネントを識別するデータを備えてもよい。前記データは、ユーザによって選択された機器またはコンポーネントを識別する受信されたユーザ入力に基づいてもよい。一実施形態では、機器またはコンポーネントを選択するためのユーザ入力は、ディスプレイインターフェース700内のダイヤグラムパネル702を通じて受信されてもよい。機器選択データを受信することは、選択された各機器またはコンポーネントに関連付けられる機能ブロックおよび/または機能ブロックタイプを表すデータを受信または検索するステップをさらに含んでもよい。受信された機器選択データは、受信された機器選択データがコマンドリポジトリ604内に記憶された対応するコマンドに関連付けられる方法で、システム600のコマンドリポジトリ604内に検索可能に記憶されてもよい。一実施形態では、機器選択データは、前記機器選択データを対応するSFC、あるいはSFC内の対応するステップまたは動作機能に関連付けるデータとともに、コマンドリポジトリ604内に記憶される。
ステップ1306は、選択された機器またはコンポーネントによって実装されることを意図した動作機能のセットを表す動作データを受信することを備える。データは、ステップ1304において受信された情報に基づいて識別される、選択された機器またはコンポーネントに対応する1つまたは複数の動作機能を表してもよい。一実施形態では、動作機能のセット内の動作機能は、選択された機器またはコンポーネントに対応する機能ブロックタイプに関連付けられる1つまたは複数の動作機能からなる。ステップ1306におけるデータは、ディスプレイインターフェース700内のダイヤグラムパネル702内で受信されたユーザ入力を通じて受信されてもよい。
ステップ1308は、動作機能のセット内の1つまたは複数の動作機能に対応する1つまたは複数の構成パラメータに値を割り当てることを備える。任意の構成パラメータの場合、割り当てられた値は、その構成パラメータに関連付けられる定義済みの値/デフォルト値のいずれかを含んでもよく、またはユーザ指定の値を備えてもよい。一実施形態では、1つまたは複数の値が、ディスプレイインターフェース700内の構成パラメータパネル708を通じて受信されたユーザ入力に基づいて、動作構成パラメータに割り当てられてもよい。
ステップ1310は、動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信することを備える。制御ステートメントデータは、ステップ1304において受信された情報に基づいて識別される、選択された機器またはコンポーネントに対応する1つまたは複数の制御ステートメントを表してもよい。ステップ1310における制御ステートメントは、ディスプレイインターフェース700内の制御ステートメントパネル704内で受信されたユーザ入力を通じて受信されてもよい。
ステップ1312は、制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を割り当てることを備える。任意の制御ステートメント構成パラメータの場合、割り当てられた値は、その制御ステートメント構成パラメータに関連付けられる定義済みの値/デフォルト値のいずれかを含んでもよく、またはユーザ指定の値を備えてもよい。一実施形態では、1つまたは複数の値が、ディスプレイインターフェース700内の構成パラメータパネル708を通じて受信されたユーザ入力に基づいて、制御ステートメント構成パラメータに割り当てられてもよい。
ステップ1314は、受信した動作データ、受信した制御ステートメントデータ、割り当てられた動作構成パラメータ、および割り当てられた制御ステートメント構成パラメータのうちの1つまたは複数に基づいて、動作機能および制御ステートメントのセットを実装するための機械可読プログラムコードを生成することを備える。一実施形態では、機械可読コードは、システム600のコードジェネレータコントローラ608によって生成されてもよい。好ましい実施形態では、機械可読コードは、SEBOLプログラムコードである。
図14は、図13の方法ステップ1304に従って機器選択データを受信する方法を示している。一実施形態では、図14の方法は、ディスプレイインターフェース700内に実装されるように、ダイヤグラムパネル702を通じて実装されてもよい。
ステップ1402は、ディスプレイインターフェース700のダイヤグラムパネル702内で、機器選択的ユーザ入力を備える入力を受信することを備える。機器選択的ユーザ入力は、SFC内の動作の実装のためにユーザによって選択された1つまたは複数の機器またはコンポーネントを識別するユーザ入力を備えてもよい。機器またはコンポーネントを選択するためのユーザ入力は、ディスプレイインターフェース700内のダイヤグラムパネル702を通じて受信されてもよい。
ステップ1404は、ステップ1402において受信された機器選択的ユーザ入力に基づいて選択された機器またはコンポーネントの視覚的表現をディスプレイ上にレンダリングすることを備える。
ステップ1406は、選択された機器またはコンポーネントに関連付けられる機能ブロック識別子データおよび/または機能ブロックタイプデータを受信することを備える。機能ブロック識別子データおよび/または機能ブロックタイプデータは、ユーザ入力を通じて受信されてもよく、P&IDから抽出されてもよく、データベースから検索されてもよい。
図15は、図13の方法ステップ1306に従って、選択された機器またはコンポーネントによって実装されることを意図された動作機能のセットを表す動作データを受信する方法を示す。一実施形態では、図15の方法は、ディスプレイインターフェース700内に実装されるように、ダイヤグラムパネル702を通じて実装されてもよい。
ステップ1502は、選択された機器またはコンポーネントにおいて実行可能な動作機能のリストを表示することによって、ディスプレイインターフェース700を通じて(たとえば、ダイヤグラムパネル702を通じて)ユーザ入力を受信することに応答することを備える。ユーザ入力は、ダイヤグラムパネル702内に表される機器またはコンポーネントに関連して、ユーザインターフェースデバイス、たとえば、マウスまたはポインタデバイスからの右クリックを通じて、任意の入力を備えてもよい。動作機能のリストは、ドロップダウンメニューまたはユーザ入力に応じて表示されるリストの形式で表示されてもよい。ユーザ入力の受信に応答した、機器またはコンポーネントに関連付けられる動作機能のリストの表示の例示的な例は、図9の階層的コンテキストメニュー900に示されている。一実施形態では、機器またはコンポーネントに関連付けられる動作機能のリストは、機器またはコンポーネントに対応する機能ブロックタイプに関連付けられる動作機能のリストを備えてもよい。
ステップ1504は、ディスプレイインターフェースを通じてユーザ入力を受信することを備え、前記ユーザ入力は、実行可能な動作機能の表示されたリストから動作機能を選択する。この場合も、ユーザ入力は、ユーザが実行可能な動作機能の表示されたリストから選択しようと意図する動作機能に対する、ユーザインターフェースデバイス、たとえば、マウスまたはポインタデバイスからの左クリックを通じて、任意の入力を備えてもよい。
ステップ1506は、選択された動作機能に関連付けられる動作機能タイプを識別することを備える。動作機能タイプは、ステップ1502において表示される実行可能な動作機能のリスト内の各動作機能に関連付けられる定義済みまたは記憶された動作機能タイプ情報に基づいて識別されてもよい。一実施形態では、動作機能タイプは、動作機能リポジトリ606から検索されたデータに基づいて、SFCシーケンスエディタコントローラ602によって識別されてもよい。
ステップ1508は、識別された動作機能タイプに関連付けられる構成パラメータのセットを検索することを備える。
その後、ステップ1510は、ディスプレイインターフェース700のコマンドパネル706内で選択された動作機能の表示を開始することを備える。一実施形態では、コマンドパネル706における選択された動作機能の表示は、コマンドパネル706における第1の列内の選択された動作機能の説明を表示すること、およびコマンドパネルにおける第2の列内の選択された動作機能に対応する擬似コードを表示することを含む。
図16は、動作機能のセット内の1つまたは複数の動作機能に構成パラメータを割り当てる方法を示すフローチャートである。一実施形態では、図16の方法は、図13の方法のステップ1308を実装する目的で実行される。一実施形態では、図16の方法は、SFCシーケンスエディタコントローラ602内に実装されてもよい。
ステップ1602は、選択された動作機能を、選択された動作機能構成パラメータのセットに関連付けることを備える。選択された動作機能構成パラメータのセットは、選択された動作機能に関連付けるための動作機能構成パラメータを選択または識別する1つまたは複数のユーザ入力に基づいて識別されてもよい。一実施形態では、動作機能構成パラメータは、ディスプレイインターフェース700内のダイヤグラムパネル702を通じて受信されたユーザ入力によって選択されてもよい。
ステップ1604において、選択された動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータについて、デフォルトの動作機能構成パラメータ値が検索される。デフォルトの動作機能構成パラメータ値は、デフォルトの動作機能構成パラメータ値を記憶するように構成されたデータベースから検索されてもよい。一実施形態では、デフォルトの動作機能構成パラメータ値は、動作機能リポジトリ606から検索されてもよい。デフォルトの動作機能構成パラメータ値の検索は、SFCシーケンスエディタコントローラ602によって実装されてもよい。
ステップ1606は、選択された動作機能に関連付けられる対応する動作機能構成パラメータにデフォルトの動作機能構成パラメータ値を割り当てることを備える。一実施形態では、割り当てるステップは、SFCシーケンスエディタコントローラ602によって実装されてもよい。
ステップ1608は、ディスプレイインターフェース700を通じて、(たとえば、ディスプレイインターフェース700内の構成パラメータパネル708を通じて)ユーザ入力を受信することを備え、受信されたユーザ入力は、選択された動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータに割り当てるための1つまたは複数のデフォルト以外の(たとえば、ユーザ指定の)パラメータ値を識別または指定する。
ステップ1610は、デフォルト以外の(すなわち、ユーザ指定の)パラメータ値を、選択された動作機能に対応する動作機能構成パラメータに割り当てることを備える。一実施形態では、割当てステップ1610は、SFCシーケンスエディタコントローラ602によって実装されてもよい。
図17は、動作のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信するための方法を示すフローチャートである。図17の方法は、図13の方法ステップ1308の目的のために実装されてもよい。一実施形態では、図17の方法は、ディスプレイインターフェース700内に実装されるように、制御ステートメントパネル704を通じて実装されてもよい。
ステップ1702は、1つまたは複数の動作、または動作機能、あるいは選択された機器によって実装されることを意図したステップに対応するプロセスフロー制御のための選択可能な制御ステートメントのリストを表示することを備える。
ステップ1704は、選択可能な制御ステートメントのリストから制御ステートメントを選択することによって、ディスプレイインターフェース700を通じて(たとえば、制御ステートメントパネル704を通じて)ユーザ入力の受信に応答することを備える。ユーザ入力は、制御ステートメントパネル704内に表示された制御ステートメントに対するユーザインターフェースデバイス、たとえば、マウスまたはポインタデバイスからの右クリックを通じて、任意の入力を備えてもよい。
ステップ1706は、選択された制御ステートメントに関連付けられる構成パラメータのセットを検索することを備える。選択された制御ステートメントに関連付けられる構成パラメータのセットは、動作機能リポジトリ606からSFCシーケンスエディタコントローラ602によって検索されてもよい。一実施形態では、構成パラメータのセットは、構成パラメータの前記セットが制御ステートメントに関連付けられているという決定に基づいて検索されてもよい。
ステップ1708は、ディスプレイインターフェース700のコマンドパネル706内で選択された制御ステートメントの表示を開始することを備える。
図18は、制御ステートメントのセット内の1つまたは複数の制御ステートメントに制御ステートメント構成パラメータを割り当てる方法を示すフローチャートである。図18の方法は、図13の方法を実装するステップ1312の目的のために実行されてもよい。一実施形態では、図18の方法は、SFCシーケンスエディタコントローラ602内で実装されてもよい。
ステップ1802は、選択された動作機能で、選択された制御ステートメント構成パラメータのセットを識別することを備える。選択された制御ステートメント構成パラメータのセットは、選択された動作機能に関連付けるための制御システム構成パラメータを選択または識別する1つまたは複数のユーザ入力に基づいて識別されてもよい。一実施形態では、制御システム構成パラメータは、ディスプレイインターフェース700内の制御ステートメントパネル708を通じてユーザ入力によって選択されてもよい。
ステップ1804は、選択された制御ステートメント構成パラメータのセット内の1つまたは複数の制御ステートメント構成パラメータに対応するデフォルトの構成パラメータ値を検索することを備える。デフォルトの制御ステートメント構成パラメータ値は、デフォルトの制御ステートメント構成パラメータ値を記憶するように構成されたデータベースから検索されてもよい。一実施形態では、デフォルトの制御ステートメント構成パラメータ値は、リポジトリまたはデータベース(たとえば、添付の図面には明示的に示されていない制御ステートメントリポジトリまたはデータベース)から検索されてもよい。デフォルトの制御ステートメント構成パラメータ値の検索は、SFCシーケンスエディタコントローラ602によって実装されてもよい。
ステップ1806は、デフォルトの構成パラメータ値をそれらの対応する制御ステートメント構成パラメータに割り当てることを備える。一実施形態では、割当てステップは、SFCシーケンスエディタコントローラ602によって実装されてもよい。
ステップ1808は、ディスプレイインターフェース700を通じて(たとえば、ディスプレイインターフェース700内の構成パラメータパネル708を通じて)入力を受信することを備え、受信されたユーザ入力は、選択された制御ステートメント構成パラメータのセット内の1つまたは複数の制御ステートメント構成パラメータに割り当てるための1つまたは複数のデフォルト以外の(または、ユーザ指定の)パラメータ値を識別または指定する。
ステップ1810は、デフォルト以外の(または、ユーザが割り当てた)パラメータ値を、それらの対応する制御ステートメント構成パラメータに割り当てることを備える。一実施形態では、割当てステップ1610は、SFCシーケンスエディタコントローラ602によって実装されてもよい。
図19は、受信した動作機能、受信した制御ステートメントデータ、割り当てられた動作機能構成パラメータ、および割り当てられた制御ステートメント構成パラメータのうちの1つまたは複数に基づいて、動作機能のセットを実装するための機械可読コードを生成する方法を示すフローチャートである。一実施形態では、図19の方法は、図13の方法のステップ1314を実装するために実行される。図19の方法は、システム600内のプロセッサ実装コードジェネレータコントローラ608によって実装されてもよい。一実施形態では、図19の方法は、SEBOLプログラムコードの生成をもたらす。
ステップ1902は、(i)選択された機器またはコンポーネントにおける実装のために選択された動作機能のセットと、(ii)動作機能のセット内の1つまたは複数の動作機能に対応するプロセスフロー制御のために選択された制御ステートメントのセットとのうちの1つまたは両方に対応する、機械コード生成ルールのセットを検索することを備える。
ステップ1904は、選択された機器またはコンポーネントに動作機能のセットを実装するための機械可読プログラムコードを生成することであって、生成された機械可読プログラムコードが、(i)検索された機械コード生成ルールのセットと、(ii)動作機能のセット、および動作機能のセットに関連付けられる1つまたは複数の動作機能構成パラメータに割り当てられた1つまたは複数の動作機能構成パラメータ値と、(iii)制御ステートメントのセット、および制御ステートメントのセットに関連付けられる1つまたは複数の制御ステートメント構成パラメータに割り当てられる1つまたは複数の制御ステートメント構成パラメータ値と、(iv)機能ブロック識別子データおよび/あるいは選択された機器またはコンポーネントに関連付けられる機能ブロックタイプデータとに基づく、生成することを備える。一実施形態では、検索された機械コード生成ルールのセットは、指定されたプログラミング言語で機械語可読コードを生成するための構文的および/または語彙ルールのセットを備えてもよい。さらなる実施形態では、検索された機械コード生成ルールのセットは、SEBOLプログラムコードを生成するための構文ルールおよび/または語彙ルールのセットである。
図20は、本発明の様々な実施形態が実装されてもよい例示的なコンピュータシステムを示す図である。
システム2000は、コンピュータシステム2002を含み、コンピュータシステム2002は、1つまたは複数のプロセッサ2004および少なくとも1つのメモリ2006を備える。プロセッサ2004は、プログラム命令を実行するように構成されており、実際のプロセッサであってもよく仮想プロセッサであってもよい。コンピュータシステム2002は、記載された実施形態の使用範囲または機能に関していかなる制限も示唆していないことが理解されよう。コンピュータシステム2002は、これらに限定されないが、汎用コンピュータ、プログラムされたマイクロプロセッサ、マイクロコントローラ、集積回路、および本発明の方法を構成するステップを実装することができる他のデバイスまたはデバイスの配置のうちの1つまたは複数を含んでもよい。本発明によるコンピュータシステム2002の例示的な実施形態は、1つまたは複数のサーバ、デスクトップ、ラップトップ、タブレット、スマートフォン、モバイル電話、モバイル通信デバイス、タブレット、ファブレット、および携帯情報端末を含んでもよい。本発明の一実施形態では、メモリ2006は、本発明の様々な実施形態を実装するためのソフトウェアを記憶してもよい。コンピュータシステム2002は、追加のコンポーネントを有してもよい。たとえば、コンピュータシステム2002は、1つまたは複数の通信チャネル2008、1つまたは複数の入力デバイス2010、1つまたは複数の出力デバイス2012、およびストレージ2014を含んでもよい。バス、コントローラ、またはネットワークなどの相互接続メカニズム(図示せず)は、コンピュータシステム2002のコンポーネントを相互接続する。本発明の様々な実施形態では、オペレーティングシステムソフトウェア(図示せず)は、プロセッサ2004を使用してコンピュータシステム2002において実行される様々なソフトウェアに動作環境を提供し、コンピュータシステム2002のコンポーネントの異なる機能を管理する。
通信チャネル2008は、通信媒体を介した他の様々なコンピューティングエンティティへの通信を可能にする。通信媒体は、プログラム命令などの情報、または通信媒体内の他のデータを提供する。通信媒体は、電気、光学、RF、赤外線、音響、マイクロ波、ブルートゥース(登録商標)、または他の伝送媒体で実装されたワイヤードまたはワイヤレスの方法論を含むが、これらに限定されない。
入力デバイス2010は、タッチスクリーン、キーボード、マウス、ペン、ジョイスティック、トラックボール、ボイスデバイス、走査デバイス、またはコンピュータシステム2002に入力を提供することができる任意の別のデバイスを含んでもよいが、これらに限定されない。本発明の一実施形態では、入力デバイス2010は、アナログまたはデジタル形式の音声入力を受け入れるサウンドカードまたは同様のデバイスであってもよい。出力デバイス2012は、CRT、LCD、LEDディスプレイ上のユーザインターフェース、またはサーバ、デスクトップ、ラップトップ、タブレット、スマートフォン、モバイル電話、モバイル通信デバイス、タブレット、ファブレット、および携帯情報端末、プリンタ、スピーカ、CD/DVDライタ、またはコンピュータシステム2002からの出力を提供する任意の他のデバイスのいずれかに関連付けられる任意の他のディスプレイを含んでもよいが、これらに限定されない。
ストレージ2014は、磁気ディスク、磁気テープ、CD-ROM、CD-RW、DVD、あらゆる種類のコンピュータメモリ、磁気ストライプ、スマートカード、印刷されたバーコード、あるいは情報を記憶するために使用することができ、コンピュータシステム2002によってアクセスすることができる任意の他の一時的または非一時的媒体を含んでもよいが、これらに限定されない。本発明の様々な実施形態では、ストレージ2014は、記載された実施形態のうちのいずれかを実装するためのプログラム命令を含んでもよい。
本発明の一実施形態では、コンピュータシステム2002は、分散ネットワークの一部または利用可能なクラウドリソースのセットの一部である。
本発明は、システム、方法、あるいはコンピュータ可読ストレージ媒体またはプログラミング命令が遠隔地から通信されるコンピュータネットワークなどのコンピュータプログラム製品として含む、多くの方法で実装されてもよい。
本発明は、コンピュータシステム2002で使用するためのコンピュータプログラム製品として適切に具体化されてもよい。本明細書で説明される方法は、通常、コンピュータシステム2002または他の任意の同様のデバイスによって実行されるプログラム命令のセットを備える、コンピュータプログラム製品として実装される。プログラム命令のセットは、コンピュータ可読ストレージ媒体(ストレージ2014)、たとえば、ディスケット、CD-ROM、ROM、フラッシュドライブまたはハードディスク、あるいはモデムまたは他のインターフェースデバイスを介して、光またはアナログ通信チャネル2008を含むが、これらに限定されない、有形の媒体を介してコンピュータシステム2002に伝送可能などの有形媒体に記憶された、一連のコンピュータ可読コードであってもよい。コンピュータプログラム製品としての本発明の実装形態は、マイクロ波、赤外線、ブルートゥース(登録商標)または他の伝送技法を含むが、これらに限定されない、ワイヤレス技法を使用する無形の形態であってもよい。これらの命令は、システムにプリロードするか、CD-ROMなどのストレージ媒体に記録するか、インターネットまたはモバイル電話ネットワークなどのネットワークを介するダウンロードのために利用可能にすることができる。一連のコンピュータ可読命令は、本明細書で前述した機能の全部または一部を具体化してもよい。
上記に基づいて、本発明が重要な利点を提供することは明らかであろう。特に、本発明は、プロセス制御システム内のバッチプロセスのために1つまたは複数のSFCを生成するための手動コーディング要件の量を最小限に抑える。さらに、本発明は、P&IDの視覚的表現を(ディスプレイインターフェースのダイヤグラムパネルを通じて)ユーザインターフェースに統合することを可能にし、それによって、P&IDとユーザインターフェースとの間で継続的に切り替える必要性を排除する。さらに、本発明は、プロセス制御システム固有のプログラミング言語(SEBOLなど)についての深い知識を持たない可能性があるユーザが、それにもかかわらず、そのようなプログラミング言語を実装するSFCを生成することを可能にする。
本発明の例示的な実施形態は、本明細書で説明および図示されているが、それらは単に例示であることが理解されよう。当業者は、添付の特許請求の範囲によって定義される本発明の趣旨および範囲から逸脱したり、それを害したりすることなしに、形式および詳細において様々な修正が行われてもよいことを理解する。さらに、本明細書に例示的に適切に開示される本発明は、本明細書に具体的に開示されていない要素がない状態で実施されてもよく、具体的に企図される特定の実施形態では、本発明は、本明細書に具体的に開示されていない1つまたは複数の要素がない状態で実施されることが意図されている。
100 P&ID
100 プロセス環境
200 SFC
300 表現
302 P&ID
304 プログラムコード
400 SFCシーケンスエディタ
500 表現
502 SFCシーケンスエディタ
504 テキストベースのエディタ
600 システム
602 SFCシーケンスエディタコントローラ
604 コマンドリポジトリ
606 動作機能リポジトリ
608 コードジェネレータコントローラ
610 プログラムコード
700 ディスプレイインターフェース
702 ダイヤグラムパネル
704 制御ステートメントパネル
706 コマンドパネル
708 構成パラメータパネル
800 図式表現
900 階層的コンテキストメニュー
904 ドロップダウンメニュー
906 ドロップダウンサブメニュー
908 ドロップダウンサブメニュー
1010 コマンドパネル
1010 構成パネル
1102 コマンドパネル
1104 構成パラメータ
1106 構成パラメータ
1108 構成パラメータ
2000 システム
2002 コンピュータシステム
2004 プロセッサ
2006 メモリ
2008 通信チャネル
2010 入力デバイス
2012 出力デバイス
2014 ストレージ

Claims (15)

  1. プロセス制御システム内のプロセス制御のためのシーケンシャルファンクションチャート内にプログラムコードを生成するためのプロセッサ実装方法であって、
    シーケンスフローを実装するために選択された機器を表す機器選択データを受信するステップと、
    前記選択された機器によって実装されることを意図した動作機能のセットを表す動作データを受信するステップと、
    1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を割り当てるステップと、
    前記動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信するステップと、
    前記制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を割り当てるステップと、
    前記受信した動作データ、前記受信した制御ステートメントデータ、前記割り当てられた動作機能構成パラメータ、および前記割り当てられた制御ステートメント構成パラメータのうちの1つまたは複数に基づいて、前記動作機能のセットを実装するための機械可読プログラムコードを生成するステップと
    を備える、プロセッサ実装方法。
  2. 機器選択データを前記受信するステップが、
    ディスプレイインターフェース700内で、機器選択的ユーザ入力を備える入力を受信するステップと、
    ディスプレイ上で、前記機器選択的ユーザ入力に基づいて選択された機器の視覚的表現をレンダリングするステップと、
    前記選択された機器に関連付けられる機能ブロック識別子データおよび機能ブロックタイプデータを受信するステップと、
    前記選択された機器によって実装されることを意図した動作機能のセットを表す動作データを受信するステップと
    を備える、請求項1に記載の方法。
  3. 前記選択された機器によって実装されることを意図した動作機能のセットを表す動作データを前記受信するステップが、
    前記選択された機器で実行可能な動作機能のリストを表示することによって、ユーザ入力の受信に応答するステップと、
    別のユーザ入力を介して、前記表示された動作機能のリストから動作機能の選択を受信するステップと、
    前記選択された動作機能に関連付けられる動作機能タイプを識別するステップと、
    前記識別された動作機能タイプに関連付けられる構成パラメータのセットを検索するステップと、
    ディスプレイインターフェース内で前記選択された動作機能の表示を開始するステップと
    を備える、請求項1に記載の方法。
  4. 前記動作機能のセット内の1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を前記割り当てるステップが、
    選択された動作機能に、選択された動作機能構成パラメータのセットを関連付けるステップと、
    選択された前記動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータのデフォルトの動作機能構成パラメータ値を検索するステップと、
    前記選択された動作機能に関連付けられる対応する動作機能構成パラメータに前記デフォルトの動作機能構成パラメータ値を割り当てるステップと、
    選択された前記動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータに割り当てるための1つまたは複数のユーザ指定パラメータ値を識別するユーザ入力を受信するステップと、
    前記選択された動作機能に対応する動作機能構成パラメータに前記ユーザ指定パラメータ値を割り当てるステップと
    を備える、請求項1に記載の方法。
  5. 前記動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを前記受信するステップが、
    前記選択された機器によって実装されることを意図した1つまたは複数の動作機能に対応するプロセスフロー制御のための選択可能な制御ステートメントのリストを表示するステップと、
    ユーザ入力に基づいて、前記選択可能な制御ステートメントのリストから制御ステートメントを選択するステップと、
    前記選択された制御ステートメントに関連付けられる構成パラメータのセットを検索するステップと、
    前記ディスプレイインターフェース内で前記選択された制御ステートメントの表示を開始するステップと
    を備える、請求項1に記載の方法。
  6. 前記制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を前記割り当てるステップが、
    前記制御ステートメントのセット内の制御ステートメントに対応する制御ステートメント構成パラメータのセットを識別するステップと、
    前記識別された制御ステートメント構成パラメータのセット内の1つまたは複数の制御ステートメント構成パラメータに対応するデフォルトの構成パラメータ値を検索するステップと、
    前記デフォルトの構成パラメータ値を対応する制御ステートメント構成パラメータに割り当てるステップと、
    前記制御ステートメント構成パラメータのうちの1つまたは複数に割り当てるための1つまたは複数のユーザ指定パラメータ値を識別するユーザ入力を受信するステップと、
    前記ユーザ指定パラメータ値を前記対応する制御ステートメント構成パラメータに割り当てるステップと
    を備える、請求項1に記載の方法。
  7. 前記動作機能のセットを実装するための機械可読SEBOLプログラムコードを前記生成するステップが、
    (i)前記選択された機器における実装のために選択された動作機能のセットと、(ii)前記動作機能のセット内の1つまたは複数の動作機能に対応するプロセスフロー制御のために選択された制御ステートメントのセットとに対応する、機械コード生成ルールのセットを検索するステップと、
    前記選択された機器に前記動作機能のセットを実装するための機械可読プログラムコードを生成するステップであって、前記生成された機械可読プログラムコードが、(i)検索された機械コード生成ルールのセットと、(ii)動作機能のセット、および前記動作機能のセットに関連付けられる1つまたは複数の動作機能構成パラメータに割り当てられた1つまたは複数の動作機能構成パラメータ値と、(iii)制御ステートメントのセット、および前記制御ステートメントのセットに関連付けられる1つまたは複数の制御ステートメント構成パラメータに割り当てられる1つまたは複数の制御ステートメント構成パラメータ値と、(iv)前記選択された機器に関連付けられる機能ブロックタイプデータと
    に基づく、ステップと
    を備える、請求項1に記載の方法。
  8. プロセス制御システム内のプロセス制御のためのシーケンシャルファンクションチャート内にプログラムコードを生成するためのシステムであって、
    メモリと、
    シーケンスフローを実装するために選択された機器を表す機器選択データを受信することと、
    前記選択された機器によって実装されることを意図した動作機能のセットを表す動作データを受信することと、
    1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を割り当てることと、
    前記動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信することと、
    前記制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を割り当てることと、
    前記受信した動作データ、前記受信した制御ステートメントデータ、前記割り当てられた動作機能構成パラメータ、および前記割り当てられた制御ステートメント構成パラメータのうちの1つまたは複数に基づいて、前記動作機能のセットを実装するための機械可読プログラムコードを生成することと
    を行うように構成されたプロセッサと
    を備える、システム。
  9. 機器選択データを前記受信することが、
    ディスプレイインターフェース内で、機器選択的ユーザ入力を備える入力を受信することと、
    ディスプレイ上で、前記機器選択的ユーザ入力に基づいて選択された機器の視覚的表現をレンダリングすることと、
    前記選択された機器に関連付けられる機能ブロック識別子データおよび機能ブロックタイプデータを受信することと、
    前記選択された機器によって実装されることを意図した動作機能のセットを表す動作データを受信することと
    を備えるように構成される、請求項8に記載のシステム。
  10. 前記選択された機器によって実装されることを意図した動作機能のセットを表すデータを前記受信することが、
    前記選択された機器で実行可能な動作機能のリストを表示することによって、ユーザ入力の受信に応答することと、
    別のユーザ入力を介して、前記表示された動作機能のリストから動作機能の選択を受信することと、
    前記選択された動作機能に関連付けられる動作機能タイプを識別することと、
    前記識別された動作機能タイプに関連付けられる構成パラメータのセットを検索することと、
    ディスプレイインターフェース内で前記選択された動作機能の表示を開始することと
    を備えるように構成される、請求項8に記載のシステム。
  11. 前記動作機能のセット内の1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を前記割り当てることが、
    選択された動作機能に、選択された動作機能構成パラメータのセットを関連付けることと、
    選択された前記動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータのデフォルトの動作機能構成パラメータ値を検索することと、
    前記選択された動作機能に関連付けられる対応する動作機能構成パラメータに前記デフォルトの動作機能構成パラメータ値を割り当てることと、
    選択された前記動作機能構成パラメータのセット内の1つまたは複数の動作機能構成パラメータに割り当てるための1つまたは複数のユーザ指定パラメータ値を識別するユーザ入力を受信することと、
    前記選択された動作機能に対応する動作機能構成パラメータに前記ユーザ指定パラメータ値を割り当てることと
    を備えるように構成される、請求項8に記載のシステム。
  12. 前記動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを前記受信することが、
    前記選択された機器によって実装されることを意図した1つまたは複数の動作機能に対応するプロセスフロー制御のための選択可能な制御ステートメントのリストを表示することと、
    ユーザ入力に基づいて、前記選択可能な制御ステートメントのリストから制御ステートメントを選択することと、
    前記選択された制御ステートメントに関連付けられる構成パラメータのセットを検索することと、
    前記ディスプレイインターフェース内で前記選択された制御ステートメントの表示を開始することと
    を備えるように構成される、請求項8に記載のシステム。
  13. 前記制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を前記割り当てることが、
    前記制御ステートメントのセット内の制御ステートメントに対応する制御ステートメント構成パラメータのセットを識別することと、
    前記識別された制御ステートメント構成パラメータのセット内の1つまたは複数の制御ステートメント構成パラメータに対応するデフォルトの構成パラメータ値を検索することと、
    前記デフォルトの構成パラメータ値を対応する制御ステートメント構成パラメータに割り当てることと、
    前記制御ステートメント構成パラメータのうちの1つまたは複数に割り当てるための1つまたは複数のユーザ指定パラメータ値を識別するユーザ入力を受信することと、
    前記ユーザ指定パラメータ値を前記対応する制御ステートメント構成パラメータに割り当てることと
    を備えるように構成される、請求項8に記載のシステム。
  14. 前記動作機能のセットを実装するための機械可読SEBOLプログラムコードを前記生成することが、
    (i)前記選択された機器における実装のために選択された動作機能のセットと、(ii)前記動作機能のセット内の1つまたは複数の動作機能に対応するプロセスフロー制御のために選択された制御ステートメントのセットとに対応する、機械コード生成ルールのセットを検索することと、
    前記選択された機器に前記動作機能のセットを実装するための機械可読プログラムコードを生成することであって、前記生成された機械可読プログラムコードが、(i)検索された機械コード生成ルールのセットと、(ii)動作機能のセット、および前記動作機能のセットに関連付けられる1つまたは複数の動作機能構成パラメータに割り当てられた1つまたは複数の動作機能構成パラメータ値と、(iii)制御ステートメントのセット、および前記制御ステートメントのセットに関連付けられる1つまたは複数の制御ステートメント構成パラメータに割り当てられる1つまたは複数の制御ステートメント構成パラメータ値と、(iv)前記選択された機器に関連付けられる機能ブロックタイプデータと
    に基づく、生成することと
    を備えるように構成される、請求項8に記載のシステム。
  15. プロセス制御システム内のプロセス制御のためのシーケンシャルファンクションチャート内にプログラムコードを生成するためのコンピュータプログラム製品であって、前記コンピュータプログラム製品が、コンピュータ可読プログラムコードが具体化された非一時的コンピュータ使用可能媒体を備え、前記コンピュータ可読プログラムコードが、プロセッサベースのコンピューティングシステム内で、
    シーケンスフローを実装するために選択された機器を表す機器選択データを受信することと、
    前記選択された機器によって実装されることを意図した動作機能のセットを表すデータを受信することと、
    1つまたは複数の動作機能に対応する1つまたは複数の動作機能構成パラメータに値を割り当てることと、
    前記動作機能のセットの実装中にプロセスフロー制御のために実装されることを意図した制御ステートメントのセットを表す制御ステートメントデータを受信することと、
    前記制御ステートメントのセット内の1つまたは複数の制御ステートメントに対応する1つまたは複数の制御ステートメント構成パラメータに値を割り当てることと、
    前記受信した動作データ、前記受信した制御ステートメントデータ、前記割り当てられた動作機能構成パラメータ、および前記割り当てられた制御ステートメント構成パラメータのうちの1つまたは複数に基づいて、前記動作機能のセットを実装するための機械可読プログラムコードを生成することと
    を実装するための命令を備える、コンピュータプログラム製品。
JP2021209333A 2021-02-17 2021-12-23 プロセス制御システム用の実装可能なシーケンシャルファンクションチャートコードを生成するための方法、システム、およびコンピュータプログラム製品 Pending JP2022125962A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/177,707 2021-02-17
US17/177,707 US11307551B1 (en) 2021-02-17 2021-02-17 Methods, systems and computer program products for generating implementable sequential function charts codes for process control systems

Publications (1)

Publication Number Publication Date
JP2022125962A true JP2022125962A (ja) 2022-08-29

Family

ID=81187159

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021209333A Pending JP2022125962A (ja) 2021-02-17 2021-12-23 プロセス制御システム用の実装可能なシーケンシャルファンクションチャートコードを生成するための方法、システム、およびコンピュータプログラム製品

Country Status (3)

Country Link
US (1) US11307551B1 (ja)
JP (1) JP2022125962A (ja)
CN (1) CN114942616A (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003006395A (ja) * 2001-06-18 2003-01-10 Hitachi Ltd 業務支援情報抽出プログラム及びそれを用いた業務支援情報抽出システム
US7290048B1 (en) * 2002-03-29 2007-10-30 Hyperformix, Inc. Method of semi-automatic data collection, data analysis, and model generation for the performance analysis of enterprise applications
JP2012213144A (ja) * 2011-03-18 2012-11-01 Ricoh Co Ltd 情報処理装置、情報処理システム、機器連携方法およびプログラム
US9742127B2 (en) * 2011-08-31 2017-08-22 Kimball P. Magee, Jr. Power strips
US10073764B1 (en) * 2015-03-05 2018-09-11 National Technology & Engineering Solutions Of Sandia, Llc Method for instruction sequence execution analysis and visualization
US11594307B2 (en) * 2017-12-31 2023-02-28 Laboratory Corporation Of America Holdings Automatic self-documentation in a mobile-native clinical trial operations system and service suite
US11119798B2 (en) * 2018-11-15 2021-09-14 Sternum Ltd. Applying control flow integrity verification in intermediate code files

Also Published As

Publication number Publication date
CN114942616A (zh) 2022-08-26
US11307551B1 (en) 2022-04-19

Similar Documents

Publication Publication Date Title
JP6170212B2 (ja) プロセス制御システム内の操作者インターフェースディスプレイのためのアニメーションおよびイベントの構成
JP6186464B2 (ja) プロセス制御システムの環境設定及び管理を行う動的ユーザインターフェイス
JP7239248B2 (ja) 動的装置記述言語メニュー用装置及び方法
CA2421611C (en) Custom rule system and method for expert systems
JP5603316B2 (ja) プロセスプラントの構成を容易にするためのユーザインタフェース方法、システム及び方法
JP5706639B2 (ja) プロセス制御構成方法、プロセス制御構成システム、モジュールテンプレート、及びプロセス制御システム
CN109597665B (zh) 容易进行过程控制工厂中的图形显示配置设计的系统和方法
WO2014064819A1 (ja) システム構築支援ツール及びシステム
JP6751551B2 (ja) 汎用プロセスシステムライブラリに基づきプロセス制御システムを構成する方法および装置
US11714394B2 (en) Bulk commissioning of field devices within a process plant
CN103279088A (zh) 图形编程语言对象编辑及报告工具
JP6805832B2 (ja) 複数ワークシートのエクスポートの生成
JPWO2013191275A1 (ja) 制御装置
Bloch et al. Model-based engineering of CPPS in the process industries
US11307551B1 (en) Methods, systems and computer program products for generating implementable sequential function charts codes for process control systems
US12025966B2 (en) Apparatus comprising a process control system and at least one process module, related method, computer program product, and data processing device
Bee PLC and HMI Development with Siemens TIA Portal: Develop PLC and HMI programs using standard methods and structured approaches with TIA Portal V17
US20220253040A1 (en) Methods, systems and computer program products for generating and implementing engineering data within process control systems
KR20090038708A (ko) 제어시스템 개발을 위한 툴생성장치

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220301