データ収集および運用制御システム (SCADA システム)
監視制御およびデータ収集システム (SCADA システム) という用語は、1980 年代後半に登場しました。 XX世紀。同時に、グラフィカル アプリケーションがインストールされたパーソナル コンピュータをオペレータ コンソールとして使用するという最初の試みも行われました。
最初の SCADA システムは DOS または Unix オペレーティング システム用に開発され、ハードウェアのハードウェア制限とオペレーティング システムのグラフィック機能の両方により、機能はかなり控えめでした。 SCADA システムは、Windows 3.11、X-Windows、Phantom などのグラフィカル インターフェイスと、マルチタスク モードでプロセスの実行に必要な速度を達成できるハードウェアの登場と同時に普及しました。
SCADA システムがトップレベルのソフトウェア開発ツールとして出現した理由は、Borland Delphi やその他のビジュアル プログラミング システムなどのシステムが出現した理由と似ています。彼らの主な任務は、ソフトウェア開発者を標準のインターフェイスと機能を記述するという日常的な、実際には無用な負担から解放することです。同時に、SCADA システムの使用は、開発者が想像しているような、開発者の資格要件の緩和を意味するものではないことを理解する必要があります。
システムを区別する MMI (マン・マシン・インターフェース) と スカダ、両方とも互いに独立して開発に成功し、デバイス市場の異なるニッチを占めているためです。 HMI(ヒューマン・マシン・インターフェース).
MMI システムは実際には、英数字スクリーンとキーボードまたはグラフィック (通常はタッチ スクリーン) を備えた、個々のデバイスまたは技術設備用のローカル コントロール パネルです。
ほとんどの場合、MMI デバイスは特別なコントローラーを使用して実装され、そのソフトウェア部分には追加の修正や変更が含まれることはありません。
同時に、SCADA システムには標準的なパーソナル コンピュータとオペレーティング システムの使用が含まれており、多数の実行デバイスと技術ユニットが関与する大規模な技術プロセスを管理するプロセスを自動化するために使用され、また、次の可能性もサポートします。分散アプリケーションの実装 (複数のオペレータ コンソールを使用) …
エンドツーエンドのプログラミング システムが存在するため、MMI システムと SCADA システムの間に明確な線を引くことは不可能です。エンドツーエンド プログラミング システムでは、制御システムのさまざまなレベルに対応するソフトウェア開発ツールの区別がないことがよくあります。
SCADA システムの目的と機能構成を説明する単一の規格が存在しないこと、および「SCADA」という用語自体の解釈の違いにより、このクラスのシステムの分類と比較が複雑になります。
SCADA システムは次の主要なグループに分類できます。
-
コントローラーメーカーによって開発されたSCADAシステム。
-
独立したメーカーによって開発された SCADA システム。
-
SCADA システムは、エンドツーエンドのプログラミング システムのコンポーネントです。
独自の SCADA システムを開発するコントローラー機器メーカーのタスクは、そのメーカーのコントローラーを使用して視覚化アプリケーションを開発するためのツールをエンド ユーザーに提供することです。
このようなシステムには次の主な特徴があります。
-
これらのシステムのインターフェイスは、コントローラ機器用のソフトウェアを作成する手段のインターフェイスを繰り返します。
-
SCADA システム コンポーネントは、特定のメーカーの制御機器から受信したデータを処理するように最適化されています。
-
他のメーカーの機器とデータを交換するためのインターフェイスの実装が不十分であるか、使用するのが困難です。
このようなシステムの典型的な例は次のとおりです。 シーメンス WinCC… このような独自のシステムを使用すると、一方ではソフトウェア開発専門家のトレーニングコストが最小限に抑えられますが、他方では、システムの開発者とエンドユーザーの両方が特定のメーカー、さらには特定の企業に厳密に拘束されることになります。あるメーカーの機器のラインナップ。
さらに、多くの制御機器メーカーは、自社のソフトウェア製品に必要なレベルのサポートとメンテナンスを提供せずに、マーケティング目的で独自の SCADA システムを開発することを余儀なくされました。
サードパーティの SCADA システムは、プロセスの視覚化および制御アプリケーションを作成するための最も柔軟なツールです。それらの利点には、分散型および分散型制御システムを作成するための多数の機能のサポート、および競合するメーカーを含む異なるメーカーの機器を 1 つのシステムに統合できることが含まれます。
このようなシステムは、実行機器とデータを交換するために、DDE または OPC インターフェイスを実装したソフトウェア I/O サーバーを使用します。このような SCADA システムの普及と自動化ツール標準に準拠する必要性により、すべてのコントローラ機器開発者が独自のシステムを持っているという事実につながりました。 OPC または DDE ソフトウェア サーバー、機器を備えた状態で納品されるか、または注文に応じて納品されます。
エンドツーエンドのプログラミング システムには、制御システムの不可欠な部分としてオペレーター ステーションの開発が含まれるため、常に SCADA システムの個別のコンポーネントが含まれます。ただし、システム全体が全体として機能するため、これらのコンポーネントはエンドツーエンド プログラミング システムの他のモジュールのコンポーネントである場合もあり、純粋な形式の SCADA システムをソフトウェア製品に分離することが不可能な場合もあります。
このようなシステムには、次の 2 つの主な違いを考慮すると、コントローラー メーカーが開発した SCADA システムと同じ長所と短所があります。
-
SCADA システムは、エンドツーエンドのプログラミング システムに不可欠な部分ですが、他のメーカーのソフトウェアやハードウェアとの相互運用性は事実上ありません。
-
このようなアプリケーションにおける SCADA システムの役割は、グラフィカル インターフェイスの開発に限定されます。
SCADAシステムの構成と構造
SCADAシステムの構成と構造
通常、SCADA システムは、開発環境と実行環境という 2 つの別個のソフトウェア製品セットで構成されます。
開発環境 技術プロセスを視覚化するための環境を設計および構成するセットと呼ばれます。
作業中の環境 — これは、オペレーターステーションでの技術プロセスを視覚化するためのプログラムプロジェクトの作業に必要なソフトウェア製品のセットです。
これとは別に、開発者とオペレーターの同じプロジェクトでの作業中の開発環境とランタイム環境の間の相互作用の問題を考慮する必要があります。
1. 開発者による変更はすぐに有効になります。
2. ランタイムには、プロジェクトのソース コードで見つかった変更が反映されます。
3. 変更は実行時に再起動または強制的に反映されます。
最初のタイプのインタラクションを実装すると、商用プレゼンテーションで製品の機能を非常に明確かつ効果的に示すことができるため、最終的なソフトウェア製品に実装されることがあります。ただし、実際のプロジェクトで作業する場合、グラフィカル インターフェイスの一部が欠落したり、コントロールが動的に移動したりする潜在的な危険性があります。この点において、2 番目と 3 番目のタイプの相互作用、あるいはそれらの組み合わせが最も広く普及しています。
SCADA システムの主な部分は次のように区別できます。
-
タグベース。
-
グラフィックス表示モジュール。
-
スクリプトプロセッサ。
-
警報および警告システム。
-
技術プロセスパラメータをアーカイブするためのモジュール。
SCADAシステムタグ 技術プロセスパラメータの値とそのプロパティを保存するためのオブジェクトです。ラベルは誤って「変数」と呼ばれることがあります。同時に、ラベルの概念は、オブジェクト指向プログラミング言語のクラスの定義に最も近いものです。
グラフィカル表示モジュールは、プロジェクトのグラフィカル インターフェイスを実装します。 一般に、グラフィカル インターフェイスは、グラフィカル要素が配置された一連の画面フォームです。画面を作成するタスクは、グラフィック要素を画面形状に配置し、そのプロパティを設定することに要約されます。
画面フォームの呼び出し、表示、終了の過程で、グラフィックオブジェクトをクリックしたり、個々のタグのプロパティや値を変更したりする際には、必要な計算やアクションを実行する必要があります。 スクリプトエンジン… スクリプトは、システムによっては「マクロ」または「スクリプト」とも呼ばれます。
自動オペレータ ワークステーションのグラフィカル インターフェイスを実装する SCADA システム スクリプトのほとんどは、グラフィカル要素のマウス クリック ハンドラです。
スクリプトの場合、さまざまなメーカーの SCADA システムが 1 つ以上の言語を提供しています。コントローラーのメーカーによって開発されたシステム、またはエンドツーエンドのプログラミング システムの一部として開発されたシステムは、通常、スクリプト作成用と書き込み用と同じプログラミング言語を提供します。 コントローラソフトウェア… サードパーティの SCADA システムは、多くの場合、特殊なマクロ スクリプト言語を提供します。
汎用プログラミング言語を使用すると、追加のライブラリや API にアクセスして、複雑なユーザー インターフェイスやデータを操作する非標準的な方法を実装できます。
同時に、開発者は、いかなる場合でも、マクロ言語を学習するのと同じ方法で、SCADA システム コンポーネントを操作するための関数ライブラリを学習する必要があり、実装されたコードは潜在的に危険になったり、サードパーティ関数からエラーを継承したりする可能性があります。ライブラリ 。
警報システム プロセスパラメータの値が許容範囲外であることをオペレータに通知することを目的としています。原則として、各技術パラメータに対して、通知が表示される内容に応じて、それぞれ緊急設定と警告設定の 2 種類の設定を設定できます。
システムの機能に応じて、これらの設定は 1 つ以上の基準に従って設定されます。
-
範囲外です。この場合、警告値の上限と下限、および警告値の上限と下限があります。
-
ある値の公称値からの逸脱。設定値からの最小許容偏差と最大許容偏差を配分します。
-
プロセスパラメータ値の最大許容変化率を設定します。許容範囲設定の値は絶対単位で指定され、公称値からの偏差と変化率は絶対単位と現在または設定値のパーセンテージの両方で指定できます。
1 つの技術プロセスでは、緊急および警告の設定値が設定されるパラメータの数が多数になる可能性があるため、SCADA システムでは、技術的に制御されるパラメータをグループに組み合わせたり、任意の優先レベルを設定したりすることが可能です。セットポイント。
主なタスク バックアップモジュール — 比較的短期間の技術パラメータ(トレンド)のグラフをモニター画面に表示する機能を提供するとともに、簡単なレポートを作成する SCADA システムの値をアーカイブするためのモジュールは、次の機能を提供する必要があります。
-
特定の頻度または変更で値をローカル データベースにアーカイブする。
-
変更時に値をアーカイブするとき - アーカイブのデッドゾーンを設定する可能性。
-
ローカルデータベースのサイズ制限を設定します。
-
値を保存する時間を設定します。
-
自動モードで保存時間またはデータベース サイズを超えた場合に、定期的なメンテナンスを実行して古い値または最も古い値を削除します。
-
アーカイブ値のグラフを作成して表示するためのインターフェイスの可用性。
-
指定された期間のパラメータ値を値のテーブルの形式でエクスポートするシステムの可用性。