JP6441257B2 - 数値制御装置および同期追従制御方法 - Google Patents

数値制御装置および同期追従制御方法 Download PDF

Info

Publication number
JP6441257B2
JP6441257B2 JP2016090901A JP2016090901A JP6441257B2 JP 6441257 B2 JP6441257 B2 JP 6441257B2 JP 2016090901 A JP2016090901 A JP 2016090901A JP 2016090901 A JP2016090901 A JP 2016090901A JP 6441257 B2 JP6441257 B2 JP 6441257B2
Authority
JP
Japan
Prior art keywords
axis
slave
parent
master
determined
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016090901A
Other languages
English (en)
Other versions
JP2017196711A (ja
Inventor
幸一郎 堀口
幸一郎 堀口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FANUC Corp
Original Assignee
FANUC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by FANUC Corp filed Critical FANUC Corp
Priority to JP2016090901A priority Critical patent/JP6441257B2/ja
Publication of JP2017196711A publication Critical patent/JP2017196711A/ja
Application granted granted Critical
Publication of JP6441257B2 publication Critical patent/JP6441257B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4144Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by using multiplexing for control system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/402Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/41Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • G05B19/4103Digital interpolation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33128Different spindles, axis controlled by configured paths, channel
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42186Master slave, motion proportional to axis
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42335If one slave axis out of synchronisation, synchronise all other axes to that one

Description

本発明は、マスター軸の位置にスレーブ軸の位置を同期させて追従させる数値制御装置および同期追従制御方法に関する。
板金などの被加工部材を金型に嵌め込んで加工するプレス機においては、被加工部材のプレス機への搬入、搬出を行うトランスファー装置を使用する場合がある。このような、プレス機およびトランスファー装置で構成されるシステムにおいては、マスター軸となるプレス機の位置に同期して、トランスファー装置の3次元で規定されるXYZの3軸のスレーブ軸を駆動させる。
下記に示す特許文献1には、マスター軸に同期させて1軸以上のスレーブ軸を移動させる数値制御装置が開示されている。具体的には、移動指令が与えられた1軸をマスター軸、マスター軸以外の軸をスレーブ軸とし、移動指令をコピーして得られた移動指令をスレーブ軸に与えるというものである。
特許第3720825号公報
周辺装置やワークなどがスレーブ軸の経路上に残留し、障害物となってしまった場合、そのスレーブ軸のマスター軸との同期制御を中止し、そのスレーブ軸(以下、回避スレーブ軸と呼ぶ)を直ちに停止させたり、退避方向へ移動させたりすることで、障害物との衝突を回避する。この場合、回避スレーブ軸と回避スレーブ軸以外の軸とは非同期状態となってしまうため、マスター軸とスレーブ軸とが干渉したり、他の装置と干渉したりしてしまう場合がある。
また、サーボアンプの故障などの要因によってスレーブ軸を駆動させるサーボモータの励磁が落ちた場合は、そのスレーブ軸(以下、制御不能スレーブ軸と呼ぶ)は惰性により動いた後停止する。この場合は、制御不能スレーブ軸以外の軸(マスター軸やスレーブ軸)が動き続けると制御不能スレーブ軸が制御不能スレーブ軸以外の軸の動作に干渉してしまうため、制御不能スレーブ軸以外の軸も励磁を落として停止させる、または、励磁を落とさずに減速停止させる必要がある。
全軸の励磁が落ちる場合は、各軸が惰性で動作して停止するため、同期制御を行うことができない。また、制御不能スレーブ軸以外の軸を、励磁を落とさずに停止させる場合でも、制御不能スレーブ軸と制御不能スレーブ軸以外の軸とは非同期状態となってしまう。マスター軸とスレーブ軸とが非同期状態になると、マスター軸とスレーブ軸とが干渉したり、他の装置と干渉したりしてしまう場合がある。また、上記特許文献1に記載の発明でも、このような問題に対処することはできない。
そこで、本発明は、障害物の回避のためにスレーブ軸を意図的に停止または移動させる場合や故障によってスレーブ軸が停止する場合でも、全軸の同期状態を維持する数値制御装置および同期追従制御方法を提供することを目的とする。
第1の本発明は、数値制御装置であって、マスター軸の位置とスレーブ軸の位置との位置関係を定義した位置テーブルと、前記位置テーブルにしたがって、前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記スレーブ軸を駆動制御するスレーブ軸同期制御部と、前記スレーブ軸を前記マスター軸の親として決定する親決定部と、指令位置に基づいて前記マスター軸を駆動制御し、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合は、前記位置テーブルにしたがって、前記マスター軸の位置が、親として決定された前記スレーブ軸の位置に同期して追従するように、前記マスター軸を駆動制御するマスター軸制御部と、を備える。
この構成により、スレーブ軸を停止または移動させる場合であっても、マスター軸とスレーブ軸との同期状態を維持させることができる。したがって、マスター軸とスレーブ軸とが干渉することを防止することができる。
第1の本発明は、数値制御装置であって、前記親決定部は、前記スレーブ軸が故障によって停止する場合に、その前記スレーブ軸を前記マスター軸の親として決定してもよい。
これにより、スレーブ軸が故障によって停止する場合であっても、マスター軸とスレーブ軸との同期状態を維持させることができる。したがって、マスター軸とスレーブ軸とが干渉することを防止することができる。
第1の本発明は、前記数値制御装置であって、前記スレーブ軸同期制御部は、前記マスター軸に複数の前記スレーブ軸が同期する場合に、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合は、親として決定された前記スレーブ軸以外の前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、親として決定された前記スレーブ軸以外の前記スレーブ軸を駆動制御してもよい。
これにより、複数のスレーブ軸のうち、1つのスレーブ軸を意図的に停止または移動させる場合でも、故障によって停止する場合でも、全ての軸(マスター軸および複数のスレーブ軸)の同期状態を維持させることができる。したがって、マスター軸と複数のスレーブ軸とが干渉したり、他の装置、部材と干渉したりすることを防止することができる。例えば、全てのスレーブ軸で1つの部材を駆動させている場合に、1つのスレーブ軸が故障によって停止する場合であっても、その部材を正しい移動経路で動作させることができる。
第1の本発明は、前記数値制御装置であって、前記スレーブ軸同期制御部は、前記マスター軸の位置情報を取得し、前記マスター軸の位置情報と前記位置テーブルとを用いて、前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記スレーブ軸を駆動制御してもよい。これにより、スレーブ軸のマスター軸への同期制御を適切に行うことができ、マスター軸とスレーブ軸との干渉を防止することができる。
第1の本発明は、前記数値制御装置であって、前記マスター軸制御部は、親として決定された前記スレーブ軸の位置情報を取得し、取得した前記スレーブ軸の位置情報と前記位置テーブルとを用いて、前記マスター軸の位置が親として決定された前記スレーブ軸の位置に同期して追従するように、前記マスター軸を駆動制御してもよい。これにより、マスター軸の親として決定されたスレーブ軸への同期制御を適切に行うことができ、マスター軸とスレーブ軸との干渉を防止することができる。
第1の本発明は、前記数値制御装置であって、前記マスター軸制御部は、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合であって、前記位置テーブルに、親として決定された前記スレーブ軸の位置に対応する前記マスター軸の同期位置が複数ある場合は、現在の前記マスター軸の位置に近い前記同期位置を前記マスター軸の位置として決定してもよい。これにより、マスター軸の親として決定されたスレーブ軸への同期制御を適切に行うことができ、マスター軸とスレーブ軸との干渉を防止することができる。
第2の本発明は、数値制御装置であって、予めマスター軸の位置と複数のスレーブ軸の位置との位置関係を定義した位置テーブルと、前記位置テーブルにしたがって、前記複数のスレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記複数のスレーブ軸を駆動制御するスレーブ軸同期制御部と、前記複数のスレーブ軸のうち、1つの前記スレーブ軸を前記マスター軸の親として決定する親決定部と、前記位置テーブルにしたがって、前記マスター軸を仮想的に構築した仮想軸が、親として決定された前記スレーブ軸の位置に同期して追従するように、前記仮想軸の位置を決定する仮想軸位置決定部と、を備え、前記スレーブ軸同期制御部は、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合は、前記位置テーブルにしたがって、親として決定された前記スレーブ軸以外の前記スレーブ軸の位置が、前記仮想軸の位置に同期して追従するように、親として決定された前記スレーブ軸以外の前記スレーブ軸を駆動制御する。このとき、仮想軸の構築時、その仮想軸の位置はその時点でのマスター軸の位置とする。
この構成により、マスター軸が別の制御装置で駆動制御されている場合であって、スレーブ軸を停止または移動させる場合であっても、全てのスレーブ軸の同期状態を維持することができる。つまり、マスター軸が別の制御装置で駆動制御されている場合は、停止させるスレーブ軸をマスター軸の親にすることができず、全てのスレーブ軸同士での同期状態が崩れてしまうが、マスター軸の仮想軸を構築することで、全てのスレーブ軸同士での同期状態を維持することができる。その結果、全てのスレーブ軸で1つの部材を駆動させている場合に、1つのスレーブ軸を停止させる場合であっても、その部材を正しい移動経路で動作させることができる。
第2の本発明は、数値制御装置であって、前記親決定部は、故障によって停止する1つの前記スレーブ軸を前記マスター軸の親として決定してもよい。
これより、マスター軸が別の制御装置で駆動制御されている場合であって、1つのスレーブ軸が故障によって停止する場合であっても、全てのスレーブ軸の同期状態を維持することができる。
第2の本発明は、前記数値制御装置であって、前記仮想軸位置決定部は、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合であって、前記位置テーブルに、親として決定された前記スレーブ軸の位置に対応する前記マスター軸の同期位置が複数ある場合は、現在の前記仮想軸の位置に近い前記同期位置を前記仮想軸の位置として決定してもよい。これにより、仮想軸の位置の親として決定されたスレーブ軸への同期制御を適切に行うことができ、全てのスレーブ軸の同期状態を維持することができる。
第3の本発明は、マスター軸の位置にスレーブ軸の位置を同期させて追従させる同期追従制御方法であって、指令位置に基づいて前記マスター軸を駆動制御するマスター軸駆動制御ステップと、前記マスター軸の位置と前記スレーブ軸の位置との位置関係を予め定義した位置テーブルにしたがって、前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記スレーブ軸を駆動制御するスレーブ軸同期制御ステップと、前記スレーブ軸を前記マスター軸の親として決定する親決定ステップと、前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合は、前記位置テーブルにしたがって、前記マスター軸の位置が、親として決定された前記スレーブ軸の位置に同期して追従するように、前記マスター軸を駆動制御するマスター軸同期制御ステップと、を備える。
この構成により、スレーブ軸を停止または移動させる場合であっても、マスター軸とスレーブ軸との同期状態を維持させることができる。したがって、マスター軸とスレーブ軸とが干渉することを防止することができる。
第3の本発明は、前記同期追従制御方法であって、前記親決定ステップは、前記スレーブ軸が故障によって停止する場合に、その前記スレーブ軸を前記マスター軸の親として決定してもよい。
これにより、スレーブ軸が故障によって停止する場合であっても、マスター軸とスレーブ軸との同期状態を維持させることができる。したがって、マスター軸とスレーブ軸とが干渉することを防止することができる。
第3の本発明は、前記同期追従制御方法であって、前記スレーブ軸同期制御ステップは、前記マスター軸に複数の前記スレーブ軸が同期する場合に、前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合は、親として決定された前記スレーブ軸以外の前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、親として決定された前記スレーブ軸以外の前記スレーブ軸を駆動制御してもよい。
これにより、複数のスレーブ軸のうち、1つのスレーブ軸を意図的に停止または移動させる場合でも、故障によって停止する場合でも、全ての軸(マスター軸および複数のスレーブ軸)の同期状態を維持させることができる。したがって、マスター軸と複数のスレーブ軸とが干渉したり、他の装置、部材と干渉したりすることを防止することができる。例えば、全てのスレーブ軸で1つの部材を駆動させている場合に、1つのスレーブ軸が故障によって停止する場合であっても、その部材を正しい移動経路で動作させることができる。
第3の本発明は、前記同期追従制御方法であって、前記マスター軸同期制御ステップは、前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合であって、前記位置テーブルに、親として決定された前記スレーブ軸の位置に対応する前記マスター軸の同期位置が複数ある場合は、現在の前記マスター軸の位置に近い前記同期位置を前記マスター軸の位置として決定してもよい。これにより、マスター軸の親として決定されたスレーブ軸への同期制御を適切に行うことができ、マスター軸とスレーブ軸との干渉を防止することができる。
第4の本発明は、マスター軸の位置に複数のスレーブ軸の位置を同期させて追従させる同期追従制御方法であって、前記マスター軸の位置と前記複数のスレーブ軸の位置との位置関係を予め定義した位置テーブルにしたがって、前記複数のスレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記複数のスレーブ軸を駆動制御するスレーブ軸同期制御ステップと、前記複数のスレーブ軸のうち、1つの前記スレーブ軸を前記マスター軸の親として決定する親決定ステップと、前記位置テーブルにしたがって、前記マスター軸を仮想的に構築した仮想軸が、親として決定された前記スレーブ軸の位置に同期して追従するように、前記仮想軸の位置を決定する仮想軸位置決定ステップと、を備え、前記スレーブ軸同期制御ステップは、前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合は、親として決定された前記スレーブ軸以外の前記スレーブ軸の位置が、前記仮想軸の位置に同期して追従するように、親として決定された前記スレーブ軸以外の前記スレーブ軸を駆動制御する。このとき、仮想軸の構築時、その仮想軸の位置はその時点でのマスター軸の位置とする。
この構成により、マスター軸が別の制御装置で駆動制御されている場合であって、スレーブ軸を停止または移動させる場合であっても、全てのスレーブ軸の同期状態を維持することができる。つまり、マスター軸が別の制御装置で駆動制御されている場合は、停止させるスレーブ軸をマスター軸の親にすることができず、全てのスレーブ軸同士での同期状態が崩れてしまうが、マスター軸の仮想軸を構築することで、全てのスレーブ軸同士での同期状態を維持することができる。その結果、全てのスレーブ軸で1つの部材を駆動させている場合に、1つのスレーブ軸を停止させる場合であっても、その部材を正しい移動経路で動作させることができる。
第4の本発明は、前記同期追従制御方法であって、前記親決定ステップは、故障によって停止する1つの前記スレーブ軸を前記マスター軸の親として決定してもよい。
これより、マスター軸が別の制御装置で駆動制御されている場合であって、1つのスレーブ軸が故障によって停止する場合であっても、全てのスレーブ軸の同期状態を維持することができる。
第4の本発明は、前記同期追従制御方法であって、前記仮想軸位置決定ステップは、前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合であって、前記位置テーブルに、親として決定された前記スレーブ軸の位置に対応する前記マスター軸の同期位置が複数ある場合は、現在の前記仮想軸の位置に近い前記同期位置を前記仮想軸の位置として決定してもよい。これにより、仮想軸の位置の親として決定されたスレーブ軸への同期制御を適切に行うことができ、全てのスレーブ軸の同期状態を維持することができる。
本発明によれば、1つのスレーブ軸を意図的に停止または移動させる場合でも、故障によって停止する場合でも、全軸の同期状態を維持することができる。
第1の実施の形態における数値制御装置の構成を示す機能ブロック図である。 図1に示す位置テーブルに格納されている情報の一例を示す図である。 図2に示す位置テーブルに記憶されたマスター軸の位置とマスター軸の親として決定されたスレーブ軸の位置との関係の一例をグラフ化した図である。 図2に示す位置テーブルに記憶されたマスター軸の位置とマスター軸の親として決定されたスレーブ軸の位置との関係の一例(別の例)をグラフ化した図である。 第2の実施の形態における数値制御装置の構成を示す機能ブロック図である。
本発明に係る数値制御装置および同期追従制御方法について、好適な実施の形態を掲げ、添付の図面を参照しながら以下、詳細に説明する。
[第1の実施の形態]
図1は、第1の実施の形態における、数値制御装置10の構成を示す機能ブロック図である。数値制御装置10は、コンピュータとプログラムが記憶された記憶媒体とを有し、コンピュータがプログラムを実行することで、本第1の実施の形態の数値制御装置として機能する。数値制御装置10は、複数のサーボアンプ12m、12s(12s1〜12s3)を介して、複数のサーボモータ14m、14s(14s1〜14s3)を駆動制御するものである。サーボモータ14mはマスター軸Mを駆動させるサーボモータであり、サーボモータ14s(14s1〜14s3)はスレーブ軸S(S1〜S3)を駆動させるサーボモータである。なお、本第1の実施の形態においては、スレーブ軸Sの数を3つとするが、1つでも2つでもよく、また4つ以上であってもよい。この場合は、スレーブ軸Sの数と同じ数だけサーボアンプ12sおよびサーボモータ14sを設ければよい。
第1の実施の形態において、マスター軸Mの位置という場合は、サーボモータ14mの回転位置(例えば、720度などの基準位置からの回転角度位置)またはサーボモータ14mによって駆動する部材の位置とする。また、スレーブ軸S1の位置という場合は、サーボモータ14s1の回転位置(例えば、540度などの基準位置からの回転角度位置)またはサーボモータ14s1によって駆動する部材の位置とする。同様に、スレーブ軸S2の位置という場合は、サーボモータ14s2の回転位置またはサーボモータ14s2によって駆動する部材の位置とし、スレーブ軸S3の位置という場合は、サーボモータ14s3の回転位置またはサーボモータ14s3によって駆動する部材の位置とする。また、各サーボモータ14s(14s1〜14s3)による部材の駆動方向は、互いに直交するX軸方向、Y軸方向、Z軸方向であってもよい。さらに、3つのサーボモータ14s1〜14s3によって駆動する部材は同一部材であってもよい。この場合は、3つのサーボモータ14s1〜14s3によって同一の部材がX軸方向、Y軸方向、Z軸方向に移動する。
例えば、コンベアとコンベアで搬送される箱の中に物を詰める箱詰め機とで構成される箱詰めシステムでは、コンベアで運ばれる箱の位置に合せて箱詰め機のアームを駆動させる同期制御を行う必要がある。この場合は、コンベアを駆動させる軸がマスター軸Mとなり、箱詰め機のアームを駆動させる複数の軸が複数のスレーブ軸Sとなる。また、プレス機とプレス機にワークを搬入・搬出するトランファー装置とで構成されるプレスシステムでは、プレス機の動作に合せてトランスファー装置を駆動させる同期制御を行う必要がある。この場合は、プレス機を駆動させる軸がマスター軸Mとなり、トランスファー装置を駆動させる複数の軸が複数のスレーブ軸Sとなる。
数値制御装置10は、指令位置算出部20、マスター軸制御部22、位置テーブル24、スレーブ軸同期制御部26、および、親決定部28を備える。指令位置算出部20は、加工プログラムを解析することによって、マスター軸Mの位置を指令する指令位置CPを算出し、算出した指令位置CPをマスター軸制御部22に出力する。指令位置算出部20は、オペレータによる操作を解析して指令位置CPを算出してもよい。なお、加工プログラムは、数値制御装置10の図示しない記憶媒体に記憶されている。また、指令位置算出部20は、算出した指令位置CPをスレーブ軸同期制御部26に出力してもよい。
マスター軸制御部22は、指令位置CPに基づいてマスター軸Mを駆動制御する。具体的には、マスター軸制御部22は、サーボアンプ12mを介してサーボモータ14mを制御することで、マスター軸Mを駆動制御する。サーボモータ14mには、エンコーダなどの検出器30mが設けられており、検出器30mが検出した位置情報Smに基づいてサーボモータ14mはフィードバック制御される。この検出器30mが検出した位置情報Smは、数値制御装置10に出力される。この位置情報Smからマスター軸Mの位置を特定することができる。
位置テーブル24には、マスター軸Mの位置(同期位置)と3つのスレーブ軸S1〜S3の位置(同期位置)との位置関係が定義された情報が格納されている。つまり、位置テーブル24には、スレーブ軸S1〜S3のマスター軸Mへの同期制御を行うために、複数のマスター軸Mの位置の各々に対応付けて3つのスレーブ軸S1〜S3の位置が記憶されている。
図2は、位置テーブル24に格納されている情報の一例を示す図である。図2に示すように、ポイント1におけるマスター軸Mの位置、および、スレーブ軸S1〜S3の位置はともに「0.000」となっている。また、ポイント2におけるマスター軸Mの位置は「10.000」、スレーブ軸S1の位置は「5.000」、スレーブ軸S2の位置は「0.000」、スレーブ軸S3の位置は「9.000」となっている。ポイント3におけるマスター軸Mの位置は「20.000」、スレーブ軸S1の位置は「9.000」、スレーブ軸S2の位置は「6.000」、スレーブ軸S3の位置は「12.000」となっている。このように、位置テーブル24は、マスター軸Mの位置と3つのスレーブ軸S1〜S3の位置との対応関係を定義している。なお、図2に示す例では、ポイント間における線分波形の情報も記憶されている。例えば、ポイント1とポイント2との間の線分波形が直線である旨の情報、ポイント2とポイント3との間の線分波形およびポイント3とポイント4との間の線分波形が変形正弦である旨の情報も記憶されている。
スレーブ軸同期制御部26は、位置テーブル24にしたがって、3つのスレーブ軸S1〜S3の位置がマスター軸Mの位置に同期して追従するように、3つのスレーブ軸S1〜S3を駆動制御する。スレーブ軸同期制御部26は、マスター軸Mの位置情報と位置テーブル24とを用いて、3つのスレーブ軸S1〜S3を駆動制御する。このマスター軸Mの位置情報は、検出器30mが検出したサーボモータ14mの位置情報Smであってもよいし、マスター軸Mを直接検出する図示しない検出器による位置情報であってもよいし、また指令位置算出部20が算出したマスター軸Mの指令位置CPであってもよい。要は、マスター軸Mの位置がわかる情報であればよい。検出器30mが検出したサーボモータ14mの位置情報Smやマスター軸Mを直接検出する図示しない検出器による位置情報によって現在のマスター軸Mの位置がわかり、指令位置CPによってこれから移動するマスター軸Mの位置がわかる。いずれにしろ、位置情報Smまたは指令位置CPを用いることでスレーブ軸S1〜S3の位置をマスター軸Mの位置に同期させて追従させることができる。
具体的には、スレーブ軸同期制御部26は、マスター軸Mの位置情報から対応する各スレーブ軸S1〜S3の位置を位置テーブル24から取得する。スレーブ軸同期制御部26は、取得した各スレーブ軸S1〜S3の位置に基づいて、サーボアンプ12s1〜12s3を介してサーボモータ14s1〜14s3を制御することで、スレーブ軸S1〜S3を駆動制御する。サーボモータ14s(14s1〜14s3)には、エンコーダなどの検出器30s(30s1〜30s3)が設けられており、サーボアンプ12s(12s1〜12s3)は、該検出器30s(30s1〜30s3)が検出した位置情報Ss(Ss1〜Ss3)に基づいてサーボモータ14s(14s1〜14s3)はフィードバック制御される。この検出器30s1〜30s3が検出した位置情報Ss1〜Ss3は、数値制御装置10に出力される。この位置情報Ss1〜Ss3からスレーブ軸S1〜S3の位置を特定することができる。
図2に示すように、例えば、マスター軸Mの位置が「20.000」の場合は、スレーブ軸同期制御部26は、スレーブ軸S1の位置が「9.000」、スレーブ軸S2の位置が「6.000」、および、スレーブ軸S3の位置が「12.000」となるように、スレーブ軸S1〜S3を駆動制御する。このように、マスター軸Mとスレーブ軸S1〜S3との関係は、親と子の関係にある。つまり、親であるマスター軸Mの位置にしたがって子である3つのスレーブ軸S1〜S3が駆動する。
親決定部28は、3つのスレーブ軸S1〜S3のうち、マスター軸Mの親(祖)となるスレーブ軸Sを決定する。親決定部28は、故障によって停止するスレーブ軸S(制御不能スレーブ軸Sfと呼ぶ場合がある)をマスター軸Mの親として決定する。したがって、親決定部28は、制御不能スレーブ軸Sfを検出し、検出した制御不能スレーブ軸Sfをマスター軸Mの親として決定する。例えば、サーボアンプ12sの故障などの要因によってサーボモータ14sの励磁が落ちる場合は、励磁が落ちた該サーボモータ14sは、惰性により回転した後停止する。そのため、励磁が落ちたサーボモータ14sによって駆動されるスレーブ軸Sも惰性により動き、その後停止する。したがって、親決定部28は励磁が落ちるサーボモータ14sを検出した場合は、このサーボモータ14sによって駆動されるスレーブ軸S(制御不能スレーブ軸Sf)を、マスター軸Mの親(祖)として決定する。例えば、親決定部28は、サーボアンプ12s1の故障などの要因によってサーボモータ14s1の励磁が落ちる場合は、スレーブ軸S1(制御不能スレーブ軸Sf)をマスター軸Mの親(祖)として決定する。親決定部28は、親として決定したスレーブ軸S(制御不能スレーブ軸Sf)を示す情報をマスター軸制御部22およびスレーブ軸同期制御部26に出力する。
具体的には、親決定部28は、サーボアンプ12s1〜12s3の各々から出力される励磁電流を検出する図示しない電流センサからの出力信号を用いて、制御不能スレーブ軸Sfを検出し、検出した制御不能スレーブ軸Sfをマスター軸Mの親として決定してもよい。
なお、説明をわかり易くするために、故障によってスレーブ軸Sが停止する場合の例として、サーボアンプ12sの故障により励磁が落ちた例を説明したが、これに限られるものではない。つまり、その他の故障要因によってスレーブ軸Sが惰性で動いた後停止する場合も、親決定部28は、このスレーブ軸S(制御不能スレーブ軸Sf)をマスター軸Mの親として決定する。
マスター軸制御部22は、親決定部28によってマスター軸Mの親となる制御不能スレーブ軸Sfが決定されると、位置テーブル24にしたがって、マスター軸Mの位置が、親として決定された制御不能スレーブ軸Sfの位置に同期して追従するように、マスター軸Mを駆動制御する。例えば、マスター軸制御部22は、親決定部28によって決定されたマスター軸Mの親となる制御不能スレーブ軸Sfがスレーブ軸S1の場合は、位置テーブル24にしたがって、マスター軸Mの位置がスレーブ軸S1の位置に同期して追従するように、マスター軸Mを駆動制御する。つまり、マスター軸制御部22は、親決定部28によって親となる制御不能スレーブ軸Sfが決定されると、指令位置算出部20が算出した指令位置CPに基づくマスター軸Mの駆動制御を終了し、制御不能スレーブ軸Sfの位置に基づく同期制御を開始する。これにより、マスター軸Mは、制御不能スレーブ軸Sfの駆動と同期して駆動するので、制御不能スレーブ軸Sfと一緒に減速した後停止する。
具体的には、マスター軸制御部22は、親決定部28によってマスター軸Mの親となる制御不能スレーブ軸Sfの位置情報と位置テーブル24とを用いて、マスター軸Mを駆動制御する。図3は、図2に示す位置テーブル24に記憶されたマスター軸Mの位置とマスター軸Mの親として決定されたスレーブ軸S(制御不能スレーブ軸Sf)の位置との関係の一例をグラフ化した図である。このように、位置テーブル24を用いて、制御不能スレーブ軸Sfの位置に対応するマスター軸Mの位置(同期位置)を決定することができる。制御不能スレーブ軸Sfの位置情報は、制御不能スレーブ軸Sfを駆動させるサーボモータ14sに設けられた検出器30sの位置情報Ssであってもよい。つまり、制御不能スレーブ軸Sfがスレーブ軸S1の場合は、検出器30s1が検出した位置情報Ss1に基づいて制御不能スレーブ軸Sf(スレーブ軸S1)の位置を特定することができる。なお、制御不能スレーブ軸Sfの位置情報がわかる情報であれば位置情報Ssでなくてもよい。
なお、図4に示すように、位置テーブル24にマスター軸Mの親として決定されたスレーブ軸S(制御不能スレーブ軸Sf)の位置に対応するマスター軸Mの位置が複数ある場合は、現在のマスター軸Mの位置に最も近い位置(同期位置)をマスター軸Mの位置として決定すればよい。
スレーブ軸同期制御部26は、親決定部28によってマスター軸Mの親となる制御不能スレーブ軸Sfが決定されると、制御不能スレーブ軸Sf以外のスレーブ軸Sの位置がマスター軸Mの位置に同期して追従するように、制御不能スレーブ軸Sf以外のスレーブ軸Sを駆動制御する。したがって、制御不能スレーブ軸Sfが親(祖)、マスター軸Mが制御不能スレーブ軸Sfの子、その他のスレーブ軸S(制御不能スレーブ軸Sf以外のスレーブ軸S)がマスター軸Mの子という関係になる。例えば、スレーブ軸S1が制御不能スレーブ軸Sfとして決定された場合は、スレーブ軸同期制御部26は、スレーブ軸S2、S3の位置がマスター軸Mの位置に同期して追従するように、スレーブ軸S2、S3を駆動制御する。この場合は、制御不能スレーブ軸Sfであるスレーブ軸S1が親(祖)となり、マスター軸Mがスレーブ軸S1の子となり、スレーブ軸S2、S3がマスター軸Mの子(スレーブ軸S1の孫)という関係になる。その結果、マスター軸Mは制御不能スレーブ軸Sfと同期して駆動し、制御不能スレーブ軸Sf以外のスレーブ軸Sはマスター軸Mと同期して駆動するので、マスター軸Mと制御不能スレーブ軸Sf以外のスレーブ軸Sとは、制御不能スレーブ軸Sfと一緒に同期位置関係を保持した状態のまま減速して停止する。
なお、本第1の実施の形態では、説明をわかり易くするために、故障によって自然に停止してしまうスレーブ軸Sをマスター軸Mの親と決定することとして説明したが、マスター軸Mの親とする軸は故障などの要因により停止するスレーブ軸Sに限らない。したがって、親決定部28は、任意のスレーブ軸Sをマスター軸Mの親となるスレーブ軸Sとして決定してもよい。この場合は、マスター軸Mの親となるスレーブ軸Sは制御不能な軸とは限らないため、そのマスター軸Mの親となるスレーブ軸Sを停止させても、駆動させてもよく、マスター軸Mの親となるスレーブ軸Sの動きに応じて、マスター軸Mとマスター軸Mの親となるスレーブ軸S以外のスレーブ軸Sが同期して駆動することになる。
このように、第1の実施の形態における数値制御装置10は、指令位置CPに基づいてマスター軸Mを駆動制御するマスター軸制御部22と、マスター軸Mの位置と複数のスレーブ軸Sの位置との位置関係を定義した位置テーブル24と、位置テーブル24にしたがって、複数のスレーブ軸Sの位置がマスター軸Mの位置に同期して追従するように、複数のスレーブ軸Sを駆動制御するスレーブ軸同期制御部26と、複数のスレーブ軸Sのうち、任意の1つのスレーブ軸Sをマスター軸Mの親として決定する親決定部28とを備える。そして、マスター軸制御部22は、親決定部28によってマスター軸Mの親となるスレーブ軸Sが決定された場合は、位置テーブル24にしたがって、マスター軸Mの位置が、親として決定されたスレーブ軸Sの位置に同期して追従するように、マスター軸Mを駆動制御する。
これにより、マスター軸Mの親となるスレーブ軸Sをマスター軸Mに応じた同期制御ではなく、指令により駆動や停止をさせる場合であっても、全ての軸(マスター軸Mおよび複数のスレーブ軸S)の同期状態を維持させることができる。したがって、マスター軸Mと複数のスレーブ軸Sとが干渉したり、他の装置、部材と干渉したりすることを防止することができる。例えば、全てのスレーブ軸Sで1つの部材を駆動させている場合に、1つのスレーブ軸Sの経路上に障害物があり、即座に停止させる場合でも、マスター軸Mに同期した動きではない動作をさせる場合でも、また、故障によって停止する場合でも、その部材を正しい移動経路で動作させることができる。逆に、全てのスレーブ軸Sで1つの部材を駆動させる場合に、全てのスレーブ軸Sの各々が非同期状態になると、その部材を正しい移動経路で動作させることができず、予定していない経路を通ることになる。その結果、他の機械や部材と衝突することがあるが、本第1の実施の形態ではそのような問題も生じない。
スレーブ軸同期制御部26は、親決定部28によってマスター軸Mの親となるスレーブ軸Sが決定された場合は、親として決定されたスレーブ軸S以外のスレーブ軸Sの位置がマスター軸Mの位置に同期して追従するように、親として決定されたスレーブ軸S以外のスレーブ軸Sを駆動制御する。これにより、マスター軸Mの親となるスレーブ軸Sを意図的に停止または移動させる場合でも、故障によって停止する場合でも、マスター軸Mとマスター軸Mの親となるスレーブ軸S以外のスレーブ軸Sとの親子関係をそのまま保つことができる。したがって、全ての軸(マスター軸Mおよび複数のスレーブ軸S)の同期状態を維持させることができる。
スレーブ軸同期制御部26は、マスター軸Mの位置情報を取得し、マスター軸Mの位置情報と位置テーブル24とを用いて、スレーブ軸Sの位置がマスター軸Mの位置に同期して追従するように、スレーブ軸Sを駆動制御する。これにより、スレーブ軸Sのマスター軸Mへの同期制御を適切に行うことができ、マスター軸Mとスレーブ軸Sとの干渉を防止することができる。
マスター軸制御部22は、親として決定されたスレーブ軸Sの位置情報を取得し、スレーブ軸Sの位置情報と位置テーブル24とを用いて、マスター軸Mの位置が、親として決定されたスレーブ軸Sの位置に同期して追従するように、マスター軸Mを駆動制御する。これにより、マスター軸Mのマスター軸Mの親となるスレーブ軸Sへの同期制御を適切に行うことができ、マスター軸Mとスレーブ軸Sとの干渉を防止することができる。
マスター軸制御部22は、親決定部28によってマスター軸Mの親となるスレーブ軸Sが決定された場合であって、位置テーブル24に、親として決定されたスレーブ軸Sの位置に対応するマスター軸Mの同期位置が複数ある場合は、現在のマスター軸Mの位置に近い同期位置をマスター軸Mの位置として決定する。これにより、マスター軸Mのマスター軸Mの親となるスレーブ軸Sへの同期制御を適切に行うことができ、マスター軸Mとスレーブ軸Sとの干渉を防止することができる。
[第2の実施の形態]
図5は、第2の実施の形態における、数値制御装置10aの構成を示す機能ブロック図である。なお、上記第1の実施の形態で説明した構成と同様の構成については同一の符号を付し、異なる部分のみを説明する。数値制御装置10aは、位置テーブル24、スレーブ軸同期制御部26、親決定部28、および、仮想軸位置決定部50を備える。なお、マスター軸Mは、数値制御装置10aとは別の数値制御装置によって駆動制御されているものとする。
スレーブ軸同期制御部26は、位置テーブル24にしたがって、3つのスレーブ軸S1〜S3の位置がマスター軸Mの位置に同期して追従するように、3つのスレーブ軸S1〜S3を駆動制御する。スレーブ軸同期制御部26は、マスター軸Mの位置情報と位置テーブル24を用いて、3つのスレーブ軸S1〜S3を駆動制御する。このマスター軸Mの位置情報は、上記第1の実施の形態で説明したマスター軸Mを駆動するサーボモータ14mに設けられた検出器30mが検出した位置情報Smであってもよいし、マスター軸Mを直接検出する図示しない検出器による位置情報であってもよいし、また上記第1の実施の形態で説明したマスター軸Mを駆動制御するために指令位置算出部20が算出したマスター軸Mの指令位置CPであってもよい。
親決定部28は、3つのスレーブ軸S1〜S3のうち、マスター軸Mの親(祖)となるスレーブ軸Sを決定する。親決定部28は、故障によって停止するスレーブ軸S(制御不能スレーブ軸Sf)をマスター軸Mの親として決定する。したがって、親決定部28は、制御不能スレーブ軸Sfを検出し、検出した制御不能スレーブ軸Sfをマスター軸Mの親として決定する。親決定部28は、親として決定したスレーブ軸S(制御不能スレーブ軸Sf)を示す情報をスレーブ軸同期制御部26および仮想軸位置決定部50に出力する。
仮想軸位置決定部50は、親決定部28によってマスター軸Mの親(祖)となるスレーブ軸S(制御不能スレーブ軸Sf)が決定されると、マスター軸Mを仮想的に構築する。仮想軸の構築時、その仮想軸の位置はその時点でのマスター軸Mの位置とする。そして、仮想軸位置決定部50は、位置テーブル24にしたがって、構築したマスター軸Mの仮想軸が、親として決定されたスレーブ軸S(制御不能スレーブ軸Sf)の位置に同期して追従するように、仮想軸の位置VPを決定する。このとき、位置テーブル24に、制御不能スレーブ軸Sfの位置に対応するマスター軸Mの位置が複数記憶されている場合は、現在の仮想軸の位置VPに最も近い位置(同期位置)を仮想軸の位置VPとして決定すればよい。仮想軸位置決定部50は、決定した仮想軸の位置VPをスレーブ軸同期制御部26に出力する。
スレーブ軸同期制御部26は、親決定部28によってマスター軸Mの親となる制御不能スレーブ軸Sfが決定されると、制御不能スレーブ軸Sf以外のスレーブ軸Sの位置が仮想軸の位置VPに同期して追従するように、制御不能スレーブ軸Sf以外のスレーブ軸Sを駆動制御する。つまり、スレーブ軸同期制御部26は、親決定部28によって親となる制御不能スレーブ軸Sfが決定されると、マスター軸Mの位置に基づく同期制御を終了し、仮想軸の位置VPに基づく同期制御を開始する。したがって、制御不能スレーブ軸Sfが親(祖)、仮想軸が制御不能スレーブ軸Sfの子、その他のスレーブ軸Sが仮想軸の子という関係になる。その結果、仮想軸の位置VPは制御不能スレーブ軸Sfと同期して変動し、制御不能スレーブ軸Sf以外のスレーブ軸Sは仮想軸の位置VPと同期して駆動するので、制御不能スレーブ軸Sf以外のスレーブ軸Sは、制御不能スレーブ軸Sfと一緒に減速して停止する。例えば、スレーブ軸S1が制御不能スレーブ軸Sfとして決定された場合は、スレーブ軸同期制御部26は、スレーブ軸S2、S3の位置が仮想軸の位置VPに同期して追従するように、スレーブ軸S2、S3を駆動制御する。したがって、スレーブ軸S2、S3は、制御不能スレーブ軸Sfであるスレーブ軸S1と一緒に同期位置関係を保持した状態のまま減速して停止する。
第2の実施の形態においては、親決定部28が、故障によって停止するスレーブ軸S(制御不能スレーブ軸Sf)を検出すると、その旨の情報(スレーブ軸Sの故障情報)を、マスター軸Mを駆動制御している数値制御装置に出力する。マスター軸Mを駆動制御している数値制御装置は、スレーブ軸Sの故障情報を受け取ると、マスター軸Mを退避位置に退避させる。この退避位置は、スレーブ軸S1〜S3がどのように駆動しても、マスター軸Mがスレーブ軸S1〜S3と干渉しない位置である。例えば、マスター軸Mがプレス機を駆動させる軸である場合は、プレス機の位置が上死点となるような位置にマスター軸Mを駆動させればよい。
また、第2の実施の形態においては、マスター軸Mは、数値制御装置10a以外の数値制御装置が駆動制御するようにしたが、数値制御装置10aがマスター軸Mを駆動制御してもよい。この場合は、数値制御装置10aは、図1に示すマスター軸制御部22を備えることになるが、親決定部28によってスレーブ軸Sの故障が検出されると、マスター軸制御部22は、マスター軸Mを退避位置まで駆動させてもよい。
このように、第2の実施の形態における数値制御装置10aは、予めマスター軸Mの位置と複数のスレーブ軸Sの位置との位置関係を定義した位置テーブル24と、位置テーブル24にしたがって、複数のスレーブ軸Sの位置がマスター軸Mの位置に同期して追従するように、複数のスレーブ軸Sを駆動制御するスレーブ軸同期制御部26と、複数のスレーブ軸Sのうち、故障によって停止する1つのスレーブ軸S(制御不能スレーブ軸Sf)をマスター軸Mの親として決定する親決定部28と、位置テーブル24にしたがって、マスター軸Mを仮想的に構築した仮想軸が、親として決定されたスレーブ軸S(制御不能スレーブ軸Sf)の位置に同期して追従するように、仮想軸の位置VPを決定する仮想軸位置決定部50とを備える。仮想軸の構築時、その仮想軸の位置はその時点でのマスター軸Mの位置とする。そして、スレーブ軸同期制御部26は、親決定部28によってマスター軸Mの親となるスレーブ軸S(制御不能スレーブ軸Sf)が決定された場合は、位置テーブル24にしたがって、親として決定されたスレーブ軸S(制御不能スレーブ軸Sf)以外のスレーブ軸Sの位置が、仮想軸の位置VPに同期して追従するように、親として決定されたスレーブ軸S(制御不能スレーブ軸Sf)以外のスレーブ軸Sを駆動制御する。
これにより、マスター軸Mが別の数値制御装置で駆動制御されている場合であって、制御不能スレーブ軸Sfが故障によって停止する場合であっても、全てのスレーブ軸Sの同期状態を維持することができる。つまり、マスター軸Mが別の数値制御装置で駆動制御されている場合は、制御不能スレーブ軸Sfをマスター軸Mの親にすることができず、全てのスレーブ軸Sの同期状態が崩れてしまうが、マスター軸Mの仮想軸を構築することで、全てのスレーブ軸Sの同期状態を維持することができる。その結果、全てのスレーブ軸Sで1つの部材を駆動させている場合に、1つの制御不能スレーブ軸Sfが故障によって停止する場合であっても、その部材を正しい移動経路で動作させることができる。逆に、全てのスレーブ軸Sで1つの部材を駆動させる場合に、全てのスレーブ軸Sの各々が非同期状態になると、その部材を正しい移動経路で動作させることができず、予定していない経路を通ることになる。その結果、他の機械や部材と衝突することがあるが、本第2の実施の形態ではそのような問題も生じない。
仮想軸位置決定部50は、親決定部28によってマスター軸Mの親となるスレーブ軸Sが決定された場合であって、位置テーブル24に、親として決定されたスレーブ軸Sの位置に対応するマスター軸Mの同期位置が複数ある場合は、現在の仮想軸の位置VPに近い同期位置を仮想軸の位置VPとして決定する。これにより、仮想軸の位置VPの制御不能スレーブ軸Sfへの同期制御を適切に行うことができ、全てのスレーブ軸Sの同期状態を維持することができる。
なお、第2の実施の形態においても、故障によって自然に停止してしまうスレーブ軸Sをマスター軸Mの親と決定することとして説明したが、マスター軸Mの親とするスレーブ軸Sは故障などの要因により停止するスレーブ軸Sに限らない。したがって、親決定部28は、任意のスレーブ軸Sをマスター軸M(仮想軸)の親となるスレーブ軸Sとして決定してもよい。この場合は、マスター軸Mの親となるスレーブ軸Sは制御不能な軸とは限らないため、そのマスター軸Mの親となるスレーブ軸Sを停止させても、駆動させてもよく、マスター軸Mの親となるスレーブ軸Sの動きに応じて、マスター軸Mとマスター軸Mの親となるスレーブ軸S以外のスレーブ軸Sが同期して駆動することになる。
また、上記各実施の形態では、親決定部28は、故障によって停止するスレーブ軸S(制御不能スレーブ軸Sf)を検出したが、3つのスレーブ軸S1〜S3が設けられた機械が制御不能スレーブ軸Sfを検出してよい。この場合は、3つのスレーブ軸S1〜S3が設けられた機械が検出した制御不能スレーブ軸Sfを示す情報(アラーム情報)を親決定部28に送信し、親決定部28は、アラーム情報に基づいて制御不能スレーブ軸Sfをマスター軸Mの親として決定する。また、マスター軸Mの親とする軸を任意のスレーブ軸Sとする場合は、親決定部28にマスター軸Mの親としたいスレーブ軸Sを通知することで、決定する。
10、10a…数値制御装置 12m、12s1〜12s3…サーボアンプ
14m、14s1〜14s3…サーボモータ
20…指令位置算出部 22…マスター軸制御部
24…位置テーブル 26…スレーブ軸同期制御部
28…親決定部 30m、30s1〜30s3…検出器
50…仮想軸位置決定部 CP…指令位置
M…マスター軸 S、S1〜S3…スレーブ軸
Sm、Ss1〜Ss3…位置情報 VP…仮想軸の位置

Claims (16)

  1. マスター軸の位置にスレーブ軸の位置を同期させて追従させる数値制御装置であって、
    マスター軸の位置とスレーブ軸の位置との位置関係を定義した位置テーブルと、
    前記位置テーブルにしたがって、前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記スレーブ軸を駆動制御するスレーブ軸同期制御部と、
    所定の条件が成立する前記スレーブ軸を前記マスター軸の親として決定する親決定部と、
    指令位置に基づいて前記マスター軸を駆動制御し、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合は、前記位置テーブルにしたがって、前記マスター軸の位置が、親として決定された前記スレーブ軸の位置に同期して追従するように、前記マスター軸を駆動制御するマスター軸制御部と、
    を備えることを特徴とする数値制御装置。
  2. 請求項1に記載の数値制御装置であって、
    前記所定の条件が成立するスレーブ軸は、故障によって停止する前記スレーブ軸である
    ことを特徴とする数値制御装置。
  3. 請求項1または2に記載の数値制御装置であって、
    前記スレーブ軸同期制御部は、前記マスター軸に複数の前記スレーブ軸が同期する場合に、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合は、親として決定された前記スレーブ軸以外の前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、親として決定された前記スレーブ軸以外の前記スレーブ軸を駆動制御する
    ことを特徴とする数値制御装置。
  4. 請求項1〜3のいずれか1項に記載の数値制御装置であって、
    前記スレーブ軸同期制御部は、前記マスター軸の位置情報を取得し、前記マスター軸の位置情報と前記位置テーブルとを用いて、前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記スレーブ軸を駆動制御する
    ことを特徴とする数値制御装置。
  5. 請求項1〜4のいずれか1項に記載の数値制御装置であって、
    前記マスター軸制御部は、親として決定された前記スレーブ軸の位置情報を取得し、取得した前記スレーブ軸の位置情報と前記位置テーブルとを用いて、前記マスター軸の位置が親として決定された前記スレーブ軸の位置に同期して追従するように、前記マスター軸を駆動制御する
    ことを特徴とする数値制御装置。
  6. 請求項1〜5のいずれか1項に記載の数値制御装置であって、
    前記マスター軸制御部は、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合であって、前記位置テーブルに、親として決定された前記スレーブ軸の位置に対応する前記マスター軸の同期位置が複数ある場合は、現在の前記マスター軸の位置に近い前記同期位置を前記マスター軸の位置として決定する
    ことを特徴とする数値制御装置。
  7. マスター軸の位置に複数のスレーブ軸の位置を同期させて追従させる数値制御装置であって、
    予めマスター軸の位置と複数のスレーブ軸の位置との位置関係を定義した位置テーブルと、
    前記位置テーブルにしたがって、前記複数のスレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記複数のスレーブ軸を駆動制御するスレーブ軸同期制御部と、
    前記複数のスレーブ軸のうち、所定の条件が成立する1つの前記スレーブ軸を前記マスター軸の親として決定する親決定部と、
    前記位置テーブルにしたがって、前記マスター軸を仮想的に構築した仮想軸が、親として決定された前記スレーブ軸の位置に同期して追従するように、前記仮想軸の位置を決定する仮想軸位置決定部と、
    を備え、
    前記スレーブ軸同期制御部は、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合は、前記位置テーブルにしたがって、親として決定された前記スレーブ軸以外の前記スレーブ軸の位置が、前記仮想軸の位置に同期して追従するように、親として決定された前記スレーブ軸以外の前記スレーブ軸を駆動制御する
    ことを特徴とする数値制御装置。
  8. 請求項7に記載の数値制御装置であって、
    前記所定の条件が成立する1つのスレーブ軸は、故障によって停止する前記スレーブ軸である
    ことを特徴とする数値制御装置。
  9. 請求項7または8に記載の数値制御装置であって、
    前記仮想軸位置決定部は、前記親決定部によって前記マスター軸の親となる前記スレーブ軸が決定された場合であって、前記位置テーブルに、親として決定された前記スレーブ軸の位置に対応する前記マスター軸の同期位置が複数ある場合は、現在の前記仮想軸の位置に近い前記同期位置を前記仮想軸の位置として決定する
    ことを特徴とする数値制御装置。
  10. マスター軸の位置にスレーブ軸の位置を同期させて追従させる同期追従制御方法であって、
    指令位置に基づいて前記マスター軸を駆動制御するマスター軸駆動制御ステップと、
    前記マスター軸の位置と前記スレーブ軸の位置との位置関係を予め定義した位置テーブルにしたがって、前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記スレーブ軸を駆動制御するスレーブ軸同期制御ステップと、
    所定の条件が成立する前記スレーブ軸を前記マスター軸の親として決定する親決定ステップと、
    前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合は、前記位置テーブルにしたがって、前記マスター軸の位置が、親として決定された前記スレーブ軸の位置に同期して追従するように、前記マスター軸を駆動制御するマスター軸同期制御ステップと、
    を備えることを特徴とする同期追従制御方法。
  11. 請求項10に記載の同期追従制御方法であって、
    前記所定の条件が成立するスレーブ軸は、故障によって停止する前記スレーブ軸である
    ことを特徴とする同期追従制御方法。
  12. 請求項10または11に記載の同期追従制御方法であって、
    前記スレーブ軸同期制御ステップは、前記マスター軸に複数の前記スレーブ軸が同期する場合に、前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合は、親として決定された前記スレーブ軸以外の前記スレーブ軸の位置が前記マスター軸の位置に同期して追従するように、親として決定された前記スレーブ軸以外の前記スレーブ軸を駆動制御する
    ことを特徴とする同期追従制御方法。
  13. 請求項10〜12のいずれか1項に記載の同期追従制御方法であって、
    前記マスター軸同期制御ステップは、前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合であって、前記位置テーブルに、親として決定された前記スレーブ軸の位置に対応する前記マスター軸の同期位置が複数ある場合は、現在の前記マスター軸の位置に近い前記同期位置を前記マスター軸の位置として決定する
    ことを特徴とする同期追従制御方法。
  14. マスター軸の位置に複数のスレーブ軸の位置を同期させて追従させる同期追従制御方法であって、
    前記マスター軸の位置と前記複数のスレーブ軸の位置との位置関係を予め定義した位置テーブルにしたがって、前記複数のスレーブ軸の位置が前記マスター軸の位置に同期して追従するように、前記複数のスレーブ軸を駆動制御するスレーブ軸同期制御ステップと、
    前記複数のスレーブ軸のうち、所定の条件が成立する1つの前記スレーブ軸を前記マスター軸の親として決定する親決定ステップと、
    前記位置テーブルにしたがって、前記マスター軸を仮想的に構築した仮想軸が、親として決定された前記スレーブ軸の位置に同期して追従するように、前記仮想軸の位置を決定する仮想軸位置決定ステップと、
    を備え、
    前記スレーブ軸同期制御ステップは、前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合は、親として決定された前記スレーブ軸以外の前記スレーブ軸の位置が、前記仮想軸の位置に同期して追従するように、親として決定された前記スレーブ軸以外の前記スレーブ軸を駆動制御する
    ことを特徴とする同期追従制御方法。
  15. 請求項14に記載の同期追従制御方法であって、
    前記所定の条件が成立する1つのスレーブ軸は、故障によって停止する前記スレーブ軸である
    ことを特徴とする同期追従制御方法。
  16. 請求項14または15に記載の同期追従制御方法であって、
    前記仮想軸位置決定ステップは、前記親決定ステップによって前記マスター軸の親となる前記スレーブ軸が決定された場合であって、前記位置テーブルに、親として決定された前記スレーブ軸の位置に対応する前記マスター軸の同期位置が複数ある場合は、現在の前記仮想軸の位置に近い前記同期位置を前記仮想軸の位置として決定する
    ことを特徴とする同期追従制御方法。
JP2016090901A 2016-04-28 2016-04-28 数値制御装置および同期追従制御方法 Active JP6441257B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016090901A JP6441257B2 (ja) 2016-04-28 2016-04-28 数値制御装置および同期追従制御方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2016090901A JP6441257B2 (ja) 2016-04-28 2016-04-28 数値制御装置および同期追従制御方法
US15/496,050 US10317873B2 (en) 2016-04-28 2017-04-25 Numerical controller and synchronous follow-up control method
DE102017004067.2A DE102017004067A1 (de) 2016-04-28 2017-04-27 Numerische Steuervorrichtung und Synchron-Folgesteuerungsverfahren
CN201710295203.1A CN107340756B (zh) 2016-04-28 2017-04-28 数值控制装置及同步跟踪控制方法

Publications (2)

Publication Number Publication Date
JP2017196711A JP2017196711A (ja) 2017-11-02
JP6441257B2 true JP6441257B2 (ja) 2018-12-19

Family

ID=60081385

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016090901A Active JP6441257B2 (ja) 2016-04-28 2016-04-28 数値制御装置および同期追従制御方法

Country Status (4)

Country Link
US (1) US10317873B2 (ja)
JP (1) JP6441257B2 (ja)
CN (1) CN107340756B (ja)
DE (1) DE102017004067A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6594813B2 (ja) * 2016-03-24 2019-10-23 株式会社神戸製鋼所 通信制御システム及び通信制御方法
JP6954192B2 (ja) * 2018-03-12 2021-10-27 オムロン株式会社 制御装置、制御方法、およびプログラム
JP6939832B2 (ja) * 2019-03-15 2021-09-22 オムロン株式会社 制御装置
JP6943268B2 (ja) * 2019-03-29 2021-09-29 オムロン株式会社 制御装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS526429B2 (ja) * 1971-07-07 1977-02-22
JPH04238504A (en) * 1991-01-22 1992-08-26 Fanuc Ltd Synchronous control system
JP3386777B2 (ja) * 1999-05-11 2003-03-17 ファナック株式会社 数値制御システム
US6539489B1 (en) * 2000-03-31 2003-03-25 Siemens Aktiengesellshaft Apparatus, method and system for synchronizing slave system operations to master system clocking signals in a master-slave asynchronous communication system
ITVI20010149A1 (it) * 2001-07-04 2003-01-04 Adriano Cazzavillan Metodo per coordinare e sincronizzare il movimento di assi servo-assistiti
JP3873685B2 (ja) * 2001-08-02 2007-01-24 日産自動車株式会社 多軸同期制御装置、多軸同期制御方法および多軸同期制御プログラム
JP3665008B2 (ja) * 2001-10-25 2005-06-29 ファナック株式会社 同期制御方法及び同期制御装置
JP3671020B2 (ja) * 2002-04-09 2005-07-13 ファナック株式会社 数値制御装置
JP2004114176A (ja) * 2002-09-24 2004-04-15 Fanuc Ltd 数値制御装置
JP2004199433A (ja) * 2002-12-19 2004-07-15 Fanuc Ltd 同期制御装置
JP2004246498A (ja) * 2003-02-12 2004-09-02 Fanuc Ltd 位置制御装置
JP3680064B2 (ja) * 2003-04-21 2005-08-10 ファナック株式会社 数値制御装置
JP3720825B2 (ja) 2003-07-28 2005-11-30 ファナック株式会社 数値制御装置
JP2005322076A (ja) * 2004-05-10 2005-11-17 Fanuc Ltd 数値制御装置
JP4335124B2 (ja) * 2004-12-09 2009-09-30 ファナック株式会社 同期制御装置
JP4226629B2 (ja) * 2007-01-05 2009-02-18 ファナック株式会社 複数の軸を制御する数値制御装置及び数値制御装置を用いた同期制御方法
JP5314110B2 (ja) * 2011-11-25 2013-10-16 ファナック株式会社 マスタ軸とスレーブ軸との同期制御を行うモータ制御装置
EP2887165A1 (en) * 2013-12-20 2015-06-24 Omron Corporation Computation unit, output control method, and program
JP5897648B2 (ja) * 2014-06-17 2016-03-30 ファナック株式会社 同期制御中に位置制御のゲインを切換える機能を有する数値制御装置

Also Published As

Publication number Publication date
CN107340756B (zh) 2019-11-26
US20170315534A1 (en) 2017-11-02
CN107340756A (zh) 2017-11-10
JP2017196711A (ja) 2017-11-02
US10317873B2 (en) 2019-06-11
DE102017004067A1 (de) 2017-11-02

Similar Documents

Publication Publication Date Title
JP6441257B2 (ja) 数値制御装置および同期追従制御方法
US9678500B2 (en) Machining program creating device numerical control device, machining system, machining program creating method, numerical control method, and machining program
JP2009090403A (ja) ロボット動作範囲設定装置
US9409295B2 (en) Method for controlling a robot
US9063533B2 (en) Multi-spindle translation control for multiple coordinate systems
JP2008126327A (ja) 移動軌跡表示装置
JP4750200B2 (ja) ロボット動作範囲設定装置
JP2019136808A (ja) 作業ロボットシステム
US8224478B2 (en) Numerical controller
JP5030628B2 (ja) 干渉チェックシステム
JP4682907B2 (ja) モータ制御装置
JP2003044144A (ja) 多軸同期制御装置、多軸同期制御方法および多軸同期制御プログラム
CN108227638B (zh) 数值控制装置
JP2004130444A (ja) 同期制御装置
JP2005066794A (ja) ロボット制御装置
JP2628914B2 (ja) 加工シミュレーション方式
JP2006167825A (ja) モータ駆動装置、およびモータ駆動装置の非常停止方法
JP6966415B2 (ja) 制御方法、制御装置及びプログラム
JP3460781B2 (ja) 数値制御装置
Giberti et al. Flexibility oriented design of a horizontal wrapping machine
JP2021097516A (ja) モータ制御装置
WO2020189304A1 (ja) 制御装置
WO2021187498A1 (ja) 速度調整支援装置
WO2020017248A1 (ja) 制御装置、制御方法、および制御プログラム
JP4066178B2 (ja) 工作機械及びその異常検査方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180424

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180530

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181030

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181121

R150 Certificate of patent or registration of utility model

Ref document number: 6441257

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150