JP5343285B2 - How to calculate recovery commands for numerical control systems - Google Patents

How to calculate recovery commands for numerical control systems Download PDF

Info

Publication number
JP5343285B2
JP5343285B2 JP2009056431A JP2009056431A JP5343285B2 JP 5343285 B2 JP5343285 B2 JP 5343285B2 JP 2009056431 A JP2009056431 A JP 2009056431A JP 2009056431 A JP2009056431 A JP 2009056431A JP 5343285 B2 JP5343285 B2 JP 5343285B2
Authority
JP
Japan
Prior art keywords
polynomial
command
calculating
acceleration
host controller
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
JP2009056431A
Other languages
Japanese (ja)
Other versions
JP2010211475A (en
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.)
Delta Electronics Inc
Original Assignee
Delta Electronics Inc
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 Delta Electronics Inc filed Critical Delta Electronics Inc
Priority to JP2009056431A priority Critical patent/JP5343285B2/en
Publication of JP2010211475A publication Critical patent/JP2010211475A/en
Application granted granted Critical
Publication of JP5343285B2 publication Critical patent/JP5343285B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Numerical Control (AREA)

Description

本発明は、数値制御システムのリカバリコマンドを計算する方法に関し、より詳細には、数値制御システムの高次微分可能連続多項式をリカバリするリカバリコマンドを計算する方法に関する。   The present invention relates to a method for calculating a recovery command for a numerical control system, and more particularly to a method for calculating a recovery command for recovering a higher-order differentiable continuous polynomial of a numerical control system.

動き制御は精密機械加工ツールでのコア技術であり、動き制御の適用範囲は、位置制御用又は速度制御用の工業機械を含み、高精度制御用のコンピュータ数値制御(CNC)機械ツールをさらに含む。動き制御システムは、様々なソフトウェア技法及びハードウェア技法に統合されるため、動き制御システムのコスト、安定性、使用頻度、メンテナンスサービス、並びにソフトウェア及びハードウェアの拡張性及び相互運用性さえも、動き制御システムを評価するための重要な要因である。さらに、機械ツールのすべてのスピンドルの位置及び速度の両方が実際に、機械ツールの制御品質を測定するために考慮される。   Motion control is a core technology in precision machining tools, and the scope of motion control includes industrial machines for position control or speed control, and further includes computer numerical control (CNC) machine tools for high precision control . Because motion control systems are integrated into various software and hardware techniques, motion control system costs, stability, frequency of use, maintenance services, and even software and hardware scalability and interoperability It is an important factor for evaluating the control system. Furthermore, both the position and speed of all spindles of the machine tool are actually taken into account to measure the control quality of the machine tool.

CNC機械ツールは、コンピュータ数値制御システムが機械ツールにインストールされ、コンピュータ数値制御システムが入力データを受信して計算し、その後、スピンドルの回転、切断ツールの交換、切断移動、冷却材スイッチ等の動作状況を制御するコマンドを送信して、期待される制御を達成することを意味する。   The CNC machine tool has a computer numerical control system installed in the machine tool, the computer numerical control system receives and calculates the input data, and then operates spindle rotation, cutting tool replacement, cutting movement, coolant switch, etc. It means sending a command to control the situation to achieve the expected control.

CNC機械ツールのプロセス中、元データ(幾何学的形状及びアウトラインサイズ)及び対応する命令が、未処理材料の始点と終点との間で正確な輪郭曲線を処理するための複数の補間を計算するために提供される。   During the CNC machine tool process, the original data (geometry and outline size) and the corresponding instructions calculate multiple interpolations to process the exact contour curve between the raw material start and end points. Provided for.

