(57)【要約】【課題】圧力制御から位置制御への切換え時のショックが低減される圧力制御と位置制御とを切換える機能を有する数値制御装置を提供すること。【解決手段】マスタ軸の位置に対応したスレーブ軸の同期指令位置を求め（ａ１４）、同期休止中か圧力制御中かそれぞれ判断し（ａ１５，ａ１６）、圧力制御中の場合同期休止フラグをオンし、同期再開を判断し、同期再開の場合には同期休止フラグをオフし（ａ１７〜ａ１９）、スレーブ軸指令位置からスレーブ軸の同期指令位置までの差分を求め（ａ２０）、出力移動量を求め（ａ２１）、スレーブ軸指令位置にステップａ２１で求めた出力移動量を加算し、スレーブ軸指令位置を更新し（ａ２２）、出力移動量をサーボ制御部に出力し（ａ２３）、同期継続か否か判断し（ａ２４）、同期継続の場合（ＹＥＳ）にはステップａ１４へ戻り処理を継続し、同期継続ではない場合（ＮＯ）には、図１２のステップａ１に戻る。【選択図】図１３
2014067079.tif 000002
【特許請求の範囲】
【請求項１】
マスタ軸の位置にスレーブ軸の位置を同期追従させる位置制御を行うために前記マスタ軸の位置に対する前記スレーブ軸の位置を求め、該スレーブ軸の位置指令をサーボ制御部へ出力する数値制御部と、位置のフィードバック制御を行って得られる指令と圧力のフィードバック制御を行って得られる指令とで指令値の小さい方の指令を選択することで自動的に位置制御と圧力制御とを切換えてサーボモータを制御するサーボ制御部を備えた数値制御装置において、
前記サーボ制御部は、位置制御中か圧力制御中かを前記数値制御部に通知し、
前記数値制御部は、位置制御の実行中に、前記サーボ制御部より位置制御から圧力制御に切換わったことが通知されると、前記マスタ軸に対するスレーブ軸の位置を求めながら、前記サーボ制御部への前記スレーブ軸の位置指令の出力を停止する同期休止状態とし、前記マスタ軸もしくは前記スレーブ軸が所定の位置、もしくは所定のタイミングで前記スレーブ軸の位置指令の出力を再開させることにより位置制御を再開させることを特徴とする数値制御装置。
【請求項２】
前記スレーブ軸の位置指令の出力再開時、前記スレーブ軸の同期指令経路までの指令移動量を前記マスタ軸の速度に応じて徐々に出力することを特徴とする請求項１に記載の数値制御装置。
【請求項３】
圧力制御から位置制御へ切換えるマスタ軸の位置を指定し、該指定したマスタ軸の切換え位置から前記スレーブ軸の位置指令の再開位置を決定し、該決定した再開位置で前記スレーブ軸の位置指令の出力を再開することを特徴とする請求項１に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は工作機械を制御する数値制御装置に関し、特に、圧力制御と位置制御とを切換える機能を有する数値制御装置に関する。
【背景技術】
【０００２】
圧力のフィードバック制御を行って得られる指令と位置のフィードバック制御を行って得られる指令とで指令値の小さい方の指令を選択することで自動的に圧力制御と位置制御を切換えてサーボモータを制御するサーボ制御部と、ＮＣプログラムに基づいて前記サーボ制御部へ位置指令及び圧力指令を出力する数値制御部を有する数値制御装置において、前記数値制御部は位置制御による同期指令の実行中に前記サーボ制御部より圧力制御への切換えが通知されたとき位置制御の指令を終了する。その後、圧力制御から位置制御へ戻したいときには、圧力制御中に蓄積された位置偏差量を読み出して打ち消す指令を行うことで圧力制御から位置制御に移行させている。
【０００３】
プレス機でプレス動作を行う際に、プレス軸と板金をはさみ込む圧力の制御をサーボモータにより行うダイクッション装置の動作を説明する。
＜１＞ダイクッション軸（スレーブ軸）は、プレス軸（マスタ軸）が近づいてきたらその位置に同期して逃げの動作を行う。  
＜２＞プレス軸（マスタ軸）が接触した後にダイクッション軸（スレーブ軸）は圧力制御となり、同期の指令を終了する。  
＜３＞そのまま下死点まで一定の圧力で移動する。  
＜４＞下死点で圧力制御中に蓄積された位置偏差量を打ち消すことで圧力制御から位置制御に移行させる。  
＜５＞プレス軸（マスタ軸）が離れたらダイクッション軸（スレーブ軸）は待機位置まで位置制御で移動する。
【０００４】
なお、このダイクッションで使用する数値制御装置のサーボ制御部は、圧力のフィードバック制御によって求められた速度指令と位置のフィードバック制御によって求められた速度指令とを比較し、指令値の小さい方を選択することで圧力制御と位置制御とを自動的に切換えて制御する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第４１９９２７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ダイクッション装置において、ダイクッションの動作を実現するために次のようなＮＣプログラムを作成してダイクッション用の数値制御装置に実行させる。図１６に示されるプログラム例において、「Ｏ０００１」は、プログラム番号、「Ｎ１〜Ｎ８」はシーケンス番号、「Ｇ１００」は圧力指令、「Ｑ□□」は圧力の指定値、「Ｇ２００」は同期指令、「Ｐ□□」は同期データ指令、「ＷＨＩＬＥ」はマクロ文の繰返し、「[□□]」は条件文、「＃□□」はコモン変数、「ＥＱ」はイコール、「ＤＯ１」は繰返しの開始位置、「ＥＮＤ１」は繰返しの終了位置、「Ｇ９１」はインクレメンタル指令、「Ｇ０１」は直線補間指令、「Ｘ□□」は指令位置、「Ｆ□□」は移動速度、「Ｇ０４」はドウェル（停止）指令でコードＰで示される時間（１０００）だけその時の状態を保持、「Ｇ９０」はアブソリュート指令、「Ｍ３０」はプログラムエンドの指令である。
【０００７】
シーケンス番号Ｎ１のブロックにて所望の圧力の値（Ｑ１０）を指定し、シーケンス番号Ｎ２のブロックであらかじめ登録した同期データ（Ｐ１００）に基づいて同期指令を行う（図１７参照）。この同期指令では、プレス軸（マスタ軸）の指定された区間において、マスタ軸位置に対してあらかじめ定義されたスレーブ軸の同期指令経路を元にマスタ軸の現在位置に対応したスレーブ軸の位置を求め、そのスレーブ軸の位置へ位置決めする。プレス軸（マスタ軸）がダイクッション軸（スレーブ軸）と接触するとサーボ制御部は圧力制御へ切換わり、所望の圧力を保った制御を行う。
【０００８】
サーボ制御部から圧力制御への切換えが通知されたら数値制御部はシーケンス番号Ｎ２のブロックを終了させ、シーケンス番号Ｎ３のブロックにて変数＃１００が０以外の値になるまでシーケンス番号Ｎ３のブロックとシーケンス番号Ｎ４のブロックを繰返す。その後、プレス軸（マスタ軸）が下死点まで移動したら変数＃１００に０以外の値が入力される。すると、ＮＣプログラムはシーケンス番号Ｎ５のブロックの実行を行う。シーケンス番号Ｎ５のブロックでは、サーボ制御部のエラーカウンタに溜まっている位置偏差量を変数＃５１０１で読み出し、読み出した位置偏差量の符号を反転させた値を指令することで溜まっている位置偏差量を０にする。これにより、サーボ制御部は圧力制御から位置制御へ戻る。シーケンス番号Ｎ６のブロックでＰ１０００の指令により１秒停止した後、シーケンス番号Ｎ７のブロックを実行して位置制御にて待機位置に戻る。
【０００９】
従来技術によるプレス・ダイクッション動作の位置と時間の関係は図１８，図１９に示される。従来技術によるダイクッション動作では、上述したダイクッションの動作＜４＞において、位置偏差量を読み出して打ち消す動作を行っている。この位置偏差量は数値制御部の指令とサーボ制御部のフィードバックから求まるものであり、数値制御部から読み出すと少し前の時点での情報が読み出される。また、そのデータの受け渡しにも遅れが生じている。これらの遅れによって、その遅れた分の移動量を打ち消すことが出来ず、図１９に示されるように、位置制御に戻ったときに残った位置偏差量によってショックが発生してしまっている。
【００１０】
つまり、圧力制御から位置制御への移行の際、位置偏差量を読み出して打ち消す指令を実行するため、遅れが発生する。ここで遅れとは、位置偏差量の時間的遅れと位置偏差量を読み出す分の遅れをいう。その遅れの結果、遅れた分の移動量を打ち消すことが出来ず、位置制御に戻った際にショックが発生していた。
【００１１】
そこで本発明は、上記従来技術の問題点に鑑み、圧力制御から位置制御への切換え時のショックが低減される圧力制御と位置制御とを切換える機能を有する数値制御装置を提供することを課題とする。
【課題を解決するための手段】
【００１２】
本発明は、数値制御装置による位置制御の同期指令中にサーボ制御部より圧力制御への切換えが通知されると同期の指令を休止して圧力制御の指令への切換えを行う。その後、圧力制御から位置制御へ戻したいときには、休止しておいた位置制御の同期指令を再開させて実位置までの移動指令を一挙に出すことで圧力制御から位置制御に移行させる。
【００１３】
そして、本願の請求項１に係る発明は、マスタ軸の位置にスレーブ軸の位置を同期追従させる位置制御を行うために前記マスタ軸の位置に対する前記スレーブ軸の位置を求め、該スレーブ軸の位置指令をサーボ制御部へ出力する数値制御部と、位置のフィードバック制御を行って得られる指令と圧力のフィードバック制御を行って得られる指令とで指令値の小さい方の指令を選択することで自動的に位置制御と圧力制御とを切換えてサーボモータを制御するサーボ制御部を備えた数値制御装置において、前記サーボ制御部は、位置制御中か圧力制御中かを前記数値制御部に通知し、前記数値制御部は、位置制御の実行中に、前記サーボ制御部より位置制御から圧力制御に切換わったことが通知されると、前記マスタ軸に対するスレーブ軸の位置を求めながら、前記サーボ制御部への前記スレーブ軸の位置指令の出力を停止する同期休止状態とし、前記マスタ軸もしくは前記スレーブ軸が所定の位置、もしくは所定のタイミングで前記スレーブ軸の位置指令の出力を再開させることにより位置制御を再開させることを特徴とする数値制御装置である。
【００１４】
請求項２に係る発明は、前記スレーブ軸の位置指令の出力再開時、前記スレーブ軸の同期指令経路までの指令移動量を前記マスタ軸の速度に応じて徐々に出力することを特徴とする請求項１に記載の数値制御装置である。  
請求項３に係る発明は、圧力制御から位置制御へ切換えるマスタ軸の位置を指定し、該指定したマスタ軸の切換え位置から前記スレーブ軸の位置指令の再開位置を決定し、該決定した再開位置で前記スレーブ軸の位置指令の出力を再開することを特徴とする請求項１に記載の数値制御装置である。
【発明の効果】
【００１５】
本発明により、実速度とサーボ制御部の位置制御による速度が一致することで、圧力制御から位置制御への切換え時のショックが低減される圧力制御と位置制御とを切換える機能を有する数値制御装置を提供することができる。
【図面の簡単な説明】
【００１６】
【図１】ダイクッション装置を説明する図である。
【図２】ダイクッション用数値制御装置の概略構成を説明するブロック図である。
【図３】本発明の実施形態１のプレス・ダイクッション動作の位置と時間の関係を説明する図である。
【図４】図３に示される圧力制御を実行させるためのダイクッション部材を駆動するサーボモータＭｄへの指令のＮＣプログラム例である。
【図５】圧力制御から位置制御への切換え時のダイクッションの速度指令を説明する図である。
【図６】軸が移動中となる下死点以外においてダイクッション軸がプレス軸から離れて位置制御で動作する場合を説明する図である。
【図７】図６に示される動作において、ダイクッション軸が移動中から急停止し、ダイクッションにショックが発生することを説明する図である。
【図８】本発明の実施形態２のプレス・ダイクッション動作の位置と時間の関係を説明する図である。
【図９】本発明の実施形態２における圧力制御から位置制御への切換え時のダイクッションの速度指令を説明する図である。
【図１０】本発明の実施形態３のプレス・ダイクッション動作の位置と時間の関係を説明する図である。
【図１１】本発明の実施形態３における圧力制御から位置制御への切換え時のダイクッションの速度指令を説明する図である。
【図１２】本発明の実施形態における位置制御と圧力制御の切換制御処理のアルゴリズムを示すフローチャートである。
【図１３】図１２に示したフローチャートの続きである。
【図１４】図１２に示したフローチャートの続きである。
【図１５】図１２に示したフローチャートの続きである。
【図１６】ダイクッション動作を実現するＮＣプログラムの一例を説明する図である。
【図１７】マスタ軸位置とスレーブ軸位置との関係を説明する図である。
【図１８】従来技術によるプレス・ダイクッション動作の位置と時間の関係を説明する図である。
【図１９】圧力制御から位置制御への切換え時のダイクッションの速度指令を説明する図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態を図面と共に説明する。  
図１はダイクッション装置を説明する図である。符号１は上型（プレス）、符号２は下型、符号３は板金（ワーク）、符号４は圧力センサ、符号５はダイクッション用数値制御装置、符号６はダイクッション部材、符号７は位置センサを表す。  
金型の下型２はプレス機械のベース（図示せず）に固定されており、下型２に対向して上型（プレス）１がプレス軸に固定されて配置されている。プレス軸は、モータや油圧、空気圧を用いたプレス軸駆動源によって駆動され、一定パターンでクランプ軸（上型（プレス）１）を駆動し上下動させる。
【００１８】
下型２側には複数のダイクッション部材６が設けられ、ダイクッション部材６はそれぞれのサーボモータＭｄで図中上下方向に駆動されるように構成されている。ダイクッション部材６、及びダイクッション用サーボモータＭｄは、図１では、２組設けた例を示しているが、３組、４組と複数設けても、又は、複数のダイクッション部材６を連結して一体とし、１つのダイクッション用サーボモータで駆動するようにしてもよい。このダイクッション用サーボモータＭｄは、ダイクッション用の数値制御装置５で駆動制御される。
【００１９】
プレス加工しようとする板金（ワーク）３は、ダイクッション部材６上に載置され、下型２の上に配置される。また、この板金（ワーク）３にかかる圧力を検出する圧力センサ４が下型２中に設けられ、圧力センサで検出された圧力信号はダイクッション用の数値制御装置５にフィードバックされている。さらに、また、上型（プレス）１の位置、即ち、プレス軸の位置を検出するリミットスイッチ等の位置センサが設けられ、該位置センサ７の出力もダイクッション用の数値制御装置５に入力されている。
【００２０】
ここで、ダイクッション用の数値制御装置５を説明する。図２は、本発明の位置制御と圧力制御を切換えて実施できる数値制御装置の機能ブロック図である。数値制御装置５は数値制御部１０とサーボ制御部２０に大別される。数値制御部１０にはセンサ７から出力されるセンサ信号が入力する。数値制御部１０では、プログラム解析処理部１２がＮＣプログラム１１の各ブロックの指令を順次読み出し解析して実行データに変換してブロック処理部１３に格納する。
【００２１】
位置、圧力指令、分配、加減速処理部１４では、ブロック処理部１３からブロック毎の実行データを読み出し、位置指令における移動量の分配処理、及びその加減速処理を実行し分配周期毎の移動量を位置指令としてサーボ制御部２０に出力する。また圧力指令に対しても、指令された圧力を圧力指令値としてサーボ制御部２０に出力する。
【００２２】
また、ブロック終了判断部１４ａでは、現在実行中の１ブロックの指令での位置指令の移動量が全てサーボ制御部に転送されたか判断し、転送していれば、ブロックの処理が終了したことをブロック処理部１３に通知する。すなわち、現在実行中のブロックでの指令の実行が完了したことをブロック処理部１３に通知する。ブロック処理部１３では、このブロック完了通知を受けて、次ブロックの指令の実行データを位置、圧力指令、分配、加減速処理部１４に引き渡し、次のブロックが実行されることになる。
【００２３】
一方、サーボ制御部２０では、位置ループ制御部を構成するエラーカウンタ２１、ポジションゲインＫｐの部２２、比較器２３、速度制御部２４、電流制御部２５、圧力制御部を構成するフォースゲイン部２６で構成されている。数値制御部１０から指令された位置指令とサーボモータ等に設けられた位置・速度検出器からの位置フィードバックより位置偏差をエラーカウンタ２１で算出し、該位置偏差にポジションゲインＫｐを乗じて、位置制御による速度指令Ａを求める。また、数値制御部１０から出力される圧力指令と圧力センサからの圧力フィードバックによりその圧力偏差を求めフォースゲインを乗じて圧力制御による速度指令Ｂを求める。
【００２４】
比較器２３では、位置制御による速度指令Ａと圧力制御による速度指令Ｂを比較し、小さい方を採用し、速度制御部２４への速度指令とする。速度制御部２４では、この速度指令と図示していないが速度フィードバックより速度のフィードバック制御を行い、トルク指令（電流指令）を求めてサーボモータを駆動制御する。  
上述したように、数値制御装置５は、位置制御による速度指令Ａと圧力制御による速度指令Ｂを比較し、小さい方の速度指令を選択して、位置制御もしくは圧力制御を切り換えて実施するものであるが、この比較器２３で選択した状態、すなわち、位置制御を実施しているか、圧力制御を実施しているかの状態を数値制御部１０に通知する。
【００２５】
上述した数値制御装置５の位置制御と圧力制御とを切換えてダイクッション用のサーボモータＭｄを駆動制御することの説明は以下の本発明の実施形態１〜３に共通する内容である。
【００２６】
以下、本発明の各実施形態について説明する。
＜実施形態１＞
ここで図３，図４，図５を用いて、実施形態１におけるプレス・ダイクッション動作を説明する。図３は本発明の実施形態１のプレス・ダイクッション動作の位置と時間の関係を説明する図である。
【００２７】
ダイクッションで使用するダイクッション用の数値制御装置５のサーボ制御部２０は、位置のフィードバック制御によって求められた速度指令Ａと圧力のフィードバック制御によって求められた速度指令Ｂとを比較し、それらの速度指令の指令値の小さい方を選択することで圧力制御と位置制御とを自動的に切換えて制御する。
【００２８】
従来技術において、プレス軸（マスタ軸）とダイクッション軸（スレーブ軸）が接触してサーボ制御部が圧力制御へと切換わると数値制御部１０は同期の指令を終了して次のブロックの指令を実行していた。これに対して、本発明の実施形態１では、同期指令を終了するのではなく休止する。同期指令の休止とは、ＮＣプログラム上はそのまま同期指令ブロックの実行中として、再度同期指令の再開が可能な状態をいう（図１３のステップａ１５からステップａ１８を参照）。
【００２９】
この状態でプレス軸（上型（プレス）１）が下死点まで移動したとき、数値制御部１０は休止中の同期指令を再開させる。なお、プレス軸が下死点に達したことは、例えば、位置センサ７から得られる上型（プレス）１の位置情報から知ることができる。同期指令は同期データで定義された経路におけるプレス軸の現在位置に対応するダイクッション軸の位置までの移動量を一挙に出力するため、遅れなく指令が行える。これによって、下死点においてダイクッション軸が同期指令経路通りに動作していた場合、ダイクッション軸の実位置と同期指令の指令位置が一致するので、同期指令により位置偏差量が解消されショックを出すことなく圧力制御から位置制御へと切換わることとなる。
【００３０】
図４は、このような圧力制御を実行させるためのダイクッション部材６を駆動するサーボモータＭｄへの指令のＮＣプログラム例である。
「Ｏ０００１」は、プログラム番号、「Ｎ１〜Ｎ５」はシーケンス番号、「Ｇ１００」は圧力指令、「Ｑ□□」は圧力の指定値、「Ｇ２００」は同期指令、「Ｐ□□」は同期データ指令、「Ｇ０４」はドウェル（停止）指令であって、コードＰで示される時間（１０００）だけその時の状態を保持し、「Ｇ９０」はアブソリュート指令、「Ｍ３０」はプログラムエンドの指令である。
【００３１】
シーケンス番号Ｎ１のブロックにて所望の圧力の値（Ｑ１０）を指定し、シーケンス番号Ｎ２のブロックであらかじめ登録した同期データ（Ｐ１００）に基づいて同期指令を行う（図１７参照）。この同期指令では、プレス軸（マスタ軸）の指定された区間において、マスタ軸位置に対してあらかじめ定義されたスレーブ軸の同期指令経路を元にマスタ軸の現在位置に対応したスレーブ軸の位置を求め、そのスレーブ軸の位置へ位置決めする。プレス軸（マスタ軸）がダイクッション軸（スレーブ軸）と接触するとサーボ制御部は圧力制御へ切換わり、所望の圧力を保った制御を行う。
【００３２】
この状態でプレス軸（上型（プレス）１）が下死点まで移動したとき、数値制御部１０は休止中の同期指令を再開させる。なお、プレス軸が下死点に達したことは、例えば、位置センサ７から得られる上型（プレス）１の位置情報から知ることができる。同期指令は同期データで定義された経路におけるプレス軸の現在位置に対応するダイクッション軸の位置までの移動量を一挙に出力するため、遅れなく指令が行える。これによって、下死点においてダイクッション軸が同期指令通りに動作していた場合、ダイクッション軸の実位置と同期指令の指令位置が一致するので、同期指令により位置偏差量が解消されショックを出すことなく圧力制御から位置制御へと切換わることとなる。  
そして、シーケンス番号Ｎ３のブロックでＰ１０００の指令により１秒停止した後（時点ｄ〜時点ｅ）、シーケンス番号Ｎ４のブロックを実行して位置制御にて待機位置に戻る（時点ｅ〜）。
【００３３】
図３は、このＮＣプロクラムを実行してサーボモータＭｄを駆動してダイクッション部材６を制御したときの上型（プレス）１：マスタ軸とダイクッション部材６：スレーブ軸の位置関係を表した図である。図３は横軸を時間、縦軸を位置としている。また、黒色の実線は上型（プレス）１の位置，１点鎖線はダイクッション部材６の指令位置、破線はダイクッション部材６の実際の位置（位置フィードバック値）である。時点ｄまでは同期指令経路（灰色の実線）として予め設定されている。時点ｄ〜時点ｅはドウェルの期間、時点ｅは初期位置への復帰の経路である。
【００３４】
ダイクッション部材６は、プレス開始位置として「３００」の待機位置に保持されている（位置制御されている）。
【００３５】
図４のＮＣプログラムを実行開始後、シーケンス番号Ｎ１の「Ｇ１００  Ｑ１０」が実行され、Ｑ＝１０の圧力指令が数値制御部１０からサーボ制御部２０に出力され、続いてシーケンス番号Ｎ２の「Ｇ２００Ｐ１００」が実行され、数値制御部１０では、あらかじめ登録した同期データ（Ｐ１００）に基づいて同期指令を実行する。  
上型（プレス）１が下降し、位置センサ７から出力されるセンサ信号（検出信号）が数値制御装置５（数値制御部１０）に入力され、時間ａの点を検出すると数値制御装置５の数値制御部１０は、同期指令による移動を開始する。
【００３６】
サーボ制御部２０の比較器２３では、位置制御による速度指令Ａと圧力制御による速度指令Ｂを比較するが、最初は、上型（プレス）１は板金３に当接していないから、圧力センサ４からのフィードバック値は小さく圧力偏差が大きいため速度指令Ｂも大きい。他方、最初の段階では、ダイクッション部材６はプレス開始位置に保持されており、位置偏差が小さく位置制御による速度指令Ａは小さい。したがって、サーボ制御部２０において、最初は位置制御による同期指令がなされることにより、サーボモータＭｄは上型（プレス）１の位置と速度に応じて駆動され、ダイクッション部材６は時間ａの点より下降を開始する。
【００３７】
図３に示されるように上型（プレス）１の下型２の方向へ移動する速さは下型２の移動する速さより速いので、上型（プレス）１が板金３及びダイクッション部材６に追いつき時間ｂの点で衝突が生じる。そして、位置偏差が大きくなるのに対して圧力偏差が小さくなることから、圧力制御の速度指令Ｂの方が位置制御の速度指令Ａより小さくなるので、位置制御の速度指令から圧力制御の速度指令に切換わる。比較器２３から数値制御部１０に比較結果として送られる信号によって、位置制御の速度指令から圧力制御の速度指令へ切換わった情報（比較結果）が数値制御部１０に伝達される。このときの圧力指令はシーケンス番号Ｎ１のブロックで指令されたＱ＝１０であり、この圧力Ｑ＝１０に一致するように圧力制御がなされることになる。
【００３８】
数値制御部１０はサーボ制御部２０の比較器２３から比較結果を受け取ると、同期指令を終了するのではなく休止する。前述したように、同期指令の休止とは、ＮＣプログラム上はそのまま同期指令ブロックの実行中として、再度同期指令の再開が可能な状態をいう。
【００３９】
その後、上型（プレス）１が最下点まで達し、ダイクッション部材６も最下点に達し、上型（プレス）１が停止状態となる時間ｃ（図３参照）で、同期指令の休止が解除され、再度同期指令の再開が可能な状態に移行する。このように例えば、同期指令の再開は、マスタ軸の位置に基づいて判断できる。
【００４０】
同期指令が再開されることによって、数値制御部１０の位置、圧力指令、分配、加減速処理部１４から出力移動量がサーボ制御部２０に出力され、エラーカウンタ２１の位置偏差が「０」または極めて小さな値となることから、位置制御に切換わり、同期指令によりサーボモータＭｄ（ダイクッション部材６）は指令された位置（下死点）に保持され停止状態となる。
【００４１】
図５は圧力制御から位置制御への切換え時のダイクッションの速度指令を説明する図である。時間ｃより以前は圧力制御による速度指令（速度指令Ｂ）が位置制御による速度指令（速度指令Ａ）より小さいので、サーボ制御部２０は圧力制御による速度指令によってスレーブ軸（ダイクッション６）を制御し、時間Ｔ１（実施形態１では下死点に到達する時間ｃ）以降は速度制御による速度指令（速度指令Ａ）が圧力制御による速度指令（速度指令Ｂ）より小さいので、サーボ制御部２０は位置制御による速度指令によってスレーブ軸（ダイクッション６）を制御する。
【００４２】
同期指令が再開されると、同期指令経路にそって下型（スレーブ軸）が移動するように位置制御がなされる。そして、同期指令経路に沿って移動制御を継続するか否かを、例えば、マスタ軸（上型（プレス）１）の位置（位置センサから出力されるセンサ信号）に基づいて判断できる。図３では時間ｄまで同期指令経路に沿って下型（スレーブ軸）の移動制御がなされる。
【００４３】
そして、ドウェル（停止）指令のコードＰで示される時間（１０００）だけその時の状態が維持される。その後、次のシーケンス番号Ｎ４のブロックの指令が実行され、位置、圧力指令、分配、加減速処理部１４から、プレス開始位置であるＸ＝３００の位置へ速度Ｆ＝１２００で移動するよう分配処理がなされてサーボ制御部２０へ出力される。
【００４４】
このとき、上型（プレス）１は上昇しており、板金３、下型２、ダイクッション部材６から離れていることから、サーボ制御部２０では、圧力偏差は大きく位置偏差は小さいので位置制御による速度指令Ａが採用され位置制御が実行されることになり、ダイクッション部材６は、図３に示すように、初期のプレス開始位置（Ｘ３００）に位置決めされることになり、ＮＣプログラムの処理は終了する（Ｍ３０）。
【００４５】
＜実施形態２＞
ここで図６，図７，図８，図９を用いて、実施形態２におけるプレス・ダイクッション動作を説明する。図６は軸が移動中となる下死点以外においてダイクッション軸がプレス軸から離れて位置制御で動作する場合を説明する図である。図７は図６に示される動作において、ダイクッション軸が移動中から急停止し、ダイクッションにショックが発生することを説明する図である。
【００４６】
実施形態１の方式を使うと、軸が停止する下死点においてはショックなく位置制御に切換わるが、軸が移動中となる下死点以外においてダイクッション軸がプレス軸から離れて位置制御で動作しようとするとショックが出る。これは、図６に示されるようにＴ１の時点で同期再開され、同期指令を再開することで一挙に位置偏差を解消することが出来るが、図７に示されるようにダイクッション軸は移動中から急停止することになるためである。これは、Ｔ１の時点で、位置偏差が解消されると、位置制御による速度指令Ａが圧力制御による速度指令Ｂより小さくなる。これによって、サーボ制御部２０は、圧力制御から位置制御に切り替わるからである。
【００４７】
この課題を解決するため、同期指令の再開時に指令位置までのパルスを一度にすべて出すのを止め、近傍までのパルスを出力することとし、ある程度位置偏差量を残す（図８参照）。近傍から同期位置までは、マスタ軸の速度と等速で徐々に移動指令を出力し位置偏差量を徐々に減らす。これにより、圧力制御から位置制御への切換わり時の速度指令が連続したものとなり、ショックを低減させることが出来る（図９参照）。また、マスタ軸の速度に応じた指令をスレーブ軸に出力するため、同期データで定義した位置と実際の位置が多少ずれた場合でも圧力制御から位置制御への切換え時のショックが低減可能である。残す移動量（近傍までの位置）と近傍から同期位置までの速度は、マスタ軸であるプレス軸の速度に応じた値とする。
【００４８】
＜実施形態３＞
ここで図１０，図１１を用いて、実施形態３におけるプレス・ダイクッション動作を説明する。同期指令の同期データにおいて、予め圧力制御から位置制御への切換えポイントを指定しておく。数値制御装置５は、プレス軸（マスタ軸）の現在位置と速度を監視して、圧力制御から位置制御への切換えポイントの少し手前となる同期再開すべきポイントにプレス軸（マスタ軸）が来るまで休止する（図１０参照）。同期を再開すべきポイントにプレス軸（マスタ軸）が来たら同期位置の近傍までの指令を一挙に出力した後、圧力制御から位置制御への切換えポイントでの速度がマスタ軸と等速となるような移動指令をダイクッション軸（スレーブ軸）に対して行う（図１１参照）。これにより、位置制御へ切換えたいポイントで、スムーズに圧力制御から位置制御に切換え、その後、プレス軸(マスタ軸)と離れ、位置制御で動作することが可能となる。
【００４９】
図１２〜図１５は、本実施形態におけるこの位置制御と圧力制御を切換制御する数値制御装置における数値制御部１０のプロセッサが、位置、圧力指令、分配、加減速処理部１４の処理として実施するアルゴリズムを示すフローチャートである。
【００５０】
＜実施形態１に対応するフローチャート＞
図１２，図１３は、本発明の実施形態１における位置制御と圧力制御の切換制御処理のアルゴリズムを示すフローチャートである。なお、初期設定として同期休止フラグはオフとされている。
●［ステップａ１］数値制御部１０の位置、圧力指令、分配、加減速処理部１４の処理を実行するプロセッサは、ＮＣプログラムを読み込み実行データに変換されたデータをブロック処理部１３から読み込む。
●［ステップａ２］このブロックの指令がプログラムエンドの指令か（「Ｍ３０」か）否か判断する。  
●［ステップａ３］圧力指令のＧ１００か否か判断する。圧力値指令Ｇ１００の場合にはステップａ１２へ移行する。  
●［ステップａ４］同期指令Ｇ２００か否か判断する。同期指令の場合には、ステップａ１４（図１３）に移行する。
●［ステップａ５］移動指令かを判断する。  
●［ステップａ６］ステップａ５で移動指令であると判別されたときは、このブロックで指令されている移動指令の指令内容（直線補間、円弧補間、速度、目標位置等）に基づいて、分配周期毎の移動量を求める。  
●［ステップａ７］加減速処理し、出力移動量を求める。  
●［ステップａ８］残移動量の更新処理を行う。この残移動量の更新処理は、このブロックで指令された移動量を、残移動量を記憶するレジスタに格納し、以後ステップａ７で求められた出力移動量を減じて残移動量を更新する処理である。
●［ステップａ９］指令した現在位置の更新処理を行う。現在位置の更新処理は、数値制御部１０がサーボ制御部２０に指令した位置を更新するもので、レジスタに記憶する現在位置にステップａ７で求めた出力移動量を加算することによって現在位置を更新する。
●［ステップａ１０］次に、ステップａ７で求めた出力移動量をサーボ制御部２０に出力する。  
●［ステップａ１１］残移動量が「０」か判断し、残移動量が「０」でなければ（ＮＯの場合）、ステップａ６に戻る。以下ステップａ６からステップａ１０の処理を分配周期毎実行し、分配移動量を求め加減速処理してサーボ制御部へ分配周期毎の出力移動量をサーボ制御部２０に出力する。そして、残移動量が「０」となると（ＹＥＳの場合）、ステップａ１に戻る。  
●［ステップａ１２］指令値を圧力指令としてサーボ制御部へ出力し、ステップａ１へ戻る。  
●［ステップａ１３］指令を実行し、ステップａ１に戻る。
●［ステップａ１４］マスタ軸の位置に対応したスレーブ軸の同期指令位置を求める。  
●［ステップａ１５］同期休止中か否か判断し、同期休止中の場合（ＹＥＳ）にはステップａ１８へ移行し、同期休止中ではない場合（ＮＯ）にはステップａ１６へ移行する。  
●［ステップａ１６］圧力制御中か否か判断し、圧力制御中の場合（ＹＥＳ）にはステップａ１７へ移行し、圧力制御中ではない場合（ＮＯ）にはステップａ２０へ移行する。  
●［ステップａ１７］同期休止フラグをオンし、ステップａ１８へ移行する。
●［ステップａ１８］同期再開か否か判断し、同期再開の場合（ＹＥＳ）にはステップａ１９へ移行し、同期再開ではない場合（ＮＯ）にはステップａ２４へ移行する。
【００５１】
同期再開か否かは、例えば、マスタ軸（上型（プレス）１）の位置（位置センサから出力されるセンサ信号）に基づいて判断できる。
●［ステップａ１９］同期休止フラグをオフにし、ステップａ２０へ移行する。  
●［ステップａ２０］スレーブ軸指令位置からスレーブ軸の同期指令位置までの差分を求める。  
●［ステップａ２１］出力移動量を求める。
●［ステップａ２２］スレーブ軸指令位置にステップａ２１で求めた出力移動量を加算し、スレーブ軸指令位置を更新する。  
●［ステップａ２３］出力移動量をサーボ制御部に出力する。  
●［ステップａ２４］同期継続か否か判断し、同期継続の場合（ＹＥＳ）にはステップａ１４へ戻り処理を継続し、同期継続ではない場合（ＮＯ）には、ステップａ１に戻る。  
同期継続か同期継続でないかは、例えば、マスタ軸（上型（プレス）１）の位置（位置センサから出力されるセンサ信号）に基づいて判断できる。あらかじめ設定された位置までは同期継続し、その後は、同期を終了する。
【００５２】
なお、ステップａ１８の同期再開の位置とステップａ２４の同期を継続しない位置とをマスタ軸の下死点とすると、下死点において圧力制御から位置制御へと切換わるとともに同期の指令ブロックを終了することになる。
【００５３】
＜実施形態２に対応するフローチャート＞
図１４は図１２に示したフローチャートの続きである。実施形態２に対応する。以下、本発明の実施形態を図面と共に説明する。実施形態２では、図１３のフローチャートの処理に替えて図１４のフローチャートの処理が実行される。    
●［ステップｂ１４］マスタ軸の位置に対応したスレーブ軸の同期指令位置を求める。  
●［ステップｂ１５］同期休止中か否か判断し、同期休止中の場合（ＹＥＳ）にはステップｂ１８へ移行し、同期休止中ではない場合（ＮＯ）にはステップｂ１６へ移行する。  
●［ステップｂ１６］圧力制御中か否か判断し、圧力制御中の場合（ＹＥＳ）にはステップｂ１７へ移行し、圧力制御中ではない場合（ＮＯ）にはステップｂ２３へ移行する。  
●［ステップｂ１７］同期休止フラグをオンし、ステップｂ１８へ移行する。
●［ステップｂ１８］同期再開か否か判断し、同期再開の場合（ＹＥＳ）にはステップｂ１９へ移行し、同期再開ではない場合（ＮＯ）にはステップｂ３０へ移行する。  
●［ステップｂ１９］スレーブ軸指令位置からスレーブ軸の同期指令位置までの差分を求める。  
●［ステップｂ２０］再開初回か否か判断し、再開初回の場合（ＹＥＳ）にはステップｂ２１へ移行し、再開初回ではない場合（ＮＯ）にはステップｂ２２へ移行する。  
●［ステップｂ２１］近傍までの出力移動量を求め、ステップｂ２５へ移行する。  
●［ステップｂ２２］マスタ軸の速度を基に出力移動量を求め、ステップｂ２５へ移行する。
●［ステップｂ２３］スレーブ軸指令位置からスレーブ軸の同期指令位置までの差分を求める。  
●［ステップｂ２４］出力移動量を求める。
●［ステップｂ２５］スレーブ軸指令位置にステップｂ２１またはステップｂ２２またはステップｂ２４で求めた出力移動量を加算し、スレーブ軸指令位置を更新する。  
●［ステップｂ２６］同期休止中か否か判断し、同期休止中の場合（ＹＥＳ）にはステップｂ２７へ移行し、同期休止中ではない場合（ＮＯ）にはステップｂ２９へ移行する。
●［ステップｂ２７］位置制御中か否か判断し、位置制御中の場合（ＹＥＳ）にはステップｂ２８へ移行し、位置制御中ではない場合（ＮＯ）にはステップｂ２９へ移行する。
●［ステップｂ２８］同期休止フラグをオフにし、ステップｂ２９へ移行する。
●［ステップｂ２９］出力移動量をサーボ制御部に出力する。  
●［ステップｂ３０］同期継続か否か判断し、同期継続の場合（ＹＥＳ）にはステップｂ１４へ戻り処理を継続し、同期継続ではない場合（ＮＯ）には、図１２のステップａ１へ戻る。
【００５４】
＜実施形態３に対応するフローチャート＞
図１５は図１２に示したフローチャートの続きである。実施形態３に対応する。以下、本発明の実施形態を図面と共に説明する。実施形態３では、図１３のフローチャートの処理に替えて図１５のフローチャートの処理が実行される。
●［ステップｃ１４］マスタ軸の位置に対応したスレーブ軸の同期指令位置を求める。
●［ステップｃ１５］同期休止中か否か判断し、同期休止中の場合（ＹＥＳ）にはステップｃ１８へ移行し、同期休止中ではない場合（ＮＯ）にはステップｃ１６へ移行する。
●［ステップｃ１６］圧力制御中か否か判断し、圧力制御中の場合（ＹＥＳ）にはステップｃ１７へ移行し、圧力制御中ではない場合（ＮＯ）にはステップｃ２５へ移行する。
●［ステップｃ１７］同期休止フラグをオンし、ステップｃ１８へ移行する。
●［ステップｃ１８］マスタ軸データと切換えポイントから同期再開ポイントを求める。
●［ステップｃ１９］同期再開か否か判断し、同期再開の場合（ＹＥＳ）にはステップｃ２1へ移行し、同期再開ではない場合（ＮＯ）にはステップｃ２０へ移行する。
●［ステップｃ２０］同期再開ポイントか否か判断し、同期再開ポイントの場合（ＹＥＳ）にはステップｃ２１へ移行し、同期再開ポイントではない場合（ＮＯ）にはステップｃ３２へ移行する。
●［ステップｃ２１］スレーブ軸指令位置からスレーブ軸の同期指令位置までの差分を求める。
●［ステップｃ２２］再開初回か否か判断し、再開初回の場合（ＹＥＳ）にはステップｃ２３へ移行し、再開初回ではない場合（ＮＯ）にはステップｃ２４へ移行する。
●［ステップｃ２３］近傍までの出力移動量を求め、ステップｃ２７へ移行する。
●［ステップｃ２４］マスタ軸の速度を基に出力移動量を求め、ステップｃ２７へ移行する。
●［ステップｃ２５］スレーブ軸指令位置からスレーブ軸の同期指令位置までの差分を求める。
●［ステップｃ２６］出力移動量を求める。
●［ステップｃ２７］スレーブ軸指令位置にステップｃ２３またはステップｃ２４またはステップｃ２６で求めた出力移動量を加算し、スレーブ軸指令位置を更新する。
●［ステップｃ２８］同期休止中か否か判断し、同期休止中の場合（ＹＥＳ）にはステップｃ２９へ移行し、同期休止中ではない場合（ＮＯ）にはステップｃ３１へ移行する。
●［ステップｃ２９］位置制御中か否か判断し、位置制御中の場合（ＹＥＳ）にはステップｃ３０へ移行し、位置制御中ではない場合（ＮＯ）にはステップｃ３１へ移行する。
●［ステップｃ３０］同期休止フラグをオフにし、ステップｃ３１へ移行する。
●［ステップｃ３１］出力移動量をサーボ制御部に出力する。
●［ステップｃ３２］同期継続か否か判断し、同期継続の場合（ＹＥＳ）にはステップｃ１４へ戻り処理を継続し、同期継続ではない場合（ＮＯ）には、図１２のステップａ１へ戻る。
【符号の説明】
【００５５】
１  上型（プレス）
２  下型
３  板金（ワーク）
４  圧力センサ
５  数値制御装置
６  ダイクッション部材
７  位置センサ
【図１】
2014067079.tif 000003
【図２】
2014067079.tif 000004
【図３】
2014067079.tif 000005
【図４】
2014067079.tif 000006
【図５】
2014067079.tif 000007
【図６】
2014067079.tif 000008
【図７】
2014067079.tif 000009
【図８】
2014067079.tif 000010
【図９】
2014067079.tif 000011
【図１０】
2014067079.tif 000012
【図１１】
2014067079.tif 000013
【図１２】
2014067079.tif 000014
【図１３】
2014067079.tif 000015
【図１４】
2014067079.tif 000016
【図１５】
2014067079.tif 000017
【図１６】
2014067079.tif 000018
【図１７】
2014067079.tif 000019
【図１８】
2014067079.tif 000020
【図１９】
2014067079.tif 000021