(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6020854
(24)【登録日】2016年10月14日
(45)【発行日】2016年11月2日
(54)【発明の名称】コンピュータ化されたマシン制御システム
(51)【国際特許分類】
G06F 9/54 20060101AFI20161020BHJP
G06F 9/48 20060101ALI20161020BHJP
G05B 19/05 20060101ALI20161020BHJP
【FI】
G06F9/46 480Z
G06F9/06 640C
G06F9/46 457
G05B19/05 D
【請求項の数】18
【全頁数】16
(21)【出願番号】特願2014-527448(P2014-527448)
(86)(22)【出願日】2012年8月22日
(65)【公表番号】特表2014-531631(P2014-531631A)
(43)【公表日】2014年11月27日
(86)【国際出願番号】CH2012000197
(87)【国際公開番号】WO2013029189
(87)【国際公開日】20130307
【審査請求日】2015年2月24日
(31)【優先権主張番号】1428/11
(32)【優先日】2011年8月31日
(33)【優先権主張国】CH
(73)【特許権者】
【識別番号】598049447
【氏名又は名称】フェラーク アーゲー
(74)【代理人】
【識別番号】100107456
【弁理士】
【氏名又は名称】池田 成人
(74)【代理人】
【識別番号】100162352
【弁理士】
【氏名又は名称】酒巻 順一郎
(74)【代理人】
【識別番号】100123995
【弁理士】
【氏名又は名称】野田 雅一
(74)【代理人】
【識別番号】100148596
【弁理士】
【氏名又は名称】山口 和弘
(72)【発明者】
【氏名】シュエップ, マイケル
【審査官】
田中 幸雄
(56)【参考文献】
【文献】
特開平11−163861(JP,A)
【文献】
特開平5−324288(JP,A)
【文献】
特表2011−513822(JP,A)
【文献】
米国特許出願公開第2010/0250776(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/54
G05B 19/05
G06F 9/48
(57)【特許請求の範囲】
【請求項1】
マシン(15)を制御するためのコンピュータ化されたマシン制御システム(1)であって、
管理又は操作システム(2)のアプリケーションと通信するための通信モジュール、
前記マシン(15)のデータポイントを備えたマシン固有のドメインモデル(102)と、マシン固有の通信プロトコルを介して前記マシン(15)の前記データポイントにアクセスし、前記マシン固有のドメインモデル(102)の対応するデータポイントオブジェクト又は前記マシン(15)の前記データポイントを更新するように構成されている制御モジュール(101)とを備える、アプリケーションに依存しないマシン固有の部分(10)、並びに
前記管理又は操作システム(2)にとってアクセス可能であるデータオブジェクトを備えたアプリケーション固有のモデル(112)と、前記マシン固有のドメインモデル(102)にアクセスし、データオブジェクトをデータポイントオブジェクトに、又はデータポイントオブジェクトをデータオブジェクトにマップするように構成されているマッピングモジュール(111)とを備える、マシンに依存しないアプリケーション固有の部分(11)
を備えるコンピュータ化されたマシン制御システム(1)。
【請求項2】
前記制御モジュール(101)が、前記マシン固有のドメインモデル(102)の前記対応するデータポイントオブジェクトを更新するために前記マシン(15)の前記データポイントに定期的にアクセスするように構成され、前記マシン固有のドメインモデル(102)が、前記マシン固有のドメインモデル(102)のデータポイントオブジェクトの値を、要求があった場合に限り前記アプリケーション固有の部分(11)に転送するように構成されていることを特徴とする、請求項1に記載のマシン制御システム(1)。
【請求項3】
前記制御モジュール(101)が、プログラマブル論理コントローラ(14)を介して前記マシン(15)の前記データポイントにアクセスするように構成され、前記マシン固有の通信プロトコルが、特に前記プログラマブル論理コントローラ(14)に適合され、前記マシン固有のドメインモデル(102)が、前記プログラマブル論理コントローラ(14)を介して使用可能な、前記マシン(15)のそれらのデータポイントのデータポイントオブジェクトを備えることを特徴とする、請求項1又は2に記載のマシン制御システム(1)。
【請求項4】
前記制御モジュール(101)が、前記プログラマブル論理コントローラ(14)を介してアクセスされた前記データポイントが一貫した状態にある場合に限り、前記マシン固有のドメインモデル(102)の前記データポイントオブジェクトを更新するように構成されていることを特徴とし、
前記一貫した状態にある場合とは、対応するデータポイントのいずれも古い状態又は不安定な中間状態の値を持たない場合である、
請求項3に記載のマシン制御システム(1)。
【請求項5】
前記アプリケーション固有のドメインモデル(112)が、前記管理又は操作システム(2)にとってアクセス可能なサービス指向アーキテクチャプラットフォームのサービスとして実施され、前記アプリケーション固有のドメインモデル(112)のサービス定義及び前記データオブジェクトが、前記管理又は操作システム(2)のアプリケーションのために、前記管理又は操作システム(2)にとってアクセス可能な前記サービス指向アーキテクチャプラットフォームのインターフェイスを介して定義されることを特徴とする、請求項1〜4のいずれか一項に記載のマシン制御システム(1)。
【請求項6】
前記マシン固有のドメインモデル(102)が、サービス指向アーキテクチャプラットフォームの使用可能なサービスとして実施され、前記マシン固有のドメインモデル(102)のサービス定義及び前記データポイントオブジェクトが、サービスコンシューマーにとってアクセス可能な前記サービス指向アーキテクチャプラットフォームのインターフェイスを介して定義され、前記サービスが、前記サービス指向アーキテクチャプラットフォームを介して前記サービスコンシューマーにとってアクセス可能であることを特徴とする、請求項1〜5のいずれか一項に記載のマシン制御システム(1)。
【請求項7】
前記サービス指向アーキテクチャプラットフォームの前記サービスが各々、前記管理又は操作システム(2)から定期的なホールドアクティブコールを受信し、前記管理又は操作システム(2)への接続を保証するためにホールドアクティブ応答で直接応答するように構成されていることを特徴とする、請求項5又は6に記載のマシン制御システム(1)。
【請求項8】
前記通信モジュールが、Windows Communication Foundationの通信機能を備えたランタイムモジュールを備え、前記アプリケーション固有のドメインモデル(112)が、Windows Communication Foundationのサービスとして実施され、前記アプリケーション固有のドメインモデル(112)のサービス定義及び前記データオブジェクトが、前記管理又は操作システムの前記アプリケーションに対して、Windows Communication Foundationのコントラクトインターフェイスを介して定義されることを特徴とする、請求項1〜7のいずれか一項に記載のマシン制御システム(1)。
【請求項9】
前記制御モジュール(101)が、クエリメッセージを用いて前記マシン(15)の可用性を定期的に検査し、事前定義済みの期間内に前記クエリメッセージへの応答メッセージがない場合に前記マシン固有のドメインモデル(102)が前記マシン(15)に接続されていないことを示す状態値を前記マシン固有のドメインモデル(102)に割り当てるように構成されていることを特徴とする、請求項1〜8のいずれか一項に記載のマシン制御システム(1)。
【請求項10】
マシン(15)を制御するためのマシン制御システム(1)に、
管理又は操作システム(2)のアプリケーションに依存しない、前記マシン(15)のデータポイントを備えたマシン固有のドメインモデル(102)を作成し、マシン固有の通信プロトコルを介して前記マシン(15)の前記データポイントにアクセスし、前記マシン固有のドメインモデル(102)の対応するデータポイントオブジェクト又は前記マシン(15)の前記データポイントを更新し、
前記管理又は操作システム(2)にとってアクセス可能であるデータオブジェクトを備えマシンに依存しないアプリケーション固有のドメインモデル(112)を作成し、前記マシン固有のドメインモデル(102)にアクセスして、データオブジェクトをデータポイントオブジェクトに、又はデータポイントオブジェクトをデータオブジェクトにマップする
ように実行させるためのコンピュータプログラム。
【請求項11】
前記マシン制御システム(1)に、前記マシン固有のドメインモデル(102)の前記対応するデータポイントオブジェクトを更新するために、前記マシン(15)の前記データポイントに定期的にアクセスして、前記マシン固有のドメインモデル(102)のデータポイントオブジェクトの値を、要求があった場合に限り前記アプリケーション固有のドメインモデル(112)に転送するように実行させる、請求項10に記載のコンピュータプログラム。
【請求項12】
前記マシン制御システム(1)に、プログラマブル論理コントローラ(14)を介して前記マシン(15)の前記データポイントにアクセスするように実行させ、前記マシン固有の通信プロトコルが、特に前記プログラマブル論理コントローラ(14)に適合され、前記プログラマブル論理コントローラ(14)を介して使用可能な、前記マシン(15)のそれらのデータポイントのデータポイントオブジェクトを前記マシン固有のドメインモデル(102)で生成する、請求項10又は11に記載のコンピュータプログラム。
【請求項13】
前記マシン制御システム(1)に、前記プログラマブル論理コントローラ(14)を介してアクセスされる前記データポイントが一貫した状態にある場合に限り、前記マシン固有のドメインモデル(102)の前記データポイントオブジェクトを更新するように実行させ、
前記一貫した状態にある場合とは、対応するデータポイントのいずれも古い状態又は不安定な中間状態の値を持たない場合である、
請求項12に記載のコンピュータプログラム。
【請求項14】
前記マシン制御システム(1)に、前記管理又は操作システム(2)にとってアクセス可能なサービス指向アーキテクチャプラットフォームのサービスとして、前記アプリケーション固有のドメインモデル(112)を作成し、前記管理又は操作システム(2)のアプリケーションのために、前記管理又は操作システム(2)にとってアクセス可能な前記サービス指向アーキテクチャプラットフォームのインターフェイスを介して前記アプリケーション固有のドメインモデル(112)のサービス定義及び前記データオブジェクトを定義するように実行させる、請求項10〜13のいずれか一項に記載のコンピュータプログラム。
【請求項15】
前記マシン制御システム(1)に、サービス指向アーキテクチャプラットフォームの使用可能なサービスとして、前記マシン固有のドメインモデル(102)を作成し、サービスコンシューマーにとってアクセス可能な前記サービス指向アーキテクチャプラットフォームのインターフェイスを介して前記マシン固有のドメインモデル(102)のサービス定義及び前記データポイントオブジェクトを定義するように実行させ、前記サービスが、前記サービス指向アーキテクチャプラットフォームを介して前記サービスコンシューマーにとってアクセス可能である、請求項10〜14のいずれか一項に記載のコンピュータプログラム。
【請求項16】
前記マシン制御システム(1)に、前記管理又は操作システム(2)から前記サービス指向アーキテクチャプラットフォームの前記サービスに対する定期的なホールドアクティブコールを受信し、前記管理又は操作システム(2)への接続を保証するためにホールドアクティブ応答で直接応答するように実行させる、請求項14又は15に記載のコンピュータプログラム。
【請求項17】
前記マシン制御システム(1)に、前記管理又は操作システム(2)のアプリケーションと通信するためにWindows Communication Foundationの通信機能を使用して、前記アプリケーション固有のドメインモデル(112)をWindows Communication Foundationのサービスとして実現し、前記管理又は操作システム(2)のアプリケーションのために、Windows Communication Foundationのコントラクトインターフェイスを介して前記アプリケーション固有のドメインモデル(112)のサービス定義及び前記データオブジェクトを定義するように実行させる、請求項10〜16のいずれか一項に記載のコンピュータプログラム。
【請求項18】
前記マシン制御システム(1)に、クエリメッセージを用いて前記マシン(15)の可用性を定期的に検査して、定義済みの期間内に前記クエリメッセージへの応答メッセージがない場合に前記マシン固有の(102)ドメインモデルが前記マシン(15)に接続されていないことを示す状態値を前記マシン固有のドメインモデル(102)に関連付けるように実行させる、請求項10〜17のいずれか一項に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータ化されたマシン制御システムに関する。本発明は、詳細には、プリンタ、印刷物処理マシン、輸送マシンなどのマシンを制御するためのコンピュータ化されたマシン制御システムに関する。
【背景技術】
【0002】
プリンタ、印刷物処理マシン、輸送マシンなどのマシンの制御は、通例、プログラマブルデバイスによって行なわれるが、これらのデバイスは、所有権に保護される通信プロトコルを介して高水準のコンピュータ化された管理及び/又は操作システムによってアクセスされる。プログラマブルデバイスは、たとえば、マシンのセンサー及びアクチュエータに電気的に接続される、いわゆるプログラマブル論理コントローラ(PLC:programmable logic controller)である。マシンが、たとえば別の製造業者による製品に置き換えられる場合、通例、管理及び/又は操作システムのプログラムアプリケーションの高価で複雑な適合が実施される必要がある。同様の問題はまた、複数のマシンの設備が、別の製造業社製のマシンを加えて拡張される場合にも生じる。所有権で保護される通信プロトコルはまた、さまざまな製造業社製のマシン間の直接の対話を、仮にもそうした対話が可能であったとしても、著しく困難にする。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明の1つの目的は、既知のシステムの欠点を少なくとも部分的に有していない、コンピュータ化されたマシン制御システムを提案することである。特に、本発明の1つの課題は、さまざまな製造業者製のマシンの統合を改善することができる、マシンを制御するためのコンピュータ化されたマシン制御システムを提案することである。
【課題を解決するための手段】
【0004】
本発明によれば、これらの目的は、独立クレームの特徴により達成される。追加の有利な実施形態はさらに、独立クレーム及び説明から生じる。
【0005】
前述の目的は、特に、高水準の管理又は操作システムのアプリケーションと通信するための通信モジュールを備えたコンピュータ化されたマシン制御システムが、アプリケーションに依存しないマシン固有の部分、及びマシンに依存しないアプリケーション固有の部分を備えるという点において、本発明によって達成される。アプリケーションに依存しないマシン固有の部分は、マシンのデータポイントを備えたマシン固有のドメインモデルと、マシン固有の通信プロトコルを介してマシンのデータポイントにアクセスし、マシン固有のドメインモデルの対応するデータポイントオブジェクト又はマシンのデータポイントを更新するように構成されている制御モジュールとを備える。マシンに依存しないアプリケーション固有の部分は、管理又は操作システムが通信モジュールを介してアクセスすることができるデータオブジェクトを備えたアプリケーション固有のドメインモデルと、マシン固有のドメインモデルにアクセスして、データオブジェクトをデータポイントオブジェクトに、又はデータポイントオブジェクトをデータオブジェクトにマップするように構成されているマッピングモジュールとを備える。
【0006】
1つの実施形態の変形において、制御モジュールは、マシン固有のドメインモデルの対応するデータポイントオブジェクトを更新するためにマシンのデータポイントに定期的にアクセスするように構成され、マシン固有のドメインモデルは、マシン固有のドメインモデルのデータポイントオブジェクトの値を、要求があった場合に限りアプリケーション固有の部分に転送するように構成されている。
【0007】
追加の実施形態の変形において、制御モデルは、プログラマブル論理コントローラを介してマシンのデータポイントにアクセスするように構成され、マシン固有の通信プロトコルは、特にプログラマブル論理コントローラに適合され、マシン固有のドメインモデルは、プログラマブル論理コントローラを介して使用可能な、マシンのそれらのデータポイントのデータポイントオブジェクトを備える。
【0008】
1つの実施形態の変形において、制御モジュールは、プログラマブル論理コントローラを介してアクセスされたデータポイントが一貫した状態にある場合に限り、マシン固有のドメインモデルのデータポイントオブジェクトを更新するように構成されている。
【0009】
好ましい実施形態の変形において、アプリケーション固有のドメインモデルは、管理又は操作システムにとってアクセス可能なサービス指向アーキテクチャプラットフォームのサービスとして設計され、アプリケーション固有のドメインモデルのサービス定義及びデータオブジェクトは、高水準の管理又は操作システムのアプリケーションのために、管理又は操作システムにとってアクセス可能なサービス指向アーキテクチャプラットフォームのインターフェイスを介して定義される。通信モジュールは、たとえば、Windows(登録商標) Communication Foundation(WCF)の通信機能を備えたランタイムモジュールを備え、アプリケーション固有のドメインモデルは、WCFサービスとして実施され、高水準の管理又は操作システムのアプリケーションのためのアプリケーション固有のドメインモデルのサービス定義及びデータオブジェクトは、WCFコントラクトインターフェイスを介して定義される。
【0010】
好ましい実施形態の変形において、マシン固有のドメインモデルは、サービス指向アーキテクチャプラットフォームの使用可能なサービスとして実施され、マシン固有のドメインモデルのサービス定義及びデータポイントオブジェクトは、サービスコンシューマーにとってアクセス可能なサービス指向アーキテクチャプラットフォームのインターフェイスを介して定義され、サービスはサービス指向アーキテクチャプラットフォームを介してサービスコンシューマーにとってアクセス可能である。マシン固有のドメインモデルは、たとえばWCFサービスとして実施され、マシン固有のドメインモデルのサービス定義及びデータオブジェクトは、WCFコントラクトインターフェイスを介して定義される。
【0011】
1つの実施形態の変形において、サービス指向アーキテクチャプラットフォームのサービスは各々、高水準の管理又は操作システムから定期的なホールドアクティブコールを受信し、管理又は操作システムへの接続を保証するためにホールドアクティブ応答で直接応答するように構成されている。
【0012】
1つの追加の変形において、制御モジュールは、マシンの可用性を定期的に検査して、マシン固有のドメインモデルに値を割り当てるように構成され、この値は、事前定義済みの期間内にクエリメッセージへの応答メッセージがない場合にドメインモデルがマシンに接続されていないことを示す。
【0013】
コンピュータ化されたマシン制御システムに加えて、本発明はさらに、マシンを制御するためのコンピュータにより実施される方法、及びマシン制御システムを制御するためのコンピュータプログラム製品に関する。コンピュータプログラム製品は、マシン制御システムがマシンを制御するための方法を実施するように、マシン制御システムの1つ又は複数のプロセッサを制御するための、コンピュータプログラムコードが格納されたコンピュータ可読媒体を備えることが好ましい。ここで、実施されるステップは、マシン制御システムが、高水準の管理又は操作システムのアプリケーションに依存しない、マシンのデータポイントを備えたマシン固有のドメインモデルを作成して、マシン固有の通信プロトコルを介してマシンのデータポイントにアクセスし、マシン固有のドメインモデルの対応するデータポイントオブジェクト又はマシンのデータポイントを更新するステップである。加えて、マシン制御システムは、管理又は操作システムにとってアクセス可能であるデータオブジェクトを備えたマシンに依存しないアプリケーション固有のドメインモデルを作成し、マシン固有のドメインモデルにアクセスして、データオブジェクトをデータポイントオブジェクトに、又はデータポイントオブジェクトをデータオブジェクトにマップする。
【0014】
以下に、本発明の実施形態が例を参照して説明される。実施形態の例は、以下の添付の図面に示される。
【図面の簡単な説明】
【0015】
【
図1】マシンのデータポイントにアクセスするために、アプリケーションに依存しないマシン固有の部分、及びマシンに依存しないアプリケーション固有の部分を備える、コンピュータ化されたマシン制御システムを図式的に示すブロック図である。
【
図2】通信可能な方法でサービス指向アーキテクチャプラットフォームを介して相互に接続される、複数のコンピュータ化されたマシン制御システム並びに高水準の管理及び操作システムを図式的に示すブロック図である。
【
図3】マシンのデータポイントにアクセスするために、アプリケーションに依存しないマシン固有の部分、及びマシンに依存しないアプリケーション固有の部分が異なるコンピュータシステム上で実施され、通信可能な方法でサービス指向アーキテクチャプラットフォームを介して相互に接続される、コンピュータ化されたマシン制御システムを図式的に示すブロック図である。
【
図4】アプリケーションに依存しないマシン固有の部分、及びマシンに依存しないアプリケーション固有の部分が異なるコンピュータシステム上で実施され、通信可能な方法でサービス指向アーキテクチャプラットフォームを介して相互に接続される、複数のコンピュータ化されたマシン制御システム並びに高水準の管理及び操作システムを図式的に示すブロック図である。
【
図5】ディスプレイ上にグラフィカルユーザインターフェイスを生成するためのコンピュータシステムを示すブロック図である。
【
図6】ディスプレイ上にグラフィカルユーザインターフェイスを生成するための一連のステップの例を図式的に示す流れ図である。
【
図7a】ディスプレイ上に表示されるメインウィンドウの例を示す図である。
【
図7b】ディスプレイ上に表示される、メインウィンドウの複数のウィンドウ領域の例を示す図である。
【
図7c】複数のウィンドウ領域及び表示されるログイン領域を備える、ディスプレイ上に表示されるメインウィンドウの例を示す図である。
【
図7d】表示されるログイン領域並びに複数のウィンドウ領域と、ウィンドウ領域に表示されるウィジェットを備える、ディスプレイ上に表示されるメインウィンドウの例を示す図である。
【発明を実施するための形態】
【0016】
図1、
図2、及び
図3において、参照番号1は、たとえば、プリンタ、印刷物処理マシン、輸送マシンなどのマシン15を制御するためのコンピュータ化されたマシン制御システムを示す。マシン15の制御は、マシン15のセンサー及びアクチュエータに(電気的に)接続される、たとえば、いわゆるプログラマブル論理コントローラ(PLC)14のような、プログラマブルデバイスを介して行なわれる。実施形態の変形に応じて、プログラマブルデバイス14は、マシン15又はそのセンサー及びアクチュエータに、直接接続されるか、又はマシン15のマイクロコントローラを介して接続される。
【0017】
図1及び
図3において、参照番号2は、コンピュータ化された管理又は操作システムを示す。管理又は操作システム2は、たとえば、接触感知式ディスプレイ、特にいわゆるマルチタッチディスプレイのような1つ又は複数のディスプレイに接続される1つ又は複数のプロセッサを備える動作可能なコンピュータシステム2’上で実施される。
【0018】
図1及び
図3において図式的に示されるように、管理又は操作システム2は、たとえば、1つ又は複数のマシン15、15a、15b、15c、15dの生産を設定、監視、及び操作するためのユーザインターフェイス21と、1つ又は複数のマシン15、15a、15b、15c、15dを保守及び診断するためのユーザインターフェイス23と、複数の高水準サービス、たとえば、ユーザインターフェイス21、23のようなサービスコンシューマーにとってアクセス可能でありサービスコンシューマーによって実行可能である、生産を開始、停止、又は中断するコマンドのようないわゆる高水準サービスを備えるサービスモジュール22など、複数の機能モジュールを備える。後段においてさらに詳細に説明されるように、ユーザインターフェイス21、23は、いわゆるプラグインに基づくことが好ましく、複数の選択可能及び起動可能なウィジェットプラグインを備える。サービスモジュール22は、たとえば、Microsoft Corporationの.NetにおけるWindows(登録商標) Communication Foundation(WCF)など、サービス指向アーキテクチャプラットフォーム100のプラグイン及びサービスとして実施されることが好ましい。
【0019】
図1及び
図3に示されるように、マシン制御システム1は、アプリケーションに依存しないマシン固有の部分10、及びマシンに依存しないアプリケーション固有の部分11にさらに分割される機能モジュールを備える。実施形態の変形及び/又は構成に応じて、マシン制御システム1の機能モジュールは、加えて、1つ又は複数のマシン15、15a、15b、15c、15dの生産を設定、監視、及び操作するためのユーザインターフェイス12、及び/又は1つ又は複数のマシン15、15a、15b、15c、15dを保守及び診断するためのユーザインターフェイス13を備える。後段においてさらに詳細に説明されるように、ユーザインターフェイス12、13は、いわゆるプラグインに基づくことが好ましく、複数の選択可能及び起動可能なウィジェットプラグインを備える。
【0020】
図1による実施形態の変形において、マシン固有の部分10及びアプリケーション固有の部分11は、たとえば、PLC14に接続されている1つ又は複数の別個のプロセッサ、又はPLC14の1つ又は複数のプロセッサなど、同一の動作可能なコンピュータシステム1’で実施される。マシン制御システム1を備えるコンピュータシステム1’は、マシン15の一部として実施されるか、マシン15に直接接続されるか、又は別個に距離を隔てて配置される。コンピュータシステム1’は、たとえば、いわゆる組込み式のPCとして実施される。
【0021】
図3による実施形態の変形において、マシン固有の部分10及びアプリケーション固有の部分11は、異なるコンピュータシステム1”、2”上で実施される。ここで、マシン固有の部分10は、たとえば、PLC14に接続されている1つ又は複数の別個のプロセッサ、又はPLC14の1つ又は複数のプロセッサなど、コンピュータシステム1’で実施される。マシン固有の部分10を備えたコンピュータシステム1”は、マシン15の一部として実施されるか、マシン15に直接接続されるか、又は別個に距離を隔てて配置される。一方、アプリケーション固有の部分11は、管理又は操作システム2のコンピュータシステム2”上で実施される。
【0022】
マシン固有の部分10は、制御モジュール101及びマシン固有のドメインモデル102を備える。制御モジュール101は、1つ又は複数のデータポイントの現在値を読み取る又は書き込むために、たとえばTCP/IP、Profibus、又はBeckhoff社のADS(Automation Device Specification)などのマシン固有の通信プロトコルを介して、マシン15のデータポイントにアクセスするように構成されている。
【0023】
ここで、データポイントは、たとえばマシン15のセンサー若しくはカウンタの測定値又はカウンタ値など、マシン15によって出力される値、又はたとえば制御コマンド、制御パラメータ、若しくは制御値など、マシン15に入力される値である。データポイントは、特にマシン15の(現在の)状態値及び状態情報も備える。データポイントは、特にマシン15のプロセッサを介する、マシン15の値の入力又は出力を表す。マシン固有のドメインモデル102は、マシン固有のデータポイントオブジェクトを備える。ここで、マシン固有のデータポイントオブジェクトは、マシン15の1つ又は複数のデータポイントをマップするデータオブジェクトである。制御モジュール101がPLC14を介してマシン15のデータポイントにアクセスする場合、マシン固有の通信プロトコルは、対応するPLC14に特に適合され、マシン固有のドメインモデル102は、PLC14を介してアクセス可能なデータポイントオブジェクトのみを備える。読取りプロセスは、定期的に、加えて明示的な読取りコマンドに基づいて行なわれる。読取りデータポイントの現在値は、制御モジュール101によって、マシン固有のドメインモデル102の対応するデータポイントオブジェクトに書き込まれる。書込みプロセスは、通例、マシン固有のドメインモデル102への明示的な書込み又はサービスのコマンドに基づいて行なわれる。ここで、マシン固有のドメインモデル102の対応するデータポイントオブジェクトの現在値は、制御モジュール101によって、マシン15又はPLC14の対応するデータポイントに書き込まれる。ここで、データポイント、同様にまたデータポイントオブジェクトも、たとえば、(構造化)ファイルに配列されるデータ値のテーブル又はマトリクスなど、複数のデータ値を備えることができることに留意されたい。
【0024】
1つの実施形態の変形において、制御モジュール101は、マシン15によって直接、又はPLC14を介して取得されたデータポイントをバッファメモリに格納し、データポイントの全部又は少なくとも定義済みの部分が一貫した状態にある場合に限り、すなわち対応するデータポイントのいずれも古い状態又は不安定な中間状態の値を持たない場合に限り、マシン固有のドメインモデル102内の対応するデータポイントオブジェクトを更新する。したがって、マシン15、又はマシン15の定義済みの部分の現在の状態が一貫しているデータポイントで、スナップショットが生成される。
【0025】
さらなる変形において、制御モジュール101は、マシン15又はPLC14が使用可能であるかどうか、すなわち接続されて動作可能なアクセス可能状態にあるかどうかを定期的に検査する。このために、制御モジュール101は、対応するクエリメッセージをマシン15又はPLC14に定期的に送信する。制御モジュール101の定義済みの期間内に、応答メッセージがマシン15又はPLC14によって受信されない場合、制御モジュール101は、マシン固有のドメインモデル102に割り当てられているステータスを、ドメインモデル102がマシン15に接続されていないことを指示する値に設定する。
【0026】
アプリケーション固有の部分11は、アプリケーション固有のドメインモデル112、及びマッピングモジュール111を備える。アプリケーション固有のドメインモデル112は、アプリケーション固有のデータオブジェクトを備える。マッピングモジュール111は、サービス指向アーキテクチャプラットフォーム100の対応するサービス103を介してマシン固有のドメインモデル102にアクセスするように構成されている。書込み機能において、アプリケーション固有のデータオブジェクトは、マシン固有のデータポイントオブジェクトにマップされ、このプロセス中に、マッピングモジュール111は、アプリケーション固有のデータオブジェクトの現在値を、マシン固有のドメインモデル102の関連するデータポイントオブジェクトに書き込む。読取り機能において、マシン固有のデータポイントオブジェクトは、アプリケーション固有のデータオブジェクトにマップされ、このプロセス中に、マッピングモジュール111は、1つ又は複数のマシン固有のデータポイントオブジェクトの現在値を読み取り、それらの値をアプリケーション固有のドメインモデル112の関連するデータオブジェクトに書き込む。読取りプロセス及び書込みプロセスはいずれも、アプリケーション固有のドメインモデル112への明示的な書込み、読取り、又はサービスのコマンドにのみ基づいて行なわれる。
【0027】
マシン固有のドメインモデル102及びアプリケーション固有のドメインモデル112は、たとえばWCFなど、サービス指向アーキテクチャプラットフォーム100の使用可能なサービス103又は113として実施されることが好ましい。ここで、たとえば書込み又は読取りなどの使用可能な機能、及びドメインモデル102、112のデータポイントオブジェクト又はアプリケーション固有のデータオブジェクトは、サービスコンシューマーにとってアクセス可能なサービス指向アーキテクチャプラットフォーム100のインターフェイスを介して定義され取出し可能である。定義されたサービス103、113は、矢印104及び105、又は114、115、及び116により
図1及び
図3において図式的に示されるように、サービス指向アーキテクチャプラットフォーム100を介してサービスコンシューマーにとってアクセス可能である。ドメインモデル102、112は、要求があった場合に限り、すなわちサービスコンシューマーが対応するサービス103、113にアクセスして対応するデータポイントオブジェクト又はデータオブジェクトを要求する場合に限り、マシン固有のデータポイントオブジェクト又はアプリケーション固有のデータオブジェクトを、それらのサービスコンシューマーに配信する。たとえば、アプリケーション固有の部分11は、マシン固有のドメインモデル102からのデータポイントオブジェクトを、上記アプリケーション固有の部分が上記オブジェクトを対応するサービス103を介して明示的に要求する場合に限り受信し、ユーザインターフェイス12、13、21及びサービスモジュール22は、アプリケーション固有のドメインモデル112からのデータオブジェクトを、これらのユーザインターフェイス及びサービスモジュールが上記データオブジェクトを対応するサービス113を介して明示的に要求する場合に限りアプリケーション固有の部分11から受信する。
【0028】
一変形形態において矢印117、118、119により図式的に示されるように、サービスモジュール22及びユーザインターフェイス23及び13は、サービス103を介してマシン固有のドメインモデル102に直接アクセスするように構成されている。このために、サービスモジュール22及びユーザインターフェイス23、13のマシン固有の適応が必要となる。
【0029】
データ交換のため、コンピュータシステム1’、1”、2’、2”は、たとえばデータバス又はローカルネットワーク(LAN)を介してなど、通信接続を介して接続される。サービス指向アーキテクチャプラットフォーム100のサービスとして実施される、機能モジュール間の通信は、たとえばサービス指向アーキテクチャプラットフォーム100のランタイム環境の一部として使用可能な、たとえばWCFなどのサービス指向アーキテクチャプラットフォーム100の通信機能を介して行なわれることが好ましい。サービス指向アーキテクチャプラットフォーム100のサービス間の接続が、定義済みの期間内の不活動(タイムアウト)により終了されることを防ぐために、サービスとして実施された機能モジュールは、定期的なホールドアクティブコールをサービスコンシューマーであるそれらのサービスに転送するか、又はそれらのサービスコンシューマーから定期的なホールドアクティブコールを受信して、ホールドアクティブ応答で直接応答するように構成されている。
【0030】
図2は、各々マシン制御システム1、1a、1b、1c、1dによって制御される複数のマシン15、15a、15b、15c、15dを有する設備を示し、その機能モジュールは、
図1に示されるように、共通のコンピュータシステム1’、1’a、1’b、1’c、1’d上で実施される。
図2において認められるように、管理又は操作システム2は複数の動作可能なコンピュータシステム2’、2’a、2’b上で実施され、管理又は操作システム2は、複数の相互に補完的及び/又は冗長なプログラムアプリケーション(アプリケーション)を備える。
図2に図式的に示されるように、マシン制御システム1、1a、1b、1c、1d並びにコンピュータシステム1’、1’a、1’b、1’c、1’d、2’、2’a、2’b上で実施される管理又は操作システム2の機能モジュールは、たとえばWCFなどのサービス指向アーキテクチャプラットフォーム100及びその通信機能を介して通信及び対話する。
【0031】
図4は、各々マシン制御システム1によって制御される複数のマシン15、15a、15b、15c、15dを有する設備を示し、その機能モジュールは、
図3に示されるように、各々異なるコンピュータシステム上で実施される。マシン固有の部分10、10a、10b、10c、10dは各々、対応するマシン15、15a、15b、15c、15dに接続されたコンピュータシステム1”、1”a、1”b、1”c、1”d上で実施される。一方、アプリケーション固有の部分11、11a、11bは、複数の相互に補完的及び/又は冗長なプログラムアプリケーションを備える管理又は操作システム2のコンピュータシステム2”、2”a、2”b、上で実施される。
図4に図式的に示されるように、マシン固有の部分10、10a、10b、10c、10d、アプリケーション固有の部分11、11a、11b、及び管理又は操作システム2の機能モジュールは、コンピュータシステム1”、1”a、1”b、1”c、1”d、2”、2”a、2”b上で実施され、たとえばWCFなどのサービス指向アーキテクチャプラットフォーム100及びその通信機能を介して通信及び対話する。
【0032】
図5において、参照番号3は、1つ又は複数の動作可能なコンピュータと、その各々において、たとえば接触感知式ディスプレイ、特にいわゆるマルチタッチディスプレイのような1つ又は複数のディスプレイ4に接続される1つ又は複数のプロセッサとを備えるコンピュータシステムを示す。コンピュータシステム4は、たとえば、前述のコンピュータシステム1’、1’a、1’b、1’c、1’d、1”、1”a、1”b、1”c、1”d、2’、2’a、2’b、2”、2”a、及び/又は2”b、のうちの1つ又は複数を備える。
【0033】
図5において図式的に表されるように、コンピュータシステム3は、複数の機能モジュール、特にプラットフォーム30、ライセンスマネージャ31、プラグインマネージャ32、領域マネージャ33、少なくとも1つのプログラムアプリケーション34、プラグインカタログ35、及び格納されている(ユーザ固有の)ウィジェット設定36を備える。ウィジェット設定36は、ビューと、特定のユーザに使用される、表示されるウィジェットのデータコンテンツとを定義する。たとえば、ウィジェット設定36は、ユーザ基本設定において最初に定義され、後に、ウィジェットの現在のビュー及び表示されるデータコンテンツに基づいて、アプリケーションのシャットダウンの時点及び/又はユーザのログアウトの時点においてその都度決定されて格納される。
【0034】
プラットフォーム30は、複数のコンポーネント、特に、たとえば、WCF、MEF(Managed Extensibility Framework)、及びWPF(Windows(登録商標) Presentation Foundation)向けのMicrosoft Corporationの.Netコンポーネントなど、サービス指向アーキテクチャプラットフォーム、動的アプリケーション拡張及びグラフィック機能をサポートするためのランタイム環境のコンポーネントを備える。
【0035】
プラグインカタログ35は、たとえばMEFで実施され、複数のプラグインを備えるか、又は格納されているプラグインを示す。プラグインは、プログラムアプリケーションがプラグインによって提供された機能で拡張されるように、既存のソフトウェアベースのプログラムアプリケーションを拡張するソフトウェアコンポーネント(コンピュータプログラム)である。プラグインは、たとえば、プログラムアプリケーション(アプリケーション)の開始時又はランタイム中に、プログラムアプリケーションの補完として、動的にロード可能及び実行可能である。プラグインカタログ35は、特に、メインウィンドウプラグイン、複数のウィンドウ領域プラグイン、ログインプラグイン、ウィジェットマネージャプラグイン、及び複数のウィジェットプラグインを備える。
【0036】
以下のセクションにおいて、例として
図6を参照して、ディスプレイ4のプログラムアプリケーション34のグラフィカルユーザインターフェイスを生成するための一連のステップが説明される。
【0037】
ステップS1において、ロード可能な格納されたプラグイン又はそれらのプラグインの参照は、たとえばMEFを介してプラグインカタログ35にロードされる。ステップS1は、たとえば、システム構成の一部としての準備ステップとして実行される。各プラグインには、さまざまな属性が備えられている。これらのプラグイン属性は、少なくとも開始要件及び開始制約を定義し、特に言語属性及びライセンス属性も備える。
【0038】
ステップS2において、プラグインカタログ35内のプラグインは、プログラムアプリケーション34が開始された後、それらの属性に基づいてフィルタリングされる。ここで、ライセンスマネージャ31は、有効なライセンスが存在するかどうかをプラグインごとに検査する。加えて、ユーザとの対話のためのインターフェイス機能を備えるプラグインの場合には、使用される言語が検査される。
【0039】
ステップS3において、プラグインマネージャ32は、その目的のための十分なライセンスが存在する場合、たとえばユーザ固有の、要求される言語のプラグインの開始要件及び開始制約に従って、プラグインを開始する。プラグインは、たとえばMEFを介して開始される。
【0040】
ステップS31において、メインウィンドウプラグインが開始される。参照番号S35で示されるように、ディスプレイ4上のメインウィンドウプラグインは、メインウィンドウを表し、メインウィンドウ内の複数のサブ領域を定義する。
図7aに示されるように、メインウィンドウ60は、実質的にディスプレイ4には表示されない複数のサブ領域61’、62’、63’、64’、65’が定義されている、ディスプレイ4に表されるフレーム(シェル)にすぎない。サブ領域61’、62’、63’、64’、65’は、たとえばWPFでメインウィンドウプラグインによって定義される。
【0041】
ステップS32において、追加として、ウィンドウ領域プラグインが開始される。参照番号S36で示されるように、メインウィンドウプラグインは、領域マネージャ32でその都度登録される。
【0042】
ステップS33において、ウィジェットマネージャプラグインが開始される。参照番号S37で示されるように、ウィジェットマネージャプラグインは、ウィジェットコンテキストをインポートするが、ウィジェットコンテキストは、たとえばMEFを介してウィンドウ領域プラグインでその都度関連付けられて格納される。ウィジェットコンテキストは、たとえば関連付けられているウィンドウ領域に挿入されうる、可能な許容されるウィジェットを定義する。
【0043】
ステップS34において、ログインプラグインが開始される。参照番号S38で示されるように、ログインプラグインは、領域マネージャ32で登録される。
【0044】
図6において、ステップS3に関連して、開始されるプラグインの選択のみが表示されるが、これらのプラグインは、グラフィカルユーザインターフェイス6の生成に関連して特に関心の対象となるものである。しかし、当業者は、たとえばウィジェットプラグインなど、追加のプラグインもまた開始されることを理解するであろう。
【0045】
ステップS4において、たとえば、WPFで定義されたサブ領域61’、62’、63’、64’、65’は、たとえばWPFによって領域マネージャ33で報告(登録)され、加えて領域マネージャ33はすべての定義されたサブ領域61’、62’、63’、64’、65’を初期化する。
【0046】
ステップS5において、領域マネージャ33は、報告(登録)されたサブ領域61’、62’、63’、64’、65’を、サブ領域61’、62’、63’、64’、65’に各々備えられているウィンドウ領域プラグインにリンクする。ここで、特にログインプラグインは、その目的で備えられているサブ領域63’にもリンクされる。
【0047】
ステップS6において、ディスプレイ4のウィンドウ領域プラグインは、リンクされているメインウィンドウ60のサブ領域61’、62’、63’、64’、65’でその都度それらのウィンドウ領域を表す。
図7bに示されるように、ディスプレイ4で、ウィンドウ領域61、62、63、64、65は、これ以降、ユーザインターフェイス6のメインウィンドウ60に明白に表される。
【0048】
ステップS7において、ログインプラグインは、リンクされているメインウィンドウ60のサブ領域63’にディスプレイ4上でそのログイン領域を表す。
図7cに示されるように、ディスプレイ4で、ウィンドウ領域61、62、64、65に加えて、対応するログイン入力フィールド66を備えたログイン領域63もまた、これ以降、ユーザインターフェイス6のメインウィンドウ60に明白に表される。
【0049】
ステップS8において、ログインプラグインは、ログイン入力フィールド66を介して、ユーザから、たとえばユーザ名及びパスワード又はアクセスコードなど、ログインデータを受け取る。
【0050】
ステップS9において、ウィジェットマネージャプラグインは、(許可された)ユーザのログインに従って、ユーザ固有の格納されているウィジェット設定36をロードする。
【0051】
ステップS10において、ウィジェットマネージャプラグインは、ユーザのウィジェット設定36を、ウィンドウ領域プラグインに関連付けられている、以前にインポートされたウィジェットコンテキストにリンクする。ここで、ユーザ固有のウィジェット設定36により定義されたビューは、ウィンドウ領域のウィジェットコンテキストにリンクされる。
【0052】
ステップS11において、ウィジェットプラグインは各々の場合に、そのインターフェイス入力要素及び/又はインターフェイス出力要素を生成し、自らをディスプレイ4で、特定のウィジェットコンテキストによりリンクされているウィンドウ領域、特にユーザ固有のウィジェット設定36により定義されているビュー、及び表示されるべきデータコンテンツに挿入する。
図7dに示されるように、ディスプレイ4で、ユーザインターフェイス6のメインウィンドウ60のウィンドウ領域61、62、64、65内に、ウィジェットW1、W2、W3、W4が、これ以降、加えて明白に表される。
【0053】
最後に、上記の機能モジュールが、各々コンピュータの1つ又は複数のプロセッサを制御しコンピュータプログラム製品に格納されているプログラムコードを備える、プログラムされたソフトウェアモジュールとして実施されることが好ましく、コンピュータプログラム製品は、プロセッサに永続的又は取外し可能に接続され不揮発性のアクセス可能なコンピュータ可読媒体を備える。しかし、機能モジュールが、部分的又は完全にハードウェアコンポーネントを用いて、代替の実施形態の変形において実施されてもよいことを、当業者は理解するであろう。加えて、説明において、コンピュータプログラムコードが特定の機能モジュールに関連付けられて、ステップの実施が特定の順序で示されているが、保護される主題を逸脱することなく、コンピュータプログラムコードが異なる構造であってもよいこと、及び少なくとも特定のステップの順序が変更されてもよいことを、当業者は理解するであろう。