(57)【要約】  メモリを有して通信ノードに動作可能に結合されたサーバ（１０）を含む作業ツール通信ネットワーク（１１）のシステムを開示する。通信ノード（１４）は、プロセッサ及び記憶装置を含み、コントローラ（１６）に動作可能に結合される。コントローラ（１６）は、プロセッサ及びメモリを含み、作業ツール（１８）のパラメータを制御するように適合される。サーバ（１０）は、通信ノードに接続して登録するように適合される。コントローラ（１６）は、通信ノード（１４）に接続して登録するように適合され、通信ノード（１４）は、サーバ（１０）と、作業ツール（１８）を制御するコントローラ（１６）との間の通信セッションを確立するように適合される。【選択図】図１
2017520872.tif 000002
【特許請求の範囲】
【請求項１】
作業ツール通信ネットワーク（１１）におけるシステムであって、
メモリを含み、通信ノード（１４）に動作可能に結合され、前記通信ノード（１４）に接続して登録するように適合されたサーバ（１０）と、
プロセッサと記憶装置とを含み、コントローラ（１６）に動作可能に結合された前記通信ノード（１４）と、
プロセッサとメモリとを含み、作業ツール（１８）のパラメータを制御するとともに、前記通信ノード（１４）に接続して登録するように適合された前記コントローラ（１６）と、を備え、
前記通信ノード（１４）は、前記サーバ（１０）とツールコントローラ（１６）との間の通信セッションを確立するように適合されている、ことを特徴とするシステム。
【請求項２】
前記通信ノードは、全ての接続エンティティをリスト化するようにさらに適合されている、請求項１に記載のシステム。
【請求項３】
前記通信ノードは、各セッションにセッション識別子を割り当てるようにさらに適合されている、請求項１又は２に記載のシステム。
【請求項４】
前記通信ノードは、データベースをさらに含み、全ての通信セッションを追跡して前記データベースに記憶するようにさらに適合されている、請求項１〜３のいずれかに記載のシステム。
【請求項５】
前記通信ノードは、該通信ノードに登録された各サーバ及び各コントローラに識別子を割り当てるようにさらに適合されている、請求項１〜４のいずれかに記載のシステム。
【請求項６】
各通信セッションに、宛先識別子と送信元識別子とが含まれる、請求項１〜５のいずれかに記載のシステム。
【請求項７】
前記通信ノードは、登録されたサーバ及びコントローラにタイプを割り当てるようにさらに適合されている、請求項１〜６のいずれかに記載のシステム。
【請求項８】
前記通信ノードは、登録済みの全てのサーバ及びコントローラの記録を保持するようにさらに適合され、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求するようさらに適合されている、請求項１〜７のいずれかに記載のシステム。
【請求項９】
前記通信ノードは、登録されたサーバ及びコントローラが、他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にするようにさらに適合されている、請求項１〜８のいずれかに記載のシステム。
【請求項１０】
前記通信ノードは、登録されたサーバ及びコントローラが通信セッションにおける通信に応答できるようにする応答機能を有するようにさらに適合されている、請求項１〜９のいずれかに記載のシステム。
【請求項１１】
前記サーバは、前記コントローラを介して前記作業ツールのパラメータを制御するようにさらに適合されている、請求項１〜１０のいずれかに記載のシステム。
【請求項１２】
サーバ（１０）と、通信ノード（１４）と、複数のツールコントローラ（１６）と、該ツールコントローラ（１６）に接続された複数の作業ツール（１８）とを含み、前記サーバ（１２）及び前記ツールコントローラ（１６）が前記通信ノード（１４）に接続された作業ツール通信ネットワーク（１１）における通信方法であって、
前記サーバ（１２）を前記通信ノード（１４）に登録するステップ（１１０）と、
前記ツールコントローラ（１６）を前記通信ノード（１４）に登録するステップ（１３０）と、
前記サーバ（１２）と前記コントローラ（１６）との間の通信セッションを確立するステップ（１４０）と、を含むことを特徴とする方法。
【請求項１３】
全ての接続エンティティをリスト化するステップをさらに含む、請求項１２に記載の方法。
【請求項１４】
各通信セッションにセッション識別子を割り当てるステップをさらに含む、請求項１２又は１３のいずれかに記載の方法。
【請求項１５】
全ての通信セッションを追跡し、該全ての通信セッションを前記通信ノードのデータベースに記憶するステップをさらに含む、請求項１２〜１４のいずれかに記載の方法。
【請求項１６】
前記通信ノードに登録された各サーバ及び各コントローラに識別子を割り当てるステップをさらに含む、請求項１２〜１５のいずれかに記載の方法。
【請求項１７】
各通信セッションに宛先識別子と送信元識別子とを含めるステップをさらに含む、請求項１２〜１６のいずれかに記載の方法。
【請求項１８】
登録された各サーバ及びコントローラにタイプを割り当てるステップをさらに含む、請求項１２〜１７のいずれかに記載の方法。
【請求項１９】
前記通信ノードは、登録済みの全てのサーバ及びコントローラの記録を保持するようにさらに適合され、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求するようさらに適合されている、請求項１２〜１８のいずれかに記載の方法。
【請求項２０】
前記通信ノードは、登録されたサーバ及びコントローラが、他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にするようにさらに適合されている、請求項１２〜１９のいずれかに記載の方法。
【請求項２１】
通信セッションにおける通信に応答する応答機能を有するステップをさらに含む、請求項１２〜２０のいずれかに記載の方法。
【請求項２２】
前記サーバが、前記コントローラを介して前記作業ツールのパラメータを制御するステップをさらに含む、請求項１２〜２１のいずれかに記載の方法。
【請求項２３】
サーバ（１０）と、複数のツールコントローラ（１６）と、該ツールコントローラ（１６）に接続された複数の作業ツール（１８）とを含む作業ツール通信ネットワーク（１１）において使用される通信ノード（１４）であって、該通信ノード（１４）は、
前記サーバ（１０）に接続し、
前記ツールコントローラ（１６）に接続し、
前記サーバ（１０）及び前記ツールコントローラ（１０）を前記通信ノードに登録し、
前記サーバ（１０）と前記ツールコントローラ（１６）との間の通信セッションを確立するように構成されている、ことを特徴とする通信ノード。
【請求項２４】
全ての接続エンティティをリスト化するようにさらに構成されている、請求項２３に記載の通信ノード。
【請求項２５】
各セッションにセッション識別子を割り当てるようにさらに構成されている、請求項２３又は２４に記載の通信ノード。
【請求項２６】
データベースをさらに含み、全ての通信セッションを追跡して前記データベースに記憶するようにさらに構成されている、請求項２３〜２５のいずれかに記載の通信ノード。
【請求項２７】
前記通信ノードに登録された各サーバ及び各コントローラに識別子を割り当てるようにさらに構成されている、請求項２３〜２６のいずれかに記載の通信ノード。
【請求項２８】
各通信セッションに、宛先識別子と送信元識別子とが含まれる、請求項２３〜２７のいずれかに記載の通信ノード。
【請求項２９】
登録された各サーバ及びコントローラにタイプを割り当てるようにさらに構成されている、請求項２３〜２８のいずれかに記載の通信ノード。
【請求項３０】
登録済みの全てのサーバ及びコントローラの記録を保持し、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求するようさらに構成されている、請求項２３〜２９のいずれかに記載の通信ノード。
【請求項３１】
登録されたサーバ及びコントローラが、他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にするようにさらに構成されている、請求項２３〜３０のいずれかに記載の通信ノード。
【請求項３２】
登録されたサーバ及びコントローラが通信セッションにおける通信に応答できるようにする応答機能を有するようにさらに構成されている、請求項２３〜３１のいずれかに記載の通信ノード。
【請求項３３】
前記サーバが通信セッションにおいて前記コントローラを介して前記作業ツールのパラメータを制御することを可能にするようにさらに適合されている、請求項２３〜３２のいずれかに記載の通信ノード。
【請求項３４】
作業通信ネットワーク（１１）の通信ノードが通信を管理するためのコンピュータ命令を記憶する、非一時的コンピュータ可読媒体を含むコンピュータプログラム製品であって、前記ネットワークは、
サーバ（１０）と、
記憶装置、及び、前記記憶装置に動作可能に結合されコンピュータ可読コンピュータ命令を実行するように構成された処理装置を含む通信ノード（１４）と、
ツールコントローラ（１６）と、
前記ツールコントローラ（１６）に接続された作業ツール（１８）と、を含み、
前記サーバ（１２）及び前記ツールコントローラ（１６）は、前記通信ノード（１４）に接続されており、
前記コンピュータ命令は、
前記サーバ（１０）を前記通信ノード（１４）に接続（１００）して登録（１１０）する命令と、
前記コントローラ（１６）を前記通信ノード（１４）に接続（１２０）して登録（１３０）する命令と、
前記サーバ（１０）と前記ツールコントローラ（１６）との間の通信セッションを確立（１４０）する命令と、を含む、ことを特徴とするコンピュータプログラム製品。
【請求項３５】
前記コンピュータ命令は、全ての接続エンティティをリスト化する命令をさらに含む、請求項３１に記載のコンピュータプログラム製品。
【請求項３６】
前記コンピュータ命令は、各セッションにセッション識別子を割り当てる命令をさらに含む、請求項３４又は３５に記載のコンピュータプログラム製品。
【請求項３７】
前記コンピュータ命令は、全ての通信セッションを追跡して前記通信ノードのデータベースに記憶する命令をさらに含む、請求項３４〜３６のいずれかに記載のコンピュータプログラム製品。
【請求項３８】
前記コンピュータ命令は、前記通信ノードに登録された各サーバ及び各コントローラに識別子を割り当てる命令をさらに含む、請求項３４〜３７のいずれかに記載のコンピュータプログラム製品。
【請求項３９】
前記コンピュータ命令は、各通信セッションに宛先識別子と送信元識別子とを含める命令をさらに含む、請求項３４〜３８のいずれかに記載のコンピュータプログラム製品。
【請求項４０】
前記コンピュータ命令は、登録された各サーバ及びコントローラにタイプを割り当てる命令をさらに含む、請求項３４〜３９のいずれかに記載のコンピュータプログラム製品。
【請求項４１】
前記コンピュータ命令は、登録済みの全てのサーバ及びコントローラの記録を保持して、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求する命令をさらに含む、請求項３４〜４０のいずれかに記載のコンピュータプログラム製品。
【請求項４２】
前記コンピュータ命令は、登録されたサーバ及びコントローラが他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にする命令をさらに含む、請求項３４〜４１のいずれかに記載のコンピュータプログラム製品。
【請求項４３】
前記コンピュータ命令は、通信セッションにおける通信に応答する応答機能のための命令をさらに含む、請求項３４〜４２のいずれかに記載のコンピュータプログラム製品。
【請求項４４】
前記コンピュータ命令は、前記サーバにより前記コントローラを介して前記作業ツールのパラメータを制御する命令をさらに含む、請求項３４〜４３のいずれかに記載のコンピュータプログラム製品。
【請求項４５】
サーバ（１０）と、通信ノード（１４）と、複数のツールコントローラ（１６）と、該ツールコントローラ（１６）に接続された複数の作業ツール（１８）とを含み、前記サーバ（１２）及び前記ツールコントローラ（１６）が前記通信ノード（１４）に接続されている作業ツール通信ネットワーク（１１）における通信方法であって、
前記通信ノード（１４）が、前記通信ノード（１４）に登録するための要求を前記サーバ（１０）から受け取るステップ（Ｓ１００）と、
前記サーバ（１０）を前記通信ノード（１４）に登録するステップ（Ｓ１１０）と、
前記通信ノード（１４）が、前記通信ノード（１４）に登録するための要求を前記ツールコントローラ（１６）から受け取るステップ（Ｓ１２０）と、
前記ツールコントローラ（１６）を前記通信ノード（１４）に登録するステップ（Ｓ１３０）と、
前記通信ノード（１４）が、前記サーバ（１０）と前記ツールコントローラ（１６）との間の通信セッションを確立するステップ（Ｓ１４０）と、
を含むことを特徴とする方法。
【請求項４６】
前記通信ノードが、全ての接続エンティティをリスト化するステップをさらに含む、請求項４５に記載の方法。
【請求項４７】
前記通信ノードが、各通信セッションにセッション識別子を割り当てるステップをさらに含む、請求項４５又は４６に記載の方法。
【請求項４８】
前記通信ノードが、全ての通信セッションを追跡して前記通信ノードのデータベースに記憶するステップをさらに含む、請求項４５〜４７のいずれかに記載の方法。
【請求項４９】
前記通信ノードが、該通信ノードに登録された各サーバ及び各コントローラに識別子を割り当てるステップをさらに含む、請求項４５〜４８のいずれかに記載の方法。
【請求項５０】
前記通信ノードが、各通信セッションに宛先識別子と送信元識別子とを含めるステップをさらに含む、請求項４５〜４９のいずれかに記載の方法。
【請求項５１】
前記通信ノードが、登録された各サーバ及びコントローラにタイプを割り当てるステップをさらに含む、請求項４５〜５０のいずれかに記載の方法。
【請求項５２】
前記通信ノードは、登録済みの全てのサーバ及びコントローラの記録を保持するようにさらに適合され、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求するようさらに適合されている、請求項４５〜５１のいずれかに記載の方法。
【請求項５３】
前記通信ノードは、登録されたサーバ及びコントローラが、他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にするようにさらに適合されている、請求項４５〜５２のいずれかに記載の方法。
【請求項５４】
通信セッションにおける通信に応答するための応答機能を有するステップをさらに含む、請求項４５〜５３のいずれかに記載の方法。
【請求項５５】
前記通信ノードを介した前記サーバが、前記コントローラを介して前記作業ツールのパラメータを制御するステップをさらに含む、請求項４５〜５４のいずれかに記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本解決策は、作業ツールシステムにおける作業ツールを制御するシステム及び方法に関する。
【背景技術】
【０００２】
生産作業では、オペレータが操作するパワーレンチなどの携帯用作業ツールを含む作業ツール、及び作業ツールを含むシステムがしばしば使用される。一般的な用途は、組立ラインである。組立ラインの作業ツールにはコントローラを接続することができ、これらのコントローラは、ツールによって行われる作業をツールが自動的に行うように制御するよう適合される。コントローラは、例えば正しいトルクでレンチ動作が行われているかなど、ツールが正しく動作するように監視する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
以前は、多くのツールコントローラが存在する環境においてツールコントローラに関するデータの収集又は更新が必要である場合、オペレータは、１回に１つのコントローラに接続する必要があり、これには非常に長い時間が掛かっていた。
【０００４】
従って、現在の作業ツールシステムの問題点の少なくとも一部を改善することが望ましい。
【０００５】
本解決策の目的は、上記で概説した問題点及び課題点の少なくとも一部に対処することである。これらの及びその他の目的は、添付の独立請求項に定めるような方法、ツールサーバ及びツールコントローラを用いて達成することができる。
【課題を解決するための手段】
【０００６】
ある態様によれば、作業ツール通信ネットワークのためのシステムが提供される。このシステムは、メモリを有して通信ノードに動作可能に結合されたサーバを含み、通信ノードは、プロセッサ及び記憶装置を含み、コントローラに動作可能に結合される。コントローラは、プロセッサとメモリを含み、作業ツールのパラメータを制御するように適合される。サーバは、通信ノードに接続して登録するように適合され、コントローラは、通信ノードに接続して登録するように適合され、通信ノードは、サーバとコントローラとの間の通信セッションを確立するように適合される。
【０００７】
第２の態様によれば、サーバと、通信ノードと、複数のツールコントローラと、ツールコントローラに接続された複数の作業ツールとを含み、サーバ及びツールコントローラが通信ノードに接続された作業ツール通信ネットワークにおける通信方法が提供される。この方法は、サーバを通信ノードに登録するステップと、ツールコントローラを通信ノードに登録するステップと、サーバとツールコントローラとの間の通信セッションを確立するステップとを含む。
【０００８】
第３の態様によれば、サーバと、複数のツールコントローラと、ツールコントローラに接続された複数の作業ツールとを含む作業ツール通信ネットワークにおいて使用される通信ノードが提供される。この通信ノードは、サーバに接続し、ツールコントローラに接続し、サーバ及びツールコントローラを通信ノードに登録し、サーバとツールコントローラとの間の通信セッションを確立するように構成される。
【０００９】
第４の態様によれば、サーバと、記憶装置を含む通信ノードと、記憶装置に動作可能に結合され、コンピュータ可読コンピュータ命令を実行するように構成された処理装置とを含む作業通信ネットワークの通信ノードにおける通信を管理するためのコンピュータ命令を記憶する非一時的コンピュータ可読媒体を含むコンピュータプログラム製品が提供される。ネットワークは、複数のツールコントローラと、ツールコントローラに接続された複数の作業ツールとをさらに含み、サーバ及びツールコントローラは、通信ノードに接続される。コンピュータ命令は、サーバを通信ノードに接続して登録し、コントローラを通信ノードに接続して登録し、サーバとツールコントローラとの間の通信セッションを確立する命令を含む。
【００１０】
第５の態様によれば、サーバと、通信ノードと、複数のツールコントローラと、ツールコントローラに接続された複数の作業ツールとを含み、サーバ及びツールコントローラが通信ノードに接続された作業ツール通信ネットワークにおける通信方法が提供される。この方法は、通信ノードが、通信ノードに登録するための要求をサーバから受け取るステップと、サーバを通信ノードに登録するステップと、通信ノードが、通信ノードに登録するための要求をツールコントローラから受け取るステップと、ツールコントローラを通信ノードに登録するステップと、通信ノードが、サーバとツールコントローラとの間の通信セッションを確立するステップとを含む。
【００１１】
本明細書で説明するような解決策を実装することにより、ツール環境における通信が改善される。通信ノードは、例えばインターネットプロトコルアドレスなどの位置、及び／又は他のエンティティの特性に対処することができるので、複数のエンティティがこれらの位置及び／又は特性を知る必要性を排除することによってエンティティ間の通信を容易にすることができる。この解決策は、サーバ及びコントローラ毎に異なる通信を有する代わりに通信ノードを介して全ての通信を導くことにより、複数のサーバ及びコントローラを含むネットワークにおける通信を改善することもできる。さらに、互換性がないはずのエンティティ間の通信を通信ノードが可能にすることができるので、サーバ及びコントローラなどの新たな装置によるツールネットワークの更新を容易にすることもできる。また、通信ノードが、異なるバージョンのエンティティ同士の通信を可能にするので、サーバ及びコントローラのバージョンを更新及び／又は変更する際にも有利である。
【００１２】
上記の方法及び装置は、任意の異なる実施形態に従って構成し、実装することができる。以下の詳細な説明から、この解決策のさらなる有力な特徴及び利点が明らかになるであろう。
【００１３】
以下、添付図面を参照しながら本解決策を一例としてさらに詳細に説明する。
【図面の簡単な説明】
【００１４】
【図１】実施形態による作業ツール通信システムのブロック図である。
【図２】第１の実施形態による、通信ノードを介したツールサーバと複数のツールコントローラとの間の通信を容易にする、作業ツール通信システムにおいて実行される方法のフローチャートである。
【図３】第２の実施形態による、通信ノードを介したツールサーバと複数のツールコントローラとの間の通信を容易にする、作業ツール通信システムにおいて実行される方法のフローチャートである。
【図４】第３の実施形態による、通信ノードを介したツールサーバと複数のツールコントローラとの間の通信を容易にする、作業ツール通信システムにおいて実行される方法のフローチャートである。
【図５】第４の実施形態による、通信ノードによって実行される方法のフローチャートである。
【図６】いくつかの実施形態による、サーバ及びコントローラをさらに詳細に示すブロック図である。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照しながら本解決策の異なる実施形態の詳細な説明を開示する。本明細書における全ての例は、概要の一部として見なすべきであり、従って一般論としてあらゆる方法で組み合わせることができる。様々な実施形態及び方法の個々の特徴は、本実装の全体的機能と明らかに矛盾しない限り、組み合わせたり又は交換したりすることができる。
【００１６】
作業ツールのコントローラの遠隔的な構成、制御及びデータ収集を可能にするシステムを提供する。普段コントローラによって制御される複数の作業ツールを使用する環境では、これらの作業ツールを、異なる動作を行うように構成することができる。さらに、特定の作業ツールは、製造材料、材料取り扱い構成、作業ツール、ツールのための異なる設備、インジケータランプ、ディスプレイなどの作業ツール動作のための相互作用装置などを含む作業台の一部とすることができる。
【００１７】
簡単に言えば、本解決策は、ツール環境における通信のためのシステム及び方法に関する。以下、添付図面を参照しながら本解決策をさらに詳細に説明する。
【００１８】
図１に、１又は２以上の作業ツール１８からの結果データを制御し、監視し、及び／又は収集する複数のツールコントローラ１６と、ツールコントローラのうちの１つにさらに接続された個々の作業ツールとを含むツール通信システムを示す。結果データは、作業ツール１８の動作に関するデータとすることができる。換言すれば、各ツールコントローラには、ツールコントローラが制御すべき１又は２以上のツールが接続される。ツール通信システムは、ツールコントローラ１６の構成管理、制御、ツールコントローラから受け取った結果データの記憶、及び／又はツールコントローラに送信した制御データの記憶を行うツールサーバ１０をさらに含む。ツール通信システムは、例えばサーバ１０とコントローラ１６との間の通信の管理及び中継を行う通信ノード１４をさらに含む。通信ノード１４は、通信ログなどの情報を記憶する、関連するストレージ１３を含むことができる。また、ツールサーバ１０に接続されたラップトップなどのクライアント１２も存在することができる。ツール通信システムには、図１には２つのツールサーバによって示す複数のツールサーバが存在することができる。
【００１９】
作業ツール１８は、レンチ、ドリル、ハンマーなどの、機械的動作を行うために使用されるあらゆる種類の電動ツールとすることができる。作業ツール１８は、例えば製造材料、材料取り扱い構成などを含む作業台の一部とすることができる。作業ツール１８は、単純な動作のために設定することも、又はオペレータ係によって手動でのみ制御することもできる。しかしながら、作業ツールは、構成によって複雑な作業動作のために設定することもできる。このような複雑な作業動作は、複数の同様の動作及び異なる動作、１つの設備を用いた一連の動作、別の設備に移行した後の別の一連の動作を含むことができ、第３の設備への移行とすることもできる。作業ツールの動作方法、及びオペレータとの相互作用方法は、ツールサーバから受け取られた制御データに基づくことができる。各個々の動作は、トルク及び回転速度などの観点から高精度で行われることを必要とし得る。さらに、望ましい品質管理を維持するために、作業ツールによって行われた結果をセンサなどによって測定することができ、このような結果は、実行回転数、最終トルク、作業位置、時間、及び作業ツール動作の同様の結果データとすることができる。
【００２０】
ツール通信システムは、非汚染環境における小規模製造工場などに適用することができる。ツール通信システムは、複数の建物又は遠隔地にわたって分散させることができる。製造環境は、通信設備及びコンピュータにとって厄介な場合もある、埃、侵襲性化学薬品、電気妨害を含む困難な環境の工場の場合もある。時には、通信が遮断されることもある。たとえ困難な環境であっても、ツールサーバとコントローラとの間で構成データ及び結果データを搬送する必要がある。生産停止又は生産阻害は、時に著しいコストをもたらすことがあるので避ける必要がある。
【００２１】
ツール通信システムにおける通信は、非限定的な例をいくつか挙げると、ローカルエリアネットワーク、ＬＡＮ、例えばＩＥＥＥ８０２．３に基づくイーサネット（登録商標）などの技術、転送制御プロトコル／ユーザデータグラムプロトコル／インターネットプロトコル、ＴＣＰ／ＵＤＰ／ＩＰ、ＩＥＥＥ８０２．１１に基づく無線ＬＡＮなどの無線プロトコルに基づいて行うことができる。ツール通信システムは、例えば、家庭用電気器具、車、玩具、機械などを含む消費財又は工業用品の製造を行う工場又は製造プラントにおいて動作することができる。ツール通信システムは、複数の建物を含むキャンパスなどの閉鎖地域内の複数の施設を網羅又は接続することができる。ツール通信システムは、互いに離れて位置する複数の工場又は製造プラントを網羅又は接続することができる。
【００２２】
ツールサーバ１０などのツールサーバは、作業ツール１８の作業動作の構築及び／又は管理のためにクライアント１２が接続できるサーバとすることができる。ツールサーバ１０は、汎用サーバとすることも、或いは作業ツールを遠隔制御するように特異的に構成されたツールサーバとすることもできる。クライアント１２を介してツールサーバに接続する管理者は、例えば特定の状況において特定の作業ツール１８又は一群の作業ツール１８がどのように挙動すべきかを構築し、指定し、変更することができる。一例として、一連の動作、ツールの選択、トルク率のような各動作の値、回転数、回転速度、位置、結果データをいつどのようにフィードバックするか、などが挙げられる。サーバ１０は、図６ａに示すようなＣＰＵ２０及びメモリ２２を含むことができる。
【００２３】
通信ノード１４などの通信ノードは、通信ネットワークに参加する異なる機能ノード又は装置間の通信を管理するように構成することができる。通信ノード１４は、例えばツールコントローラ１６、ツールサーバ１０、及び／又は作業ツール１８のアイデンティティを追跡することができる。通信ノード１４は、オンラインとオフラインを交互に繰り返すあらゆるノード又は装置を追跡することができる。ツールコントローラ１６は、例えば様々な理由で常にネットワークに接続されているとは限らない。通信ノード１４は、通信ネットワーク内のノード又は装置の通信を検証及び／又は許可することもできる。通信ノード１４は、図６ｂに示すようなＣＰＵ２４及びメモリ２６を含むことができる。
【００２４】
第１のツールコントローラ１６ａなどのツールコントローラ１６は、作業ツールを制御するツールコントローラとすることができる。ツールコントローラは、作業ツールを制御する特定のノードとすることも、或いは例えば作業ツールの制御を行うように適合された汎用コンピュータとすることもできる。ツールコントローラは、有線又は無線によって通信できるようにツール通信システムに接続することができる。ツールコントローラは、例えばツールサーバ１０から制御データを受け取り、好適なデータベースに記憶することができる。ツールコントローラは、この制御データを作業ツールの制御又は作業ツールの動作のために使用することができる。ツールコントローラ又は作業ツールのセンサは、作業ツールの動作結果データを生成することができる。ツールコントローラ１６は、コントローラ、コントローラノード、制御ノード、制御ユニット、ツールプロセッサ又はツールレギュレータなどと呼ぶこともできる。ツールコントローラ１６は、作業ツール１８、ツールサーバ１０、通信ノード１４、又はツール通信システムにおいて動作する他の好適な技術ノードと同じ位置に配置し、又はこれらに含めることができる。
【００２５】
第１のツールコントローラ１６ａは、第１の作業ツール１８ａなどの作業ツール１８を制御することができる。作業ツール１８ａの制御は、例えば作業ツールへの制御データの提供、電力、空気力又は水力、センサ命令の提供による作業ツールの動作を含むことができ、他のタイプの制御又は調整に限定しない。作業ツールの制御は、例えば電気エネルギーの消費の検出、空気力又は水力、トルク、トルク率、位置、３次元位置の検知、又は他のタイプのセンサデータを含むこともできる。作業ツール１８の例は、トルクレンチ、ハンマー、ブレーカー、削岩機、ナットランナー、ねじ回し、又はこれらの様々な組み合わせとすることができ、他の同様のタイプの作業ツールに限定しない。作業ツール１３０は、そのツールコントローラに有線又は無線によって接続することができる。
【００２６】
クライアント１２は、ツールサーバに無線で又は配線を介して接続されたラップトップ又は固定コンピュータなどのコンピュータとすることができる。管理者は、例えばツールコントローラによってツールサーバに提供されたセンサデータを監視し、ツールサーバによって提供されたツール制御データを関連するツールコントローラに入力して、そのツールコントローラに関連する作業ツールに後で提供できるようにすることにより、例えば作業ツール及び／又はツールコントローラの機能を制御するようにクライアントを実行し、使用することができる。
【００２７】
さらに、ツールサーバ１０のデータベース１１には、ツールコントローラに提供されてツールコントローラに記憶される制御データを記憶することもできる。また、ツールサーバのデータベースには、作業ツールの制御及び／又は動作に関するセンサデータなどの他のデータを記憶することもできる。
【００２８】
クライアント１２は、クライアント１２がコントローラ１８などの他のアプリケーションと通信できるようにする所望のサーバ１０に接続することができる。通信ノード１４は、通信のルーティング、管理及び記憶を担うエンティティであり、適切なプロトコルを使用するあらゆるクライアントを認証して登録するように適合され、そのような役割を担う。通信ノードは、分散ツールシステムにおけるメッセージリレー及びクライアントレジストリとしての役割を果たすようにさらに構成される。システムは、１又は複数の通信ノード１４を有することができる。通信ノード１４は、特定のクライアントタイプの知識又は論理を有しておらず、全てを同様に扱う。通信ノード１４が異なるエンティティを区別するには、接続先のエンティティによって提供された識別子を用いて登録した後に、通信ノード１４を用いてエンティティを識別する。エンティティは、通信ノードに接続された装置であり、例えばサーバ１０又はコントローラ１６とすることができる。
【００２９】
通信ノード１４に接続されたエンティティは、登録エンティティのリストを要求できるとともに、例えば新たなエンティティが接続した時、又は古いエンティティが切断された時などの特定のイベントの発生時に情報を受け取るために、これらのイベントに申し込みを行うこともできる。通信ノード１４は、エンティティが応答を停止した時に、接続エンティティ間のセッションを追跡してセッションを割り当て直す。通信ノード１４は、エンティティ間におけるメッセージのルーティングも行い、システム内で送信されるメッセージへの申し込み及びそのモニタリングを可能にする。１つの実施形態では、メッセージが、宛先及びメッセージタイプを含むヘッダ部分と、コントローラ１６が作業ツール１８を制御するための制御データを含むペイロード部分とで構成される。制御データは、何を行うべきかに関するメタデータと、動作中に使用すべきトルクの量などの、何を行うべきかについての値を含む値データとを含むことができる。通信ノードがサポートできる例示的な特定の機能は、以下に列挙するように複数存在する。
【００３０】
レジスタ：新たなクライアントを登録するために使用する。クライアント１２は、通信ノード１４に接続した後に、何かを行えるようになる前に登録されなければならない。この登録処理の一部は、接続クライアントを認証して、接続が許可されていることを確実にすることを含む。
【００３１】
クライアントへの接続：通信ノード１４をクライアント１２に接続するために使用する。この機能は、例えばコントローラ１６などの、通信ノード１４に自動的に登録するように構成されていないクライアント１２に接続する際に使用される。通常、接続メッセージには、インターネットプロトコル及びポートに関する情報が含まれる。
【００３２】
クライアントの切断：切断すべきクライアントの対応する一意のＩＤを使用することによってクライアントを通信ノードから切断する。
【００３３】
クライアントステータスへの申し込み：クライアントの接続の変更に申し込みを行うために使用する。フィルタを用いてコントローラ１６などの特定のタイプのクライアントに申し込みを行うことができる。
【００３４】
クライアントステータスへの申し込み取り消し：以前のクライアント又はクライアントタイプへの申し込みを取り消す。
【００３５】
メッセージへの申し込み：システム内で送信されるメッセージに申し込みを行う。クライアントと同様に、フィルタを用いて特定のタイプのメッセージ又は特定のクライアントとの間のメッセージに申し込みを行うことができる。
【００３６】
メッセージへの申し込み取り消し：以前のメッセージ又はメッセージタイプへの申し込みを取り消す。
【００３７】
クライアントのリスト化：全ての接続クライアントをリスト化するために使用され、フィルタを用いて特定のタイプのクライアントのみをリスト化することもできる。
【００３８】
読み取り／書き込み構成：通信ノード１４は、通信ノード１４内の情報を読み取って更新するメッセージをサポートする。
【００３９】
通信ノード１４は、全ての通信を追跡することもできる。この追跡は、送信された全てのメッセージ、並びに接続及び／又は切断する全てのクライアントのログを通じて行われる。通信ノード１４は、あるクライアントが別のクライアントにおいて割り当てたセッションも追跡する。セッションの割り当てに関するメッセージは、ＳｅｓｓｉｏｎＡｌｌｏｃａｔｉｏｎなどの特定のメッセージクラスを有することができる。セッションの割り当てを解除するには、Ｓｅｓｓｉｏｎｄｅａｌｌｏｃａｔｉｏｎメッセージを使用することができる。
【００４０】
通信ノード１４は、通信ノードマネージャを含むことができる。通信ノードマネージャは、例えば通信ノードにインストールされたソフトウェアプログラムとすることも、又は通信ノードに接続された外部ユニットとすることもできる。通信ノードマネージャを用いて、以下を行うことができる。
・複数の通信ノードへの接続
・通信ノードに接続されているクライアントの表示
・クライアントへのメッセージ送信
・通信ノードを介して送信されたメッセージのモニタリング
・特定のクライアント又はクライアントタイプとの間で送信されたメッセージのモニタリング
・クライアントへの接続、クライアントに対する接続要求
・クライアントの切断
・通信ノードの構成の閲覧及び変更
・通信ノードのサービスの開始／中止／再開
【００４１】
サーバ１０などのサーバは、作業ツール１８の作業動作の構築及び／又は管理のためにクライアント１２が接続できるサーバとすることができる。ツールサーバは、汎用サーバとすることも、或いは作業ツールを遠隔制御するように特異的に構成されたツールサーバ１０とすることもできる。クライアント１２を介してツールサーバに接続する管理者は、例えば特定の状況において特定の作業ツール又は一群の作業ツール１８がどのように挙動すべきかを構築し、指定し、変更することができる。一例として、一連の動作、ツールの選択、トルク率のような各動作の値、回転数、回転速度、位置、結果データをいつどのようにフィードバックするか、などが挙げられる。
【００４２】
ツールシステムにおけるサーバ１０は、主にクライアントのための接続点として使用され、コントローラ１６と通信してコントローラ１６を構成するためのユーザフレンドリーなインターフェイスを提供するように意図されている。このインターフェイスには、サーバ自体からアクセスすることも、又はサーバ１０に接続されたクライアント１２を通じてアクセスすることもできる。一般に、サーバ１０は、サーバ１０、又はサーバに接続されたクライアント１２のいずれかがコントローラとの通信を開始する際に経由するエンティティである。サーバ１０は、上述した特徴を可能にするソフトウェアをインストールしている。このソフトウェアは、例えばツール環境内で通信を行うためのアプリケーションとすることができる。
【００４３】
以下は、本明細書で説明するシステムにおけるサーバ１０に関連するシナリオのリストである。
【００４４】
新たなコントローラを接続：このシナリオでは、サーバが、接続するコントローラの予備知識を有しておらず、従ってコントローラから全ての必要な情報を回収する。この情報回収は、通信ノードを介して、又はサーバからコントローラに直接行われる。この時、サーバ１０は、これに応じて関連するクライアントを任意に更新する。
【００４５】
既知のコントローラを接続：このシナリオでは、例えばコントローラがしばらくオフラインであった後に接続する際などに、サーバ１０が、接続するコントローラ１６についての知識を接続前に有している。この時、サーバ１０の最初のステップは、コントローラ１６の構成変化をチェックすることである。変化がなかった場合、サーバは、たとえ情報が同じものであったとしても、その情報が後の時点で受け取られたものであることを反映するように、やはりデータベース情報を更新する。また、サーバは、関連するクライアントを任意に新たな情報で更新する。
【００４６】
接続されたコントローラ構成の変化：このシナリオでは、サーバが、コントローラから更新を受けた旨の情報通知を受け取る。この時、サーバ１０は、更新後の構成を回収し、関連するクライアントに任意に通知する。
【００４７】
エンティティの追加／除去：このシナリオは、コントローラなどのエンティティがサーバに接続した時、又はサーバから切断した時に発生する。この時、サーバは、エンティティによって通知を受け、これに応じてそのデータベース情報を更新し、関連するクライアントに任意に通知する。
【００４８】
コントローラ構成の更新：このシナリオでは、ユーザがコントローラの構成変更を要求する。この時、サーバは、そのデータベースからあらゆる必要なデータを回収し、コントローラ構成を更新する。サーバは、これを行った後に、データベースを新たな構成で更新し、関連するクライアントに任意に通知する。
【００４９】
以前の構成を復元：この機能は、サーバに接続されたクライアントが要求することができる。この時、サーバは、そのデータベースから古い構成を回収してクライアントに送信し、クライアントがその構成を変更する。その後、この構成が保存され、これに関する情報がサーバに送信され、サーバがそのデータベースを更新する。
【００５０】
本明細書で説明するツールシステムにおけるサーバ１０のタスクの１つは、通信からのデータを記憶することである。このデータは、例えばボルトを締めるために付与するトルクの量又は必要な回転数などの、作業ツール１８によって実行される作業に関連することができる。サーバ１０は、例えばコントローラ１６の設定及び構成などの他の情報を記憶することもできる。これにより、例えば履歴の比較が可能になるとともに、同様のコントローラに関する記憶データを使用することによって新たなコントローラの構成も容易になる。
【００５１】
システム内のコントローラ１６は、作業ツール１８を制御するという主要目的を有する。コントローラは、サーバ１０と通信ノード１４を介して又は直接通信することができる。直接通信は、無線とすることも、物理的接続を必要とすることもできる。ユーザは、コントローラ１６を用いて、例えばサーバ１０に接続されたパーソナルコンピュータなどのクライアント１２を通じてツール１８を構成することができる。コントローラ１６は、ツール１８に統合することも、或いはツール１８の外部に存在することもできる。
【００５２】
コントローラを介して制御できるパラメータの例としては、トルク、角度及び速度が挙げられる。例えば、コントローラ１６は、レンチ作業ツール１８を、動作角及び付与するトルク量を決定するように制御することができる。レンチ作業ツール１８は、例えば３回フル回転した後に停止し、又はある程度まで締め付けるなどの所定のパターンに従って動作するようにさらに制御することもできる。レンチ作業ツール１８は、サーバ１０を通じてコントローラ１６に接続されたクライアント１４として機能するコンピュータの特定のボタンが押された時などのユーザからの命令時に回転するように制御することもできる。しかしながら、これらは何をどのように構成できるかについての例にすぎず、コントローラ１６の使用を通じて制御できるツール１８に関するパラメータは、他にも膨大な数が存在する。
【００５３】
図２に、互いに動作可能に結合されたサーバ１０、通信ノード１４及びコントローラ１６を伴う通信を示す。この通信は、同期的なものとして示しているが、非同期的とすることもでき、すなわちプロセスが特定の応答を待って停止せず、メッセージが送信された時に正常な処理を継続し、応答が受け取られた時にコールバックが呼び出されるようにすることもできる。
【００５４】
図２に示す例示的なシナリオでは、最初にサーバ１０が通信ノード１４に接続する（１００）。サーバ１０は、通信ノードに接続された他のエンティティと通信できるようになる前に通信ノード１４に登録し（１１０）、通信ノード１４は、サーバ１０が接続された旨を確認応答することができる。コントローラも通信ノード１４に接続し（１２０）、接続後には、やはり通信ノードに接続された他のエンティティと通信するために通信ノード１４に登録することができる（１３０）。いくつかの実施形態では、コントローラ１６が通信ノード１４よりも前に登録することも、或いはコントローラ１６と通信ノード１４とが同時に登録することもできる。いくつかの実施形態では、登録ステップ１１０と接続ステップ１２０とを単一ステップで同時に行うこともできる。
【００５５】
いくつかの実施形態では、通信ノード１４が、通信ノードに接続及び／又は登録された各エンティティに識別子を割り当てることができる。これらの識別子は、例えば数字又は名前とすることができ、数値、２進数及び英数字などの様々な異なるフォーマットとすることができる。これらの識別子は、登録ユニットの追跡に使用され、例示的な実施形態では、通信ノード１４が、他のエンティティの仮想位置及び／又は物理的位置についての知識を有する通信ネットワーク１１内の唯一のエンティティである。割り当てられる識別子は、サーバ１０及びコントローラ１６などの通信ノード以外のエンティティが適切な宛先に効果的にメッセージを向けるために知る必要がある唯一の情報タイプである。
【００５６】
いくつかの実施形態では、通信ノード１４を、登録済みの各エンティティにユニットタイプも割り当てるようにさらに適合することができる。いくつかの実施形態では、ユニットタイプが、接続されたエンティティがサーバであるか、それともコントローラであるかのみを示し、他の実施形態では、ユニットタイプがさらに特定される。例えば、コントローラには、レンチコントローラ、ドリルコントローラなどの異なるタイプが存在することができる。ユニットタイプは、さらに深く特定することも、及び／又はコントローラの１つのグループを示す「ＰＦ６０００」などの異なる名前を付けることもできる。各登録エンティティにタイプを割り当てることにより、他の接続エンティティが、どのような種類の他のエンティティが既に通信ノードに接続されているかが容易に分かるようになり、関連するエンティティの位置特定及び関連するエンティティとの通信が容易になる。
【００５７】
サーバ１０は、サーバに接続して登録した後に、通信ノード１４を介してコントローラ１６と通信することができる。図２には、サーバ１０が通信セッションコントローラ１６を確立するように要求する（１４０）１つの例示的なシナリオを示している。すなわち、例示的な実装では、サーバ１０がコントローラ１６との通信を望んでいる旨を通信ノード１４に通信した後に、通信ノード１４がサーバ１０とコントローラ１６との間の通信セッションを確立することができる。
【００５８】
上述したようにサーバ１０がコントローラ１６と通信する場合、いくつかの実施形態では、通信ノード１４が、通信に送信元及び／又は宛先の識別子を含めることができる。例えば、サーバ１０が、コントローラ１６にログインすることによって通信セッションを確立するように要求する（１４０）と、通信ノードは、どのサーバ１０が通信を開始したか、及びどのコントローラ１６に通信が送られているかを指定する。
【００５９】
サーバ１０とコントローラ１６との間に通信セッションが確立された後には、サーバ１０を用いて作業ツール１８のパラメータを制御することができる（１５０）。例示的な実施形態では、これらのパラメータが作業ツール１８の動作に関連し、例えば、角度、トルク及び速度とすることができる。サーバ１０を用いてコントローラ１６を介して作業ツール１８を制御する場合、例示的な実施形態では、サーバ１０及びコントローラ１６が相手方の位置又は仮想アドレスに関する情報を有していないので、パラメータの制御に関する通信は、通信ノード１４によってルーティングされる。
【００６０】
通信ノード１４は、全ての通信セッションをメッセージログに記憶するようにさらに適合される。通常、メッセージログは、通信ノード１４に関連する全ての通信セッション及び全ての登録エンティティを記憶して追跡するためのデータベースである。いくつかの実施形態では、メッセージログが、どのエンティティが互いに通信したかのみを登録し、通信の内容は登録しない。他の実施形態では、メッセージログが、通信の送信者、通信の宛先及び通信の内容に関する情報を記憶するようにさらに適合される。
【００６１】
通信ノード１４は、次の通信が何に関連するものであるかをサーバ及びコントローラ１６が知ることができるように、通信にセッション識別子を提供することもできる。このセッション識別子は、いくつかの実施形態では、例えば数字又は名前などの一意に生成された識別子とすることができ、いくつかの実施形態では、２つの同じ識別子が生成される確率が非常に低い状態でランダムに生成されて割り当てられた数字とすることができる。いくつかの実施形態では、通信ノード１４が、非同期通信を追跡するためのシーケンス識別子も提供する。
【００６２】
図３に、要求時に全ての接続エンティティをリスト化するように通信ノード１４をさらに適合できるようにする方法かを示す。例示的な実施形態では、接続エンティティ、接続コントローラ、接続サーバ、及び特定のタイプの接続エンティティのリストを要求することができるが、別の実施形態では、より多くのバリエーションを利用することができる。図には、サーバが最初に通信ノード１４に接続して（２００）通信ノード１４に登録する（２１０）ことを示しており、その後に通信ノード１４が登録を確認応答する（２２０）。登録を確認応答するステップ２２０は任意であり、いくつかの実施形態では、通信ノードが登録を確認応答せず、他の実施形態では、登録を確認応答するステップ２２０を登録ステップ２１０に含めることができる。
【００６３】
登録後、サーバ１０は、通信ノードが全ての接続エンティティ、全ての接続コントローラ、全ての特定のタイプの接続コントローラ、全てのサーバ又はいずれかの同様の組み合わせをリスト化することを要求することができる。図３では、ステップ２３０に、通信ノード１４が全ての接続コントローラをリスト化することをサーバ１０が要求する方法を示している。通信ノード１４は、ステップ２４０に示すように０とすることができる接続コントローラのリストを用いて応答する。コントローラのリストが要求された後に、コントローラ１６が通信ノード１４に接続して（２５０）登録した（２６０）場合、例示的な実施形態では、リストが自動的に更新されず、サーバ１０に通信されない。しかしながら、コントローラ１６が通信ノードに接続して（２５０）登録した（２６０）後に、サーバ１０が接続コントローラをリスト化するように別の要求を行った（２８０）場合、通信ノード１４は、接続コントローラの新たなリストを用いて応答し（２９０）、図３に示す例では、これが１つのコントローラになっている。接続エンティティをリスト化する機能を有することにより、通信ノード１４に接続されているエンティティは、他の接続エンティティに関するバージョン、仮想位置又は物理的位置、又は他のいずれかの情報に関する知識を有する必要がない。
【００６４】
図４には、サーバが１回のステップで通信ノード１４に接続して登録する（３００）ことを示している。接続と登録は、別個のステップで行うこともできるが、単一ステップで行うこともできる。サーバ１０は、特定のコントローラ１６のステータス又は特定のコントローラタイプへの申し込み（３１０）を選択することができる。申し込みは、そのコントローラに関するあらゆる更新が通知されるように要求することを意味する。例示的な実施形態では、コントローラのステータスが、そのコントローラが接続されているか否かに関連するが、他の実施形態では、より詳細なものとすることができ、例えばコントローラがどれほど前に接続されたかに関する情報、コントローラが最近通信したエンティティに関する情報などを含むことができる。
【００６５】
図４には、サーバが接続して登録した（３００）後に、サーバがタイプ「ＰＦ６０００」のコントローラ全てのステータスに申し込む（３１０）ように要求していることを示す。この時、通信ノード１４は、サーバが申し込み要求において指定したタイプの現在接続しているコントローラをリスト化する（３２０）ことによって応答する。図４に示すフローでは、申し込み要求時に通信ノード１４に接続されているコントローラ１６は存在せず、このようなシナリオでは、通信ノード１４からの応答が、要求されたタイプのコントローラがその時点で接続されていないことを示す。
【００６６】
しかしながら、サーバ１０が特定のタイプのコントローラ全てのステータスに申し込みを行った後に、この特定のタイプのコントローラ１６が通信ノード１４に接続して登録した（３３０）場合には、サーバ１０に通知が行われる。図４には、コントローラ１６が通信ノード１４に接続して登録３００する方法を示している。この時、通信ノード１４は、最近接続されたコントローラ１６に一致するコントローラタイプのステータスに申し込みを行った各サーバ１０に、指定されたタイプのコントローラが通信ノード１４に接続したことを通知する（３４０）。このシナリオは、既に登録済みのエンティティがステータス変更への申し込みを行った対象である新たなエンティティが通信ノード１４に接続する度に繰り返される。申し込み機能を有することにより、同じ情報のために何度も要求を行う必要性が減少し、システムも、より良い最新の更新情報を有することができる。
【００６７】
通信ノード１４は、コントローラ１６とサーバ１０との間の全ての通信を追跡するだけでなく、接続コントローラを追跡して、上述したようなコントローラ状態の申し込みサービスも提供する。サーバ１０は、コントローラステータスの変更に申し込みを行ってコントローラステータスをメモリに保持することができるので、通信ノード１４に継続的にステータスを更新するように要求する必要がない。これにより、サーバ１０に接続されているあらゆるクライアント１２が、必ずしも通信ノード１４を経由する必要なくコントローラ１６の状態を求めることができる。
【００６８】
図４には、サーバ１０が通信ノード１４を介してコントローラ１６と通信できるようにする方法、及び応答機能を使用できるようにする方法をさらに示す。既に通信ノード１４に登録済みのサーバ１０は、通信ノード１４に送る通信を通じてコントローラ１６のステータスに申し込みを行う（３１０）ことができる。この時、通信ノード１４は、接続コントローラ１６をリスト化する（３２０）ことで応答する。
【００６９】
通信ノード１４に新たなコントローラ１６が接続して登録する（３２０）と、サーバ１０は、コントローラ１６が接続して登録する（３２０）前にコントローラステータスへの申し込みを取り消していない限り、新たなコントローラが接続された旨を通知される（３４０）。申し込み取り消しを行うと、それまでの申し込みを取り消すことができる。
【００７０】
通信ノード１４に少なくとも１つのサーバ１０と少なくとも１つのコントローラ１６とが接続されている場合、サーバ１０は、通信ノード１４を介してコントローラ１６と通信してコントローラ１６を制御することができる。いくつかの実施形態では、サーバ１０とコントローラ１６との間で通信を行う方法の一部として応答機能が存在する。サーバ１０は、コントローラ１６との通信セッションを確立するように要求する（３５０）ことができる。この時、コントローラ１６は、応答機能を使用することによって要求３５０に応答することができる。例示的な実施形態では、この応答機能により、通信ノード１４に接続されているエンティティが、通信をどこに送るべきかを無用に指定することなく通信に応答することができる。応答機能は、通信の送信元であるエンティティに自動的に通信を送る。図４には、コントローラ１６がサーバ１０にセッションＩＤを提供することによって応答する（３６０）方法を示している。この時、サーバ１０とコントローラ１６との間の全ての継続中の通信には、通信セッションが終了するまでセッションＩＤが含まれる。図４には、一例としてサーバ１０とコントローラ１６との間の通信３５０及び３６０を示しているが、全ての通信が通信ノード１４を通じてルーティングされる。
【００７１】
通常、コントローラ１６とサーバ１０との間の通信は、全て通信ノード１４を介して行われるので、例えばコントローラ１６及びサーバ１０のＩＰアドレスは、通信ノード１４のみが知っていればよく、システム全体がこれを知る必要はない。これにより、システムは、全てのコントローラ１６へのアクセスポイントを１つしか、すなわち通信ノード１４しか有していないので、有力なファイヤウォールの構成が容易になる。
【００７２】
図５に、１つの実施形態による、通信ノード１４において実行される方法を示す。通信ノード１４は、既に接続済みのサーバ１０から通信ノード１４に登録する要求を受け取り（Ｓ１００）、その後にこのサーバを通信ノード１４に登録する（Ｓ１１０）。次に、通信ノード１４は、ツールコントローラ１８から通信ノード１４に登録する要求を受け取り、このツールコントローラ１８を通信ノード１４に登録する（Ｓ１３０）。その後、通信ノード１４は、サーバ１０とツールコントローラ１８との間の通信セッションを確立することができる（Ｓ１４０）。
【００７３】
図６に、図６ａに示すようなサーバ１０のさらに詳細なブロック図と、図６ｂに示すようなコントローラ１６のさらに詳細なブロック図とを示す。サーバ１０は、コンピュータ処理装置２０と、例えばエンティティ間の通信を記憶するために使用されるメモリ２２とを含むことができる。同様に、コントローラ１６も、コンピュータ処理装置２４とメモリ２６とを含むことができ、このメモリを使用して、例えば作業ツール１８によって行われる動作に関する制御データを記憶することができる。
【００７４】
上記の説明は複数の特異性を含むが、これらは、本明細書で説明した概念の範囲を限定するものではなく、説明した概念のいくつかの例示的な実施形態の例示を行うものにすぎないと解釈すべきである。現在説明している概念の範囲は、当業者にとって明らかになる他の実施形態を完全に含み、従って現在説明している概念の範囲は制限されるものでないと理解されるであろう。単数形の要素についての言及は、別途明確に示していない限り「唯一の」を意味するものではなく、むしろ「１又は２以上の」を意味するものである。さらに、現在説明している概念によって解決しようとしているありとあらゆる課題が本明細書に含まれるようにするために、装置又は方法がこれらの課題に対処する必要はない。
【符号の説明】
【００７５】
１０  ツールサーバ
１１  データベース
１２  クライアント
１４  ハブ
１６、１６ａ  ツールコントローラ
１８、１８ａ  作業ツール
【図１】
2017520872.tif 000003
【図２】
2017520872.tif 000004
【図３】
2017520872.tif 000005
【図４】
2017520872.tif 000006
【図５】
2017520872.tif 000007
【図６】
2017520872.tif 000008
【手続補正書】
【提出日】平成29年3月2日(2017.3.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
作業ツール通信ネットワーク（１１）におけるシステムであって、
メモリを含み、通信ノードに動作可能に結合され、前記通信ノードに接続して登録するように適合されたサーバ（１０）と、
プロセッサと記憶装置とを含み、コントローラ（１６）に動作可能に結合された前記通信ノード（１４）と、
プロセッサとメモリとを含み、作業ツール（１８）のパラメータを制御するとともに、前記通信ノード（１４）に接続して登録するように適合された前記コントローラ（１６）と、を備え、
前記通信ノード（１４）は、前記サーバ（１０）と、前記作業ツール（１８）を制御する登録された前記コントローラ（１６）との間の通信セッションを確立するように適合され、
前記通信ノードは、各セッションにセッション識別子を割り当て、前記通信ノードに登録された各サーバ及び各コントローラに識別子を割り当て、登録された各サーバ及びコントローラにタイプを割り当てるようにさらに適合されている、ことを特徴とするシステム。
【請求項２】
前記通信ノードは、全ての接続エンティティをリスト化するようにさらに適合されている、請求項１に記載のシステム。
【請求項３】
前記通信ノードは、データベースをさらに含み、全ての通信セッションを追跡して前記データベースに記憶するようにさらに適合されている、請求項１又は２に記載のシステム。
【請求項４】
各通信セッションに、宛先識別子と送信元識別子とが含まれる、請求項１〜３のいずれかに記載のシステム。
【請求項５】
前記通信ノードは、登録済みの全てのサーバ及びコントローラの記録を保持するようにさらに適合され、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求するようさらに適合されている、請求項１〜４のいずれかに記載のシステム。
【請求項６】
前記通信ノードは、登録されたサーバ及びコントローラが、他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にするようにさらに適合されている、請求項１〜５のいずれかに記載のシステム。
【請求項７】
前記通信ノードは、登録されたサーバ及びコントローラが通信セッションにおける通信に応答できるようにする応答機能を有するようにさらに適合されている、請求項１〜６のいずれかに記載のシステム。
【請求項８】
前記サーバは、前記コントローラを介して前記作業ツールのパラメータを制御するようにさらに適合されている、請求項１〜７のいずれかに記載のシステム。
【請求項９】
サーバ（１０）と、通信ノード（１４）と、複数のツールコントローラ（１６）と、該ツールコントローラ（１６）に接続された複数の作業ツール（１８）とを含み、前記サーバ（１２）及び前記ツールコントローラ（１６）が前記通信ノード（１４）に接続された作業ツール通信ネットワーク（１１）における通信方法であって、
前記サーバ（１２）を前記通信ノード（１４）に登録するステップ（１１０）と、
前記ツールコントローラ（１６）を前記通信ノード（１４）に登録するステップ（１３０）と、
前記サーバ（１２）と前記コントローラ（１６）との間の通信セッションを確立するステップ（１４０）と、を含み、前記方法が、
各通信セッションにセッション識別子を割り当てるステップと、
前記通信ノードに登録された各サーバ及び各コントローラに識別子を割り当てるステップと、
登録された各サーバ及びコントローラにタイプを割り当てるステップと、
をさらに含むことを特徴とする方法。
【請求項１０】
全ての接続エンティティをリスト化するステップをさらに含む、請求項９に記載の方法。
【請求項１１】
全ての通信セッションを追跡し、該全ての通信セッションを前記通信ノードのデータベースに記憶するステップをさらに含む、請求項９又は１０に記載の方法。
【請求項１２】
各通信セッションに宛先識別子と送信元識別子とを含めるステップをさらに含む、請求項９〜１１のいずれかに記載の方法。
【請求項１３】
前記通信ノードは、登録済みの全てのサーバ及びコントローラの記録を保持するようにさらに適合され、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求するようさらに適合されている、請求項９〜１２のいずれかに記載の方法。
【請求項１４】
前記通信ノードは、登録されたサーバ及びコントローラが、他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にするようにさらに適合されている、請求項９〜１３のいずれかに記載の方法。
【請求項１５】
通信セッションにおける通信に応答する応答機能を有するステップをさらに含む、請求項９〜１４のいずれかに記載の方法。
【請求項１６】
前記サーバが、前記コントローラを介して前記作業ツールのパラメータを制御するステップをさらに含む、請求項９〜１５のいずれかに記載の方法。
【請求項１７】
サーバ（１０）と、複数のツールコントローラ（１６）と、該ツールコントローラ（１６）に接続された複数の作業ツール（１８）とを含む作業ツール通信ネットワーク（１１）において使用される通信ノード（１４）であって、該通信ノード（１４）は、
前記サーバ（１０）に接続し、
前記ツールコントローラ（１６）に接続し、
前記サーバ（１０）及び前記ツールコントローラ（１０）を前記通信ノードに登録し、
前記サーバ（１０）と前記ツールコントローラ（１６）との間の通信セッションを確立するように構成されており、
前記通信ノード（１４）は、
各セッションにセッション識別子を割り当て、
前記通信ノードに登録された各サーバ及び各コントローラに識別子を割り当て、
登録された各サーバ及びコントローラにタイプを割り当てるようにさらに構成されている、ことを特徴とする通信ノード。
【請求項１８】
全ての接続エンティティをリスト化するようにさらに構成されている、請求項１７に記載の通信ノード。
【請求項１９】
データベースをさらに含み、全ての通信セッションを追跡して前記データベースに記憶するようにさらに構成されている、請求項１７又は１８に記載の通信ノード。
【請求項２０】
各通信セッションに、宛先識別子と送信元識別子とが含まれる、請求項１７〜１９のいずれかに記載の通信ノード。
【請求項２１】
登録済みの全てのサーバ及びコントローラの記録を保持し、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求するようさらに構成されている、請求項１７〜２０のいずれかに記載の通信ノード。
【請求項２２】
登録されたサーバ及びコントローラが、他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にするようにさらに構成されている、請求項１７〜２１のいずれかに記載の通信ノード。
【請求項２３】
登録されたサーバ及びコントローラが通信セッションにおける通信に応答できるようにする応答機能を有するようにさらに構成されている、請求項１７〜２２のいずれかに記載の通信ノード。
【請求項２４】
前記サーバが通信セッションにおいて前記コントローラを介して前記作業ツールのパラメータを制御することを可能にするようにさらに適合されている、請求項１７〜２３のいずれかに記載の通信ノード。
【請求項２５】
作業通信ネットワーク（１１）の通信ノードが通信を管理するためのコンピュータ命令を記憶する、非一時的コンピュータ可読媒体を含むコンピュータプログラム製品であって、前記ネットワークは、
サーバ（１０）と、
記憶装置、及び、前記記憶装置に動作可能に結合されコンピュータ可読コンピュータ命令を実行するように構成された処理装置を含む通信ノード（１４）と、
複数のツールコントローラ（１６）と、
前記ツールコントローラ（１６）に接続された複数の作業ツール（１８）と、を含み、
前記サーバ（１２）及び前記ツールコントローラ（１６）は、前記通信ノード（１４）に接続されており、
前記コンピュータ命令は、
前記サーバ（１０）を前記通信ノード（１４）に接続（１００）して登録（１１０）する命令と、
前記コントローラ（１６）を前記通信ノード（１４）に接続（１２０）して登録（１３０）する命令と、
前記サーバ（１０）と前記ツールコントローラ（１６）との間の通信セッションを確立（１４０）する命令と、を含み、
前記コンピュータ命令は、
各セッションにセッション識別子を割り当てる命令と、
前記通信ノードに登録された各サーバ及び各コントローラに識別子を割り当てる命令と、
登録された各サーバ及びコントローラにタイプを割り当てる命令と、
をさらに含む、ことを特徴とするコンピュータプログラム製品。
【請求項２６】
前記コンピュータ命令は、全ての接続エンティティをリスト化する命令をさらに含む、請求項２５に記載のコンピュータプログラム製品。
【請求項２７】
前記コンピュータ命令は、全ての通信セッションを追跡して前記通信ノードのデータベースに記憶する命令をさらに含む、請求項２５又は２６に記載のコンピュータプログラム製品。
【請求項２８】
前記コンピュータ命令は、各通信セッションに宛先識別子と送信元識別子とを含める命令をさらに含む、請求項２５〜２７のいずれかに記載のコンピュータプログラム製品。
【請求項２９】
前記コンピュータ命令は、登録済みの全てのサーバ及びコントローラの記録を保持して、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求する命令をさらに含む、請求項２５〜２８のいずれかに記載のコンピュータプログラム製品。
【請求項３０】
前記コンピュータ命令は、登録されたサーバ及びコントローラが他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にする命令をさらに含む、請求項２５〜２９のいずれかに記載のコンピュータプログラム製品。
【請求項３１】
前記コンピュータ命令は、通信セッションにおける通信に応答する応答機能のための命令をさらに含む、請求項２５〜３０のいずれかに記載のコンピュータプログラム製品。
【請求項３２】
前記コンピュータ命令は、前記サーバにより前記コントローラを介して前記作業ツールのパラメータを制御する命令をさらに含む、請求項２５〜３１のいずれかに記載のコンピュータプログラム製品。
【請求項３３】
サーバ（１０）と、通信ノード（１４）と、複数のツールコントローラ（１６）と、該ツールコントローラ（１６）に接続された複数の作業ツール（１８）とを含み、前記サーバ（１２）及び前記ツールコントローラ（１６）が前記通信ノード（１４）に接続されている作業ツール通信ネットワーク（１１）における通信方法であって、
前記通信ノードが、前記通信ノードに登録するための要求を前記サーバから受け取るステップ（Ｓ１００）と、
前記サーバを前記通信ノードに登録するステップ（Ｓ１１０）と、
前記通信ノードが、前記通信ノードに登録するための要求を前記ツールコントローラから受け取るステップ（Ｓ１２０）と、
前記ツールコントローラを前記通信ノードに登録するステップ（Ｓ１３０）と、
前記通信ノードが、前記サーバと前記ツールコントローラとの間の通信セッションを確立するステップ（Ｓ１４０）と、
を含み、
前記方法は、
前記通信ノードが、各通信セッションにセッション識別子を割り当てるステップと、
前記通信ノードが、該通信ノードに登録された各サーバ及び各コントローラに識別子を割り当てるステップと、
前記通信ノードが、登録された各サーバ及びコントローラにタイプを割り当てるステップと、をさらに含むことを特徴とする方法。
【請求項３４】
前記通信ノードが、全ての接続エンティティをリスト化するステップをさらに含む、請求項３３に記載の方法。
【請求項３５】
前記通信ノードが、全ての通信セッションを追跡して前記通信ノードのデータベースに記憶するステップをさらに含む、請求項３３又は３４に記載の方法。
【請求項３６】
前記通信ノードが、各通信セッションに宛先識別子と送信元識別子とを含めるステップをさらに含む、請求項３３〜３５のいずれかに記載の方法。
【請求項３７】
前記通信ノードは、登録済みの全てのサーバ及びコントローラの記録を保持するようにさらに適合され、既に登録済みのサーバ又はコントローラに前記通信ノードに接続するように要求するようさらに適合されている、請求項３３〜３６のいずれかに記載の方法。
【請求項３８】
前記通信ノードは、登録されたサーバ及びコントローラが、他の登録されたサーバ及びコントローラのステータス、又はサーバ及びコントローラのタイプに申し込みを行うことを可能にするようにさらに適合されている、請求項３３〜３７のいずれかに記載の方法。
【請求項３９】
通信セッションにおける通信に応答するための応答機能を有するステップをさらに含む、請求項３３〜３８のいずれかに記載の方法。
【請求項４０】
前記通信ノードを介した前記サーバが、前記コントローラを介して前記作業ツールのパラメータを制御するステップをさらに含む、請求項３３〜３９のいずれかに記載の方法。
【国際調査報告】
2017520872.tif 000009
2017520872.tif 000010