(特許文献1)には、定められた補間走査速度で位置セットポイントを提供する補間ユニット及び精度補間ユニットを備える、数値制御機械の制御ループのコマンド変数を生成する構成が開示されている。精度補間ユニットは、走査速度変換器及び下流に接続される低域フィルタを含み、精度補間ユニットは、補間ユニットの下流に配置され、入力側における位置セットポイントから、出力側において下流に接続される1つ又はいくつかの制御ループのコマンド変数を生成し、精度補間ユニットは、制御ループ走査速度での制御ループの時間パターンでコマンド変数を生成する。制御ループのコマンド変数は、二次フィルタの構造を利用するように実施され、フィルタは、数値制御機械に合うようにも設計される。しかし、結果として生成されるパス曲線に、より高次の微分可能性を提供しない。数値制御機械の実用性は、コマンド生成構成の高い複雑性によって低減する。   (Patent Document 1) discloses a configuration for generating a command variable of a control loop of a numerical control machine, which includes an interpolation unit and a precision interpolation unit that provide a position setpoint at a predetermined interpolation scanning speed. The accuracy interpolation unit includes a scanning speed converter and a low-pass filter connected downstream, and the accuracy interpolation unit is arranged downstream of the interpolation unit, and is connected downstream from the position set point on the input side to the output side. One or several control loop command variables are generated, and the precision interpolation unit generates the command variable with the control loop time pattern at the control loop scan rate. The control variable of the control loop is implemented to take advantage of the structure of the second order filter, and the filter is also designed to fit the numerical control machine. However, it does not provide higher order differentiability in the resulting path curve. The practicality of the numerical control machine is reduced by the high complexity of the command generation configuration.

米国特許第6,772,020号明細書US Pat. No. 6,772,020

したがって、本発明の目的は、数値制御システムの高次微分可能連続多項式をリカバリするとともに、サーボドライバと上位コントローラとの間でコマンドを同期させるリカバリコマンドを計算する方法を提供することである。   Accordingly, an object of the present invention is to provide a method for calculating a recovery command for recovering a high-order differentiable continuous polynomial of a numerical control system and synchronizing the command between a servo driver and a host controller.

上記目的を達成するために、上位コントローラが、モータを駆動するサーボドライバに位置コマンドを提供する数値制御のリカバリコマンドを計算する方法を提供する。方法のステップは以下のように説明される。まず、サーボドライバが、位置コマンドを記憶するためのメモリ空間を提供する。その後、位置行列及び変換行列が読み取られる。変換行列は位置行列によって乗算されて、位置多項式の複数の位置係数が得られ、複数の位置補間が計算される。さらに、速度多項式及び加速度多項式を得ることができる。したがって、サーボドライバと上位コントローラとを同期させる高次微分可能連続多項式としてリカバリするための位置コマンドが計算される。   To achieve the above object, a method is provided in which a host controller calculates a numerically controlled recovery command that provides a position command to a servo driver that drives a motor. The method steps are described as follows. First, the servo driver provides a memory space for storing position commands. Thereafter, the position matrix and the transformation matrix are read. The transformation matrix is multiplied by the position matrix to obtain a plurality of position coefficients of the position polynomial, and a plurality of position interpolations are calculated. Furthermore, a velocity polynomial and an acceleration polynomial can be obtained. Therefore, a position command for recovery as a high-order differentiable continuous polynomial that synchronizes the servo driver and the host controller is calculated.

上記の全般的な説明及び以下の詳細な説明は両方とも例示的なものであり、主張される本発明のさらなる説明を提供することが意図されることを理解されたい。本発明の他の利点及び特徴が、以下の説明、図面、及び特許請求の範囲から明らかになろう。   It should be understood that both the foregoing general description and the following detailed description are exemplary and are intended to provide further explanation of the claimed invention. Other advantages and features of the invention will be apparent from the following description, drawings, and claims.

新規であると確信される本発明の特徴は、添付の特許請求の範囲において特に記載される。しかし、本発明それ自体は、添付図面と併せて行われる本発明の例示的な実施形態を説明する本発明の以下の詳細な説明を参照することによって最良に理解することができる。   The features of the invention believed to be novel are set forth with particularity in the appended claims. However, the invention itself may best be understood by referring to the following detailed description of the invention which illustrates exemplary embodiments of the invention taken in conjunction with the accompanying drawings.

本発明による上位コントローラとサーボドライバとの間の通信の概略図である。It is the schematic of communication between the high-order controller and servo driver by this invention. リカバリコマンド計算の概略図である。It is the schematic of recovery command calculation. リカバリコマンド計算のフローチャートである。It is a flowchart of recovery command calculation. 上位コントローラからサーボドライバに送信され、サーボドライバによってサンプリングされる位置コマンドの概略図である。It is the schematic of the position command transmitted to a servo driver from a high-order controller and sampled by the servo driver.

添付図面により、本発明の技術的内容及び詳細な説明を好ましい実施形態により以下に説明するが、これらは実行範囲を制限するために使用されない。添付の特許請求の範囲により行われるあらゆる等価の変形及び変更はすべて、本発明によって主張される特許請求の範囲によって包含される。   BRIEF DESCRIPTION OF THE DRAWINGS The technical content and detailed description of the present invention will be described below by means of preferred embodiments with reference to the accompanying drawings, which are not used to limit the scope of execution. All equivalent variations and modifications made by the appended claims are covered by the claims claimed by the present invention.

