(57)【要約】  作業ツール通信システムのツールサーバ（１０）と複数のツールコントローラ（１６ａ、１６、１６）との間の通信を容易にする、作業ツール通信システムによって行われる方法を開示する。ツールサーバ（１０）は、複数のツールコントローラ（１６ａ、１６、１６）に接続され、ツールコントローラは、ツールコントローラに接続された作業ツール（１８）と通信するようにさらに適合される。この方法は、ツールサーバ（１０）から複数のツールコントローラのうちの第１のツールコントローラ（１６ａ）に、第１のツールコントローラ（１６ａ）に接続された１又は２以上の作業ツール（１８ａ）の制御に関する、第１のツールコントローラの宛先アドレスと、第１のツールコントローラが実行すべき要求動作とを含むメッセージを送信するステップを含む。この方法は、ツールサーバ（１０）によって送信されたメッセージを第１のツールコントローラ（１６ａ）が宛先アドレスに基づいて受け取るステップと、第１のツールコントローラ（１６ａ）がメッセージを分析して要求動作を検出するステップと、第１のツールコントローラ（１６ａ）が、検出された要求動作に従って、第１のツールコントローラに接続された１又は２以上の作業ツール（１８ａ）を制御するステップとをさらに含む。【選択図】図１
2017521026.tif 000002
【特許請求の範囲】
【請求項１】
作業ツール通信システムのツールサーバ（１０）と複数のツールコントローラ（１６ａ、１６、１６）との間の通信を容易にする、前記作業ツール通信システムによって実行される方法であって、前記ツールサーバ（１０）は前記複数のツールコントローラ（１６ａ、１６、１６）に接続され、前記ツールコントローラは該ツールコントローラに接続された作業ツール（１８）と通信するようにさらに適合され、前記方法は、
前記ツールサーバ（１０）から前記複数のツールコントローラのうちの第１のツールコントローラ（１６ａ）に、該第１のツールコントローラ（１６ａ）に接続された１又は２以上の作業ツール（１８ａ）の制御に関する、前記第１のツールコントローラの宛先アドレスと、前記第１のツールコントローラが実行すべき要求動作とを含むメッセージを送信するステップ（２０１）と、
前記第１のツールコントローラ（１６ａ）が、前記ツールサーバ（１０）によって送信されたメッセージを前記宛先アドレスに基づいて受け取るステップ（２０３）と、
前記第１のツールコントローラ（１６ａ）が、前記メッセージを分析して前記要求動作を検出するステップ（２０５）と、
前記第１のツールコントローラ（１６ａ）が、前記検出された要求動作に従って、前記第１のツールコントローラに接続された前記１又は２以上の作業ツール（１８ａ）を制御するステップ（２０７）と、を含み、
前記メッセージは、前記要求動作を含むヘッダ部分と、前記要求動作の詳細を含むペイロード部分とをさらに含み、前記ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含む、
ことを特徴とする方法。
【請求項２】
前記要求動作は、前記第１のツールコントローラのツールを制御する新たなトルク値などのデータに関連し、前記メッセージは、データタイプとデータ値とをさらに含む、請求項１に記載の方法。
【請求項３】
前記メッセージは、前記ツールサーバ（１０）の送信元アドレスと、セッションアイデンティティとをさらに含み、場合によってはシーケンス番号も含む、請求項１又は２に記載の方法。
【請求項４】
前記メッセージは、前記ツールサーバ（１０）の送信元アドレスをさらに含み、場合によっては前記メッセージが要求であるか、それとも要求に対する応答であるかを定める情報も含む、請求項１〜３のいずれかに記載の方法。
【請求項５】
前記メッセージは、前記ツールサーバ及び前記第１のツールコントローラがどのタイプのノードであるかについての情報をさらに含む、請求項１〜４のいずれかに記載の方法。
【請求項６】
前記第１のツールコントローラ（１６ａ）が、前記要求動作が実行されたか否かを確認する応答を前記ツールサーバ（１０）に送信するステップをさらに含む、請求項１〜５のいずれかに記載の方法。
【請求項７】
前記複数のデータノードの個々のデータノードは、前記データタイプフィールド及び前記データ値フィールドの個々のフィールドの長さを定める長さフィールドをさらに含む、請求項１に記載の方法。
【請求項８】
前記複数のデータノードの個々のデータノードは、各々がデータタイプフィールドとデータ値フィールドとを含む子データノードフィールドをさらに含む、請求項１又は７に記載の方法。
【請求項９】
作業ツール通信システムのツールサーバ（１０）と複数のツールコントローラ（１６ａ、１６、１６）との間の通信を容易にする、前記作業ツール通信システムの前記ツールサーバ（１０）によって実行される方法であって、前記複数のツールコントローラは、該ツールコントローラに接続された作業ツール（１８）と通信するようにさらに適合され、前記方法は、
前記複数のツールコントローラのうちの第１のツールコントローラ（１６ａ）に、該第１のツールコントローラ（１６ａ）に接続された１又は２以上の作業ツール（１８ａ）の制御に関する、前記第１のツールコントローラの宛先アドレスと、前記第１のツールコントローラが実行すべき要求動作とを含むメッセージを送信するステップを含み、
前記メッセージは、前記要求動作を含むヘッダ部分と、前記要求動作の詳細を含むペイロード部分とをさらに含み、前記ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含む、
ことを特徴とする方法。
【請求項１０】
作業ツール通信システムのツールサーバ（１０）との通信を容易にする、前記作業ツール通信システムのツールコントローラ（１６ａ）によって実行される方法であって、前記ツールコントローラは、該ツールコントローラに接続された作業ツール（１８）と通信するように適合され、前記方法は、
前記ツールコントローラ（１６ａ）に接続された１又は２以上の作業ツール（１８ａ）の制御に関する、前記ツールコントローラの宛先アドレスと、前記ツールコントローラが実行すべき要求動作とを含むメッセージを前記ツールサーバ（１０）から前記宛先アドレスに基づいて受け取るステップ（３０３）を含み、
前記メッセージは、前記要求動作を含むヘッダ部分と、前記要求動作の詳細を含むペイロード部分とをさらに含み、前記ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含み、
前記方法は、更に、
前記受け取ったメッセージを分析して前記要求動作を検出するステップ（３０５）と、
検出された前記要求動作に従って、前記ツールコントローラの前記１又は２以上の作業ツール（１８ａ）を制御するステップ（３０７）と、
を含む、ことを特徴とする方法。
【請求項１１】
作業ツール通信システムの複数のツールコントローラ（１６ａ、１６、１６）と通信する、前記作業ツール通信システムのツールサーバ（１０）であって、前記複数のツールコントローラは、該複数のツールコントローラに接続された作業ツール（１８）と通信するようにさらに適合され、前記ツールサーバ（１０）は、プロセッサ（４０３）と、該プロセッサによって実行可能な命令を含むメモリ（４０４）とを備え、
前記ツールサーバは、前記命令により、前記複数のツールコントローラのうちの第１のツールコントローラ（１６ａ）に、前記第１のツールコントローラ（１６ａ）に接続された１又は２以上の作業ツール（１８ａ）の制御に関する、前記第１のツールコントローラの宛先アドレスと、前記第１のツールコントローラが実行すべき要求動作とを含むメッセージを送信し、
前記メッセージは、前記要求動作を含むヘッダ部分と、前記要求動作の詳細を含むペイロード部分とをさらに含み、前記ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含む、ことを特徴とするツールサーバ。
【請求項１２】
前記要求動作が、前記第１のツールコントローラのツールを制御する新たなトルク値などのデータに関連する場合、前記メッセージは、データタイプをさらに含み、場合によってはデータ値も含む、請求項１１に記載のツールサーバ。
【請求項１３】
前記メッセージは、前記ツールサーバ（１０）の送信元アドレスと、セッションアイデンティティとをさらに含み、場合によってはシーケンス番号も含む、請求項１１又は１２に記載のツールサーバ。
【請求項１４】
前記メッセージは、前記ツールサーバ（１０）の送信元アドレスをさらに含み、場合によっては前記メッセージが要求であるか、それとも要求に対する応答であるかを定める情報も含む、請求項１１〜１３のいずれかに記載のツールサーバ。
【請求項１５】
前記メッセージは、前記ツールサーバ及び前記第１のツールコントローラがどのタイプのノードであるかについての情報をさらに含む、請求項１１〜１４のいずれかに記載のツールサーバ。
【請求項１６】
前記メモリ（４０４）は、前記プロセッサ（４０３）によって実行可能な命令をさらに含み、前記ツールサーバは、前記命令により、前記要求動作が実行されたか否かを確認する応答を前記第１のツールコントローラ（１６ａ）から受け取る、請求項１１〜１５のいずれかに記載のツールサーバ。
【請求項１７】
前記複数のデータノードの個々のデータノードは、前記データタイプフィールド及び前記データ値フィールドの個々のフィールドの長さを定める長さフィールドをさらに含む、請求項１１に記載のツールサーバ。
【請求項１８】
前記複数のデータノードの個々のデータノードは、各々がデータタイプフィールドとデータ値フィールドとを含む子データノードフィールドをさらに含む、請求項１１又は１７に記載の方法。
【請求項１９】
作業ツール通信ネットワークのツールサーバ（１０）と通信する、前記作業ツール通信システムのツールコントローラ（１６ａ）であって、該ツールコントローラは、該ツールコントローラに接続された作業ツール（１８）と通信するように適合され、前記ツールコントローラ（１６ａ）は、プロセッサ（５０３）と、該プロセッサによって実行可能な命令を含むメモリ（５０４）とを含み、
前記ツールコントローラは、前記命令により、
前記ツールコントローラ（１６ａ）に接続された前記作業ツール（１８ａ）のうちの１又は２以上の作業ツールの制御に関する、前記ツールコントローラの宛先アドレスと、前記ツールコントローラが実行すべき要求動作とを含むメッセージを前記ツールサーバ（１０）から前記宛先アドレスに基づいて受け取り、
受け取った前記メッセージを分析して前記要求動作を検出し、
検出された前記要求動作に従って、前記ツールコントローラの前記１又は２以上の作業ツール（１８ａ）を制御し、
前記メッセージは、前記要求動作を含むヘッダ部分と、前記要求動作の詳細を含むペイロード部分とをさらに含み、前記ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含む、ことを特徴とするツールコントローラ。
【請求項２０】
前記要求動作が、前記ツールコントローラのツールを制御する新たなトルク値などのデータに関連する場合、前記メッセージは、データタイプをさらに含み、場合によってはデータ値も含む、請求項１９に記載のツールコントローラ。
【請求項２１】
前記メッセージは、前記ツールサーバ（１０）の送信元アドレスと、セッションアイデンティティとをさらに含み、場合によってはシーケンス番号も含む、請求項１９又は２０に記載のツールコントローラ。
【請求項２２】
前記メッセージは、前記ツールサーバ（１０）の送信元アドレスをさらに含み、場合によっては前記メッセージが要求であるか、それとも要求に対する応答であるかを定める情報も含む、請求項１９〜２１のいずれかに記載のツールコントローラ。
【請求項２３】
前記メッセージは、前記ツールサーバ及び前記ツールコントローラがどのタイプのノードであるかについての情報をさらに含む、請求項１９〜２２のいずれかに記載のツールコントローラ。
【請求項２４】
前記メモリ（５０４）は、前記プロセッサ（５０３）によって実行可能な命令をさらに含み、前記ツールコントローラは、前記命令により、前記要求動作が実行されたか否かを確認する応答を前記ツールサーバ（１０）に送信する、請求項１９〜２３のいずれかに記載のツールコントローラ。
【請求項２５】
前記複数のデータノードの個々のデータノードは、前記データタイプフィールド及び前記データ値フィールドの個々のフィールドの長さを定める長さフィールドをさらに含む、請求項１９に記載のツールコントローラ。
【請求項２６】
前記複数のデータノードの個々のデータノードは、各々がデータタイプフィールドとデータ値フィールドとを含む子データノードフィールドをさらに含む、請求項１９又は２５に記載のツールコントローラ。
【請求項２７】
コンピュータ可読コード手段を含むコンピュータプログラム（４０５）であって、前記コンピュータ可読コード手段は、作業ツール通信システムの複数のツールコントローラ（１６ａ、１６、１６）と通信する、前記作業ツール通信システムのツールサーバ（１０）において実行された時に、前記ツールサーバに、
前記第１のツールコントローラ（１６ａ）に接続された１又は２以上の作業ツール（１８ａ）の制御に関する、前記第１のツールコントローラの宛先アドレスと、前記第１のツールコントローラが実行すべき要求動作とを含むメッセージを送信するステップを実行させ、
前記メッセージは、前記要求動作を含むヘッダ部分と、前記要求動作の詳細を含むペイロード部分とをさらに含み、前記ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含む、ことを特徴とするコンピュータプログラム。
【請求項２８】
コンピュータ可読コード手段を含むコンピュータプログラム（５０５）であって、前記コンピュータ可読コード手段は、作業ツール通信システムのツールサーバ（１０）と通信する、前記作業ツール通信システムのツールコントローラ（１６ａ、１６、１６）において実行された時に、前記ツールコントローラに、
前記ツールコントローラに接続された１又は２以上の作業ツール（１８ａ）の制御に関する、前記第１のツールコントローラの宛先アドレスと、前記第１のツールコントローラが実行すべき要求動作とを含むメッセージを前記ツールサーバ（１０）から前記宛先アドレスに基づいて受け取るステップと、
受け取った前記メッセージを分析して前記要求動作を検出するステップと、
検出された前記要求動作に従って、前記ツールコントローラの前記１又は２以上の作業ツール（１８ａ）を制御するステップと、を実行させ、
前記メッセージは、前記要求動作を含むヘッダ部分と、前記要求動作の詳細を含むペイロード部分とをさらに含み、前記ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含む、ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に作業ツール通信システムにおけるツールサーバと複数のツールコントローラとの間の通信を容易にする方法及びノードに関する。
【背景技術】
【０００２】
生産作業では、オペレータが操作するパワーレンチなどの携帯用作業ツールを含む作業ツール、及び作業ツールを含むシステムがしばしば使用される。一般的な用途は、組立ラインである。今日では、組立ラインの作業ツールにコントローラが接続され、これらのコントローラが、ツールによって行われる作業をツールが自動的に行うように制御することができる。すなわち、コントローラは、例えば正しいトルクでレンチ動作が行われているかなど、ツールが正しく動作するように監視する。
【０００３】
時には、コントローラを新たな情報で更新する必要がある。例えば、ツールは、新たな動作を行ったり、或いは寸法又はトルクを変更したりする必要が生じることがある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
以前は、多くのツールコントローラが存在する環境においてツールコントローラのデータを更新する必要がある場合、オペレータは、１回に１つのコントローラに接続してコントローラを再プログラムする必要があった。これには非常に長い時間が掛かる。従って、複数のツールコントローラを含む環境におけるデータの更新を容易にする必要がある。
【０００５】
さらに、例えば複数のツールコントローラを含む工場の新たな生産ラインを事前計画し、このような事前計画を高速かつ容易に実施することは不可能であった。
【０００６】
このように、多くの又は複数のツールコントローラを含む環境における通信を容易にできる必要がある。
【０００７】
本発明の目的は、上記で概説した問題点及び課題点の少なくとも一部に対処することである。これらの及びその他の目的は、添付の独立請求項に定めるような方法、ツールサーバ及びツールコントローラを用いて達成することができる。
【課題を解決するための手段】
【０００８】
ある態様によれば、作業ツール通信システムのツールサーバと複数のツールコントローラとの間の通信を容易にする、作業ツール通信システムによって実行される方法が提供され、ツールサーバは複数のツールコントローラに接続される。ツールコントローラは、ツールコントローラに接続された作業ツールと通信するように適合される。この方法は、ツールサーバから複数のツールコントローラの第１のツールコントローラに、第１のツールコントローラに接続された１又は２以上の作業ツールの制御に関する、第１のツールコントローラの宛先アドレスと、第１のツールコントローラが実行すべき要求動作とを含むメッセージを送信するステップを含む。この方法は、第１のツールコントローラが、ツールサーバによって送信されたメッセージを宛先アドレスに基づいて受け取るステップと、第１のツールコントローラが、メッセージを分析して要求動作を検出するステップと、第１のツールコントローラが、検出された要求動作に従って、第１のツールコントローラに接続された１又は２以上の作業ツールを制御するステップとをさらに含み、メッセージは、要求動作を含むヘッダ部分と、要求動作の詳細を含むペイロード部分とをさらに含み、ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含む。
【０００９】
別の態様によれば、作業ツール通信システムの複数のツールコントローラと通信する、作業ツール通信システムのツールサーバが提供され、複数のツールコントローラは、複数のツールコントローラに接続された作業ツールと通信するようにさらに適合される。ツールサーバは、プロセッサと、プロセッサによって実行可能な命令を含むメモリとを備え、ツールサーバは、この命令により、複数のツールコントローラのうちの第１のツールコントローラに、第１のツールコントローラに接続された１又は２以上の作業ツールの制御に関する、第１のツールコントローラの宛先アドレスと、第１のツールコントローラが実行すべき要求動作とを含むメッセージを送信し、このメッセージは、要求動作を含むヘッダ部分と、要求動作の詳細を含むペイロード部分とをさらに含み、ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含む。
【００１０】
別の態様によれば、作業ツール通信ネットワークのツールサーバと通信する、作業ツール通信システムのツールコントローラが提供され、このツールコントローラは、ツールコントローラに接続された作業ツールと通信するように適合される。ツールコントローラは、プロセッサと、プロセッサによって実行可能な命令を含むメモリとを含み、ツールコントローラは、この命令により、ツールコントローラに接続された作業ツールのうちの１又は２以上の作業ツールの制御に関する、ツールコントローラの宛先アドレスと、ツールコントローラが実行すべき要求動作とを含むメッセージをツールサーバから宛先アドレスに基づいて受け取る。メモリは、プロセッサによって実行可能な命令をさらに含み、ツールコントローラは、この命令により、受け取ったメッセージを分析して要求動作を検出し、検出された要求動作に従って、ツールコントローラの１又は２以上の作業ツールを制御する。メッセージは、要求動作を含むヘッダ部分と、要求動作の詳細を含むペイロード部分とをさらに含み、ペイロード部分は、複数のデータノードに分割され、各データノードは、データタイプフィールドとデータ値フィールドとを含む。
【００１１】
他の態様によれば、ツールサーバによって実行される方法、ツールコントローラによって実行される方法、コンピュータプログラム及びコンピュータプログラム製品も提供され、これらの詳細については、特許請求の範囲及び詳細な説明に記述する。
【００１２】
上記の方法及び装置は、任意の異なる実施形態に従って構成し、実装することができる。以下の詳細な説明から、この解決策のさらなる有力な特徴及び利点が明らかになるであろう。
【００１３】
以下、添付図面を参照しながら本発明を一例として説明する。
【図面の簡単な説明】
【００１４】
【図１】実施形態による作業ツール通信システムのブロック図である。
【図２】実施形態による、ツールサーバと複数のツールコントローラとの間の通信を容易にする、作業ツール通信システムによって実行される方法のフローチャートである。
【図３】実施形態によるメッセージ構造のブロック図である。
【図４】別の実施形態によるメッセージ構造のブロック図である。
【図５】さらに別の実施形態によるメッセージ構造のブロック図である。
【図６】実施形態による、ツールコントローラによって実行される方法のフローチャートである。
【図７】実施形態によるツールサーバのブロック図である。
【図８】実施形態によるツールコントローラのブロック図である。
【発明を実施するための形態】
【００１５】
簡単に言えば、作業ツール通信システムにおけるツールサーバとツールコントローラとの間の通信を容易にする解決策について説明する。この解決策は、ツールサーバからツールコントローラのうちの第１のツールコントローラに向けて、メッセージの対象受信者が第１のツールコントローラであることを示す宛先アドレスと、要求動作、すなわちツールサーバが第１のツールコントローラに実行するように要求する動作とを含むメッセージを送信する通信方法及びシステムによって実現される。要求動作は、例えば新たな制御データでの更新、又は構成パラメータの送信、又はツールコントローラが行った測定の結果送信とすることができる。さらに、通常、このメッセージは、要求動作を実行すべき対象の１又は２以上のデータタイプ、すなわちレンチのトルク、ドリル穴の深さ、及び／又は動作を行うべき対象のツールのタイプも含む。要求動作が、「新たな制御データでの更新」動作のようにデータ値を提供することである場合、メッセージは、１又は２以上のデータ値、すなわち４２Ｎｍ（トルク）又は５０ｍｍ（ドリル穴の深さ）も含む。第１のツールコントローラは、このようなメッセージを受け取ると、メッセージを分析して要求動作、データタイプ及び有力なデータ値を決定する。その後、第１のツールコントローラは、受け取ったメッセージに従って行動し、要求動作の実行後に、ツールサーバに確認応答を送信することによって応答することができる。確認応答メッセージは、要求がデータ値を指定している場合にはデータ値を含むことができる。ツールコントローラは、メッセージを分析して要求動作、データタイプ及び有力なデータ値を決定できるように、ツールサーバと同じプロトコルを使用することができる。このような解決策により、ツールサーバは、異なるツールコントローラと通信してツールコントローラを制御することができる。
【００１６】
図１に、１又は２以上の作業ツール１８からの結果データを制御し、監視し、及び／又は収集する複数のツールコントローラ１６、１６ａと、ツールコントローラのうちの１つにさらに接続された個々の作業ツールとを含むツール通信システムを示す。換言すれば、各ツールコントローラには、個々のツールが接続されたツールコントローラが制御すべき１又は２以上のツールが接続される。ツール通信システムは、ツールコントローラ１６の構成管理、制御、ツールコントローラから受け取った結果データの記憶、及び／又はツールコントローラに送信した制御データの記憶を行うツールサーバ１０をさらに含む。ツール通信システムは、通信の管理及び中継を行うハブ１４をさらに含む。また、ツールサーバ１０に接続されたラップトップなどのクライアント１２も存在することができる。ツール通信システムには、図１には２つのツールサーバによって示す複数のツールサーバが存在することができる。
【００１７】
作業ツール１８は、レンチ、ドリル、ハンマーなどの、機械的動作を行うために使用されるあらゆる種類の電動ツールとすることができる。作業ツール１８は、例えば製造材料、材料取り扱い構成などを含む作業台の一部とすることができる。作業ツール１８は、単純な動作のために設定することも、又はオペレータ係によって手動でのみ制御することもできる。しかしながら、作業ツールは、構成によって複雑な作業動作のために設定することもできる。このような複雑な作業動作は、複数の同様の動作及び異なる動作、１つの設備を用いた一連の動作、別の設備に移行した後の別の一連の動作を含むことができ、第３の設備への移行とすることもできる。作業ツールの動作方法、及びオペレータとの相互作用方法は、ツールサーバから受け取られた制御データに基づくことができる。各個々の動作は、トルク及び回転速度などの観点から高精度で行われることを必要とし得る。さらに、望ましい品質管理を維持するために、作業ツールによって行われた結果をセンサなどによって測定することができ、このような結果は、実行回転数、最終トルク、作業位置、時間、及び作業ツール動作の同様の結果データとすることができる。
【００１８】
ツール通信システムは、非汚染環境における小規模製造工場などに適用することができる。ツール通信システムは、複数の建物又は遠隔地にわたって分散させることができる。製造環境は、通信設備及びコンピュータにとって厄介な場合もある、埃、侵襲性化学薬品、電気妨害を含む困難な環境の工場の場合もある。時には、通信が遮断されることもある。たとえ困難な環境であっても、ツールサーバとコントローラとの間で構成データ及び結果データを搬送する必要がある。生産停止又は生産阻害は、時に著しいコストをもたらすことがあるので避ける必要がある。
【００１９】
ツール通信システムにおける通信は、非限定的な例をいくつか挙げると、ローカルエリアネットワーク、ＬＡＮ、例えばＩＥＥＥ８０２．３に基づくイーサネット（登録商標）などの技術、転送制御プロトコル／ユーザデータグラムプロトコル／インターネットプロトコル、ＴＣＰ／ＵＤＰ／ＩＰ、ＩＥＥＥ８０２．１１に基づく無線ＬＡＮなどの無線プロトコルに基づいて行うことができる。ツール通信システムは、例えば、家庭用電気器具、車、玩具、機械などを含む消費財又は工業用品の製造を行う工場又は製造プラントにおいて動作することができる。ツール通信システムは、複数の建物を含むキャンパスなどの閉鎖地域内の複数の施設を網羅又は接続することができる。ツール通信システムは、互いに離れて位置する複数の工場又は製造プラントを網羅又は接続することができる。
【００２０】
ツールサーバ１０などのツールサーバは、作業ツール１８の作業動作の構築及び／又は管理のためにクライアント１２が接続できるサーバとすることができる。ツールサーバ１０は、汎用サーバとすることも、或いは作業ツールを遠隔制御するように特異的に構成されたツールサーバとすることもできる。クライアント１２を介してツールサーバに接続する管理者は、例えば特定の状況において特定の作業ツール１８又は一群の作業ツール１８がどのように挙動すべきかを構築し、指定し、変更することができる。一例として、一連の動作、ツールの選択、トルク率のような各動作の値、回転数、回転速度、位置、結果データをいつどのようにフィードバックするか、などが挙げられる。
【００２１】
ハブ１４などのハブは、通信ネットワークに参加する異なる機能ノード又は装置間の通信を管理するように構成することができる。ハブ１４は、例えばツールコントローラ１６、ツールサーバ１０、及び／又は作業ツール１８のアイデンティティを追跡することができる。ハブ１４は、オンラインとオフラインを交互に繰り返すあらゆるノード又は装置を追跡することができる。ツールコントローラ１６は、例えば様々な理由で常にネットワークに接続されているとは限らない。ハブ１４は、通信ネットワーク内のノード又は装置の通信を検証及び／又は許可することもできる。
【００２２】
第１のツールコントローラ１６ａなどのツールコントローラ１６は、作業ツールを制御するツールコントローラとすることができる。ツールコントローラは、作業ツールを制御する特定のノードとすることも、或いは例えば作業ツールの制御を行うように適合された汎用コンピュータとすることもできる。ツールコントローラは、有線又は無線によって通信できるようにツール通信システムに接続することができる。ツールコントローラは、例えばツールサーバ１０から制御データを受け取り、好適なデータベースに記憶することができる。ツールコントローラは、この制御データを作業ツールの制御又は作業ツールの動作のために使用することができる。ツールコントローラ又は作業ツールのセンサは、作業ツールの動作結果データを生成することができる。ツールコントローラ１６は、コントローラ、コントローラノード、制御ノード、制御ユニット、ツールプロセッサ又はツールレギュレータなどと呼ぶこともできる。ツールコントローラ１６は、作業ツール１８、ツールサーバ１０、ハブ１４、又はツール通信システムにおいて動作する他の好適な技術ノードと同じ位置に配置し、又はこれらに含めることができる。
【００２３】
第１のツールコントローラ１６ａは、第１の作業ツール１８ａなどの作業ツール１８を制御することができる。作業ツール１８ａの制御は、例えば作業ツールへの制御データの提供、電力、空気力又は水力、センサ命令の提供による作業ツールの動作を含むことができ、他のタイプの制御又は調整に限定しない。作業ツールの制御は、例えば電気エネルギーの消費の検出、空気力又は水力、トルク、トルク率、位置、３次元位置の検知、又は他のタイプのセンサデータを含むこともできる。作業ツール１８の例は、トルクレンチ、ハンマー、ブレーカー、削岩機、ナットランナー、ねじ回し、又はこれらの様々な組み合わせとすることができ、他の同様のタイプの作業ツールに限定しない。作業ツール１３０は、そのツールコントローラに有線又は無線によって接続することができる。
【００２４】
クライアント１２は、ツールサーバに無線で又は配線を介して接続されたラップトップ又は固定コンピュータなどのコンピュータとすることができる。管理者は、例えばツールコントローラによってツールサーバに提供されたセンサデータを監視し、ツールサーバによって提供されたツール制御データを関連するツールコントローラに入力して、そのツールコントローラに関連する作業ツールに後で提供できるようにすることにより、例えば作業ツール及び／又はツールコントローラの機能を制御するようにクライアントを実行し、使用することができる。
【００２５】
さらに、ツールサーバ１０のデータベース１１には、ツールコントローラに提供されてツールコントローラに記憶される制御データを記憶することもできる。また、ツールサーバのデータベースには、作業ツールの制御及び／又は動作に関するセンサデータなどの他のデータを記憶することもできる。
【００２６】
図２に示す実施形態によれば、作業ツール通信システムのツールサーバ１０と複数のツールコントローラ１６ａ、１６、１６との間の通信を容易にする、作業ツール通信システムによって実行される方法が提供され、ツールサーバ１０は、複数のツールコントローラ１６ａ、１６、１６に接続され、ツールコントローラは、ツールコントローラに接続された作業ツール１８と通信するようにさらに適合される。この方法は、ツールサーバ１０から複数のツールコントローラのうちの第１のツールコントローラ１６ａに、第１のツールコントローラ１６ａに接続された１又は２以上の作業ツール１８の制御に関するメッセージを送信するステップ２０１を含み、このメッセージは、第１のツールコントローラの宛先アドレスと、第１のツールコントローラが行うべき要求動作とを含む。この方法は、ツールサーバ１０によって送信されたメッセージを第１のツールコントローラ１６ａが宛先アドレスに基づいて受け取るステップ２０３と、第１のツールコントローラ１６ａがメッセージを分析して要求動作を検出するステップ２０５と、第１のツールコントローラ１６ａが、検出した要求動作に従って、第１のツールコントローラに接続された１又は２以上の作業ツールを制御するステップ２０７とをさらに含む。
【００２７】
ツールサーバ１０は、ツールサーバに接続されたオペレータクライアント１２と通信するようにさらに適合することができる。要求動作は、例えば「新たなデータでの更新」、「ツール機能のチェック」、「受け取ったデータの読み取り及び記憶」とすることができる。この場合のデータは、第１のツールコントローラのツールを制御するための新たなトルク値などのデータとすることができる。オペレータクライアントは、サーバに接続して、制御すべきツールコントローラ、要求動作、変更すべき有力なデータ及びデータ値などの新たな情報を入力することができる。ツールサーバは、オペレータクライアントから入力された情報を解釈し、受け取った情報に基づいて第１のツールコントローラに送信すべきメッセージをまとめるように構成することができる。ツールサーバは、第１のツールコントローラにメッセージを送信すべき送信時点をオペレータクライアントから受け取り、この送信時点にメッセージを送信するように構成することもできる。ツールサーバ及び複数のツールコントローラは、同じ通信プロトコルを有する。さらに、オペレータクライアントも、ツールサーバ及び複数のツールコントローラと同じ通信プロトコルを有する。要求動作は、第１のツールコントローラに接続されたどのツール又はどのツールタイプに対して要求動作を実行すべきかについての情報をさらに含むことができる。さらに、「新たなデータでの更新」の場合の要求動作は、どのデータを更新すべきか、及びデータをどの値に更新すべきかについての情報を含むこともできる。
【００２８】
第１のツールコントローラの宛先アドレスをメッセージに含めて送信することにより、メッセージを第１のコントローラに向けることができ、その後にメッセージの宛先でない他のいずれかのコントローラではなく第１のコントローラがメッセージを受け取って処理することができる。要求動作を送信することにより、ツールコントローラは、その情報に対して何をすべきかが分かる。さらに、多くのツールコントローラによって要求動作を実行すべき場合には、宛先アドレスを定めるデータフィールドが複数の宛先アドレスを含むことができる。これにより、１つのメッセージのみを送信することによって多くのツールコントローラに同じ動作を実行するように命令することができる。
【００２９】
ある実施形態によれば、要求動作が、第１のツールコントローラのツールを制御する新たなトルク値などのデータに関連する場合、メッセージはデータタイプをさらに含み、場合によってはデータ値も含む。要求動作が、例えば「新たなデータでの更新」、「データの受け取り及び記憶」又は「自機の機能に関するデータの送信」である場合、メッセージは、データタイプ、すなわちどのデータをどの値に更新すべきかを定める。例えば、ツールコントローラに接続されている全てのレンチを制御すべき場合、データタイプはレンチのトルクとすることができ、この場合のデータ値は、レンチが使用すべきトルク値である。レンチの例における別のデータタイプ例には、最大角度又は最小角度がある。
【００３０】
別の実施形態によれば、メッセージは、ツールサーバ１０の送信元アドレス及びセッションアイデンティティをさらに含み、場合によってはシーケンス番号も含む。通信当事者間の、この例ではツールサーバ１０と第１のツールコントローラ１６ａとの間の通信セッションを識別するアイデンティティであるセッションアイデンティティを設定することにより、ツールサーバ１０と第１のツールコントローラ１６ａとの間のセッションが、セッションアイデンティティを使用して、このセッションがセッション開始時と同じ当事者を含む同じセッションであることを分かった上で開始された後に、異なるノードが通信することができる。シーケンス番号を設定することにより、このメッセージがこのセッションのメッセージ順におけるどのメッセージであるかが定められる。シーケンス番号を使用する必要がある理由は、通信が非同期的になって、ツールコントローラなどの応答側ノードがツールサーバなどの要求側ノードからの要求に要求送信時とは異なる順序で応答できる場合もあるからである。この時、要求側ノードは、特定の応答がどの要求に対するものであるかをシーケンス番号に基づいて判断することができる。また、要求が応答側ノードにおいて送信時とは異なる順序で受け取られた場合、応答側ノードが要求の順序を判断することもできる。
【００３１】
別の実施形態によれば、メッセージは、ツールサーバ１０の送信元アドレスをさらに含み、場合によってはメッセージが要求であるか、それとも要求に対する応答であるかを定める情報も含む。送信元アドレスを送信することにより、メッセージの受信者は、その応答をどこに送るべきかが分かる。メッセージが要求であるか、それとも応答であるかを示すことにより、メッセージの送信方向が示され、同じセッションの各メッセージのために２つのノード間で送信元アドレスと宛先アドレスを変更することによって方向を示す必要がなくなる。例えば、ツールサーバ１０から要求を送信する場合、送信元アドレスはツールサーバのアドレスであり、第１のツールコントローラ１６ａが要求を受け取る場合、宛先アドレスは第１のツールコントローラのアドレスである。このような要求への応答、すなわち第１のツールコントローラからツールサーバへの逆方向に送られるメッセージの場合、送信元アドレスはツールサーバのままであり、宛先アドレスも第１のツールコントローラのままであり、このメッセージが応答であるか、それとも要求であるかを定めることによってメッセージの方向が示される。応答又は要求は、フラグ、すなわち要求＝０、応答＝１によって示すことができる。
【００３２】
別の実施形態によれば、メッセージは、ツールサーバ及び第１のツールコントローラがどのノードタイプであるかについての情報をさらに含む。サーバ、クライアント及びコントローラからなるネットワークを管理している人物にとっては、例えばシステム内のノードがサーバ、クライアント、コントローラ又は他のいずれかのタイプのノードである場合、一意のＩＤを除いてこれらのノードを種類別に分類できれば、システムの変更を容易に計画できるようになる。或いは、例えばノードＡは出願人が使用するコントローラタイプであるタイプＰｏｗｅｒＦｏｃｕｓ６０００のコントローラノードであり、ノードＢは出願人が使用するサーバタイプであるタイプＴｏｏｌｓＴａｌｋのツールサーバである、などのようにさらに具体的に分類することもできる。
【００３３】
別の実施形態によれば、方法が、要求動作が実行されたか否かを確認する応答を第１のツールコントローラ１６ａがツールサーバ１０に送信するステップ２０９を含む。これにより、ツールサーバは、要求動作が実行されたか否かが分かる。
【００３４】
別の実施形態によれば、メッセージが、要求動作を含むヘッダ部分と、要求動作の詳細を含むペイロード部分とを含む。要求動作の詳細は、データタイプ及びデータ値とすることができる。すなわち、要求動作が「新たなデータでの更新」である場合には、データタイプを「全てのレンチのトルク」とすることができ、データ値を「４２」とすることができる。要求動作が「自機の機能に関するデータの送信」である場合には、データタイプを「使用したトルク」とすることもでき、又はレンチにセンサが存在する場合には「受けたトルク」とすることもできる。
【００３５】
さらに別の実施形態によれば、ペイロード部分が複数のデータノードに分割され、各データノードが、データタイプフィールド及びデータ値フィールドを含む。これにより、第１のデータノードのデータタイプフィールドでは「トルク値」、第２のデータノードのデータタイプフィールドでは「ボアホールの深さ」のように、要求動作の多くの異なる詳細についての情報を１つのメッセージで送信することができる。「新たなデータでの更新」のように要求動作がデータ値を必要とする旨を示す場合には、データ値フィールドにデータ値が投入され、上記の例を続けると、例えば第１のデータノードのデータ値フィールドに「４２」（Ｎｍ）が投入され、第２のデータノードのデータ値フィールドに「５０」（ｍｍ）が投入される。ツールコントローラに送信すべき値が存在しない場合、例えば「自機の機能に関するデータの送信」という動作では、データ値フィールドがＮＵＬＬなどに設定される。
【００３６】
さらに別の実施形態によれば、複数のデータノードの個々のデータノードが、データタイプフィールド及びデータ値フィールドの個々のフィールドの長さを定める長さフィールドをさらに含む。データノードの各フィールドの長さを定めることにより、データを非直列化する必要なく個々のデータフィールドを検出することができる。さらに、これにより、たとえ二進コードで書かれている場合でも個々のデータフィールドを読み取ることができる。
【００３７】
さらに別の実施形態によれば、複数のデータノードの個々のデータノードが、１又は２以上の子データノードフィールドをさらに含み、これらのフィールドの各々が、データタイプフィールド及びデータ値フィールドを含む。
【００３８】
以下、本発明の実施形態による作業ツール通信システムにおいて送信されるメッセージの構造及び直列化について説明する。情報及びコマンドの受け渡しに使用する構造は、ヘッダと、ペイロードとも呼ばれるデータセクションとで構成され、図３を参照されたい。さらに、図３に示すように、データセクションは、入れ子状にすることができる一連の名前付きデータノードを含むことができる。また、各データノードは、属性を有することもできる。これらの構造を使用すると、クライアントは、あらゆるメタデータ、すなわち必ずしもサービングエンティティが扱うわけではないデータを追加することができる。これにより、異なるテストケースの追跡データを追加する手段を用いて、例えばテストフレームワークを容易にすることができる。また、場合によっては、開発中に異なるソフトウェアバージョンを扱うこともでき、クライアントは、未だツールサーバによってサポートされていないさらなるデータを追加することもできる。
【００３９】
図４に、ある実施形態によるヘッダ構造を示す。ヘッダは、１次ヘッダと、さらなる２次ヘッダという２つの部分に分割することができる。この方法では、古いヘッダバージョンを使用するシステムへの影響を最小限に抑えて２次ヘッダを将来的に拡張することができる。メッセージを受け取るエンティティは、その興味に応じて全てのデータを膨らませる必要はなく、エンティティにとって興味のあるデータのみを非直列化すればよい。以下の表に、図４に示す１次ヘッダの異なるフィールドの機能及び説明を示す。本発明では、これらのフィールドの１つ、多く又は全てを使用することができる。
【００４０】
2017521026.tif 000003
【００４１】
二次ヘッダは、ハブなどのルーティングエンティティが正しい通信チャネルを発見するために使用する情報を含むことができる。２次ヘッダは、シーケンス番号、機能及び結果コードのようなメッセージ固有の情報も含む。以下の表に、図４に示す２次ヘッダの異なるフィールドの機能及び説明を示す。本発明では、これらのフィールドの１つ、多く又は全てを使用することができる。
【００４２】
2017521026.tif 000004
【００４３】
図５に、ある実施形態によるデータノードを示す。このデータノードは、名前、値、子ノード及び属性というデータフィールドのうちの１つ又は２つ以上を含むことができる。サイズ計算（フィールド：長さ）及び値のタイプ（フィールド：タイプ）には追加情報が必要である。データフィールド名、子ノード、属性及び値は任意とすることができる。すなわち、例えば値をＮＵＬＬにすることができる。以下の表に、図５に示すデータノードの異なるフィールドの機能及び説明を示す。
【００４４】
2017521026.tif 000005
【００４５】
属性は、データノードに非常に類似することができる。属性は、名前及び値も有するが、子を含むことはできない。以下の表に、考えられる属性フィールドを示す。
【００４６】
2017521026.tif 000006
【００４７】
図６に、作業ツール通信システムのツールサーバ１０との通信を容易にする、作業ツール通信システムのツールコントローラ１６ａによって実行される方法の実施形態を示しており、ツールコントローラは、ツールコントローラに接続された作業ツール１８と通信するように適合される。この方法は、ツールコントローラ１６ａに接続された１又は２以上の作業ツール１８ａの制御に関する、ツールコントローラの宛先アドレスと、ツールコントローラが実行すべき要求動作とを含むメッセージをツールサーバ１０から受け取るステップ３０３を含み、このメッセージは、宛先アドレスに基づいて受け取られる。この方法は、受け取ったメッセージを分析して要求動作を検出するステップ３０５と、検出された要求動作に従ってツールコントローラの１又は２以上の作業ツール１８ａを制御するステップ３０７とをさらに含む。ある実施形態によれば、この方法は、要求動作が実行されたか否かを確認する応答をツールサーバに送信するステップ３０９を含むこともできる。
【００４８】
図７に、作業ツール通信システムの複数のツールコントローラ１６ａ、１６、１６と通信する、作業ツール通信システムのツールサーバ１０の実施形態を示しており、複数のツールコントローラは、複数のツールコントローラに接続された作業ツール１８と通信するように適合される。ツールサーバ１０は、プロセッサ４０３と、プロセッサ４０３によって実行可能な命令を含むメモリ４０４とを含み、ツールサーバは、この命令により、複数のツールコントローラのうちの第１のツールコントローラ１６ａに接続された１又は２以上の作業ツール１８ａの制御に関する、第１のツールコントローラの宛先アドレスと、第１のツールコントローラが実行すべき要求動作とを含むメッセージを第１のツールコントローラ１６ａに送信する。
【００４９】
異なる実施形態によれば、メモリ４０４が、プロセッサによって実行可能な命令をさらに含むことができ、ツールサーバ１０は、この命令により、図２の方法の説明に関連して説明したいずれかの実施形態を実行する。
【００５０】
ツールサーバ１０は、ツールコントローラ１６、１６ａ、１６などのネットワーク内の他のノードと通信するための従来の手段を含んでいると見なすことができる通信ユニット４０２をさらに含むことができる。この従来の通信手段は、少なくとも１つの送信機と、少なくとも１つの受信機とを含むことができる。上記プロセッサによって実行可能な命令は、メモリ４０４に記憶されたコンピュータプログラム４０５として構成することができる。
【００５１】
コンピュータプログラム４０５はコンピュータ可読コード手段を含むことができ、この手段は、ツールサーバ１０において実行された時に、説明した実施形態のいずれかにおいて説明したステップをツールサーバに実行させる。このコンピュータプログラムは、プロセッサに接続可能なコンピュータプログラム製品に含めることができる。コンピュータプログラム製品は、メモリ４０４とすることができる。メモリ４０４は、例えばＲＡＭ、ＲＯＭ又はＥＥＰＲＯＭとして実現することができる。さらに、コンピュータプログラムは、ＣＤ、ＤＶＤ又はフラッシュメモリなどの別個のコンピュータ可読媒体に含め、ここからメモリ４０４にダウンロードすることもできる。或いは、コンピュータプログラムは、別のサーバ、又はツールサーバがその通信ユニット４０２を介してアクセスできる通信システムに接続された他のいずれかのエンティティに記憶することもできる。コンピュータプログラムは、これらのサーバからメモリ４０４にダウンロードすることができる。
【００５２】
図８に、作業ツール通信ネットワークのツールサーバ１０と通信する、作業ツール通信システムのツールコントローラ１６ａの実施形態を示しており、ツールコントローラは、ツールコントローラに接続された作業ツール１８と通信するように適合される。ツールコントローラ１６ａは、プロセッサ５０３と、プロセッサ５０３によって実行可能な命令を含むメモリ５０４とを含み、ツールコントローラは、この命令により、ツールコントローラ１６ａに接続された作業ツール１８ａのうちの１又は２以上の作業ツールの制御に関する、ツールコントローラの宛先アドレスと、ツールコントローラが実行すべき要求動作とを含むメッセージをツールサーバ１０から宛先アドレスに基づいて受け取る。メモリは、プロセッサ５０３によって実行可能な命令をさらに含み、ツールコントローラは、この命令により、受け取ったメッセージを分析して要求動作を検出し、検出された要求動作に従ってツールコントローラの１又は２以上の作業ツール１８を制御する。
【００５３】
異なる実施形態によれば、メモリ５０４が、プロセッサによって実行可能な命令をさらに含むことができ、ツールコントローラ１６ａは、この命令により、図２の方法の説明に関連して説明したいずれかの実施形態を実行する。
【００５４】
ツールコントローラ１６ａは、ツールサーバ１０などのネットワーク内の他のノードと通信するための従来の手段を含んでいると見なすことができる通信ユニット５０２を含むことができる。この従来の通信手段は、少なくとも１つの送信機と、少なくとも１つの受信機とを含むことができる。上記プロセッサによって実行可能な命令は、メモリ５０４に記憶されたコンピュータプログラム５０５として構成することができる。
【００５５】
コンピュータプログラム５０５はコンピュータ可読コード手段を含むことができ、この手段は、ツールコントローラ１６ａにおいて実行された時に、説明した実施形態のいずれかにおいて説明したステップをツールコントローラに実行させる。このコンピュータプログラムは、プロセッサに接続可能なコンピュータプログラム製品に含めることができる。コンピュータプログラム製品は、メモリ５０４とすることができる。メモリ５０４は、例えばＲＡＭ、ＲＯＭ又はＥＥＰＲＯＭとして実現することができる。さらに、コンピュータプログラムは、ＣＤ、ＤＶＤ又はフラッシュメモリなどの別個のコンピュータ可読媒体に含め、ここからメモリ５０４にダウンロードすることもできる。或いは、コンピュータプログラムは、サーバ、又はツールコントローラがその通信ユニット５０２を介してアクセスできる通信システムに接続された他のいずれかのエンティティに記憶することもできる。コンピュータプログラムは、これらのサーバからメモリ５０４にダウンロードすることができる。
【００５６】
上記の説明は複数の特異性を含むが、これらは、本明細書で説明した概念の範囲を限定するものではなく、説明した概念のいくつかの例示的な実施形態の例示を行うものにすぎないと解釈すべきである。現在説明している概念の範囲は、当業者にとって明らかになる他の実施形態を完全に含み、従って現在説明している概念の範囲は制限されるものでないと理解されるであろう。単数形の要素についての言及は、別途明確に示していない限り「唯一の」を意味するものではなく、むしろ「１又は２以上の」を意味するものである。本明細書には、当業者に周知の上述した実施形態の要素との全ての構造的及び機能的同等物が引用により明示的に組み入れられ、本明細書に含まれるように意図される。さらに、現在説明している概念によって解決しようとしているありとあらゆる課題が本明細書に含まれるようにするために、装置又は方法がこれらの課題に対処する必要はない。
【符号の説明】
【００５７】
１０  ツールサーバ
１１  データベース
１２  クライアント
１４  ハブ
１６、１６ａ  ツールコントローラ
１８、１８ａ  作業ツール
【図１】
2017521026.tif 000007
【図２】
2017521026.tif 000008
【図３】
2017521026.tif 000009
【図４】
2017521026.tif 000010
【図５】
2017521026.tif 000011
【図６】
2017521026.tif 000012
【図７】
2017521026.tif 000013
【図８】
2017521026.tif 000014
【国際調査報告】
2017521026.tif 000015
2017521026.tif 000016