(57)【要約】      （修正有）【課題】部品あるいは完成品の製造データの信頼性を向上させるデータ管理システムを提供する。【解決手段】一以上の工作機械１１０と一以上の測定装置２００とをネットワークで繋ぎ、ブロックチェーンを利用してデータを管理する。測定装置は、検出ヘッド部、検出ヘッド部を移動させる移動機構部及びヘッド部の位置又は変位の情報を取得するセンサを有する測定機本体部２１０と、それを駆動制御するモーションコントローラ２２０と、測定ソフトウェアを実行することでモーションコントローラを介して測定機本体部に所定の測定動作を実行させるホストとなるホストコンピュータ２３０と、を備える。モーションコントローラの仕様変更があった場合、ブロックチェーンの過去のブロックのハッシュ値と仕様変更のデータのハッシュ値とを含む新たなブロックを生成し、当該測定装置以外の機器による検証と署名を経て、ブロックチェーンに登録される。【選択図】図１
2020057881.tif 000002
【特許請求の範囲】
【請求項１】
一以上の工作機械と一以上の測定装置とをネットワークで繋ぎ、ブロックチェーンを利用してデータを管理するデータ管理システムであって、
前記測定装置は、
測定対象物を接触あるいは非接触で検出する検出ヘッド部、前記検出ヘッド部を移動させる移動機構部、および、前記検出ヘッド部および前記移動機構部の位置または変位の情報を取得するセンサ、を有する測定機本体部と、
前記測定機本体部を駆動制御する専用コントローラとなるモーションコントローラと、
測定ソフトウェアを実行することで前記モーションコントローラを介して前記測定機本体部に所定の測定動作を実行させるホストとなるホストコンピュータと、を具備し、
前記モーションコントローラは、当該モーションコントローラの仕様変更があった場合、ブロックチェーンの過去のブロックのハッシュ値と、前記モーションコントローラの前記仕様変更のデータのハッシュ値と、を含む新たなブロックを生成し、
前記ネットワーク上の当該測定装置以外の機器による前記新たなブロックの検証と署名を経て、前記新たなブロックが前記ブロックチェーンに登録される
ことを特徴とするデータ管理システム。
【請求項２】
請求項１に記載のデータ管理システムであって、
前記モーションコントローラの前記仕様変更データには、
前記移動機構部の駆動軸ごと有効／無効設定、駆動軸ごと制限速度、および、エラーコード、のうちの一つ以上が含まれる
ことを特徴とするデータ管理システム。
【請求項３】
請求項１または請求項２に記載のデータ管理システムであって、
前記モーションコントローラは、所定時間ごとに動作履歴をブロックチェーンに登録し、
前記モーションコントローラの動作履歴には、
前記モーションコントローラが前記ホストコンピュータから受けたコマンド、
前記モーションコントローラから前記測定機本体部に与えた動作指令、
前記ホストコンピュータから前記モーションコントローラに送られたエラーメッセージ、
前記モーションコントローラの内部処理で発生したエラーメッセージ、および、
前記測定機本体部から前記モーションコントローラに送られたエラーメッセージ、のうちの少なくとも１以上が含まれる
ことを特徴とするデータ管理システム。
【請求項４】
一以上の工作機械と一以上の測定装置とをネットワークで繋ぎ、ブロックチェーンを利用してデータを管理するデータ管理システムであって、
前記測定装置は、
測定対象物を接触あるいは非接触で検出する検出ヘッド部、前記検出ヘッド部を移動させる移動機構部、および、前記検出ヘッド部および前記移動機構部の位置または変位の情報を取得するセンサ、を有する測定機本体部と、
前記測定機本体部を駆動制御する専用コントローラとなるモーションコントローラと、
測定ソフトウェアを実行することで前記モーションコントローラを介して前記測定機本体部に所定の測定動作を実行させるホストとなるホストコンピュータと、を具備し、
前記ホストコンピュータは、前記測定ソフトウェアの仕様変更があった場合、
ブロックチェーンの過去のブロックのハッシュ値と、前記測定ソフトウェアの前記仕様変更のデータのハッシュ値と、を含む新たなブロックを生成し、
前記ネットワーク上の当該測定装置以外の機器による前記新たなブロックの検証と署名を経て、前記新たなブロックが前記ブロックチェーンに登録される
ことを特徴とするデータ管理システム。
【請求項５】
請求項４に記載のデータ管理システムにおいて、
前記測定ソフトウェアの前記仕様変更データには、
測定経路、移動速度、測定速度、サンプリングタイミング、サンプリングピッチ、フィルタリング、カーブフィッティング、自動形状認識、および、評価の少なくとも１以上のアルゴリズムが含まれる
ことを特徴とするデータ管理システム。
【請求項６】
一以上の工作機械と一以上の測定装置とをネットワークで繋ぎ、ブロックチェーンを利用してデータを管理するデータ管理システムであって、
前記測定装置は、
測定対象物を接触あるいは非接触で検出する検出ヘッド部、前記検出ヘッド部を移動させる移動機構部、および、前記検出ヘッド部および前記移動機構部の位置または変位の情報を取得するセンサ、を有する測定機本体部と、
前記測定機本体部を駆動制御する専用コントローラとなるモーションコントローラと、
測定ソフトウェアを実行することで前記モーションコントローラを介して前記測定機本体部に所定の測定動作を実行させるホストとなるホストコンピュータと、を具備し、
前記ホストコンピュータは、
ブロックチェーンの過去のブロックのハッシュ値と、
前記測定機本体部で取得した測定データのハッシュ値と、を含む新たなブロックを生成し、
前記ネットワーク上の当該測定装置以外の機器による前記新たなブロックの検証と署名を経て、前記新たなブロックが前記ブロックチェーンに登録される
ことを特徴とするデータ管理システム。
【請求項７】
請求項６に記載のデータ管理システムにおいて、
前記ホストコンピュータが前記新たなブロックを生成するタイミングは、一定時間ごと、一定のデータサイズごと、一つのワークごと、あるいは、一つのワークのなかの測定部位ごと、のいずれかである
ことを特徴とするデータ管理システム。
【請求項８】
一以上の工作機械と一以上の測定装置とをネットワークで繋ぎ、ブロックチェーンを利用してデータを管理するデータ管理システムであって、
前記工作機械は、ワークの加工にあたって、
前記ブロックチェーンの過去のブロックのハッシュ値に加えて、
少なくとも、ワークの識別番号、作業責任者、および、日時、の情報を含む新たな加工情報ブロックを生成し、
前記ネットワーク上の当該工作機械以外の機器による前記新たな加工情報ブロックの検証と署名を経て、前記新たな加工情報ブロックが前記ブロックチェーンに登録されるようにする
ことを特徴とするデータ管理システム。
【請求項９】
請求項８に記載のデータ管理システムにおいて、
前記工作機械が同じ識別番号をもつワークを再加工する際には、
このワークに前回の加工を行ったときの前記加工情報ブロックのハッシュ値を前記新たな加工情報ブロックに含ませる
ことを特徴とするデータ管理システム。
【請求項１０】
請求項９に記載のデータ管理システムにおいて、
前記測定装置は、同じ識別番号をもつワークを再測定することになった場合、
ネットワークのなかに複数あるブロックチェーンのなかでこのワークの最新の加工情報を含んでいるブロックチェーンを探し、
このワークの最新の加工情報を含んでいるブロックチェーンの最新のブロックのハッシュ値と、測定データのハッシュ値と、を含む新たなブロックを生成し、前記ネットワーク上の当該測定装置以外の機器による前記新たなブロックの検証と署名を経て、前記新たなブロックが前記ブロックチェーンに登録されるようにする
ことを特徴とするデータ管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ管理システムに関する。
【背景技術】
【０００２】
近年、部品や完成品を検査した測定データの信頼性が問題となっている。例えば、部品や完成品を検査した測定データから都合良く異常値を除去して合格判定にしてしまうことがある。あるいは、測定装置を動作させる測定パートプログラムを都合良く変更してしまうことも有り得るし、測定パートプログラムではなく測定装置の仕様を変更してしまうことも有り得る。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
測定装置にはログ（データログ）が残るようにはなっているが、ログごと書き換えられてしまっていると、測定データを検証することは難しい。
【０００４】
本発明の目的は、部品あるいは完成品の製造データの信頼性を向上させるデータ管理システムを提供することにある。
【課題を解決するための手段】
【０００５】
本発明のデータ管理システムは、
一以上の工作機械と一以上の測定装置とをネットワークで繋ぎ、ブロックチェーンを利用してデータを管理するデータ管理システムであって、
前記測定装置は、
測定対象物を接触あるいは非接触で検出する検出ヘッド部、前記検出ヘッド部を移動させる移動機構部、および、前記検出ヘッド部および前記移動機構部の位置または変位の情報を取得するセンサ、を有する測定機本体部と、
前記測定機本体部を駆動制御する専用コントローラとなるモーションコントローラと、
測定ソフトウェアを実行することで前記モーションコントローラを介して前記測定機本体部に所定の測定動作を実行させるホストとなるホストコンピュータと、を具備し、
前記モーションコントローラは、当該モーションコントローラの仕様変更があった場合、ブロックチェーンの過去のブロックのハッシュ値と、前記モーションコントローラの前記仕様変更のデータのハッシュ値と、を含む新たなブロックを生成し、
前記ネットワーク上の当該測定装置以外の機器による前記新たなブロックの検証と署名を経て、前記新たなブロックが前記ブロックチェーンに登録される
ことを特徴とする。
【０００６】
本発明では、
前記モーションコントローラの前記仕様変更データには、
前記移動機構部の駆動軸ごと有効／無効設定、駆動軸ごと制限速度、および、エラーコード、のうちの一つ以上が含まれる
ことが好ましい。
【０００７】
本発明では、
前記モーションコントローラは、所定時間ごとに動作履歴をブロックチェーンに登録し、
前記モーションコントローラの動作履歴には、
前記モーションコントローラが前記ホストコンピュータから受けたコマンド、
前記モーションコントローラから前記測定機本体部に与えた動作指令、
前記ホストコンピュータから前記モーションコントローラに送られたエラーメッセージ、
前記モーションコントローラの内部処理で発生したエラーメッセージ、および、
前記測定機本体部から前記モーションコントローラに送られたエラーメッセージ、のうちの少なくとも１以上が含まれる
ことが好ましい。
【０００８】
本発明のデータ管理システムは、
一以上の工作機械と一以上の測定装置とをネットワークで繋ぎ、ブロックチェーンを利用してデータを管理するデータ管理システムであって、
前記測定装置は、
測定対象物を接触あるいは非接触で検出する検出ヘッド部、前記検出ヘッド部を移動させる移動機構部、および、前記検出ヘッド部および前記移動機構部の位置または変位の情報を取得するセンサ、を有する測定機本体部と、
前記測定機本体部を駆動制御する専用コントローラとなるモーションコントローラと、
測定ソフトウェアを実行することで前記モーションコントローラを介して前記測定機本体部に所定の測定動作を実行させるホストとなるホストコンピュータと、を具備し、
前記ホストコンピュータは、前記測定ソフトウェアの仕様変更があった場合、
ブロックチェーンの過去のブロックのハッシュ値と、前記測定ソフトウェアの前記仕様変更のデータのハッシュ値と、を含む新たなブロックを生成し、
前記ネットワーク上の当該測定装置以外の機器による前記新たなブロックの検証と署名を経て、前記新たなブロックが前記ブロックチェーンに登録される
ことを特徴とする。
【０００９】
本発明では、
前記測定ソフトウェアの前記仕様変更データには、
測定経路、移動速度、測定速度、サンプリングタイミング、サンプリングピッチ、フィルタリング、カーブフィッティング、自動形状認識、および、評価の少なくとも１以上のアルゴリズムが含まれる
ことが好ましい。
【００１０】
本発明のデータ管理システムは、
一以上の工作機械と一以上の測定装置とをネットワークで繋ぎ、ブロックチェーンを利用してデータを管理するデータ管理システムであって、
前記測定装置は、
測定対象物を接触あるいは非接触で検出する検出ヘッド部、前記検出ヘッド部を移動させる移動機構部、および、前記検出ヘッド部および前記移動機構部の位置または変位の情報を取得するセンサ、を有する測定機本体部と、
前記測定機本体部を駆動制御する専用コントローラとなるモーションコントローラと、
測定ソフトウェアを実行することで前記モーションコントローラを介して前記測定機本体部に所定の測定動作を実行させるホストとなるホストコンピュータと、を具備し、
前記ホストコンピュータは、
ブロックチェーンの過去のブロックのハッシュ値と、
前記測定機本体部で取得した測定データのハッシュ値と、を含む新たなブロックを生成し、
前記ネットワーク上の当該測定装置以外の機器による前記新たなブロックの検証と署名を経て、前記新たなブロックが前記ブロックチェーンに登録される
ことを特徴とする。
【００１１】
本発明では、
前記ホストコンピュータが前記新たなブロックを生成するタイミングは、一定時間ごと、一定のデータサイズごと、一つのワークごと、あるいは、一つのワークのなかの測定部位ごと、のいずれかである
ことが好ましい。
【００１２】
本発明のデータ管理システムは、
一以上の工作機械と一以上の測定装置とをネットワークで繋ぎ、ブロックチェーンを利用してデータを管理するデータ管理システムであって、
前記工作機械は、ワークの加工にあたって、
前記ブロックチェーンの過去のブロックのハッシュ値に加えて、
少なくとも、ワークの識別番号、作業責任者、および、日時、の情報を含む新たな加工情報ブロックを生成し、
前記ネットワーク上の当該工作機械以外の機器による前記新たな加工情報ブロックの検証と署名を経て、前記新たな加工情報ブロックが前記ブロックチェーンに登録されるようにする
ことを特徴とする。
【００１３】
本発明では、
前記工作機械が同じ識別番号をもつワークを再加工する際には、
このワークに前回の加工を行ったときの前記加工情報ブロックのハッシュ値を前記新たな加工情報ブロックに含ませる
ことが好ましい。
【００１４】
本発明では、
前記測定装置は、同じ識別番号をもつワークを再測定することになった場合、
ネットワークのなかに複数あるブロックチェーンのなかでこのワークの最新の加工情報を含んでいるブロックチェーンを探し、
このワークの最新の加工情報を含んでいるブロックチェーンの最新のブロックのハッシュ値と、測定データのハッシュ値と、を含む新たなブロックを生成し、前記ネットワーク上の当該測定装置以外の機器による前記新たなブロックの検証と署名を経て、前記新たなブロックが前記ブロックチェーンに登録されるようにする
ことが好ましい。
【図面の簡単な説明】
【００１５】
【図１】工場のネットワークの一例を示す図である。
【図２】モーションコントローラの仕様の一例を示す図である。
【図３】測定パートプログラムの例を示す図である。
【図４】新規ブロックを生成する工程を模式的に表わす図である。
【図５】製造工程の一例を示す図である。
【図６】ブロックチェーンの一例を示す図である。
【図７】ブロックチェーンの他の一例を示す図である。
【発明を実施するための形態】
【００１６】
本発明の実施形態を図示するとともに図中の各要素に付した符号を参照して説明する。
（第１実施形態）
本発明の測定データ管理システムに係る第１実施形態について説明する。
図１は、工場１００の一例である。
工場１００には、工作機械１１０と、大型測定装置２００と、小型測定装置３００と、組立装置１２０と、が設置されている。
これら工場内の装置は、ネットワーク１３０によりＰ２Ｐで相互に繋がっている。
【００１７】
さらに、この工場１００のネットワーク１３０が上流の工場（例えば原材料メーカの工場）や下流の工場（大手メーカの工場やディーラー）のネットワーク１３１、１３２に繋がっていてもよいし、もちろん、測定機メーカのネットワークにも繋がっていてもよい。
【００１８】
大型測定装置２００は、測定機本体部２１０と、モーションコントローラ２２０と、ホストコンピュータ２３０と、を備える。
【００１９】
測定機本体部２１０は、概略次のような構成を備えている。
測定機本体部２１０は、測定対象物（ワーク）を接触あるいは非接触で検出する検出ヘッド部と、検出ヘッド部を三次元的に移動させる移動機構部と、検出ヘッド部および移動機構部の位置や変位等の状態を取得する各種センサと、を備える。
検出ヘッド部は、先端に接触子を有するスタイラスでもよいし、非接触レーザープローブでもよいし、カメラ（撮像素子）でもよい。つまり、測定機本体部２１０は、三次元測定機、表面性状測定機（輪郭測定機、表面粗さ測定機）、真円度測定機、画像測定機、などである。
【００２０】
モーションコントローラ２２０は、ＣＰＵ、メモリの他、駆動制御回路、センサ信号取得回路等を有する。モーションコントローラ２２０、ホストコンピュータ２３０からの動作指令に応じて測定機本体部２１０を駆動制御するための専用コントローラである。モーションコントローラ２２０は、ホストコンピュータ２３０から動作指令を受ける。すると、モーションコントローラ２２０は、受けた動作指令に応じて測定機本体部２１０の移動機構部や各センサに電圧／電流の動作信号を与え、動作指令に従った動作（移動や検出）を測定機本体部２１０に実行させる。例えば、図２のコード表を参照して、ホストコンピュータ２３０から動作指令として、「＃９００」に続けて「具体的な数値」の指令をモーションコントローラ２２０が受けたとする。モーションコントローラ２２０は、この動作指令をＸ座標の移動指令として、測定機本体部２１０のＸ駆動機構に対し、指示された駆動信号を与える。モーションコントローラ２２０は、動作指令に対して所定の動作信号を入出力するように構成されたファームウェア（ＲＯＭ、ＥＥＰＲＯＭ等、あるいは、プログラマブルロジックデバイス）を含む。
【００２１】
ホストコンピュータ２３０は、ＣＰＵ、メモリを有するいわゆるコンピュータである。
ホストコンピュータ２３０には測定ソフトウェアがインストールされており、測定ソフトウェアをコンピュータで実行することでホストコンピュータ２３０はモーションコントローラ２２０を介して測定機本体部２１０に所望の測定動作を実行させるホストとなる。
本出願人である株式会社ミツトヨは測定機のメーカである。本出願人の製品を例にとると、本出願人はＭＣＯＳＭＯＳ（Ｍｉｔｕｔｏｙｏ  Ｃｏｎｔｒｏｌｌｅｄ  Ｏｐｅｎ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｄｕｌａｒ  Ｏｐｅｒａｔｉｏｎ  Ｓｕｐｐｏｒｔ（登録商標））という測定用パッケージソフトウェアを提供している。測定用パッケージソフトウェアとしては他にもＧＥＯＰＡＫ、ＳＣＡＮＰＡＫなどもある。
この測定ソフトウェアというのは、例えばウィンドウズ（登録商標）などのＯＳ上で動作し、測定機本体部２１０（例えば三次元測定機（ＣＭＭ））がもつ多種多様な測定機能を能率的かつ簡便に使いこなせるようにしたインターフェースを提供したり、さらに付加的な測定機能（付加的アプリケーション）との連繋を可能にしたりする。この測定用ソフトウェアを使い、測定機本体部２１０における一連の測定動作のプログラム、いわゆるパートプログラム等の測定プログラムを生成する。
図３は測定パートプログラムの例である。
測定対象物（ワーク）のどこをどういう順番で測定するかは決まっているのであるから、測定パートプログラムには、どこからどこに移動するかという移動命令と、移動先で測定を指示する測定指令と、が含まれる。この他、測定パートプログラムには、取得された測定データの解析（フィルタリング、カーブフィッティング、自動形状認識）や評価（合否判定）のアルゴリズムが含まれることもある。
【００２２】
小型測定装置２００は、小型測定器３１０と、データメモリ装置３２０と、を備える。
小型測定器３１０は、例えば、デジタル式マイクロメータ、デジタル式ノギス、デジタル式インジケータ（デジタル式ダイヤルゲージ）などである。データメモリ装置３２０は、小型測定器から外部出力された測定データを記録する。
【００２３】
工場１００では原材料（例えば鋼材、樹脂）を加工して完成品を出荷する。
完成品が出荷されるまでの大まかな流れは次のようになる。
工作機械１１０で原材料を加工して部品を製作する。
部品というのは、シリンダー、ピストン、カム、シャフト、ハウジングなどを想定して頂ければよく、あらゆる機械要素が想定される。
部品は測定装置２００で測定され、基準を満たしていなければ不合格となる。不合格の部品は工作機械１１０で再加工される。再加工された部品は測定装置２００で再度測定され、基準を満たしていれば合格である。合格した部品は組立装置１２０で組み合わされて組立品となる。組立品は測定装置２００で測定され、基準を満たしていれば合格となり、完成品として出荷される。完成品の出荷の際には部品および完成品の測定データが添付される。完成品というのは、自動車といった最終完成品だけでなく、その工場から出荷される半製品（例えば、ある程度組み立てられたエンジン）を含めて考えて頂きたい。
【００２４】
本実施形態のポイントは、測定データの信頼性の検証に必要な情報をブロックチェーンに記録していくことにある。
ここで、一つ前のブロックのハッシュ値を含めながら現在ブロックを作成してブロックチェーンを繋いでいく技術自体は知られている。また、各ノードが秘密鍵および公開鍵を生成／保有し、ブロックに対して署名および検証を行う技術も知られている。したがって、このような公知技術の部分については冗長な説明は適宜割愛する。
【００２５】
（実施例１）
［モーションコントローラの変更の記録］
モーションコントローラ２２０の仕様（設定）が変更された場合には、それをブロックチェーンに記録する。
測定機本体部２１０の仕様やホストコンピュータの測定ソフトウェアの仕様が変わればモーションコントローラ２２０の仕様（設定）も変更になる。
例えば、測定機本体部２１０のプローブが交換されることもある。
駆動機構を持たないプローブヘッドから一軸あるいは二軸の回転機構を持つプローブヘッドに交換された場合、回転機構が有効になるようにモーションコントローラ２２０の設定を変更することになる。
図２の例でいうと、＃９０３のＡ／Ｃ軸回転駆動、Ｂ軸回転駆動を有効／無効にしたり、＃９１０、＃９１１の回転角の検出を有効／無効にしたりする。あるいは、プローブの種類に応じて、移動速度のリミットやアプローチ方向に制限が掛かる場合もある。
このようなモーションコントローラ２２０（ファームウェア）の仕様（設定）の変更は、手動または自動で行われる。測定対象物（ワーク）の測定が正しい設定で行われたということはもちろん大切なことである。もう一つ、測定対象物（ワーク）の測定が正しい設定で行われたということが後日にトレースできるということも同じく大切である。
【００２６】
モーションコントローラ２２０にもブロックチェーンのブロック作成、署名、認証の機能を持たせる。その上で、ネットワークで繋がった他の機器と協働して、モーションコントローラ２２０の変更履歴をブロックチェーンに記録するわけである。
【００２７】
（Ｓ１００）モーションコントローラ２２０は、秘密鍵と、この秘密鍵のペアになる公開鍵と、を生成する。モーションコントローラ２２０は自己の公開鍵をブロードキャストで送信する。他の機器は、モーションコントローラ２２０から受け取った公開鍵を所定のメモリに格納しておく。
【００２８】
（Ｓ１０１）モーションコントローラ２２０は、仕様の変更があった場合には、新規ブロックＢｎを生成する。図４を参照されたい。モーションコントローラ２２０は、最新ブロックＢｎの生成にあたって、確定されている一つ前のブロックＢｎ−１のハッシュ値を生成し、このハッシュ値をブロックに書き込む。
【００２９】
ここで、確定されている一つ前のブロックＢｎ−１というのは、このネットワークが保有しているブロックチェーンの最新のブロックである。ブロックチェーンは、ワークの識別番号や装置ごとにばらばらになっているわけではなく、複数のワークの情報を複数の機器ですべて一繋ぎのブロックチェーンにするのがよい。ワークの識別番号や装置ごとにブロックチェーンがばらばらになっていると、後工程ほど改ざんされやすくなってしまい、信頼性が低くなってしまう。
【００３０】
（Ｓ１０２）モーションコントローラ２２０は、仕様の変更データに対してハッシュ値を生成する。
【００３１】
（Ｓ１０３）さらに、モーションコントローラ２２０は、仕様変更データのハッシュ値に対し、自己の秘密鍵を使って署名を行う。そして、モーションコントローラ２２０は、署名した仕様変更データのハッシュ値をブロックＢｎに書き込む。仕様変更データというのは、仕様の変更履歴（変更による差分、変更の時刻、変更の担当者など）と、変更後（最新）の仕様と、を合わせたデータである。
【００３２】
（Ｓ１０４）さらに、モーションコントローラ２２０は、仕様変更データそのものもブロックＢｎに書き込む。（あわせて、モーションコントローラ２２０は、仕様の変更履歴を内部メモリにログとして書き込んでおく。）このようにして、一つ前のブロックＢｎ−１のハッシュ値と、署名した仕様変更データのハッシュ値と、仕様変更データそのものと、を含んだ仮の現在ブロックＢｎができる。
【００３３】
（Ｓ１０５）モーションコントローラ２２０は、上記のように作成した仮の現在ブロックをブロードキャストで発信する。
【００３４】
（Ｓ１０６）他の機器は、モーションコントローラ２２０から仮の現在ブロックＢｎを受信する。
【００３５】
（Ｓ１０７）他の機器は、モーションコントローラ２２０から受信した仮の現在ブロックＢｎを検証する。すなわち、他の機器は、モーションコントローラ２２０の公開鍵を用い、仕様変更データのハッシュ値と、仕様変更データそのものと、を突き合わせ、仮の現在ブロックＢｎを検証する。
【００３６】
（Ｓ１０８）他の機器は、仮の現在ブロックＢｎを検証した後、仮の現在ブロックに対して自己の秘密鍵で署名し、ブロックＢｎを閉じる。
【００３７】
なお、例えばナンス値を見つけるような作業（プルーフオブワーク）に成功した機器が、見つかったナンス値を仮の現在ブロックＢｎに書き込み、その後、署名するようにしてもよい。また、署名をする機器がブロックＢｎを閉じる際、仕様変更データそのものはブロックから削除するようにしてもよい。仕様変更データのハッシュ値がブロックチェーンに記録されれば、モーションコントローラ２２０の内部ログと突き合わせることで内部ログの検証はできる。
【００３８】
（Ｓ１０９）閉じられたブロックＢｎは、ブロックを閉じた機器からネットワークにブロードキャストされる。ネットワークに繋がった機器は、受信したブロックを現在ブロックとして格納していく。
【００３９】
（Ｓ１１０）モーションコントローラ２２０は、仕様変更があると、仮の現在ブロックを作成して発信し、他の機器で検証承認されたブロックを受け取ることになる。そして、この仕様変更データを含むブロックがブロックチェーンに繋がった後、さらに、所定数以上（例えば５以上や１０以上）のブロックが後ろに繋がったことをもって、モーションコントローラ２２０は仕様の変更が完了したとする。
【００４０】
モーションコントローラ２２０の仕様が意図せずに不適切な仕様に書き換わってしまうことも有り得る。あるいは、オペレータが意図的にモーションコントローラ２２０の仕様を書き換えることもある。
例えば、エラーのたびに測定が中断されると面倒であるため、エラーが出ないようにエラーコード（＃９０３のエラーメッセージ）を無効にしてしまったり、測定作業を過度に効率化しようとして駆動速度（移動速さ＃９１３、測定速さ＃９１２）を速くしてしまったりすることもあるだろう。
このような変更がなされると、測定データだけを見てもその測定データが正しいものかどうかは判定できなくなる。そこで、モーションコントローラ２２０の仕様の変更履歴およびそのときの仕様をブロックチェーンに記録しておき、あとから検証できるようにした。これにより測定データの信頼性が向上する。
【００４１】
（変形例１）
モーションコントローラ２２０が定期的に動作履歴をブロックチェーンに記録していくようにしてもよい。例えば、一日一回決まった時間に動作履歴をブロックチェーンに記録していく。
ここで、ブロックチェーンに記録すべきモーションコントローラ２２０の動作履歴としては、次のようなものが挙げられる。
（１）モーションコントローラ２２０がホストコンピュータ２３０から受けたコマンド。コマンドの種別、内容、時刻。
（２）モーションコントローラ２２０から測定機本体部２１０に与えた動作指令。動作指令の内容、時刻。
（３）エラー情報。ホストコンピュータ２３０からモーションコントローラ２２０に送られたエラーメッセージ。モーションコントローラ２２０の内部処理で発生したエラーメッセージ。測定機本体部２１０からモーションコントローラ２２０に送られたエラーメッセージ。
モーションコントローラ２２０は、これらの情報を含んだ動作履歴データの仮の現在ブロックを定期的に生成する。この定期情報を含む仮の現在ブロックには、動作履歴データそのものと、署名付きの動作履歴データのハッシュ値と、が含まれる。この後の実施例１とほぼ重複する説明は割愛する。
【００４２】
（実施例２）
［ホストコンピュータ２３０の変更の記録］
実施例２としては、ホストコンピュータ２３０の変更、より具体的には、測定ソフトウェア（測定パートプログラム）の変更をブロックチェーンに記録する。測定パートプログラムには、測定対象物（ワーク）のどこをどういう順番で測定するか（測定経路）、移動速度、測定速度、サンプリングタイミング（サンプリングピッチ）などが、設定されている。また、測定パートプログラムには、取得された測定データの解析（フィルタリング、カーブフィッティング、自動形状認識）や評価（合否判定）のアルゴリズムが含まれることもある。
【００４３】
ホストコンピュータ２３０を使って（ホストコンピュータ２３０のマウス、キーボード、タッチパネル等を使って）、微調整しながら測定パートプログラムを調整することもある。これは、実際に測定機本体部２１０を動かしてみないと、プローブの移動途中で測定対象物と測定機本体部２１０とが干渉するかどうかの最終確認ができないためである。あるいは、測定パートプログラムの作成を専門の会社にアウトソースすることもある。
この場合、別のコンピュータ上で作成された測定パートプログラムをホストコンピュータ２３０にインストールするということになる。新たな測定パートプログラムがインストールされた場合も「測定パートプログラムの仕様の変更」としてブロックチェーンに記録する。
【００４４】
ステップごとの冗長な説明は割愛するが、実施例１中の動作説明において、モーションコントローラ２２０をホストコンピュータ２３０に読み替え、モーションコントローラ２２０の仕様（設定）を測定パートプログラムに読み替えて頂ければよい。
【００４５】
（実施例３）
［測定データの記録および測定データを処理した記録］
実施例３としては、測定データの記録および測定データを処理した記録をブロックチェーンに記録していく。
測定機本体部２１０が取得した測定データは、モーションコントローラ２２０を介してホストコンピュータ２３０に送られ、ホストコンピュータ２３０は測定データを格納するとともに測定データを演算処理する。このとき、ホストコンピュータ２３０は、受け取った測定データに対して仮の現在ブロックを生成し、ブロックチェーンに繋いでいく。ブロックを生成するタイミングは、一定時間ごとにしてもよいし、一定のデータサイズごとにしてもよいし、一つのワークごとでもよいし、一つのワークのなかの１箇所ごと（例えば、一つの面ごと、一つのエッジごと、一つの孔ごと）でもよいだろう。これにより、処理前の生の測定データ（あるいは生の測定データのハッシュ値）がブロックチェーンに記録される。
【００４６】
また、ホストコンピュータ２３０は、取得した測定データに対して解析処理（フィルタリング、カーブフィッティングなど）を行う。そこで、処理後の測定データと、処理の内容と、を合わせてブロックチェーンに記録していく。すなわち、処理後の測定データおよび処理内容（フィルタリングの有無、フィルタリングの種類等）に対して仮の現在ブロックを生成し、他機器の承認を経てブロックチェーンに繋いでいく。これにより、処理後の測定データ（あるいは処理後測定データのハッシュ値）および処理内容（あるいは処理内容のハッシュ値）がブロックチェーンに記録される。
【００４７】
測定データは、小型測定装置２００でも取得／記録される。したがって、実施例３の動作は、小型測定装置２００のデータメモリ装置３２０が小型測定器３１０から受け取る測定データにも同じように適用することが好ましい。
【００４８】
（実施例４）
［加工、測定、組み立ての流れの統合的記録］
部品や製品は、加工、測定、評価を繰り返して最終的に完成品として出荷される。
実施例４では、製造工程の流れをブロックチェーンに記録していく。
例として、図５のように、原材料に対して、「加工（１回目）→測定（不合格）→加工（２回目）→測定（合格）→組立→最終検査（合格）→出荷」という工程を経たとする。
【００４９】
まず、工作機械１１０は、原材料を加工するにあたって、ブロックチェーンに繋ぐ新規ブロックを生成する。
新規ブロックの生成、署名、検証の大まかな処理については実施例１とほぼ同じでよい。
一回目の加工において工作機械１１０が生成する新規ブロックには、一つ前のブロックのハッシュ値はもちろんのこととして、
少なくとも、
ワークの識別番号、
作業責任者、
日時、の情報を含む。
この情報がブロックチェーンに記録されれば、少なくとも、対象のワークがいつ、誰が、どの機械で加工したものか後日検証できる。
さらに、できることなら、この加工で使用した加工プログラムの情報もブロックに加えておくとよい。
【００５０】
加工に続いて測定が実行される。測定にあたって測定データ（のハッシュ値）をブロックに記録する例は実施例３で説明した。
【００５１】
測定の結果、ワークが規準を満たさない場合には工作機械１１０で再加工することになる。
このとき、工作機械１１０は、
ワークの識別番号（製造ロットナンバー）、
作業責任者、
日時、の情報をブロックに記録していく。
【００５２】
ここで、同じワーク（同じ識別番号をもつワーク）を同じ工作機械１１０で再加工するとき、新たに生成するブロックに含めるハッシュ値としては、ネットワークのなかの最新のブロックのハッシュ値としてもよい。
再加工に続いて再測定が実行され、測定装置２００も、ネットワークのなかの最新のブロックのハッシュ値を含めながらブロックを生成する。これにより、図６に例示のように、ネットワークに繋がっている工作機械１１０、測定装置２００等のすべての機器の処理をとにかく時系列順に一つの長いブロックチェーンに記録していく。
【００５３】
もう一つの考え方として、同じワーク（同じ識別番号をもつワーク）を同じ工作機械１１０で再加工するとき、新たに生成するブロックに含めるハッシュ値としては、このワークに１回目の加工を行ったときの情報をもつブロックまで戻るという考え方もある。工作機械１１０は、ブロックチェーンのなかからこのワークに１回目の加工を行ったときの情報をもつブロックを探し、そのブロックのハッシュ値を含めるようにして新たなブロックを生成する。すると、図７に例示のように、このワークの１回目の測定データ情報のブロックとは分岐したサブチェーンが生成されることになる。
【００５４】
再加工に続いて再測定が実行される。
測定装置２００は、同じワーク（同じ識別番号をもつワーク）を再測定することになった場合、ネットワークのなかに複数あるブロックチェーンのなかでこのワークの最新の加工情報を含んでいるブロックチェーンを探す。そして、このワークの最新の加工情報を含んでいるブロックチェーンの最新のブロックのハッシュ値を含めながら新規ブロックを生成する。
【００５５】
このあと、組立工程や最終検査工程がある。
組立機械および最終検査装置が自己の作業情報をブロックチェーンに繋いでいくにあたっては、作業対象のワークの最新の作業情報を含んでいるブロックチェーンにブロックを繋いでいくこととする。
【００５６】
このようにすると時系列で繋がったメインのブロックチェーン（図６）の他に、サブチェーン（図７）が派生することになる。
最終完成品の情報からこのサブチェーン（図７）を逆にたどっていくと、この最終完成品の品質を保証するのに有効な情報だけが繋がったサブチェーンが得られることになる。つまり、再加工があった場合、一回目の測定データはこの最終完成品の品質を保証するうえで意味の無いデータとなっているので、この一回目の測定データを検証することにはあまり意味がない。そこで、サブチェーンには一回目の測定情報のブロックが挟まれないようにし、製品データの検証の効率を向上させることができるわけである。
【００５７】
なお、本発明は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
上記の説明では、機器同士はピアツーピア（Ｐ２Ｐ）ネットワークで繋がっているとした。例えば、測定装置が工作機械とだけケーブルでつながっており、測定装置が工作機械を通じて間接的にＬＡＮ環境に繋がっていてももちろんよいし、接続関係は特段限定されない。
また、装置同士は、クライアント・サーバ方式のネットワークで繋がっていてもよい。この場合、ブロックチェーンは、ネットワークの一または複数の管理サーバで生成、管理されるようにしてもよい。
【００５８】
測定装置は、測定機本体部とモーションコントローラとホストコンピュータとが分離している構成を例示したが、測定機本体部とモーションコントローラとが一体的になっていてもよいし、モーションコントローラとホストコンピュータとが一体的になっていてもよいし、測定機本体部とモーションコントローラとホストコンピュータとがすべて一体的になっていてもよい。
外観上の構成がどのようになっていても、本発明により、コントローラの仕様（設定）、測定パートプログラム、測定データをブロックチェーンに記録していけばよい。
【符号の説明】
【００５９】
１００…工場、
１１０…工作機械、
１２０…組立装置、
１３０、１３１、１３２…ネットワーク、
２００…測定装置、
２１０…測定機本体部、２２０…モーションコントローラ、２３０…ホストコンピュータ、
３００…小型測定装置、
３１０…小型測定器、３２０…データメモリ装置。
【図１】
2020057881.tif 000003
【図２】
2020057881.tif 000004
【図３】
2020057881.tif 000005
【図４】
2020057881.tif 000006
【図５】
2020057881.tif 000007
【図６】
2020057881.tif 000008
【図７】
2020057881.tif 000009