これより、図面図を参照して本発明を詳細に説明する。   The present invention will now be described in detail with reference to the drawings.

本発明による上位コントローラとサーボドライバとの間の通信の概略図である図1を参照する。コンピュータ数値制御(CNC)機械ツールの電気システムが例として採用される。上位コントローラ10は、Gコードインタプリタ(図示せず)を介して周期的に位置データを生成する。上位コントローラ10はサーボドライバ20に電気的に接続され、パルス位置コマンドθ(i)をサーボドライバ20に送信する。位置コマンドθ(i)は、伝送線を介して上位コントローラ10とサーボドライバ20との間で伝送される。上位コントローラ10及びサーボドライバ20は、高速シリアル通信インタフェース102、202をそれぞれ有する。上位コントローラ10から送信される位置コマンドθ(i)の周期はT(秒)であり、サーボドライバ20に受信される位置コマンドθ(i)の周期もT(秒)である。さらに、サーボドライバ20に設置されるデジタル信号プロセッサ(DSP)204のサンプリング時間はH(秒)である。サーボドライバ20によって受信される位置コマンドθ(i)の周期が0.5ミリ秒(T=0.5ms)である場合、デジタル信号プロセッサ204のサンプリング時間は0.05ミリ秒(H=0.05ms)である。したがって、デジタル信号プロセッサ204は、0.5ミリ秒の位置コマンドθ(i)を補償するために9つの補間を提供する。コマンドリカバリ計算器2042がデジタル信号プロセッサ204によって提供され、制御ループ2044がさらに使用されて、高次微分可能連続多項式への位置コマンドθ(i)のリカバリに使用される。   Reference is made to FIG. 1, which is a schematic diagram of communication between a host controller and a servo driver according to the present invention. A computer numerical control (CNC) machine tool electrical system is taken as an example. The host controller 10 periodically generates position data via a G code interpreter (not shown). The host controller 10 is electrically connected to the servo driver 20 and transmits a pulse position command θ (i) to the servo driver 20. The position command θ (i) is transmitted between the host controller 10 and the servo driver 20 via the transmission line. The host controller 10 and the servo driver 20 have high-speed serial communication interfaces 102 and 202, respectively. The cycle of the position command θ (i) transmitted from the host controller 10 is T (seconds), and the cycle of the position command θ (i) received by the servo driver 20 is also T (seconds). Further, the sampling time of the digital signal processor (DSP) 204 installed in the servo driver 20 is H (seconds). When the period of the position command θ (i) received by the servo driver 20 is 0.5 milliseconds (T = 0.5 ms), the sampling time of the digital signal processor 204 is 0.05 milliseconds (H = 0. 05 ms). Thus, the digital signal processor 204 provides nine interpolations to compensate for the 0.5 millisecond position command θ (i). A command recovery calculator 2042 is provided by the digital signal processor 204 and the control loop 2044 is further used to recover the position command θ (i) to a higher order differentiable continuous polynomial.

リカバリコマンド計算の概略図及びリカバリコマンド計算のフローチャートである図2及び図3をそれぞれ参照する。リカバリコマンドの計算についての詳細な説明は以下である。まず、サーボドライバ20が、位置コマンドθ(i)を記憶するためのメモリ空間2046を提供し(S100)、位置コマンドθ(i)は上位コントローラ10からサーボドライバ20に送信される。位置コマンドθ(i)は、キュー(先入れ先出し、FIFO)手法を使用してメモリ空間2046に記憶されて、k×1要素を有する位置行列が形成される。位置行列は、1つの現在位置要素θ(0)を有し、(k−1)個の先行する位置要素θ(−1)、θ(−2)、θ(−3)、・・・、θ(k−1)を有する。(k−1)次の位置多項式θ(n)が定義される。位置多項式θ(n)を例示するために、kを6とする。すなわち、位置多項式θ(n)の次数は5である。また、5次の位置多項式θ(n)は以下のように表される。
θ(n)=a5 *n5+a4 *n4+a3 *n3+a2 *n2+a1 *n+a0 (式1)
Reference is made to FIGS. 2 and 3 which are a schematic diagram of recovery command calculation and a flowchart of recovery command calculation, respectively. The detailed explanation about the calculation of the recovery command is as follows. First, the servo driver 20 provides a memory space 2046 for storing the position command θ (i) (S100), and the position command θ (i) is transmitted from the host controller 10 to the servo driver 20. The position command θ (i) is stored in the memory space 2046 using a queue (first-in first-out, FIFO) technique to form a position matrix having k × 1 elements. The position matrix has one current position element θ (0), and (k−1) preceding position elements θ (−1), θ (−2), θ (−3),. θ (k−1). (K-1) The following position polynomial θ (n) is defined. To illustrate the position polynomial θ (n), k is set to 6. That is, the degree of the position polynomial θ (n) is 5. The fifth-order position polynomial θ (n) is expressed as follows.
θ (n) = a 5 * n 5 + a 4 * n 4 + a 3 * n 3 + a 2 * n 2 + a 1 * n + a 0 (Formula 1)

