(57)【要約】【課題】数値制御装置から容易にワークの計測結果を取得することが可能な稼働管理システムを提供する。【解決手段】工作機械を制御してワークを計測する数値制御装置２０からワークの計測値を取得する稼働管理システム１０は、数値制御装置２０から計測を制御するための計測マクロ２１を読み出す計測マクロ受信部１１、計測マクロ２１を解析し、計測値が格納される計測結果変数名を特定する計測マクロ解析部１２、数値制御装置２０から計測結果変数の値を読み出す計測結果読出部１５を有する。【選択図】図２
2018013885.tif 000002
【特許請求の範囲】
【請求項１】
工作機械を制御してワークを計測する数値制御装置から、前記ワークの計測値を取得する稼働管理システムであって、
前記数値制御装置から前記計測を制御するための計測マクロを読み出す計測マクロ受信部と、
前記計測マクロを解析し、前記計測値が格納される計測結果変数名を特定する計測マクロ解析部と、
前記数値制御装置から前記計測結果変数の値を読み出す計測結果読出部と、を有する
稼働管理システム。
【請求項２】
保存部をさらに有し、
前記計測マクロ解析部は、前記ワークの種類と１以上の前記計測結果変数名とを対応付けて前記保存部に保存する
請求項１記載の稼働管理システム。
【請求項３】
前記計測マクロ解析部は、前記数値制御装置において実行中のプログラム名に基づいて前記ワークの種類を特定する
請求項２記載の稼働管理システム。
【請求項４】
前記計測結果読出部は、前記計測マクロに含まれるトリガ変数が更新されたことに応じて、前記数値制御装置から前記計測結果変数の値を読み出す
請求項１記載の稼働管理システム。
【請求項５】
前記計測マクロ解析部は、前記計測マクロを解析し、前記トリガ変数名を特定する
請求項４記載の稼働管理システム。
【請求項６】
前記計測マクロ解析部は、前記計測マクロにおいて前記計測結果変数が記述された行の位置に基づいて前記計測結果変数名を特定する
請求項１記載の稼働管理システム。
【請求項７】
前記計測マクロ解析部は、前記計測マクロ内に記述されたコメントの内容に基づいて前記計測結果変数名を特定する
請求項１記載の稼働管理システム。
【請求項８】
工作機械を制御してワークを計測する数値制御装置と、
前記数値制御装置から前記ワークの計測値を取得する稼働管理システムと、を含む計測システムであって、
前記稼働管理システムは、
前記数値制御装置から前記計測を制御するための計測マクロを読み出す計測マクロ受信部と、
前記計測マクロを解析し、前記計測値が格納される計測結果変数名を特定する計測マクロ解析部と、
前記数値制御装置から前記計測結果変数の値を読み出す計測結果読出部と、を有する
計測システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は計測データを収集する稼働管理システムに関し、特に数値制御装置から容易にワークの計測結果を取得することが可能な稼働管理システム及び計測システムに関する。
【背景技術】
【０００２】
近年、工作機械によるワークの加工工程においてトレーサビリティへの要望が高まってきている。例えば、工作機械が加工した個々のワークについて加工後の寸法を計測し、計測データを保存しておけば、後にワークに問題があることが判明した場合に、計測データを調べるならばどの工程に問題があったのかを追跡することができる。
【０００３】
ワークの計測は、工作機械とは別の計測機器が実施する場合がある。一方、段取り工程を省略するために工作機械自身が加工と計測とを実施する場合もある。後者の場合、典型的には、工作機械にはプローブ（計測用の探針）が取付けられ、数値制御装置が計測用マクロプログラム（以下計測マクロ）に従って当該工作機械を制御することによって計測が実施される。計測マクロは、所定の計測結果変数に計測結果をセットする。そして、稼働管理システムが数値制御装置から計測結果変数の値を読み出すことにより計測結果を取得する。ここで稼働管理システムとは、典型的には稼働管理ソフトウェアに従って動作するパーソナルコンピュータ等の情報処理装置である。
【０００４】
特許文献１には、数値制御装置が工作機械を制御してワークの測定を実行させるシステムの一例が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第５９０６９５６号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、工作機械又は計測機器が計測すべきワーク上の場所（計測箇所）及び計測箇所の数は、ワークの種類毎に異なることが一般的である。そのため、一般に計測マクロもワークの種類毎に別個に作成される。したがって、稼働管理システムも、計測マクロ毎すなわちワークの種類毎に異なる計測結果変数を読み出すべきことになる。換言すれば、稼働管理システムは、ワークの種類毎に読み出すべき計測結果変数を予め正しく把握している必要がある。
【０００７】
この点、従来は作業者が稼働管理システムに対しワーク種類と計測結果変数の対応関係を手作業で設定していた。このとき、作業者は計測マクロの内容を予め正しく理解したうえで、理解した内容に従って正しく設定作業を行う必要があった。この工程には相応の工数が必要であり、また手作業であるがゆえにミスが発生する可能性もあった。
【０００８】
ここで、計測マクロの内容を解析し、解析結果に基づいて稼働管理システムに対する設定を行う工程を自動化することができれば、計測データの収集はより容易かつ正確に実施できるはずであるが、従来そのような手段は提供されていなかった。
【０００９】
本発明は、このような問題点を解決するためになされたものであり、数値制御装置から容易にワークの計測結果を取得することが可能な稼働管理システム及び計測システムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の一実施の形態にかかる稼働管理システムは、工作機械を制御してワークを計測する数値制御装置から、前記ワークの計測値を取得する稼働管理システムであって、前記数値制御装置から前記計測を制御するための計測マクロを読み出す計測マクロ受信部と、前記計測マクロを解析し、前記計測値が格納される計測結果変数名を特定する計測マクロ解析部と、前記数値制御装置から前記計測結果変数の値を読み出す計測結果読出部と、を有する。
【００１１】
他の実施の形態にかかる稼働管理システムは、保存部をさらに有し、前記計測マクロ解析部は、前記ワークの種類と１以上の前記計測結果変数名とを対応付けて前記保存部に保存する。
【００１２】
他の実施の形態にかかる稼働管理システムは、前記計測マクロ解析部は、前記数値制御装置において実行中のプログラム名に基づいて前記ワークの種類を特定する。
【００１３】
他の実施の形態にかかる稼働管理システムは、前記計測結果読出部は、前記計測マクロに含まれるトリガ変数が更新されたことに応じて、前記数値制御装置から前記計測結果変数の値を読み出す。
【００１４】
他の実施の形態にかかる稼働管理システムは、前記計測マクロ解析部は、前記計測マクロを解析し、前記トリガ変数名を特定する。
【００１５】
他の実施の形態にかかる稼働管理システムは、前記計測マクロ解析部は、前記計測マクロにおいて前記計測結果変数が記述された行の位置に基づいて前記計測結果変数名を特定する。
【００１６】
他の実施の形態にかかる稼働管理システムは、前記計測マクロ解析部は、前記計測マクロ内に記述されたコメントの内容に基づいて前記計測結果変数名を特定する。
【００１７】
他の実施の形態にかかる計測システムは、工作機械を制御してワークを計測する数値制御装置と、前記数値制御装置から前記ワークの計測値を取得する稼働管理システムと、を含む計測システムであって、前記稼働管理システムは、前記数値制御装置から前記計測を制御するための計測マクロを読み出す計測マクロ受信部と、前記計測マクロを解析し、前記計測値が格納される計測結果変数名を特定する計測マクロ解析部と、前記数値制御装置から前記計測結果変数の値を読み出す計測結果読出部と、を有する。
【発明の効果】
【００１８】
本発明は、このような問題点を解決するためになされたものであり、数値制御装置から容易にワークの計測結果を取得することが可能な稼働管理システム及び計測システムを提供することを目的とする。
【図面の簡単な説明】
【００１９】
【図１】本発明の概要を示す図である。
【図２】本発明の実施の形態１及び２にかかる稼働管理システム１０の構成を示す図である。
【図３】本発明の実施の形態１における計測マクロの一例を示す図である。
【図４】本発明の実施の形態１にかかる稼働管理システム１０の動作を示す図である。
【図５】本発明の実施の形態１及び２における対応表の一例を示す図である。
【図６】本発明の実施の形態２における計測マクロの一例を示す図である。
【図７】本発明の実施の形態２にかかる稼働管理システム１０の動作を示す図である。
【図８】本発明の実施の形態１及び２にかかる稼働管理システム１０の動作を示す図である。
【発明を実施するための形態】
【００２０】
はじめに、本発明の理解を容易にするため、従来、稼働管理システムが数値制御装置から計測結果を取得するために実施されていた一連の処理手順について説明する。当該手順は事前準備及び計測実行の２段階からなる。
【００２１】
１．事前準備
作業者がワークの種類毎に計測マクロを作成する段階である。計測マクロでは一般に以下のようなマクロ変数が使用される。
（ａ）ワーク種類変数
数値制御装置がワークの種類を設定するための変数である。稼働管理システムはワーク種類変数の値を読み取ることでワークの種類を得ることができる。
（ｂ）計測結果変数
数値制御装置が計測結果の値を設定するための変数である。計測結果変数の数や種類はワークの種類毎に異なる。
（ｃ）トリガ変数
数値制御装置がワーク種類変数及び計測結果変数に値を格納したことを稼働管理システムに通知するための変数である。典型的には、数値制御装置はワーク種類変数及び計測結果変数に値を設定したならばトリガ変数の値を１に設定する。稼働管理システムはトリガ変数を監視しておき、トリガ変数の値が１になったならワーク種類変数の値を読み出す。稼働管理システムは予めワーク種類変数と計測結果変数の数及び種類との対応表を保持している。稼働管理システムは、数値制御装置から読み出したワーク種類変数の値をキーとして対応表を参照し、読み出すべき計測結果変数の数と種類（すなわち変数名）とを決定する。稼働管理システムは数値制御装置から適切な計測結果変数の値を読み出す。計測結果変数の読み出しが完了したらトリガ変数の値を０に設定する。
【００２２】
計測マクロは一般に以下のような構造を有する。
（１）ワーク種類変数にワークの種類を設定するステップ
（２）ワークの計測を実行し、計測結果変数に計測値を設定するステップ
（３）トリガ変数の値を１に変更するステップ
（４）トリガ変数の値が０になるまで待機するステップ
【００２３】
作業者は、計測マクロの内容を理解したうえで、ワーク種類変数と計測結果変数との対応関係を稼働管理システムに設定する作業を実施する。稼働管理システムは、ここで設定された対応関係を上述の対応表として保持する。典型的な対応表では、１以上のワーク種類変数夫々に対して、１以上の計測結果変数の名前が関連付けられる。
【００２４】
２．計測実行
数値制御装置が計測マクロを実行し、稼働管理システムが計測値を取得する処理を行う段階である。稼働管理システムは一般に以下のような処理を実施する。
（１）トリガ変数の値を定期的に読み取り、値が１になるまで待機するステップ
（２）トリガ変数の値が１になったならワーク種類変数の値を読み取り、ワークの種類を特定するステップ
（３）（２）で特定したワーク種類変数をキーとしてワーク種類変数と計測結果変数との対応表を検索し、読み出すべき計測結果変数を特定するステップ
（４）（３）で特定した計測結果変数の値を読み出すステップ
（５）トリガ変数の値を０に戻すステップ
【００２５】
なお、上述の手順はあくまで一例であり、計測マクロの内容や計測実行ステップは上記以外の構成とすることも可能である。例えば、（Ａ）計測マクロにおいてはワーク種類変数を使用せず、ワークの種類を特定するための識別子として例えば計測マクロのプログラム名を使用することとしても良い。さらには（Ｂ）稼働管理システムはトリガ変数を監視する代わりに、数値制御装置上で実行中のプログラム名を監視すなわち定期的に読み取るよう構成されても良い。
【００２６】
（Ａ）の場合、作業者は、計測マクロのプログラム名と計測結果変数との対応関係を稼働管理システムに設定する。また、計測マクロの構造は以下のようになる。
（１）ワークの計測を実行し、計測結果変数に計測値を設定するステップ
（２）トリガ変数の値を１に変更するステップ
（３）トリガ変数の値が０になるまで待機するステップ
【００２７】
また（Ａ）の場合に稼働管理システムは以下のような処理を実施する。
（１）トリガ変数の値を定期的に読み取り、値が１になるまで待機するステップ
（２）トリガ変数の値が１になったなら数値制御装置上で実行中のプログラム名を取得し、ワークの種類を特定するステップ
（３）（２）で特定したプログラム名をキーとしてプログラム名と計測結果変数との対応表を検索し、読み出すべき計測結果変数を特定するステップ
（４）（３）で特定した計測結果変数の値を読み出すステップ
（５）トリガ変数の値を０に戻すステップ
【００２８】
（Ｂ）の場合、作業者は、計測マクロのプログラム名、トリガ変数名及び計測結果変数名の対応関係を稼働管理システムに設定する。ここでもワークの種類を特定するために計測マクロのプログラム名が用いられる。使用する計測マクロの構造も上述の例（Ａ）と同じである。
【００２９】
また（Ｂ）の場合に稼働管理システムは以下のような処理を実施する。
（１）数値制御装置上で実行中のプログラム名を定期的に取得し、取得値が変化したら取得したプログラム名をキーとして対応表を検索するステップ。対応表にプログラム名が登録されていれば、当該プログラムは計測マクロである。よって、プログラム名に対応付けられているトリガ変数名と計測結果変数名とを取得する。
（２）（１）で取得したトリガ変数の値を定期的に読み出し、値が１になったなら（１）で取得した計測結果変数の値を読み取るステップ
（３）トリガ変数の値を０に戻すステップ
【００３０】
このように（Ｂ）の場合は、計測結果変数だけでなくトリガ変数も計測マクロ毎に異なる変数とすることができる。
【００３１】
上述のいずれの場合においても、従来は作業者がワークの種類毎にどの計測結果変数を読み取るべきかを稼働管理システムに予め設定する作業が必要であった。かかる設定作業は一般に手作業である。これに対し本願発明は、稼働管理システムが計測マクロの内容を解析し、これに基づいてワークの種類と計測結果変数との対応関係を自ら設定する。これにより、従来の手法に比べて容易かつ正確に計測データを収集することが可能になる（図１参照）。
【００３２】
次に、本発明の実施の形態にかかる稼働管理システムの概要について説明する。本発明の実施の形態にかかる稼働管理システムが数値制御装置から計測結果を取得する処理は、事前準備及び計測実行の２段階を含む。各段階の概要は次のとおりである。
【００３３】
まず事前準備段階において、稼働管理システムは作業者が作成した計測マクロの内容を解析し、ワークの種類と、計測結果変数など読み取りが必要なマクロ変数と、の対応関係を決定する処理を行う。また、決定した対応関係を対応表として管理する。
【００３４】
続いて計測実行段階において、稼働管理システムは工作機械が計測するワークの種類を特定し、対応表に基づいて読み取りが必要なマクロ変数を特定し、上記マクロ変数の値を読み取る処理を行う。
【００３５】
ここで、事前準備段階において稼働管理システムがワークの種類と計測結果変数などとの対応関係を決定するためには、計測マクロ内で使用されているマクロ変数の意味（例えばどのマクロ変数が計測結果変数として用いられているか）を稼働管理システムが判断できる必要がある。マクロ変数の意味を判断する方法としては以下の２通りが考えられる。
（ア）計測マクロにおいて変数が置かれた行の位置に基づいて変数の意味を決定する
（イ）計測マクロ内に記述されたコメントの内容に基づいて変数の意味を決定する
【００３６】
以下、手法（ア）を用いる実施例を実施の形態１、手法（イ）を用いる実施例を実施の形態２として、本発明の実施の形態について具体的に説明する。
【００３７】
＜実施の形態１＞
まず図２のブロック図を用いて、本発明の実施の形態１にかかる稼働管理システム１０の構成について説明する。実施の形態１にかかる稼働管理システム１０は、計測マクロ受信部１１、計測マクロ解析部１２、計測マクロ記憶部１３、読取条件監視部１４、計測結果読出部１５、読取完了書込部１６、保存部１８及び通信部１９を含む。稼働管理システム１０は典型的には中央処理装置、記憶装置、入出力装置等を有する情報処理装置である。中央処理装置が記憶装置に格納されたプログラムを読み出して実行することで、上述の各種処理部が論理的に実現される。
【００３８】
稼働管理システム１０は、数値制御装置２０と通信可能に接続される。数値制御装置２０は計測マクロ２１を含む。数値制御装置２０は計測マクロ２１に従って図示しない工作機械を制御する。工作機械にはプローブが取付けられており、数値制御装置２０の制御にしたがって加工済みワークの寸法等を計測する。計測結果は計測マクロ２１内で定義される所定の計測結果変数にセットされる。稼働管理システム１０は、数値制御装置２０から計測結果変数の値を読み出すことにより計測結果を取得する。稼働管理システム１０と数値制御装置２０を含むシステムを全体として計測システム１００と称する。
【００３９】
稼働管理システム１０の構成要素についてさらに説明する。計測マクロ受信部１１は、数値制御装置２０から計測マクロ２１を読み出して取得する。
【００４０】
計測マクロ解析部１２は、計測マクロ受信部１１が取得した計測マクロ２１の内容を解析して、ワーク種類変数、計測結果変数、トリガ変数などのマクロ変数を抽出する。
【００４１】
計測マクロ記憶部１３は、計測マクロ解析部１２が抽出したワーク種類変数と、稼働管理システム１０が読み取るべきマクロ変数名（計測結果変数名など）と、を対応付けて保存部１８に記憶させる。あるいは、計測マクロ記憶部１３は、マクロプログラム名と、読み取るべきマクロ変数（計測結果変数名、トリガ変数名など）と、を対応付けて記憶させても良い。以下、このように対応付けられたデータセットを対応表と呼ぶ。典型的な対応表では、１以上のワーク種類変数又はプログラム名夫々に対して、１以上の計測結果変数名などが関連付けられる。
【００４２】
読取条件監視部１４は、計測マクロ２１でワーク種類変数が定義されている場合はワーク定義変数、その他の場合は数値制御装置２０上で実行中のプログラム名を取得する。また、読取条件監視部１４は、ワーク種類変数又は数値制御装置２０上で実行中のプログラム名をキーとして対応表を検索し、１以上の計測結果変数名を取得する。さらに、読取条件監視部１４は、トリガ変数の更新を監視する。典型的にはトリガ変数は計測マクロ２１内において定義される変数である。読取条件監視部１４は、トリガ変数名が固定である場合は当該トリガ変数を監視する。計測マクロ２１毎に異なるトリガ変数名が定義される場合は、読取条件監視部１４は数値制御装置２０上で実行中のプログラム名をキーとして計測マクロ記憶部１３が記憶する対応表を検索し、プログラム名に対応付けられたトリガ変数が存在する場合は当該トリガ変数を監視する。読取条件監視部１４は、数値制御装置２０上のトリガ変数が更新されたとき、典型的にはトリガ変数が１になったときにその旨を計測結果読出部１５に通知する。
【００４３】
計測結果読出部１５は、読取条件監視部１４から通知を受けると、数値制御装置２０と通信して、読取条件監視部１４が取得した計測結果変数名に設定された値を読み出す。計測結果読出部１５は、読み出した値を計測結果として保存部１８に保存する。
【００４４】
読取完了書込部１６は、計測結果読出部１５が計測結果を保存したならばトリガ変数を更新する。典型的にはトリガ変数の値を０に戻す。
【００４５】
保存部１８は、対応表や計測結果を保存する記憶領域である。通信部１９は稼働管理システム１０と数値制御装置２０との間の通信を制御する。
【００４６】
次に、実施の形態１にかかる稼働管理システム１０が計測値を収集する処理について順を追って説明する。
【００４７】
１．事前準備
数値制御装置２０は、作業者により作成された計測マクロ２１を格納する。計測マクロ２１は、トリガ変数や計測結果変数、及び必要に応じてワーク種類変数を含んでいる。従来技術の説明で述べたように、計測マクロ２１には何通りかの作成方法がある。本実施の形態では、従来技術（Ｂ）として例示した手法で計測マクロ２１を作成するものとする。すなわち、計測マクロ２１はワーク種類変数を含まない。また計測マクロ２１毎に異なるトリガ変数名が定義され得る。したがって後述する対応表においてはプログラム名、トリガ変数名、計測結果変数名が対応付けられる必要がある。
【００４８】
図３に、実施の形態１における計測マクロ２１の例を示す。既に述べたように、本実施の形態では、計測マクロ２１においてマクロ変数が置かれた行の位置に基づいて変数の意味を決定する。作業者は、数値制御装置２０において、以下の規則に従った計測マクロ２１を作成するものとする。
（ｉ）先頭行は計測マクロ２１のプログラム名とする。これはワークの種類を特定するための識別子としても機能する。図３の例では「Ｏ９８７６」が計測マクロ２１のプログラム名である。
（ｉｉ）２行目以降空白行までは、計測結果変数の初期化を行うブロックとする。このブロックに記述されたマクロ変数は計測結果変数である。計測結果変数は複数記載することができる。図３の例では「＃１００３０」及び「＃１００３１」が計測結果変数名である。
（ｉｉｉ）Ｍ９９の直前のループでは、稼働管理システム１０とのハンドシェイク用のシーケンスを記述するものとする。このループの最初において値が０かどうかチェックされている変数がトリガ変数である。図３の例では［＃５００ＮＥ０］がループの最初における値のチェックに相当する。したがってトリガ変数名は「＃５００」である。
【００４９】
なお、（ｉｉ）と（ｉｉｉ）の間に位置するブロックには、工作機械を制御して計測を実行するためのコード等が記述される。
【００５０】
次に、稼働管理システム１０が数値制御装置２０と通信して計測マクロ２１を読み出し、その内容を解析する。図４のフローチャートを用いて、稼働管理システム１０による計測マクロ２１の解析処理について説明する。
【００５１】
まず計測マクロ受信部１１が数値制御装置２０から計測マクロ２１を受信する。受信手法には特段の制約を設けないが、典型的にはＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）や数値制御装置２０固有の通信プロトコル等を利用することができる。次いで計測マクロ解析部１２が以下の手順で計測マクロ２１を解析する。
【００５２】
Ｓ１０１：
計測マクロ解析部１２は、受信した計測マクロ２１を１行ずつ読み取る。
【００５３】
Ｓ１０２：
読み取りに成功したならＳ１０３に遷移する。読み取りに失敗した場合は最終行まで読み取りが完了したものとみなし、Ｓ１１１に遷移する。
【００５４】
Ｓ１０３：
読み取った行が先頭行であればＳ１０４に遷移する。その他の場合はＳ１０５に遷移する。
【００５５】
Ｓ１０４：
計測マクロ解析部１２は、先頭行の内容を読み取ってプログラム名として保持する。また、計測結果フラグを１に設定する。ここで計測結果フラグとは、現在、計測結果変数の抽出を実行中であることを示すフラグである。Ｓ１０１に遷移して次の行を読み取る。
【００５６】
Ｓ１０５：
読み取った行が２行目以降でありかつ計測結果フラグが１であれば、計測結果変数名を抽出するためＳ１０６に遷移する。その他の場合は計測結果変数名の抽出が完了したものとみなしＳ１０９に遷移する。
【００５７】
Ｓ１０６：
読み取った行が空白行であればＳ１０７に遷移する。その他の場合はＳ１０８に遷移する。
【００５８】
Ｓ１０７：
計測マクロ解析部１２は、計測結果フラグを０に設定する。その後Ｓ１０１に遷移して次の行を読み取る。
【００５９】
Ｓ１０８：
計測マクロ解析部１２は、行の先頭から文字「＝」の前までの文字列を抽出し計測結果変数として保持する。その後Ｓ１０１に遷移して次の行を読み取る。
【００６０】
Ｓ１０９：
読み取った行がループ処理（例えば「ＷＨＩＬＥ」を含む）であればＳ１１０に遷移する。その他の場合はＳ１０１に遷移して次の行を読み取る。
【００６１】
Ｓ１１０：
計測マクロ解析部１２は、ループ処理の条件式から左辺を抽出しトリガ変数として保持する。その後Ｓ１０１に遷移して次の行を読み取る。
【００６２】
Ｓ１１１：
計測マクロ記憶部１３は、これまでに抽出したプログラム名をキーとして、計測結果変数名及びトリガ変数名を対応付けて保存部１８に対応表として保存する。図５に対応表の一例を示す。図５の例では、プログラム名毎にそれぞれ異なるトリガ変数名及び複数の計測結果変数名が対応付けられている。
【００６３】
２．計測実行
続いて図８のフローチャートを用いて、計測実行中における稼働管理システム１０の動作について説明する。
【００６４】
Ｓ３０１：
読取条件監視部１４は、数値制御装置２０と通信して数値制御装置２０上で実行中のプログラムが存在するかどうか確認する。何らかのプログラムが実行中の場合、Ｓ３０２に遷移する。その他の場合はＳ３０１に遷移する。
【００６５】
Ｓ３０２：
読取条件監視部１４は、数値制御装置２０上で実行中のプログラム名を取得する。
【００６６】
Ｓ３０３：
読取条件監視部１４は、Ｓ３０２で取得した実行中のプログラム名が前回のループで取得したプログラム名と異なるかどうか判定する。前回のプログラム名と異なる又は前回のプログラム名が記憶されていない場合はＳ３０４に遷移する。その他の場合はＳ３０１に戻る。
【００６７】
Ｓ３０４：
読取条件監視部１４は、Ｓ３０２で取得したプログラム名をキーとして保存部１８の対応表を検索する。
【００６８】
Ｓ３０５：
プログラム名が対応表内に存在する場合、当該プログラム名は計測マクロ名、すなわちワークの種類を特定可能な識別子であるとみなしてＳ３０６に遷移する。その他の場合はＳ３０１に戻る。
【００６９】
Ｓ３０６：
読取条件監視部１４は、保存部１８の対応表を参照し、プログラム名に対応付けられている計測結果変数名とトリガ変数名とを取得する。
【００７０】
Ｓ３０７乃至Ｓ３０８：
読取条件監視部１４は、数値制御装置２０と通信して、Ｓ３０６で取得したトリガ変数の値を定期的に読み取る。数値制御装置２０が計測を終えたならばトリガ変数の値は０から１に更新される。読取条件監視部１４は、トリガ変数の値が１に更新されたことを検知したならＳ３０９に遷移する。
【００７１】
Ｓ３０９：
計測結果読出部１５は、数値制御装置２０と通信して、Ｓ３０６で取得した計測結果変数の値を読み取り、保存部１８へ保存する。
【００７２】
Ｓ３１０：
読取完了書込部１６は、計測結果の読み出しが完了したことを数値制御装置２０へ通知するため、数値制御装置２０と通信して、トリガ変数の値を０に更新する。その後Ｓ３０１へ戻る。
【００７３】
＜実施の形態２＞
実施の形態２にかかる稼働管理システム１０の構成は実施の形態１と同様であるため説明を省略する（図２参照）。以下、実施の形態２にかかる稼働管理システム１０が計測値を収集する処理について順を追って説明する。
【００７４】
１．事前準備
図６に、実施の形態２における計測マクロ２１の例を示す。既に述べたように、本実施の形態では、計測マクロ２１内に記述されたコメントの内容に基づいて変数の意味を決定する。作業者は、数値制御装置２０において、以下の規則に従ってコメントを付加した計測マクロ２１を作成するものとする。
（ｉ）計測マクロ２１のプログラム名を、その行がプログラム名である示す所定のコメントとともに記述する。図６の例では、先頭行に計測マクロ２１のプログラム名「Ｏ９８７６」に続けてコメント「ＭＥＡＳＵＲＥ  ＭＡＣＲＯ」が記述されている。
（ｉｉ）計測結果変数に値を設定する行において、所定のコメントを記述する。図６の例では、２乃至３行目においてマクロ変数「＃１００３０」「＃１００３１」が初期化され、各行末にコメント「ＭＥＡＳＵＲＥ  ＲＥＳＵＬＴ」が付加されている。
なお、計測結果変数が複数ある場合は、それぞれに計測結果変数であることを示すコメントを付加して良い。
（ｉｉｉ）トリガ変数に値を設定する行において、所定のコメントを記述する。図６の例では、「＃５００＝１」なる行の行末にコメント「ＭＥＡＳＵＲＥ  ＥＮＤ」が付加されている。
【００７５】
次に、稼働管理システム１０が数値制御装置２０と通信して計測マクロ２１を読み出し、その内容を解析する。図７のフローチャートを用いて、稼働管理システム１０による計測マクロ２１の解析処理について説明する。
【００７６】
まず計測マクロ受信部１１が数値制御装置２０から計測マクロ２１を受信する。次いで計測マクロ解析部１２が以下の手順で計測マクロ２１を解析する。
Ｓ２０１：
計測マクロ解析部１２は、受信した計測マクロ２１を１行ずつ読み取る。
【００７７】
Ｓ２０２：
読み取りに成功したならＳ２０３に遷移する。読み取りに失敗した場合は最終行まで読み取りが完了したものとみなし、Ｓ２０９に遷移する。
【００７８】
Ｓ２０３乃至Ｓ２０４：
計測マクロ解析部１２は、Ｓ２０１で読み取った行の中に、当該行がプログラム名を含むことを示す所定のコメント（図３の例では「ＭＥＡＳＵＲＥ  ＭＡＣＲＯ」）が含まれるか否か判定する。含まれる場合、行の先頭からコメントの手前までの文字列をプログラム名として抽出する。
【００７９】
Ｓ２０５乃至Ｓ２０６：
計測マクロ解析部１２は、Ｓ２０１で読み取った行の中に、当該行が計測結果変数名を含むことを示す所定のコメント（図３の例では「ＭＥＡＳＵＲＥ  ＲＥＳＵＬＴ」）が含まれる場合、行の先頭から「＝」の手前までの文字列を計測結果変数名として抽出する。
【００８０】
Ｓ２０７乃至Ｓ２０８：
計測マクロ解析部１２は、Ｓ２０１で読み取った行の中に、当該行がトリガ変数名を意味することを示す所定のコメント（図３の例では「ＭＥＡＳＵＲＥ  ＥＮＤ」）が含まれる場合、行の先頭から「＝」の手前までの文字列をトリガ変数名として抽出する。
【００８１】
Ｓ２０９：
計測マクロ記憶部１３は、これまでに抽出したプログラム名をキーとして、計測結果変数名及びトリガ変数名を対応付けて保存部１８に対応表として保存する。図５に対応表の一例を示す。
【００８２】
２．計測実行
実施の形態２においても、計測実行中における稼働管理システム１０の動作は実施の形態１と同様であるため説明を省略する（図８参照）。
【００８３】
上述の種々の実施の形態によれば、稼働管理システム１０が計測マクロ２１を解析し、ワークの種類に応じて、読み取るべきマクロ変数名（計測結果変数名やトリガ変数名等）を特定する。したがって、数値制御装置２０からワークの計測値を容易かつ正確に取得することができる。
【００８４】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。本発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
【００８５】
例えば上述の実施の形態１及び２では、ワークの種類（より具体的には計測マクロ２１のプログラム名）毎にトリガ変数名及び計測結果変数名を任意に定義し得る構成を示した。しかしながら、例えばトリガ変数名や計測結果変数名の一部を固定化し、これらのマクロ変数名の特定ステップを省略することも可能である。この場合、固定化されたマクロ変数名は対応表から除外して良い。
【００８６】
また、上述の実施の形態１及び２では、稼働管理システム１０が（ア）計測マクロ２１において変数が置かれた行の位置に基づいて変数の意味を決定することにより、又は（イ）計測マクロ２１内に記述されたコメントの内容に基づいて変数の意味を決定することにより、計測マクロ２１を解析する例を示した。しかしながら、計測マクロ２１の解析方法はこれらに限定されるものではない。計測マクロ２１の解析に際しては、計測マクロ２１の規定の文法に反しないものであって、且つ稼働管理システム１０が読み取り可能なものであれば、計測マクロ２１内に記述されるいかなる情報を用いても差し支えない。例えば、予め定められたマクロ変数名の命名ルール等に基づいて、計測マクロ２１中に現れるマクロ変数をワーク種類変数、トリガ変数又は計測結果変数に峻別することも可能である。
【符号の説明】
【００８７】
１０  稼働管理システム
１１  計測マクロ受信部
１２  計測マクロ解析部
１３  計測マクロ記憶部
１４  読取条件監視部
１５  計測結果読出部
１６  読取完了書込部
２０  数値制御装置
２１  計測マクロ
１００  計測システム
【図１】
2018013885.tif 000003
【図２】
2018013885.tif 000004
【図３】
2018013885.tif 000005
【図４】
2018013885.tif 000006
【図５】
2018013885.tif 000007
【図６】
2018013885.tif 000008
【図７】
2018013885.tif 000009
【図８】
2018013885.tif 000010