(57)【要約】      （修正有）【課題】製作機械の位置や配備順序を変更する再配置において、製造現場のＩｏＴシステムから孤立したネットワーク上のＩＴサーバ側から再配置データを検出する。【解決手段】装置再配置を検出するシステム及び方法。情報技術（ＩＴ）システムが製造現場の装置から分離されたネットワーク上にある場合でも、ＩＴシステムに記憶されている製造現場の装置の構造を最新バージョンに維持する。【選択図】図１
2020166847.tif 000002
【特許請求の範囲】
【請求項１】
複数のプログラマブルロジックコントローラ（ＰＬＣ）及び１つ以上のアセットに接続された第１のネットワークと、前記１つ以上のアセットを監視するカメラを管理するサーバに接続された第２のネットワークと、前記１つ以上のアセットを管理するアセットマネージャーとを備えるシステムの方法であって、
前記１つ以上のアセットのうちの、あるアセットが移動されているところであることを示す、前記カメラからの受信画像について、
最終位置に移動されている前記アセットを、前記カメラを使用して監視することと、
前記複数のＰＬＣのうち前記最終位置に関連付けられたＰＬＣを決定することと、
前記最終位置に移動されている前記アセットの変更と、前記最終位置に基づいて移動されている前記アセットに関連付けられたと決定された前記ＰＬＣとを示す情報を、前記アセットマネージャーに送信することと、
前記移動されているアセットに関する前記情報によって示される前記変更に従って前記第１のネットワークを再構成することと、
前記再構成された第１のネットワークからのデータを処理することと
を含む、方法。
【請求項２】
前記カメラからの前記受信画像が、前記１つ以上のアセットのうちの前記アセットが移動されているところであることを示すか否かを判定することをさらに含む方法であって、
前記判定は、
前記受信画像と、前記１つ以上のアセットの正常状態を示す正常状態画像とを比較することと、
移動オブジェクトが、前記１つ以上のアセットのうちの移動されている前記アセットであることを示す前記比較において、前記受信画像が、前記１つ以上のアセットのうちの前記アセットが移動されているところであることを示すと決定することと
を含む、請求項１に記載の方法。
【請求項３】
前記複数のＰＬＣのうち、前記最終位置に関連付けられた前記ＰＬＣを決定することが、前記複数のＰＬＣのうちの、前記最終位置に関連付けられた領域を管理している前記ＰＬＣを決定することを含む、請求項１に記載の方法。
【請求項４】
前記複数のＰＬＣのうちの、前記最終位置に関連付けられた前記領域を管理している前記ＰＬＣを決定することが、
前記受信画像における前記最終位置を全地球測位衛星（ＧＰＳ）座標に変換することと、
前記ＧＰＳ座標に関連付けられた製造現場の複数の領域から前記領域を決定することと、
前記領域内の前記１つ以上のアセットを管理するように構成された、前記複数のＰＬＣのうちの前記ＰＬＣを決定することと
を含む、請求項３に記載の方法。
【請求項５】
前記１つ以上のアセットのうちの前記アセットが移動されているところであることを示していない、前記カメラからの前記受信画像について、
所定の閾値よりも古いタイムスタンプを有する前記カメラに関連付けられた追跡ステータスデータベース内のレコードについて、
前記受信画像から前記１つ以上のアセットの正常状態を示す正常状態画像を生成し、かつ
前記追跡ステータスデータベースから前記レコードを削除する、請求項１に記載の方法。
【請求項６】
前記最終位置に移動されている前記アセットを、前記カメラを使用して監視することが、前記受信画像と、前記１つ以上のアセットの正常状態を示す正常状態画像との比較に基づいて、移動されている前記アセットの元の位置における境界ボックスと、移動されている前記アセットの現在の位置における別の境界ボックスとを決定することを含む、請求項１に記載の方法。
【請求項７】
最終位置に移動されている前記アセットを、前記カメラを使用して監視することが、
前記元の位置における前記境界ボックスを有する前記カメラに関連付けられたレコードを有する追跡ステータスデータベースについて、現在のタイムスタンプ及び前記現在の位置における前記別の境界ボックスで前記レコードを更新することと、
前記元の位置における前記境界ボックスを有する前記カメラに関連付けられた前記レコードを有しない前記追跡ステータスデータベースについて、
前記カメラ、前記移動されているアセット、前記移動されているアセットの前記元の位置における前記境界ボックス、及び前記移動されているアセットの前記現在の位置における前記別の境界ボックスに関連付けられた情報を含む前記追跡ステータスデータベースの前記レコードを生成することと、
前記１つ以上のアセットから前記移動されているアセットを削除するために、前記アセットマネージャーへのメッセージを生成することと
を含む、請求項６に記載の方法。
【請求項８】
複数のプログラマブルロジックコントローラ（ＰＬＣ）及び１つ以上のアセットに接続された第１のネットワークと、前記１つ以上のアセットを監視するカメラを管理するサーバに接続された第２のネットワークと、前記１つ以上のアセットを管理するアセットマネージャーとを備えるシステムのための命令を記憶する非一時的コンピュータ可読媒体であって、前記命令は、
前記１つ以上のアセットのうちの、あるアセットが移動されているところであることを示す、前記カメラからの受信画像について、
最終位置に移動されている前記アセットを、前記カメラを使用して監視することと、
前記複数のＰＬＣのうち前記最終位置に関連付けられたＰＬＣを決定することと、
前記最終位置に移動されている前記アセットの変更と、前記最終位置に基づいて移動されている前記アセットに関連付けられたと決定された前記ＰＬＣとを示す情報を、前記アセットマネージャーに送信することと、
前記移動されているアセットに関する前記情報によって示される前記変更に従って前記第１のネットワークを再構成することと、
前記再構成された第１のネットワークからのデータを処理することと
を含む、非一時的コンピュータ可読媒体。
【請求項９】
前記命令は、
前記カメラからの前記受信画像が、前記１つ以上のアセットのうちの前記アセットが移動されているところであることを示すか否かを判定することをさらに含み、
前記判定は、
前記受信画像と、前記１つ以上のアセットの正常状態を示す正常状態画像とを比較することと、
移動オブジェクトが、前記１つ以上のアセットのうちの移動されている前記アセットであることを示す前記比較において、前記受信画像がが、前記１つ以上のアセットのうちの前記アセットが移動されているところであることを示すと決定することと
をさらに含む、請求項８に記載のコンピュータ可読媒体。
【請求項１０】
前記複数のＰＬＣのうちの、前記最終位置に関連付けられた前記ＰＬＣを決定することが、前記複数のＰＬＣのうちの、前記最終位置に関連付けられた領域を管理している前記ＰＬＣを決定することを含む、請求項８に記載のコンピュータ可読媒体。
【請求項１１】
前記複数のＰＬＣのうちの、前記最終位置に関連付けられた前記領域を管理している前記ＰＬＣを決定することが、
前記受信画像における前記最終位置を全地球測位衛星（ＧＰＳ）座標に変換することと、
前記ＧＰＳ座標に関連付けられた製造現場の複数の領域から前記領域を決定することと、
前記領域内の前記１つ以上のアセットを管理するように構成された、前記複数のＰＬＣのうちの前記ＰＬＣを決定することと
を含む、請求項１０に記載の非一時的コンピュータ可読媒体。
【請求項１２】
前記１つ以上のアセットのうちの前記アセットが移動されているところであることを示していない、前記カメラからの前記受信画像について、
所定の閾値よりも古いタイムスタンプを有する前記カメラに関連付けられた追跡ステータスデータベース内のレコードについて、
前記受信画像から前記１つ以上のアセットの正常状態を示す正常状態画像を生成し、かつ
前記追跡ステータスデータベースから前記レコードを削除する、
請求項８に記載の非一時的コンピュータ可読媒体。
【請求項１３】
前記最終位置に移動されている前記アセットを、前記カメラを使用して監視することが、前記受信画像と、前記１つ以上のアセットの正常状態を示す正常状態画像との比較に基づいて、移動されている前記アセットの元の位置における境界ボックスと、移動されている前記アセットの現在の位置における別の境界ボックスとを決定することを含む、請求項８に記載の非一時的コンピュータ可読媒体。
【請求項１４】
最終位置に移動されている前記アセットを、前記カメラを使用して監視することが、
前記元の位置における前記境界ボックスを有する前記カメラに関連付けられたレコードを有する追跡ステータスデータベースについて、現在のタイムスタンプ及び前記現在の位置における前記別の境界ボックスで前記レコードを更新することと、
前記元の位置における前記境界ボックスを有する前記カメラに関連付けられた前記レコードを有しない前記追跡ステータスデータベースについて、
前記カメラ、前記移動されているアセット、前記移動されているアセットの前記元の位置における前記境界ボックス、及び前記移動されているアセットの前記現在の位置における前記別の境界ボックスに関連付けられた情報を含む前記追跡ステータスデータベースの前記レコードを生成することと、
前記１つ以上のアセットから前記移動されているアセットを削除するために、前記アセットマネージャーへのメッセージを生成することと
を含む、請求項１３に記載の非一時的コンピュータ可読媒体。
【請求項１５】
複数のプログラマブルロジックコントローラ（ＰＬＣ）及び１つ以上のアセットを含む第１のネットワークと、
前記１つ以上のアセットを監視するカメラを管理するサーバと、前記１つ以上のアセットを管理するアセットマネージャーとを含む第２のネットワークと
を備えるシステムであって、
前記サーバは、
前記１つ以上のアセットのうちの、あるアセットが移動されているところであることを示す、前記カメラからの受信画像について、
最終位置に移動されている前記アセットを、前記カメラを使用して監視し、
前記複数のＰＬＣのうち前記最終位置に関連付けられたＰＬＣを決定し、
前記最終位置に移動されている前記アセットの変更と、前記最終位置に基づいて移動されている前記アセットに関連付けられたと決定された前記ＰＬＣとを示す情報を、前記アセットマネージャーに送信し、
前記移動されているアセットに関する前記情報で示される前記変更に従って前記第１のネットワークを再構成し、かつ
前記再構成された第１のネットワークからのデータを処理する
ように構成されたプロセッサを含む、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ＩｏＴ（Internet of Things）システムに関し、より具体的には、ＩｏＴソリューションを展開する工場のフロアの製作機械の再配置を検出することに関する。
【背景技術】
【０００２】
ＩｏＴソリューションを製造現場に適用する際に、情報技術（ＩＴ）サーバは、プログラマブルロジックコントローラ（ＰＬＣ）を介して現場の製作機械の挙動を表すデータを収集する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
但し、改善イベントが発生すると、ＩＴサーバは、同じＰＬＣを介して異なる製作機械のデータを取得する。改善イベントの間、製作機械の位置や配備順序を変更できるため、ＰＬＣと製作機械の接続の変更ももたらされる。本明細書では、このようなイベントを「再配置」と呼ぶ。さらに、製造現場を管理するＩｏＴシステムとＩＴサーバは、互いに孤立した孤立ネットワーク上に配置されており、ＩＴサーバの管理者は再配置データを取得することができない。よって、ＩＴサーバ側から再配置が起こった場合に、これを検出する必要がある。
【０００４】
関連技術の実施形態では、ネットワークトポロジーの発見及びマッピングのためのシステム及び方法があり、これには、ネットワークトポロジーの発見、ネットワークデバイスの分類、サイレントデバイスの特定、フィンガープリント、及びＰＬＣを含むネットワークマップのマッピングが含まれる。
【課題を解決するための手段】
【０００５】
本開示の態様は、複数のプログラマブルロジックコントローラ（ＰＬＣ）及び１つ以上のアセットに接続された第１のネットワークと、前記１つ以上のアセットを監視するカメラを管理するサーバに接続された第２のネットワークと、前記１つ以上のアセットを管理するアセットマネージャーとを備えるシステムの方法であって、前記１つ以上のアセットのうちの、あるアセットが移動されているところであることを示す、前記カメラからの受信画像について、最終位置に移動されている前記アセットを、前記カメラを使用して監視することと、前記複数のＰＬＣのうち前記最終位置に関連付けられたＰＬＣを決定することと、前記最終位置に移動されている前記アセットの変更と、前記最終位置に基づいて移動されている前記アセットに関連付けられたと決定された前記ＰＬＣとを示す情報を、前記アセットマネージャーに送信することと、前記移動されているアセットに関する前記情報によって示される前記変更に従って前記第１のネットワークを再構成することと、前記再構成された第１のネットワークからのデータを処理することとを含む、方法を含むことができる。
【０００６】
本開示の態様は、複数のプログラマブルロジックコントローラ（ＰＬＣ）及び１つ以上のアセットに接続された第１のネットワークと、前記１つ以上のアセットを監視するカメラを管理するサーバに接続された第２のネットワークと、前記１つ以上のアセットを管理するアセットマネージャーとを備えるシステムのための命令を記憶するコンピュータプログラムであって、前記命令は、前記１つ以上のアセットのうちの、あるアセットが移動されているところであることを示す、前記カメラからの受信画像について、最終位置に移動されている前記アセットを、前記カメラを使用して監視することと、前記複数のＰＬＣのうち前記最終位置に関連付けられたＰＬＣを決定することと、前記最終位置に移動されている前記アセットの変更と、前記最終位置に基づいて移動されている前記アセットに関連付けられたと決定された前記ＰＬＣとを示す情報を、前記アセットマネージャーに送信することと、前記移動されているアセットに関する前記情報によって示される前記変更に従って前記第１のネットワークを再構成することと、前記再構成された第１のネットワークからのデータを処理することとを含む、コンピュータプログラムをさらに含む。このコンピュータプログラムは、１つ以上のプロセッサによって実行されるように構成された命令を記憶する非一時的コンピュータ可読媒体に記憶されてよい。
【０００７】
本開示の態様は、複数のプログラマブルロジックコントローラ（ＰＬＣ）及び１つ以上のアセットを有する第１のネットワークと、１つ以上のアセットを監視するカメラを管理するサーバと、前記１つ以上のアセットを管理するアセットマネージャーとを有する第２のネットワークとを備え得るシステムをさらに含む。前記サーバは、前記１つ以上のアセットのうちの、あるアセットが移動されているところであることを示す、前記カメラからの受信画像について、最終位置に移動されている前記アセットを、前記カメラを使用して監視し、前記複数のＰＬＣのうち前記最終位置に関連付けられたＰＬＣを決定し、前記最終位置に移動されている前記アセットの変更と、前記最終位置に基づいて移動されている前記アセットに関連付けられたと決定された前記ＰＬＣとを示す情報を、前記アセットマネージャーに送信し、前記移動されているアセットに関する前記情報で示される前記変更に従って前記第１のネットワークを再構成し、かつ前記再構成された第１のネットワークからのデータを処理するように構成されたプロセッサを含み得る。
【図面の簡単な説明】
【０００８】
【図１】図１は、一実施例に従った例示的な再配置検出システムのシステム図を示す。
【図２】図２は、一実施例に従った再配置検出サーバにおけるデータフローを示す。
【図３】図３は、一実施例に従った正常状態ＤＢテーブルの一例を示す。
【図４】図４は、一実施例に従ったカメラ位置ＤＢテーブルの一例を示す。
【図５】図５は、一実施例に従った物理マップテーブルの一例を示す。
【図６】図６は、一実施例に従った論理マップテーブルの一例を示す。
【図７】図７は、一実施例に従った追跡ステータステーブルの一例を示す。
【図８】図８は、一実施例に従った再配置検出モジュールの一例のフローチャートを示す。
【図９】図９は、一実施例に従った、再配置検出サーバからリトリーバー構成機への再配置通知メッセージであるメッセージの一例を示す。
【図１０】図１０は、一実施例に従ったアセットリポジトリのデータスキームの一例を示す。
【図１１】図１１は、一実施例での使用に適した例示的なコンピュータ装置を有する例示的なコンピューティング環境を示す。
【発明を実施するための形態】
【０００９】
以下の詳細な説明は、本出願の図面及び実施例のさらなる詳細を提供する。複数の図の間の重複する要素の符号及び説明は、明確にするために省略される。説明全体を通して使用される用語は、例として提供されるものであり、限定することを意図しない。例えば、「自動」という用語の使用は、本出願の実施例を実践する当業者の望ましい実施に応じて、実施の特定の態様に対するユーザ又は管理者の制御を含む完全自動又は半自動の実施を含み得る。選択は、ユーザインタフェース又は他の入力手段を介してユーザによって行うことができ、又は望ましいアルゴリズムを介して実施することができる。本明細書に記載される実施例は、単独で又は組み合わせて利用することができ、実施例の機能は、望ましい実施形態に従ったあらゆる手段を用いて実施することができる。
【００１０】
実施例は、以下のような再配列検出の方法及びシステムを含む。
【００１１】
図１は、一実施例に従った例示的な再配置検出システムのシステム図を示す。この例示的なシステムは、少なくとも１つの製造現場システム１００と、１つのＩＴサーバ１２０と、１つのリトリーバー構成機１３０と、１つの再配置検出サーバ１４０と、少なくとも１つのカメラ１５０とを含む。
【００１２】
製造現場システム１００は、データレベルネットワーク１０１と、制御レベルネットワーク１０２と、フィールドレベルネットワーク１０３とを含む。データレベルネットワーク１０１は、ＭＥＳ１１０（製造実行システム）と、少なくとも１つの上位ＰＬＣ１１２とを含む。制御レベルネットワーク１０２は、少なくとも１つの上位ＰＬＣ１１２、１つ以上のＳＣＡＤＡ（監視制御及びデータ取得）１１３、及びＰＬＣ１１６−１、１１６−２を含む。フィールドレベルネットワーク１０３は、ＰＬＣ１１６−１、１１６−２、及び製作機械１１７−１、１１７−２を含む。
【００１３】
ＩＴサーバ１２０は、１つ以上のメトリクスリトリーバー１２１と、データレイク１２２と、１つ以上のソリューションアプリケーション１２３とを含む。ＩＴサーバ１２０は、データレベルネットワーク１０１及び制御レベルネットワーク１０２に接続される。メトリクスリトリーバー１２１は、ＭＥＳ１１０、上位ＰＬＣ１１２、ＳＣＡＤＡ１１３、及びＰＬＣ１１６−１、１１６−２からデータを取得し、取得したデータ上にメタデータに注釈を付け、注釈を付けたデータをデータレイク１２２に記憶する。例えば、取得したデータが「１３０,１２０」であり、ＰＬＣ−Ａとして指定されたＰＬＣから取得されたものである場合、メトリクスリトリーバー１２１は、「ＰＬＣ-Ａ、オイル温度、１３０、冷媒温度、１２０」等の注釈付きデータを生成する。ソリューションアプリケーション１２３は、データレイク１２２から注釈付きデータを読み取り、分析を行い、それを製造マネージャー１２４に提供する。
【００１４】
リトリーバー構成機１３０は、アセットマネージャー１３１と、アセットリポジトリ１３２とを含む。アセットマネージャー１３１は、アセットリポジトリ１３２に基づいてメトリクスリトリーバー１２１の構成を提供する。この構成は、取得したデータにメタデータの注釈を付ける方法を示す。
【００１５】
再配置検出サーバ１４０は、再配置検出モジュール１４１と、画像から位置へのモジュール１４２と、位置から位置識別子（ＩＤ）へのモジュール１４３と、位置ＩＤからＰＬＣ名へのモジュール１４４と、正常状態データベース（ＤＢ）１４５と、カメラ位置ＤＢ１４６と、物理マップ１４７と、論理マップ１４８と、追跡ステータス記憶部１４９とを含む。再配置検出サーバ１４０は、定期的にカメラ１５０から画像を取得し、望ましい実施形態に従って必要に応じてリトリーバー構成機１３０に信号を送信する。
【００１６】
図１に示すシステムでは、製造現場システム１００とＩＴサーバ１２０とを含む第１のネットワークが存在する。第１のネットワークは、上位ＰＬＣ１１２及びＰＬＣ１１６−１及び１１６−２などのＰＬＣを含む。ＩＴサーバ１２０は、第１のネットワークを介してデータを管理し、そのデータを処理のためにデータレイク１２２に記憶し、その処理結果をリトリーバー構成機１３０に提供する。
【００１７】
また、リトリーバー構成機１３０及び再配置検出サーバ１４０を含む第２のネットワークも存在する。フィールドオペレータ１３３は、ＩＴサーバ１２０の結果に基づいて、リトリーバー構成機１３０を管理する。しかし、このようなシステムでは、製造現場システムは、セキュリティ上の理由で外部から隔離されており、ＩＴサーバ１２０などの管理サーバ以外からはアクセスできないので、第１のネットワークは第２のネットワークから隔離される。したがって、製作機械１１７-１、１１７-２が異なる場所に移動され、異なるＰＬＣによって管理される場合、遠隔のフィールドオペレータ１３３は、フィールドレベルネットワーク１０３にいつ変更が加えられるかを決定することができない。
【００１８】
この問題に対処するために、カメラ１５０を使用して製造現場システム１００内のアセットを監視し、このような製作機械が移動すると、カメラからの画像が再配置検出サーバ１４０によって処理され、再配置検出サーバ１４０が、アセットの変更を決定し、かつアセットリポジトリ１３２を更新するために、この情報をリトリーバー構成機１３０に提供する。このようにして、フィールドオペレータ１３３は、データレベルネットワーク１０１に直接アクセスできないにもかかわらず、アセットリポジトリ１３２の階層及びＰＬＣ管理に加えられた変更の通知を受けることができる。
【００１９】
図２は、一実施例に従った再配置検出サーバ１４０におけるデータフローを示す。一実施例では、２０１において、再配置検出サーバ１４０は、カメラ１５０から画像を取得する。次に、再配置検出モジュール１４１は、正常状態ＤＢ１４５及び追跡ステータス記憶部１４９を用いて、カメラ画像２０１をメッセージ２０２に変換する。このプロセスは、アセットが移動しているか否かを判定するために使用され、移動している場合は、次に、移動アセットのオブジェクトＩＤが作成され、画像内の移動アセットの周囲に境界ボックスが生成される。
【００２０】
次に、画像から位置へのモジュール１４２は、カメラ位置ＤＢ１４６を用いてメッセージ２０２を別のメッセージ２０３に変換し、これにより、画像内の座標を全地球測位衛星（ＧＰＳ）座標に変換して、移動されているアセットの実際の物理的位置を指定することができる。結果としてのメッセージ２０３は、ＧＰＳ座標での移動アセットの位置を示す。
【００２１】
次に、位置から位置ＩＤへのモジュール１４３を使用して、ＧＰＳ座標を製造現場システム１００の特定の製造領域と比較する。実施例では、このようなシステムは、様々な製造領域に分割され、それぞれが１つ以上のＰＬＣによって管理される。物理マップ１４７は、その領域を含むＧＰＳ座標の範囲に関してその領域を定義する。移動アセットのＧＰＳ座標は、物理マップ１４７と比較される。その結果得られるメッセージ２０４は、その領域に関する移動アセットの位置ＩＤを示す。
【００２２】
次に、位置ＩＤからＰＬＣ名へのモジュール１４４は、関連領域を管理するＰＬＣを決定するために論理マップ１４８を参照する。結果としてのメッセージ２０５は、移動アセットに関連付けられたＰＬＣを含む。
【００２３】
図２のフロー図は、移動されているアセットがその最終位置に到達するまで繰り返され、その結果得られるメッセージ２０５は、アセットマネージャー１３１に対して、移動されているアセットに最終的に接続されるＰＬＣを示す。この方法で、データレベルネットワーク１０１又は制御レベルネットワーク１０２に直接アクセスできないにもかかわらず、移動アセットをその最終位置まで継続的に追跡することができ、その結果得られる構成をリトリーバー構成機１３０に提供して、製造現場システム１００の現在の構成でアセットリポジトリ１３２を更新することができる。
【００２４】
図３は、一実施例に従った正常状態ＤＢ１４５テーブルの一例を示す図である。カメラＩＤ３０１列は、テーブルの主キーであり、関連付けられたカメラのＩＤを示す。画像３０２は、製造現場が通常の状態で作動しているときに、対応するカメラで撮影された画像例のバイナリデータを含む。
【００２５】
図４は、実施例に従ったカメラ位置ＤＢ１４６テーブルの一例を示す。カメラＩＤ４０１列は、テーブルの主キーであり、関連付けられたカメラのＩＤを示す。左上４０２、右上４０３、左下４０４、及び右下４０５の列は、対応するカメラによってどの位置が撮影されているかについての状況を提供するために、全地球測位衛星（ＧＰＳ）座標でのビデオ領域の角の位置を示す。
【００２６】
図５は、一実施例に従った物理マップ１４７テーブルの一例を示す。位置ＩＤ５０１列は、テーブルの主キーであり、製造現場の領域を示す。左上５０２列、右上５０３列、左下５０４列、右下５０５列は、ＧＰＳ座標での位置ＩＤ５０１によって指定された製造現場の領域の角の位置を示す。
【００２７】
図６は、実施例に従った論理マップ１４８テーブルの一例を示す。位置ＩＤ６０１列は、テーブルの主キーであり、製造現場の領域を示す。ＰＬＣ名６０２は、位置ＩＤに対応する製造現場の領域内の製作機械を管理しているＰＬＣを示す。
【００２８】
図７は、一実施例に従った追跡ステータス１４９テーブルの一例を示す。カメラＩＤ７０１列及び元の位置７０３列は、テーブルの組み合わせ主キーである。オブジェクトＩＤ７０２は、カメラＩＤ７０１で示されるカメラによって追跡されているオブジェクトを示す。元の位置７０３は、オブジェクトＩＤに対応するオブジェクトの元の位置を示す、カメラ画像（例えば、左上及び右下の画素位置を表す２つの頂点に関して）内の境界ボックス領域を示す。現在の位置７０４は、オブジェクトＩＤ７０２に対応するオブジェクトの現在の位置を示す、カメラ画像（例えば、左上及び右下の画素位置を表す２つの頂点に関して）内の境界ボックス領域を示す。タイムスタンプ７０５は、追跡ステータスエントリが記録された時刻を示す。図７で提供されている例は、境界ボックスの左上及び右下を示す２つの頂点として座標を表すが、境界ボックスを表す他の方法を所望の実施形態に従って使用することができ、本開示は特に限定されない。例えば、境界ボックスは、４つの角、境界ボックスの右上と左下などで表現できる。
【００２９】
図８は、一実施例に従った再配置検出モジュール１４１の一例のフローチャートを示す。再配置検出モジュール１４１は、カメラメッセージ２０１からメッセージ２０２を生成する。フローは８０１で始まり、８０２で製造現場のカメラから画像が取得される。８０３では、移動オブジェクト検出アルゴリズムが画像に適用され、オブジェクトが移動可能か否かを決定する。移動オブジェクト検出アルゴリズムは、画像間又はフレーム間などの差分画像を撮影することを含むがこれに限定されず、望ましい実施形態に従った任意のアルゴリズムを含むことができる。
【００３０】
８０４では、移動オブジェクトが８０３の処理で検出されるか否かを判定する。検出された場合（Ｙ）、フローは８０５に進み、検出されなかった場合（Ｎ）、フローは８４１に進む。
【００３１】
８０５では、正常状態ＤＢから正常状態画像を取得し、どのオブジェクトが移動しているかを判別する（例えば、位置が変更されているアセットや、カメラビュー内に移動してきた新しいオブジェクト（人間など））。８０６では、８０５の処理に基づいて、オブジェクトがアセットであるか否かを判定する。そうであれば（Ｙ）、フローは８０７に進み、そうでなければ（Ｎ）、フローは８４１に進む。
【００３２】
８０７では、カメラから得られた画像と正常状態ＤＢからの正常状態画像とを比較することにより、アセットの元の位置について境界ボックスを取得する。８０５で実行された処理に基づき、移動オブジェクトに対応するアセットを判定し、正常状態画像の処理からアセットに対応する境界ボックスを取得する。８０８では、現在の画像と正常状態の画像とを比較することにより、アセットの現在の位置について境界ボックスが得られる。８０５及び８０３の処理に基づいて、画像内の移動オブジェクトを検出する処理から画像内のアセット位置を識別することができる。
【００３３】
８０９では、再配置検出部は、追跡ステータスＤＢを検索して、画像を提供したカメラに対応するカメラＩＤと、以前に作成したレコードと同じ境界ボックスを持つ元の位置の境界とを検索して、移動オブジェクトのエントリが以前に作成されたか否かを判定する。８１０では、このようなレコードが存在する場合（Ｙ）、フローは８１１に進み、存在しない場合（Ｎ）、フローは８５１に進む。
【００３４】
８１１では、追跡ステータスＤＢ内のレコードのタイムスタンプが現在のタイムスタンプで更新され、レコードの現在位置がアセットの現在位置の境界ボックスで更新される。次に、フローは８０２に戻り、カメラから次の画像を取得する。
【００３５】
レコードが何も見つからない場合は、追跡ステータスＤＢに新たなレコードが作成される。８５１では、図７に示す形式で新たなレコードが挿入され、カメラＩＤ、ユニバーサル・ユニークＩＤ（ＵＵＩＤ）などのランダムに生成されたオブジェクトＩＤ、元の位置の境界ボックス、現在の位置の境界ボックス、及び現在のタイムスタンプを追跡ステータスＤＢに含めることができる。実施例では、ステップ８５１で記憶された境界ボックスは左上及び右下の２つの頂点で示されるが、図７で説明されるように境界ボックスを表すその他の方法も受容可能である。
【００３６】
８５２では、移動アセットに関する新規レコードが作成されたので、そのレコードからアセット情報を削除する。よって、オブジェクトＩＤ及び元の位置の境界ボックスと共に、アセットの削除を示すメッセージが、画像から位置へのモジュールに送信される。次に、フローは８０２に戻り、カメラから次の画像を取得する。
【００３７】
８４１では、移動アセットが検出されなかった場合、再配置検出器は、レコードを更新するためのプロセスを開始する。最初に、再配置検出部は、受信画像に対応するカメラの追跡ステータスＤＢを検索する。８４２では、このようなレコードが見つかった場合（Ｙｅｓ）、フローは８４３に進み、見つからなかった場合（Ｎ）は、フローは８０２に戻り、処理のために次の画像を得る。８４３では、このようなレコードをどれくらいの期間保持すべきかを示す予め設定されたポリシーによって判定されるように、タイムスタンプが古過ぎるか否かについての判定が行われる。タイムスタンプが古過ぎない場合（Ｎ）は、フローは８０２に戻って次の画像を処理し、そうでない場合（Ｙ）は、フローは８４４に進む。８４４では、再配置検出器は、検出されたオブジェクトＩＤ及び現在の位置の境界ボックスと共に、アセットを追加するメッセージを、画像から位置へのモジュールに送信することによって、現在のアセットで画像から位置へのモジュールを更新する。８４５では、アセットが移動中であったことを示すレコードが追跡ステータスＤＢから削除される。
【００３８】
図９は、一実施例に従った、再配置検出サーバ１４０からリトリーバー構成機１３０への再配置通知メッセージであるメッセージ２０５の一例を示す。具体的には、再配置通知メッセージは、実行される操作９０１、関連付けられたＰＬＣ９０２、及びオブジェクトＩＤ９０３などのフィールドを含む。この例では、各行９１０、９１１、９１２、９１３はメッセージである。この例では、ＰＬＣ#１及びＰＬＣ#２に接続されたアセットが交互になっているが、本開示はこれに限定されず、望ましい実施形態に従って修正することができる。
【００３９】
図１０は、一実施例に従ったアセットリポジトリ１３２のデータスキームの一例を示す。アセットリポジトリ１３２は、ツリー構造などの階層構造でデータを構築管理する。アセットリポジトリ１３２に示されるように、階層は、生産モデル１００１、生産モデルを容易にする関連生産ライン１００２、及び生産ラインの機能性を容易にする上位ＰＬＣ１００３を含むことができる。上位ＰＬＣ１００３は、製作機械１００６、１００７、１００８、１００９自体に関連付けられるＰＬＣ１００４、１００５を管理することができる。アセットリポジトリは、製造現場システム１００上のアセットの現在の配置を決定するためにフィールドオペレータ１３３によって利用され、アセットが移動される際に実施例によって更新することができる。
【００４０】
図１１は、実施例での使用に適した例示的なコンピュータ装置を有する例示的なコンピューティング環境を示す。コンピューティング環境１１００のコンピュータ装置１１０５は、１つ以上の処理ユニット、コア、又はプロセッサ１１１０、メモリ１１１５（例えば、ＲＡＭ、ＲＯＭ等）、内部記憶装置１１２０（例えば、磁気、光学、固体記憶装置、及び/又は有機）、及び/又はＩ/Ｏインタフェース１１２５を含むことができ、それらのいずれも、情報を通信するために通信機構又はバス１１３０上に接続することができ、又はコンピュータ装置１１０５に埋め込むことができる。
【００４１】
コンピュータ装置１１０５は、入力/ユーザインタフェース１１３５及び出力装置/インタフェース１１４０に通信可能に接続することができる。入力/ユーザインタフェース１１３５及び出力装置/インタフェース１１４０の一方又は両方は、有線又は無線インタフェースであることが可能であり、取り外し可能であり得る。入力/ユーザインタフェース１１３５は、これらを使用して入力（例えば、ボタン、タッチスクリーンインタフェース、キーボード、ポインティング/カーソル制御、マイクロフォン、カメラ、点字、モーションセンサ、光学式リーダ等）を提供可能な、物理的又は仮想的な任意の装置、コンポーネント、センサ、又はインタフェースを含むことができる。出力装置/インタフェース１１４０は、ディスプレイ、テレビ、モニター、プリンター、スピーカー、点字等を含むことができる。いくつかの実施例では、入力/ユーザインタフェース１１３５及び出力装置/インタフェース１１４０は、コンピュータ装置１１０５に埋め込まれるか、又は物理的に接続され得る。他の実施例では、他のコンピュータ装置は、コンピュータ装置１１０５に対する入力/ユーザインタフェース１１３５及び出力装置／インタフェース１１４０の機能として機能するか、又はそれらの機能を提供してよい。タッチスクリーンディスプレイ、テレビディスプレイ、又は任意の他の形態のディスプレイに関する実施例では、ディスプレイは、ユーザインタフェースを提供するように構成される。
【００４２】
コンピュータ装置１１０５の例には、高度に移動可能な装置（例えば、スマートフォン、車両及びその他の機械内の装置、人や動物が携帯する装置等）、移動可能な装置（例えば、タブレット、ノートブック、ラップトップ、パーソナルコンピュータ、ポータブルテレビ、ラジオ等）、及び移動用に設計されていない装置（例えば、デスクトップコンピュータ、他のコンピュータ、情報キオスク、１つ以上のプロセッサが内蔵されかつ/又はそれに接続されたテレビ、ラジオ等）が含まれるが、これらに限定されない。
【００４３】
コンピュータ装置１１０５は、同じ又は異なる構成の１つ以上のコンピュータ装置を含む任意の数のネットワーク化されたコンポーネント、装置、及びシステムと通信するために、外部記憶装置１１４５及びネットワーク１１５０に通信可能に接続（例えば、Ｉ/Ｏインタフェース１１２５を介して）することができる。コンピュータ装置１１０５又は接続された任意のコンピュータ装置は、サーバ、クライアント、シンサーバ、汎用マシン、特殊目的マシン、又は別のラベルとして機能し、これらのサービスを提供し、又はこのように呼ぶことができる。
【００４４】
Ｉ/Ｏインタフェース１１２５は、コンピューティング環境１１００内の少なくともすべての接続された構成要素、装置、及びネットワークと情報をやり取りするための任意の通信又はＩ/Ｏプロトコル又は規格（例えば、イーサネット（登録商標）、８０２.１１ｘ、ユニバーサルシステムバス、ＷｉＭＡＸ、モデム、セルラーネットワークプロトコル等）を使用する有線及び/又は無線インタフェースを含むことができるが、これらに限定されない。ネットワーク１１５０は、任意のネットワーク又はネットワークの組み合わせ（例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、電話ネットワーク、セルラネットワーク、衛星ネットワーク等）であり得る。
【００４５】
コンピュータ装置１１０５は、一時的媒体及び非一時的媒体を含む、コンピュータ使用可能媒体又はコンピュータ可読媒体を使用し、かつ/又はこれらを使用して通信することができる。一時的媒体は、伝送媒体（例えば、金属ケーブル、光ファイバー）、信号、搬送波などを含む。非一時的媒体は、磁気媒体（ディスクやテープなど）、光学媒体（例えば、ＣＤ-ＲＯＭ、デジタルビデオディスク、ブルーレイディスク）、固体媒体（ＲＡＭ、ＲＯＭ、フラッシュメモリ、固体記憶装置など）、及びその他の不揮発性記憶装置又はメモリを含む。
【００４６】
コンピュータ装置１１０５は、いくつかの例示的なコンピューティング環境において、技術、方法、アプリケーション、プロセス、又はコンピュータ実行可能命令を実装するために使用され得る。コンピュータ実行可能命令は、一時的媒体から取り出すことができ、また、非一時的媒体に記憶したり、これらから取り出したりすることができる。実行可能命令は、任意のプログラミング言語、スクリプト言語、及びマシン言語（Ｃ、Ｃ++、Ｃ#、Ｊａｖａ（登録商標）、Ｖｉｓｕａｌ Ｂａｓｉｃ、Ｐｙｔｈｏｎ、Ｐｅｒｌ、ＪａｖａＳｃｒｉｐｔ（登録商標）など）のうちの１つ以上を基にすることができる。
【００４７】
プロセッサ１１１０は、ネイティブ環境又は仮想環境において、任意のオペレーティングシステム（ＯＳ）（図示されていない）で実行することができる。論理ユニット１１６０、アプリケーションプログラミングインタフェース（ＡＰＩ）ユニット１１６５、入力ユニット１１７０、出力ユニット１１７５、及び異なるユニットが互いに、ＯＳと、そして他のアプリケーション（図示されていない）と通信するためのユニット間通信機構１１９５を含む、１つ以上のアプリケーションを展開することができる。説明されたユニット及び要素は、設計、機能、構成、又は実施において変化させることができ、提供される説明に限定されない。プロセッサ１１１０は、メモリ１１１５からロードされた命令を実行するように構成された物理プロセッサ又は中央処理装置（ＣＰＵ）の形態であることができる。
【００４８】
いくつかの実施例において、情報又は実行命令がＡＰＩユニット１１６５によって受信されると、それは１つ以上の他のユニット（例えば、論理ユニット１１６０、入力ユニット１１７０、出力ユニット１１７５）に通信されてよい。いくつかの例では、論理ユニット１１６０は、上述のいくつかの実施例においては、ユニット間の情報フローを制御し、かつＡＰＩユニット１１６５、入力ユニット１１７０、出力ユニット１１７５によって提供されるサービスを指示するように構成されてもよい。例えば、１つ以上のプロセス又は実施形態のフローは、論理ユニット１１６０単独で、又はＡＰＩユニット１１６５と連動して制御されてよい。入力ユニット１１７０は、実施例に記載される計算のための入力を得るように構成してよく、出力ユニット１１７５は、実施例に記載される計算に基づいて出力を提供するように構成してよい。
【００４９】
図１の再配置検出サーバ１４０によって示されるようなカメラ監視アセットを管理するサーバを含む実施例において、プロセッサ１１１０は、１つ以上のアセットのうち、あるアセットが移動されているところであることを示す、カメラからの受信画像について、図８に示されるように、最終位置に移動されているアセットを、カメラを使用して監視し、複数のＰＬＣのうち、図２のフローの実行から最終位置に関連付けられたＰＬＣを決定し、最終位置に移動されているアセットの変化と、図８及び図９に示されるように最終位置に基づいて移動されているアセットに関連付けられたと判断されたＰＬＣとを示す情報を、アセットマネージャーに送信し、更新されるべき図１０のアセットリポジトリの修正により、移動されているアセットに関する情報によって示される変更に従って第１のネットワークを再構成し、図１のシステムに図１０のアセットリポジトリで概説される階層に従って動作を継続させることによって、再構成された第１のネットワークからのデータを処理するように構成することができる。
【００５０】
プロセッサ１１１０は、カメラからの受信画像が、１つ以上のアセットのうち、移動されているアセットを示しているか否かを、受信画像を１つ以上のアセットの正常状態を示す正常状態画像と比較することによって判定するように、かつ１つ以上のアセットのうちの移動されているアセットである移動オブジェクトを示す比較については、図８の８０４〜８０７のフローに示すように、受信画像が、１つ以上のアセットのうちの移動されているアセットを示すと決定するように構成することができる。
【００５１】
プロセッサ１１１０は、図５に示す物理マップに基づいて最終位置がどの領域に該当するかを決定するために、図２のフローの実行によって、複数のＰＬＣのうち、最終位置に関連付けられた領域を管理しているＰＬＣを決定し、かつ次に対応するＰＬＣを決定するために図６に示す論理マップを参照することによって、複数のＰＬＣのうち最終位置に関連付けられたＰＬＣを決定するように構成することができる。一実施例では、プロセッサは、図２及び図４の画像から位置へのプロセス１４２に示されるように、受信画像における最終位置を全地球測位衛星（ＧＰＳ）座標に変換し、図２及び図５の位置から位置ＩＤへプロセス１４３に示されるようにＧＰＳ座標に関連付けられた製造現場の複数の領域から領域を決定することによって、複数のＰＬＣのうち、最終位置に関連付けられた領域を管理しているＰＬＣを決定し、そして、図２及び図６の位置ＩＤからＰＬＣ名１４４へのプロセスに示されるように、複数のＰＬＣのうち、当該領域内の１つ以上のアセットを管理するように構成されたＰＬＣを決定する。
【００５２】
プロセッサ１１１０は、カメラからの受信画像が、１つ以上のアセットのうちの移動されているアセットを示さない場合に、所定の閾値よりも古いタイムスタンプを有するカメラに関連付けられた追跡ステータスＤＢ内のレコードについて、受信画像からの１つ以上のアセットの正常状態を示す正常状態画像を生成するように、そして、図８の８４１〜８４５のフローに示すように、追跡ステータスＤＢからレコードを削除するように構成することができる。
【００５３】
プロセッサ１１１０は、図８の８０７〜８０９のフローに示されるように、受信画像と、１つ以上のアセットの正常状態を示す正常状態画像との比較に基づいて、移動されているアセットの元の位置の境界ボックスと、移動されているアセットの現在の位置の別の境界ボックスとを決定することによって、カメラを使用して最終位置に移動されているアセットを監視するように構成することができる。
【００５４】
プロセッサ１１１０は、元の位置に境界ボックスを有するカメラに関連付けられたレコードを有する追跡ステータスＤＢについて、現在のタイムスタンプ及び現在の位置の別の境界ボックスでレコードを更新することによって、最終位置に移動されているアセットを、カメラを使用して監視するように、かつ、元の位置に境界ボックスを有するカメラに関連付けられたレコードを有しない追跡ステータスＤＢについては、カメラ、移動されているアセット、移動されているアセットの元の位置における境界ボックス、及び移動されているアセットの現在の位置における別の境界ボックスに関連付けられた情報を含む追跡ステータスＤＢのレコードを生成するように、そして、図８の８１１、８５１、８５２のフローに示すように、１つ以上のアセットから移動されているアセットを削除するためのメッセージをアセットマネージャーに生成する構成することができる。
【００５５】
詳細な説明の一部は、コンピュータ内の演算のアルゴリズム及び記号表現の観点で提示されている。これらのアルゴリズム記述及び記号表現は、データ処理技術の当業者がそれらのイノベーションの本質を他の当業者に伝えるために使用する手段である。アルゴリズムは、望ましい最終の状態又は結果に至る一連の定義されたステップである。実施例では、実行されるステップは、具体的な結果を達成するための具体的な量の物理的な操作を必要とする。
【００５６】
特段の記載がない限り、説明から明らかなように、「処理」、「コンピューティング」、「計算」、「判定／決定」、「表示」などの用語を使用する説明は、コンピュータシステムのレジスタ及びメモリ内の物理的（電子の）量として表されるデータを、コンピュータシステムのメモリ又はレジスタ又はその他の情報記憶装置、伝送装置又は表示装置内の物理量として同様に表される他のデータに操作及び変換する、コンピュータシステム又はその他の情報処理装置の動作及び処理を含むことができる。
【００５７】
実施例は、本明細書で動作を実行するための装置にも関連してもよい。この装置は、要求された目的のために特別に構成されてもよく、あるいは、１つ以上のコンピュータプログラムによって選択的に起動又は再構成される１つ以上の汎用コンピュータを含んでもよい。このようなコンピュータプログラムは、コンピュータ可読記憶媒体又はコンピュータ可読信号媒体などのコンピュータ可読媒体に記憶することができる。コンピュータ可読記憶媒体は、光ディスク、磁気ディスク、読取専用メモリ、ランダムアクセスメモリ、ＳＳＤ（solid state devices）及びドライブ、又は電子情報を記憶するのに適した任意のその他の種類の有形又は非一時的媒体などの有形媒体を含むことができるが、これらに限定されない。コンピュータ可読信号媒体は、搬送波などの媒体を含んでもよい。本明細書に提示されるアルゴリズム及びディスプレイは、いかなる特定のコンピュータ又は他の装置にも本質的に関連しない。コンピュータプログラムは、望ましい実施形態の動作を実行する命令を含む純粋なソフトウェア実装を含むことができる。
【００５８】
様々な汎用システムは、本明細書の実施例に従ってプログラム及びモジュールと共に使用されてもよく、又は望ましい方法ステップを実行するためにより特殊化された装置を構築することが便利であることが判明するかもしれない。さらに、実施例は、特定のプログラミング言語を参照して説明されていない。本明細書で説明されている実施例の教示を実施するために、様々なプログラミング言語を使用され得ることが理解されよう。プログラミング言語の命令は、１つ以上の処理装置、例えば中央処理装置（ＣＰＵ）、プロセッサ、又はコントローラによって実行されてよい。
【００５９】
当技術分野で周知のように、上述の動作は、ハードウェア、ソフトウェア、又はソフトウェアとハードウェアの何らかの組み合わせによって実行することができる。実施例の様々な態様は、回路及び論理装置（ハードウェア）を使用して実施してもよく、一方、他の態様は、機械可読媒体（ソフトウェア）に記憶された命令を使用して実施してもよく、そして当該命令がプロセッサによって実行される場合は、プロセッサに本出願の実施形態を行うための方法を実行させることになる。さらに、本出願のいくつかの実施例は、ハードウェアのみで実施してよいが、その他の実施例は、ソフトウェアのみで実施してよい。さらに、記述された種々の機能は、単一のユニット内で実行され得るか、又は任意の数の方法で多数の構成要素にわたって分散することができる。ソフトウェアによって実行される場合、これらの方法は、コンピュータ可読媒体に記憶された命令に基づいて、汎用コンピュータなどのプロセッサによって実行することができる。必要に応じて、命令は、圧縮及び/又は暗号化されたフォーマットで媒体に記憶することができる。
【００６０】
さらに、本出願のその他の実施形態は、本出願の明細書及び開示の方法を考慮することから当業者には明らかであろう。記載された実施例の様々な態様及び/又は構成要素は、単独で、又は任意の組み合わせで使用され得る。本明細書及び実施例は、以下の請求項によって示される本出願の真の範囲及び精神とともに、例示としてのみ考慮されることが意図される。
【図１】
2020166847.tif 000003
【図２】
2020166847.tif 000004
【図３】
2020166847.tif 000005
【図４】
2020166847.tif 000006
【図５】
2020166847.tif 000007
【図６】
2020166847.tif 000008
【図７】
2020166847.tif 000009
【図８】
2020166847.tif 000010
【図９】
2020166847.tif 000011
【図１０】
2020166847.tif 000012
【図１１】
2020166847.tif 000013