その後、k×1要素を有する位置が読み取られる(S102)。kが6に等しい場合、位置行列は6個の要素を有し、これら要素は現在位置要素θ(0)及び5つの先行位置要素θ(−1)、θ(−2)、θ(−3)、θ(−4)、及びθ(−5)である。その後、k×k要素を有する変換行列Mが読み取られる(S104)。変換行列Mは一定の要素を有する行列であり、変換行列Mの要素は変換行列Mの次元に従って決まる。したがって、位置多項式θ(n)は以下のように表現することができる。
θ(0)=a5 *(0)5+a4 *(0)4+a3 *(0)3+a2 *(0)2+a1 *(0)+a0 (式2.1)
θ(-1)=a5 *(-1)5+a4 *(-1)4+a3 *(-1)3+a2 *(-1)2+a1 *(-1)+a0 (式2.2)
θ(-2)=a5 *(-2)5+a4 *(-2)4+a3 *(-2)3+a2 *(-2)2+a1 *(-2)+a0 (式2.3)
θ(-3)=a5 *(-3)5+a4 *(-3)4+a3 *(-3)3+a2 *(-3)2+a1 *(-3)+a0 (式2.4)
θ(-4)=a5 *(-4)5+a4 *(-4)4+a3 *(-4)3+a2 *(-4)2+a1 *(-4)+a0 (式2.5)
θ(-5)=a5 *(-5)5+a4 *(-5)4+a3 *(-5)3+a2 *(-5)2+a1 *(-5)+a0 (式2.6)
Thereafter, a position having k × 1 elements is read (S102). If k is equal to 6, the position matrix has 6 elements, which are the current position element θ (0) and the five preceding position elements θ (−1), θ (−2), θ (−3 ), Θ (−4), and θ (−5). Thereafter, the transformation matrix M having k × k elements is read (S104). The transformation matrix M is a matrix having certain elements, and the elements of the transformation matrix M are determined according to the dimensions of the transformation matrix M. Therefore, the position polynomial θ (n) can be expressed as follows.
θ (0) = a 5 * (0) 5 + a 4 * (0) 4 + a 3 * (0) 3 + a 2 * (0) 2 + a 1 * (0) + a 0 (Formula 2. 1)
θ (-1) = a 5 * (-1) 5 + a 4 * (-1) 4 + a 3 * (-1) 3 + a 2 * (-1) 2 + a 1 * (-1) + a 0 (Formula 2.2)
θ (-2) = a 5 * (-2) 5 + a 4 * (-2) 4 + a 3 * (-2) 3 + a 2 * (-2) 2 + a 1 * (-2) + a 0 (Equation 2.3)
θ (-3) = a 5 * (-3) 5 + a 4 * (-3) 4 + a 3 * (-3) 3 + a 2 * (-3) 2 + a 1 * (-3) + a 0 (Equation 2.4)
θ (-4) = a 5 * (-4) 5 + a 4 * (-4) 4 + a 3 * (-4) 3 + a 2 * (-4) 2 + a 1 * (-4) + a 0 (Formula 2.5)
θ (-5) = a 5 * (-5) 5 + a 4 * (-5) 4 + a 3 * (-5) 3 + a 2 * (-5) 2 + a 1 * (-5) + a 0 (Equation 2.6)

上記式(式2.1〜式2.6)は以下のように行列形態で表される。   The above formulas (formula 2.1 to formula 2.6) are expressed in matrix form as follows.

また、変換行列Mは以下のように定義される。   The transformation matrix M is defined as follows.

