(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述した特許文献1に開示の技術では、制御装置に記憶部を設けて、バッファとして利用することにより状態データの収集を行っていた。
【0007】
ここで、状態データのサンプリング周期が比較的長い場合には、状態データのデータ量も小さいので特に問題は生じない。しかしながら、状態データのサンプリング周期がより短い(例えば数十マイクロ秒〜数ミリ秒周期)場合には、状態データのデータ量が大きくなる。そのため、状態データを送信するネットワークに輻輳が生じ、状態データの送信遅延や、状態データの再送が発生してしまう。
【0008】
そして、このように状態データの送信が困難となった場合、制御装置のバッファの記憶容量が不足し、データ収集装置に送信すべき状態データが欠落してしまうという問題が生じる。
【0009】
そこで本発明は、より確実に状態データを収集するための、データ収集装置、データ転送装置、データ収集システム、データ収集プログラム及びデータ転送プログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
(1)本発明のデータ収集装置(例えば後述のデータ収集装置30)は、複数のデータ転送装置(例えば後述の数値制御装置20)と通信可能に接続されたデータ収集装置であって、前記複数のデータ転送装置それぞれから、前記データ転送装置と組にされた産業機械(例えば後述の工作機械10)の状態に関するデータである状態データを収集するデータ収集部(例えば後述のデータ収集部31)と、第1の基準に基づいた前記複数のデータ転送装置に対する指示により、前記複数のデータ転送装置から前記データ収集部への前記状態データの送信を制御する通信制御部(例えば後述の通信制御部32)と、を備え、前記通信制御部は、前記複数のデータ転送装置の何れかから前記データ転送装置の一時記憶部の使用状況に基づいた第1の信号を受信した場合に、前記第1の基準とは異なる第2の基準で前記制御を行う。
【0011】
(2) 上記(1)に記載のデータ収集装置を、前記通信制御部は、前記第1の基準では、前記複数のデータ転送装置のそれぞれから均等に前記状態データを送信させ、前記第2の基準では、前記第1の信号の送信元のデータ転送装置の優先度を他のデータ送信装置と異ならせて前記状態データを送信させるようにしてもよい。
【0012】
(3) 上記(1)又は(2)に記載のデータ収集装置を、前記第1の信号は、前記データ転送装置の一時記憶部の記憶容量の空きが少ないことを示す信号であり、前記通信制御部は、前記第2の基準では、前記第1の信号の送信元のデータ転送装置の優先度を他のデータ送信装置よりも高くして前記状態データを送信させるようにしてもよい。
【0013】
(4) 上記(3)に記載のデータ収集装置を、前記通信制御部は、前記複数のデータ転送装置に対して重複しないように送信周期を割り当てて、順番に前記状態データを送信させることにより前記制御を行い、前記第1の基準に基づく前記制御では、前記複数のデータ転送装置に対して一定の長さの送信周期を割り当てて前記状態データを送信させ、前記第2の基準に基づく前記制御では、前記第1の信号の送信元のデータ転送装置に対して、他のデータ転送装置よりも短い送信周期を割り当てて前記状態データを送信させるようにしてもよい。
【0014】
(5) 上記(1)から(4)の何れかに記載のデータ収集装置を、前記第1の信号には、前記データ転送装置の一時記憶部の使用状況の度合いを示す情報が含まれており、前記通信制御部は、前記度合いを示す情報に基づいて前記第2の基準に基づいた前記制御における優先の度合いを決定するようにしてもよい。
【0015】
(6) 上記(1)から(5)の何れかに記載のデータ収集装置を、前記通信制御部は、前記第1の信号の送信元のデータ転送装置から第2の信号を受信した場合に、前記第1の基準で前記制御を行うようにしてもよい。
【0016】
(7) 本発明のデータ転送装置(例えば後述の数値制御装置20)は、データ収集装置(例えば後述のデータ収集装置30)と通信可能に接続されたデータ転送装置であって、当該データ転送装置と組にされた産業機械(例えば後述の工作機械10)の状態に関するデータである状態データを取得するデータ取得部(例えば後述のデータ取得部21)と、前記データ取得部が取得した前記状態データを一時的に記憶する一時記憶部(例えば後述の一時記憶部22)と、前記データ収集装置からの指示に基づいて、前記データ収集装置に対して前記一時記憶部が記憶する前記状態データを送信するデータ転送部(例えば後述のデータ転送部23)と、前記一時記憶部の使用状況を監視し、監視結果に基づいて第1の信号を前記データ収集装置に対して送信する監視部(例えば後述の監視部24)と、を備え、前記第1の信号は、前記データ収集装置からの指示を異ならせるために送信する。
【0017】
(8) 上記(7)に記載のデータ転送装置を、前記データ収集装置は、当該データ転送装置以外の他のデータ転送装置からも前記状態データを収集しており、前記第1の信号は、当該データ収集装置からの前記状態データの送信の優先度を前記他のデータ転送装置と異ならせるために送信するようにしてもよい。
【0018】
(9) 本発明のデータ収集システム(例えば後述のデータ収集システム1)は、複数のデータ転送装置(例えば後述の数値制御装置20)とデータ収集装置(例えば後述のデータ収集装置30)とが通信可能に接続されたデータ収集システムであって、前記データ転送装置が、当該データ転送装置と組にされた産業機械(例えば後述の工作機械10)の状態に関するデータである状態データを取得するデータ取得部(例えば後述のデータ取得部21)と、前記データ取得部が取得した前記状態データを一時的に記憶する一時記憶部(例えば後述の一時記憶部22)と、前記データ収集装置からの指示に基づいて、前記データ収集装置に対して前記一時記憶部が記憶する前記状態データを送信するデータ転送部(例えば後述のデータ転送部23)と、前記一時記憶部の使用状況を監視し、監視結果に基づいて第1の信号を前記データ収集装置に対して送信する監視部(例えば後述の監視部24)と、を備え、前記データ収集装置が、前記複数のデータ転送装置それぞれから、前記状態データを収集するデータ収集部(例えば後述のデータ収集部31)と、第1の基準に基づいた前記複数のデータ転送装置に対する指示により、前記複数のデータ転送装置から前記データ収集部への前記状態データの送信を制御する通信制御部(例えば後述の通信制御部32)と、を備え、前記通信制御部は、前記複数のデータ転送装置の何れかから前記第1の信号を受信した場合に、前記第1の基準とは異なる第2の基準で前記制御を行う。
【0019】
(10) 本発明のデータ収集プログラムは、複数のデータ転送装置(例えば後述の数値制御装置20)と通信可能に接続されたコンピュータ(例えば後述のデータ収集装置30)をデータ収集装置として機能させるデータ収集プログラムであって、
前記複数のデータ転送装置それぞれから、前記データ転送装置と組にされた産業機械(例えば後述の工作機械10)の状態に関するデータである状態データを収集するデータ収集部(例えば後述のデータ収集部31)と、第1の基準に基づいた前記複数のデータ転送装置に対する指示により、前記複数のデータ転送装置から前記データ収集部への前記状態データの送信を制御する通信制御部(例えば後述の通信制御部32)と、を備え、前記通信制御部は、前記複数のデータ転送装置の何れかから前記データ転送装置の一時記憶部の使用状況に基づいた第1の信号を受信した場合に、前記第1の基準とは異なる第2の基準で前記制御を行うデータ収集装置として前記コンピュータを機能させる。
【0020】
(11) 本発明のデータ転送プログラムは、データ収集装置(例えば後述のデータ収集装置30)と通信可能に接続されたコンピュータ(例えば後述の数値制御装置20)をデータ転送装置として機能させるデータ転送プログラムであって、当該データ転送装置と組にされた産業機械(例えば後述の工作機械10)の状態に関するデータである状態データを取得するデータ取得部(例えば後述のデータ取得部21)と、前記データ取得部が取得した前記状態データを一時的に記憶する一時記憶部(例えば後述の一時記憶部22)と、前記データ収集装置からの指示に基づいて、前記データ収集装置に対して前記一時記憶部が記憶する前記状態データを送信するデータ転送部(例えば後述のデータ転送部23)と、前記一時記憶部の使用状況を監視し、監視結果に基づいて第1の信号を前記データ収集装置に対して送信する監視部(例えば後述の監視部24)と、を備え、前記第1の信号は、前記データ収集装置からの指示を異ならせるために送信するデータ転送装置として前記コンピュータを機能させるデータ転送プログラム。
【発明の効果】
【0021】
本発明によれば、より確実に状態データを収集することが可能となる。
【発明を実施するための形態】
【0023】
次に、本実施形態について、図面を参照して詳細に説明を行う。
<実施形態全体の構成>
図1に、本実施形態であるデータ収集システム1全体の構成を示す。
図1に示すように本実施形態は、n台の工作機械10(図中の工作機械10a〜工作機械10nに相当。)、n台の数値制御装置20(図中の数値制御装置20a〜数値制御装置20nに相当。)、データ収集装置30、及びネットワーク40を備える。ここで、nは任意の自然数である。
【0024】
各工作機械10と各数値制御装置20とは、一対一の組とされて相互に通信可能に接続されている。また、各数値制御装置20は、ネットワーク40を介してデータ収集装置30と通信可能に接続されている。ここで、ネットワーク40は、例えば工場内に敷設されたLAN(Local Area Network)や、インターネット上に構築されたVPN(Virtual Private Network)、或いはこれらの組み合わせにより実現される。ネットワーク40での通信は、任意の通信方式により行われてよいが、例えばTCP(Transmission Control Protocol)に準拠して行われる。
【0025】
次に、データ収集システム1による処理の概略について説明する。
データ収集システム1では、複数の工作機械10それぞれに、数値制御装置20を対応付ける。そして、数値制御装置20が自身に対応する工作機械10の状態データを取得し、一時記憶装置(バッファ)に記憶する。そして、数値制御装置20は、一時記憶装置に記憶した状態データをデータ収集装置30に対して送信する。
【0026】
ここで、例えば状態データのサンプリングタイムが短く、状態データのデータ量が大きい場合には、ネットワーク40にて輻輳する。そのため、一時記憶装置から適切に状態データを送信することができなくなり、一時記憶装置に記憶される状態データのデータ量が、一時記憶装置から送信されるデータ量よりも多くなる。このような状態が続くと、一時記憶装置の空き容量が次第に少なっていき、最終的には、送信すべき状態データを一時記憶装置が記憶しきれなくなってしまう。すなわち、バッファ溢れとなり、送信すべき状態データが欠落してしまう。
そこで、データ収集システム1では、一時記憶装置の空き容量が少なくなった時点で、数値制御装置20がデータ収集装置30に対して警告信号を送信する。
【0027】
データ収集装置30は、警告信号を受信すると、警告信号の送信元の数値制御装置20から優先的に状態データを取得する。これにより、警告信号の送信元の数値制御装置20におけるバッファ溢れを未然に防ぎ、データの欠落を防止することができる。
以上がデータ収集システム1における処理の概略である。
【0028】
なお、本実施形態では、工作機械の状態データを収集する例について説明をするが、本実施形態は、工作機械に限らず、産業機械全般に広く適用することができる。産業機械とは、例えば、工作機械、産業用ロボット、サービス用ロボット、鍛圧機械及び射出成形機といった様々な機械である。また産業機械は、特に本実施形態特有のものである必要はなく、一般的な産業機械により実現することができる。
【0029】
次に、データ収集システム1に含まれる各装置の詳細について説明する。なお、n台の工作機械10は、それぞれ同等の機能を有しているので、以下の説明において、何れかの工作機械10を特定せずに説明する場合には、符号の末尾のアルファベットを省略して工作機械10と呼んで説明をする。同様に、n台の数値制御装置20は、それぞれ同等の機能を有しているので、何れかの数値制御装置20を特定せずに説明する場合には、符号の末尾のアルファベットを省略して数値制御装置20と呼んで説明をする。
【0030】
<工作機械10の機能>
工作機械10は、切削加工等の所定の加工を行う装置である。
工作機械10は、駆動部(例えばモータ)や、モータに取り付けられた主軸や送り軸や、これら各軸に対応する治具や工具等を備える。そして、工作機械10は、加工プログラムに基づいて数値制御を行う数値制御装置20から出力される動作指令に基づいてモータを駆動させることにより所定の加工を行う。工作機械10による加工の内容に特に限定はなく、切削加工以外にも、例えば研削加工、研磨加工、圧延加工、或いは鍛造加工といった他の加工であってもよい。なお、これらの加工を行うための、数値制御装置20による工作機械10の制御方法については、当業者にとってよく知られているので詳細な説明を省略する。
【0031】
本実施形態では、上述したように、データ収集装置30が工作機械10についての状態データを取得する。ここで、状態データは、例えば、工作機械10の駆動軸の、位置、速度、加速度及びトルク等に関する物理量を表すデータである。具体的には、例えば、モータ電流の実測値、モータ回転速度の実測値、及びモータのトルクの実測値等である。
【0032】
状態データは、工作機械10に設置された各種のセンサや、工作機械10の周囲に設置された各種のセンサにより測定される。各種のセンサとは、例えば駆動軸の位置を算出するためのロータリエンコーダやリニアエンコーダ、モータに流れる電流を測定する電流計、駆動軸に加わる振動を測定するための加速度センサ、駆動軸のオーバーヒートを検出するための温度センサである。
【0033】
なお、これらの状態データは例示に過ぎず、他にも、数値制御装置20が工作機械10に対して出力した動作指令に含まれる位置指令や、フィードバック制御に関する情報を状態データとしてもよい。例えば、位置フィードバックや、位置指令から位置フィードバックを減算した位置偏差等を状態データとしてもよい。
【0034】
また、ユーザが状態データを解析する際に役立つように、状態データには、状態データの属性を示す情報も含ませるようにするとよい。例えば状態データの属性を示す情報として、データ取得日時、工作機械10を駆動させるために用いた加工プログラム、工作機械10の機械番号等を含ませるようにするとよい。また、他にも例えば、データ取得日時に、加工開始時の時刻や、加工終了時の時刻を示すフラグを付加するようにしてもよい。
【0035】
<数値制御装置20の機能>
次に、
図2を参照して、数値制御装置20の備える機能ブロックについて説明をする。
図2に示すように数値制御装置20は、データ取得部21、一時記憶部22、データ転送部23、及び監視部24を備える。
【0036】
データ取得部21は、工作機械10から状態データを取得する部分である。上述したように、状態データは、例えば工作機械10に設置された各種のセンサや、工作機械10の周囲に設置された各種のセンサにより測定される。そこで、データ取得部21は例えばこれらのセンサから状態データを取得する。そして、データ取得部21は取得した状態データを一時記憶部22に記憶させる。
【0037】
データ取得部21による状態データの取得の周期は、センサによる測定周期(サンプリングタイム)に準じた周期とする。また、取得する状態データの種類は、1つの種類であってもよいが複数種類であってもよい。更に、状態データのデータサイズは任意のサイズであってよい。例えば、データ取得部21は、1[msec]のサンプリング周期で、2byteのサイズの状態データを8種類取得する。
【0038】
なお、サンプリング周期を状態データの種類や、状態データの測定状況に応じて異ならせるようにしてもよい。
例えば工作機械10の駆動軸に加わる振動は、短時間で大きく変動するので、駆動軸の振動については比較的短いサンプリング周期で測定するようにするとよい。これに対して、例えば工作機械10の周囲の温度は、短時間で大きくは変動しないので、比較的長いサンプリング周期で測定するようにするとよい。
【0039】
また、例えば同じモータ回転速度の実測値をサンプリングする場合であっても、駆動軸が加速時のモータ回転速度は大きく変動するので比較的短いサンプリング周期(例えば1[msec])で測定し、駆動軸が定速時のモータ回転速度はそれほど大きく変動しないので比較的長いサンプリング周期(例えば10[msec])で測定するようにするとよい。
【0040】
一時記憶部22は、データ取得部21が取得した状態データを一時的に記憶するバッファとして機能する部分である。一時記憶部22が記憶した状態データは、データ転送部23により読み込まれ、データ転送部23からデータ収集装置30に対して送信される。データ転送部23は、データ収集装置30に対して送信した状態データについては、一時記憶部22から削除する。
【0041】
一時記憶部22の記憶容量の大きさは、状態データのサンプリングタイムやデータサイズに応じた大きさとする。例えば、データ取得部21が、1[msec]のサンプリング周期で、2[byte]のサイズの状態データを8種類測定する場合に、一時記憶部22の記憶容量を500[kbyte]とすることにより、約30秒間分の状態データをバッファすることができる。
【0042】
データ転送部23は、一時記憶部22に記憶されている状態データをデータ収集装置30に対して送信する部分である。データ収集装置30は、例えば各工作機械10の加工スケジュールに基づいて、当該工作機械を制御する数値制御装置20に対して、工作機械10による加工処理の開始指示とデータ送信指示を送信する。なお、この加工開始指示は、データ転送部23に対するデータ送信指示を兼ねるようにしてもよい。そうすることで、データ転送部23は、データ収集装置30からの加工開始指示に基づいて加工処理を開始すると、データ収集装置30に対して適宜、状態データの送信を行う。
【0043】
監視部24は、一時記憶部22の記憶領域の空き容量を監視する部分である。監視部24は、一時記憶部22の記憶領域の空き容量が所定量以下となった場合に、警告信号を生成する。そして、監視部24は、生成した警告信号をデータ収集装置30に対して送信する。なお、監視部24は、一時記憶部22の記憶領域の空き容量が所定量未満となった場合に、警告信号を生成するようにしてもよい。また、監視部24は、一時記憶部22の記憶領域の使用容量が所定量以上となった場合に、警告信号を生成するようにしてもよい。監視部24は、一時記憶部22の記憶領域の使用容量が所定量を超えた場合に、警告信号を生成するようにしてもよい。
データ収集装置30からの加工開始指示に伴う状態データの送信と、警告信号の詳細については、<状態データの送信制御>として後述する。
【0044】
<データ収集装置30>
次に、
図3を参照して、データ収集装置30の備える機能ブロックについて説明をする。
図3に示すようにデータ収集装置30は、データ収集部31と通信制御部32を備える。
データ収集部31は、数値制御装置20のデータ転送部23が送信した状態データを受信する部分である。データ収集部31が収集した状態データは、例えば図示を省略したデータベースに蓄積され、ユーザにより利用される。ユーザは、例えば状態データを解析して、工作機械10の経年変化により生じる部品の劣化や、故障の兆候等を発見するために利用することができる。
【0045】
通信制御部32は、数値制御装置20のデータ転送部23が行う状態データの送信についての制御を行う部分である。かかる制御のために、通信制御部32は、データ転送部23に対して加工開始指示と状態データの送信指示を送信する。
これらの指示を適切なタイミングで送信するために、データ収集装置30は、各工作機械10の稼動スケジュールを管理している。そして、通信制御部32は、稼動スケジュールに基づいて、加工を行う工作機械10を特定する。そして、特定した工作機械10に対応する数値制御装置20に対して加工開始指示と状態データの送信指示を送信する。なお、状態データの送信指示が加工開始指示に含まれていてもよい。
また、通信制御部32は、数値制御装置20の監視部24から警告信号を受信した場合に、数値制御装置20のデータ転送部23に対して、送信周期を変更する旨の指示である周期変更指示を送信する。
この周期変更指示については、<状態データの送信制御>として後述する。
【0046】
以上、
図2及び
図3を参照して、数値制御装置20及びデータ収集装置30のそれぞれの機能ブロックについて説明をした。
これらの機能ブロックを実現するために、数値制御装置20及びデータ収集装置30のそれぞれは、CPU(Central Processing Unit)等の演算処理装置を備える。また、数値制御装置20及びデータ収集装置30のそれぞれ数値制御装置20及びデータ収集装置30のそれぞれは、各種の制御用プログラムを格納したHDD(Hard Disk Drive)等の補助記憶装置や、演算処理装置がプログラムを実行する上で一時的に必要とされるデータを格納するためのRAM(Random Access Memory)といった主記憶装置を備える。
【0047】
そして、演算処理装置が補助記憶装置からアプリケーションやOS(Operating System)を読み込み、読み込んだアプリケーションやOSを主記憶装置に展開させながら、これらのアプリケーションやOSに基づいた演算処理を行なう。また、この演算結果に基づいて、各装置が備える各種のハードウェアを制御する。つまり、本実施形態に含まれる各装置は、ハードウェアとソフトウェアが協働することにより実現することができる。
【0048】
具体例として、例えば、数値制御装置20は、一般的な数値制御装置に、本実施形態を実現するためのソフトウェアを組み込むことにより実現することができる。また、データ収集装置30は、一般的なパーソナルコンピュータやサーバ装置に、本実施形態を実現するためのソフトウェアを組み込むことにより実現することができる。
【0049】
<状態データの送信制御>
次に、本実施形態における状態データの送信制御について詳細に説明をする。
上述したように、数値制御装置20のデータ転送部23はデータ収集装置30からの加工開始指示と状態データの送信指示に基づいて状態データの送信を行う。また、データ転送部23はデータ収集装置30からの加工開始指示に基づいた加工処理が終了したことを契機として状態データの送信を終了する。
【0050】
また、本実施形態では、データ収集装置30は、複数の数値制御装置20から状態データを収集する。この場合に、複数の数値制御装置20が、同じタイミングで一斉に状態情報を送信すると、ネットワーク40が輻輳してしまう可能性がある。
【0051】
そこで、本実施形態では、各数値制御装置20が、取得した状態データをリアルタイムに送信するのではなく、一時記憶部22に一度記憶してから、一定の周期で間欠的に送信するようにしてもよい。各数値制御装置20の送信周期をずらすことにより、各数値制御装置20が送信する時間が重複しないようにすることができる。これにより、ネットワーク40の輻輳を防止することができる。
【0052】
データ収集装置30は、各数値制御装置20が状態データを送信する周期の長さや、送信開始タイミングについて、一元的に管理する。そして、データ収集装置30は、状態データの送信指示に、状態データを送信する周期の長さや、送信開始タイミングを含ませる。そして、各数値制御装置20それぞれのデータ転送部23がこの指示に基づいて状態データを転送する。
【0053】
このように、データ収集装置30が、各数値制御装置20の状態データを送信する周期の長さや、送信開始タイミングについて制御を行うことで、例えばネットワーク40の輻輳を防止したり、データ転送部23による状態データの転送速度が、データ取得部21による状態データの取得速度を上回るようにすることができる。これによりバッファ溢れによる送信データの欠落が発生することを防止できる。
【0054】
ただし、ネットワーク40の通信容量(帯域幅)、状態データのデータ量、状態データのサンプリング周期、及び状態データを送信する対象とした数値制御装置20の台数といった要因で、データ転送部23による状態データの転送速度が低下して、一時記憶部22の空き容量が少なくなることがある。
【0055】
この場合に、本実施形態では、上述したように、監視部24が警告信号を通信制御部32に対して送信する。また、通信制御部32は、数値制御装置20の監視部24から警告信号を受信した場合に、数値制御装置20のデータ転送部23に対して、周期変更指示を送信する。
【0056】
周期変更指示は、各数値制御装置20が状態データを送信する周期の長さを変更するための指示である。通信制御部32は、周期変更指示により警告信号の送信元の数値制御装置20(すなわち、一時記憶部22の空き容量が少ない数値制御装置20)が優先的に状態データを送信できるようにする。具体的には、周期変更指示により、各数値制御装置20の送信周期を変更することにより、警告信号の送信元の数値制御装置20の送信周期を他の数値制御装置20よりも短くする。また、これに伴い、警告信号の送信元の数値制御装置20以外の数値制御装置20の送信周期を警告信号の送信元の数値制御装置20よりも長くする。
【0057】
これにより、警告信号の送信元の数値制御装置20による状態データの送信を速やかに行えるようになる。すると、警告信号の送信元の数値制御装置20において、データ転送部23による状態データの転送速度が、データ取得部21による状態データの取得速度を上回ることになり、一時記憶部22の空き容量を増加する。従って、状態データが欠落することを防止できる。
【0058】
以上説明したように、本実施形態では、一時記憶部22というバッファを設けることにより、各数値制御装置20の送信周期をずらしたり、ネットワーク40の輻輳を防止したりすることが可能となる。
【0059】
また、それでも、ネットワーク40が輻輳してしまった場合には、警告信号と周期変更指示を用いて、一時記憶部22の空き容量を確保することが可能となる。
【0060】
<数値制御装置20の動作>
次に、
図4のフローチャートを参照して数値制御装置20が行う加工処理時の動作について説明をする。加工処理は、上述したように、データ収集装置30から加工開始指示と状態データの送信指示を受信したことを契機として開始される。
【0061】
ステップS11において、データ取得部21は、工作機械10から状態データを取得する。データ取得部21は、取得した状態データを一時記憶部22に出力する。
【0062】
ステップS12において、一時記憶部22は、データ取得部21が取得した状態データを記憶する。
【0063】
ステップS13において、監視部24は、一時記憶部22の空き容量が所定量未満であるか否かを判定する。一時記憶部22の空き容量が所定量未満の場合には、ステップS13においてYesと判定され、処理はステップS14に進む。一方で、一時記憶部22の空き容量が所定量以上の場合には、ステップS13においてNoと判定され、処理はステップS15に進む。
【0064】
ステップS14において、監視部24は、通信制御部32に対して警告信号を送信する。
【0065】
ステップS15において、データ転送部23は、通信制御部32から周期変更指示を受信したか否かを判定する。周期変更指示を受信した場合には、ステップS15においてYesと判定され、処理はステップS16に進む。一方で、周期変更指示を受信しなかった場合には、ステップS15においてNoと判定され、処理はステップS17に進む。
【0066】
ステップS16において、データ転送部23は、周期変更指示に基づいて送信周期を変更する。例えば監視部24が、警告信号を送信した場合には、送信周期を短くする旨の周期変更指示を受信するので、データ転送部23は、送信周期を短くする。一方で、送信周期を長くする旨の周期変更指示を受信した場合、データ転送部23は、送信周期を長くする。例えば、他の数値制御装置20が警告信号を送信して、データ収集装置30が、当該数値制御装置20の送信周期を長くなるように変更した場合等が例として挙げられる。
【0067】
ステップS17において、データ転送部23は、送信周期が到来したか否かを判定する。送信周期が到来した場合には、ステップS17においてYesと判定され、処理はステップS18に進む。一方で、送信周期が未だ到来していない場合には、ステップS17においてNoと判定され、処理はステップS11に戻る。そして、数値制御装置20は、上述した処理を繰り返す。
【0068】
ステップS18において、データ転送部23は、一時記憶部22が記憶する状態データをデータ収集部31に対して送信する。
【0069】
ステップS19において、データ転送部23は、工作機械10における予めスケジュールされた加工処理が終了したか否かを判定する。判定は、例えば状態データの内容に基づいて行われる。
工作機械10における加工が終了した場合は、ステップS19においてYesと判定され、処理はステップS20に進む。一方で、通信制御部32からデータ送信の終了指示を受信していない場合には、ステップS19においてNoと判定され、処理はステップS11に戻る。そして、数値制御装置20は、上述した処理を繰り返す。
ステップS20において、データ転送部23は、工作機械10の予めスケジュールされた加工処理が終了した旨の通知をデータ収集装置30の通信制御部32に対して送信する。これにより、通信制御部32は、工作機械10の予めスケジュールされた加工処理が終了したこと及びこれに伴うデータ転送部23の状態データの送信が終了したことを把握できる。そして、数値制御装置20は、加工処理を終了する。
数値制御装置20は、上述のようにして、データ収集装置30に対して状態データを送信する。
【0070】
<データ収集装置30の動作>
次に、
図5のフローチャートを参照してデータ収集装置30の動作について説明をする。
【0071】
ステップS21において、通信制御部32は、数値制御装置20のデータ転送部23に対して、例えば加工開始指示と状態データの送信指示を送信する。加工開始指示と状態データの送信指示を受信した数値制御装置20は、
図4を参照して説明した上述の加工処理を開始する。
【0072】
ステップS22において、通信制御部32は、データ転送部23が送信する状態データを受信する。
【0073】
ステップS23において、通信制御部32は、監視部24から警告信号を受信したか否かを判定する。警告信号を受信した場合は、ステップS23においてYesと判定され、処理はステップS24に進む。一方で、警告信号を受信していない場合には、ステップS23においてNoと判定され、処理はステップS25に進む。
【0074】
ステップS24において、通信制御部32は、各数値制御装置20に対して送信周期の変更指示を送信する。具体的には、警告信号の送信元の数値制御装置20に対しては、送信周期を短くする旨の周期変更指示を送信する。一方で、他の数値制御装置20に対しては、例えば送信周期を長くする旨の周期変更指示を送信する。
【0075】
ステップS25において、通信制御部32は、数値制御装置20のデータ転送部23から、加工終了通知を受信したか否かを判定する。
データ収集部31は、数値制御装置20から加工終了通知を受信した場合には、データ収集処理を終了する。一方で、データ収集部31は数値制御装置20から加工終了通知を受信していない場合には、処理はステップS21に戻る。そして、データ収集装置30は、上述した処理を繰り返す。
データ収集装置30は、上述のようにして、数値制御装置20から状態データを収集する。
【0076】
以上
図4及び
図5を参照して説明した各処理により、データ収集装置30は、各数値制御装置20の状態データを送信する周期の長さや、送信開始タイミングについて制御を行うことで、例えばネットワーク40の輻輳を防止したり、データ転送部23による状態データの転送速度がデータ取得部21による状態データの取得速度を上回るようにすることができる。具体的には、データ収集装置30は、数値制御装置20からの警告信号に基づいて、周期変更指示を行うことで、バッファ溢れによる送信データの欠落が発生することを防止できる。
従って、本実施形態によれば、より確実に状態データを収集することが可能となる。
【0077】
<ハードウェアとソフトウェアの協働>
なお、上記の各実施形態に含まれる各装置は、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。また、上記の各実施形態に含まれる各装置が協働することにより行なわれるデータ収集方法も、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【0078】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(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(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0079】
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。例えば、以下の変形例のような変更を施した形態での実施が可能である。
【0080】
<第1変形例>
上述した実施形態では、一時記憶部22の空き容量が少なくなった場合に、監視部24が警告信号を通信制御部32に対して送信していた。そして、通信制御部32が、送信周期の変更指示により、警告信号の送信元の数値制御装置20に優先的に状態データを送信させるようにしていた。
【0081】
この処理により、警告信号の送信元の数値制御装置20の一時記憶部22の空き容量が多くなった場合に、監視部24が警告を解除する信号を通信制御部32に対して送信するようにするとよい。そして、通信制御部32が、送信周期の変更指示により、優先的な状態データの送信を終了させるようにするとよい。すなわち、各数値制御装置20の送信周期を同じ長さに戻すとよい。
これにより、一時記憶部22の空き容量が多くなった場合には、各数値制御装置20から均等に状態データを収集することが可能となる。
【0082】
<第2変形例>
上述した実施形態では、通信制御部32が、警告信号を受信したか否かに応じて優先的に状態データを送信させるか否かを判定していた。この判定を更に段階的に行うようにしてもよい。例えば、一時記憶部22の空き容量について第1の閾値と、第1の閾値よりも小さな値の第2の閾値を設ける。そして、監視部24が、一時記憶部22の空き容量が、第1の閾値以下となった場合には第1の警告信号を送信し、第2の閾値以下となった場合には第2の警告信号を送信するようにする。すなわち、空き容量の少なさの度合いに応じて異なる警告信号を送信するようにする。
【0083】
また、通信制御部32は、受信した警告信号により、優先度の制御の度合いを異ならせる。上記の例の場合であれば、第1の警告信号を受信した場合よりも、第2警告信号を受信した場合の方が、優先度を高くするようにする。具体的には、第1の警告信号を受信した場合よりも、第2警告信号を受信した場合の方が、状態データの送信周期が短くなるようにする。
これにより、空き容量の少なさの度合いに応じた、適切な優先度とすることが可能となる。
【0084】
<第3変形例>
上述した実施形態では、送信周期の変更により、状態データの送信についての優先度を変化させていた。このように、時分割により優先度を変化させるのではなく、帯域制限により優先度を変化させるようにするとよい。例えば、警告信号の送信元の数値制御装置20以外の数値制御装置20に対しては、単位時間あたりの送信可能データ量を制限するようにするとよい。
これにより、例えば各数値制御装置20間での時刻同期が正確に行なえず、時分割が困難な場合であっても、状態データの送信についての優先度を変化させることができる。
【0085】
<第4変形例>
上述した実施形態において、工作機械10と数値制御装置20は、一対一に対応付けられていたが、一対多に対応づけてもよい。例えば、1つの数値制御装置20が複数の工作機械10から状態データを取得して転送するようにしてもよい。また、データ収集装置30は、1つの場所(例えば1つの工場)に設置されている数値制御装置20から状態データを収集するようにしてもよいが、複数の場所(例えば複数の工場)に設置されている数値制御装置20から状態データを収集するようにしてもよい。
【0086】
<第5変形例>
上述した実施形態では、データ収集装置30が、数値制御装置20に対して加工開始指示と状態データの送信指示を送信していた。そして、数値制御装置20は、この加工開始指示と状態データの送信指示を受信したことを契機として、工作機械10に加工処理を開始させると共に、状態データの送信を行っていた。
これに対して、数値制御装置20がユーザの操作に基づいて工作機械10に加工処理を開始させることや、予め決定されたスケジュールに基づいて工作機械10に加工処理を開始させることを契機として、データ収集装置30に対して状態データの送信を行うようにしてもよい。つまり、データ収集装置30の指示の有無に関わらず、数値制御装置20が状態データの送信を行うようにしてもよい。この場合に、数値制御装置20が状態データの送信を行うに先立って、データ収集装置30に対して加工開始メッセージを送信するようにしてもよい。そして、加工開始メッセージを受信したデータ収集装置30から、状態データの送信を許可する旨の応答が有った場合に、数値制御装置20が状態データの送信を開始するようにしてもよい。
【0087】
<第6変形例>
上述した実施形態では、数値制御装置20の監視部24が、一時記憶部22の空き容量が少なくなった場合に、警告信号を通信制御部32に対して送信していた。この監視部24を省略した構成としてもよい。
この場合、データ転送部23は、状態データに、一時記憶部22の空き容量を示す値や、空き容量の増加率又は減少率を示す値を含ませる。そして、通信制御部32が、これらの値に基づいて、優先的に状態データを送信させるか否かを判定するようにする。例えば、一時記憶部22の空き容量を示す値が低い数値制御装置20に、優先的に状態データを送信させるようにする。これにより、各数値制御装置20に監視部24を設ける必要がなくなる。
また、データ転送部23が、更にこれらの値に基づいて段階的に優先度を変更するようにしてもよい。例えば、最も空き容量が少ない数値制御装置20について送信周期を最も短くし、次に空き容量が少ない数値制御装置20について送信周期を次に短くし、他の数値制御装置20に対しては、これら2つの数値制御装置よりも送信周期を長くするようにしてもよい。これにより、各数値制御装置20の空き容量に応じて優先度を決定することができる。
【0088】
<第7変形例>
上述した実施形態では、一時記憶部22の空き容量が少なくなった場合に、監視部24が警告信号を通信制御部32に対して送信していた。そして、通信制御部32が、送信周期の変更指示により、警告信号の送信元の数値制御装置20に優先的に状態データを送信させるようにしていた。
これに加えて、状態データが適切に送信できており、一時記憶部22の空き容量が多く確保できている状態の場合に、監視部24が空き容量に余裕がある旨の信号を通信制御部32に対して送信するようにしてもよい。そして、通信制御部32が、送信周期の変更指示により、空き容量に余裕がある旨の信号の送信元の数値制御装置20以外の数値制御装置20に優先的に状態データを送信させるようにしてもよい。
これにより、一時記憶部22の空き容量に余裕がある数値制御装置20以外の数値制御装置20から優先的に状態データを収集することが可能となる。