(57)【特許請求の範囲】
【請求項１】
クライアント装置と、製造装置を含む工場設備の稼働状況を示す時刻毎の３次元座標の情報を取得する監視装置と、を備えた監視システムであって、
前記監視装置は、
時刻毎の前記３次元座標および前記クライアント装置が受け付けた再生の指示に基づいて、前記工場設備の稼働状況を示す画像の情報を前記３次元座標にどのように組み合わせて表示するかについての指令を記述する軌跡データを作成する軌跡データ作成部と、
前記作成された軌跡データを前記クライアント装置に送信する送信部と、
を備え、
前記クライアント装置は、
表示部と、
前記軌跡データ、前記３次元座標の情報および前記画像の情報に基づいて画像データを作成する軌跡データ解釈部と、
前記指示に基づいて、前記作成された画像データを用いて前記表示部に映像を表示させるシミュレータ部と、
を備えることを特徴とする監視システム。
【請求項２】
前記再生の指示は、現在時刻からの順方向の再生であるリアルタイム再生の指示、過去の時刻からの順方向の再生である通常再生の指示、および逆再生時刻からの逆方向の再生である逆再生の指示のうちの何れかである
ことを特徴とする請求項１に記載の監視システム。
【請求項３】
前記軌跡データ作成部は、前記工場設備が扱うワークの前記３次元座標にも基づいて前記軌跡データを作成する
ことを特徴とする請求項１または２に記載の監視システム。
【請求項４】
前記監視装置は、
前記工場設備が備える製造装置の制御装置が発するアラーム情報を検出して、前記クライアント装置に通知するアラーム監視部をさらに備える
ことを特徴とする請求項３に記載の監視システム。
【請求項５】
前記３次元座標の情報は、Ｐａｒａｓｏｌｉｄ、ＩＧＥＳ、ＳＴＥＰ、ＳＴＬ、ＶＰＳ、ＶＲＭＬ、ＣＡＴＩＡ  Ｖ５、Ｐｒｏ／Ｅ、ＮＸ、Ｉ-ｄｅａｓまたはＪＴのファイル形式で保持されている
ことを特徴とする請求項１から４のいずれか１つに記載の監視システム。
【請求項６】
前記画像の情報は、ＤＸＦ、ＤＷＧ、ＭＥ-１０、ＩＧＥＳ、ＭｉｃｒｏＣＡＤＡＭ図面、ＤＭＮＤＯＳ、ＭＣＤまたはＢＭＩのファイル形式で保持されている
ことを特徴とする請求項１から５のいずれか１つに記載の監視システム。
【請求項７】
前記シミュレータ部は、
前記再生の指示に基づいて、前記リアルタイム再生、前記通常再生、および前記逆再生のうちの何れかで、前記表示部に前記映像を表示させる
ことを特徴とする請求項２に記載の監視システム。
【請求項８】
前記３次元座標の情報を取得するロギング部と、
前記ロギング部によって取得された前記３次元座標の情報を保存するデータベースと、
を更に備え、
前記監視装置は、前記データベースから前記３次元座標の情報を取得する
ことを特徴とする請求項１に記載の監視システム。
【請求項９】
前記工場設備の３次元形状に対する視点位置に基づいて、前記シミュレータ部は前記視点位置から観た前記３次元形状の動作をシミュレートした前記映像を前記表示部に表示する
ことを特徴とする請求項１に記載の監視システム。
【請求項１０】
前記クライアント装置は、前記工場設備が備える製造装置の制御装置が前記製造装置を制御する制御プログラムの修正指示を受け付ける
ことを特徴とする請求項１に記載の監視システム。
【請求項１１】
前記監視装置において前記３次元座標の情報を保持しているファイルのファイル形式のデータフォーマットと、前記制御プログラムに含まれる３次元座標のデータのデータフォーマットとが同一である
ことを特徴とする請求項１０に記載の監視システム。
【請求項１２】
クライアント装置と、製造装置を含む工場設備の稼働状況を示す時刻毎の３次元座標の情報を取得する監視装置と、を備えた監視システムの監視方法であって、
時刻毎の前記３次元座標および前記クライアント装置が受け付けた再生の指示に基づいて、前記工場設備の稼働状況を示す画像の情報を前記３次元座標にどのように組み合わせて表示するかについての指令を記述する軌跡データを前記監視装置が作成するステップと、
前記監視装置が前記軌跡データを前記クライアント装置に送信するステップと、
前記軌跡データ、前記３次元座標の情報および前記画像の情報に基づいて、前記クライアント装置が画像データを作成するステップと、
前記指示に基づいて、前記画像データを用いて前記クライアント装置の表示部に映像を表示させるステップと、
を備えることを特徴とする監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工場設備の保守のための監視システムおよび監視方法に関する。
【背景技術】
【０００２】
従来の監視カメラからなる監視装置は、監視カメラの一方向からの録画になる為、監視カメラの死角となる製造現場の詳細な動作については再生することが不可能であり、ロボットといった製造装置にトラブルが発生したときの原因特定に時間がかかるまたは原因特定が困難であるという問題があった。また、監視装置からトラブルを通知されても、トラブルを解決するために、ユーザが製造現場に行ってトラブルを再現および確認して、原因を特定する必要があった。【０００３】
特許文献１においては、２台のロボット制御装置と１台のモニタ装置とを接続して、２台のロボットの動作状況を１つのモニタ装置の表示画面にリアルタイムに描画することで、ロボットの動作状況を再現するシステムが提案されている。具体的には、モニタ装置は通信ネットワークを介して周期的にロボットの関節角の現在値をロボット制御装置上の関節角サーバから収集し、ロボットの描画データを更新している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平７−６４６１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１のシステムは、ロボットの動作状況をモニタすることを目的としており、ロボットの関節角の現在値のみを収集してシミュレーションを実行している。したがって、関節角の現在値を用いてロボットのシミュレーションを再確認することは出来ても、ベルトコンベア上の搬送物とロボットとの衝突といった設備稼働状況下でのトラブルをリアルにシミュレーションすることはできず、シミュレーションを活用してトラブルの対策をすることは出来なかった。【０００６】
本発明は、上記に鑑みてなされたものであって、製造装置を含む工場設備の稼働状況を模擬することを可能にする監視システムおよび監視方法を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明の監視システムは、クライアント装置と、監視装置とを備える。前記監視装置は、時刻毎の３次元座標およびクライアント装置が受け付けた再生の指示に基づいて、工場設備の稼働状況を示す画像の情報を３次元座標にどのように組み合わせて表示するかについての指令を記述する軌跡データを作成する軌跡データ作成部と、作成された軌跡データをクライアント装置に送信する送信部とを備える。クライアント装置は、表示部と、軌跡データ、３次元座標の情報および画像の情報に基づいて画像データを作成する軌跡データ解釈部と、前記指示に基づいて、作成された画像データを用いて表示部に映像を表示させるシミュレータ部とを備える。
【発明の効果】
【０００８】
本発明にかかる監視装置は、製造装置を含む工場設備の稼働状況を模擬することが可能になるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態１にかかる工場設備の構成を示すブロック図
【図２】実施の形態１にかかる監視システムの詳細な構成を示すブロック図
【図３】実施の形態１にかかるロギング部の動作を説明するフローチャート
【図４】実施の形態１にかかるクライアントおよびサーバの処理を説明するフローチャート
【図５】実施の形態１にかかる「リアルタイム再生」を説明する図
【図６】実施の形態１にかかる「通常再生」を説明する図
【図７】実施の形態１にかかる「逆再生」を説明する図
【図８】実施の形態１にかかるクライアントおよびサーバの処理の流れを説明する図
【図９】実施の形態１にかかるクライアントおよびサーバの処理の流れを説明する別の図
【図１０】実施の形態１にかかるスクリプトの構成を示す図
【図１１】実施の形態１にかかるスクリプト関連ファイルの構成を示す図
【図１２】実施の形態１にかかる「通常再生」の実行を説明する図
【図１３】実施の形態１にかかる「逆再生」の実行を説明する図
【図１４】実施の形態１にかかる「通常再生」の実行中の表示部の画面を示す図
【図１５】実施の形態１におけるトラブル発生時のクライアントおよびサーバの処理を説明するフローチャート
【図１６】実施の形態１におけるトラブル発生時のクライアントおよびサーバの処理の流れを説明する図
【図１７】実施の形態１におけるトラブル対処時のクライアントの処理の流れを説明する図
【図１８】実施の形態１におけるトラブル対処時のサーバの処理の流れを説明する図
【図１９】実施の形態１にかかるロギング部、クライアントまたはサーバの機能の一部をコンピュータで実現する場合のハードウェア構成を示す図
【発明を実施するための形態】
【００１０】
以下に、本発明の実施の形態にかかる監視システムおよび監視方法を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１１】
実施の形態１．
図１は、本発明の実施の形態１にかかる工場設備１の構成を示すブロック図である。実施の形態１にかかる工場設備１は、製造ラインとなる搬送装置であるベルトコンベア１９０と、製造装置であるロボット１６１，１６２と、製造装置の制御装置であるロボット制御装置１５１，１５２と、を備える。ベルトコンベア１９０により搬送物であるワーク１７０が搬送される。図１では、工場設備１が扱うワーク１７０として自動車の例が示されている。ワーク１７０に対して作業を行うロボット１６１，１６２には、それぞれを制御するロボット制御装置１５１，１５２が接続されている。工場設備１には、さらに、ワーク１７０の位置を検出するセンサ１８０と、ロボット１６１の温度を検出するセンサ１８１と、ロボット１６２の温度を検出するセンサ１８２と、が設けられている。ロボット１６１，１６２の温度とは、具体的には、ロボット１６１，１６２を構成するロボットアームの各関節に相当する各軸の温度である。ロボット制御装置１５１，１５２、センサ１８０，１８１，１８２およびベルトコンベア１９０はネットワーク２００に接続されている。なお、ネットワーク２００は、有線または無線のいずれであってもかまわない。
【００１２】
工場設備１には、ロボット１６１，１６２およびワーク１７０の状態を監視する監視システム１００が設けられている。監視システム１００は、ロギング機能を有するロギング部１１０と、記憶装置に保持されるデータベース１２０と、監視装置であるサーバ１３０と、工場設備１の動作を模擬する動画を表示するクライアント装置であるクライアント１４０と、を備える。クライアント１４０は、工場設備１の３次元形状の動作をシミュレートして表示する。ロギング部１１０、データベース１２０、サーバ１３０およびクライアント１４０はネットワーク２００に接続されている。ロギング部１１０、サーバ１３０およびクライアント１４０はコンピュータにより実現される。ロギング部１１０およびサーバ１３０は、それぞれ別個のコンピュータにより実現されてもよいが、１つのコンピュータによって両者の機能が実現されてもよい。クライアント１４０は、サーバ１３０から取得したデータに基づいて工場設備１における製造現場の３次元形状の動作を模擬して表示する。
【００１３】
ネットワーク２００を介して、ロギング部１１０は、製造装置を含む工場設備１の稼働状況を示す時刻毎の３次元座標の情報を取得する。工場設備１にはロボット１６１，１６２に加えてベルトコンベア１９０も含まれ、工場設備１の稼働状況にはワーク１７０の状況も含まれる。したがって、ロギング部１１０は、具体的には、ロボット１６１，１６２の各軸の位置および角度、ベルトコンベア１９０の速度、ワーク１７０の位置といったデータを時刻の情報と共に一定周期で収集する。ロギング部１１０は収集した上記データをネットワーク２００経由でデータベース１２０に転送し、データベース１２０に保存する。サーバ１３０はデータベース１２０にアクセスして必要なデータを取得する。クライアント１４０は、製造装置および製造ラインの再生動作のために必要なデータをサーバ１３０に要求する。
【００１４】
図２は、実施の形態１にかかる監視システム１００の詳細な構成を示すブロック図である。図３は、実施の形態１にかかるロギング部１１０の動作を説明するフローチャートである。なお、図２は、簡単のため図１の構成要素の一部の記載を省いてある。
【００１５】
ここで、ロギング部１１０が情報を収集する周期を単位にしたときに、工場設備１の稼働期間がＮ周期であるとする。定められたタイミングで、ロギング部１１０は、ロボット制御装置１５１，１５２、ベルトコンベア１９０およびセンサ１８０，１８１，１８２からデータを収集する（ステップＳ１０１）。具体的には、ロギング部１１０は、ロボット制御装置１５１，１５２からのロボット１６１，１６２の各軸の位置および角度、ベルトコンベア１９０からのベルトコンベア１９０の速度、センサ１８０からのワーク１７０の位置、センサ１８１，１８２からのロボット１６１，１６２の温度といったデータを時刻の情報と共にネットワーク２００を介して収集する。さらに、ロギング部１１０がネットワーク２００を介して収集するデータには、ロボット１６１，１６２の各軸の動きの速度、製造ラインおよび製造装置が設置されている製造現場の温度が含まれていてもよい。
【００１６】
そして、ロギング部１１０は、収集した上記データを時刻毎にデータベース１２０に保存する（ステップＳ１０２）。ロギング部１１０は、ｉ＝１，２，３，・・・，Ｎとｉ＝１からｉ＝ＮになるまでステップＳ１０１およびステップＳ１０２をＮ回繰り返す。これにより、ロギング部１１０は、一定周期毎のロボット１６１，１６２の各軸の位置および角度、ベルトコンベア１９０の速度、ワーク１７０の位置およびロボット１６１，１６２の温度を取得して時刻の情報と共にデータベース１２０に保存することができる。なお、あるタイミングで収集したデータの値と当該タイミングの１周期前に収集した値との差分の絶対値が、定められた値より大きい場合は、ロギング部１１０は、当該タイミングで収集したデータにはノイズが重畳していると判断して、当該データは破棄してデータベース１２０に保存しない。
【００１７】
サーバ１３０は、クライアント１４０の要求に応じて工場設備１の３次元形状の軌跡にかかる軌跡データを作成する軌跡データ作成部１３１と、アラーム情報を取得してクライアント１４０に通知するアラーム監視部１３２と、データベース１２０から取得した情報に基づく３次元形状ファイル１３３と、画像データであるビットマップファイル１３４と、を備える。軌跡データ作成部１３１は、軌跡データを含んだスクリプトまたはスクリプトファイルを作成する。後述するように、スクリプトは軌跡データ以外のデータも記載されているデータファイルであるが、スクリプトファイルには軌跡データしか記載されていない。
【００１８】
３次元形状ファイル１３３は、製造装置を含む工場設備１の稼働状況を示す３次元座標の情報を有するファイルである。３次元形状ファイル１３３は、具体的には、ロボット１６１，１６２の各軸の３次元空間上の位置のデータおよびベルトコンベア１９０上のワーク１７０の３次元空間上の位置のデータを含んだデータである。３次元形状ファイル１３３はロボット１６１，１６２およびワーク１７０を３次元空間上で表示するための骨格または輪郭となる点群の３次元座標の情報を含んでいる。上述したように、ロボット１６１，１６２の各軸の３次元座標のデータは、ロボット制御装置１５１，１５２が有しているロボット１６１，１６２の制御プログラムからロギング部１１０が取得してデータベース１２０に一定周期で時刻の情報と共に保存されている。また、ベルトコンベア１９０上のワーク１７０の３次元座標のデータは、センサ１８０またはベルトコンベア１９０からロギング部１１０が取得してデータベース１２０に一定周期で時刻と共に保存されている。クライアント１４０はデータベース１２０にアクセスして、データベース１２０に保存されているこれらのデータに基づいて、時刻毎の３次元形状ファイル１３３を作成して自らの記憶装置に保存してゆく。３次元形状ファイル１３３のファイル形式はＡｕｔｏＣＡＤ（登録商標）、ＳＯＬＩＤＷＯＲＫＳ（登録商標）またはｉＣＡＤ（登録商標）のデータフォーマットに準拠しているので、３次元形状ファイル１３３はＡｕｔｏＣＡＤ（登録商標）、ＳＯＬＩＤＷＯＲＫＳ（登録商標）またはｉＣＡＤ（登録商標）により読み取り可能である。したがって、３次元形状ファイル１３３のファイル形式は、３次元ファイル形式であるＰａｒａｓｏｌｉｄ、ＩＧＥＳ(Initial  Graphics  Exchange  Specification)、ＳＴＥＰ、ＳＴＬ(Standard  Triangulated  Language)、ＶＰＳ、ＶＲＭＬ(Virtual  Reality  Modeling  Language)、ＣＡＴＩＡ  Ｖ５(Computer  graphics  Aided  Three  dimensional  Interactive  Application  Ｖ５)、Ｐｒｏ／Ｅ、ＮＸ、Ｉ-ｄｅａｓまたはＪＴといったファイル形式であってもよい。また、３次元形状ファイル１３３のファイル形式は、上記したような既存の形式に限定されず、独自なまたは新たなファイル形式であってもかまわない。
【００１９】
ビットマップファイル１３４は、製造装置を含む工場設備１の稼働状況を示す画像の情報を有するファイルである。ビットマップファイル１３４は、具体的には、３次元形状ファイル１３３が示す骨格または輪郭に肉付けして３次元空間におけるロボット１６１，１６２およびワーク１７０を作画するために必要となるロボット１６１，１６２およびワーク１７０の画像の情報を示すファイルである。すなわち、ビットマップファイル１３４は、３次元形状ファイル１３３が示す点群に沿って３次元空間上で貼り付ける画像の情報である。ビットマップファイル１３４のファイル形式はＡｕｔｏＣＡＤ（登録商標）、ＳＯＬＩＤＷＯＲＫＳ（登録商標）またはｉＣＡＤ（登録商標）のデータフォーマットに準拠しているので、ビットマップファイル１３４はＡｕｔｏＣＡＤ（登録商標）、ＳＯＬＩＤＷＯＲＫＳ（登録商標）またはｉＣＡＤ（登録商標）により読み取り可能である。したがって、ビットマップファイル１３４のファイル形式は、ＤＸＦ(Drawing  Exchange  Format)、ＤＷＧ、ＭＥ-１０、ＩＧＥＳ、ＭｉｃｒｏＣＡＤＡＭ図面、ＤＭＮＤＯＳ、ＭＣＤまたはＢＭＩといったファイル形式であってもよい。なお、ＤＷＧは、ＡｕｔｏＣＡＤ（登録商標）の標準ファイル形式である。また、ビットマップファイル１３４のファイル形式は、上記したような既存の形式に限定されず、独自なまたは新たなファイル形式であってもかまわない。
【００２０】
クライアント１４０は、サーバ１３０から取得したスクリプトまたはスクリプトファイルに含まれる軌跡データを解釈する軌跡データ解釈部１４１と、軌跡データ解釈部１４１の解釈結果に基づいて工場設備１の３次元形状の動作シミュレーションを実行するシミュレータ部１４２と、シミュレータ部１４２による３次元形状の動作シミュレーションの結果を表示する表示部１４３と、を備える。
【００２１】
図４は、実施の形態１にかかるクライアント１４０およびサーバ１３０の処理を説明するフローチャートである。図５は、実施の形態１にかかる「リアルタイム再生」を説明する図である。図６は、実施の形態１にかかる「通常再生」を説明する図である。図７は、実施の形態１にかかる「逆再生」を説明する図である。図８は、実施の形態１にかかるクライアント１４０およびサーバ１３０の処理の流れを説明する図である。図９は、実施の形態１にかかるクライアント１４０およびサーバ１３０の処理の流れを説明する別の図である。図１０は、実施の形態１にかかるスクリプトの構成を示す図である。図１１は、実施の形態１にかかるスクリプト関連ファイルの構成を示す図である。図１２は、実施の形態１にかかる「通常再生」の実行を説明する図である。図１３は、実施の形態１にかかる「逆再生」の実行を説明する図である。図１４は、実施の形態１にかかる「通常再生」の実行中の表示部の画面を示す図である。
【００２２】
以下に、実施の形態１にかかるクライアント１４０およびサーバ１３０の処理を説明する。
【００２３】
まず、ユーザは再生または逆再生のいずれかを指示し、クライアント１４０の入力装置がユーザの指示を受け付ける（図４、ステップＳ２０１）。具体的には、ユーザは「リアルタイム再生」、「通常再生」または「逆再生」のいずれかを指示し、クライアント１４０の入力装置はいずれかの指示を受け付ける。
【００２４】
ユーザが「リアルタイム再生」を指示する場合は、現在以降の工場設備１の３次元形状の動作を再生することを望む場合である。現在時刻が１６：００の場合、ユーザは、図５に示すような再生を望んでいる。
【００２５】
ユーザが「通常再生」を指示する場合は、ユーザが希望する過去の再生時刻からの工場設備１の３次元形状の動作を再生することを望む場合なので、再生時刻を共に指定することになる。現在時刻が１６：００で、再生時刻として１５：００が指定された場合、ユーザは、図６に示すような再生を望んでいる。
【００２６】
ユーザが「逆再生」を指示する場合は、ユーザが希望する逆再生時刻からの工場設備１の３次元形状の動作を逆再生することを望む場合なので、逆再生時刻を共に指定することになる。現在時刻および逆再生時刻が共に１６：００の場合、ユーザは、図７に示すような逆再生を望んでいる。
【００２７】
ステップＳ２０１の後、クライアント１４０はサーバ１３０に、必要なデータの送信を要求する（図４、図８、ステップＳ２０２）。このとき、クライアント１４０は、ステップＳ２０１において受け付けた「リアルタイム再生」、「通常再生」または「逆再生」のいずれかの指示および当該指示に応じて定められている期間をサーバ１３０に通知すると共に、当該期間分のデータの送信をサーバ１３０に要求する。指示に応じて定められている期間は、「リアルタイム再生」、「通常再生」または「逆再生」においてデータ転送の纏まりとなるデータの時間の単位となっている。なお、サーバ１３０が「リアルタイム再生」、「通常再生」または「逆再生」に応じて定められている期間を当初から保持していてもかまわない。定められている期間の具体例は、「リアルタイム再生」の場合は１秒、「通常再生」または「逆再生」の場合は５秒といった期間である。そして、クライアント１４０が「リアルタイム再生」、「通常再生」または「逆再生」のいずれを受け付けた場合であっても、ステップＳ２０２から後述するステップＳ２０７までは上記定められている期間に基づいて定期的に繰り返し実行されることになるので、ステップＳ２０２のクライアント１４０からサーバ１３０への要求も定期的に実行されることになる。
【００２８】
クライアント１４０からの要求を受け付けたサーバ１３０は、データベース１２０にアクセスして、必要なデータを取得する（図４、図８、図９、ステップＳ２０３）。必要なデータは、ロボット１６１，１６２を含む工場設備１の稼働状況を示す時刻毎の３次元座標の情報である。必要なデータには、サーバ１３０が３次元形状ファイル１３３を作成するために必要なロボット１６１，１６２の各軸の３次元空間上の時刻毎の位置のデータおよびベルトコンベア１９０上のワーク１７０の３次元空間上の時刻毎の位置のデータが含まれている。必要なデータには、さらにベルトコンベア１９０の時刻毎の速度のデータが含まれる。また、ステップＳ２０３でサーバ１３０がデータベース１２０から取得するデータには、時刻毎のロボット１６１，１６２の温度、時刻毎のロボット１６１，１６２の各軸の角度、各軸の動きの速度、時刻毎の製造現場の温度が含まれていてもよい。そして、ステップＳ２０３でサーバ１３０がデータベース１２０から取得するデータは、上述したようにクライアント１４０が受け付けた「リアルタイム再生」、「通常再生」または「逆再生」の指示に応じて定められている期間分のデータである。
【００２９】
次に、サーバ１３０はデータベース１２０から取得したデータを用いて、クライアント１４０に送信するデータを作成する（図４、ステップＳ２０４）。具体的には、サーバ１３０は、先に説明したように、データベース１２０から取得したロボット１６１，１６２の各軸の３次元空間上の位置のデータおよびベルトコンベア１９０上のワーク１７０の３次元空間上の位置のデータに基づいて、時刻毎の３次元形状ファイル１３３を作成する。さらに、サーバ１３０の軌跡データ作成部１３１は、クライアント１４０が受け付けた「リアルタイム再生」、「通常再生」または「逆再生」のいずれかの指示、当該指示に応じて定められている期間および作成した３次元形状ファイル１３３に基づいて、時刻毎の３次元形状ファイル１３３の点群が示す３次元座標にビットマップファイル１３４の画像をどのように組み合わせて、時系列に沿って連続して表示するかについての指令を記述する軌跡データを作成する。サーバ１３０による軌跡データの作成に際しては、サーバ１３０はロボット１６１，１６２の各軸の角度、各軸の動きの速度を参照してもよい。サーバ１３０の軌跡データ作成部１３１はロボット１６１，１６２の各軸の角度、各軸の動きの速度を参照することで、ロボット１６１，１６２の各軸の動きをより忠実に再現した軌跡データを作成することができる。また、軌跡データ作成部１３１は時刻毎の製造現場の温度を参照することにより、温度によるロボット１６１，１６２への影響を考慮した軌跡データを作成することができる。
【００３０】
サーバ１３０が軌跡データをクライアント１４０に送信するに際しては、軌跡データ作成部１３１が、図１０に示すように１つのデータファイルであるスクリプトを作成する。図１０のスクリプトには、軌跡データの内容が記載されていると共に、ベルトコンベア１９０の速度、さらにはロボット１６１，１６２の各軸の動きの速度、ロボット１６１，１６２の各軸の温度、製造現場の温度といった情報が追記されている。すなわち、スクリプトには、クライアント１４０が工場設備１の稼働状況をシミュレーションする為に必要な情報が含まれている。
【００３１】
なお、サーバ１３０が軌跡データをクライアント１４０に送信するに際して、軌跡データとベルトコンベア１９０の速度といった情報を別々のファイルで送信してもよい。具体的には、図１１に示すように、軌跡データはスクリプトファイルに記載され、ベルトコンベア１９０の速度、さらにはロボット１６１，１６２の各軸の動きの速度が速度ファイルに記載され、ロボット１６１，１６２の各軸の温度および製造現場の温度が温度ファイルに記載されている。サーバ１３０の軌跡データ作成部１３１は軌跡データのみが記載されたスクリプトファイルを作成する。サーバ１３０は、さらにデータベース１２０から取得したデータを用いて、速度ファイルおよび温度ファイルを作成する。スクリプト関連ファイルにおいては、軌跡データを含んだスクリプトファイルとデータベース１２０から得た情報を含むファイルとが分けられているが、スクリプトファイル以外のファイルの構成は図１１に示した構成に限定されない。
【００３２】
そして、サーバ１３０はクライアント１４０にデータを送信する（図４、図９、ステップＳ２０５）。サーバ１３０からクライアント１４０にデータを送信する第一の方法では、定められている期間分の時刻毎の３次元形状ファイル１３３と、ビットマップファイル１３４と、図１０に示すスクリプトと、をサーバ１３０からクライアント１４０に送信する。サーバ１３０からクライアント１４０にデータを送信する第二の方法では、定められている期間分の時刻毎の３次元形状ファイル１３３と、ビットマップファイル１３４と、図１１に示すスクリプトファイル、速度ファイルおよび温度ファイルと、をサーバ１３０からクライアント１４０に送信する。監視システム１００は、サーバ１３０からクライアント１４０にデータを送信する方法として、上記いずれの方法を採用してもかまわない。
【００３３】
サーバ１３０から軌跡データを含んだデータを受信したクライアント１４０の軌跡データ解釈部１４１は、軌跡データを解釈する（図４、ステップＳ２０６）。具体的には、クライアント１４０が受け付けた「リアルタイム再生」、「通常再生」または「逆再生」のいずれかの指示に基づいて、軌跡データ解釈部１４１は、スクリプトまたはスクリプトファイルに含まれる軌跡データを解釈して、時刻毎の３次元形状ファイル１３３の点群が示す３次元座標にビットマップファイル１３４の画像を組み合わせて、時系列に沿って連続して表示するための１画面ずつの画像データを作成する。軌跡データ解釈部１４１は、画像データの作成に際しては、サーバ１３０から受信したベルトコンベア１９０の速度も参照する。軌跡データ解釈部１４１は、画像データの作成に際して、ロボット１６１，１６２の各軸の角度、各軸の動きの速度をさらに参照してもよい。また、軌跡データ解釈部１４１は、画像データの作成に際して、ロボット１６１，１６２の各軸の温度および製造現場の温度を、数値または色を用いて表現してもよい。以上により、軌跡データ解釈部１４１は、ロボット１６１，１６２のみならず、ワーク１７０およびベルトコンベア１９０も模擬した画像データを作成することができる。軌跡データ解釈部１４１は、「リアルタイム再生」、「通常再生」または「逆再生」の指示に応じて定められている期間内を更に細分する時間毎の画像データを連続的に表示すればロボット１６１，１６２、ワーク１７０およびベルトコンベア１９０を模擬した立体グラフィックからなる動画となるように、１画面ずつの画像データを作成する。
【００３４】
そして、クライアント１４０のシミュレータ部１４２は、軌跡データ解釈部１４１が作成した画像データを用いて、表示部１４３に映像を表示させる（図４、ステップＳ２０７）。具体的には、軌跡データ解釈部１４１が作成した画像データを「リアルタイム再生」、「通常再生」または「逆再生」の指示に応じて定められている期間内を更に細分する時刻毎に表示するようにシミュレータ部１４２が表示部１４３を制御することにより、「リアルタイム再生」、「通常再生」または「逆再生」の指示に応じた映像を表示部１４３に表示させることができる。
【００３５】
現在時刻が１６：００である場合、「リアルタイム再生」における映像の再生は図５のように時刻に基づいて順方向に行われ、再生時刻として１５：００が指定された場合の「通常再生」における映像の再生は図１２のように時刻に基づいて順方向に行われる。現在時刻および逆再生時刻が共に１６：００の場合の「逆再生」における映像の再生は図１３のように時刻に基づいて逆方向に行われる。
【００３６】
図１４の画面左側には、「リアルタイム再生」ボタン４０１、「通常再生」ボタン４０２および「逆再生」ボタン４０３が示されており、いずれかのボタンをクリックするといったユーザによる動作をクライアント１４０の入力装置が受け付けることによりステップＳ２０１が実行される。図１４は、クライアント１４０の入力装置がステップＳ２０１で「通常再生」を受け付けて、ステップＳ２０７において「通常再生」を実行中の表示部１４３の画面の様子を示しており、軌跡データ解釈部１４１が作成済みの画像データがサムネイル３０１，・・・３０５，・・・，３１０で表示されており、バー３００がサムネイル３０５の位置にあるので、サムネイル３０５の拡大画面が大画面１３０５として表示されている。このように、クライアント１４０の表示部１４３は、ロボット１６１，１６２の実際の動作のみならず、ワーク１７０およびベルトコンベア１９０の実際の動作も模擬して表示することが可能である。なお、映像の再生中に、ユーザがバー３００を動かすことにより、バー３００の移動をクライアント１４０の入力装置が受け付けると、シミュレータ部１４２は、バー３００の移動先の時刻のサムネイルの拡大画面からの動画を表示部１４３に再生させることができる。
【００３７】
そして、クライアント１４０は、表示を終了するか否かを判断する（図４、ステップＳ２０８）。「逆再生」の場合において、データベース１２０に保存されているデータの最初の時刻までの逆再生が現在行われている場合は、クライアント１４０は、表示部１４３への映像の表示を終了すると判断して（ステップＳ２０８：Ｙｅｓ）、現在取得しているデータ分の逆再生が終了次第、表示を終了する。「逆再生」の場合であって上記以外の場合、「リアルタイム再生」の場合および「通常再生」の場合は、クライアント１４０は、表示部１４３への映像の表示を継続すると判断して（ステップＳ２０８：Ｎｏ）、ステップＳ２０２に戻って、ステップＳ２０２からステップＳ２０７までが繰り返される。
【００３８】
なお、トラブルの原因解析をする際には、ユーザからの視点を変えて工場設備１の３次元形状の動作を再現することが望ましい。したがって、クライアント１４０は、表示部１４３に表示される映像における工場設備１の３次元形状に対する視点位置が入力装置を介して与えられた場合、すなわち３次元形状をユーザが観る方向が与えられた場合、与えられた視点位置から観た３次元形状の動作をシミュレータ部１４２にシミュレートさせる。これによって、シミュレータ部１４２は、ユーザが望む任意の視点位置から観た３次元形状の動作をシミュレートした映像を表示部１４３に表示させることができる。
【００３９】
以上のように、実施の形態１にかかるサーバ１３０によれば、ロボット１６１，１６２およびワーク１７０の動作を模擬することができる。したがって、実施の形態１にかかる監視システム１００によれば、実際の製造現場におけるロボット１６１，１６２の実際の動作のみならず、ワーク１７０およびベルトコンベア１９０の実際の動作も再現表示することができる。これにより、ベルトコンベア１９０上のワーク１７０とロボット１６１，１６２との衝突といったトラブルを模擬して立体グラフィックからなる動画をクライアント１４０において映像表示することができる。
【００４０】
表示部１４３は、通常は、ユーザの指示に基づいて「リアルタイム再生」を実行しているが、ユーザが表示部１４３を常に監視しているとは限らない。製造現場においてトラブルが発生した場合、トラブルが発生した時刻の動作を再度確認したい場合がある。このような場合に、ユーザは、再生時刻と共に「通常再生」を指示または逆再生時刻と共に「逆再生」を指示したりすることができる。指示を受け付けたクライアント１４０は、サーバ１３０を経由したデータベース１２０から必要な情報を収集することにより、所望の時刻からの製造現場の様子を模擬した動画を時間軸上で順方向にも逆方向にも表示部１４３に再生させて、トラブルの発生原因を確認することが可能となる。
【００４１】
そして、実施の形態１にかかる監視システム１００によれば、製造現場から取得した情報を基に立体グラフィックを再生動作させることで、クライアント１４０において、製造現場を模擬した立体グラフィックの視点位置を変更することが容易に可能となる。したがって、従来のようにビデオカメラで製造現場を監視するのとは異なり、実施の形態１にかかる監視システム１００においては、監視エリアの死角が発生しない。これにより、工場設備１の保守が容易となる上、従来のようにビデオカメラを用いて監視する場合に比べて、監視に必要な情報を大幅に削減できるので、通信量の削減にも貢献できる。
【００４２】
実施の形態１にかかる監視システム１００によれば、製造現場においてトラブルが発生したことを、クライアント１４０を介してユーザは知ることができる。以下に、トラブル発生時およびトラブル対処時のクライアント１４０およびサーバ１３０の処理について図を用いて説明する。図１５は、実施の形態１におけるトラブル発生時のクライアント１４０およびサーバ１３０の処理を説明するフローチャートである。図１６は、実施の形態１におけるトラブル発生時のクライアント１４０およびサーバ１３０の処理の流れを説明する図である。図１７は、実施の形態１におけるトラブル対処時のクライアント１４０の処理の流れを説明する図である。図１８は、実施の形態１におけるトラブル対処時のサーバ１３０の処理の流れを説明する図である。
【００４３】
まず、製造現場においてロボット１６１，１６２とワーク１７０との衝突といったトラブルが発生するとアラームが発生する（図１５、ステップＳ３０１）。アラームは、ロボット制御装置１５１，１５２またはベルトコンベア１９０といったトラブルを検知した装置が発する。ネットワーク２００を介してロボット制御装置１５１，１５２またはベルトコンベア１９０が発したアラーム情報を検出したサーバ１３０のアラーム監視部１３２は、アラームの発生をクライアント１４０に通知する（図１５、図１６、ステップＳ３０２）。図１６は、具体例として、ネットワーク２００を介して、ロボット制御装置１５１がアラーム情報をサーバ１３０に通知し、サーバ１３０がアラームの発生をクライアント１４０に通知する様子を示す。アラームの発生をサーバ１３０から通知されたクライアント１４０は、アラームの発生をユーザに通知する（図１５、ステップＳ３０３）。クライアント１４０がユーザにアラームの発生を通知する方法は、表示部１４３を介して通知してもよいし、音声を用いて通知してもよく、その方法は限定されない。このとき、クライアント１４０は、アラームの発生時刻をユーザに通知してもよい。
【００４４】
アラームの発生を通知されたユーザは、図１４の「通常再生」ボタン４０２または「逆再生」ボタン４０３をクリックするといった方法で、「通常再生」または「逆再生」のいずれかを指示し、クライアント１４０の入力装置がユーザの指示を受け付ける（図４、ステップＳ２０１）。クライアント１４０からアラームの発生時刻をユーザが通知されている場合は、ユーザは、ステップＳ２０１に際して、アラームの発生時刻を参考に再生時刻または逆再生時刻を入力して入力装置に受け付けさせてもよい。「通常再生」または「逆再生」のいずれかを受け付けたクライアント１４０は、図４に従って「通常再生」または「逆再生」を実行して（図１５、ステップＳ３０４）、映像を表示部１４３に表示する。
【００４５】
再生動画を見たユーザは、トラブルの原因を詳細に検証することができる。「通常再生」で原因の特定が困難な場合は、「逆再生」により原因の特定が容易になる場合もある。トラブルがワーク１７０とロボット１６１，１６２との衝突である場合、ユーザは、ロボット制御装置１５１，１５２の制御プログラムに記載されているロボット１６１，１６２の制御情報の不備により衝突が発生したと判断出来る場合もある。この場合、ユーザは、ロボット１６１，１６２の動作設定情報を修正する必要がある。具体的には、ユーザは、制御プログラムに記載されている各軸の位置データまたは角度データの修正を指示する。そして、クライアント１４０は、ユーザによる制御プログラムの修正指示を受け付ける（図１５、ステップＳ３０５）。具体的には、ロボット制御装置１５１，１５２の制御プログラムをクライアント１４０が予めネットワーク２００およびサーバ１３０経由で取得していて、ユーザがクライアント１４０の記憶装置が保持している制御プログラムを修正し、修正後の制御プログラムをクライアント１４０が受け付けることによりクライアント１４０は、制御プログラムの修正指示を受け付けてもよい。また、クライアント１４０は、ユーザによる制御プログラムの修正内容を受け付けることにより、制御プログラムの修正指示を受け付けてもよい。
【００４６】
制御プログラムの修正指示を受け付けたクライアント１４０は、当該修正指示をサーバ１３０に送信する（図１５、図１７、ステップＳ３０６）。さらに、制御プログラムの修正指示を受け付けたサーバ１３０は、当該修正指示をロボット制御装置１５１に送信する（図１５、図１８、ステップＳ３０７）。制御プログラムの修正指示を受け付けたロボット制御装置１５１は、制御プログラムを修正する。ロボット制御装置１５１は、受け付けた制御プログラムの修正指示が修正後の制御プログラムであれば、制御プログラムを修正後の制御プログラムで上書きすればよいし、受け付けた制御プログラムの修正指示が制御プログラムの修正内容であれば、当該修正内容に従って、制御プログラムを修正すればよい。
【００４７】
以上説明したように、実施の形態１にかかる監視システム１００においては、製造現場におけるロボット１６１，１６２の実際の動作に加えてワーク１７０およびベルトコンベア１９０の実際の動作も再現表示する映像を監視できるクライアント１４０において、ユーザがロボット１６１，１６２の制御プログラムの修正を指示することができる。これにより、ユーザが製造現場に行かなくても遠隔地からロボット１６１，１６２の制御プログラムを修正することができ、トラブルを迅速に解決することまたは製造現場の無人化が可能となる。また、上記制御プログラムに含まれるロボット１６１，１６２の各軸の３次元座標のデータのデータフォーマットにサーバ１３０が保持する３次元形状ファイル１３３のファイル形式を準拠させてもよい。すなわち、制御プログラムにおけるロボット１６１，１６２の各軸の３次元座標のデータのデータフォーマットと、３次元形状ファイル１３３のファイル形式のデータフォーマットとを同一にしてもよい。これにより、監視システム１００においては、工場設備１の稼働状況を示す３次元座標の情報の保持と、制御プログラムに記載される製造装置の３次元座標のデータの作成および修正とにおいて、３次元ＣＡＤ（Computer  Aided  Design）で使用されている同一のデータフォーマットのファイル形式で３次元座標の情報を扱うことができるので、工場設備１のメンテナンスを容易にすることができる。制御プログラムにおけるロボット１６１，１６２の各軸の３次元座標のデータのデータフォーマットと、３次元形状ファイル１３３のファイル形式のデータフォーマットとが同一の一般的なフォーマットであれば、一般の３次元ＣＡＤソフトウェアで利用することができる。
【００４８】
図１９は、実施の形態１にかかるロギング部１１０、クライアント１４０またはサーバ１３０の機能の一部をコンピュータで実現する場合のハードウェア構成を示す図である。ロギング部１１０、クライアント１４０またはサーバ１３０の機能の一部をコンピュータで実現する場合、ロギング部１１０、クライアント１４０またはサーバ１３０の機能の一部は、図１９に示すようにＣＰＵ（Central  Processing  Unit）２０１、メモリ２０２、記憶装置２０３、表示装置２０４および入力装置２０５により実現される。ロギング部１１０、クライアント１４０またはサーバ１３０の機能の一部は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアは、プログラムとして記述されて記憶装置２０３に格納される。ＣＰＵ２０１は、記憶装置２０３に記憶されたソフトウェアまたはファームウェアをメモリ２０２に読み出して実行することにより、ロギング部１１０、クライアント１４０またはサーバ１３０の機能の一部を実現する。すなわち、ロギング部１１０、クライアント１４０またはサーバ１３０は、それらの機能の一部がコンピュータにより実行されるときに、ロギング部１１０、クライアント１４０またはサーバ１３０の機能の一部を実施するステップが結果的に実行されることになるプログラムを格納するための記憶装置２０３を備える。また、これらのプログラムは、ロギング部１１０、クライアント１４０またはサーバ１３０の機能の一部が実現する処理をコンピュータに実行させるものであるともいえる。メモリ２０２は、ＲＡＭ（Random  Access  Memory）といった揮発性の記憶領域が該当する。記憶装置２０３は、ＲＯＭ（Read  Only  Memory）、フラッシュメモリといった不揮発性または揮発性の半導体メモリ、磁気ディスクが該当する。表示装置２０４の具体例は、モニタ、ディスプレイである。クライアント１４０の表示部１４３は、表示装置２０４により実現される。入力装置２０５の具体例は、キーボード、マウス、タッチパネルである。
【００４９】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【００５０】
１  工場設備、１００  監視システム、１１０  ロギング部、１２０  データベース、１３０  サーバ、１３１  軌跡データ作成部、１３２  アラーム監視部、１３３  ３次元形状ファイル、１３４  ビットマップファイル、１４０  クライアント、１４１  軌跡データ解釈部、１４２  シミュレータ部、１４３  表示部、１５１，１５２  ロボット制御装置、１６１，１６２  ロボット、１７０  ワーク、１８０，１８１，１８２  センサ、１９０  ベルトコンベア、２０１  ＣＰＵ、２０２  メモリ、２０３  記憶装置、２０４  表示装置、２０５  入力装置、３００  バー、３０１，３０５，３１０  サムネイル、４０１  「リアルタイム再生」ボタン、４０２  「通常再生」ボタン、４０３  「逆再生」ボタン、１３０５  大画面。
【要約】
監視装置（１３０）は、工場設備の稼働状況を示す時刻毎の３次元座標の情報を取得し、時刻毎の３次元座標および受け付けた再生の指示に基づいて、工場設備の稼働状況を示す画像の情報を３次元座標にどのように組み合わせて表示するかについての指令を記述する軌跡データを作成する軌跡データ作成部（１３１）を備える。【図１】
0006430079.tif 000002
【図２】
0006430079.tif 000003
【図３】
0006430079.tif 000004
【図４】
0006430079.tif 000005
【図５】
0006430079.tif 000006
【図６】
0006430079.tif 000007
【図７】
0006430079.tif 000008
【図８】
0006430079.tif 000009
【図９】
0006430079.tif 000010
【図１０】
0006430079.tif 000011
【図１１】
0006430079.tif 000012
【図１２】
0006430079.tif 000013
【図１３】
0006430079.tif 000014
【図１４】
0006430079.tif 000015
【図１５】
0006430079.tif 000016
【図１６】
0006430079.tif 000017
【図１７】
0006430079.tif 000018
【図１８】
0006430079.tif 000019
【図１９】
0006430079.tif 000020