その後、位置多項式θ(n)のk個の位置係数が計算される(S106)。6個の位置係数(k=6)、すなわちa〜aは、変換行列Mによって以下のように計算することができる。 Thereafter, k position coefficients of the position polynomial θ (n) are calculated (S106). Six position coefficients (k = 6), that is, a 0 to a 5 can be calculated by the transformation matrix M as follows.

その後、複数の位置補間が、位置多項式θ(n)及び位置係数に従って計算される(S108)。位置コマンドθ(i)を、次数(k−1)の位置多項式θ(n)によって計算することができる。iが整数の場合、位置コマンドθ(i)は上位コントローラ10から送信された位置データであり、iが整数ではない場合、位置コマンドθ(i)は位置補間である。例えば、9つの位置補間はθ(−0.1)、θ(−0.2)、θ(−0.3)、・・・、及びθ(−0.9)のそれぞれであり、9つの位置補間はθ(0)〜θ(−1)の間にある。   Thereafter, a plurality of position interpolations are calculated according to the position polynomial θ (n) and the position coefficient (S108). The position command θ (i) can be calculated by a position polynomial θ (n) of order (k−1). When i is an integer, the position command θ (i) is position data transmitted from the host controller 10, and when i is not an integer, the position command θ (i) is position interpolation. For example, nine position interpolations are θ (−0.1), θ (−0.2), θ (−0.3),..., And θ (−0.9), respectively. The position interpolation is between θ (0) and θ (−1).

さらに、(k−2)次の速度多項式ω(n)及び速度多項式の複数の速度係数は、位置多項式θ(n)を一次微分することによって計算される(S110)。式1は一次微分されて、速度多項式ω(n)、すなわちω(n)=dθ(n)/dnを以下のように計算する。
ω(n)=5a5 *n4+4a4 *n3+3a3 *n2+2a2 *n+a1 (式3)
Further, the (k−2) th order velocity polynomial ω (n) and a plurality of velocity coefficients of the velocity polynomial are calculated by first-order differentiation of the position polynomial θ (n) (S110). Equation 1 is first-order differentiated to calculate the velocity polynomial ω (n), ie, ω (n) = dθ (n) / dn as follows:
ω (n) = 5a 5 * n 4 + 4a 4 * n 3 + 3a 3 * n 2 + 2a 2 * n + a 1 (Formula 3)

その後、複数の速度補間が、速度多項式ω(n)及び速度係数に従って計算される(S112)。   Thereafter, a plurality of speed interpolations are calculated according to the speed polynomial ω (n) and the speed coefficient (S112).

さらに、(k−3)次の加速度多項式α(n)及び加速度多項式の複数の加速度係数が、速度多項式ω(n)を一次微分することによって計算される(S114)。式3は一次微分されて、加速度多項式α(n)、すなわちα(n)=dω(n)/dnが以下のように計算される。
α(n)=20a5 *n3+12a4 *n2+6a3 *n2+2a2 (式4)
Further, the (k-3) -order acceleration polynomial α (n) and a plurality of acceleration coefficients of the acceleration polynomial are calculated by first-order differentiation of the velocity polynomial ω (n) (S114). Equation 3 is first-order differentiated, and the acceleration polynomial α (n), that is, α (n) = dω (n) / dn is calculated as follows.
α (n) = 20a 5 * n 3 + 12a 4 * n 2 + 6a 3 * n 2 + 2a 2 (Formula 4)

最後に、複数の加速度補間が、加速度多項式α(n)及び加速度係数に従って計算される(S116)。   Finally, a plurality of acceleration interpolations are calculated according to the acceleration polynomial α (n) and the acceleration coefficient (S116).

位置多項式θ(n)、速度多項式ω(n)、及び加速度多項式α(n)は同相で、式1、式3、及び式4に従って上位コントローラ10とサーボドライバ20との間のサーボラグを大幅に低減する。   The position polynomial θ (n), the velocity polynomial ω (n), and the acceleration polynomial α (n) are in phase, and the servo lag between the host controller 10 and the servo driver 20 is greatly increased according to Equation 1, Equation 3, and Equation 4. To reduce.

上位コントローラからサーボドライバに送信され、サーボドライバによってサンプリングされる位置コマンドの概略図である図4を参照する。サーボドライバ20と上位コントローラ10との間の位置コマンドθ(i)が同期していない場合、位置多項式θ(n)は、サーボドライバ20と、上位コントローラ10の制御ループ2046との間で位置コマンドθ(i)を同期させた変更位置多項式θ(t)となるように変更される。   Reference is made to FIG. 4, which is a schematic diagram of position commands transmitted from the host controller to the servo driver and sampled by the servo driver. When the position command θ (i) between the servo driver 20 and the host controller 10 is not synchronized, the position polynomial θ (n) is a position command between the servo driver 20 and the control loop 2046 of the host controller 10. The change is made so that the change position polynomial θ (t) is synchronized with θ (i).

