(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024167055
(43)【公開日】2024-11-29
(54)【発明の名称】生産計画情報を活用した通信リソース最適化システム
(51)【国際特許分類】
G05B 19/418 20060101AFI20241122BHJP
G06Q 50/04 20120101ALI20241122BHJP
【FI】
G05B19/418 Z
G06Q50/04
【審査請求】有
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2024068521
(22)【出願日】2024-04-19
(31)【優先権主張番号】18/199,491
(32)【優先日】2023-05-19
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
2.VISUAL BASIC
3.PYTHON
4.JAVASCRIPT
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000279
【氏名又は名称】弁理士法人ウィルフォート国際特許事務所
(72)【発明者】
【氏名】柚木 祥慈
(72)【発明者】
【氏名】石井 大介
(72)【発明者】
【氏名】植田 泰輔
【テーマコード(参考)】
3C100
5L050
【Fターム(参考)】
3C100AA29
3C100AA59
3C100BB13
3C100BB33
3C100CC02
3C100CC16
5L050CC04
(57)【要約】 (修正有)
【課題】通信リソースを最適化する。
【解決手段】反復的に、プロセッサによって、少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスすることと、少なくとも1つの生産ラインの各々について、前の生産ライン状態が現在の生産ライン状態と一致するかどうかを判定することと、現在の生産ライン状態と一致しない前の生産ライン状態について、生産ラインと関連付けられたデバイスのIPアドレスリストを取り出すために、デバイス情報にアクセスすることと、デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスすることと、IPアドレスリストおよびQoS関連付け情報に基づいて、デバイスのうちの各デバイスについて、IPアドレスと、QoSコンフィギュレーション情報におけるQoSレベルとのペアリングを作成することとを含み得る。
【選択図】
図1
【特許請求の範囲】
【請求項1】
通信リソースを最適化するための方法であって、
プロセッサによって、デフォルトのヌル状態を、少なくとも1つの生産ラインと関連付けられた前の生産ライン状態で置き換えることと、
反復的に、前記プロセッサによって、
前記少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスすることと、
前記少なくとも1つの生産ラインの各々について、
前の生産ライン状態が現在の生産ライン状態と一致するかどうかを判定することと、
現在の生産ライン状態と一致しない前の生産ライン状態について、
生産ラインと関連付けられたデバイスのIPアドレスリストを取り出すために、デバイス情報にアクセスすることと、
前記デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスすることと、
前記IPアドレスリストおよび前記QoS関連付け情報に基づいて、前記デバイスのうちの各デバイスについて、IPアドレスと、QoSコンフィギュレーション情報におけるQoSレベルとのペアリングを作成することと、
関連付けられた現在の生産ライン状態と一致しない前記少なくとも1つの生産ラインのいずれかの前の生産ライン状態について、
前記QoSコンフィギュレーション情報に基づいて5Gネットワークを構成することによって前記5G通信ネットワークにおいてリソースを割り当てるために、QoSコンフィギュレーション情報を5Gネットワークマネージャに入力することと、
前記現在の生産ライン状態を前記前の生産ライン状態で置き換えることと、
所定の期間だけ休止することと、を実行することと
を含む、方法。
【請求項2】
前記現在の生産ライン状態と一致する前記前の生産ライン状態について、前記所定の期間だけ休止することをさらに含む、請求項1に記載の方法。
【請求項3】
前記少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスすることは、
前記少なくとも1つの生産ラインの各々について、前記生産ライン情報からの第1の生産ライン状態にアクセスすることと、
前記少なくとも1つの生産ラインの各々について、前記デバイス情報からの第2の生産ライン状態にアクセスすることと、
前記少なくとも1つの生産ラインの各々について、前記QoS関連付け情報からの前記第1の生産ライン状態および前記第2の生産ライン状態と関連付けられたQoSレベルにアクセスすることと、
前記少なくとも1つの生産ラインの各々について、前記第1の生産ライン状態および前記第2の生産ライン状態からのより高いQoSレベルを有する生産ライン状態を、現在の生産ライン状態として設定することと
を含む、請求項1に記載の方法。
【請求項4】
前記デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスすることは、
生産ラインの生産進捗を判定するために前記生産ライン情報にアクセスすることと、
生産ラインと関連付けられた前記デバイスの各々についてのQoSレベルを取り出すために前記QoS関連付け情報にアクセスすることと、
遅延状態を有する生産進捗について、生産ラインと関連付けられた前記デバイスの各々のために、取り出された前記QoSレベルよりも高いQoSレベルを割り当てることと
を含む、請求項1に記載の方法。
【請求項5】
前記生産ライン情報は製造実行システム(MES)に記憶され、前記デバイス情報は監視制御・データ収集(SCADA)システムに記憶され、および前記QoS関連付け情報はQoSオーケストレータに記憶されている、請求項1に記載の方法。
【請求項6】
通信リソースを最適化するためのシステムであって、
ネットワークと、
前記ネットワークと通信しているネットワークマネージャであって、前記ネットワークマネージャが、前記ネットワークを構成するためのプロセッサを備える、ネットワークマネージャと、
製造実行システム(MES)であって、前記MESは、少なくとも1つの生産ラインと関連付けられた生産ライン情報を記憶し、前記生産ライン情報は、前記少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を含む、MESと、
監視制御・データ収集(SCADA)システムであって、前記SCADAシステムは、前記少なくとも1つの生産ラインと関連付けられたデバイス情報を記憶し、前記デバイス情報は、前記少なくとも1つの生産ラインと関連付けられたデバイスのIPアドレスリストを含む、SCADAシステムと、
サービス品質(QoS)オーケストレータであって、前記QoSオーケストレータは、前記少なくとも1つの生産ラインと関連付けられた前記デバイスの各々についてのQoS関連付け情報を記憶する、QoSオーケストレータとを備え、
前記プロセッサは、前記生産ライン情報、前記デバイス情報、および前記QoS関連付け情報を使用して前記ネットワークを構成する、システム。
【請求項7】
前記プロセッサが、
デフォルトのヌル状態を、少なくとも1つの生産ラインと関連付けられた前の生産ライン状態と置き換えることと、
反復的に、
前記少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスすることと、
前記少なくとも1つの生産ラインの各々について、
前の生産ライン状態が現在の生産ライン状態と一致するかどうかを判定することと、
現在の生産ライン状態と一致しない前の生産ライン状態について、
生産ラインと関連付けられたデバイスのIPアドレスリストを取り出すためにデバイス情報にアクセスすることと、
前記デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスすることと、
前記IPアドレスリストおよび前記QoS関連付け情報に基づいて、前記デバイスのうちの各デバイスについて、IPアドレスと、QoSコンフィギュレーション情報におけるQoSレベルとのペアリングを作成することと、
関連付けられた現在の生産ライン状態と一致しない前記少なくとも1つの生産ラインのいずれかの前の生産ライン状態について、
前記QoSコンフィギュレーション情報に基づいて5Gネットワークを構成することによって前記5G通信ネットワークにおいてリソースを割り当てるために、QoSコンフィギュレーション情報を5Gネットワークマネージャに入力することと、
前記現在の生産ライン状態を前記前の生産ライン状態で置き換えることと、
所定の期間だけ休止することと、を実行することと
を行うように構成されている、請求項6に記載のシステム。
【請求項8】
前記現在の生産ライン状態と一致する前記前の生産ライン状態について、前記所定の期間だけ前記プロセッサを休止させることをさらに含む、請求項7に記載のシステム。
【請求項9】
前記少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスすることは、
前記少なくとも1つの生産ラインの各々について、前記生産ライン情報からの第1の生産ライン状態にアクセスすることと、
前記少なくとも1つの生産ラインの各々について、前記デバイス情報からの第2の生産ライン状態にアクセスすることと、
前記少なくとも1つの生産ラインの各々について、前記QoS関連付け情報からの前記第1の生産ライン状態および前記第2の生産ライン状態と関連付けられたQoSレベルにアクセスすることと、
前記少なくとも1つの生産ラインの各々について、前記第1の生産ライン状態および前記第2の生産ライン状態からのより高いQoSレベルを有する生産ライン状態を、現在の生産ライン状態として設定することと
を含む、請求項7に記載のシステム。
【請求項10】
前記デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスすることは、
生産ラインの生産進捗を判定するために前記生産ライン情報にアクセスすることと、
生産ラインと関連付けられた前記デバイスの各々についてのQoSレベルを取り出すために前記QoS関連付け情報にアクセスすることと、
遅延状態を有する生産進捗について、生産ラインと関連付けられた前記デバイスの各々のために、取り出された前記QoSレベルよりも高いQoSレベルを割り当てることとを含む、請求項7に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、通信リソース最適化のための方法およびシステムに関する。
【背景技術】
【0002】
製造業界は、大量生産から、製造ラインにおいて柔軟性を必要とする小量の多様な生産へと移行してきている。柔軟性を達成するために、製造プロセスのためにワイヤレス通信ネットワークが必要であり、それによってフィールドデバイスが異なる製品を生産するように容易に再配置可能になる。製造プロセスに適用される通信ネットワークは、保証されたレイテンシ、保証された速度など、特定の通信品質を保証することが求められる。第5世代モバイルネットワーク(5G)は、ワイヤレス通信と保証された通信との両方を実現できる通信システムである。しかしながら、5Gシステムが提供できる保証された通信リソースは限られている。5Gがそのまま製造システムに適用されると、保証された通信リソースは、製造プロセスがアイドル状態の場合であっても、その製造プロセスに割り当てられる場合がある。したがって、最適化されたサービス品質(QoS)のリソース割り当てが、5Gシステムが対応できる製造プロセスの数を最大化するために必要である。
【0003】
関連技術において、ネットワーク管理サーバは、各フィールドデバイスで実行されているアプリケーションの現在の状態に基づいてそのフィールドデバイスへのQoS通信リソース割り当てを実施する。ネットワーク管理サーバの利用は、製造アプリケーションの状態の頻繁な変化につながる。例えば、製造された製品において欠陥が検出されたとき、製造ラインは生産状態にあるはずであるが、関連製造アプリケーションの状態は、「実行中」から「停止」もしくは「保守」に移行する場合があり、これは、オペレータによる生産ラインの検査を可能にする。QoS割り当ての頻繁な変更は、通信における短期の割り込みが発生する場合があるため、製造アプリケーションの性能の劣化につながり得る。
【発明の概要】
【発明が解決しようとする課題】
【0004】
実装例は、QoSリソース割り当てがフィールドデバイスに合わせて構成されている時に変動する場合があるフィールドデバイスの適用状態の代わりに、製造実行システム(MES)に記憶されている安定した長期生産計画を利用するネットワークオーケストレータを使用する。この生産計画は、異なる時間区分における製造ラインのスケジューリングされた動作モードなどの情報を含み得る。QoSオーケストレータは、製造ラインの動作モードと、製造ライン内のデバイスに割り当てられている対応QoSレベルとの間の関連付けを記憶する。実装例は、QoSリソースの割り当ての頻繁な変更によって引き起こされる製造アプリケーションの性能劣化なく、QoS通信リソースの最適な使用を可能にする。
【課題を解決するための手段】
【0005】
本開示の態様は、通信リソースを最適化するための革新的な方法を伴う。方法は、プロセッサによって、デフォルトのヌル状態を、少なくとも1つの生産ラインと関連付けられた前の生産ライン状態で置き換えることと、反復的に、プロセッサによって、少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスすることと、少なくとも1つの生産ラインの各々について、前の生産ライン状態が現在の生産ライン状態と一致するかどうかを判定することと、現在の生産ライン状態と一致しない前の生産ライン状態について、生産ラインと関連付けられたデバイスのIPアドレスリストを取り出すために、デバイス情報にアクセスすることと、デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスすることと、IPアドレスリストおよびQoS関連付け情報に基づいて、デバイスのうちの各デバイスについて、IPアドレスと、QoSコンフィギュレーション情報におけるQoSレベルとのペアリングを作成することと、関連付けられた現在の生産ライン状態と一致しない少なくとも1つの生産ラインのいずれかの前の生産ライン状態について、QoSコンフィギュレーション情報に基づいて5Gネットワークを構成することによって5G通信ネットワークにおいてリソースを割り当てるために、QoSコンフィギュレーション情報を5Gネットワークマネージャに入力することと、現在の生産ライン状態を前の生産ライン状態で置き換えることと、所定の期間だけ休止することと、を行うこととを含み得る。
【0006】
本開示の態様は、通信リソースを最適化するための命令を記憶する、革新的な非一時的コンピュータ可読媒体を伴う。命令は、プロセッサによって、デフォルトのヌル状態を、少なくとも1つの生産ラインと関連付けられた前の生産ライン状態で置き換えることと、反復的に、プロセッサによって、少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスすることと、少なくとも1つの生産ラインの各々について、前の生産ライン状態が現在の生産ライン状態と一致するかどうかを判定することと、現在の生産ライン状態と一致しない前の生産ライン状態について、生産ラインと関連付けられたデバイスのIPアドレスリストを取り出すために、デバイス情報にアクセスすることと、デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスすることと、IPアドレスリストおよびQoS関連付け情報に基づいて、デバイスのうちの各デバイスについて、IPアドレスと、QoSコンフィギュレーション情報におけるQoSレベルとのペアリングを作成することと、関連付けられた現在の生産ライン状態と一致しない少なくとも1つの生産ラインのいずれかの前の生産ライン状態について、QoSコンフィギュレーション情報に基づいて5Gネットワークを構成することによって5G通信ネットワークにおいてリソースを割り当てるために、QoSコンフィギュレーション情報を5Gネットワークマネージャに入力することと、現在の生産ライン状態を前の生産ライン状態で置き換えることと、所定の期間だけ休止することと、を実行することとを含み得る。
【0007】
本開示の態様は、通信リソースを最適化するための革新的なサーバシステムを伴う。システムは、プロセッサによって、デフォルトのヌル状態を、少なくとも1つの生産ラインと関連付けられた前の生産ライン状態で置き換えることと、反復的に、プロセッサによって、少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスすることと、少なくとも1つの生産ラインの各々について、前の生産ライン状態が現在の生産ライン状態と一致するかどうかを判定することと、現在の生産ライン状態と一致しない前の生産ライン状態について、生産ラインと関連付けられたデバイスのIPアドレスリストを取り出すために、デバイス情報にアクセスすることと、デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスすることと、IPアドレスリストおよびQoS関連付け情報に基づいて、デバイスのうちの各デバイスについて、IPアドレスと、QoSコンフィギュレーション情報におけるQoSレベルとのペアリングを作成することと、関連付けられた現在の生産ライン状態と一致しない少なくとも1つの生産ラインのいずれかの前の生産ライン状態について、QoSコンフィギュレーション情報に基づいて5Gネットワークを構成することによって5G通信ネットワークにおいてリソースを割り当てるために、QoSコンフィギュレーション情報を5Gネットワークマネージャに入力することと、現在の生産ライン状態を前の生産ライン状態で置き換えることと、所定の期間だけ休止することと、を行うこととを含み得る。
【0008】
本開示の態様は、通信リソースを最適化するための革新的なシステムを伴う。システムは、プロセッサによって、デフォルトのヌル状態を、少なくとも1つの生産ラインと関連付けられた前の生産ライン状態で置き換える手段と、反復的に、プロセッサによって、少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスする手段と、少なくとも1つの生産ラインの各々について、前の生産ライン状態が現在の生産ライン状態と一致するかどうかを判定する手段と、現在の生産ライン状態と一致しない前の生産ライン状態について、生産ラインと関連付けられたデバイスのIPアドレスリストを取り出すために、デバイス情報にアクセスする手段と、デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスする手段と、IPアドレスリストおよびQoS関連付け情報に基づいて、デバイスのうちの各デバイスについて、IPアドレスと、QoSコンフィギュレーション情報におけるQoSレベルとのペアリングを作成する手段と、関連付けられた現在の生産ライン状態と一致しない少なくとも1つの生産ラインのいずれかの前の生産ライン状態について、QoSコンフィギュレーション情報に基づいて5Gネットワークを構成することによって5G通信ネットワークにおいてリソースを割り当てるために、QoSコンフィギュレーション情報を5Gネットワークマネージャに入力する手段と、現在の生産ライン状態を前の生産ライン状態で置き換える手段と、所定の期間だけ休止する手段と、を実行する手段とを含み得る。
【0009】
以下で、本開示の様々な特徴を実装する汎用アーキテクチャを図面を参照して説明する。図面および関連の記載は、本開示の実装例を例解するために提供されており、本開示の範囲を限定するためではない。図面全体を通して、参照番号は、参照された要素間の対応関係を示すためにも再度使用される。
【図面の簡単な説明】
【0010】
【
図1】一実装例による、通信リソース最適化を実施するための例示的なシステム100を示す図である。
【
図2】一実装例による、例示的な生産ラインタイムテーブル111を示す図である。
【
図3】一実装例による、例示的なQoS関連付けテーブル108を示す図である。
【
図4】一実装例による、例示的なQoSレベルテーブル110を示す図である。
【
図5】一実装例による、例示的なデバイス情報テーブル112を示す図である。
【
図6】一実装例による、QoSコンフィギュレータ109の例示的なプロセスフローを示す図である。
【
図7】一実装例による、代替の例示的なデバイス情報テーブル112を示す図である。
【
図8】一実装例による、QoSコンフィギュレータ109の代替の例示的なプロセスフローを示す図である。
【
図9】一実装例による、生産ラインタイムテーブル111の代替例を示す図である。
【
図10】いくつかの実装例での使用に適した例示的なコンピューティングデバイスを有する例示的なコンピューティング環境を示す図である。
【発明を実施するための形態】
【0011】
以下の詳細な説明は、本願の図および実装例の詳細を提供するものである。図間で重複する要素の参照番号および説明は、明確性のために省略される。説明全体で使用される語は例として提供されたものであり、限定することは意図されない。例えば、「自動」という語の使用は、本願の実装を実践する当業者の所望の実装に応じて、実装の特定の態様に対するユーザまたは管理者の制御を含む、全自動または半自動の実装を含み得る。選択は、ユーザインターフェースまたは他の入力手段を介してユーザによって実行可能であり、もしくは所望のアルゴリズムを介して実装され得る。本明細書に記載するような実装例は、単独で、または組み合わせによってのいずれかで利用可能であり、その実装例の機能も同様であり得る。
【0012】
図1は、一実装例による、通信リソース最適化を実施するための例示的なシステム100を示す図である。システム100は、5Gネットワークマネージャ101、QoSオーケストレータ102、ERP(Enterprise Resource Planning、企業資源計画)103、MES(manufacturing Execution System、製造実行システム)104、SCADA(Supervisory Control and Data Acquisition、監視制御・データ収集)105、5Gネットワーク106、および生産ライン107を含み得る。ERP103は、日毎の生産動作の様子を管理し、生産計画情報を記憶する統合システムである。MES104は、生産サイクル全体を、監視、追跡、文書化、および制御することによって生産プロセスを最適化する。MES104は、生産計画情報に基づいて自動または手動で作成された生産ラインタイムテーブル111を記憶する。SCADA105は、生産ライン107を備えるデバイスを監視および制御し、デバイス情報テーブル112を記憶する。各生産ライン107は、ベルトコンベア、ロボットアームなどであるがそれらに限定されない多数のデバイスを備える。これらのデバイスは、5Gネットワーク106を介して相互に接続されている。QoSオーケストレータ102は、QoS関連付けテーブル108およびQoSコンフィギュレータ109を備える。QoSコンフィギュレータ109は、生産タイムテーブル111をMES104から収集し、QoSコンフィギュレーションを作成し、そのQoSコンフィギュレーションを5Gネットワーク106内で展開する。5Gネットワークマネージャ101は、QoSレベルテーブル110を参照することによって、QoSオーケストレータ102から受信したQoSコンフィギュレーションに基づいて5Gネットワーク106を構成する。
【0013】
図2は、一実装例による、例示的な生産ラインタイムテーブル111を示す図である。
図2に示すように、生産ラインタイムテーブル111は、生産ラインID201、時間202、および生産ライン状態203などであるがそれらに限定されない情報を含み得る。生産ラインID201は、特定の生産ラインと関連付けられた識別子である。時間202は、生産ライン状態が持続する特定の時間区分である。生産ライン状態203は、生産ラインの状態である。例えば、行204は、生産ラインID「1」を有する生産ラインが時間区分0:00~08:00においてアイドル状態にあることを示す。
【0014】
図3は、一実装例による、例示的なQoS関連付けテーブル108を示す図である。
図3に示すように、QoS関連付けテーブル108は、生産ライン状態301およびQoSレベル302などであるがそれらに限定されない情報を含み得る。QoS関連付けテーブル108内の生産ライン状態301は、生産ラインタイムテーブル111の生産ライン状態203に対応する。QoSレベル302は、保証された通信リソースの品質を示すインジケータである。QoSレベルが高くなるほど、保証された通信リソースの品質も高くなる。例えば、行303は、生産ライン状態「停止」がQoSレベル「1」と関連付けられていることを示す。
【0015】
図4は、一実装例による、例示的なQoSレベルテーブル110を示す図である。
図4に示すように、QoSレベルテーブル110は、QoSレベル401および遅延402などであるがそれらに限定されない情報を含み得る。QoSレベルテーブル110内のQoSレベル401は、QoS関連付けテーブル108のQoSレベル302と対応している。遅延402は、保証された遅延を、5GネットワークにおけるQoS関数によって示す。例えば、行403は、QoSレベル「1」が200msの遅延と関連付けられていることを示す。
【0016】
図5は、一実装例による、例示的なデバイス情報テーブル112を示す図である。
図5に示すように、デバイス情報テーブル112は、生産ラインID501、デバイスID502、およびインターネットプロトコル(IP)アドレス503などであるがそれらに限定されない情報を含み得る。生産ラインID501は、生産ラインタイムテーブル111の生産ラインID201と対応する。デバイスID502は、生産ラインと関連付けられているデバイスを表す。IPアドレス503は、デバイスの位置を特定するために使用される、デバイスに割り当てられた数字の識別値を表す。デバイス情報テーブル112は、様々な生産ラインと関連付けられたデバイスおよび関連付けられたIPアドレスを指定する。例えば、行504は、ID「1」を有するデバイスが生産ライン「1」の一部であり、IPアドレス192.168.1.1を有することを示す。
【0017】
図6は、一実装例による、QoSコンフィギュレータ109の例示的なプロセスフローを示す図である。プロセスは、ステップS601で開始し、QoSコンフィギュレータ109は、最大ライン数imaxを事前設定値Xで置き換え、各生産ラインiの前の生産ライン状態Siをデフォルト値「ヌル」で置き換える。ステップS602で、QoSコンフィギュレータ109は、MES104に記憶されている生産ラインタイムテーブル111にアクセスし、各生産ラインiについて、QoSコンフィギュレータ109は、siを、生産ラインiの現在の状態で置き換える。
【0018】
ステップS603で、iが値「1」で置き換えられる。次いで、その後のステップS604で、iがimax以下であるかどうかに関して判定が行われる。結果がYesの場合、プロセスはステップS605へ続く。そうでなければ、プロセスはステップS609に進む。ステップS605で、Siがsiと同一かどうかに関して判定が行われる。結果がYesの場合、プロセスはステップS608に進む。そうでなければ、プロセスは、ステップS606に続き、QoSコンフィギュレータ109は、SCADA105内のデバイス情報テーブルにアクセスし、生産ラインi内に存在するデバイスのIPアドレスリストをプルする。
【0019】
ステップS607で、QoSコンフィギュレータ109は、QoS関連付けテーブル108にアクセスし、デバイスごとに、siと関連付けられているIPアドレスとQoSレベルとのペアリングを実行し、その生成された情報ペアをQoSコンフィギュレーションテーブルに記憶する。ステップS605でSiがsiと同じである場合、QoSコンフィギュレーションテーブルにおける関連エントリはヌルとなる。ステップS608で、QoSコンフィギュレータ109はiをi+1で置き換え、プロセスはステップS609に続き、QoSコンフィギュレータ109は、QoSコンフィギュレーションテーブルがヌルか否かをチェックする。結果がyesの場合、その後にステップS612が続く。そうでなければ、プロセスはステップS610に続く。
【0020】
ステップS610で、QoSコンフィギュレータ109は、QoSコンフィギュレーションテーブルを5Gネットワークマネージャ内に置き、このステップの完了時にQoSコンフィギュレーションテーブルをクリアする。ステップS611で、QoSコンフィギュレータ109は、各iについてSiをsiで置き換え、プロセスはステップS612に続き、QoSコンフィギュレータ109は、事前に設定された時間Yだけスリープまたは休止し、プロセスはステップS602に戻って、後続の反復動作を開始する。
【0021】
以下は、QoSコンフィギュレータ109の詳細なフローを、
図2の生産ラインタイムテーブル111、
図5のデバイス情報テーブル112、および
図3のQoS関連付けテーブル108が使用されている特定の例を用いて説明する。現在の時刻は0:00であり、Xが2、事前に設定された時間Yが1分であると仮定する。
【0022】
ステップS601で、QoSコンフィギュレータ109は、最大ライン数imaxを事前設定値2で置き換え、各生産ラインiの前の生産ライン状態Siをデフォルト値「ヌル」で置き換える。ステップS602で、QoSコンフィギュレータ109は、MES104の生産ラインタイムテーブル111にアクセスし、各生産ラインiについて、siを生産ラインiの現在の状態で置き換える。生産ラインタイムテーブル111によれば、0:00におけるライン1および2の現在の状態が、それぞれ、「アイドル」および「生産」である。したがって、s1およびs2は、「アイドル」および「生産」にそれぞれ設定される。
【0023】
ステップS603で、QoSコンフィギュレータ109は、iを1で置き換える。その後、ステップS604で、QoSコンフィギュレータ109は、i(=1)がimax(=2)以下であるかをチェックする。この結果がyesであれば、プロセスはステップS605に進み、QoSコンフィギュレータ109は、Si(=1)(=ヌル)がsi(=1)(=アイドル)と同一であるかどうかを判定する。結果がnoであれば、プロセスはステップS606に進む。
【0024】
ステップS606で、QoSコンフィギュレータ109は、SCADA105に記憶されているデバイス情報テーブル112にアクセスし、生産ラインi(=1)内に存在するデバイスのIPアドレスリストをプルする。デバイス情報テーブル112によれば、その生産ライン1内のデバイスは、IPアドレス192.168.1.1、192.168.1.2、および192.168.1.3を有する。
【0025】
ステップS607で、QoSコンフィギュレータ109は、QoS関連付けテーブル108にアクセスし、デバイスごとに、si(=1)(=アイドル)と関連付けられているIPアドレスとQoSレベルとのペアリングを実行し、その生成された情報ペアをQoSコンフィギュレーションテーブルに記憶する。ここで、アイドルを関連付けられているQoSレベルは「2」である。したがって、ペア[[192.168.1.1,2]、[192.168.1.2,2]、[192.168.1.3,2]]が、QoSコンフィギュレーションテーブルに追加される。
【0026】
ステップS608で、QoSコンフィギュレータ109はiをi+1で置き換え、プロセスはステップS604に再度戻り、iが「2」に更新される。ステップS604で、QoSコンフィギュレータ109は、i(=2)がimax(=2)以下であるかどうかをチェックする。結果がyesの場合、プロセスはステップS605に続く。そうでなければ、プロセスはステップS609に進む。
【0027】
ステップS605で、QoSコンフィギュレータ109は、Si(=2)(=ヌル)がsi(=2)(=生産)と同じかどうかをチェックする。結果がnoであるため、プロセスはステップS606に続き、QoSコンフィギュレータ109はデバイス情報テーブル112にアクセスし、生産ラインi(=2)内のデバイスのIPアドレスリストをプルする。デバイス情報テーブル112によれば、その生産ライン2内のデバイスは、IPアドレス192.168.2.1、192.168.2.2、および192.168.2.3を有する。
【0028】
ステップS607で、QoSコンフィギュレータ109は、QoS関連付けテーブル108にアクセスし、デバイスごとに、si(=2)(生産)と関連付けられているIPアドレスとQoSレベルとのペアリングを実行し、その生成された情報ペアをQoSコンフィギュレーションテーブルに記憶する。ここで、生産と関連付けられているQoSレベルは「5」である。したがって、ペア[[192.168.2.1,5]、[192.168.2.2,5]、[192.168.2.3,5]]が、QoSコンフィギュレーションテーブルに追加される。
【0029】
ステップS608で、QoSコンフィギュレータ109はiをi(=2)+1で置き換え、プロセスはステップS604に再度戻り、iが「3」に更新される。ステップS604で、QoSコンフィギュレータ109は、i(=3)がimax(=2)以下であるかどうかをチェックする。結果がnoであるため、プロセスはステップS609に進む。ステップS609で、QoSコンフィギュレータ109は、QoSコンフィギュレーションテーブルがヌルであるか否かを判定する。結果がnoであることにより、プロセスはステップS610に続く。
【0030】
ステップS610で、QoSコンフィギュレータ109は、QoSコンフィギュレーションテーブルを5Gネットワークマネージャ101に置く。QoSコンフィギュレーションテーブルは、ステップS607で作成されたエントリ[[192.168.1.1,2]、[192.168.1.2,2]、[192.168.1.3,2]、[192.168.2.1.5]、[192.168.2.2,5]、[192.168.2.3,5]]を含む。ステップS610の完了時に、QoSコンフィギュレータは、次いで、QoSコンフィギュレーションテーブルをクリアする。
【0031】
ステップS611で、QoSコンフィギュレータ109は各iについて、Siをsiで置き換える。次いで、プロセスはステップS612に続き、QoSコンフィギュレータ109は、事前設定時間Y(=1分)だけスリープ/休止し、プロセスはステップS602に戻る。この時点で、現在の時刻は0:01である。
【0032】
ステップS602で、QoSコンフィギュレータ109は、MES104の生産ラインタイムテーブル111にアクセスし、各生産ラインiについて、siを生産ラインiの現在の状態で置き換える。生産ライン時刻によれば、0:01におけるライン1および2の現在の状態が、それぞれ、「アイドル」および「生産」である。したがって、s1およびs2は、それぞれ「アイドル」および「生産」である。
【0033】
ステップS603で、QoSコンフィギュレータ109は、iを1で置き換える。ステップS604で、QoSコンフィギュレータ109は、i(=1)がimax(=2)以下であるかどうかを判定する。得られた結果がyesであるため、プロセスはステップS605に続く。ステップS605で、QoSコンフィギュレータ109は、Si(=1)(=アイドル)がsi(=1)(=アイドル)と同じかどうかを判定する。結果がYesであることにより、プロセスはステップS608に進む。
【0034】
ステップS608で、QoSコンフィギュレータ109はiをi(=1)+1で置き換え、プロセスはステップS604に進み、iが「2」に更新される。ステップS604で、QoSコンフィギュレータ109は、i(=2)がimax(=2)以下であるかどうかを判定する。iがimaxと等しい場合、プロセスはステップS605に続く。
【0035】
ステップS605で、QoSコンフィギュレータ109は、Si(=2)(=生産)がsi(=2)(=生産)と同じかどうかを判定する。結果がyesであるため、プロセスはステップS608に続き、QoSコンフィギュレータ109はiをi(=1)+1で置き換え、プロセスは再度ステップS604に続き、iが「3」に更新される。
【0036】
ステップS604で、QoSコンフィギュレータ109は、i(=3)がimax(=2)以下であるかどうかを判定する。結果がnoであるため、プロセスはステップS609に続き、QoSコンフィギュレータ109は、QoSコンフィギュレーションテーブルがヌルであるか否かを判定する。結果がyesであるため、プロセスはステップS612に続く。
【0037】
ステップS612で、QoSコンフィギュレータ109は、事前設定時間Y(=1分)だけスリープ/休止し、プロセスは再度ステップS602に戻る。ここで、現在の時刻は0:02であり、プロセスは
図6に示すように反復的に続く。したがって、上記に基づくと、通信QoSリソースの最適な使用は、製造アプリケーション性能の劣化を引き起こし得るQoS割り当ての頻繁な変更なく実現可能である。
【0038】
生産ラインの実際の状態と生産ラインのスケジューリングされた状態との間の不一致は、生産ラインタイムテーブル111が頻繁に更新されないときに発生する場合がある。生産における遅延を引き起こす予期しない問題から不一致が発生する場合がある。MES104のタイムテーブル111における生産ラインの状態がアイドルであっても、生産ラインの実際の状態は、生産前の遅延に起因して「生産」状態となる場合がある。これは、生産ラインの求められるQoSレベルと、生産ラインに割り当てられたQoSレベルとの間の不一致につながり、生産の劣化を引き起こし得る。生産ラインタイムテーブル111における生産ラインの状態と、生産の実際の状態との間の不一致に対処するQoSリソース割り当てを、以下に詳細に説明する。
【0039】
図7は、一実装例による、代替の例示的なデバイス情報テーブル112を示す。
図5とは対照的に、
図7のデバイス情報テーブル112は、フィールドデバイスから収集された生産ライン状態701などであるがこれに限定されない追加情報を含み得る。この状態は、頻繁に更新され、生産ラインの実際の状態を反映する。
【0040】
図8は、一実装例による、QoSコンフィギュレータ109の代替の例示的なプロセスフロー800を示す。
図6とは対照的に、プロセスフロー800は、追加のステップS801~S803を含む。ステップS801で、QoSコンフィギュレータ109は、MES104の生産ラインタイムテーブル111にアクセスし、各生産ラインiについて、tiを、生産ラインiの現在の状態で置き換える。ステップS802で、QoSコンフィギュレータ109は、SCADA105に記憶された、
図7に示すようなデバイス情報テーブル112にアクセスし、各生産ラインiについて、uiを、生産ラインiの現在の状態で置き換える。S803で、QoSコンフィギュレータ109は、各生産ラインiについて、QoS関連付けテーブル108にアクセスし、tiとuiとにそれぞれ関連付けられたQoSレベルを比較し、siを、より高いQoSレベルを有する状態で置き換える。
【0041】
以下の例は、
図2の生産ラインタイムテーブル111、
図7のデバイス情報テーブル112、および
図3のQoS関連付けテーブル108が使用されているQoSコンフィギュレータ109の詳細なフローを提供する。現在の時刻が08:01、Xが2、S1、S2の両方が「生産」、事前設定時間Yが1分であると仮定する。
【0042】
ステップS801で、QoSコンフィギュレータ109は、MES104に記憶されている生産ラインタイムテーブル111にアクセスし、各生産ラインiについて、tiを生産ラインiの現在の状態で置き換える。生産ラインタイムテーブル111によれば、08:01におけるライン1および2の現在の状態が、それぞれ、「アイドル」および「生産」である。したがって、t1およびt2は、それぞれ「アイドル」および「生産」である。
【0043】
ステップS802で、QoSコンフィギュレータ109は、SCADA105に記憶されているデバイス情報テーブル112にアクセスし、各生産ラインiについて、uiを生産ラインiの現在の状態で置き換える。デバイス情報テーブル112によれば、ラインの現在の状態は、両方とも「生産」である。したがって、u1およびu2は「生産」に設定される。
【0044】
ステップS803で、QoSコンフィギュレータ109は、各生産ラインiについて、QoS関連付けテーブル108にアクセスし、tiとuiとにそれぞれ関連付けられたQoSレベルを比較し、siをより高いQoSレベルを有する状態で置き換える。ここで、t1、t2、u1、およびu2のQoSレベルは、それぞれ、2、5、5、5である。t1およびu1のQoSレベルを比較すると、u1のQoSレベルはt1のQoSレベルより高い。t2およびu2のQoSレベルを比較すると、それらは同じである。したがって、u1およびs2は、両方とも「生産」に設定される。QoSコンフィギュレータ109は、ステップS603~S610を実行した後、QoSコンフィギュレーションテーブルを5Gネットワークマネージャ101に置く。ここで、QoSコンフィギュレーションテーブルは、[[192.168.1.1,5]、[192.168.1.2,5]、[192.168.1.3,5]]のペアリングを含む。この例では、生産ライン状態「アイドル」に基づいてQoSレベル「2」がデバイスに割り当てられると仮定されているとしても、QoSレベル「5」は、生産ライン2におけるデバイスに継続して割り当てられる。この例で示されるように、生産ラインタイムテーブル111における生産ラインの状態と生産ラインの実際の状態との間の不一致がある場合でも、最適なQoSリソース割り当ては可能である。
【0045】
低QoSは、生産の性能に影響を及ぼし、生産遅延の原因となり得る。この問題に対処するために、生産進捗を含む代替の生産ラインタイムテーブル111が使用される。代替の生産ラインタイムテーブル111を以下で詳細に説明する。
【0046】
図9は、一実装例による、生産ラインタイムテーブル111の代替例を示す。
図9に示すように、生産ラインタイムテーブル111は、生産進捗901の追加の列を含む。生産進捗901は、生産ラインと関連付けられた生産進捗を示す。特に、生産進捗901は、生産進捗がスケジュール通りであるか、または遅延しているかを示す。生産進捗901は、関連する生産ラインが生産状態にあるときに、手動で、またはSCADA105もしくは別のシステムによって自動的に更新される。QoSコンフィギュレータ109が生産ラインに対するQoSレベルを判定するとき、生産ライン状態203だけでなく、生産ライン状態が生産である場合は生産進捗901を参照する。
【0047】
生産ライン状態203が生産であり、生産ラインの進捗が遅延している場合、より高いレベルQoSが生産ラインに割り当てられる。例として行902を使用すると、
図9に示すように、現在時刻は13:00、生産ライン状態は「生産」、およびそのラインの生産進捗は「遅延」であると仮定されている。
図3に示すQoS関連付けテーブル108によれば、生産と関連付けられたQoSレベルは5である。このラインの生産進捗は遅延しているため、より高いQoSレベル6が、生産ライン1を備えるデバイスに割り当てられる。より高いレベルQoSの割り当てを割り当てることは、低い通信品質によって引き起こされた生産ラインのさらなる遅延を回避することに寄与する。
【0048】
上記実装例は、様々な利益および利点を有し得る。例えば、通信QoSリソースの使用は、製造アプリケーション性能の劣化を引き起こし得るQoS割り当ての頻繁な変更なく最適化される。通信リソース最適化システムの使用を通して、低通信品質によって引き起こされる生産の遅延が最小限に抑えられる。加えて、MESの生産ラインタイムテーブルにおける生産ラインの状態と生産ラインの実際の状態との間の不一致が発生した場合でも、最適なQoSリソース割り当てが達成される。
【0049】
図10は、いくつかの実装例での使用に適した例示的なコンピュータデバイスを有する例示的なコンピューティング環境を示す。コンピューティング環境1000におけるコンピューティングデバイス1005は、1つまたは複数の処理ユニット、コア、またはプロセッサ1010、メモリ1015(例えばRAM、ROM、および/または同様のもの)、内部ストレージ1020(例えば磁気、光学、ソリッドステートのストレージ、および/または有機)、および/またはI/Oインターフェース1025を含むことが可能であり、そのいずれかは、情報を通信するための通信機構またはバス1030上で結合されることが可能であり、またはコンピューティングデバイス1005に組み込まれ得る。I/Oインターフェース1025は、所望の実装に応じて、カメラから画像を受信する、またはプロジェクターもしくはディスプレイに対して画像を提供するようにさらに構成される。
【0050】
コンピューティングデバイス1005は、入力/ユーザインターフェース1035および出力デバイス/インターフェース1040に通信可能に結合され得る。入力/ユーザインターフェース1035および出力デバイス/インターフェース1040のいずれか一方または両方は、有線または無線インターフェースであってもよく、取り外し可能であってもよい。入力/ユーザインターフェース1035は、入力を提供するために使用可能である、物理的または仮想的な任意のデバイス、コンポーネント、センサまたはインターフェース(例えば、ボタン、タッチスクリーンインターフェース、キーボード、ポインティング/カーソルコントロール、マイクロフォン、カメラ、ブライユ、動きセンサ、加速度計、光学読取装置、および/または同様のもの)を含み得る。出力デバイス/インターフェース1040は、ディスプレイ、テレビ、モニタ、プリンタ、スピーカー、ブライユ、または同様のものを含み得る。いくつかの実装例では、入力/ユーザインターフェース1035および出力デバイス/インターフェース1040は、コンピューティングデバイス1005とともに組み込まれることが可能であり、またはそれと物理的に結合されることが可能である。他の実装例では、他のコンピューティングデバイスが、コンピューティングデバイス1005のための入力/ユーザインターフェース1035および出力デバイス/インターフェース1040として機能し得る、またはその機能を提供し得る。
【0051】
コンピューティングデバイス1005の例は、高移動性デバイス(例えばスマートフォン、車両および他の機械に搭載されたデバイス、人または動物によって保持されるデバイス、および同様のもの)、モバイルデバイス(例えばタブレット、ノートブック、ラップトップ、パーソナルコンピュータ、携帯型テレビ、ラジオ、および同様のもの)、および移動性のために設計されていないデバイス(例えば、デスクトップコンピュータ、他のコンピュータ、情報キオスク、1つまたは複数のプロセッサが組み込まれたテレビおよび/または1つまたは複数のプロセッサが結合されたテレビ、ラジオ、および同様のもの)を含み得るが、それに限定されない。
【0052】
コンピューティングデバイス1005は、同一または異なる構成の1つまたは複数のコンピューティングデバイスを含む、任意の数のネットワーク接続されたコンポーネント、デバイス、およびシステムとの通信のために、(例えば、I/Oインターフェース1025を介して)外部ストレージ1045およびネットワーク1050へ通信可能に結合され得る。コンピューティングデバイス1005または任意の接続済みコンピューティングデバイスは、サーバ、クライアント、シンサーバ、汎用機械、専用機械、またはその他として機能し、そのサービスを提供し、またはそれらの名称で呼ばれることが可能である。
【0053】
I/Oインターフェース1025は、コンピューティング環境1000における少なくとも全ての接続済みコンポーネント、デバイス、およびネットワークへ、および/またはそこからの情報通信のために、任意の通信もしくはI/Oプロトコルまたは規約(例えばEthernet、802.11x、Universal System Bus、WiMax、モデム、セルラーネットワークプロトコル、および同様のもの)を使用する有線および/または無線インターフェースを含み得るが、それに限定されない。ネットワーク1050は、(例えばインターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、電話網、セルラーネットワーク、衛星ネットワーク、および同様のものなどの)任意のネットワークまたはネットワークの組み合わせであり得る。
【0054】
コンピューティングデバイス1005は、一時的媒体および非一時的媒体を含むコンピュータ使用可能媒体もしくはコンピュータ可読媒体を使用、および/またはそれを使用して通信することが可能である。一時的媒体は、伝送媒体(例えば金属ケーブル、光ファイバー)、信号、搬送波、および同様のものを含む。非一時的媒体は、磁気媒体(例えば、ディスクおよびテープ)、光学媒体(例えばCD-ROM、デジタルビデオディスク、Blu-ray(登録商標)ディスク)、ソリッドステート媒体(例えばRAM、ROM、フラッシュメモリ、ソリッドステートストレージ)、および他の不揮発性ストレージまたはメモリを含む。
【0055】
コンピューティングデバイス1005は、いくつかの例示的なコンピューティング環境において技法、方法、アプリケーション、プロセス、またはコンピュータ実行可能命令を実装するために使用され得る。コンピュータ実行可能命令は、一時的媒体から取り出され、非一時的媒体に記憶され、そこから取り出されることが可能である。実行可能命令は、任意のプログラミング言語、スクリプト言語、および機械言語(例えばC、C++、C#、Java、Visual Basic、Python、Perl、JavaScript、その他)のうちの1つまたは複数に由来し得る。
【0056】
プロセッサ1010は、ネイティブな環境または仮想環境において、任意のオペレーティングシステム(OS)(不図示)の下で実行できる。論理ユニット1060と、アプリケーションプログラミングインターフェース(API)ユニット1065と、入力ユニット1070と、出力ユニット1075と、異なるユニットが、相互通信、OSとの通信、および他のアプリケーション(不図示)との通信を行うためのユニット間通信機構1095とを含む1つまたは複数のアプリケーションが展開され得る。上述したユニットおよび要素は、設計、機能、構成、または実装において異なってもよく、上記説明に限定されない。プロセッサ1010は、中央演算処理装置(CPU)などのハードウェアプロセッサの形態であってもよく、またはハードウェアユニットおよびソフトウェアユニットの組み合わせであってもよい。
【0057】
いくつかの実装例では、APIユニット1065によって情報または実行命令が受信されると、それは、1つまたは複数の他のユニット(例えば、論理ユニット1060、入力ユニット1070、出力ユニット1075)に伝えられ得る。いくつかの例において、論理ユニット1060は、ユニット間の情報フローを制御し、上述したいくつかの実装例において、APIユニット1065、入力ユニット1070、出力ユニット1075によって提供されたサービスを指示するように構成され得る。例えば、1つまたは複数のプロセスまたは実装のフローは、論理ユニット1060単独で、またはAPIユニット1065と併せて制御され得る。入力ユニット1070は、実装例で説明した計算に対する入力を取得するように構成されてもよく、出力ユニット1075は、実装例で説明した計算に基づく出力を提供するように構成されてもよい。
【0058】
プロセッサ1010は、
図6に示すように、デフォルトのヌル状態を、少なくとも1つの生産ラインと関連付けられた前の生産ライン状態に置き換えるように構成され得る。プロセッサ1010は、
図6に示すように、少なくとも1つの生産ラインと関連付けられた現在の生産ライン状態を取得するために生産ライン情報にアクセスする。プロセッサ1010が、
図6に示すように、前の生産ライン状態が現在の生産ライン状態と一致するかどうかを判定する。プロセッサ1010は、
図6に示すように、生産ラインと関連付けられたデバイスのIPアドレスリストを取り出すために、デバイス情報にアクセスする。プロセッサ1010は、
図6に示すように、デバイスの各々についてのサービス品質(QoS)レベルを取り出すためにQoS関連付け情報にアクセスする。プロセッサ1010は、
図6に示すように、IPアドレスリストおよびQoS関連付け情報に基づいて、デバイスのうちの各デバイスについて、IPアドレスと、QoSコンフィギュレーション情報におけるQoSレベルとのペアリングを作成する。プロセッサ1010は、
図6に示すように、QoSコンフィギュレーション情報に基づいて5Gネットワークを構成することによって、5G通信ネットワークにおけるリソースを割り当てるために、QoSコンフィギュレーション情報を5Gネットワークマネージャに入力する。プロセッサ1010は、現在の生産ライン状態を前の生産ライン状態に置き換える。プロセッサ1010は、
図6に示すように、所定の期間だけ休止する。
【0059】
詳細な説明のいくつかの部分は、コンピュータ内の動作のアルゴリズムおよび記号的表現によって提示される。それらのアルゴリズムの記載および記号的表現は、それらの革新の本質を他の当業者に伝えるために、データ処理分野の当業者によって使用される手段である。アルゴリズムは、所望の最終状態または結果につながる一連の定義されたステップである。実装例では、実行されたステップは、有形の結果を実現するために有形の量の物理的な操作を必要とする。
【0060】
特記しない限り、説明から明らかなように、本明細書全体を通して、「処理する」、「算出する」、「計算する」、「決定する」、「表示する」、または同様のものなどの語を利用する説明は、コンピュータシステムのレジスタおよびメモリ内で物理的(電子的)量として表されるデータを操作して、コンピュータシステムのメモリまたはレジスタまたは他の情報記憶デバイス、伝送デバイスまたは表示デバイス内の物理的量として同様に表される他のデータに変換するコンピュータシステムまたは他の情報処理デバイスのアクションおよびプロセスを含み得ることが理解される。
【0061】
実装例は、本明細書において動作を実行するための装置にさらに関係してもよい。この装置は、求められた目的のために特別に構築されてもよく、または1つもしくは複数のコンピュータプログラムによって選択的にアクティブ化または再構成される1つもしくは複数の汎用コンピュータを含んでもよい。そのようなコンピュータプログラムは、コンピュータ可読記憶媒体またはコンピュータ可読信号媒体などのコンピュータ可読媒体に記憶されてもよい。コンピュータ可読記憶媒体は、光学ディスク、磁気ディスク、読出し専用メモリ、ランダムアクセスメモリ、ソリッドステートデバイスおよびドライブ、または電子情報を記憶するのに適した任意の他の種類の有形もしくは非一時的媒体などであるがそれに限定されない有形の媒体を含み得る。コンピュータ可読信号媒体は、搬送波などの媒体を含み得る。本明細書で提示されたアルゴリズムおよび表示は、いずれかの特定のコンピュータまたは他の装置に本質的に関係しない。コンピュータプログラムは、所望の実装の動作を実行する命令を含む純粋なソフトウェアによる実装を含み得る。
【0062】
様々な汎用システムは、本明細書の例によるプログラムおよびモジュールとともに使用されてもよく、または所望の方法のステップを実行することにより特化した装置を構築することが結果として便利である場合がある。さらに、いずれかの特定のプログラミング言語を参照して実装例は説明されていない。本明細書に記載するような実装例の教示を実施するために、様々なプログラミング言語が使用され得ることが理解されるであろう。プログラミング言語の命令は、例えば、中央演算装置(CPU)、プロセッサ、またはコントローラなど、1つまたは複数の処理デバイスによって実行され得る。
【0063】
本発明が属する分野で知られるように、上述された動作は、ハードウェア、ソフトウェア、またはソフトウェアとハードウェアとの何らかの組み合わせによって実行され得る。実装例の様々な態様は、回路および論理デバイス(ハードウェア)を使用して実装されてもよい一方、他の態様は、プロセッサによって実行されるとプロセッサに本願の実装を実行する方法を実行させる、機械可読媒体(ソフトウェア)上に記憶された命令を使用して実施されてもよい。さらに、本願のいくつかの実装例はハードウェアのみで実行されてもよい一方、他の実装例はソフトウェアのみで実行されてもよい。さらに、説明された様々な機能は単体のユニットで実行されることが可能であり、または任意の数の手法で多数のコンポーネントにわたって分散され得る。ソフトウェアによって実行されると、方法は、コンピュータ可読媒体に記憶された命令に基づいて、汎用コンピュータなどのプロセッサによって実行されてもよい。必要に応じて、命令は、圧縮形式および/または暗号化形式で媒体に記憶され得る。
【0064】
さらに、本願の他の実装は、本明細書の考慮および本願の教示の実践から、当業者にとって明らかであろう。説明された実装例の様々な態様および/または構成要素は、単体または何らかの組み合わせで使用されてもよい。本明細書および実装例は例としてのみ考慮されることが意図され、本願の真の範囲および趣旨は、以下の特許請求の範囲によって示される。
【符号の説明】
【0065】
1005 コンピューティングデバイス
1010 プロセッサ
1015 メモリ
1020 内部ストレージ
1025 I/Oインターフェース
1035 入力/ユーザインターフェース
1040 出力デバイス/インターフェース
1045 外部ストレージ
1050 ネットワーク
1060 論理ユニット
1065 APIユニット
1070 入力ユニット
1075 出力ユニット