JP2008083758A - Controller and movable range judgment method for machinery - Google Patents
Controller and movable range judgment method for machinery Download PDFInfo
- Publication number
- JP2008083758A JP2008083758A JP2006259945A JP2006259945A JP2008083758A JP 2008083758 A JP2008083758 A JP 2008083758A JP 2006259945 A JP2006259945 A JP 2006259945A JP 2006259945 A JP2006259945 A JP 2006259945A JP 2008083758 A JP2008083758 A JP 2008083758A
- Authority
- JP
- Japan
- Prior art keywords
- movable range
- movable
- origin
- controller
- pulse
- 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.)
- Pending
Links
Images
Landscapes
- Control Of Position Or Direction (AREA)
- Numerical Control (AREA)
Abstract
Description
本発明は、所定経路上を往復動する可動体の可動範囲を判定しながら位置決めを行う、機械装置のコントローラおよび可動範囲判定方法に関する。 The present invention relates to a controller of a mechanical device and a movable range determination method that perform positioning while determining a movable range of a movable body that reciprocates on a predetermined path.
従来より、所定経路上で可動体を往復動させるような機械装置において、運転プログラムのミスなどにより可動体が可動範囲を越えて移動するのを防ぐため、センサやリミットスイッチによる機械的な位置検出方法や、予め可動範囲をストアドストロークリミット方式としてストロークエンド位置をメモリに格納しておき、運転時に前記格納データとエンコーダからの現在位置情報とを比較するソフト的な位置検出方法が用いられている(たとえば、特許文献1参照)。
しかしながら、従来の各種センサやリミットスイッチを使用する方法は、配線や制御入力の増加による装置の複雑化や、取り付けスペースの必要性、またコストアップにもなるという問題があった。
また、ストアドストロークリミット方式では、原点位置を調整した場合等、再設定が必要であり手間がかかるという問題があった。
本発明はこのような問題点に鑑みてなされたものであり、所定経路上を可動体を往復動させるような機械装置において、簡単で低コストでしかも操作者に負担を掛けずに運転プログラムのミスなどにより可動体が可動端に衝突するのを防ぐことができる機械装置のコントローラおよび可動範囲判定方法を提供することを目的とする。
However, the conventional methods using various sensors and limit switches have the problems that the apparatus becomes complicated due to an increase in wiring and control inputs, the necessity of installation space, and the cost increase.
Further, the stored stroke limit method has a problem that it takes time and effort to reset it when the origin position is adjusted.
The present invention has been made in view of such problems, and in a mechanical device that reciprocates a movable body on a predetermined path, it is simple and low-cost and does not impose a burden on an operator. It is an object of the present invention to provide a controller of a mechanical device and a movable range determination method that can prevent a movable body from colliding with a movable end due to a mistake or the like.
上記問題を解決するため、本発明は、次のように構成したのである。
請求項1に記載の発明は、所定経路上を往復動する可動体と、前記可動体を移動させるモータと、前記モータに取り付けられ、経路上の所定位置で原点パルスを発生する位置検出器と、前記モータを駆動するドライバと、前記ドライバに駆動指令を送るコントローラと、該コントローラと通信を行い、ステータスの取得や機能実行指示などを行う入出力装置からなる機械装置のコントローラにおいて、前記ドライバに位置決め指令を送り、前記可動体が所定経路の両側の可動端に到達した時の可動端パルスカウント値と、原点パルス検出時のパルスカウント値を取得し、該原点パルス検出時のパルスカウント値に原点のオフセット量を加算して求めた機械原点と前記可動端パルスカウント値から前記可動体の可動範囲を演算し、該可動範囲、前記オフセット量を可動範囲情報として不揮発性メモリに保存する可動範囲設定動作を行う可動範囲設定部を備えることを特徴とするものである。
また、請求項2に記載の発明は、請求項1記載の機械装置のコントローラにおいて、モーションプログラムを格納するプログラム格納部と、該プログラム格納部から1行づつプログラムを読み出し実行するプログラム実行部を更に備え、該プログラム実行部が、前記可動体の位置決め指令時に、前記不揮発性メモリに保存された可動範囲情報に基づいて、前記可動体が可動範囲を越えるか否かを判定し、可動範囲を超えない場合のみ位置決め指令を実行することを特徴とするものである。
また、請求項3に記載の発明は、請求項1記載の機械装置のコントローラにおいて、前記プログラム実行部は、前記原点のオフセット量を変更した場合、前記不揮発性メモリに記憶された可動範囲情報と前記オフセット量から、可動範囲を再演算し、該再演算した可動範囲に基づいて、前記可動体が可動範囲を超えるか否かを判定することを特徴とするものである。
また、請求項4に記載の発明は、請求項1記載の機械装置のコントローラにおいて、前記可動範囲設定動作は、1度も前記可動範囲設定動作が行われていない場合の原点復帰指令で実行することを特徴とするものである。
In order to solve the above problem, the present invention is configured as follows.
The invention according to claim 1 is a movable body that reciprocates on a predetermined path, a motor that moves the movable body, a position detector that is attached to the motor and generates an origin pulse at a predetermined position on the path; A driver for driving the motor; a controller for sending a drive command to the driver; and a controller for a mechanical device including an input / output device that communicates with the controller and performs status acquisition and function execution instructions. A positioning command is sent, and the movable end pulse count value when the movable body reaches the movable ends on both sides of the predetermined path and the pulse count value when the origin pulse is detected are obtained, and the pulse count value when the origin pulse is detected is obtained. Calculate the movable range of the movable body from the mechanical origin obtained by adding the offset amount of the origin and the movable end pulse count value, the movable range, It is characterized in that a movable range setting unit which performs movable range setting operation is stored in the nonvolatile memory the serial offset amount as the movable range information.
The invention according to
According to a third aspect of the present invention, in the controller of the mechanical device according to the first aspect, when the program execution unit changes the offset amount of the origin, the movable range information stored in the nonvolatile memory and The movable range is recalculated from the offset amount, and whether or not the movable body exceeds the movable range is determined based on the recalculated movable range.
According to a fourth aspect of the present invention, in the controller of the mechanical device according to the first aspect, the movable range setting operation is executed by an origin return command when the movable range setting operation has never been performed. It is characterized by this.
また、請求項5に記載の発明は、所定経路上を往復動する可動体と、前記可動体を移動させるモータと、前記モータに取り付けられ、経路上の所定位置で原点パルスを発生する位置検出器と、前記モータを駆動するドライバと、前記ドライバに駆動指令を送るコントローラと、該コントローラと通信を行い、ステータスの取得や機能実行指示などを行う入出力装置からなる機械装置の可動範囲判定方法において、前記ドライバに位置決め指令を送り、前記可動体が所定経路の両側の可動端に到達した時の可動端パルスカウント値と、原点パルス検出時のパルスカウント値を取得し、該原点パルス検出時のパルスカウント値に原点のオフセット量を加算して求めた機械原点と前記可動端パルスカウント値から前記可動体の可動範囲を演算し、該可動範囲、前記オフセット量を可動範囲情報として不揮発性メモリに保存する可動範囲設定動作を行うことを特徴とするものである。
また、請求項6に記載の発明は、請求項5記載の機械装置の可動範囲判定方法において、前記可動体の位置決め指令時に、前記不揮発性メモリに保存された可動範囲情報に基づいて、前記可動体が可動範囲を越えるか否かを判定し、可動範囲を超えない場合のみ位置決め指令を実行することを特徴とするものである。
また、請求項7に記載の発明は、請求項5記載の機械装置の可動範囲判定方法において、前記原点のオフセット量を変更した場合、前記不揮発性メモリに記憶された可動範囲情報と前記オフセット量から、可動範囲を再演算し、該再演算した可動範囲に基づいて、前記可動体が可動範囲を超えるか否かを判定することを特徴とするものである。
また、請求項8に記載の発明は、請求項5記載の機械装置の可動範囲判定方法において、前記可動範囲設定動作は、1度も前記可動範囲設定動作が行われていない場合の原点復帰指令で実行することを特徴とするものである。
According to a fifth aspect of the present invention, there is provided a movable body that reciprocates on a predetermined path, a motor that moves the movable body, and a position detection that is attached to the motor and generates an origin pulse at a predetermined position on the path. , A motor that drives the motor, a controller that sends a drive command to the driver, and a movable range determination method for a mechanical device that communicates with the controller and obtains status, performs function execution instructions, and the like , A positioning command is sent to the driver, and the movable end pulse count value when the movable body reaches the movable ends on both sides of the predetermined path and the pulse count value at the time of detecting the origin pulse are obtained. The movable range of the movable body is calculated from the mechanical origin obtained by adding the offset amount of the origin to the pulse count value and the movable end pulse count value, Dynamic range, characterized in that to perform the movable range setting operation is stored in the nonvolatile memory the offset amount as the movable range information.
Further, the invention according to
According to a seventh aspect of the present invention, in the movable range determination method for a mechanical device according to the fifth aspect, when the offset amount of the origin is changed, the movable range information and the offset amount stored in the nonvolatile memory are changed. Then, the movable range is recalculated, and based on the recalculated movable range, it is determined whether or not the movable body exceeds the movable range.
The invention according to
請求項1、2、5、6に記載の発明によると、可動体が所定経路の両側の可動端に到達した時の可動端パルスカウント値と、原点パルス検出時のパルスカウント値を取得し、原点パルス検出時のパルスカウント値に原点のオフセット量を加算して求めた機械原点と可動端パルスカウント値から可動体の可動範囲を演算し、可動範囲、オフセット量を可動範囲情報として不揮発性メモリに保存する可動範囲設定動作を行い、可動体の位置決め指令時に、不揮発性メモリに保存された可動範囲情報に基づいて、可動体が可動範囲を越えるか否かを判定し、可動範囲を超えない場合のみ位置決め指令を実行するので、簡単で低コストに運転プログラムのミスなどにより可動体が可動端に衝突するのを防ぐことができる。
請求項3、7に記載の発明によれば、原点のオフセット量を変更した場合、不揮発性メモリに記憶された可動範囲情報とオフセット量から、可動範囲を再演算し、再演算した可動範囲に基づいて、可動体が可動範囲を超えるか否かを判定するので、機械原点を変更した場合でも、簡単に可動体が可動端に衝突するのを防ぐことができる。
請求項4、8に記載の発明によれば、可動範囲設定動作は、1度も可動範囲設定動作が行われていない場合の原点復帰指令で実行するので、操作者に負担を掛けずに可動体が可動端に衝突するのを防ぐことができる。
According to the inventions described in
According to the third and seventh aspects of the invention, when the offset amount of the origin is changed, the movable range is recalculated from the movable range information and the offset amount stored in the nonvolatile memory, and the recalculated movable range is obtained. Based on this, since it is determined whether or not the movable body exceeds the movable range, even when the mechanical origin is changed, the movable body can be easily prevented from colliding with the movable end.
According to the fourth and eighth aspects of the invention, since the movable range setting operation is executed by the origin return command when the movable range setting operation has not been performed, the movable range setting operation can be performed without imposing a burden on the operator. The body can be prevented from colliding with the movable end.
以下、本発明の方法の具体的実施例について、図に基づいて説明する。 Hereinafter, specific examples of the method of the present invention will be described with reference to the drawings.
図1は、本発明のコントローラが制御する機械装置の構成例を示す図である。
所定経路上で可動体を往復動させる機械装置の例としてガルバノメータによるレーザ加工装置を示す。ガルバノメータを利用したレーザ加工技術は、高密度配線の回路基板等の加工に用いられ、前記ガルバノメータに取り付けられたガルバノミラー(可動体)によって反射されたレーザ光線を、被加工物の照射面上に照射して溶解、あるいは蒸発させて加工するものである。
なお、ここでガルバノメータはガルバノミラーを回転させるもので、ボールねじ等で可動軸を動作させる場合のモータに相当し、請求項に記載のモータはガルバノメータを含むものとする。
図において11はガルバノミラーであり、12はガルバノミラーを回転させるガルバノメータである。ガルバノメータ12には、位置検出器であるエンコーダ13、およびガルバノミラー11を動作させるドライバ14が接続されており、ドライバ14からの駆動電流に応じてガルバノミラー11を回転させるとともに、回転角はエンコーダ13で検出され、ドライバ14に与えられる。15はコントローラであり照射位置指令をドライバ14に与え、ドライバ14は照射位置指令とエンコーダ13からの位置情報に基づいて駆動電流をガルバノメータ12に出力する。コントローラ15の中には、不揮発メモリであるパラメータ・位置保存領域22と、可動範囲設定動作を行う可動範囲設定部26がある。16はレーザ発振器でレーザ光線をガルバノミラー12に出力する。18はパソコン等の入出力装置であり、コントローラ15と通信を行い、機械装置のステータスの取得や機能実行指示などを行う。
図2はガルバノメータ12とガルバノミラー11を説明する図で、ガルバノメータ12をガルバノミラー11取り付け位置側から見た図である。図において、17はガルバノメータ12の回転角を制限するためのストッパである。ガルバノメータを利用したレーザ加工技術においては一般的に±20°程度の駆動角で、高速高精度の照射位置決めを行う。なお、この例ではガルバノメータ12が時計回りに回転する場合をプラスとしている。
FIG. 1 is a diagram illustrating a configuration example of a mechanical device controlled by a controller of the present invention.
A laser processing apparatus using a galvanometer is shown as an example of a mechanical apparatus that reciprocates a movable body on a predetermined path. Laser processing technology using a galvanometer is used for processing circuit boards with high-density wiring, and a laser beam reflected by a galvanometer mirror (movable body) attached to the galvanometer is applied to an irradiation surface of a workpiece. It is processed by irradiation or dissolution or evaporation.
Here, the galvanometer is for rotating a galvanometer mirror, and corresponds to a motor for operating a movable shaft with a ball screw or the like, and the motor described in the claims includes a galvanometer.
In the figure, 11 is a galvanometer mirror, and 12 is a galvanometer that rotates the galvanometer mirror. The
FIG. 2 is a diagram for explaining the
図3は、本発明のコントローラ15の構成を示すブロック図である。図において21は、コントローラの各機能の統括を行う中央処理部、22はパラメータ保存領域で、電源をオフしても記憶内容を保持できる不揮発性メモリであり、この領域にコントローラのパラメータが保存される。本発明では、この領域が不揮発性メモリであることを利用し、パラメータの他に、原点パルス検出時のパルスカウント値にオフセット量を加算した機械原点から両方向の可動端への可動範囲、および原点位置のオフセット量のデータを保存するものとする。23は可動体の移動指令を記述したモーションプログラムを格納するプログラム格納領域で不揮発性メモリとなっている。24はこれらの不揮発性メモリ用のバッテリである。
25は原点復帰処理を行う原点復帰処理部、26は可動端への位置決めを行い可動端パルスカウント値等から可動範囲設定動作を行う可動範囲設定部、27はプログラム格納領域からプログラムを読み込み実行するプログラム実行部である。
28はドライバ14への指令部、29はドライバ14からガルバノメータ12の位置情報などステータスを取得するモニタ部である。30は入出力装置18とのデータの受け渡しを行う通信部である。
31はRAM(Random Access Memory)で構成される位置保存領域で、可動端到達時の可動端パルスカウント値、原点パルス検出時のパルスカウント値を一時的に保存する。これらのデータは可動範囲を演算するために必要となる。
FIG. 3 is a block diagram showing the configuration of the controller 15 of the present invention. In the figure, 21 is a central processing unit that supervises each function of the controller, 22 is a parameter storage area, which is a non-volatile memory that can retain stored contents even when the power is turned off. Controller parameters are stored in this area. The In the present invention, the fact that this area is a non-volatile memory, in addition to the parameters, the movable range from the mechanical origin to the movable end in both directions by adding the offset amount to the pulse count value at the time of origin pulse detection, and the origin It is assumed that position offset data is stored. A non-volatile memory 23 is a program storage area for storing a motion program describing a movement command of the movable body.
Reference numeral 25 denotes an origin return processing unit that performs origin return processing, 26 denotes a movable range setting unit that performs positioning to the movable end and performs a movable range setting operation based on the movable end pulse count value, and 27 reads and executes a program from the program storage area. It is a program execution part.
28 is a command unit for the driver 14, and 29 is a monitor unit that acquires status such as position information of the
Reference numeral 31 denotes a position storage area composed of a RAM (Random Access Memory), which temporarily stores the movable end pulse count value when the movable end is reached and the pulse count value when the origin pulse is detected. These data are necessary to calculate the movable range.
図4は、可動範囲設定動作時時の動作説明図である。図4は、ガルバノメータ12をガルバノミラー11の取り付け位置側から見たもの(上半円)であり、説明のためガルバノミラー11は図中に記載していない。図において、41は回り留めピンであり、カルバノメータ12の回転軸が駆動角以上に回転しないようにストッパ17の位置で回転軸を停止させるものである。なお、以降の説明で可動端に接触するとは、回り留めピン41がストッパ17に接触することであり、阻止部材とはストッパ17を指す。
ZPは原点位置であり、通常は原点パルスを検出する原点パルス検出位置である。回転軸がこの位置に到達すると、エンコーダ13より原点パルスが駆動装置14に与えられる。なお、原点パルス検出位置に示される原点にオフセット量を加算し、そこを機械原点とすることができる。この場合、原点復帰時には原点パルス検出時のパルスカウント値にオフセット値を加算した位置を機械原点とし位置決めする。オフセット値が0であれば、原点パルス検出位置に位置決めする。モーションプログラムによる運転は、原点復帰動作で位置決めした機械原点を基準に動作する。
FIG. 4 is an operation explanatory diagram during the movable range setting operation. FIG. 4 shows the
ZP is an origin position, and is usually an origin pulse detection position for detecting an origin pulse. When the rotation axis reaches this position, the encoder 13 gives an origin pulse to the drive device 14. Note that an offset amount is added to the origin indicated by the origin pulse detection position, and this can be used as the machine origin. In this case, when returning to the origin, the position obtained by adding the offset value to the pulse count value when the origin pulse is detected is used as the machine origin. If the offset value is 0, positioning is performed at the origin pulse detection position. The operation by the motion program operates based on the machine origin positioned by the origin return operation.
図1〜図4を用いて、可動範囲設定動作を説明する。
まず、操作者は入出力装置18を使用して、可動体(回り留めピン41)の原点復帰を指令する。操作者から原点復帰が指令されると、可動範囲設定部26が起動され、パラメータ保存領域22から可動範囲情報を読み出し、可動範囲設定動作が1度行われたかどうかを示す可動範囲設定済みフラグをチェックし、設定済みでなければ可動範囲の設定動作を行う。設定済みの場合は原点復帰処理部25に処理を移し通常の原点サーチを行う。
可動範囲設定部26はまず、可動体を左右どちらかに位置決めを実行する。図4(a)の例では最初右側に位置決めしているが、左から開始しても良い。位置決め指令を生成し、指令部28を介してドライバ14に指令する。位置決めに使用する移動量は、たとえば所定経路の総パルス数が予め推定できるのでそのパルス数より大きな値を使用する。
ドライバ14は、位置決め指令とエンコーダ13からの位置情報に基づいてガルバノメータ12に駆動電流を出力する。図4(a)に示すようにガルバノメータ12の回転軸は右側の可動端に位置決めを開始する。可動範囲設定部26は、位置決め実行中にモニタ部29を介して、ドライバ14からガルバノメータ12のステータスを繰り返し取得し、ガルバノメータ12の回転軸が可動端に達していないか(図4の回り留めピン41がストッパ17に接触していないか)を判定する。
判定手段としては、現在位置の変動量を使用する方法や、指令位置と現在位置の偏差を使用する方法があり、いずれを採用しても良い。
なお、ここでステータスとはガルバノメータ12の現在位置、および原点パルスが検出されたか否か、検出されていればその位置情報も対象とする。
また、可動端に達しているかどうかの判定と同時に原点パルスの検出もチェックし、原点パルスを検出したら検出位置のパルスカウント値をモニタ部29を介してドライバ14から取得し、位置保存領域31に格納する。図4の例では原点は移動開始位置の左側にあるため、原点パルスは検出されず、可動端に達する。
The movable range setting operation will be described with reference to FIGS.
First, the operator uses the input /
First, the movable range setting unit 26 positions the movable body to the left or right. In the example of FIG. 4A, the positioning is initially performed on the right side, but may be started from the left side. A positioning command is generated and commanded to the driver 14 via the command unit 28. For the amount of movement used for positioning, for example, since the total number of pulses of a predetermined path can be estimated in advance, a value larger than the number of pulses is used.
The driver 14 outputs a drive current to the
As the determination means, there are a method of using a fluctuation amount of the current position and a method of using a deviation between the command position and the current position, and any of them may be adopted.
Here, the status includes the current position of the
At the same time as determining whether or not the movable end has been reached, the detection of the origin pulse is also checked. When the origin pulse is detected, the pulse count value of the detected position is obtained from the driver 14 via the monitor unit 29 and stored in the position storage area 31. Store. In the example of FIG. 4, since the origin is on the left side of the movement start position, the origin pulse is not detected and reaches the movable end.
ガルバノメータ12の回転軸が可動端に達したと判断した場合、移動を停止する。停止後に、可動範囲設定部26は可動端のパルスカウント値をモニタ部29を介して、ドライバ14から取得し、位置保存領域31に格納する。ここで、取得位置をXとする(図4( b ))。
次に、可動範囲設定部26は、逆方向(左方向)に位置決めを実行する。移動量は所定経路の総パルス数より大きな値とする。可動範囲設定部26は、位置決め実行中に、ドライバ14からガルバノメータ12のステータスを繰り返し取得する。図4の場合、可動端に達する前に原点パルスが検出される。原点パルスが検出されると、可動範囲設定部26は検出位置のパルスカウント値をモニタ部29を介して、ドライバ14から取得し、位置保存領域31に格納する。ここで、取得位置をYとする(図4(c))。可動範囲設定部26は、引き続きドライバ14からガルバノメータ12のステータスを繰り返し取得し、ガルバノメータ12の回転軸が可動端に達したと判断した場合、移動を停止する。停止後に、可動範囲設定部26は可動端のパルスカウント値をモニタ部29を介して、ドライバ14から取得し、位置保存領域31に格納する。ここで、取得位置をZとする(図4( d ))。
次に、可動範囲設定部26は、位置保存領域31から原点パルス検出位置のパルスカウント値を取得し、オフセット量が0の場合はそこを機械原点とし、オフセットが0以外のときはオフセット量を足した値を機械原点として位置決め指令を作成し、指令部28を介してドライバ14に指令する。ここで、機械原点の位置をYAとする。機械原点への位置決め完了後、その位置を原点に設定し、原点復帰は完了する(図4( c ))。
最後に、可動範囲設定部26は、原点位置から左右両方向への可動範囲を演算する。可動端パルスカウント値X、Z、機械原点位置YAより、原点位置から右側の可動範囲はX−YA、左側の可動範囲はYA−Zで与えられる。可動範囲設定部26は、この可動範囲をパラメータ保存領域22に格納する。この可動範囲は不揮発性メモリに記憶されるので、電源をオフしても保持される。
したがって、次回以降の電源投入時においては、両可動端のパルスカウント値の取得は不要となり、原点サーチのみを実施することになる。原点サーチの手段としては、前述同様移動させながら、ガルバノメータのステータスを取得し、原点パルスが検出されたか否かを判定し、検出された時点で機械原点に位置決めする。またその原点サーチの過程で一方の可動端に接触した場合、可動範囲情報により機械原点までの距離が演算できるので、逆方向サーチのときにこの演算した距離を原点復帰の移動量として使用しても良い。
When it is determined that the rotation axis of the
Next, the movable range setting unit 26 performs positioning in the reverse direction (left direction). The amount of movement is set to a value larger than the total number of pulses in the predetermined path. The movable range setting unit 26 repeatedly acquires the status of the
Next, the movable range setting unit 26 obtains the pulse count value of the origin pulse detection position from the position storage area 31, and when the offset amount is 0, it is set as the machine origin, and when the offset is other than 0, the offset amount is obtained. A positioning command is created using the added value as the machine origin, and commanded to the driver 14 via the command unit 28. Here, the position of the machine origin is YA. After the positioning to the machine origin is completed, the position is set as the origin, and the origin return is completed (Fig. 4 (c)).
Finally, the movable range setting unit 26 calculates a movable range in both the left and right directions from the origin position. From the movable end pulse count values X and Z and the machine origin position YA, the movable range on the right side from the origin position is given by X-YA and the movable range on the left side is given by YA-Z. The movable range setting unit 26 stores this movable range in the parameter storage area 22. Since this movable range is stored in the nonvolatile memory, it is retained even when the power is turned off.
Therefore, when the power is turned on after the next time, it is not necessary to acquire the pulse count values of both movable ends, and only the origin search is performed. The origin search means obtains the status of the galvanometer while moving as described above, determines whether or not an origin pulse has been detected, and positions it at the machine origin when it is detected. If one of the movable ends is touched during the origin search process, the distance to the machine origin can be calculated from the movable range information. Also good.
次に可動範囲設定部26の詳細を説明する。
原点復帰が指令されると、可動範囲設定部26が起動される。
図5は可動範囲設定部26の処理手順を示すフローチャートである。
図5(a)がメインの処理で、図5(b)は原点パルス・可動端チェックのサブルーチンである。
まず、メインのステップS1でパラメータ領域22に保存された可動範囲情報を読み出す。次に、ステップS2で可動範囲設定済みフラグにより可動範囲が設定済みかどうかチェックをする。設定済みであれば原点復帰処理部25に処理を移し、原点サーチ処理を行う。設定済みでなければステップS3に進み、位置決め指令を生成し、発行する。位置決めに使用する移動量は、たとえば所定経路の総パルス数より大きな値を使用する。
次にステップS4で図5(b)に示す原点パルス、可動端チェックのサブルーチンをコールする。
サブルーチンでは、ステップS31でステータスを取得し、ステップS32で原点パルスを検出したかどうかチェックをする。もし検出した場合、ステップS33で原点パルス検出位置のパルスカウント値を取得し、位置保存領域31に格納する。ステップS34で可動端に接触したかどうかをチェックし、もし接触していればメインルーチンに戻り、接触していなければ、ステップS31に進む。
このように、このサブルーチンでは、原点パルスを検出したときは原点パルス検出位置のパルスカウント値を取得・保存し、可動端に接触するとサブルーチンから戻る。
ステップS5では可動端に接触しているので、停止指令を生成し発行する。ステップS6でステータスを取得し、ステップS7で停止をチェックする。停止が確認できるとステップS8に進み、可動端パルスカウント値を取得し、位置保存領域31に格納する。
次にステップS9に進み逆方向への位置指令を生成し、発行する。ステップS10で再度原点パルス・可動端チェックサブルーチンをコールし、原点パルスを検出したときは原点位置のパルスカウント値を取得・保存する。
ステップS11では、可動端に接触している状態なので、ステップS11〜S13で停止指令を発行し、停止を確認する。
ステップS14で可動端パルスカウント値を取得し、位置保存領域31に格納する。
次にステップS15で機械原点への位置指令を生成・発行する。ステップS16、S17で位置決め完了を確認し、ステップS18で原点を設定する。そしてステップS19で可動範囲の演算を行いその結果と、可動範囲設定済みフラグをパラメータ保存領域22に格納する。
Next, details of the movable range setting unit 26 will be described.
When the origin return is instructed, the movable range setting unit 26 is activated.
FIG. 5 is a flowchart showing a processing procedure of the movable range setting unit 26.
FIG. 5A is a main process, and FIG. 5B is a subroutine of origin pulse / movable end check.
First, the movable range information stored in the parameter area 22 in the main step S1 is read. Next, in step S2, it is checked whether the movable range has been set by the movable range set flag. If it has been set, the process moves to the origin return processing unit 25 to perform origin search processing. If not set, the process proceeds to step S3, where a positioning command is generated and issued. For the movement amount used for positioning, for example, a value larger than the total number of pulses of a predetermined path is used.
Next, in step S4, the origin pulse and movable end check subroutine shown in FIG. 5B is called.
In the subroutine, the status is acquired in step S31, and it is checked whether an origin pulse is detected in step S32. If detected, the pulse count value at the origin pulse detection position is acquired in step S33 and stored in the position storage area 31. In step S34, it is checked whether or not the movable end has been touched. If so, the process returns to the main routine. If not, the process proceeds to step S31.
Thus, in this subroutine, when the origin pulse is detected, the pulse count value at the origin pulse detection position is acquired and stored, and when the movable end is touched, the subroutine returns.
In step S5, since it is in contact with the movable end, a stop command is generated and issued. The status is acquired in step S6, and the stop is checked in step S7. If the stop can be confirmed, the process proceeds to step S8 where the movable end pulse count value is acquired and stored in the position storage area 31.
In step S9, a position command in the reverse direction is generated and issued. In step S10, the origin pulse / movable end check subroutine is called again, and when the origin pulse is detected, the pulse count value at the origin position is acquired and stored.
In step S11, since the movable end is in contact, a stop command is issued in steps S11 to S13 to confirm the stop.
In step S 14, the movable end pulse count value is acquired and stored in the position storage area 31.
In step S15, a position command to the machine origin is generated and issued. The completion of positioning is confirmed in steps S16 and S17, and the origin is set in step S18. In step S 19, the movable range is calculated, and the result and the movable range set flag are stored in the parameter storage area 22.
次に位置決め指令実行時の可動範囲の判定方法について説明する。
操作者は原点復帰完了後、入出力装置18からモーションプログラム実行をコントローラ15に対して指令する。中央処理部21は、プログラム実行部27に対しプログラム実効を指示する。プログラム実行部27は1行ずつプログラムを実行するときに可動範囲内の指令かどうかを判定する。
図6はプログラム実行部27の処理手順を示すフローチャートである。
まずステップS41でパラメータ保存領域22から可動範囲情報を読み出す。次に、ステップS42でプログラム格納領域23からモーションプログラムを1行読み出し、実行を開始する。ステップS43で指令を解析し、目標位置から位置決め指令値を演算する。ステップS44で演算結果と可動範囲情報から目標位置が可動範囲内に含まれるかをチェックする。チェックの結果目標位置が可動範囲を越えなければステップS45に進み位置指令を生成し、発行する。ステップS46で全ての行の実行が完了すれば終了となる。ステップS44で目標位置が可動範囲を越える場合は位置指令を生成せずステップS47でプログラムの実行を停止する。このとき、ステップS48に有るように通信部30を介して入出力装置18にアラーム通知を行うなどしても良い。
Next, a method for determining the movable range when the positioning command is executed will be described.
The operator instructs the controller 15 to execute the motion program from the input /
FIG. 6 is a flowchart showing the processing procedure of the program execution unit 27.
First, the movable range information is read from the parameter storage area 22 in step S41. Next, in step S42, one line of the motion program is read from the program storage area 23, and execution is started. In step S43, the command is analyzed, and a positioning command value is calculated from the target position. In step S44, it is checked whether the target position is included in the movable range from the calculation result and the movable range information. If the target position does not exceed the movable range as a result of the check, the process proceeds to step S45 to generate and issue a position command. If the execution of all the rows is completed in step S46, the process ends. If the target position exceeds the movable range in step S44, the position command is not generated and execution of the program is stopped in step S47. At this time, an alarm may be sent to the input /
次に、原点のオフセット量を変更する場合の動作を説明する。
機械原点を、原点パルス検出位置ではなく、原点パルス検出位置にオフセット量を足した位置に変更する場合、あるいは、既に設定してあるオフセット量を変更する場合、操作者は入出力装置18を使用して新オフセット量をコントローラ15に設定する。中央処理部21は、パラメータ保存領域22に新オフセット量を格納する。この状態で、原点復帰を実行すると原点復帰処理部25は、原点パルス検出位置に新オフセット量を加算した位置に位置決めする。この状態で、操作者が、モーションプログラム実行をコントローラ15に対して指令すると、プログラム実行部27は、パラメータ保存領域22から可動範囲情報を読み出し、新オフセット量を使用して可動範囲を再演算する。次に、プログラム格納領域26からモーションプログラムを読み出し、実行を開始する。実行中の可動範囲判定は図6の説明で述べたとおりである。
Next, the operation for changing the offset amount of the origin will be described.
The operator uses the input /
このように、本発明によれば、所定経路の可動端のパルスカウント値、原点位置のパルスカウント値を取得することにより原点位置からの左右両方向の可動範囲を演算し、可動範囲に基づいて位置決め指令を判定し、可動範囲を超えない場合のみ位置決め指令を実行するため可動端に衝突することを防ぐことができる。また、左右両方向への可動範囲情報は不揮発性メモリに記憶されているため、2回目以降の原点復帰時は、両可動端のパルスカウント値を計測する必要はなく、自動的に原点サーチから開始する。また、機械原点を1回目の原点復帰のときから変更した場合においても、その変動分と左右両方向への可動範囲から、機械原点においての可動範囲が演算できるため、再度、両可動端のパルスカウント値を計測せずとも可動範囲を判定できる。また、各種センサやリミットスイッチを必要とせず、簡単で低コストに運転プログラムのミスなどにより可動体が可動端に衝突するのを防ぐことができる。 As described above, according to the present invention, by obtaining the pulse count value at the movable end of the predetermined path and the pulse count value at the origin position, the movable range in both the left and right directions from the origin position is calculated, and positioning is performed based on the movable range. Since the command is determined and the positioning command is executed only when the movable range is not exceeded, collision with the movable end can be prevented. In addition, since the movable range information in both the left and right directions is stored in the non-volatile memory, it is not necessary to measure the pulse count value of both movable ends at the time of origin return for the second and subsequent times, and automatically starts from the origin search. To do. Even when the machine origin is changed from the first return to origin, the movable range at the machine origin can be calculated from the fluctuation and the movable range in both the left and right directions. The movable range can be determined without measuring the value. Moreover, various sensors and limit switches are not required, and it is possible to prevent the movable body from colliding with the movable end due to a mistake in the operation program or the like at low cost.
ガルバノメータによるレーザ加工装置だけでなく、所定経路上を可動体を往復動させる装置、例えば、ボールねじとモータを連結してワークテーブルを移動させるような機械装置の可動範囲の判定にも適用できる。 The present invention can be applied not only to a laser processing apparatus using a galvanometer but also to a determination of a movable range of a device that reciprocates a movable body on a predetermined path, for example, a mechanical device that moves a work table by connecting a ball screw and a motor.
11 ガルバノミラー
12 ガルバノメータ
13 エンコーダ
14 ドライバ
15 コントローラ
16 レーザ発振器
17 ストッパ
18 入出力装置
21 中央処理部
22 パラメータ保存領域
23 プログラム格納領域
24 バッテリ
25 原点復帰処理部
26 可動範囲設定部
27 プログラム実行部
28 指令部
29 モニタ部
30 通信部
31 位置保存領域
41 回り留めピン
11
Claims (8)
前記可動体を移動させるモータと、
前記モータに取り付けられ、経路上の所定位置で原点パルスを発生する位置検出器と、
前記モータを駆動するドライバと、
前記ドライバに駆動指令を送るコントローラと、
該コントローラと通信を行い、ステータスの取得や機能実行指示などを行う入出力装置からなる機械装置のコントローラにおいて、
前記ドライバに位置決め指令を送り、前記可動体が所定経路の両側の可動端に到達した時の可動端パルスカウント値と、原点パルス検出時のパルスカウント値を取得し、該原点パルス検出時のパルスカウント値に原点のオフセット量を加算して求めた機械原点と前記可動端パルスカウント値から前記可動体の可動範囲を演算し、該可動範囲、前記オフセット量を可動範囲情報として不揮発性メモリに保存する可動範囲設定動作を行う可動範囲設定部を備えることを特徴とする機械装置のコントローラ。 A movable body that reciprocates on a predetermined path;
A motor for moving the movable body;
A position detector attached to the motor and generating an origin pulse at a predetermined position on the path;
A driver for driving the motor;
A controller for sending a drive command to the driver;
In the controller of the machine device consisting of an input / output device that communicates with the controller and performs status acquisition and function execution instructions,
A positioning command is sent to the driver, and the movable end pulse count value when the movable body reaches the movable ends on both sides of the predetermined path and the pulse count value when the origin pulse is detected are obtained, and the pulse when the origin pulse is detected The movable range of the movable body is calculated from the machine origin obtained by adding the offset amount of the origin to the count value and the movable end pulse count value, and the movable range and the offset amount are stored in the nonvolatile memory as movable range information. A controller for a machine apparatus, comprising a movable range setting unit that performs a movable range setting operation.
該プログラム格納部から1行づつプログラムを読み出し実行するプログラム実行部を更に備え、
該プログラム実行部が、前記可動体の位置決め指令時に、前記不揮発性メモリに保存された可動範囲情報に基づいて、前記可動体が可動範囲を越えるか否かを判定し、可動範囲を超えない場合のみ位置決め指令を実行することを特徴とする請求項1記載の機械装置のコントローラ。 A program storage unit for storing motion programs;
A program execution unit that reads and executes the program line by line from the program storage unit;
When the program execution unit determines whether or not the movable body exceeds the movable range based on the movable range information stored in the nonvolatile memory at the time of positioning the movable body, and does not exceed the movable range The machine controller according to claim 1, wherein only the positioning command is executed.
前記可動体を移動させるモータと、
前記モータに取り付けられ、経路上の所定位置で原点パルスを発生する位置検出器と、
前記モータを駆動するドライバと、
前記ドライバに駆動指令を送るコントローラと、
該コントローラと通信を行い、ステータスの取得や機能実行指示などを行う入出力装置からなる機械装置の可動範囲判定方法において、
前記ドライバに位置決め指令を送り、前記可動体が所定経路の両側の可動端に到達した時の可動端パルスカウント値と、原点パルス検出時のパルスカウント値を取得し、該原点パルス検出時のパルスカウント値に原点のオフセット量を加算して求めた機械原点と前記可動端パルスカウント値から前記可動体の可動範囲を演算し、該可動範囲、前記オフセット量を可動範囲情報として不揮発性メモリに保存する可動範囲設定動作を行うことを特徴とする機械装置の可動範囲判定方法。 A movable body that reciprocates on a predetermined path;
A motor for moving the movable body;
A position detector attached to the motor and generating an origin pulse at a predetermined position on the path;
A driver for driving the motor;
A controller for sending a drive command to the driver;
In the method of determining the movable range of a mechanical device composed of an input / output device that communicates with the controller and obtains status, performs function execution instructions, etc.
A positioning command is sent to the driver, and the movable end pulse count value when the movable body reaches the movable ends on both sides of the predetermined path and the pulse count value when the origin pulse is detected are obtained, and the pulse when the origin pulse is detected The movable range of the movable body is calculated from the machine origin obtained by adding the offset amount of the origin to the count value and the movable end pulse count value, and the movable range and the offset amount are stored in the nonvolatile memory as movable range information. A movable range determination method for a mechanical device, characterized in that a movable range setting operation is performed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006259945A JP2008083758A (en) | 2006-09-26 | 2006-09-26 | Controller and movable range judgment method for machinery |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006259945A JP2008083758A (en) | 2006-09-26 | 2006-09-26 | Controller and movable range judgment method for machinery |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008083758A true JP2008083758A (en) | 2008-04-10 |
Family
ID=39354622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006259945A Pending JP2008083758A (en) | 2006-09-26 | 2006-09-26 | Controller and movable range judgment method for machinery |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008083758A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010282073A (en) * | 2009-06-05 | 2010-12-16 | Hoya Corp | Lens position controller for electronic endoscope |
JP2014028417A (en) * | 2012-07-31 | 2014-02-13 | Minebea Co Ltd | Cutting fluid ejection apparatus |
WO2020044431A1 (en) * | 2018-08-28 | 2020-03-05 | 株式会社Fuji | Control program checking device |
JPWO2021124603A1 (en) * | 2019-12-16 | 2021-06-24 |
-
2006
- 2006-09-26 JP JP2006259945A patent/JP2008083758A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010282073A (en) * | 2009-06-05 | 2010-12-16 | Hoya Corp | Lens position controller for electronic endoscope |
JP2014028417A (en) * | 2012-07-31 | 2014-02-13 | Minebea Co Ltd | Cutting fluid ejection apparatus |
WO2020044431A1 (en) * | 2018-08-28 | 2020-03-05 | 株式会社Fuji | Control program checking device |
JPWO2020044431A1 (en) * | 2018-08-28 | 2021-06-03 | 株式会社Fuji | Control program checker |
JP7074865B2 (en) | 2018-08-28 | 2022-05-24 | 株式会社Fuji | Control program checker |
JPWO2021124603A1 (en) * | 2019-12-16 | 2021-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105798907B (en) | Robot controller and robot system | |
US10406644B2 (en) | Machining system | |
JP6174636B2 (en) | Work positioning device for positioning work | |
JP6481350B2 (en) | Ball screw measuring device | |
JP2018094638A (en) | Deburring device | |
JP4256353B2 (en) | Servo control device and servo system adjustment method | |
US20180164793A1 (en) | Laser processing robot system and control method of laser processing robot system | |
JP5444412B2 (en) | Numerical control device having a display unit for displaying information for evaluating processing | |
JP6496338B2 (en) | Machine tool control system | |
US9904273B2 (en) | Machine tool and interpretive program | |
JP6490154B2 (en) | Wire discharge system and relative position calculation method | |
JP2010238174A (en) | Positioning device and positioning method | |
JP6918603B2 (en) | Control method of 3D laser machine and 3D laser machine | |
JP2008083758A (en) | Controller and movable range judgment method for machinery | |
CN105527928A (en) | Device and method of controlling machine tool | |
CN112486090A (en) | Control device and control system for machine tool | |
JP2011093015A (en) | Control device of hand-eye bin picking robot | |
US11933638B2 (en) | Method for detecting phase on gear, method for producing gear, method for detecting position on edge of workpiece, and machine tool for detecting phase on gear | |
JP2005034934A (en) | Numerically controlled apparatus, machine tool equipped with the same, and method for calculating coordinate of workpiece | |
JP7035875B2 (en) | Numerical control device, numerical control method, and numerical control program | |
JP2007310859A (en) | Controller of mechanical apparatus and method returning to origin | |
JP2008071015A (en) | Numerical controller | |
JP2007007804A (en) | Method of detecting abnormality of position measuring means and direction measuring means of autonomous moving robot, and autonomous moving robot | |
JP6464135B2 (en) | Numerical controller | |
JP2017159428A (en) | Control device, robot, and robot system |