位置多項式θ(n)(式1)内の変数nを変数tで置換して、変更位置多項式θ(t)(式5)を得る。但し、t=Ta+n×Ts−Tcである。変更位置多項式θ(t)は、以下のように表される。
X(t)=a5 *(t)5+a4 *(t)4+a3 *(t)3+a2 *(t)2+a1 *t+a0 (式5)
式中、
Taは、位置コマンドθ(i)が最初に制御ループ2046に送信される時間であり、
Tsは、制御ループ2046によってサンプリングされる位置コマンドθ(i)の時間であり、
Tcは、上位コントローラ10の位置コマンドθ(i)の周期である。
A variable position polynomial θ (t) (Expression 5) is obtained by replacing the variable n in the position polynomial θ (n) (Expression 1) with the variable t. However, t = Ta + n × Ts−Tc. The changed position polynomial θ (t) is expressed as follows.
X (t) = a 5 * (t) 5 + a 4 * (t) 4 + a 3 * (t) 3 + a 2 * (t) 2 + a 1 * t + a 0 (Formula 5)
Where
Ta is the time at which the position command θ (i) is first transmitted to the control loop 2046,
Ts is the time of the position command θ (i) sampled by the control loop 2046,
Tc is the period of the position command θ (i) of the host controller 10.

また、制御ループ2046のサンプリングされた複数の位置コマンドx0、x1、・・・、x7は、式5に従って計算することができる。   Also, a plurality of sampled position commands x0, x1,..., X7 of the control loop 2046 can be calculated according to Equation 5.

同様に、変更速度多項式ω(t)は、変更位置多項式θ(t)を一次微分することによって計算することができ、変更加速度多項式α(t)も、変更速度多項式ω(t)を一次微分することによって計算することができる。   Similarly, the change speed polynomial ω (t) can be calculated by first-order differentiation of the change position polynomial θ (t), and the change acceleration polynomial α (t) can be calculated by first-order differentiation of the change speed polynomial ω (t). Can be calculated by

結論として、本発明は以下の諸利点を有する。
1.上位コントローラからサーボドライバに送信される位置コマンドを計算して、高次微分可能連続多項式としてリカバリすることができる。
2.位置多項式、速度多項式、及び加速度多項式は同相で、上位コントローラとサーボドライバとの間のサーボラグを大幅に低減する。
3.一定要素を有する変換行列に従っての位置係数、位置補間、速度係数、及び加速度係数の計算が簡単である。
4.サーボドライバの制御ループのサンプリングされた複数の位置コマンドが、サーボドライバと上位コントローラとの間で位置コマンドを同期させるように計算される。
In conclusion, the present invention has the following advantages.
1. The position command transmitted from the host controller to the servo driver can be calculated and recovered as a high-order differentiable continuous polynomial.
2. The position polynomial, velocity polynomial, and acceleration polynomial are in phase and greatly reduce the servo lag between the host controller and the servo driver.
3. Calculation of position coefficient, position interpolation, speed coefficient, and acceleration coefficient according to a transformation matrix having constant elements is simple.
4). A plurality of sampled position commands in the servo driver control loop are calculated to synchronize the position commands between the servo driver and the host controller.

本発明について本発明の好ましい実施形態を参照して説明したが、本発明が好ましい実施形態の詳細に制限されないことが理解されよう。様々な置換及び変更が上記説明において示唆されており、当業者ならば他の置換及び変更も思い付くであろう。したがって、このようなすべての置換及び変更は、添付の特許請求の範囲において規定される本発明の範囲内に包含されるものと意図される。   Although the invention has been described with reference to preferred embodiments of the invention, it will be understood that the invention is not limited to the details of the preferred embodiments. Various substitutions and modifications have been suggested in the above description, and other substitutions and modifications will occur to those skilled in the art. Accordingly, all such substitutions and modifications are intended to be included within the scope of this invention as defined in the appended claims.

Claims (6)

