IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ファナック株式会社の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-24
(45)【発行日】2024-07-02
(54)【発明の名称】データ管理装置、及びデータ管理方法
(51)【国際特許分類】
   G06F 11/36 20060101AFI20240625BHJP
   G06F 8/60 20180101ALI20240625BHJP
【FI】
G06F11/36 184
G06F8/60
【請求項の数】 6
(21)【出願番号】P 2022526948
(86)(22)【出願日】2021-05-20
(86)【国際出願番号】 JP2021019120
(87)【国際公開番号】W WO2021241384
(87)【国際公開日】2021-12-02
【審査請求日】2022-12-19
(31)【優先権主張番号】P 2020092572
(32)【優先日】2020-05-27
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【弁理士】
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【弁理士】
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】青木 二寛
【審査官】▲はま▼中 信行
(56)【参考文献】
【文献】特開2009-288954(JP,A)
【文献】特開平09-200209(JP,A)
【文献】特開2009-026248(JP,A)
【文献】特開2002-268728(JP,A)
【文献】特開2016-115161(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/00 ー 8/77
G06F 11/36
(57)【特許請求の範囲】
【請求項1】
少なくとも工作機械、射出成形機、産業用ロボットを含む産業機械、前記産業機械に配置されるセンサ、前記産業機械を制御する制御装置、搬送車、コンベアを含む周辺機器のいずれかの機器から正常系又は異常系のプログラムの実行に応じて出力される複数の動作それぞれのデータを入力する入力部と、
前記入力部により入力された前記複数の動作それぞれのデータを前記機器における複数の動作それぞれの実行に対応するテストデータとして記憶する記憶部と、
外部装置から前記複数の動作のうち2以上の動作を組み合わせた前記機器のテストデータが要求されると、前記記憶部に記憶された前記2以上の動作のテストデータを組み合わせて要求されたテストデータとして編集して前記記憶部に記憶する編集部と、
要求されたテストデータを前記記憶部から取得し、要求されたテストデータを前記外部装置に送信制御する通信制御部と、
前記通信制御部の送信制御に基づいて、要求されたテストデータを前記外部装置に送信する通信部と、
を備えるデータ管理装置。
【請求項2】
少なくとも工作機械、射出成形機、産業用ロボットを含む産業機械、前記産業機械に配置されるセンサ、前記産業機械を制御する制御装置、搬送車、コンベアを含む周辺機器のいずれかを含む複数の機器それぞれから正常系又は異常系のプログラムの実行に応じて出力されるデータを入力する入力部と、
前記入力部により入力された前記複数の機器それぞれのデータを前記複数の機器それぞれのテストデータとして記憶する記憶部と、
外部装置から前記複数の機器が同時に動作した場合のテストデータが要求されると、前記記憶部に記憶された前記複数の機器のテストデータを組み合わせて要求されたテストデータとして編集して前記記憶部に記憶する編集部と、
要求されたテストデータを前記記憶部から取得し、要求されたテストデータを前記外部装置に送信制御する通信制御部と、
前記通信制御部の送信制御に基づいて、要求されたテストデータを前記外部装置に送信する通信部と、
を備えるデータ管理装置。
【請求項3】
前記通信制御部は、前記外部装置から要求された送信間隔又は送信時刻に基づいて要求されたテストデータの送信制御を行う、請求項1又は請求項2に記載のデータ管理装置。
【請求項4】
少なくとも工作機械、射出成形機、産業用ロボットを含む産業機械、前記産業機械に配置されるセンサ、前記産業機械を制御する制御装置、搬送車、コンベアを含む周辺機器のいずれかの機器から正常系又は異常系のプログラムの実行に応じて出力される複数の動作それぞれのデータを入力し、
入力された前記複数の動作それぞれのデータを前記機器における複数の動作それぞれの実行に対応するテストデータとして記憶部に記憶し、
外部装置から前記複数の動作のうち2以上の動作を組み合わせた前記機器のテストデータが要求されると、前記記憶部に記憶された前記2以上の動作のテストデータを組み合わせて要求されたテストデータとして編集して前記記憶部に記憶し、
要求されたテストデータを前記記憶部から取得し、要求されたテストデータを前記外部装置に送信制御し、
前記送信制御に基づいて、要求されたテストデータを前記外部装置に送信する、
データ管理方法。
【請求項5】
少なくとも工作機械、射出成形機、産業用ロボットを含む産業機械、前記産業機械に配置されるセンサ、前記産業機械を制御する制御装置、搬送車、コンベアを含む周辺機器のいずれかを含む複数の機器それぞれから正常系又は異常系のプログラムの実行に応じて出力されるデータを入力し、
入力された前記複数の機器それぞれのデータを前記複数の機器それぞれのテストデータとして記憶部に記憶し、
外部装置から前記複数の機器が同時に動作した場合のテストデータが要求されると、前記記憶部に記憶された前記複数の機器のテストデータを組み合わせて要求されたテストデータとして編集して前記記憶部に記憶し、
要求されたテストデータを前記記憶部から取得し、要求されたテストデータを前記外部装置に送信制御し、
前記送信制御に基づいて、要求されたテストデータを前記外部装置に送信する、
データ管理方法。
【請求項6】
前記外部装置から要求された送信間隔又は送信時刻に基づいて要求されたテストデータの送信制御を行う、請求項4又は請求項5に記載のデータ管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ管理装置、及びデータ管理方法に関する。
【背景技術】
【0002】
工作機械や産業用ロボット等の機器に発生する異常を検知するアプリケーションや、当該機器に含まれる工具等の部品の劣化の度合いを監視するアプリケーション等が、工作機械メーカやサードパーティ等により開発されている。アプリケーションの開発では、アプリケーションに応じた機器のテストデータを予め用意し、アプリケーションが設計通りに動作するか否かのデバッグ等を行う必要がある。
この点、アプリケーションの開発を、パーソナルコンピュータ上で動作してデバイスの動作をエミュレートするデバイスエミュレータを利用して、効率的にアプリケーションを開発する技術が知られている。例えば、特許文献1参照。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2004-185595号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
工作機械メーカやサードパーティ等のアプリケーション開発者がアプリケーションを開発する際、実際の工作機械や産業用ロボット等の機器を用意してテストすることはかなりのコストや工数がかかり、スムーズに開発することが難しい。
換言すれば、開発したアプリケーションが対応する機器を全て揃えてテストすることは難しく、アプリケーション開発者が色々なテストデータを用意することは難しい。
【0005】
そこで、アプリケーションをテストするための様々な機器のテストデータを提供することが望まれている。
【課題を解決するための手段】
【0006】
(1)本開示のデータ管理装置の一態様は、少なくとも1つの機器から出力されるデータを入力する入力部と、前記入力部により入力された前記データをテストデータとして記憶する記憶部と、外部装置からの要求に基づいて要求されたテストデータを前記記憶部から取得し、要求されたテストデータを前記外部装置に送信制御する通信制御部と、前記通信制御部の送信制御に基づいて、要求されたテストデータを前記外部装置に送信する通信部と、を備える。
【0007】
(2)本開示のデータ管理方法の一態様は、少なくとも1つの機器から出力されるデータを入力し、入力された前記データをテストデータとして記憶部に記憶し、外部装置からの要求に基づいて要求されたテストデータを前記記憶部から取得し、要求されたテストデータを前記外部装置に送信制御し、前記送信制御に基づいて、要求されたテストデータを前記外部装置に送信する。
【発明の効果】
【0008】
一態様によれば、アプリケーションをテストするための様々な機器のテストデータを提供することができる。
【図面の簡単な説明】
【0009】
図1】第1実施形態に係るデータ管理装置の機能構成を示す図である。
図2】ロボットの正常系の時系列データの一例を示す図である。
図3】ロボットの異常系の時系列データの一例を示す図である。
図4】制御装置の正常系の時系列データの一例を示す図である。
図5】センサの時系列データの一例を示す図である。
図6】編集ツールの設定画面の一例を示す図である。
図7】新たな異常系のテストデータを作成するための編集ツールの設定画面の一例を示す図である。
図8】正常系と異常系とが組み合わさった新たなテストデータを作成するための編集ツールの設定画面の一例を示す図である。
図9】第1実施形態に係るテストデータの編集処理を例示するフローチャートである。
図10】編集ツールの設定画面の一例を示す図である。
図11】3つのロボットの機器それぞれが稼働する各工程の時系列の一例を示す図である。
図12】滞留が発生する場合のテストデータの編集処理を例示するフローチャートである。
図13】編集ツールの設定画面の一例を示す図である。
図14】編集ツールの設定画面の一例を示す図である。
図15】複数の機器を選択する場合のテストデータの編集処理を例示するフローチャートである。
図16】ロボットの軸の減速機の劣化レベルの時系列データの一例を示す図である。
図17A】日時欄及び劣化レベル欄を有する減速機診断の時系列データの一例を示す図である。
図17B】編集ツールの設定画面の一例を示す図である。
図18】時系列データから所望のデータを切り出す場合のテストデータの編集処理を例示するフローチャートである。
図19】編集ツールの設定画面の一例を示す図である。
図20】切り出す期間を指定する場合のテストデータの編集処理を例示するフローチャートである。
図21A】編集ツールの設定画面の一例を示す図である。
図21B】劣化レベル変更後の編集ツールの設定画面の一例を示す図である。
図22】時系列データからパラメータを変更する場合のテストデータの編集処理を例示するフローチャートである。
図23】データ管理装置の処理について説明するフローチャートである。
図24】第2実施形態に係るデータ管理装置の機能構成を示す図である。
図25】送信ツールの設定画面の一例を示す図である。
図26】第2実施形態に係るテストデータの送信処理を例示するフローチャートである。
図27】送信ツールの設定画面の一例を示す図である。
図28】送信間隔を変更する場合のテストデータの送信処理を例示するフローチャートである。
図29A】編集ツールの設定画面の一例を示す図である。
図29B】選択したテストデータのタイムスタンプの一覧を含む編集ツールの設定画面の一例を示す図である。
図29C】選択したテストデータのタイムスタンプの編集後の編集ツールの設定画面の一例を示す図である。
図30】タイムスタンプを変更する場合のテストデータの編集処理を例示するフローチャートである。
【発明を実施するための形態】
【0010】
以下、第1実施形態の一例について説明する。
<第1実施形態>
図1は、第1実施形態に係るデータ管理装置1の機能構成を示す図である。
データ管理装置1は、工場内で利用される様々な機器2、及びアプリケーションを開発する機器2の製造メーカやサードパーティ等のコンピュータ3と通信接続されたサーバ等の情報処理装置である。
【0011】
機器2は、例えば、制御装置、ロボット、センサ等を含み、データ管理装置1は、機器2それぞれと通信するためのインタフェースを備える。なお、機器2は、制御装置、ロボット、センサに限定されず、工作機械、射出成形機、産業用ロボット等の産業機械、搬送車やコンベア等の周辺機器、作業者が入力を行うタブレット端末やスマートフォン等の携帯端末を含んでもよい。
また、2以上の複数の制御装置、複数のロボット、複数のセンサ等が機器2としてデータ管理装置1と接続されてもよい。
また、制御装置の機器2は、工作機械を制御する数値制御装置(CNC)として説明するが、ロボットを制御するロボット制御装置でもよい。
【0012】
コンピュータ3は、パーソナルコンピュータ、タブレット型端末、又はスマートフォン等のコンピュータ装置である。コンピュータ3は、開発しているアプリケーション30の動作確認やデバッグを行うために、データ管理装置1にテストデータの送信を要求し、要求したテストデータを取得する。なお、アプリケーション30は、コンピュータ3に含まれるHDD等の記憶部(図示しない)に記憶され、コンピュータ3に含まれるプロセッサ等の制御部(図示しない)により実行される。
また、2以上の複数のコンピュータ3がデータ管理装置1と接続されてもよい。
【0013】
データ管理装置1は、制御部10と記憶部20とを有する。また、制御部10は、入力部11、編集部12、通信制御部13、及び通信部14を有する。制御部10は、記憶部20に記憶された所定のソフトウェア(データ管理プログラム)を実行することで、本実施形態の各機能を実現する。
【0014】
記憶部20は、SSD(Solid State Drive)やHDD(Hard Disk Drive)等であり、所定のソフトウェア(データ管理プログラム)を記憶する。また、記憶部20は、ロボットデータ21、CNCデータ22、及びセンサデータ23の記憶領域を有する。
【0015】
<ロボットデータ21>
図2は、ロボットの正常系の時系列データの一例を示す図である。
図2に示すように、例えば、ロボットの機器2から複数の項目の時系列データが、所定のサンプリング周期毎に出力されて後述する入力部11に入力され、ロボットデータ21の記憶領域に順次記録されていく。この例では、キー情報となるロボットの機種名と制御プログラム名とともに、動作状態やアラーム情報等が記録されている。
また、この例では、装置番号「R001」で機種「modelA」のロボットの機器2が制御プログラム「PROG_001」を実行しワーク把持動作を行った場合における、制御プログラムの開始から終了までの間に当該ロボットから出力される各種項目の時系列データが500msec周期で記録されている。図2の時系列データは、例えば、データ属性が装置番号「R001」、機種「modelA」、プログラム「PROG_001」、状態「正常系」とするファイル名「data001」のテストデータとして、ロボットデータ21に格納される。
【0016】
なお、制御プログラム「PROG_001」の開始と終了を知らせる方法として、図2に示すように、ロボットの機器2が制御プログラム「PROG_001」を開始すると制御プログラム名とともに、ロボットのタスク状態情報として「RUNNING」を出力し、終了すると「END」を出力するようにしてもよい。そうすることで、データ管理装置1は、時系列データのロボットのタスクの状態情報が「RUNNING」に切り替わったことをトリガーにして制御プログラム「PROG_001」の開始を検出し、「END」に切り替わったことをトリガーにして終了を検出することができる。
【0017】
同様に、図示しないが、装置番号「R001」で機種「modelA」のロボットの機器2が制御プログラム「PROG_001」に換えて、制御プログラム「PROG_002」を実行しワークセット動作を行った場合には、データ管理装置1は、制御プログラムの開始から終了までの間に当該ロボットから出力される各種項目の時系列データを、500msec等の所定のサンプリング周期でロボットデータ21に記録するようにしてもよい。この場合、データ管理装置1は、時系列データを、データ属性が装置番号「R001」、機種「modelA」、プログラム「PROG_002」、状態「正常系」とするファイル名「data002」のテストデータとして、ロボットデータ21に格納することができる。
【0018】
また、図示しないが、装置番号「R001」で機種「modelA」のロボットの機器2が他の制御プログラム「PROG_003」を実行しねじ締付動作を行った場合には、データ管理装置1は、制御プログラムの開始から終了までの間に当該ロボットから出力される各種項目の時系列データを、500msec等の所定のサンプリング周期で記録するようにしてもよい。この場合、データ管理装置1は、時系列データを、データ属性が装置番号「R001」、機種「modelA」、プログラム「PROG_003」、状態「正常系」とするファイル名「data003」のテストデータとして、ロボットデータ21に格納することができる。
【0019】
また、装置番号「R001」で機種「modelA」のロボットの機器2にn個(例えば、100個)の正常系の制御プログラムをそれぞれ実行させることで、データ管理装置1は、ロボットデータ21に、ロボットから出力されたn個の正常系の時系列データをファイル名「data001」から「data00n」として格納するようにしてもよい。この場合、データ管理装置1は、記憶部20に、n個の制御プログラムと、対応するn個の正常系の時系列データのファイル名と、を対応付けした正常系ロボットデータテーブル(図示しない)を記憶することができる(nは2以上の整数)。
【0020】
また、データ管理装置1は、ロボットデータ21に、ロボットの機器2が動作中に停止する等の異常系の時系列データをテストデータとして記憶してもよい。
図3は、ロボットの異常系の時系列データの一例を示す図である。
図3に示すように、例えば、装置番号「R001」で機種「modelA」のロボットの機器2に、ワーク把持動作中に停止しpower offのアラーム情報を出力する制御プログラム「PROG_001-e」を実行させることで、制御プログラムの開始から停止するまでの間に当該ロボットから出力される各種項目の時系列データが500msec周期で記録されている。この例では、サンプリング3のアラーム情報に異常を示すアラーム番号「1」とアラームメッセージ「power off」が記録されている。図3の時系列データは、例えば、データ属性が装置番号「R001」、機種「modelA」、プログラム「PROG_001-e」、状態「異常系」とするファイル名「data001-e」のテストデータとして、ロボットデータ21に格納される。
同様に、図示しないが、装置番号「R001」で機種「modelA」のロボットの機器2が異常系の制御プログラム「PROG_001-e」に換えて、異常系のワークセット動作を行う制御プログラム「PROG_002-e」を実行する場合には、データ管理装置1は、制御プログラムの開始から停止するまでの間に当該ロボットから出力される各種項目の時系列データを、500msec等の所定のサンプリング周期で記録するようにしてもよい。この場合、データ管理装置1は、時系列データを、データ属性が装置番号「R001」、機種「modelA」、プログラム「PROG_002-e」、状態「異常系」とするファイル名「data002-e」のテストデータとして、ロボットデータ21に格納することができる。
【0021】
また、図示しないが、装置番号「R001」で機種「modelA」のロボットの機器2が異常系のねじ締付動作を行う他の制御プログラム「PROG_003-e」を実行する場合には、データ管理装置1は、制御プログラムの開始から停止するまでの間に当該ロボットから出力される各種項目の時系列データを、500msec等の所定のサンプリング周期で記録するようにしてもよい。この場合、データ管理装置1は、時系列データを、データ属性が装置番号「R001」、機種「modelA」、プログラム「PROG_003-e」、状態「異常系」とするファイル名「data003-e」のテストデータとして、ロボットデータ21に格納することができる。
また、装置番号「R001」で機種「modelA」のロボットの機器2にn個の異常系の制御プログラムをそれぞれ実行させることで、データ管理装置1は、ロボットデータ21に、ロボットから出力されたn個の異常系の時系列データをファイル名「data001-e」から「data00n-e」として格納するようにしてもよい。この場合、データ管理装置1は、記憶部20に、正常系の場合と同様に、n個の異常系の制御プログラムと、対応するn個の異常系の時系列データのファイル名と、を対応付けした異常系ロボットデータテーブル(図示しない)を記憶することができる。
【0022】
なお、装置番号「R001」で機種「modelA」の1つのロボットの機器2がn個の正常系の制御プログラム及びn個の異常系の制御プログラムをそれぞれ実行することで、データ管理装置1は、n個の正常系の時系列データ及びn個の異常系の時系列データがテストデータとして取得されたが、これに限定されない。例えば、データ管理装置1は、データ管理装置1に接続される装置番号「R002」で機種「modelA」の他のロボット等の複数の機器2それぞれにn個の正常系の制御プログラム及びn個の異常系の制御プログラムをそれぞれ実行させるようにしてもよい。データ管理装置1は、複数の機器2それぞれからn個の正常系の時系列データ及びn個の異常系の時系列データを取得し、テストデータとしてロボットデータ21に格納することができる。
【0023】
<CNCデータ22>
図4は、制御装置の正常系の時系列データの一例を示す図である。
図4に示すように、例えば、制御装置の機器2から複数の項目の時系列データが、所定のサンプリング周期毎に出力されて後述する入力部11に入力され、CNCデータ22に順次記録されていく。この例では、キー情報となる制御装置の機種名と加工プログラム名とともに、動作状態やアラーム情報等が記録されている。
図4の時系列データは、データ属性が装置番号「C001」、機種「seriesA-1」、プログラム「1001」、状態「正常系」とするデータ名「data1001」のテストデータとして、CNCデータ22に格納することができる。
同様に、図示しないが、装置番号「C001」で機種「seriesA-1」の制御装置の機器2にm個(例えば、100個)の正常系の加工プログラムをそれぞれ実行させることで、データ管理装置1は、CNCデータ22に、制御装置から出力されるm個の正常系の時系列データをファイル名「data1001」から「data100m」として格納するようにしてもよい。また、図示しないが、装置番号「C001」で機種「seriesA-1」の制御装置の機器2にm個の異常系の加工プログラムをそれぞれ実行させることで、データ管理装置1は、CNCデータ22に、制御装置によるm個の異常系の時系列データをファイル名「data1001-e」から「data100m-e」として格納するようにしてもよい。なお、mは2以上の整数である。
この場合、データ管理装置1は、記憶部20に、m個の正常系の加工プログラムと、対応するm個の正常系の時系列データのファイル名と、を対応付けした正常系CNCデータテーブル(図示しない)を記憶することができる。また、データ管理装置1は、記憶部20に、m個の異常系の加工プログラムと、対応するm個の異常系の時系列データのファイル名と、を対応付けした異常系CNCデータテーブル(図示しない)を記憶することができる。
【0024】
なお、装置番号「C001」で機種「seriesA-1」の1つの制御装置の機器2がm個の正常系の加工プログラム及びm個の異常系の加工プログラムをそれぞれ実行することにより、データ管理装置1は、m個の正常系の時系列データ及びm個の異常系の時系列データをテストデータとして取得したが、これに限定されない。例えば、データ管理装置1は、データ管理装置1に接続される装置番号「C002」で機種「seriesA-1」の他の制御装置等の複数の機器2それぞれにm個の正常系の加工プログラム及びm個の異常系の加工プログラムをそれぞれ実行させるようにしてもよい。そうすることで、データ管理装置1は、複数の機器2それぞれからm個の正常系の時系列データ及びm個の異常系の時系列データを取得し、テストデータとしてCNCデータ22に格納することができる。
【0025】
<センサデータ23>
図5は、センサの時系列データの一例を示す図である。
図5に示すように、例えば、工作機械等に配置されたセンサの機器2により検出された振動、温度等の複数の項目の時系列データが、所定のサンプリング周期毎に出力されて後述する入力部11に入力され、センサデータ23に順次記録されていく。
【0026】
<制御部10>
図1に示すデータ管理装置1の制御部10は、CPU(Central Processing Unit)、ROM、RAM、CMOS(Complementary Metal-Oxide-Semiconductor)メモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
CPUはデータ管理装置1を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、前記システムプログラム及びアプリケーションプログラムに従ってデータ管理装置1全体を制御する。これにより、図1に示すように、制御部10が、入力部11、編集部12、通信制御部13、及び通信部14の機能を実現するように構成される。RAMには一時的な計算データや表示データ等の各種データが格納される。また、CMOSメモリは図示しないバッテリでバックアップされ、データ管理装置1の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。
【0027】
入力部11は、例えば、機器2それぞれが正常系又は異常系のプログラムを実行することで機器2それぞれから出力される時系列データを入力する。入力部11は、入力された時系列データそれぞれを、機器2に応じてロボットデータ21、CNCデータ22、及びセンサデータ23のいずれかにテストデータとして記憶する。
ロボットデータ21、CNCデータ22、及びセンサデータ23に記憶されるテストデータは、一定の周期で機器2のそれぞれからポーリングにより取得されてもよいし、個別の周期で取得されてもよい。あるいは、特定のイベントの発生に応じて不定期に機器2からデータが送信されてもよい。
【0028】
なお、入力部11は、データ管理装置1と機器2との間の電気信号、通信プロトコル及びデータフォーマット等の変換の機能を備えたインタフェースを介して、時系列データを入力する。
また、機器2がOPC UA(登録商標)やMTConnect(登録商標)等のプロトコルに準拠している場合、入力部11は、ソフトウェアにより所定のデータフォーマットで時系列データを入力することができる。通信インタフェースは有線には限られず、例えば無線LANによりデータ管理装置1と機器2とが接続されてもよい。
【0029】
通信制御部13は、外部装置であるコンピュータ3からの要求に基づいて、要求されたテストデータを記憶部20から取得し、要求されたテストデータをコンピュータ3に送信制御する。
【0030】
通信部14は、通信インタフェース等であり、通信制御部13の送信制御に基づいて、要求されたテストデータをOPC UA(登録商標)やMTConnect(登録商標)等の機器2が準拠するプロトコルに変換し、コンピュータ3に送信する。
【0031】
編集部12は、コンピュータ3からの要求に応じて記憶部20のロボットデータ21、CNCデータ22、センサデータ23に記憶されたテストデータを編集する。編集部12は、編集したテストデータを記憶部20に記憶する。
以下、編集部12の動作について、(1)工程用の編集ツールを用いて新たにテストデータを作成する場合、(2)編集ツールを用いて負荷試験用等のテストデータを作成する場合、(3)編集ツールを用いて所望のテストデータを作成する場合、及び(4)編集ツールを用いてテストデータのパラメータを変更する場合について説明する。なお、以下では、機器2がロボットの場合について説明するが、制御装置、センサ、及びそれらの組合せについても同様である。
【0032】
(1)工程用の編集ツールを用いて新たにテストデータを作成する場合について
図6は、編集ツールの設定画面の一例を示す図である。
図6に示すように、編集部12は、例えば、コンピュータ3から1つのロボットの機器2でワーク把持動作、ワークセット動作、及びねじ締付動作の3工程を実行するラインのテストデータの要求を受け付けた場合、編集ツールの設定画面(工程用)をコンピュータ3に含まれる液晶ディスプレイ等の表示装置(図示しない)に表示する。
【0033】
コンピュータ3は、コンピュータ3に含まれるキーボードやタッチパネル等の入力装置(図示しない)を介しユーザによる入力操作に基づいて、編集ツールの設定画面(工程用)の工程数に「3」を入力する。これにより、図6に示すように、コンピュータ3の表示装置(図示しない)に表示される編集ツールの設定画面(工程用)には、3つの工程それぞれの設定を行う画面が現れる。
例えば、コンピュータ3がユーザの入力操作に基づいて工程1から工程3それぞれにおいて機種「modelA」のロボットを選択した場合、編集部12は、選択された機種「modelA」をキー情報にして記憶部20に記憶されるデータを検索することで装置番号とデータとの候補を特定してもよい。コンピュータ3は、図6の編集ツールの設定画面(工程用)において、ユーザの入力操作に基づいて各工程を行う1つのロボットとして装置番号「R001」を選択してもよい。また、コンピュータ3は、ユーザの入力操作に基づいて、ワーク把持動作、ワークセット動作、及びねじ締付動作の各工程のテストデータとして、正常系のテストデータ「data001」、「data002」、「data003」をそれぞれ選択してもよい。
そして、コンピュータ3は、編集ツールの設定画面(工程用)の「保存」ボタンAがユーザにより押下された場合、編集ツールの設定画面に設定された設定内容を含む信号を、データ管理装置1に送信する。
【0034】
編集部12は、コンピュータ3から受信した信号に含まれる設定内容に基づいて、データ属性が機種「modelA」で装置番号「R001」のファイル名「data001」、「data002」、「data003」のテストデータを記憶部20から読み出す。編集部12は、読み出したファイル名「data001」、「data002」、「data003」のテストデータを工程の順番に並べて組み合わせ新たなテストデータ(例えば、ファイル名「data0123」)として記憶部20に記憶する。
通信制御部13は、コンピュータ3からの要求に基づいて、作成された新たなテストデータを記憶部20から取得し、要求された新たなテストデータをコンピュータ3に送信制御する。そして、通信部14は、通信制御部13の送信制御に基づいて、要求されたテストデータをOPC UA(登録商標)やMTConnect(登録商標)等の機器2が準拠するプロトコルに変換し、コンピュータ3に送信する。
これにより、コンピュータ3は、1つのロボットの機器2でワーク把持動作、ワークセット動作、及びねじ締付動作の3工程を実行するラインにおける、アプリケーション30の動作確認やデバッグ等を行うことができる。
【0035】
なお、編集部12は、新たな正常系のテストデータを作成したが、新たな異常系のテストデータを作成してもよく、正常系と異常系とが組み合わさった新たなテストデータを作成してもよい。
図7は、新たな異常系のテストデータを作成するための編集ツールの設定画面の一例を示す図である。
図8は、正常系と異常系とが組み合わさった新たなテストデータを作成するための編集ツールの設定画面の一例を示す図である。
そうすることで、1つのロボットに異常系の動作を繰り返し動作させたり、複数のロボットに異常系の動作をさせたりすることができ、普段できないようなテストデータを作成することができる。
【0036】
図9は、本実施形態に係るテストデータの編集処理を例示するフローチャートである。
ステップS1において、コンピュータ3は、ユーザの入力操作に基づいて、コンピュータ3の表示装置(図示しない)に表示された編集ツールの設定画面(工程用)に工程数を入力する。
【0037】
ステップS2において、コンピュータ3は、コンピュータ3の表示装置(図示しない)に表示された編集ツールの設定画面(工程用)に、ステップS1で入力された工程数分の設定画面を表示する。
【0038】
ステップS3において、コンピュータ3は、ユーザの入力操作に基づいて、各工程の機種を選択する。
【0039】
ステップS4において、データ管理装置1の編集部12は、ステップS3で選択された各工程の機種をキー情報にして装置番号とデータとの候補を特定する。
【0040】
ステップS5において、コンピュータ3は、ユーザの入力操作に基づいて、各工程の装置番号とデータとを選択する。
【0041】
ステップS6において、データ管理装置1の編集部12は、編集ツールの設定画面(工程用)の「保存」ボタンAがユーザにより押下された場合、編集ツールの設定画面に設定された設定内容に基づいて、新たなテストデータを作成し、作成した新たなテストデータを記憶部20に記憶する。
【0042】
なお、編集部12は、コンピュータ3からの要求に基づいて1つのロボットの機器2で複数の工程を実行するラインの新たなテストデータを作成したが、これに限定されない。例えば、編集部12は、コンピュータ3からの要求に基づいて複数のロボットの機器2それぞれが互いに異なる工程を実行するラインの新たなテストデータを作成してもよい。
例えば、3つのロボットの機器2(装置番号「R001」、「R002」、「R003」)がそれぞれ制御プログラム「PROG_001」、「PROG_010」、「PROG_030」を実行するラインの工程がある場合、編集部12は、ファイル名「data001」、「data010」、「data030」のテストデータを組み合わせることにより、当該ラインの工程を想定したテストデータを作成することができる。
図10は、編集ツールの設定画面の一例を示す図である。
なお、図10の編集ツールの設定画面には、例えば、工程の繰り返し回数の設定項目が追加されている。この場合、編集部12は、組み合わせたファイル名「data001」、「data010」、「data030」のテストデータから、各工程の所要時間が分かる。
図11は、3つのロボットの機器2それぞれが稼働する各工程の時系列の一例を示す図である。
図11に示すように、編集部12は、例えば、各工程の所要時間に基づいて、時刻tに投入したワークに対する工程1の作業が完了した時刻tに次のワークを投入した場合、工程2の作業が完了するまでの時刻tから時刻tにおいて滞留する時間が発生することを検知する。この場合、編集部12は、図10に示すように、編集ツールの設定画面に滞留が発生するメッセージ及び/又は滞留時間を表示してもよい。
このように、編集部12は、組み合わせるテストデータの各工程の所要時間から、工程間で滞留が発生するかどうかをチェックすることができる。
【0043】
図12は、滞留が発生する場合のテストデータの編集処理を例示するフローチャートである。
なお、図12に示す編集処理において、ステップS11からステップS15、及びステップS20の処理は、図9のステップS1からステップS5、及びステップS6と同様であり、説明は省略する。
【0044】
ステップS16において、コンピュータ3は、ユーザの入力操作に基づいて、工程の繰り返し回数を選択する。
【0045】
ステップS17において、データ管理装置1の編集部12は、組み合わせる各工程のテストデータから、各工程の所要時間を計算する。
【0046】
ステップS18において、データ管理装置1の編集部12は、ステップS17で計算された各工程の所要時間に基づいて、工程間で滞留が発生するか否かを判定する。工程間で滞留が発生する場合、処理はステップS19に進む。一方、工程間で滞留が発生しない場合、処理はステップS20に進む。
【0047】
ステップS19において、データ管理装置1の編集部12は、コンピュータ3の表示装置(図示しない)に表示される編集ツールの設定画面(工程用)に、滞留発生のメッセージと滞留時間とを表示する。
以上、工程用の編集ツールを用いて新たにテストデータを作成する場合について説明した。
【0048】
(2)編集ツールを用いて負荷試験用等のテストデータを作成する場合について
図13は、編集ツールの設定画面の一例を示す図である。
図13に示すように、編集部12は、例えば、100個等の多数のロボットの機器2を同時に接続してもアプリケーション30が正常に処理できるかを確認するため、コンピュータ3からアプリケーション30の負荷試験用のテストデータの要求を受け付けた場合、編集ツールの設定画面(装置用)をコンピュータ3の表示装置(図示しない)に表示する。
【0049】
コンピュータ3は、ユーザの入力操作に基づいて、編集ツールの設定画面(装置用)の機器2の装置数に、例えば「100」を入力する。これにより、図13に示すように、コンピュータ3の表示装置(図示しない)に表示される編集ツールの設定画面(装置用)には、100個のロボットの機器2それぞれの設定を行う画面が現れる。
例えば、コンピュータ3がユーザの入力操作に基づいて機種「modelA」のロボットを選択した場合、編集部12は、選択された機種「modelA」をキー情報にして記憶部20に記憶されるデータを検索することで装置番号とデータとの候補を特定してもよい。コンピュータ3は、図13の編集ツールの設定画面(装置用)において、ユーザの入力操作に基づき各ロボットの装置番号を「R001」から「R100」を選択してもよい。また、コンピュータ3は、ユーザの入力操作に基づいて、各ロボットに動作させる正常系のテストデータとして、テストデータ「data011」を選択してもよい。
そして、コンピュータ3は、編集ツールの設定画面(装置用)の「保存」ボタンAがユーザにより押下された場合、編集ツールの設定画面に設定された設定内容を含む信号を、データ管理装置1に送信する。
【0050】
編集部12は、コンピュータ3から受信した信号に含まれる設定内容に基づいて、データ属性が機種「modelA」で装置番号「R001」から装置番号「R100」のファイル名「data011」のテストデータを記憶部20からそれぞれ読み出す。編集部12は、読み出した機種「modelA」で装置番号「R001」から装置番号「R100」のファイル名「data011」のテストデータを1つに組み合わせた新たなテストデータとして記憶部20に記憶する。
通信制御部13は、コンピュータ3からの要求に基づいて、作成された新たなテストデータを記憶部20から取得し、要求された新たなテストデータをコンピュータ3に送信制御する。そして、通信部14は、通信制御部13の送信制御に基づいて、要求されたテストデータをOPC UA(登録商標)やMTConnect(登録商標)等の機器2が準拠するプロトコルに変換し、コンピュータ3に送信する。
これにより、コンピュータ3は、100個のロボットの機器2を繋いで動作させる負荷試験のアプリケーション30のテストを行うことができる。
【0051】
なお、編集部12は、100個のロボットの機器2の正常系のテストデータを用いて新たなテストデータを作成したが、これに限定されない。
図14は、編集ツールの設定画面の一例を示す図である。
図14に示すように、編集部12は、例えば、100個のロボットの機器2のうち一部の機器2のテストデータに異常系のテストデータとする新たなテストデータを作成してもよい。図14では、機種「modelA」の装置番号「R001」、「R002」の機器2のテストデータとして異常系のテストデータ「data011-e」が選択されるようにしてもよい。
また、編集部12は、機種「modelA」で装置番号「R001」から装置番号「R100」のファイル名「data011」のテストデータを記憶部20からそれぞれ読み出したが、これに限定されない。例えば、編集部12は、機種「modelA」で装置番号「R001」である1つのロボットの機器2のファイル名「data011」のテストデータを記憶部20から読み出し、読み出したテストデータを残り99個の機種「modelA」で装置番号「R002」から装置番号「R100」ぞれぞれのロボットの機器2のテストデータとしてコピーしてもよい。そして、編集部12は、100個のロボットの機器2のテストデータを1つに組み合わせた新たなテストデータを作成し、記憶部20に記憶してもよい。
【0052】
また、編集部12は、100個のロボットの機器2それぞれに複数の工程を実行させる新たなテストデータを作成してもよい。この場合、編集部12は、例えば、図6に示すように、100個のロボットの機器2それぞれについて、ファイル名「data001」、「data002」、「data003」の正常系のテストデータを組み合わせた3つの工程を実行するテストデータを予め作成し、ファイル名「data0123」等として記憶部20に記憶することが好ましい。
【0053】
図15は、複数の機器2を選択する場合のテストデータの編集処理を例示するフローチャートである。
【0054】
ステップS31において、コンピュータ3は、ユーザの入力操作に基づいて、コンピュータ3の表示装置(図示しない)に表示された編集ツールの設定画面(装置用)に機器2の装置数を入力する。
【0055】
ステップS32において、コンピュータ3は、コンピュータ3の表示装置(図示しない)に表示された編集ツールの設定画面(装置用)に、ステップS31で入力された装置数分の設定画面を表示する。
【0056】
ステップS33において、コンピュータ3は、ユーザの入力操作に基づいて、各機器2の機種を選択する。
【0057】
ステップS34において、データ管理装置1の編集部12は、ステップS33で選択された機種をキー情報にして装置番号とデータとの候補を特定する。
【0058】
ステップS35において、コンピュータ3は、ユーザの入力操作に基づいて、各機器2の装置番号とデータとを選択する。
【0059】
ステップS36において、データ管理装置1の編集部12は、編集ツールの設定画面(装置用)の「保存」ボタンAがユーザにより押下された場合、編集ツールの設定画面に設定された設定内容に基づいて、新たなテストデータを作成し、作成した新たなテストデータを記憶部20に記憶する。
以上、編集ツールを用いて負荷試験用等のテストデータを作成する場合について説明した。
【0060】
(3)編集ツールを用いて所望のテストデータを作成する場合について
編集部12は、記憶部20に記憶されるテストデータのうち、コンピュータ3からの要求に応じてテストデータの一部を切り出して新たなテストデータを作成してもよい。
以下、ロボットの軸の減速機の劣化レベルを診断する減速機診断を行うアプリケーション30の場合について説明するが、減速機診断以外のアプリケーションについても同様である。
【0061】
図16は、ロボットの軸の減速機の劣化レベルの時系列データの一例を示す図である。図16の縦軸は劣化レベルを示し、図16の横軸は日付を示す。図16の劣化レベルは、例えば、減速機を駆動するモータ(図示しない)に供給される電流値の変動や当該モータが発生するトルク値の変動等、公知の手法に基づいて1日周期で測定され、2019年1月20日から2月5日までの測定値が記憶部20に記憶されている。
なお、図16の劣化レベルに基づく減速機診断のアプリケーション30では、劣化レベルが「4」以上の場合、減速機に異常があると判定して当該異常を知らせるアラートを出力し、劣化レベルが「10」以上の場合、減速機が壊れたと判定して破損を知らせるアラートを出力する。
【0062】
図17Aは、日時欄及び劣化レベル欄を有する減速機診断の時系列データの一例を示す図である。図17Bは、編集ツールの設定画面の一例を示す図である。
具体的には、編集部12は、コンピュータ3から減速機診断のアプリケーション30に対するテストデータの要求を受け付けた場合、図17Aに示す日時欄及び劣化レベル欄を有する減速機診断の時系列データとともに、図17Bに示す編集ツールの設定画面をコンピュータ3の表示装置(図示しない)に表示する。なお、図17Aの時系列データは、図16と同じである。
例えば、コンピュータ3がユーザの入力操作に基づいて図17Bの編集ツールにおいて診断対象の種類として「減速機診断」を選択した場合、編集部12は、選択された「減速機診断」をキー情報にして記憶部20に記憶される劣化レベルを検索することで日時及び劣化レベルの候補を特定してもよい。そして、コンピュータ3は、データ管理装置1から劣化レベルの時系列データを取得し、図17Aに示すように、取得した時系列データの日付欄と劣化レベル欄とを表示してもよい。コンピュータ3は、例えば、劣化レベルが「4」以上の場合に減速機診断のアプリケーション30が異常を示すアラートを出力するか否かをテストするために、ユーザの入力操作に基づいて、図17Bの編集ツールで「2019年2月5日10:00」の日時が選択された場合、劣化レベル欄に「4.2」と表示してもよい。
そして、コンピュータ3は、編集ツールの「別データとして保存」ボタンA1がユーザにより押下された場合、編集ツールの設定画面に設定された設定内容を含む信号を、データ管理装置1に送信する。
【0063】
編集部12は、コンピュータ3から受信した信号に含まれる設定内容に基づいて、記憶部20に記憶される劣化レベルのデータから日時「2019年2月5日10:00」の劣化レベル「4.2」のデータを切り出す。編集部12は、切り出したデータを新たなテストデータとして記憶部20に記憶する。
通信制御部13は、コンピュータ3からの要求に基づいて、作成された新たなテストデータを記憶部20から取得し、要求された新たなテストデータをコンピュータ3に送信制御する。そして、通信部14は、通信制御部13の送信制御に基づいて、要求されたテストデータをOPC UA(登録商標)やMTConnect(登録商標)等の機器2が準拠するプロトコルに変換し、コンピュータ3に送信する。
これにより、コンピュータ3は、劣化レベルが「4」以上の場合に減速機診断のアプリケーション30が異常を示すアラートを出力するか否か、すなわち減速機診断のアプリケーション30が設計通りに動作するか否かをテストすることができる。
なお、編集部12は、減速機診断の時系列データを劣化レベル(例えば、「4」以上)で検索し、日時「2019年2月5日10:00」の劣化レベルのデータを編集ツールに表示してもよい。
【0064】
図18は、時系列データから所望のデータを切り出す場合のテストデータの編集処理を例示するフローチャートである。
【0065】
ステップS41において、コンピュータ3は、ユーザの入力操作に基づいて、コンピュータ3の表示装置(図示しない)に表示された編集ツールの設定画面において減速機診断等の診断対象の種類を選択する。
【0066】
ステップS42において、データ管理装置1の編集部12は、ステップS41で選択された種類をキー情報にして日時とデータとの候補を特定する。
【0067】
ステップS43において、コンピュータ3は、ユーザの入力操作に基づいて、日時を選択する。
【0068】
ステップS44において、コンピュータ3は、ステップS43で選択された日時のデータを表示する。
【0069】
ステップS45において、データ管理装置1の編集部12は、編集ツールの設定画面の「別データとして保存」ボタンA1がユーザにより押下された場合、ステップS43で選択された日時のデータを切り出し、新たなテストデータとして記憶部20に記憶する。
【0070】
なお、編集部12は、コンピュータ3からの要求に基づいて1つの日時のデータを切り出して新たなテストデータを作成したが、これに限定されない。例えば、編集部12は、コンピュータ3からの要求により指定された期間に亘るデータを切り出してもよい。
例えば、劣化レベルが「3」以上の期間を切り出したテストデータを使用して、劣化レベルが「4」以上になるとメールを送信するアプリケーションの機能をテストすることができる。
図19は、編集ツールの設定画面の一例を示す図である。
図19に示すように、編集部12は、コンピュータ3から減速機診断のアプリケーション30に対するテストデータの要求を受け付けた場合、図17Aの日時欄及び劣化レベル欄を有する時系列データとともに、編集ツールの設定画面をコンピュータ3の表示装置(図示しない)に表示するようにしてもよい。
例えば、コンピュータ3がユーザの入力操作に基づいて図19の編集ツールにおいて診断対象の種類として「減速機診断(期間指定)」を選択した場合、編集部12は、選択された「減速機診断(期間指定)」をキー情報にして記憶部20に記憶される劣化レベルを検索することで日時及び劣化レベルの候補を特定してもよい。コンピュータ3は、コンピュータ3の表示装置(図示しない)に、図17Aに示すように、時系列データの日付欄と劣化レベル欄とを表示するともに、図19に示すように、開始日時欄、開始日時の劣化レベル欄、終了日時欄、及び終了日時の劣化レベル欄を含む編集ツールを表示してもよい。コンピュータ3は、ユーザの入力操作に基づいて、開始日時欄で「2019年1月29日10:00」を選択し、終了日時欄で「2019年2月5日10:00」を選択する。これにより、開始日時の劣化レベル欄は「3」と表示され、終了日時の劣化レベル欄は「4.2」と表示される。
そして、コンピュータ3は、編集ツールの「別データとして保存」ボタンA1がユーザにより押下された場合、編集ツールの設定画面に設定された設定内容を含む信号を、データ管理装置1に送信する。
【0071】
編集部12は、コンピュータ3から受信した信号に含まれる設定内容に基づいて、記憶部20に記憶される劣化レベルのデータから、開始日時「2019年1月29日10:00」から終了日時「2019年2月5日10:00」の期間の劣化レベルのデータを切り出す。編集部12は、切り出したデータを新たなテストデータとして記憶部20に記憶する。
【0072】
図20は、切り出す期間を指定する場合のテストデータの編集処理を例示するフローチャートである。
なお、図20に示す編集処理において、ステップS51及びステップS52の処理は、図18のステップS41及びステップS42と同様であり、説明は省略する。
【0073】
ステップS53において、コンピュータ3は、ユーザの入力操作に基づいて、開始日時を選択する。
【0074】
ステップS54において、コンピュータ3は、ステップS53で選択された開始日時のデータを表示する。
【0075】
ステップS55において、コンピュータ3は、ユーザの入力操作に基づいて、終了日時を選択する。
【0076】
ステップS56において、コンピュータ3は、ステップS55で選択された終了日時のデータを表示する。
【0077】
ステップS57において、データ管理装置1の編集部12は、編集ツールの設定画面の「別データとして保存」ボタンA1がユーザにより押下された場合、ステップS54及びステップS56で選択された期間のデータを切り出し、新たなテストデータとして記憶部20に記憶する。
以上、編集ツールを用いて所望のテストデータを作成する場合について説明した。
【0078】
(4)編集ツールを用いてテストデータのパラメータを変更する場合について
例えば、図16に示すように、劣化レベルの時系列データは、減速機に異常があると判定される「4」以上になることがあっても、減速機が壊れたと判定される「10」以上になることはあまりない。このため、コンピュータ3は、劣化レベルが「10」以上の場合に減速機診断のアプリケーション30が減速機の破損を示すアラートを出力するか否かをテストすることが難しい。
そこで、編集部12は、コンピュータ3からの要求に基づいて記憶部20に記憶されるテストデータの一部を切り出し、切り出したテストデータのパラメータ、例えば劣化レベルを「10」以上に変更して新たなテストデータを作成する。
以下、ロボットの軸の減速機の劣化レベルを診断する減速機診断を行うアプリケーション30の場合について説明するが、減速機診断以外のアプリケーションについても同様である。
【0079】
図21Aは、編集ツールの設定画面の一例を示す図である。
図21Aに示すように、編集部12は、コンピュータ3から減速機診断のアプリケーション30に対するテストデータの要求を受け付けた場合、コンピュータ3の表示装置(図示しない)に、図17Aの時系列データの日時欄及び劣化レベル欄を表示するとともに、図21Aの編集ツールの設定画面を表示する。
例えば、コンピュータ3がユーザの入力操作に基づいて図21Aの編集ツールにおいて診断対象の種類として「減速機診断」が選択された場合、編集部12は、選択された「減速機診断」をキー情報にして記憶部20に記憶される劣化レベルを検索することで日時及び劣化レベルの候補を特定してもよい。そして、コンピュータ3は、データ管理装置1から劣化レベルの時系列データを取得し、図17Aに示すように、取得した時系列データの日付欄と劣化レベル欄とを表示してもよい。コンピュータ3は、劣化レベルが「10」以上の場合に減速機診断のアプリケーション30が減速機の破損を示すアラートを出力するか否かをテストするために、ユーザの入力操作に基づいて、例えば図21Aの編集ツールで「2019年2月5日10:00」の日時が選択された場合、劣化レベル欄に「4.2」と表示することができる。
【0080】
図21Bは、劣化レベル変更後の編集ツールの設定画面の一例を示す図である。
例えば、コンピュータ3は、ユーザの入力操作に基づいて、図21Aの編集ツールにおいて劣化レベル欄の劣化レベルが「10.2」に変更され、「別データとして保存」ボタンA3がユーザにより押下された場合、図21Bに示すように、編集ツールにおいて変更日時の入力欄、及び「保存」ボタンA4を表示する。コンピュータ3は、ユーザの入力操作に基づいて、例えば、変更日時の入力欄に「2020年2月5日10:00」が入力され、「保存」ボタンA4がユーザにより押下された場合、図21Bの編集ツールの設定画面に設定された設定内容を含む信号を、データ管理装置1に送信する。
【0081】
編集部12は、コンピュータ3から受信した信号に含まれる設定内容に基づいて、記憶部20に記憶される劣化レベルのデータから日時「2019年2月5日10:00」の劣化レベル「4.2」のデータを切り出す。編集部12は、切り出したデータを日時「2020年2月5日10:00」の劣化レベル「10.2」のデータに変更し、新たなテストデータとして記憶部20に記憶する。
通信制御部13は、コンピュータ3からの要求に基づいて、作成された新たなテストデータを記憶部20から取得し、要求された新たなテストデータをコンピュータ3に送信制御する。そして、通信部14は、通信制御部13の送信制御に基づいて、要求されたテストデータをOPC UA(登録商標)やMTConnect(登録商標)等の機器2が準拠するプロトコルに変換し、コンピュータ3に送信する。
これにより、コンピュータ3は、劣化レベルが「10」以上の場合に減速機診断のアプリケーション30が減速機の破損を示すアラートを出力するか否か、すなわち減速機診断のアプリケーション30が設計通りに動作するか否かをテストすることができる。
【0082】
図22は、時系列データからパラメータを変更する場合のテストデータの編集処理を例示するフローチャートである。
なお、図22に示す編集処理において、ステップS61からステップS64の処理は、図18のステップS41からステップS44と同様であり、説明は省略する。
【0083】
ステップS65において、コンピュータ3は、ユーザの入力操作に基づいて、劣化レベル欄のデータが変更され、「別データとして保存」ボタンA3がユーザにより押下された場合、編集ツールにおいて変更日時の入力欄、及び「保存」ボタンA4を表示する。
【0084】
ステップS66において、コンピュータ3は、ユーザの入力操作に基づいて、変更日時の入力欄に変更日時を入力する。
【0085】
ステップS67において、データ管理装置1の編集部12は、編集ツールの設定画面の「保存」ボタンA4がユーザにより押下された場合、ステップS64で選択された日時のデータをステップS65及びステップS66で入力された内容に変更し、新たなテストデータとして記憶部20に記憶する。
以上、編集ツールを用いてテストデータのパラメータを変更する場合について説明した。
【0086】
<データ管理装置1の処理>
本実施形態に係るデータ管理装置1の処理に係る動作について説明する。
図23は、データ管理装置1の処理について説明するフローチャートである。
【0087】
ステップS71において、入力部11は、ロボット、制御装置、センサ等の機器2から時系列データを入力する。
【0088】
ステップS72において、記憶部20は、ステップS71で入力された時系列データを記憶部20に記憶する。
【0089】
ステップS73において、編集部12は、コンピュータ3からの要求に応じて、図9図12図15図18図20、及び図22のいずれかの編集処理を行い、新たなテストデータとして記憶部20に記憶する。
【0090】
ステップS74において、通信制御部13は、ステップS73で編集されたテストデータを記憶部20から取得し、要求された新たなテストデータをコンピュータ3に送信制御する。
【0091】
ステップS75において、通信部14は、ステップS74の送信制御に基づいて、要求された新たなテストデータをコンピュータ3に送信する。
【0092】
なお、記憶部20に機器2からの時系列データが既に記憶されている場合、図23のフローのうちステップS71及びステップS72の処理は、省略されてもよい。
【0093】
以上により、第1実施形態のデータ管理装置1は、ロボット、制御装置、センサ等の様々な機器2に正常系及び異常系のプログラムを実行することで、機器2から出力される正常系及び異常系の時系列データをテストデータとして記憶する。データ管理装置1は、コンピュータ3からの要求に基づいてテストデータを編集し、編集したテストデータを記憶するとともに、コンピュータ3に送信する。
これにより、データ管理装置1は、アプリケーション30をテストするための様々な機器のテストデータを提供することができる。そして、コンピュータ3は、アプリケーション30のテストを行うことができる。
以上、第1実施形態について説明した。
【0094】
<第2実施形態>
次に、第2実施形態について説明する。第2実施形態では、データ管理装置1は、第1実施形態の機能に加えて、コンピュータ3から要求された送信間隔又は送信時刻に基づいて要求されたテストデータの送信制御を行う。
こうすることで、アプリケーションが対象とする機器の仕様と同様の条件でアプリケーションをテストすることができる。
以下に、第2実施形態について説明する。
【0095】
図24は、第2実施形態に係るデータ管理装置1の機能構成を示す図である。なお、図1のデータ管理装置1の要素と同様の機能を有する要素については、同じ符号を付し、詳細な説明は省略する。
図24に示すように、第2実施形態に係るデータ管理装置1は、制御部10a、及び記憶部20を有する。
記憶部20は、第1実施形態の記憶部20と同様に、ロボットデータ21、CNCデータ22、及びセンサデータ23を有する。
【0096】
制御部10aは、入力部11、編集部12、通信制御部13a、及び通信部14を有する。制御部10は、記憶部20に記憶された所定のソフトウェア(データ管理プログラム)を実行することで、第2実施形態の各機能を実現する。
入力部11、編集部12、及び通信部14は、第1実施形態における入力部11、編集部12、及び通信部14と同等の機能を有する。
【0097】
通信制御部13aは、第1実施形態の通信制御部13と同様に、コンピュータ3からの要求に基づいて、要求されたテストデータを記憶部20から取得し、要求されたテストデータをコンピュータ3に送信制御する。
また、第2実施形態に係る通信制御部13aは、(1)テストデータ作成時のタイムスタンプを現在時刻に変換して要求されたテストデータを送信制御する、あるいは(2)コンピュータ3から要求された送信間隔で要求されたテストデータを送信制御する。
以下、それぞれの場合の通信制御部13aの動作について説明する。
【0098】
(1)テストデータ作成時のタイムスタンプを現在時刻に変換して要求されたテストデータを送信制御する場合について
図25は、送信ツールの設定画面の一例を示す図である。
図25に示すように、通信制御部13aは、例えば、コンピュータ3からテストデータの送信指示を受け付けた場合、送信ツールの設定画面をコンピュータ3の表示装置(図示しない)に表示する。コンピュータ3は、ユーザの入力操作に基づいて、図25の送信ツールにおいて送信対象の機器2の種類として「ロボット」が選択された場合、通信制御部13aは、選択された「ロボット」をキー情報にして記憶部20に記憶されるテストデータを検索することで送信するテストデータの候補を特定する。そして、コンピュータ3は、ユーザの入力操作に基づいて、図25の送信ツールの設定画面において、例えば、図2のファイル名「data001」のテストデータを選択してもよい。
コンピュータ3は、送信ツールの設定画面の「送信」ボタンA5がユーザにより押下された場合、送信ツールの設定画面に設定された設定内容を含む信号を、データ管理装置1に送信する。
【0099】
通信制御部13aは、コンピュータ3から受信した信号に含まれる設定内容に基づいて、ファイル名「data001」のテストデータを記憶部20から読み出す。通信制御部13aは、読み出したファイル名「data001」のテストデータ作成時のタイムスタンプ(例えば、2019年3月1日9:00:00:105や、2019年3月1日9:00:00:605等)を現在時刻(例えば、2019年9月10日10:00:00:505や、2019年9月10日10:00:01:005等)に合わせて変換し、テストデータのタイムスタンプの間隔(例えば、500msec)でコンピュータ3に送信制御する。
通信部14は、通信制御部13の送信制御に基づいて、要求されたテストデータをOPC UA(登録商標)やMTConnect(登録商標)等の機器2が準拠するプロトコルに変換し、コンピュータ3に送信する。
これにより、過去に作成したテストデータを現在のデータとして使うことができ、あたかも接続した機器2からリアルタイムで送信されたデータのように使うことができる。
【0100】
図26は、第2実施形態に係るテストデータの送信処理を例示するフローチャートである。
【0101】
ステップS81において、コンピュータ3は、ユーザの入力操作に基づいて、コンピュータ3の表示装置(図示しない)に表示された送信ツールの設定画面に送信対象の機器2の種類を入力する。
【0102】
ステップS82において、データ管理装置1の通信制御部13aは、ステップS81で選択された種類をキー情報にして送信するデータの候補を特定する。
【0103】
ステップS83において、コンピュータ3は、ユーザの入力操作に基づいて、データを選択する。
【0104】
ステップS84において、コンピュータ3は、送信ツールの「送信」ボタンA5がユーザにより押下された場合、選択されたデータの送信指示をデータ管理装置1に送信する。
【0105】
ステップS85において、通信制御部13aは、コンピュータ3からの送信指示に基づいて、選択されたデータのタイムスタンプを現在時刻に合わせて変換し、データのタイムスタンプの間隔でコンピュータ3に送信制御する。
【0106】
ステップS86において、通信部14は、通信制御部13aの送信制御に基づいて、選択されたデータをコンピュータ3に送信する。
以上、テストデータ作成時のタイムスタンプを現在時刻に変換して要求されたテストデータを送信制御する場合について説明した。
【0107】
(2)コンピュータ3から要求された送信間隔でテストデータを送信制御する場合について
図27は、送信ツールの設定画面の一例を示す図である。
図27に示すように、通信制御部13aは、例えば、コンピュータ3からテストデータの送信間隔変更指示を受け付けた場合、送信ツールの設定画面をコンピュータ3の表示装置(図示しない)に表示する。コンピュータ3は、ユーザの入力操作に基づいて、図27の送信ツールにおいて送信対象の機器2の種類として「センサ」が選択された場合、通信制御部13aは、選択された「センサ」をキー情報にして記憶部20に記憶されるテストデータを検索することで送信するテストデータの候補を特定する。そして、コンピュータ3は、ユーザの入力操作に基づいて、図27の送信ツールの設定画面において、例えば、図5のテストデータ(例えば、ファイル名「data2001」)を選択してもよい。また、コンピュータ3は、ユーザの入力操作に基づいて、図27の送信ツールの設定画面において、選択したテストデータの送信間隔を「1sec」等に選択する。
コンピュータ3は、送信ツールの設定画面の「送信」ボタンA5がユーザにより押下された場合、送信ツールの設定画面に設定された設定内容を含む信号を、データ管理装置1に送信する。
【0108】
通信制御部13aは、コンピュータ3から受信した信号に含まれる設定内容に基づいて、ファイル名「data2001」のテストデータを記憶部20から読み出す。通信制御部13aは、読み出したファイル名「data2001」のテストデータを、当該テストデータのタイムスタンプが示す1分間隔に替えて、設定内容が示す1秒間隔でコンピュータ3に送信制御する。
通信部14は、通信制御部13の送信制御に基づいて、要求されたテストデータをOPC UA(登録商標)やMTConnect(登録商標)等の機器2が準拠するプロトコルに変換し、コンピュータ3に送信する。
これにより、過去に作成したテストデータを現在のデータとして使うことができ、あたかも接続した機器2からリアルタイムで送信されたデータのように使うことができる。さらに、時間を短縮してアプリケーションの動作をテストすることができる。
【0109】
図28は、送信間隔を変更する場合のテストデータの送信処理を例示するフローチャートである。
なお、図28に示す送信処理において、ステップS91からステップS93、ステップS95、及びステップS97の処理は、図26のステップS81からステップS83、ステップS84、及びステップS86と同様であり、説明は省略する。
【0110】
ステップS94において、コンピュータ3は、ステップS93で選択されたデータの送信間隔を選択する。
【0111】
ステップS96において、通信制御部13aは、コンピュータ3からの送信指示に基づいて、ステップS93で選択されたデータを、ステップS94で選択された送信間隔でコンピュータ3に送信制御する。
以上、コンピュータ3から要求された送信間隔でテストデータを送信制御する場合について説明した。
【0112】
以上により、第2実施形態のデータ管理装置1は、ロボット、制御装置、センサ等の様々な機器2に正常系及び異常系のプログラムを実行することで、機器2から出力される正常系及び異常系の時系列データをテストデータとして記憶する。データ管理装置1は、コンピュータ3からの要求に基づいてテストデータのタイムスタンプを現在時刻に合わせて変換してテストデータをコンピュータ3に送信したり、指示された送信間隔でテストデータをコンピュータ3に送信したりする。
これにより、データ管理装置1は、アプリケーション30をテストするための様々な機器のテストデータを提供することができる。そして、データ管理装置1は、過去に作成したテストデータを現在のデータとしてコンピュータ3のユーザに使用させることができ、あたかも接続した機器2からリアルタイムで送信されたデータのように使用させることができる。
以上、第2実施形態について説明した。
【0113】
<第2実施形態の変形例>
第2実施形態では、データ管理装置1の通信制御部13aがコンピュータ3からの要求に応じてテストデータのタイムスタンプを現在時刻に合わせて変換してテストデータをコンピュータ3に送信制御したり、要求された送信間隔でテストデータをコンピュータ3に送信制御したが、これに限定されない。例えば、データ管理装置1の編集部12は、コンピュータ3からテストデータのタイムスタンプの変更指示を受け付けた場合、テストデータのタイムスタンプを編集して送信時刻を設定し、通信制御部13aは、設定された送信時刻になるとテストデータをコンピュータ3に送信してもよい。
図29Aは、編集ツールの設定画面の一例を示す図である。図29Bは、選択したテストデータのタイムスタンプの一覧を含む編集ツールの設定画面の一例を示す図である。図29Cは、選択したテストデータのタイムスタンプの編集後の編集ツールの設定画面の一例を示す図である。
図29Aに示すように、編集部12は、コンピュータ3からテストデータのタイムスタンプの変更指示を受け付けた場合、編集ツールの設定画面をコンピュータ3の表示装置(図示しない)に表示する。コンピュータ3は、ユーザの入力操作に基づいて、図29Aの編集ツールにおいて編集対象の機器2の種類として「ロボット」が選択された場合、編集部12は、選択された「ロボット」をキー情報にして記憶部20に記憶されるテストデータを検索することで編集するテストデータの候補を特定する。そして、コンピュータ3は、ユーザの入力操作に基づいて、図29Aの編集ツールの設定画面において、例えば、図2のテストデータのファイル名「data001」を選択してもよい。そして、コンピュータ3は、図29Bに示すように、選択したテストデータのタイムスタンプの一覧を編集ツールの画面に表示する。
【0114】
例えば、コンピュータ3は、図29Cに示すように、ユーザの入力操作に基づいて、選択したテストデータのタイムスタンプを編集する。そして、コンピュータ3は、編集ツールの設定画面の「変更」ボタンA6がユーザにより押下された場合、編集ツールの設定画面に設定された設定内容を含む信号を、データ管理装置1に送信する。
【0115】
編集部12は、コンピュータ3から受信した信号に含まれる設定内容に基づいて、ファイル名「data001」のテストデータを記憶部20から読み出す。編集部12は、読み出したファイル名「data001」のテストデータのタイムスタンプそれぞれを、設定内容に含まれるタイムスタンプに変更して新たなテストデータとして記憶部20に記憶する。
例えば、工場のシフトに合わせて時刻を設定したり、うるう年等の特殊条件の日時に設定したりすることができ、工場等の実際の現場における作業環境に応じて、アプリケーション30の動作をテストすることができる。
通信制御部13aは、新たなテストデータの変更されたタイムスタンプの時刻に基づいて、当該テストデータをコンピュータ3に送信制御する。
通信部14は、通信制御部13の送信制御に基づいて、要求されたテストデータをOPC UA(登録商標)やMTConnect(登録商標)等の機器2が準拠するプロトコルに変換し、コンピュータ3に送信する。
これにより、過去に作成したテストデータをユーザが未来を含む自由に設定した時刻のデータとして使うことができ、あたかも接続した機器2から送信されたデータのように使うことができる。
【0116】
図30は、タイムスタンプを変更する場合のテストデータの編集処理を例示するフローチャートである。
【0117】
ステップS101において、コンピュータ3は、ユーザの入力操作に基づいて、コンピュータ3の表示装置(図示しない)に表示された編集ツールの設定画面において編集対象の機器2の種類を選択する。
【0118】
ステップS102において、データ管理装置1の編集部12は、ステップS101で選択された種類をキー情報にしてデータの候補を特定する。
【0119】
ステップS103において、コンピュータ3は、ユーザの入力操作に基づいて、データを選択する。
【0120】
ステップS104において、コンピュータ3は、ステップS103で選択されたデータのタイムスタンプを表示する。
【0121】
ステップS105において、コンピュータ3は、ユーザの入力操作に基づいて、ステップS104で表示されたタイムスタンプを編集する。
【0122】
ステップS106において、データ管理装置1の編集部12は、編集ツールの設定画面の「変更」ボタンA6がユーザにより押下された場合、ステップS103で選択されたデータのタイムスタンプをステップS105で編集されたタイムスタンプに変更し、新たなテストデータとして作成して記憶部20に記憶する。
【0123】
ステップS107において、データ管理装置1の通信制御部13aは、ステップS106で変更されたタイムスタンプの時刻になった場合、ステップS106で作成された新たなテストデータをコンピュータ3に送信制御する。
【0124】
ステップS108において、通信部14は、通信制御部13aの送信制御に基づいて、テストデータをコンピュータ3に送信する。
【0125】
以上、第1実施形態、第2実施形態、及び第2実施形態の変形例について説明したが、データ管理装置1は、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
【0126】
<変形例>
第1実施形態、第2実施形態、及び第2実施形態の変形例では、データ管理装置1は、コンピュータ3と異なる装置として例示したが、データ管理装置1の一部又は全部の機能を、コンピュータ3が備えるようにしてもよい。
あるいは、データ管理装置1の制御部10、及び記憶部20の一部又は全部を、例えば、サーバが備えるようにしてもよい。また、クラウド上で仮想サーバ機能等を利用して、データ管理装置1の各機能を実現してもよい。
さらに、データ管理装置1は、データ管理装置1の各機能を適宜複数のサーバに分散される、分散処理システムとしてもよい。
【0127】
なお、第1実施形態、第2実施形態、及び第2実施形態の変形例における、データ管理装置1に含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【0128】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
【0129】
なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0130】
以上を換言すると、本開示のデータ管理装置、及びデータ管理方法は、次のような構成を有する各種各様の実施形態を取ることができる。
【0131】
(1)本開示のデータ管理装置1は、少なくとも1つの機器2から出力されるデータを入力する入力部11と、入力部11により入力されたデータをテストデータとして記憶する記憶部20と、コンピュータ3からの要求に基づいて要求されたテストデータを記憶部20から取得し、要求されたテストデータをコンピュータ3に送信制御する通信制御部13と、通信制御部13の送信制御に基づいて、要求されたテストデータをコンピュータ3に送信する通信部14と、を備える。
このデータ管理装置1によれば、アプリケーション30をテストするための様々な機器のテストデータを提供することができる。
【0132】
(2) (1)に記載のデータ管理装置1において、コンピュータ3からの要求に応じて記憶部20に記憶されたテストデータを編集する編集部12をさらに備えてもよい。
そうすることで、データ管理装置1は、複数の工程のテストデータを組み合わせて新たなテストデータを作成することができる。また、データ管理装置1は、テストデータのタイムスタンプを編集することで、過去に作成したテストデータをユーザが未来を含む自由に設定した時刻のデータとして使うことができ、あたかも接続した機器2から送信されたデータのように使うことができる。
【0133】
(3) (1)又は(2)に記載のデータ管理装置1において、通信制御部13aは、コンピュータ3から要求された送信間隔又は送信時刻に基づいて要求されたテストデータの送信制御を行ってもよい。
そうすることで、データ管理装置1は、過去に作成したテストデータを現在のデータとして使うことができ、あたかも接続した機器2からリアルタイムで送信されたデータのように使うことができる。
【0134】
(4)本開示のデータ管理方法は、少なくとも1つの機器2から出力されるデータを入力し、入力されたデータをテストデータとして記憶部20に記憶し、コンピュータ3からの要求に基づいて要求されたテストデータを記憶部20から取得し、要求されたテストデータをコンピュータ3に送信制御し、送信制御に基づいて、要求されたテストデータをコンピュータ3に送信する。
このデータ管理方法によれば、(1)と同様の効果を奏することができる。
【0135】
(5) (4)に記載のデータ管理方法において、コンピュータ3からの要求に応じて記憶部20に記憶されたテストデータを編集してもよい。
そうすることで、(2)と同様の効果を奏することができる。
【0136】
(6) (4)又は(5)に記載のデータ管理方法において、コンピュータ3から要求された送信間隔又は送信時刻に基づいて要求されたテストデータの送信制御を行ってもよい。
そうすることで、(3)と同様の効果を奏することができる。
【符号の説明】
【0137】
1 データ管理装置
10、10a 制御部
11 入力部
12 編集部
13、13a 通信制御部
14 通信部
20 記憶部
21 ロボットデータ
22 CNCデータ
23 センサデータ
2 機器
3 コンピュータ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17A
図17B
図18
図19
図20
図21A
図21B
図22
図23
図24
図25
図26
図27
図28
図29A
図29B
図29C
図30