(57)【特許請求の範囲】
【請求項１】
被加工物に対して加工を施す加工部、前記被加工物の加工の際に利用する数値制御データを格納するデータメモリ、および前記データメモリ中のデータを用いて演算を行い、前記加工部を制御する制御部を有する数値制御装置と、データベースを有して構成されて前記数値制御装置で使用される前記数値制御データを含むデータを前記データベースとして格納する数値制御データ格納装置と、がネットワークを介して接続され、前記数値制御装置と前記数値制御データ格納装置との間で前記数値制御データを一致させるように情報連携を行う情報連携システムに対して前記ネットワークを介して接続され、前記数値制御装置で保持されて前記情報連携に用いられる情報連携用情報を作成する情報連携支援装置であって、
前記数値制御データ格納装置がデータベースとして格納している前記数値制御データの構成の情報であるスキーマ情報の要求を前記数値制御データ格納装置に通知し、前記スキーマ情報の要求に対応する前記数値制御データ格納装置からの応答により前記スキーマ情報を自動で取得するスキーマ情報取得部と、
前記数値制御装置が内部に格納している前記数値制御データの前記データメモリにおけるメモリ割り付けに関する情報であるメモリマップ情報の要求を前記数値制御装置に通知し、前記メモリマップ情報の要求に対応する前記数値制御装置からの応答により前記メモリマップ情報を自動で取得するメモリマップ情報取得部と、
前記スキーマ情報の構成要素と前記メモリマップ情報の構成要素との関連付けを指示して外部から入力される関連付け指示情報に基づいて、前記スキーマ情報の構成要素と前記メモリマップ情報の構成要素とを対応させてマッピングした前記情報連携用情報であるマッピングテーブルを自動生成するマッピングテーブル生成部と、
前記マッピングテーブルを前記数値制御装置に送信するマッピングテーブル送信部と、
を備えることを特徴とする情報連携支援装置。
【請求項２】
前記スキーマ情報取得部が前記スキーマ情報としてカラムを取得し、
前記メモリマップ情報取得部が前記メモリマップ情報として前記数値制御データのラベルを取得し、
前記マッピングテーブル生成部は、前記カラムと前記ラベルとを対応付けして前記カラムと前記ラベルとを組み合わせたマッピングテーブルを生成すること、
を特徴とする請求項１に記載の情報連携支援装置。
【請求項３】
前記マッピングテーブル生成部は、正規化された複数のテーブルに分割して前記マッピングテーブルを生成すること、
を特徴とする請求項２に記載の情報連携支援装置。
【請求項４】
前記マッピングテーブル生成部は、前記数値制御データ格納装置において実行されるアクションの条件を組み合わせたマッピングテーブルを、前記カラムと前記ラベルとを組み合わせたマッピングテーブルに関連付けて生成すること、
を特徴とする請求項３に記載の情報連携支援装置。
【請求項５】
前記情報連携支援装置は、前記マッピングテーブルを前記数値制御装置に送信した後に前記ネットワークから切断されること、
を特徴とする請求項１から４のいずれか１つに記載の情報連携支援装置。
【請求項６】
被加工物に対して加工を施す加工部、前記被加工物の加工の際に利用する数値制御データを格納するデータメモリ、および前記データメモリ中のデータを用いて演算を行い、前記加工部を制御する制御部を有する数値制御装置と、データベースを有して構成されて前記数値制御装置で使用される前記数値制御データを含むデータを前記データベースとして格納する数値制御データ格納装置と、がネットワークを介して接続され、前記数値制御装置と前記数値制御データ格納装置との間で前記数値制御データを一致させるように情報連携を行う情報連携システムにおいて前記数値制御装置で保持されて前記情報連携に用いられる情報連携用情報を作成する情報連携支援プログラムであって、
前記情報連携システムに対して前記ネットワークを介して接続されたコンピュータ装置に、
前記数値制御データ格納装置がデータベースとして格納している前記数値制御データの構成の情報であるスキーマ情報の要求を前記数値制御データ格納装置に通知し、前記スキーマ情報の要求に対応する前記数値制御データ格納装置からの応答により前記スキーマ情報を自動で取得するスキーマ情報取得手順と、
前記数値制御装置が内部に格納している前記数値制御データの前記データメモリにおけるメモリ割り付けに関する情報であるメモリマップ情報の要求を前記数値制御装置に通知し、前記メモリマップ情報の要求に対応する前記数値制御装置からの応答により前記メモリマップ情報を自動で取得するメモリマップ情報取得手順と、
前記スキーマ情報の構成要素と前記メモリマップ情報の構成要素との関連付けを指示して外部から入力される関連付け指示情報に基づいて、前記スキーマ情報の構成要素と前記メモリマップ情報の構成要素とを対応させてマッピングした前記情報連携用情報であるマッピングテーブルを自動生成するマッピングテーブル生成手順と、
前記マッピングテーブルを前記数値制御装置に送信するマッピングテーブル送信手順と、
を実行させることを特徴とする情報連携支援プログラム。
【請求項７】
前記スキーマ情報取得手順で前記スキーマ情報としてカラムを取得し、
前記メモリマップ情報取得手順で前記メモリマップ情報として前記数値制御データのラベルを取得し、
前記マッピングテーブル生成手順では、前記カラムと前記ラベルとを対応付けして前記カラムと前記ラベルとを組み合わせたマッピングテーブルを生成すること、
を特徴とする請求項６に記載の情報連携支援プログラム。
【請求項８】
前記マッピングテーブル生成手順では、正規化された複数のテーブルに分割して前記マッピングテーブルを生成すること、
を特徴とする請求項７に記載の情報連携支援プログラム。
【請求項９】
前記マッピングテーブル生成手順では、前記数値制御データ格納装置において実行されるアクションの条件を組み合わせたマッピングテーブルを、前記カラムと前記ラベルとを組み合わせたマッピングテーブルに関連付けて生成すること、
を特徴とする請求項８に記載の情報連携支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報連携支援装置、情報連携支援プログラムに関する。
【背景技術】
【０００２】
数値制御（Numerical  Control：以下、ＮＣという）装置は、一般にＮＣ制御ユニットと、ＮＣ操作パネルを中心に構成される指令部と、サーボアンプ、主軸アンプ、モータまたは検出器で構成される駆動部と、から構成されている。現在では、高性能の専用マイクロコンピュータを内蔵し、複雑で高度な制御を高い信頼性で実現することができるＣＮＣ（Computerized  NC）装置もＮＣ装置の一つとして使用されている。【０００３】
ＮＣ装置は、工作機械に設置されたセンサ、スイッチ等からの入力信号により、シーケンス制御を行うことも可能である。制御の対象は、工具交換または切粉排除など機械周辺の動作である。ＮＣ装置に対して、一連の加工動作を記述したものをＮＣプログラミングと呼ぶ。これは、その加工に必要な工具経路または加工条件などをＮＣ装置への命令という形で表したものである。このＮＣプログラムは、外部のプログラム自動生成装置からＮＣ装置へとダウンロードしたり、ＮＣ操作パネルから直接入力したりすることもできる。
【０００４】
一般にＮＣ装置は、汎用シーケンサや汎用サーボを組み合わせて構築したシステムでは実現できない、より高速で高精度な制御が要求される分野で利用される。このようなＮＣ装置は、サーボ系で０．５ｍｓ以下の高速な応答を行う高いリアルタイム性を有し、０．１μｍレベルの制御が可能である高精度な制御を行うことができる。高いリアルタイム性と高精度な制御を行いながら、振動を起こさない高度なサーボ加減速制御が可能という安定した特性も有する。また、機械の剛性的な要因で発生するバックラッシュ、ねじれ、たわみ、伸縮などに対応した機械に対する補正制御が可能であり、回転中の加工物の回転を止めることなく他の加工エリアに移動するような一つの加工物に対して複数の歯車で同時に加工できる同期制御も可能である。【０００５】
また、ＮＣ装置は、対話式で加工形状を入力して加工プログラムを作成する対話型プログラミング、加工のシミュレーションや加工時間を算出するグラフィックシミュレーション機能なども実施可能である。【０００６】
近年では、工場内においては生産状況等の変更に即応するために、各生産設備における生産に関する情報の変化に対し、その参照や評価を即座に行うことが重要になってきている。したがって、工作機械においても加工状況の変化に即応して、加工情報の参照や評価を正確に、即座に行うことが求められている。そのため、以下のような加工情報通信機能を有するＮＣ装置が、提案、実用化されている。一つは、ＮＣ装置においてファイル名を指定した上で加工プログラム等の加工情報を通信用中間パソコンやホストコンピュータ等から読み込む機能である。他の一つは、ホストコンピュータ等から加工計画や作業指示のファイルをＮＣ装置に対してオンラインで転送する機能である。【０００７】
さらに近年では、ネットワーク，パソコン，サーバの製品・技術が進化している。これらの進化を背景に、特定のテーマに沿ったデータを集めてネットワーク上の各種サーバにデータを格納して管理し、所望のデータの検索・抽出の容易化および再利用を可能とするデータ処理装置（ＤＢ）と、ＤＢアプリケーションを活用して、製品の品質向上に取り組んだり、ビジネス環境の変化に迅速に対応したりすることが容易に実現できるシステムが求められつつある。【０００８】
たとえば特許文献１には、加工情報通信機能を有するＮＣ装置として、プログラマブルコントローラを有するＦＡ（Factory  Automation）ネットワークと、プログラマブルコントローラから取得したデータを格納するデータファイルと、ユーザアプリケーションと、が、データ管理装置を介して接続された構造のシステムが開示されている。データ管理装置は、複数のＰＬＣから収集したデータをデータファイルに格納したり、ユーザアプリケーションに通知したりする処理を行う、プログラマブルコントローラとデータファイルおよびユーザアプリケーションとの間のミドルウェアとして機能する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許第３５８０３４７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記特許文献１の技術においては、ＦＡネットワーク側の工作機械／制御機器のデータを格納するデータベースと、工作機械／制御機器のデータをデータベースに格納するための専用の情報処理端末であるデータ管理装置と、このデータ管理装置でプログラマブルコントローラとデータベースとの間のデータのやり取りなどを行うためのミドルウェアと、が必要となる。これによって、専用の情報処理端末のメンテナンス費用が増え、システムの運営が高コストになってしまうという問題点があった。【００１１】
そこで、加工装置のデータをデータベースに格納するための専用の情報処理端末とミドルウェアを必要とせずに、加工機のデータをデータベースとの間で連携するための装置やプログラム作成装置等一式を工作機械の外部に設置する必要がなく、かつメンテナンス費用が抑えられ、高コスト体質から脱却できる情報連携手段および装置が求められる。【００１２】
また、加工機のデータをデータベースとの間で連携するための装置等の設計において用いられる、トリガ，ジョブ，アクション等の複雑な専門用語は、ＮＣ装置や加工機を扱っている作業者にとっては馴染みがなく、また作業者にとっては理解する必要性もない。しかし、近年の情報化やさまざまな社会情勢の変化、とりわけビッグデータの出現等に鑑みると、ＮＣ装置や加工機がＤＢと連携してビッグデータを形成した後でも、ビッグデータから容易に所望のデータの検索，抽出ができ、容易に再利用ができるようになるべきであることは、世の中の流れを鑑みれば、明らかである。しかしながら、上記従来の技術においては、ＮＣ装置や加工機が容易にＤＢと連携できる状況にあるとはいえない。
【００１３】
また、一般的な工作機械の使用用途としては、ＤＢやＦＡ用パソコンは必ずしも必要ない。しかし、近年の自動化の浸透や、トレーサビリティの必要性を考慮すると、工作機械とＤＢとの情報連携は避けては通れない。【００１４】
また加工機とデータベースとの間で容易にデータ連携できるためには、設定の容易さも含まれていることが重要である。しかしながら、上記従来の技術においては、設定の容易さまで考慮してＮＣ装置や加工機が容易にＤＢと連携できる状況にあるとは言い難い。【００１５】
本発明は、上記に鑑みてなされたものであって、データベースサーバとＮＣデータ情報を連携させるシステムにおいて、加工装置とデータベースとの間のデータの連携を、容易に且つ安価に実現可能な情報連携支援装置、情報連携支援プログラムを得ることを目的とする。
【課題を解決するための手段】
【００１６】
上述した課題を解決し、目的を達成するために、本発明にかかる情報連携支援装置は、被加工物に対して加工を施す加工部、前記被加工物の加工の際に利用する数値制御データを格納するデータメモリ、および前記データメモリ中のデータを用いて演算を行い、前記加工部を制御する制御部を有する数値制御装置と、前記数値制御装置で使用される前記数値制御データを含むデータをデータベースとして格納する数値制御データ格納装置と、がネットワークを介して接続され、前記数値制御装置と前記数値制御データ格納装置との間で前記数値制御データを一致させるように情報連携を行う情報連携システムに対して前記ネットワークを介して接続され、前記数値制御装置で保持されて前記情報連携に用いられる情報連携用情報を作成する情報連携支援装置であって、前記数値制御データ格納装置がデータベースとして格納している前記数値制御データの構成の情報であるスキーマ情報を前記数値制御データ格納装置から取得するスキーマ情報取得部と、前記数値制御装置が内部に格納している前記数値制御データの前記データメモリにおけるメモリ割り付けに関する情報であるメモリマップ情報を前記数値制御装置から取得するメモリマップ情報取得部と、前記スキーマ情報の構成要素と前記メモリマップ情報の構成要素との関連付けを指示して外部から入力される関連付け指示情報に基づいて、前記スキーマ情報の構成要素と前記メモリマップ情報の構成要素とを対応させてマッピングした前記情報連携用情報であるマッピングテーブルを生成するマッピングテーブル生成部と、前記マッピングテーブルを前記数値制御装置に送信するマッピングテーブル送信部と、を備えることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、データベースサーバとＮＣデータ情報を連携させるシステムにおいて、加工装置とデータベースとの間のデータの連携を、容易に且つ安価に実現できる、という効果を奏する。
【図面の簡単な説明】
【００１８】
【図１】図１は、本発明の実施の形態における情報支援システムの構成の一例を模式的に示す図である。
【図２】図２は、ＦＡパソコンにおいて動作するソフトウェアの階層構造の概念を示す図である。
【図３】図３は、本発明の実施の形態にかかる情報連携支援装置としての機能を実現するＦＡパソコンの構成の一例を模式的に示すブロック図である。
【図４】図４は、本発明の実施の形態にかかるＦＡパソコンのＣＰＵによってミドルウェアが実行されて実現される情報連携支援装置としての機能の構成を示す図である。
【図５】図５は、本発明の実施の形態にかかるミドルウェアにおける処理の手順の一例を示すフローチャートである。
【図６】図６は、本発明の実施の形態にかかるミドルウェアとデータベースサーバとの間での、スキーマ情報の受け渡し手順の一例を示すシーケンス図である。
【図７】図７は、ＮＣ装置の内部データ構成例を示す図である。
【図８】図８は、本発明の実施の形態にかかるミドルウェアの上で動作するＨＭＩアプリケーションがＦＡパソコンの表示装置に表示させる表示画面のイメージ図である。
【図９】図９は、本発明の実施の形態にかかる情報連携支援装置（ミドルウェア）とＮＣ装置との間での、内部データの受け渡し手順の一例を示すシーケンス図である。
【図１０】図１０は、本発明の実施の形態にかかるミドルウェアのマッピングテーブル生成部におけるマッピングテーブルの生成に用いる情報を示す図である。
【図１１】図１１は、正規化して作成されたマッピングテーブルの例を示す図である。
【図１２】図１２は、本発明の実施の形態にかかる情報連携支援装置（ミドルウェア）とＮＣ装置との間での、マッピングテーブルのデータの受け渡し手順の一例を示すシーケンス図である。
【図１３】図１３は、本発明の実施の形態における加工機とデータベースサーバとからなる情報連携システムの要部機能構成の一例を模式的に示すブロック図である。
【図１４】図１４は、加工機とデータベースサーバとからなる情報連携システムでの加工機からデータベースサーバへの情報連携処理の際の情報連携タスクにおける手順の一例を示すフローチャートである。
【図１５】図１５は、加工機とデータベースサーバとからなる情報連携システムでのデータベースサーバから加工機への情報連携処理の際の情報連携タスクにおける手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１９】
以下に、本発明にかかる情報連携支援装置、情報連携支援プログラムの実施の形態を図面に基づいて詳細に説明する。なお、本発明は以下の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【００２０】
実施の形態
図１は、本実施の形態における情報連携システムの構成の一例を模式的に示す図である。情報連携システムは、ＮＣ装置であるＣＮＣ装置２０ＡまたはＮＣ装置を組み込んだ加工機１０である加工機１０Ｂ，加工機１０Ｃ（以下、ＮＣ装置またはＮＣ装置が組み込まれた加工機をまとめてＮＣ装置という場合がある）と、ＣＮＣ装置２０Ａまたは加工機１０Ｂ，１０Ｃで使用されるデータ（以下、ＮＣデータという）などをデータベース（以下、ＤＢと呼ぶ場合がある）で管理する数値制御データ格納装置であるデータベースサーバ１００と、情報連携支援装置として機能するＦＡパソコン２００とが、電気通信回線であるネットワーク１５０を介して通信可能に接続される構成を有する。なお、ＮＣデータは、ＮＣ装置に関する特定のテーマに沿ったデータであり、ＮＣ装置が接続された加工機、またはＮＣ装置を組み込んだ加工機により被加工物を加工する際に利用する数値制御データ、ＮＣ装置における加工情報などを例示することができる。
【００２１】
加工機１０として、被加工物をレーザで加工するレーザ加工機１０Ｂ、被加工物を放電によって加工する放電加工機１０Ｃなどを用いることができる。
【００２２】
レーザ加工機１０Ｂは、レーザ光を切削または切断加工に利用することで、従来の刃物や切削器具を用いても不可能な機械加工を行う用途で開発された工作機械である。レーザ加工機１０Ｂは、被加工物に対して加工を行う駆動部６０Ｂと、ＮＣプログラムにしたがって駆動部６０Ｂに指示を与える指令部２０Ｂと、を有する。
【００２３】
放電加工機１０Ｃは、電極と被加工物との間に短い周期で繰り返し発生されるアーク放電によって被加工物表面の一部を除去する機械加工方法を採用した工作機械である。放電加工機を利用することで、従来の機械加工技術では加工できなかった硬い金属、極めて硬い鋼鉄、チタンまたは炭化物などから複雑な輪郭を切り出すことができる。放電加工機１０Ｃは、被加工物に対して加工を行う駆動部６０Ｃと、ＮＣプログラムにしたがって駆動部６０Ｃに指示を与える指令部２０Ｃと、を有する。
【００２４】
これらのレーザ加工機１０Ｂと放電加工機１０Ｃは、内部にＮＣ装置である指令部２０Ｂ，２０Ｃを組み込んで、加工部（工具）の動きを精密に制御し、微細加工を実現している。なお、これらは例示であり、加工機がこれに限定されるものではない。たとえば、加工機内部に組み込んだＮＣ装置で、工具の動きを精密に制御し、微細加工を実現している加工機であれば、この実施の形態を適用することができる。
【００２５】
データベースサーバ（図では、ＤＢサーバと表記）１００は、データベースを内部に持ち、データベース管理システムが動作しているサーバのことである。データベースサーバ１００は、クライアントからのリクエストなどに対してデータベースの検索などの処理を行い、処理結果を返す。現在使用されている様々なサーバは、内部にデータベースを搭載して情報管理している形態をとるものが多い。そのため、名称がデータベースサーバでなくても、内部にデータベースを搭載しているサーバであれば、この実施の形態に関わる可能性がある。したがって、この実施の形態に関わる広義の意味のデータベースサーバとして、データベースサーバ１００のほかに、たとえばＦｉｌｅサーバ１１０、ＦＴＰ（File  Transfer  Protocol）サーバ１２０、Ｗｅｂサーバ１３０、Ａｐｐ．（アプリケーション）サーバ１４０などを例示することができる。
【００２６】
ここで、Ｆｉｌｅサーバ１１０は、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）などのネットワーク上で、ファイルを共有するために設置されるサーバである。ＦＴＰサーバ１２０は、ＦＴＰを使用してファイルの送受信を行うサーバのことである。Ｗｅｂサーバ１３０は、通信プロトコルの一種であるＨＴＴＰ（Hyper  Text  Transfer  Protocol）を用いて情報のやり取りをしている。クライアントであるＷｅｂブラウザからリクエストを受けると、リクエストに応じたＨＴＭＬ（Hyper  Text  Markup  Language）文書や画像などの情報を送信する。Ｗｅｂサーバ１３０は、Ｗｅｂサイトの構築における必須要素の一つである。アプリケーションサーバ１４０は、業務用のシステムを、プレゼンテーション層、アプリケーション層、データ層の３つに分けて構成する３階層モデルにおいて、アプリケーション層のプログラムを実行する役割を担うサーバのことである。
【００２７】
情報連携支援装置として機能するＦＡパソコン２００は、たとえば産業用パーソナルコンピュータ（ＦＡパソコン）により構成され、ヒューマンマシンインタフェース（Human  Machine  Interface：ＨＭＩ）アプリケーションとオペレーティングシステム（Operating  System：ＯＳ）との間のミドルウェアを有する。情報連携支援装置は、該情報連携支援装置としての機能を実現するミドルウェアがＦＡパソコン上で動作することにより実現される。図２は、ＦＡパソコン２００において動作するソフトウェアの階層構造の概念を示す図である。図２に示されるように、ＯＳ２１１の上位にミドルウェア２１２が位置し、ミドルウェア２１２の上にＨＭＩアプリケーション２１３が位置する。
【００２８】
図３は、情報連携支援装置としての機能を実現するＦＡパソコン２００の構成の一例を模式的に示すブロック図である。図３に示されるように、ＦＡパソコン２００は、ＬＣＤ（Liquid  Crystal  Display）などの表示装置２０１、キーボードなどの入力装置２０２、演算を行うＣＰＵ２０３、ＲＯＭ（Read  Only  Memory）などの不揮発性メモリ２０４、ＲＡＭ（Random  Access  Memory）などの揮発性メモリ２０５、表示装置２０１に表示する表示画面を記憶する表示用メモリ２０６、フラッシュメモリなどの着脱可能な外部メモリとのインタフェースである外部メモリインタフェース２０７、外部機器との間で通信を行う通信インタフェース２０８などが内部バス２０９を介して接続された構成を有する。
【００２９】
ＣＰＵ２０３は、ＦＡパソコン２００を統括的に制御したり、メモリに記憶された各種プログラムを適宜読み出して実行したりする。ＨＭＩアプリケーション２１３、ミドルウェア２１２およびＯＳ２１１の処理は、このＣＰＵ２０３によって実行される。すなわち、不揮発性メモリ２０４に格納された情報連携支援装置としての機能の処理手順が記述された情報連携支援プログラムであるミドルウェア２１２が揮発性メモリ２０５にロードされ、ＣＰＵ２０３によって実行される。
【００３０】
このプログラムは、ハードディスク、ＣＤ（Compact  Disk）、ＲＯＭ（Read  Only  Memory）、ＭＯ（Magneto-Optical  disk）、ＤＶＤ（Digital  Versatile  DiskまたはDigital  Video  Disk）などのコンピュータ装置で読取可能な記録媒体に記録され、または、このプログラムは、インターネットなどのネットワーク（通信回線）を介して配布することもできる。この場合には、通信インタフェース２０８を介して接続された情報処理端末からプログラムが不揮発性メモリ２０４上に格納される。
【００３１】
図４は、ＦＡパソコン２００のＣＰＵ２０３によってミドルウェア２１２が実行されて実現される情報連携支援装置としての機能の構成を示す図である。ミドルウェア２１２は、ＤＢスキーマ情報取得部２２１と、ＮＣメモリマップ情報取得部２２２と、マッピングテーブル生成部２２３と、マッピングテーブル送信部２２４とを有する。これらの各構成部は、互いに情報の送受信が可能とされている。図４における矢印は、情報の流れを示している。
【００３２】
ＤＢスキーマ情報取得部２２１は、データベースサーバ１００と通信し、データベースサーバ１００にスキーマ情報の要求を通知して該データベースサーバ１００からＤＢのスキーマ情報を取得する。スキーマは、データベースサーバ１００のＤＢ格納部におけるＤＢの表、すなわちテーブルの論理的な格納場所を意味し、ファイルシステムにおけるディレクトリと似た働きをする。そして、互いに関連のあるテーブルは、同じスキーマに格納される。このようなデータベースサーバ１００におけるＮＣデータの構成の情報をスキーマ情報と呼ぶ。スキーマ情報としては、たとえばデータベースに有するテーブルのテーブル名とカラム（列）名とがある。また、ＤＢスキーマ情報取得部２２１は、マッピングテーブル生成部２２３にスキーマ情報を提供する。
【００３３】
ＮＣ装置は、加工を行うために様々な情報を内部に持っている。すなわち、ＮＣ装置のメモリには、加工を行うに当たって必要な加工プログラムであるＮＣプログラム、加工プログラムによる演算で使用したりまたは演算の結果出力されたりするデータ、データベースサーバ１００との間で情報連携するＮＣデータ等が格納されている。これらのデータは、それぞれ用途に応じて、ＮＣ装置内の揮発性のメモリまたは不揮発性のメモリに格納される。通常、ＮＣ装置本体に内蔵している表示部で情報を表示し、表示部にある入力部でオペレータからの指令を受け取って、その指令内容に基づいて加工を行う。
【００３４】
ＮＣメモリマップ情報取得部２２２は、ＮＣ装置と通信して、ＮＣ装置にＮＣメモリマップ情報の要求を通知して該ＮＣ装置からＮＣメモリマップ情報を取得する。ここでは、ＮＣ装置内部においてデータベースサーバ１００との間で情報連携するＮＣデータに対する、ＮＣ装置内のメモリのメモリ割り付けに関する情報をＮＣメモリマップ情報と呼ぶ。
【００３５】
マッピングテーブル生成部２２３は、ＤＢスキーマ情報取得部２２１が取得したＤＢのスキーマ情報と、ＮＣメモリマップ情報取得部２２２が取得したＮＣ装置のＮＣメモリマップ情報とをミドルウェア２１２の上位に位置するＨＭＩアプリケーション２１３に提供する。これにより、ＨＭＩアプリケーション２１３において、データベースサーバ１００におけるＤＢのテーブルの格納先に関する情報およびＮＣ装置内部のデータ内容を認識でき、いわゆるデータの「見える化」が図られる。
【００３６】
ＨＭＩアプリケーション２１３は、提供されたスキーマ情報とＮＣメモリマップ情報とをＦＡパソコン２００の表示装置２０１に表示する。ユーザは、表示装置２０１に表示されたスキーマ情報とＮＣメモリマップ情報との情報に基づいて、各スキーマ情報の構成要素とＮＣメモリマップ情報の構成要素との関連付けを指示する関連付け指示情報を入力装置２０２から入力する。
【００３７】
マッピングテーブル生成部２２３は、ユーザにより入力装置２０２から入力された関連付け指示情報を受け取って、連携させるデータベースのスキーマ情報とＮＣ装置のＮＣメモリマップ情報との組み合わせを示す組み合わせ情報であるマッピングテーブルを生成する。すなわち、マッピングテーブル生成部２２３は、関連付け指示情報に基づいて、スキーマ情報の構成要素とＮＣメモリマップ情報の構成要素とを対応させてマッピングした情報連携用情報であるマッピングテーブルを生成する。情報連携用情報は、ＮＣ装置とデータベースサーバ１００との間でＮＣデータの情報連携を行う際に用いられる。そして、マッピングテーブル生成部２２３は、生成したマッピングテーブルをマッピングテーブル送信部２２４に送信する。
【００３８】
ＮＣ装置は、データベースサーバ１００に格納されてＮＣ装置の有するＮＣデータに対応するデータを、ＮＣ装置で収集したＮＣデータに一致させるように、データベースサーバ１００内のデータベースへアクセスする情報連携コマンドを送信してＮＣ装置とデータベースサーバ１００との間で数値制御データであるＮＣデータの情報連携を行う。マッピングテーブルは、ＮＣ装置が、情報連携コマンドを生成する際に参照するものであり、情報連携を行うＮＣデータについて、データベースサーバ１００におけるＤＢのテーブルの格納先の情報であるスキーマ情報と、ＮＣ装置内部においてデータベースサーバ１００との間で情報連携するＮＣデータに対するメモリ割り付けに関する情報であるＮＣメモリマップ情報とを関連付ける組み合わせ情報である。
【００３９】
このように、マッピングテーブル生成部２２３は、ＨＭＩアプリケーション２１３に対してＤＢのスキーマ情報を提供するスキーマ情報提供部としての機能、ＨＭＩアプリケーション２１３に対してＮＣ装置のメモリマップ情報を提供するＮＣ装置メモリマップ情報提供部としての機能、スキーマ情報とメモリマップ情報と関連付け指示情報とに基づいてマッピングテーブルを生成する機能とを有する。
【００４０】
なお、ここではマッピングテーブル生成部２２３がスキーマ情報とメモリマップ情報とをＨＭＩアプリケーション２１３に提供する場合について示したが、ＤＢスキーマ情報取得部２２１がＨＭＩアプリケーション２１３にスキーマ情報を提供し、ＮＣメモリマップ情報取得部２２２がＨＭＩアプリケーション２１３にＮＣメモリマップ情報を提供する形態としてもよい。
【００４１】
マッピングテーブル送信部２２４は、マッピングテーブル生成部２２３が生成したマッピングテーブルを受け取り、ＮＣ装置へ送信する。
【００４２】
このように、ＦＡパソコン２００とミドルウェア２１２を用いて情報連携支援装置を構成することにより、ＮＣ装置とデータベースとのＮＣデータの連携ための専用の情報処理端末が不要である。このため、情報処理端末のメンテナンス費用等のコストの発生がなく、ＮＣ装置とデータベースとのＮＣデータの連携が安価に実現できる。
【００４３】
また、ＦＡパソコン２００は、ネットワーク１５０を介してＮＣ装置およびデータベースサーバ１００に接続される。したがって、ＦＡパソコン２００は、ＮＣ装置が配置される作業現場に設置される必要がなく、作業現場におけるフットプリントの増加がない。
【００４４】
つぎに、このようなミドルウェア２１２における処理について説明する。図５は、ミドルウェア２１２における処理の手順の一例を示すフローチャートである。まず、ＤＢスキーマ情報取得部２２１が、データベースサーバ１００にＤＢのスキーマ情報の要求を通知する。
【００４５】
データベースサーバ１００は、スキーマ情報の要求に応じて、ＤＢスキーマ情報取得部２２１にスキーマ情報を送信する。ＤＢスキーマ情報取得部２２１は、データベースサーバ１００から送信されたスキーマ情報を受信し、該スキーマ情報を取得する（ステップＳ１１０）。そして、ＤＢスキーマ情報取得部２２１は、取得したスキーマ情報をマッピングテーブル生成部２２３に送信する。
【００４６】
つぎに、ＮＣメモリマップ情報取得部２２２が、ＮＣ装置にＮＣメモリマップ情報の要求を通知する。ＮＣ装置は、ＮＣメモリマップ情報の要求に応じて、ＮＣメモリマップ情報をＮＣメモリマップ情報取得部２２２に送信する。ＮＣメモリマップ情報取得部２２２は、ＮＣ装置から送信されたＮＣメモリマップ情報を受信し、該ＮＣメモリマップ情報を取得する（ステップＳ１２０）。そして、ＮＣメモリマップ情報取得部２２２は、取得したＮＣメモリマップ情報をマッピングテーブル生成部２２３に送信する。
【００４７】
つぎに、マッピングテーブル生成部２２３が、ＤＢのスキーマ情報とメモリマップ情報とをＨＭＩアプリケーション２１３に送信する。ＨＭＩアプリケーション２１３は、スキーマ情報とメモリマップ情報とを受信し、該スキーマ情報とメモリマップ情報とをＦＡパソコン２００の表示装置２０１に表示する。ユーザは、表示装置２０１に表示されたスキーマ情報とメモリマップ情報との情報に基づいて、各スキーマ情報とメモリマップ情報との関連付けを指示する関連付け指示情報を入力装置２０２から入力する。
【００４８】
マッピングテーブル生成部２２３は、入力装置２０２から入力された関連付け指示情報を、ＨＭＩアプリケーション２１３を経由して受け取る。マッピングテーブル生成部２２３は、該関連付け指示情報に基づいてマッピングテーブルを生成する（ステップＳ１３０）。そして、マッピングテーブル生成部２２３は、生成したマッピングテーブルをマッピングテーブル送信部２２４へ送信する。
【００４９】
マッピングテーブル送信部２２４は、マッピングテーブル生成部２２３から送信されたマッピングテーブルを受信し、該マッピングテーブルをＮＣ装置へ送信する（ステップＳ１４０）。
【００５０】
なお、ＮＣ装置は、マッピングテーブル送信部２２４から送信されたマッピングテーブルを受信すると、該マッピングテーブルを記憶する。そして、ＮＣ装置は、該マッピングテーブルの内容に応じて、ＮＣ装置内部のメモリのデータとＤＢのスキーマとの割り付けを認識して、ＮＣ装置内部のＮＣデータをデータベースサーバ１００に挿入していく。
【００５１】
つぎに、情報連携支援装置（ミドルウェア２１２）とデータベースサーバ１００との間での、スキーマ情報の受け渡しについて説明する。図６は、ミドルウェア２１２とデータベースサーバ１００との間での、スキーマ情報としてのＤＢテーブル名およびカラム（列）名の受け渡し手順の一例を示すシーケンス図である。
【００５２】
まず、ミドルウェア２１２とデータベースサーバ１００との間でセッションを確保するＤＢ接続処理が行われる。具体的には、ＤＢスキーマ情報取得部２２１は、あらかじめ設定された設定内容に従って接続すべきデータベースサーバ１００を認識し、ＤＢ接続要求をデータベースサーバ１００に送信して、データベースを開くＤＢオープン処理を行う（ステップＳ２１０）。
【００５３】
データベースサーバ１００は、ＤＢ接続要求に応答して、ＤＢ接続を承認するＤＢ接続応答をＤＢスキーマ情報取得部２２１に送信する（ステップＳ２２０）。このようなＤＢ接続処理の一連の手順は、接続するＤＢによって、厳格に規定されている。一般的には、ＴＣＰ／ＩＰ通信を利用し、接続するＤＢのＩＰアドレスもしくは、ホスト名，ポート番号，ユーザ名とパスワードをパラメータ情報として提供し、ＤＢに接続する。
【００５４】
つぎに、ＤＢスキーマ情報取得部２２１は、接続するＤＢのバージョンを確認するバージョン確認要求をデータベースサーバ１００に送信する（ステップＳ２３０）。データベースサーバ１００は、バージョン確認要求に応答して、ＤＢのバージョンを知らせるバージョン応答をＤＢスキーマ情報取得部２２１に送信する（ステップＳ２４０）。ＤＢのバージョンの確認は、ＤＢの種類によってはバージョン毎に利用するＳＱＬ文が異なる場合があるため、確認のために行われる。
【００５５】
つぎに、ＤＢスキーマ情報取得部２２１は、ＤＢの保持するテーブルのテーブル名の取得を要求するＳＱＬコマンドであるＳＱＬ文を発行し、データベースサーバ１００に送信する（ステップＳ２５０）。一例として、たとえばＤＢ内の全てのテーブル名を要求する場合には、「ｓｅｌｅｃｔ  ＊  ｆｒｏｍ  ａｌｌ＿ｔａｂｌｅｓ；」のＳＱＬコマンドが発行される。データベースサーバ１００は、該ＳＱＬコマンドに応答して、テーブル名を知らせるテーブル名応答をＤＢスキーマ情報取得部２２１に送信する（ステップＳ２６０）。
【００５６】
つぎに、ＤＢスキーマ情報取得部２２１は、ＤＢの保持するテーブルにおけるカラム（列）名の取得を要求するＳＱＬコマンドであるＳＱＬ文を発行し、データベースサーバ１００に送信する（ステップＳ２７０）。一例として、たとえば接続対象がＳＱＬ  Ｓｅｒｖｅｒ（登録商標）であれば、「ｓｐ＿ｃｏｌｕｍｎｓ  ［テーブル名］」のＳＱＬコマンドが発行される。また、たとえば接続対象がＯｒａｃｌｅ（登録商標）であれば、「ｓｅｌｅｃｔ  ＊  ｆｒｏｍ  ＵＳＥＲ＿ＴＡＢ＿ＣＯＬＵＭＮＳ  ｗｈｅｒｅ  ＴＡＢＬＥ＿ＮＡＭＥ  ＝    ‘テーブル名’  ｏｒｄｅｒ  ｂｙ  ＣＯＬＵＭＮ＿ＩＤ」のＳＱＬコマンドが発行される。
【００５７】
データベースサーバ１００は、該ＳＱＬコマンドに応答して、カラム（列）名を知らせるカラム（列）名応答をＤＢスキーマ情報取得部２２１に送信する（ステップＳ２８０）。そして、ＤＢスキーマ情報取得部２２１は、カラム（列）名応答を受信すると、受け取り完了を示すＡＣＫをＮＣ装置に送信する（ステップＳ２９０）。このように、然るべきＳＱＬ文を接続する対象のＤＢの仕様に沿った形で送信することにより必要な情報を受け取れる仕組みが、市販のＤＢには備わっている。
【００５８】
なお、ＤＢスキーマ情報取得部２２１は、取得したテーブル名とカラム（列）名をマッピングテーブル生成部２２３に送信する。
【００５９】
つぎに、ミドルウェア２１２とＮＣ装置との間での、ＮＣデータであるＮＣ装置内の内部データ構造の受け渡しについて説明する。ＮＣ装置の内部データの構成例について説明する。図７は、ＮＣ装置の内部データ構成例を示す図である。図７に示すＮＣ装置の内部データは、複数の「大区分」に分類される。各「大区分」は、さらに複数の「小区分」に細分化される。また、各「小区分」には、「ラベル」が付与される。そして、各「ラベル」には、格納できる情報量を示す「データ型」の情報が付加される。図７に示す例では、たとえばＮｏ．１〜Ｎｏ．４のデータが、「大区分」である「システム情報」に分類される。また、「システム情報」に分類されたデータのうち、Ｎｏ．３のデータは、「小区分」である「全制御軸数」に分類され、「ＴｏｔａｌＮｕｍｂｅｒＯｆＣｏｎｔｒｏｌｌｅｄＡｘｅｓ」のラベルが付与される。そして、このラベルには、「データ型」として「Ｓｈｏｒｔ」が与えられる。なお、図７に示す内部データは、ＮＣ装置の内部データの一例であり、当然ながらこのデータだけでＮＣ装置が稼働できるわけではないが、概ねこのように構成されたメモリ情報を活用して、加工処理が行われる。
【００６０】
図８は、ミドルウェア２１２の上で動作するＨＭＩアプリケーション２１３がＦＡパソコン２００の表示装置２０１に表示させる表示画面のイメージ図である。図８では、データベースサーバとＮＣ装置とが保持する情報をどのようにしてマッピングするかを示す画面例を示している。図中の表示画面の上部では、データベースサーバとＮＣ装置との図を示すことにより、データベースサーバとＮＣ装置とが直接接続されているイメージを示している。
【００６１】
表示画面におけるデータベースサーバの図の下の領域には、ＤＢが有する表と、各表に内在するカラム（列）とが配置されている。図８に示す例では、テーブル１〜テーブルｎに対して、それぞれのテーブルに内在するカラム（列）であるカラム１〜カラムｎが示されている。また、ＮＣ装置の図の下の領域には、ＮＣ装置が有する情報を大区分ごとに示し、該大区分に含まれるラベルが並べて配置されている。
【００６２】
ユーザは、各ラベルと各カラムとを紐付けるために、各ラベルと各カラムとの関連付けを指示する関連付け指示情報を入力装置２０２から入力する。すなわち、ユーザは、各ラベルと各カラムとを紐付けるために、画面上においてラベルとカラムとの間に関係線を設定する。ＨＭＩアプリケーション２１３により表示された画面上において関係線を引くことにより、ラベルの持つデータをどのカラムとマッチングするのかが関係付けられる。各関係線には関係線ＩＤが与えられる。また、ユーザは、関係線ＩＤごとに、データの操作方法とデータの操作タイミングとをパラメータとして入力して与える。
【００６３】
データの操作方法とデータの操作タイミングとは、データベースサーバ１００との間で情報連携するＮＣデータについて、ＮＣ装置からデータベースサーバ１００に送信されるコマンドによりデータベースに対してどのような操作を実施するかを指示する条件であり、すなわち、ＮＣ装置がマッピングテーブルの内容に応じて、ＮＣ装置内部のＮＣデータをデータベースサーバ１００に挿入していく際のデータベースサーバ１００におけるアクションの条件である。データの操作方法は、データベースサーバ１００との間で情報連携するＮＣデータについて、データベースにおいてどのような操作を実施するかを示す。データの操作タイミングは、上記のデータの操作をデータベースに対してどのようなタイミングで実施するかを示す。
【００６４】
データの操作方法の例としては、たとえばデータベース中のデータの追加を指示する「ＩＮＳＥＲＴ」、データベース中のデータの更新を指示する「ＵＰＤＡＴＥ」、およびデータベース中のデータの取得を指示する「ＳＥＬＥＣＴ」などが挙げられる。
【００６５】
ユーザが上記の作業を、情報連携が必要な全てのカラムと全てのラベルとにおいて行えば、ユーザの操作は完了である。これにより、たとえば図８に示すようにテーブル１のカラム２と、大区分１のラベルｎとの間に関係線が設定されて、これらがマッピングされる。また、テーブル１のカラムｎと、大区分ｎのラベルｎとの間に関係線が設定されて、これらがマッピングされる。また、テーブル３のカラム１と、大区分１のラベル１との間に関係線が設定されて、これらがマッピングされる。
【００６６】
図９は、情報連携支援装置（ミドルウェア２１２）とＮＣ装置との間での、内部データの受け渡し手順の一例を示すシーケンス図である。ＮＣメモリマップ情報取得部２２２は、ＮＣ装置内のメモリのメモリ割り付けに関する情報であるＮＣメモリマップ情報を取得するために、まず、ＮＣ装置内部においてデータベースサーバ１００との間で情報連携するＮＣデータに対する、ＮＣ装置内のメモリのマッピング情報の読み出しを要求するマッピング読み出し要求をＮＣ装置に送信する（ステップＳ３１０）。ＮＣ装置は、該マッピング読み出し要求に応答して、データベースサーバ１００との間で情報連携するＮＣデータについての総ラベル数を通知する総ラベル数応答をＮＣメモリマップ情報取得部２２２に送信する（ステップＳ３２０）。
【００６７】
つぎに、ＮＣメモリマップ情報取得部２２２は、全てのラベルの読み出しを要求する総ラベル読み出し要求をＮＣ装置に送信する（ステップＳ３３０）。ＮＣ装置は、ラベルの内容をラベル毎に通知するラベル応答を、総ラベル数分だけＮＣメモリマップ情報取得部２２２に送信する（ステップＳ３４０）。なお、ラベル応答では、ラベルに付加された「データ型」の情報も一緒に送られる。
【００６８】
ここで、ＮＣメモリマップ情報取得部２２２は、全てのラベルの読み出しを１度に要求するのではなく、大区分毎にラベルの読み出しを要求する方式を採用してもよい。この場合、ＮＣ装置は、大区分毎にラベルをＮＣメモリマップ情報取得部２２２に送信する。
【００６９】
そして、ＮＣメモリマップ情報取得部２２２は、全てのラベル応答を受信すると、受け取り完了を示すＡＣＫをＮＣ装置に送信する（ステップＳ３５０）。なお、ＤＢスキーマ情報取得部２２１は、取得したＮＣ装置の内部データ構成であるラベルおよびデータ型の情報をマッピングテーブル生成部２２３に送信する。
【００７０】
つぎに、マッピングテーブル生成部２２３におけるマッピングテーブルの生成について説明する。図１０は、マッピングテーブル生成部２２３におけるマッピングテーブルの生成に用いる情報であるデータベースサーバ１００の有するテーブルのテーブル名およびカラム名と、ＮＣ装置の有する内部データ構成とを示す図である。図１０（ａ）は、データベースサーバ１００の有するテーブルのテーブル名およびカラム名を示す。図１０（ｂ）は、ＮＣ装置の有する内部データ構成を示す。
【００７１】
マッピングテーブル生成部２２３は、データベースサーバ１００の有するテーブルにおけるテーブル名とカラム名との組み合わせと、ラベルと、の組み合わせをマッピングして、テーブル化したマッピングテーブルを作成する。マッピングは、ＨＭＩアプリケーション２１３で指定された関連付け指示情報の内容、すなわち関係線で指示された組み合わせ内容および関係線ＩＤごとに指示されたパラメータであるデータの操作方法とデータの操作タイミングとに関する情報に基づいて行われる。そして、マッピングテーブル生成部２２３は、生成したマッピングテーブルをマッピングテーブル送信部２２４へ送信する。
【００７２】
テーブル化においては、関係線ＩＤを主キーとして、カラム−ラベルの組み合わせと、アクションの組み合わせに分離して２つの表にして正規化する。主キーは、関係線ＩＤとなる。図１１は、正規化して作成されたマッピングテーブルの例を示す図である。図１１（ａ）は、関係線ＩＤを主キーとし、（テーブル、カラム）−（ラベル）の組み合わせで作成されたマッピングテーブル（テーブル１）の例を示す図である。図１１（ｂ）は、関係線ＩＤを主キーとしアクションとの組み合わせで作成されたマッピングテーブル（テーブル２）の例を示す図である。
【００７３】
正規化したマッピングテーブルを作成することで、マッピングテーブルにおける情報の重複をなくし、ＮＣ装置へ送信するマッピングテーブルの情報を少なくするとともに、ＮＣ装置がＳＱＬ文を生成するときの負荷を減らすことができる。
【００７４】
図１２は、情報連携支援装置（ミドルウェア２１２）とＮＣ装置との間での、マッピングテーブルのデータの受け渡し手順の一例を示すシーケンス図である。マッピングテーブル送信部２２４は、マッピングテーブルをＮＣ装置に送信する（ステップＳ４１０）。ＮＣ装置は、マッピングテーブルを受信すると、該マッピングテーブルをメモリに格納し、受け取り完了を示すＡＣＫをマッピングテーブル送信部２２４に送信する（ステップＳ４２０）。
【００７５】
なお、マッピングテーブルのデータをＮＣ装置に提供した後は、情報連携支援装置（ＦＡ用パソコン２００）は、情報連携支援装置としての役割を終えているので、ネットワーク１５０から切り離される。マッピングテーブルがＮＣ装置内に格納されているため、ＮＣ装置とデータベースサーバ１００とのシステムの実稼働に情報連携支援装置は必要ない。
【００７６】
つぎに、マッピングテーブルを用いたＮＣ装置とデータベースサーバ１００とのＮＣデータの連携処理の例について説明する。図１３は、本実施の形態における加工機１０とデータベースサーバ１００とからなる情報連携システムの要部機能構成の一例を模式的に示すブロック図である。情報連携システムは、加工機１０と、数値制御データ格納装置であるデータベースサーバ１００と、がネットワークを介して接続された構成を有する。
【００７７】
データベースサーバ１００は、たとえば情報連携コマンド送受信部１０１と、データベース格納部１０２と、データベース管理部１０３とを有する。情報連携コマンド送受信部１０１は、データベース格納部１０２中のデータベースと、ＮＣ装置またはＮＣ装置（指令部２０）が組み込まれた加工機１０が保持するある特定のＮＣ情報とを連携させる情報連携コマンドを、加工機１０との間で送受信する。データベース格納部１０２は、加工機１０に内在するＮＣ情報をデータベースの形式で格納している。データベース中のＮＣ情報は、加工機１０との間で情報連携される。データベース格納部１０２は、複数のスキーマを有する。データベース管理部１０３は、データベース格納部１０２のデータベースサーバ１００に対するアクセス要求に対する処理を行う。また、データベース管理部１０３は、上述したようにＤＢスキーマ情報取得部２２１にスキーマ情報を提供する処理を行う。
【００７８】
加工機１０は、指令部２０と、加工部である駆動部６０と、を有する。駆動部６０は、主軸アンプ６２により制御される主軸を回転駆動する主軸モータ６１と、主軸モータ６１を駆動させることにより主軸を回転させる主軸アンプ６２と、サーボアンプ６４により工具などの位置や速度の制御を行うサーボモータ６３と、サーボモータ６３を駆動するサーボアンプ６４と、加工機１０の装置状態を取得する入力信号生成部であるリミットスイッチ、センサ、その他スイッチ類６５と、指令部２０からの指示によって動作する動作部であるコンタクタ、ソレノイド、ランプ他６６と、を有する。
【００７９】
指令部２０は、ＮＣ制御ユニット３０と、ＮＣ操作パネル５０と、プログラム作成装置５５と、を有する。ＮＣ操作パネル５０は、ＮＣ制御ユニット３０を操作する情報を表示するための表示器と、ＮＣ制御ユニット３０に対して指示を与える操作キーと、を有する。プログラム作成装置５５は、加工機１０での加工に必要な工具経路または加工条件などをＮＣ制御ユニット３０への命令という形で表現した加工プログラム（ＮＣプログラム）を作成する。加工プログラムは、プログラム作成装置５５からＮＣ制御ユニット３０にダウンロードされたり、またはＮＣ操作パネル５０から直接入力することによって作成され、ＮＣ制御ユニット３０に導入したりすることができる。
【００８０】
ＮＣ制御ユニット３０は、ＣＰＵ３１と、メモリ３２と、プログラム作成装置５５などの外部機器との間の通信インタフェースである外部Ｉ／Ｆ３３と、ＮＣ操作パネル５０との間の通信インタフェースである操作パネルＩ／Ｆ３４と、主軸アンプ６２との間の通信インタフェースである主軸制御Ｉ／Ｆ３５と、サーボアンプ６４との間の通信インタフェースであるサーボ制御Ｉ／Ｆ３６と、リミットスイッチ、センサ、その他スイッチ類６５との間の通信インタフェースであるディジタル入力Ｉ／Ｆ３７と、コンタクタ、ソレノイド、ランプ他６６との間の通信インタフェースであるディジタル出力Ｉ／Ｆ３８と、を有する。
【００８１】
メモリ３２には、加工を行うに当たって必要な加工プログラム（ＮＣプログラム）と、加工プログラムによる演算で使用したり、演算の結果出力されたりするデータと、データベースサーバ１００との間で情報連携するＮＣデータと、が格納される。これらのデータは、それぞれ用途に応じて、揮発性のメモリまたは不揮発性のメモリに格納される。
【００８２】
また、このメモリ３２には、データベースサーバ１００との間で情報連携を行う情報連携プログラムが格納されている。この実施の形態では、データベースサーバ１００との間で情報連携を行う仕組みが、ＮＣ装置（指令部２０）内部に情報連携タスク７０として実装され、それらを加工機１０に搭載することで実現される。そして、メモリ３２には、情報連携支援装置から取得したマッピングテーブルが格納される。
【００８３】
情報連携タスク７０は、数値制御データ収集手段であるＮＣデータ収集部７１と、数値制御データ蓄積手段である収集ＮＣデータ蓄積部７２と、データベースサーバ１００との間で情報連携を行う情報連携部７３と、更新用ＮＣデータ蓄積部７４と、ＮＣデータ更新部７５と、を有する。
【００８４】
ＮＣデータ収集部７１は、メモリ３２に設けられたマッピングテーブル格納部７６に格納されたマッピングテーブルの内容、およびあらかじめ設定されたＮＣデータ収集に関する条件に基づき、加工機１０（ＮＣ制御ユニット３０）のメモリ３２のデータとＤＢのスキーマとの割り付けを認識して、加工機１０（ＮＣ制御ユニット３０）のメモリ３２から、ＮＣデータを収集する。
【００８５】
収集ＮＣデータ蓄積部７２は、ＮＣデータ収集部７１によって収集された加工機１０のメモリ３２内のＮＣデータを格納して蓄積する。なお、以下では、この収集されたＮＣデータのことを収集ＮＣデータともいう。
【００８６】
情報連携部７３は、メモリ３２に設けられたマッピングテーブル格納部７６に格納されたマッピングテーブルの内容、およびあらかじめ設定されたデータベースサーバ１００との間での情報連携条件に基づき、ＮＣデータ収集部７１で収集したＮＣデータを含めて情報連携コマンドを生成する。ここで、データベースサーバ１００に送信されるＮＣデータが連携されるＤＢのスキーマの割り付け位置が、マッピングテーブルの内容に基づいて、情報連携コマンドにおいて指定される。そして、情報連携部７３は、ネットワークに接続されるデータベースサーバ１００のデータベースに対して、情報連携コマンドを送信する。
【００８７】
また、情報連携部７３は、データベースサーバ１００からの情報連携コマンド（たとえばデータベースサーバ１００から受信した「ＳＥＬＥＣＴ」コマンドに対する応答）を受信し、その情報連携コマンドに付随するメモリ３２内のＮＣデータを変更するためのＮＣデータを更新用ＮＣデータ蓄積部７４に蓄積する。
【００８８】
更新用ＮＣデータ蓄積部７４は、データベースサーバ１００から取得した更新用ＮＣデータを格納する。更新用ＮＣデータは、加工機１０での制御に使用されるＮＣデータであり、現在格納されているＮＣデータを更新するための情報である。
【００８９】
ＮＣデータ更新部７５は、メモリ３２に設けられたマッピングテーブル格納部７６に格納されたマッピングテーブルの内容、およびあらかじめ設定された条件に基づいて、更新用ＮＣデータ蓄積部７４の更新用ＮＣデータを用いて、加工機１０（ＮＣ制御ユニット３０）のメモリ３２のＮＣデータを更新する。
【００９０】
つぎに、このような構成のＮＣ装置での情報連携処理について説明する。図１４は、加工機１０とデータベースサーバ１００とからなる情報連携システムでの加工機１０からデータベースサーバ１００への情報連携処理の際の情報連携タスクにおける手順の一例を示すフローチャートである。
【００９１】
まず、ＮＣデータ収集部７１は、マッピングテーブルの内容およびあらかじめ設定されたＮＣデータ収集に関する条件に基づき、加工機１０（ＮＣ制御ユニット３０）のメモリ３２のデータとＤＢのスキーマとの割り付けを認識して、加工機１０（ＮＣ制御ユニット３０）のメモリ３２からＮＣデータを収集し、収集ＮＣデータ蓄積部７２に格納する（ステップＳ５１０）。
【００９２】
ついで、情報連携部７３は、マッピングテーブルの内容およびあらかじめ設定されたデータベースサーバ１００との間での情報連携条件に基づき、収集ＮＣデータ蓄積部７２に格納したＮＣデータを含めて情報連携コマンドを生成する（ステップＳ５２０）。このとき、ここで、データベースサーバ１００に送信されるＮＣデータが連携されるＤＢのスキーマの割り付け位置が、マッピングテーブルの内容に基づいて、情報連携コマンドにおいて指定される。そして、情報連携部７３は、ネットワークに接続されるデータベースサーバ１００のデータベースに対して、情報連携コマンドを送信し（ステップＳ５３０）、情報連携を行う。以上で、加工機１０のＮＣデータをデータベースサーバ１００へ反映する情報連携処理が終了する。
【００９３】
図１５は、加工機１０とデータベースサーバ１００とからなる情報連携システムでのデータベースサーバから加工機への情報連携処理の際の情報連携タスクにおける手順の一例を示すフローチャートである。まず、加工機１０は、マッピングテーブルの内容およびあらかじめ設定されたデータベースサーバ１００との間での情報連携条件に基づき、更新用ＮＣデータの抽出を行う情報連携コマンドをデータベースサーバ１００に対して送信する（ステップＳ６１０）。なお、この更新用ＮＣデータの取得要求は、データ抽出を行う「ＳＥＬＥＣＴ」命令を使用する。また、この更新用ＮＣデータの取得要求を送信するまでの手順の詳細は、図１４で説明した手順と同様であるのでその説明を省略する。
【００９４】
データベースサーバ１００は、更新用ＮＣデータの取得要求を含む情報連携コマンドを受信すると、その情報連携コマンドにしたがって更新用ＮＣデータの抽出を行い、情報連携コマンド送受信部１０１を介して加工機１０に送信する。
【００９５】
加工機１０の情報連携タスク７０の情報連携部７３は、更新用ＮＣデータを受信すると（ステップＳ６２０）、更新用ＮＣデータ蓄積部７４に格納する（ステップＳ６３０）。
【００９６】
ＮＣデータ更新部７５は、更新用ＮＣデータが更新用ＮＣデータ蓄積部７４に格納されると、メモリ３２に設けられたマッピングテーブル格納部７６に格納されたマッピングテーブルの内容、およびあらかじめ設定された条件に基づいて、更新用ＮＣデータ蓄積部７４に格納された更新用ＮＣデータで、加工機１０のメモリ３２のＮＣデータの内容を更新する（ステップＳ６４０）。以上によって、加工機１０へのＮＣデータの更新処理が終了する。
【００９７】
通常、ＮＣ装置は、専用のＨＭＩデバイスを備えていることは少ない。また、ＮＣ装置が専用のＨＭＩデバイスを備えている場合でも、表示画面は小さく、その表示画面でデータベースとのデータの連携を行うことは非常に難しい。また、データベースに関する複雑な専門用語は、ＮＣ装置や加工機を扱っている作業者にとっては馴染みがなく、ＮＣ装置側においてデータベースとのマッピング手続きを行うことは困難である。
【００９８】
上述したように、本実施の形態においては、情報連携支援装置において作成されたマッピングテーブルをＮＣ装置に自動で送信して格納させる。これにより、ＮＣ装置側においてデータベースとのマッピング手続きを行う必要がなくなる。そして、データベースとＮＣデータを連携するための手続を行うための表示装置や手続き実行機能を、ＮＣ装置側に設ける必要がなくなる。したがって、ＮＣ装置の構成を簡便な構成とすることができ、ＮＣ装置とデータベースとの間のＮＣデータの連携を低コストで実現できる。
【００９９】
また、本実施の形態においては、情報連携支援装置が自動で直接ＮＣ装置およびデータベースにアクセスして各種データを取得する。また、情報連携支援装置は、作成されたマッピングテーブルをネットワークを介してＮＣ装置に自動で送信して格納させる。このため、ユーザが関連付け指示情報を入力するだけで、マッピングテーブルの作成およびＮＣ装置への送信を情報連携支援装置が自動で実行でき、容易にＮＣ装置とデータベースとの間のＮＣデータの連携を実現できる。
【０１００】
また、本実施の形態においては、情報連携支援装置はネットワークを介してＮＣ装置およびデータベースに接続される。したがって、情報連携支援装置はＮＣ装置が配置される作業現場に設置される必要がなく、ＮＣ装置とデータベースとのＮＣデータの連携に起因した作業現場におけるフットプリントの増加がない。
【０１０１】
また、本実施の形態においては、ＦＡパソコンと情報連携プログラムを用いることで情報連携支援装置を構成でき、専用の情報処理端末が不要であるため、情報処理端末のメンテナンス費用等のコストの発生がなく、ＮＣ装置とデータベースとのＮＣデータの連携が安価に実現できる。また、本実施の形態においては、マッピングテーブルの作成およびＮＣ装置への送信時のみパソコンを使用するため、専用のパソコンも不要であり、専用のパソコンの維持コストも不要である。
【０１０２】
また、本実施の形態においては、ＮＣ装置とデータベースとの間のＮＣデータの連携がほぼ自動で実現されるため、データベースに関わるユーザが、ＮＣデータの連携のためにＮＣ装置や加工機を扱っている作業者にＮＣデータについて確認等をする必要がなく、ユーザの負担が軽減する。
【０１０３】
したがって、本実施の形態によれば、ＮＣ装置とデータベースとの間のＮＣデータの連携を、容易に且つ安価に実現可能である。
【産業上の利用可能性】
【０１０４】
以上のように、本発明にかかる情報連携支援システムは、電気通信回線を介して接続されるデータベースサーバとＮＣ装置とを連携させるシステムに有用である。
【符号の説明】
【０１０５】
１０  加工機、１０Ｂ  レーザ加工機、１０Ｃ  放電加工機、２０Ａ  ＣＮＣ装置、２０Ｂ  指令部、２０Ｃ  指令部、３０  ＮＣ制御ユニット、３１  ＣＰＵ、３２  メモリ、３３  外部Ｉ／Ｆ、３４  操作パネルＩ／Ｆ、３５  主軸制御Ｉ／Ｆ、３６  サーボ制御Ｉ／Ｆ、３７  ディジタル入力Ｉ／Ｆ、３８  ディジタル出力Ｉ／Ｆ、５０  ＮＣ操作パネル、５５  プログラム作成装置、６０，６０Ｂ，６０Ｃ  駆動部、６１  主軸モータ、６２  主軸アンプ、６３  サーボモータ、６４  サーボアンプ、６５  他スイッチ類、６６  ランプ他、７０  情報連携タスク、７１  ＮＣデータ収集部、７２  収集ＮＣデータ蓄積部、７３  情報連携部、７４  更新用ＮＣデータ蓄積部、７５  ＮＣデータ更新部、７６  マッピングテーブル格納部、１００  データベースサーバ、１０１  情報連携コマンド送受信部、１０２  データベース格納部、１０３  データベース管理部、１１０  Ｆｉｌｅサーバ、１２０  ＦＴＰ（File  Transfer  Protocol）サーバ、１３０  Ｗｅｂサーバ、１４０  Ａｐｐ．（アプリケーション）サーバ、１５０  ネットワーク、２００  ＦＡパソコン、２０１  表示装置、２０２  入力装置、２０３  ＣＰＵ、２０４  不揮発性メモリ、２０５  揮発性メモリ、２０６  表示用メモリ、２０７  外部メモリインタフェース、２０８  通信インタフェース、２０９  内部バス、２１２  ミドルウェア、２１３  ＨＭＩアプリケーション、２２１  ＤＢスキーマ情報取得部、２２２  ＮＣメモリマップ情報取得部、２２３  マッピングテーブル生成部、２２４  マッピングテーブル送信部。
【要約】
数値制御データ格納装置がデータベースとして格納している数値制御データの構成の情報であるスキーマ情報を数値制御データ格納装置から取得するスキーマ情報取得部と、数値制御装置が内部に格納している数値制御データのデータメモリにおけるメモリ割り付けに関する情報であるメモリマップ情報を数値制御装置から取得するメモリマップ情報取得部と、スキーマ情報の構成要素とメモリマップ情報の構成要素との関連付けを指示して外部から入力される関連付け指示情報に基づいて、スキーマ情報の構成要素とメモリマップ情報の構成要素とを対応させてマッピングした情報連携用情報であるマッピングテーブルを生成するマッピングテーブル生成部と、マッピングテーブルを数値制御装置に送信するマッピングテーブル送信部と、を備える。【図１】
0005875737.tif 000002
【図２】
0005875737.tif 000003
【図３】
0005875737.tif 000004
【図４】
0005875737.tif 000005
【図５】
0005875737.tif 000006
【図６】
0005875737.tif 000007
【図７】
0005875737.tif 000008
【図８】
0005875737.tif 000009
【図９】
0005875737.tif 000010
【図１０】
0005875737.tif 000011
【図１１】
0005875737.tif 000012
【図１２】
0005875737.tif 000013
【図１３】
0005875737.tif 000014
【図１４】
0005875737.tif 000015
【図１５】
0005875737.tif 000016