数値制御システムにおいて、離散した位置コマンド(離散位置命令)から、位置補間計算により、連続した原曲線を復元するためのリカバリコマンド(復元された位置命令)を計算する方法であって、前記数値制御システムは、モータを駆動するサーボドライバに離散した位置コマンド(離散位置命令)を提供する上位コントローラを備え、該方法は、前記サーボドライバが前記上位コントローラと連携して
(a)前記上位コントローラから前記サーボドライバへ提供される、前記離散した位置コマンドを記憶するためのメモリ空間を提供することと、
前記離散した位置コマンドを記憶するためのメモリ空間を提供することと、
(b)k×1要素を有し、1つの現在位置および(k−1)個の先行位置を含む離散した位置コマンド[θ(-k+1)]からなる位置行列を読み取ることと、
(c)k×k要素を有し、前記位置行列を表示するための(k−1)次の変数[(-k+1) k-1 ]からなる変換行列(M)を読み取ることと、
(d)前記変換行列(M)と前記位置行列を乗算することにより、前記k×1要素を有する位置行列を表示するための位置多項式における、(k−1)次の変数[(-k+1) k-1 ]の係数である複数の位置係数(a k-1 )を計算することと、
(e)前記(k−1)次の変数[(-k+1) k-1 ]及び前記位置係数(a k-1 )からなる位置多項式[θ(n)]に従って補間計算により複数の位置コマンド[θ(i)]を計算することと、を含む方法。
In a numerical control system , a method for calculating a recovery command (restored position command) for restoring a continuous original curve from a discrete position command (discrete position command) by position interpolation calculation , the numerical control system comprises a host controller for providing position commands discrete servo driver which drives the motor (discrete position instruction), the method, the servo driver in conjunction with the host controller,
(A) providing a memory space for storing the discrete position commands provided from the host controller to the servo driver ;
Providing a memory space for storing the discrete position commands;
(B) have a k × 1 element, and reading the one of the current position and (k-1) pieces discrete locations command including leading position of [θ (-k + 1)] position matrix of,
(C) have a k × k elements, and reading the position matrix for displaying the (k-1) following variables [(-k + 1) k- 1] consists of the transformation matrix (M),
(D) Multiplying the transformation matrix (M) by the position matrix to display the position matrix having the k × 1 element , the (k−1) -order variable [(−k + 1) calculating a plurality of position coefficients (a k-1 ) that are coefficients of k-1 ] ;
(E) A plurality of positions by interpolation calculation according to a position polynomial [θ (n)] consisting of the (k−1) -order variable [(−k + 1) k−1 ] and the position coefficient (a k−1 ). Calculating a command [θ (i)] .
(f)前記ステップ(d)後に、前記位置多項式を一次微分することにより、(k−2)次の速度多項式及び前記速度多項式の複数の速度係数を計算することと、
(g)前記速度多項式及び前記速度係数に従って複数の速度補間を計算することと、
をさらに含む、請求項1に記載の方法。
(F) After the step (d), by calculating a first-order differentiation of the position polynomial, (k-2) calculating a speed polynomial of degree and a plurality of speed coefficients of the speed polynomial;
(G) calculating a plurality of velocity interpolations according to the velocity polynomial and the velocity coefficient;
The method of claim 1, further comprising:
(h)前記ステップ(g)後に、前記速度多項式を一次微分することにより、(k−3)次の加速度多項式及び前記加速度多項式の複数の加速度係数を計算することと、
(i)前記加速度多項式及び前記加速度係数に従って複数の加速度補間を計算することと、
をさらに含む、請求項に記載の方法。
(H) After the step (g), by calculating a first-order differentiation of the velocity polynomial, (k-3) calculating a third-order acceleration polynomial and a plurality of acceleration coefficients of the acceleration polynomial;
(I) calculating a plurality of acceleration interpolations according to the acceleration polynomial and the acceleration coefficient;
The method of claim 2 further comprising:
前記位置多項式は、前記サーボドライバと前記上位コントローラの前記制御ループとの間で前記位置コマンドを同期させる変更位置多項式となるように変更され、前記位置多項式は以下のように表され、
θ(n)=a(k-1) *n(k-1)+a(k-2) *n(k-2)+a(k-3) *n(k-3)+...+a1 *n+a0
前記位置多項式の変数nは変数tで置換されて、前記変更位置多項式が得られ、前記変更位置多項式は以下のように表され、
θ(t)=a(k-1) *(t)(k-1)+a(k-2) *(t)(k-2)+a(k-3) *(t)(k-3)+...+a1*t+a0
式中、t=Ta+n×Ts−Tcであり、
Taは、前記位置コマンドが最初に前記制御ループに送信される時間であり、
Tsは、前記制御ループによってサンプリングされる前記位置コマンドの時間であり、
Tcは、前記上位コントローラの前記位置コマンドの周期である、請求項1に記載の方法。
The position polynomial is changed to be a changed position polynomial that synchronizes the position command between the servo driver and the control loop of the host controller, and the position polynomial is expressed as follows:
θ (n) = a (k-1) * n (k-1) + a (k-2) * n (k-2) + a (k-3) * n (k-3) + ... + a 1 * n + a 0
The variable n of the position polynomial is replaced with the variable t to obtain the modified position polynomial, and the modified position polynomial is expressed as follows:
θ (t) = a (k-1) * (t) (k-1) + a (k-2) * (t) (k-2) + a (k-3) * (t) (k- 3) + ... + a1 * t + a0
Where t = Ta + n × Ts−Tc,
Ta is the time at which the position command is first sent to the control loop;
Ts is the time of the position command sampled by the control loop;
The method according to claim 1, wherein Tc is a period of the position command of the host controller.
前記変更位置多項式は一次微分されて、変更速度多項式が得られる、請求項に記載の方法。 The method of claim 4 , wherein the modified position polynomial is first-order differentiated to obtain a modified rate polynomial. 前記変更速度多項式は一次微分されて、変更加速度多項式が得られる、請求項に記載の方法。 The method of claim 5 , wherein the modified speed polynomial is first-order differentiated to obtain a modified acceleration polynomial.
JP2009056431A 2009-03-10 2009-03-10 How to calculate recovery commands for numerical control systems Active JP5343285B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009056431A JP5343285B2 (en) 2009-03-10 2009-03-10 How to calculate recovery commands for numerical control systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009056431A JP5343285B2 (en) 2009-03-10 2009-03-10 How to calculate recovery commands for numerical control systems

