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

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

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

特許7560703シミュレーション装置及びコンピュータプログラム
<>
  • 特許-シミュレーション装置及びコンピュータプログラム 図1
  • 特許-シミュレーション装置及びコンピュータプログラム 図2
  • 特許-シミュレーション装置及びコンピュータプログラム 図3
  • 特許-シミュレーション装置及びコンピュータプログラム 図4
  • 特許-シミュレーション装置及びコンピュータプログラム 図5
  • 特許-シミュレーション装置及びコンピュータプログラム 図6
  • 特許-シミュレーション装置及びコンピュータプログラム 図7
  • 特許-シミュレーション装置及びコンピュータプログラム 図8
  • 特許-シミュレーション装置及びコンピュータプログラム 図9
  • 特許-シミュレーション装置及びコンピュータプログラム 図10
  • 特許-シミュレーション装置及びコンピュータプログラム 図11
  • 特許-シミュレーション装置及びコンピュータプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-09-24
(45)【発行日】2024-10-02
(54)【発明の名称】シミュレーション装置及びコンピュータプログラム
(51)【国際特許分類】
   G05B 19/4069 20060101AFI20240925BHJP
   B23Q 15/00 20060101ALI20240925BHJP
【FI】
G05B19/4069
B23Q15/00 B
【請求項の数】 7
(21)【出願番号】P 2024538118
(86)(22)【出願日】2024-03-22
(86)【国際出願番号】 JP2024011494
【審査請求日】2024-06-21
【早期審査対象出願】
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【弁理士】
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【弁理士】
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】有松 小次郎
(72)【発明者】
【氏名】小木曽 太郎
【審査官】亀田 貴志
(56)【参考文献】
【文献】国際公開第2020/084671(WO,A1)
【文献】国際公開第2023/223471(WO,A1)
【文献】特開2014-219911(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/18 - 19/46
G05B 17/00
B23Q 15/00
(57)【特許請求の範囲】
【請求項1】
工作機械のシミュレーション装置であって、
加工プログラムに基づいて、前記工作機械の軸動作指令を生成する数値制御模擬部と、
前記軸動作指令、及び前記工作機械の軸動作を模擬するための軸動作仮想実績に基づいてトルク指令を生成するサーボ制御模擬部と、
前記数値制御模擬部及び前記サーボ制御模擬部とは独立した形態であり、交換可能なモジュール部と、を備え、
前記モジュール部は、
前記サーボ制御模擬部から前記トルク指令を受信し、前記サーボ制御模擬部へ前記軸動作仮想実績を送信する送受信部と、
前記トルク指令に基づいて、前記工作機械の駆動軸の動作をシミュレーションすると共に、前記軸動作仮想実績を更新する駆動軸模擬部と、
を備え、
前記モジュール部は、前記工作機械を制御するシステムに依存しない外部装置によって生成されており、
前記サーボ制御模擬部は、前記軸動作仮想実績が得られた場合、前記トルク指令を生成し、前記軸動作仮想実績が得られない場合、前記トルク指令を生成しない、シミュレーション装置。
【請求項2】
前記軸動作仮想実績は、前記サーボ制御模擬部が初回の動作においてのみ取得する軸動作仮想実績初期値及び前記駆動軸模擬部によって更新される軸動作仮想実績更新値を含む、請求項1に記載のシミュレーション装置。
【請求項3】
前記モジュール部は、前記工作機械の検出器情報に基づいて前記軸動作仮想実績を補正する検出器模擬部を更に備える、請求項1又は2に記載のシミュレーション装置。
【請求項4】
前記シミュレーション装置は、前記工作機械の検出器情報に基づいて前記軸動作仮想実績を補正する検出器模擬部を更に備え、
前記送受信部は、補正された前記軸動作仮想実績を前記検出器模擬部へ送信する、請求項1又は2に記載のシミュレーション装置。
【請求項5】
前記検出器情報は、少なくとも、前記駆動軸模擬部の計算周期、計算結果の遅延量、駆動軸の検出器の分解能、及びフィードバックの遅延量を含む、請求項3に記載のシミュレーション装置。
【請求項6】
前記駆動軸模擬部は、複数のモータによって駆動される駆動機構をシミュレーションする場合、前記工作機械の他の軸の前記トルク指令又は前記他の軸の前記軸動作仮想実績に基づいて、シミュレーションを実行する、請求項1又は2に記載のシミュレーション装置。
【請求項7】
コンピュータに、
数値制御模擬部によって、加工プログラムに基づいて、工作機械の軸動作指令を生成するステップと、
サーボ制御模擬部によって、前記軸動作指令、及び前記工作機械の軸動作を模擬するための軸動作仮想実績に基づいてトルク指令を生成するステップと、
数値制御模擬部及びサーボ制御模擬部とは独立した形態であり、交換可能なモジュール部によって、サーボ制御模擬部から前記トルク指令を受信し、前記サーボ制御模擬部へ前記軸動作仮想実績を送信するステップと、
前記モジュール部によって、前記トルク指令に基づいて、前記工作機械の駆動軸の動作をシミュレーションすると共に、前記軸動作仮想実績を更新するステップと、
を実行させるためのコンピュータプログラムであって、
前記モジュール部は、前記工作機械を制御するシステムに依存しない外部装置によって生成されており、
前記軸動作仮想実績が得られた場合、前記トルク指令を生成し、前記軸動作仮想実績が得られない場合、前記トルク指令を生成しない、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、シミュレーション装置及びコンピュータプログラムに関する。
【背景技術】
【0002】
従来、複数の駆動軸と、それらの複数の駆動軸を制御するコントローラとを備える工作機械の動作を検証するために、当該コントローラのユーザプログラムの実行を模擬するシミュレーション装置によって動作を検証することができる。このようなシミュレーション装置において、駆動軸のシミュレーションのモデルは、予め決定されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第6460138号
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、工作機械の動作は、軸のイナーシャ、摩擦、干渉等の駆動軸の様態に依存する部分が大きい。工作機械における駆動軸の様態は、多様であり、固定されたモデルでは、全ての駆動軸を模擬することはできない。例えば、特許文献1では、軸干渉、摩擦の考慮、他の軸の状態でイナーシャが変わる等のような駆動軸の構成を模擬することができない。
【0005】
このように既存の工作機械のシミュレーション装置は、予め決定された固定のモデルでしか駆動軸を模擬できない。そのため、駆動軸のシミュレーションのモデルを変更して、様々な種類の駆動軸をシミュレーションできるシミュレーション装置及びコンピュータプログラムが望まれている。
【課題を解決するための手段】
【0006】
本開示の一態様は、工作機械のシミュレーション装置であって、加工プログラムに基づいて、前記工作機械の軸動作指令を生成する数値制御模擬部と、前記軸動作指令、及び前記工作機械の軸動作を模擬するための軸動作仮想実績に基づいてトルク指令を生成するサーボ制御模擬部と、前記数値制御模擬部及び前記サーボ制御模擬部とは独立した形態であり、交換可能なモジュール部と、を備え、前記モジュール部は、前記サーボ制御模擬部から前記トルク指令を受信し、前記サーボ制御模擬部へ前記軸動作仮想実績を送信する送受信部と、前記トルク指令に基づいて、前記工作機械の駆動軸の動作をシミュレーションすると共に、前記軸動作仮想実績を更新する駆動軸模擬部と、を備え、前記モジュール部は、前記工作機械を制御するシステムに依存しない外部装置によって生成されており、前記サーボ制御模擬部は、前記軸動作仮想実績が得られた場合、前記トルク指令を生成し、前記軸動作仮想実績が得られない場合、前記トルク指令を生成しない、シミュレーション装置である。
【0007】
本開示の一態様は、コンピュータに、数値制御模擬部によって、加工プログラムに基づいて、工作機械の軸動作指令を生成するステップと、サーボ制御模擬部によって、前記軸動作指令、及び前記工作機械の軸動作を模擬するための軸動作仮想実績に基づいてトルク指令を生成するステップと、前記数値制御模擬部及び前記サーボ制御模擬部とは独立した形態であり、交換可能なモジュール部によって、前記サーボ制御模擬部から前記トルク指令を受信し、前記サーボ制御模擬部へ前記軸動作仮想実績を送信するステップと、前記モジュール部によって、前記トルク指令に基づいて、前記工作機械の駆動軸の動作をシミュレーションすると共に、前記軸動作仮想実績を更新するステップと、を実行させるためのコンピュータプログラムであって、前記モジュール部は、前記工作機械を制御するシステムに依存しない外部装置によって生成されており、前記軸動作仮想実績が得られた場合、前記トルク指令を生成し、前記軸動作仮想実績が得られない場合、前記トルク指令を生成しない、コンピュータプログラム。
【図面の簡単な説明】
【0008】
図1】第1実施形態に係るシミュレーション装置の概要を示す機能ブロック図である。
図2】実際の工作機械とシミュレーション装置との構成の対応関係を示す図である。
図3】シミュレーション装置によるシミュレーション例における伝達関数のブロック線図である。
図4】第1実施形態に係るシミュレーション装置の動作例を示す図である。
図5】第2実施形態に係るシミュレーション装置の概要を示す機能ブロック図である。
図6】第2実施形態に係る、補正後の軸動作仮想実績を算出する例を示す図である。
図7】第2実施形態に係る、補正後の軸動作仮想実績を算出する例を示す図である。
図8図6に示す軸動作仮想実績を予測する例を示す図である。
図9】第3実施形態に係るシミュレーション装置の概要を示す機能ブロック図である。
図10】第4実施形態に係るシミュレーション装置の概要を示す図である。
図11】タンデム制御の例を示す図である。
図12】旋削加工の例を示す図である。
【発明を実施するための形態】
【0009】
[第1実施形態]
以下、本開示の実施形態の一例について説明する。図1は、第1実施形態に係るシミュレーション装置1の概要を示す図である。シミュレーション装置1は、駆動軸と、駆動軸を制御するコントローラとを備える工作機械の動作をシミュレーションする。シミュレーション装置1は、例えば、工作機械及び数値制御装置と接続されたコンピュータ装置等であってもよい。また、シミュレーション装置1は、工作機械及び数値制御装置と接続されないシミュレーション用のコンピュータ装置であってもよい。
【0010】
シミュレーション装置1は、数値制御模擬部11と、サーボ制御模擬部12と、モジュール部13と、を備える。
【0011】
数値制御模擬部11は、工作機械のCNC(Computer Numerical Control)制御を模擬する機能部である。数値制御模擬部11は、加工プログラム10に基づいて、工作機械の駆動軸の軸動作指令を生成する。
【0012】
サーボ制御模擬部12は、工作機械のサーボモータ制御を模擬する機能部である。サーボ制御模擬部12は、工作機械の駆動軸の軸動作指令、及び工作機械の駆動軸の軸動作を模擬するための軸動作仮想実績に基づいてトルク指令を生成する。
【0013】
ここで、軸動作仮想実績は、サーボ制御模擬部12が初回の動作においてのみ取得する軸動作仮想実績初期値及び駆動軸模擬部によって更新される軸動作仮想実績更新値を含む。軸動作仮想実績初期値は、数値制御模擬部11から与えられてもよく、その他のデータベース(図示せず)に記憶されていてもよく、モジュール部13内に設定されてもよい。例えば、軸動作仮想実績初期値は、前回の起動時の最終位置が初期値として与えられる。また、軸動作仮想実績は、駆動軸の位置、駆動軸の速度、駆動軸の加速度、及び駆動軸の移動量のいずれかであってもよい。
【0014】
モジュール部13は、数値制御模擬部11及びサーボ制御模擬部12とは独立した形態であり、交換可能となっている。モジュール部13は、例えばコンピュータ上で個別に取り扱いが可能なDLL(ダイナミックリンクライブラリ)、.exe(実行形式)等の形式のファイル又はアプリケーション等である。また、モジュール部13は、USBメモリやSDカード等の記憶媒体又はマイクロコンピュータ等であってもよく、個別に取り扱いが可能なDLL、.exe等の形式のファイル又はアプリケーション等を格納してもよい。
【0015】
また、モジュール部13は、送受信部131と、駆動軸模擬部132と、を備える。送受信部131は、サーボ制御模擬部12からトルク指令を受信し、サーボ制御模擬部12へ軸動作仮想実績を送信する。駆動軸模擬部132は、トルク指令に基づいて、工作機械の駆動軸の動作をシミュレーションすると共に、軸動作仮想実績を更新する。
【0016】
モジュール部13は、工作機械を制御するシステムに依存しない外部装置によって生成されている。サーボ制御模擬部12は、軸動作仮想実績が得られた場合、トルク指令を生成し、軸動作仮想実績が得られない場合、トルク指令を生成しない。工作機械を制御するシステムは、例えば、工作機械を制御するオペレーティングシステムであってもよく、工作機械の動作をシミュレーションするためのシミュレーション装置のオペレーティングシステムや、アプリケーションプログラムであってもよい。また、外部装置は、シミュレーション装置1と通信可能なコンピュータ装置又はアプリケーションプログラムである。また、外部装置は、USBメモリやSDカード等の記憶媒体を介してシミュレーション装置1へデータを受け渡し可能なコンピュータ装置又はアプリケーションプログラムであってもよい。
【0017】
なお、上述した数値制御模擬部11の計算周期、サーボ制御模擬部12の計算周期、及び駆動軸模擬部132の計算周期は、数値制御模擬部11、サーボ制御模擬部12及び駆動軸模擬部132それぞれ間の通信において計算周期が異なっていても、問題なく動作するものとする。
【0018】
図2は、実際の工作機械100とシミュレーション装置1との構成の対応関係を示す図である。図2に示すように、実際の工作機械100は、例えば、CNC(Computer Numerical Control)制御部101と、サーボ制御部102と、モータ駆動軸103と、を備える。CNC制御部101は、位置指令をサーボ制御部102へ出力し、サーボ制御部102は、位置指令に基づいてトルク指令をモータ駆動軸103へ出力する。モータ駆動軸103は、トルク指令に基づいて軸を駆動し、ロータリエンコーダ等の検出器から出力された位置フィードバックをサーボ制御部102へ出力する。
【0019】
一方、シミュレーション装置1は、数値制御模擬部11及びサーボ制御模擬部12等に相当するシミュレーションソフト本体20と、駆動軸模擬部132等が格納されるモジュール部13と、を備える。
【0020】
シミュレーションソフト本体20は、上記の実際の工作機械100をシミュレーションするために、トルク指令をモジュール部13へ出力し、モジュール部13は、トルク指令に基づいてシミュレーションを実行すると共に、位置フィードバックをシミュレーションソフト本体20へ出力する。ここで、駆動軸模擬部132等が格納されるモジュール部13は、工作機械メーカや、工作機械のユーザによって、それぞれの機械に対応して作成される。よって、駆動軸模擬部132によってシミュレーションされる駆動軸のモデルは、様々な様態の駆動軸を含むことができる。
【0021】
図3は、シミュレーション装置1によるシミュレーション例における伝達関数のブロック線図である。詳細には、図3は、駆動軸が送り軸であり、シミュレーション装置1により軸動作をシミュレーションする例における伝達関数のブロック線図である。
【0022】
シミュレーション装置1は、加工プログラムに基づく軌跡を描く送り軸と、工具又はワークを回転させる主軸との動作のシミュレーションを行う。シミュレーション装置1は、例えば、軸が送り軸である場合、図3の伝達関数のブロック線図で示される。図3のブロック線図と同様な構成のブロック線図は、特開平3-110607号公報、WO2023/157244等に記載されている。駆動軸模擬部132の伝達関数は、伝達関数401から伝達関数407の結合により構成される。
【0023】
図3において、伝達関数401は、位置ループの伝達関数であり、Kpはポジションゲインを示す。伝達関数402は、速度ループの伝達関数であり、kは積分ゲイン、kは比例ゲインを示す。伝達関数403及び404はモータの伝達関数である。Kはトルク定数、Jはモータイナーシャ(慣性モーメント)を示す。伝達関数405は、サーボモータと機械の結合部であるボールネジ等を示す。伝達関数406は、機械の伝達関数であり、JLは機械のイナーシャを示す。伝達関数407は、機械の可動部の速度を積分して機械の位置を求める積分要素の伝達関数である。
【0024】
伝達関数401で示される位置ループ、及び伝達関数402で示される速度ループは、サーボ制御モデルとなり、伝達関数403、404、405、406及び407で示される、モータ、ボールネジ等及び積分要素は、プラントモデルである。
【0025】
位置指令からリニアスケール等で検出される機械の位置のフィードバック信号Pを減じて位置偏差を求め、この位置偏差にポジションゲインKpを乗じて、速度指令Vが求められる。この速度指令Vからサーボモータに取付けられたパルスコーダ等で検出されるモータ速度のフィードバック値Vを減じて速度偏差を求め、比例積分してトルク指令T(電流指令)を求める。サーボモータは、トルク指令Tに基づいて駆動され、サーボモータは、クローズド・ループ方式で位置、速度のフィードバック制御がなされる。
【0026】
また、シミュレーション装置1は、伝達関数407がサーボモータの角速度を積分してサーボモータの角度を求め、サーボモータの角度を機械の位置に換算した値を機械の位置とみなす構成であってもよい。このような伝達関数404、405、406、407は、駆動軸模擬部132によるシミュレーションに相当する。
【0027】
図4は、第1実施形態に係るシミュレーション装置1の動作例を示す図である。上述したように数値制御模擬部11は、加工プログラム10に基づいて、工作機械の駆動軸の軸動作指令を生成する。サーボ制御模擬部12は、軸動作指令及び軸動作仮想実績に基づいてトルク指令を生成する。駆動軸模擬部132は、トルク指令に基づいて、軸動作仮想実績を更新する。
【0028】
すなわち、図4に示すように、サーボ制御模擬部12は、加工プログラム10に基づいて、軸動作指令としてのX軸指令位置A1と、軸動作仮想実績初期値としてのX軸初期位置Bとに基づいて、トルク指令C1を生成する。そして、サーボ制御模擬部12は、X軸指令位置A2と、軸動作仮想実績の更新値としてのX軸移動位置D1とに基づいて、トルク指令C2を生成する。ここで、サーボ制御模擬部12は、軸動作仮想実績であるX軸移動位置D1が得られなければ、トルク指令C2を生成しない。このようにトルク指令及び軸動作仮想実績は、サーボ制御模擬部12及び駆動軸模擬部132によって、逐次生成及び更新される。
【0029】
以上説明したように第1実施形態によれば、シミュレーション装置1は、加工プログラム10に基づいて、工作機械の軸動作指令を生成する数値制御模擬部11と、軸動作指令、及び工作機械の軸動作を模擬するための軸動作仮想実績に基づいてトルク指令を生成するサーボ制御模擬部12と、数値制御模擬部11及びサーボ制御模擬部12とは独立した形態であり、交換可能なモジュール部13と、を備える。モジュール部13は、サーボ制御模擬部12からトルク指令を受信し、サーボ制御模擬部12へ軸動作仮想実績を送信する送受信部131と、トルク指令に基づいて、工作機械の駆動軸の動作をシミュレーションすると共に、軸動作仮想実績を更新する駆動軸模擬部132と、を備える。モジュール部13は、工作機械を制御するシステムに依存しない外部装置によって生成されており、サーボ制御模擬部12は、軸動作仮想実績が得られた場合、トルク指令を生成し、軸動作仮想実績が得られない場合、トルク指令を生成しない。
【0030】
このような構成を備えることによって、第1実施形態に係るシミュレーション装置1は、駆動軸のシミュレーションのモデルを変更して、様々な種類の駆動軸をシミュレーションできる。更に、シミュレーション装置1は、駆動軸の様態に対応したシミュレーションを独立して開発できるため、開発したシミュレーションによって駆動軸の様態を反映したシミュレーションを行うことが可能となる。
【0031】
また、軸動作仮想実績は、サーボ制御模擬部12が初回の動作においてのみ取得する軸動作仮想実績初期値及び駆動軸模擬部132によって更新される軸動作仮想実績更新値を含む。これにより、シミュレーション装置1は、サーボ制御模擬部12が初回の動作においてもトルク指令を生成し、駆動軸模擬部132によるシミュレーションを行うことができる。
【0032】
[第2実施形態]
図5は、第2実施形態に係るシミュレーション装置1Aの概要を示す機能ブロック図である。なお、第2実施形態の説明においては、主に第1実施形態と異なる点について説明し、第1実施形態と同様の構成及び処理については説明を省略する。
【0033】
第2実施形態に係るシミュレーション装置1Aは、工作機械の検出器情報134に基づいて軸動作仮想実績を補正する検出器模擬部133を更に備える。また、送受信部131は、補正された軸動作仮想実績を検出器模擬部133へ送信する。
【0034】
ここで、検出器情報134は、少なくとも、駆動軸模擬部132の計算周期、計算結果の遅延量、駆動軸の検出器(シミュレーション対象)の分解能、及びデータの送受信によるフィードバックの遅延量を含む。
【0035】
図6及び図7は、第2実施形態に係る、補正後の軸動作仮想実績を算出する例を示す図である。具体的には、図6及び図7は、駆動軸模擬部132から出力される補正前の軸動作仮想実績と、検出器模擬部133から出力される補正後の軸動作仮想実績とを示す。
【0036】
図6に示す例では、検出器情報については、分解能が0.01degであり、駆動軸模擬部132の計算周期が0.2msである。また、図6において、時間-0.1msでの軸動作仮想実績は、100.113である。
【0037】
検出器模擬部133は、0.1msごとのトルク指令に対して、計算量の低減のために0.2msごとに駆動軸の計算を行う場合、直近の軸動作仮想実績に基づいて、抜けている軸動作仮想実績を予測する。
【0038】
図8は、図6に示す軸動作仮想実績を予測する例を示す図である。例えば、図8に示すように、図6における0.6msにおける補正後の軸動作仮想実績は、0.5msにおける補正前の軸動作仮想実績(100.626)と、0.3msにおける補正前の軸動作仮想実績(100.464)とから求められる。
【0039】
詳細には、図6における0.6msにおける補正後の軸動作仮想実績は、100.626+1/2(100.626-100.464)=100.71のように求められる。同様に、図6における0.2msにおける補正後の軸動作仮想実績は、100.292+1/2*(100.292-100.113)=100.38のように求められる。0.4msにおける補正後の軸動作仮想実績は、100.464+1/2*(100.464-100.292)=100.55のように求められる。
【0040】
図7に示す例では、図6に示す例に加え、計算の都合上、0.2ms遅れた軸動作仮想実績が得られる場合である。図7に示す例では、検出器情報については、分解能が0.01degであり、駆動軸模擬部132の計算周期が0.2msであり、遅延が0.2msである。また、図7において、時間-0.1msでの軸動作仮想実績は、100.113である。
【0041】
このような場合、検出器模擬部133は、0.1msごとのトルク指令に対して、直近の軸動作仮想実績に基づいて、抜けている軸動作仮想実績を予測する。
【0042】
例えば、図7における0.1msにおける補正後の軸動作仮想実績は、0.1msにおける補正前の軸動作仮想実績(100.292)と、-0.1msにおける補正前の軸動作仮想実績と(100.113)とから求められる。詳細には、図7における0.1msにおける補正後の軸動作仮想実績は、100.292+2/2*(100.292-100.113)=100.47のように求められる。0.3ms及び0.5msにおける補正後の軸動作仮想実績も同様に求められる。
【0043】
また、0.2msにおける補正後の軸動作仮想実績は、100.292+3/2*(100.292-100.113)=100.56のように求められる。0.4ms及び0.6msにおける補正後の軸動作仮想実績も同様に求められる。
【0044】
図6及び図7に示す例の場合、軸動作仮想実績が補正されなければ、サーボ制御模擬部12は、0.2msごとに停止し、正確なシミュレーションを実現できない場合がある。上記の例では、補正後の軸動作仮想実績が途切れないため、サーボ制御模擬部12は、問題なく0.1msごとにトルク指令を出力する。
【0045】
以上説明したように、第2実施形態によれば、モジュール部13は、工作機械の検出器情報134に基づいて軸動作仮想実績を補正する検出器模擬部133を更に備える。これにより、シミュレーション装置1Aは、数値制御模擬部11の計算周期、サーボ制御模擬部12の計算周期、及び駆動軸模擬部132の計算周期が、互いに異なっている場合であっても、計算周期の違いを補間することができる。
【0046】
また、検出器情報134は、少なくとも、駆動軸模擬部132の計算周期、計算結果の遅延量、駆動軸の検出器の分解能、及びフィードバックの遅延量を含む。これにより、シミュレーション装置1Aは、計算周期、分解能、遅延量等の影響を補間することができる。
【0047】
[第3実施形態]
図9は、第3実施形態に係るシミュレーション装置1Bの概要を示す機能ブロック図である。なお、第3実施形態の説明においては、主に第1及び第2実施形態と異なる点について説明し、第1及び第2実施形態と同様の構成及び処理については説明を省略する。
【0048】
第3実施形態に係るシミュレーション装置1Bは、工作機械の検出器情報15に基づいて軸動作仮想実績を補正する検出器模擬部14を更に備える。また、送受信部131は、補正された軸動作仮想実績を検出器模擬部133へ送信する。すなわち、第3実施形態に係るシミュレーション装置1Bは、第2実施形態に係る検出器模擬部133及び検出器情報134に替えて、検出器模擬部14及び検出器情報15を備える。
【0049】
ここで、検出器情報15は、第2実施形態と同様に、少なくとも、駆動軸模擬部132の計算周期、計算結果の遅延量、駆動軸の検出器の分解能、及びフィードバックの遅延量を含む。
【0050】
このように第3実施形態によれば、シミュレーション装置1Bは、工作機械の検出器情報134に基づいて軸動作仮想実績を補正する検出器模擬部133を更に備え、送受信部131は、補正された軸動作仮想実績を検出器模擬部133へ送信する。これにより、シミュレーション装置1Bは、数値制御模擬部11の計算周期、サーボ制御模擬部12の計算周期、及び駆動軸模擬部132の計算周期が、互いに異なっている場合であっても、計算周期の違いを補間することができる。
【0051】
[第4実施形態]
図10は、第4実施形態に係るシミュレーション装置1Cの概要を示す図である。なお、第4実施形態の説明においては、主に第1、第2及び第3実施形態と異なる点について説明し、第1、第2及び第3実施形態と同様の構成及び処理については説明を省略する。第4実施形態に係るシミュレーション装置1Cは、駆動軸模擬部132A及び132Bを有する。
【0052】
駆動軸模擬部132A及び132Bは、複数(例えば、2つ)のモータによって駆動される駆動機構をシミュレーションする場合、工作機械の他の軸のトルク指令又は他の軸の軸動作仮想実績に基づいて、シミュレーションを実行する。
【0053】
具体的には、駆動軸模擬部132Aは、駆動軸模擬部132Bへ出力されるトルク指令又は送受信部131に出力される軸動作仮想実績に基づいて、シミュレーションを実行する。同様に、駆動軸模擬部132Bは、駆動軸模擬部132Aへ出力されるトルク指令又は送受信部131に出力される軸動作仮想実績に基づいて、シミュレーションを実行する。
【0054】
複数のモータで駆動される駆動機構の例は、タンデム制御、及び主軸と送り軸とによる旋削加工等である。
【0055】
図11は、タンデム制御の例を示す図である。図11に示す制御装置500は、複数(2つ)のモータ54,55によって1つの駆動機構501を駆動するタンデム制御を行うためのものである。駆動機構501は、移動体58及び歯車等の機械部品56,57からなる工作機械である。移動体58には、機械部品56を介してモータ54から駆動力が伝達されるとともに、機械部品57を介してモータ55の駆動力が伝達される。
【0056】
制御装置500は、CNC制御部50と、モータ制御部51と、を備える。CNC制御部50は、駆動機構501を動作させるための各種の処理を行う。モータ制御部51は、CNC制御部50からの指令に基づいてアンプ52を介してモータ54の電流制御を行うとともに、アンプ53を介してモータ55の電流制御を行う。モータ54,55はサーボモータであり、モータ制御部4はモータ54,55のそれぞれから位置や速度を取得するためのフィードバック信号を受信する。
【0057】
図11に示すように、2つのモータ54,55によって1つの駆動機構501を駆動するタンデム制御では、一方のモータの動作によって、他方のモータに掛かる外力が変化する。そのため、シミュレーション装置1Cは、駆動機構501の模擬を行う場合、他の軸のトルク指令又は軸仮想実績を用いることができる。
【0058】
図12は、旋削加工の例を示す図である。一般に、切削抵抗主分力(主軸600の回転方向の切削抵抗)は、切削断面積に比例するとされている。そのため、図12のような旋削加工における切削抵抗主分力は、以下の式によって計算できる。
【0059】
【数1】
【0060】
ここで、ap(mm)は、切り込み量を示し、l(mm/min)は、直線軸の送り速度を示し、Kc(MPa)は、比切削抵抗を示し、n(min-1)は、主軸回転速度を示す。上記の式のように旋削加工において主軸600の切削反力(F)は、直線軸601の送りの送り速度(l)の影響を受ける。そのため、シミュレーション装置1Cは、主軸600の正確な模擬を行う場合、他の軸である直線軸601の軸動作仮想実績(速度)を用いることができる。
【0061】
このように第4実施形態によれば、駆動軸模擬部132A及び132Bは、複数のモータによって駆動される駆動機構をシミュレーションする場合、工作機械の他の軸のトルク指令又は他の軸の軸動作仮想実績に基づいて、シミュレーションを実行する、これにより、シミュレーション装置1Cは、他の駆動軸との干渉を考慮して、正確なシミュレーションを行うことができる。
【0062】
以上、本発明の実施形態について説明したが、上記のシミュレーション装置1は、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。また、上記のシミュレーション装置1により行なわれる制御方法も、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【0063】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(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))を含む。
【0064】
本開示について詳述したが、本開示は上述した個々の実施形態に限定されるものではない。これらの実施形態は、本開示の要旨を逸脱しない範囲で、または、特許請求の範囲に記載された内容とその均等物から導き出される本開示の趣旨を逸脱しない範囲で、種々の追加、置き換え、変更、部分的削除等が可能である。また、これらの実施形態は、組み合わせて実施することもできる。例えば、上述した実施形態において、各動作の順序や各処理の順序は、一例として示したものであり、これらに限定されるものではない。また、上述した実施形態の説明に数値又は数式が用いられている場合も同様である。
【0065】
上記実施形態及び変形例に関し、更に以下の付記を開示する。
(付記1)
工作機械のシミュレーション装置(1)であって
加工プログラム(10)に基づいて、前記工作機械の軸動作指令を生成する数値制御模擬部(11)と、
前記軸動作指令、及び前記工作機械の軸動作を模擬するための軸動作仮想実績に基づいてトルク指令を生成するサーボ制御模擬部(12)と、
前記数値制御模擬部(11)及び前記サーボ制御模擬部(12)とは独立した形態であり、交換可能なモジュール部(13)と、を備え、
前記モジュール部(13)は、
前記サーボ制御模擬部(12)から前記トルク指令を受信し、前記サーボ制御模擬部(12)へ前記軸動作仮想実績を送信する送受信部(131)と、
前記トルク指令に基づいて、前記工作機械の駆動軸の動作をシミュレーションすると共に、前記軸動作仮想実績を更新する駆動軸模擬部(132)と、
を備え、
前記モジュール部(13)は、前記工作機械を制御するシステムに依存しない外部装置によって生成されており、
前記サーボ制御模擬部(12)は、前記軸動作仮想実績が得られた場合、前記トルク指令を生成し、前記軸動作仮想実績が得られない場合、前記トルク指令を生成しない、シミュレーション装置(1)。
(付記2)
前記軸動作仮想実績は、前記サーボ制御模擬部(12)が初回の動作においてのみ取得する軸動作仮想実績初期値及び前記駆動軸模擬部(132)によって更新される軸動作仮想実績更新値を含む、付記1に記載のシミュレーション装置(1)。
(付記3)
前記モジュール部(13)は、前記工作機械の検出器情報(134)に基づいて前記軸動作仮想実績を補正する検出器模擬部(133)を更に備える、付記1又は2に記載のシミュレーション装置(1)。
(付記4)
前記シミュレーション装置(1)は、前記工作機械の検出器情報(15)に基づいて前記軸動作仮想実績を補正する検出器模擬部(14)を更に備え、
前記送受信部(131)は、補正された前記軸動作仮想実績を前記検出器模擬部(14)へ送信する、付記1又は2に記載のシミュレーション装置(1)。
(付記5)
前記検出器情報は、少なくとも、前記駆動軸模擬部(132)の計算周期、計算結果の遅延量、駆動軸の検出器の分解能、及びフィードバックの遅延量を含む、付記3に記載のシミュレーション装置(1)。
(付記6)
前記駆動軸模擬部(132)は、複数のモータによって駆動される駆動機構をシミュレーションする場合、前記工作機械の他の軸の前記トルク指令又は前記他の軸の前記軸動作仮想実績に基づいて、シミュレーションを実行する、付記1又は2に記載のシミュレーション装置(1)。
(付記7)
コンピュータに、数値制御模擬部(11)によって、加工プログラムに基づいて、工作機械の軸動作指令を生成するステップと、サーボ制御模擬部(12)によって、前記軸動作指令、及び前記工作機械の軸動作を模擬するための軸動作仮想実績に基づいてトルク指令を生成するステップと、前記数値制御模擬部(11)及び前記サーボ制御模擬部(12)とは独立した形態であり、交換可能なモジュール部(13)によって、前記サーボ制御模擬部(12)から前記トルク指令を受信し、前記サーボ制御模擬部(12)へ前記軸動作仮想実績を送信するステップと、前記モジュール部(13)によって、前記トルク指令に基づいて、前記工作機械の駆動軸の動作をシミュレーションすると共に、前記軸動作仮想実績を更新するステップと、を実行させるためのコンピュータプログラムであって、前記モジュール部(13)は、前記工作機械を制御するシステムに依存しない外部装置によって生成されており、前記軸動作仮想実績が得られた場合、前記トルク指令を生成し、前記軸動作仮想実績が得られない場合、前記トルク指令を生成しない、コンピュータプログラム。
【符号の説明】
【0066】
1,1A,1B,1C シミュレーション装置
10 加工プログラム
11 数値制御模擬部
12 サーボ制御模擬部
13 モジュール部
14,133 検出器模擬部
15,134 検出器情報
131 送受信部
132,132A,132B 駆動軸模擬部

【要約】
工作機械のシミュレーション装置であって加工プログラムに基づいて、前記工作機械の軸動作指令を生成する数値制御模擬部と、前記軸動作指令、及び前記工作機械の軸動作を模擬するための軸動作仮想実績に基づいてトルク指令を生成するサーボ制御模擬部と、前記数値制御模擬部及び前記サーボ制御模擬部とは独立した形態であり、交換可能なモジュール部と、を備え、前記モジュール部は、前記サーボ制御模擬部から前記トルク指令を受信し、前記サーボ制御模擬部へ前記軸動作仮想実績を送信する送受信部と、前記トルク指令に基づいて、前記軸動作仮想実績を更新する駆動軸模擬部と、を備え、前記モジュール部は、前記工作機械を制御するシステムに依存しない外部装置によって生成されており、前記サーボ制御模擬部は、前記軸動作仮想実績が得られない場合、前記トルク指令を生成しない、シミュレーション装置。

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12