Publications (2)

Publication Number Publication Date
JP2010211475A JP2010211475A (en) 2010-09-24
JP5343285B2 true JP5343285B2 (en) 2013-11-13

Family

ID=42971568

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009056431A Active JP5343285B2 (en) 2009-03-10 2009-03-10 How to calculate recovery commands for numerical control systems

Country Status (1)

Country Link
JP (1) JP5343285B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3586110B2 (en) * 1998-08-13 2004-11-10 三菱電機株式会社 Trajectory control device
JP2001242921A (en) * 2000-03-01 2001-09-07 Canon Inc Control unit for machining equipment, control method for machining equipment, machining system, and storage medium
JP3592628B2 (en) * 2000-12-06 2004-11-24 恒彦 山崎 Numerical control method

Also Published As

Publication number Publication date
JP2010211475A (en) 2010-09-24

Similar Documents

Publication Publication Date Title
EP1020279B1 (en) Power consumption display device for machine
JP2004288164A (en) Synchronous control device
CN103197607B (en) Servo driver and starting point and finishing point synchronous method in open type numerical control system
JP2019067046A (en) Control system and control unit
TWI379180B (en) Method of calculating recovery commands for numerical controlled system
EP1577725B1 (en) Numerical controller
JP2006172149A (en) Controller at end point of machine
CN103728923A (en) High-efficiency high-stability flexible acceleration and deceleration control method for numerical control system
CN110941242B (en) Motor control device
JP5726328B2 (en) Motor control device
JP2019049947A (en) Controller and control method
JP2006350768A (en) Motion control system
WO2001044882A1 (en) Method and system for numerical control of machine tool
JPH11338530A (en) Controller for working machine
CN111030552B (en) Synchronous control method of servo driver and servo driver
CN107570786B (en) Flying shear control system and method
JP5343285B2 (en) How to calculate recovery commands for numerical control systems
US11300946B2 (en) Control component and method for determining an adapted master value of a master axis
CN101770220B (en) Command back calculation method for numerical control system
US8060238B2 (en) Method of calculating recovery commands for numerical controlled system
JP5362146B1 (en) Numerical control apparatus and numerical control system
CN103941646A (en) Servo positioning control system and method
CN108121299B (en) The numerical control device of lathe
Wansheng et al. A new model of WEDM-CNC system with digitizer/player architecture
Lim et al. Position control of XY table in CNC machining center with non-rigid ballscrew

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120731

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121024

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121119

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20121120

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: 20130611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130624

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130726

R150 Certificate of patent or registration of utility model

Ref document number: 5343285

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250