JP6000652B2 - Pulse motor control device and pulse signal generation method - Google Patents
Pulse motor control device and pulse signal generation method Download PDFInfo
- Publication number
- JP6000652B2 JP6000652B2 JP2012119883A JP2012119883A JP6000652B2 JP 6000652 B2 JP6000652 B2 JP 6000652B2 JP 2012119883 A JP2012119883 A JP 2012119883A JP 2012119883 A JP2012119883 A JP 2012119883A JP 6000652 B2 JP6000652 B2 JP 6000652B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- holding means
- acceleration
- speed
- jerk
- 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
Links
Images
Landscapes
- Control Of Electric Motors In General (AREA)
- Control Of Stepping Motors (AREA)
Description
本発明は、パルス信号によりパルスモータを制御するパルスモータ制御装置およびパルス信号生成方法に関する。 The present invention relates to a pulse motor control device and a pulse signal generation method for controlling a pulse motor with a pulse signal.
パルスモータ(「ステッピングモータ」ともいう)を制御するためのパルス信号を発生して、パルスモータを制御するパルスモータ制御装置(パルスジェネレータ)が知られている(例えば、特許文献1参照)。 2. Description of the Related Art A pulse motor control device (pulse generator) that generates a pulse signal for controlling a pulse motor (also referred to as a “stepping motor”) and controls the pulse motor is known (see, for example, Patent Document 1).
ここで、パルスモータは、パルスモータ制御装置から発生されるパルス信号により駆動され、パルス信号における出力間隔である周波数に対応する回転速度でパルスモータが回転する。また、パルス信号のパルス数に対応する角度だけパルスモータが回転し、これが、パルスモータにより駆動する移動機構の移動距離となる。
したがって、パルスモータの回転速度(移動機構の速度)やパルスモータの回転角(移動機構の移動距離)の制御を行うためには、パルスモータ制御装置から発生されるパルス信号の周波数(単位時間あたりのパルス数)およびパルス数を制御する必要がある。
Here, the pulse motor is driven by a pulse signal generated from the pulse motor control device, and the pulse motor rotates at a rotation speed corresponding to a frequency that is an output interval in the pulse signal. Further, the pulse motor rotates by an angle corresponding to the number of pulses of the pulse signal, and this becomes the moving distance of the moving mechanism driven by the pulse motor.
Therefore, in order to control the rotation speed of the pulse motor (the speed of the moving mechanism) and the rotation angle of the pulse motor (the moving distance of the moving mechanism), the frequency of the pulse signal generated from the pulse motor control device (per unit time) And the number of pulses needs to be controlled.
通常、パルスモータの駆動制御においては、時間に対する速度制御(即ち、パルス信号の周波数制御)を台形駆動制御として行う(例えば、特許文献2の第1図参照)。 Usually, in pulse motor drive control, speed control with respect to time (that is, frequency control of a pulse signal) is performed as trapezoidal drive control (see, for example, FIG. 1 of Patent Document 2).
ここで、図13を用いて、台形駆動制御について説明する。図13は、台形駆動制御を説明するグラフであり、(a)は横軸を時間[s](second)とし縦軸を速度[pps](pulse per second)としたグラフであり、(b)は横軸を時間[s]とし縦軸を加速度[pps/s]としたグラフである。 Here, trapezoidal drive control will be described with reference to FIG. FIG. 13 is a graph for explaining trapezoidal drive control. FIG. 13A is a graph in which the horizontal axis represents time [s] (second) and the vertical axis represents speed [pps] (pulse per second). Is a graph with the horizontal axis representing time [s] and the vertical axis representing acceleration [pps / s].
即ち、図13(b)に示すように、まず、パルスモータの起動時から一定の正の加速度を与える(正定加速)ことにより、図13(a)に示すように、速度(パルス信号の周波数)を徐々に上昇させてパルスモータの回転速度を徐々に上昇させる(加速区間)。 That is, as shown in FIG. 13B, first, by giving a constant positive acceleration (positive constant acceleration) from the time of starting the pulse motor, as shown in FIG. ) Is gradually increased to gradually increase the rotational speed of the pulse motor (acceleration section).
次に、パルスモータの回転速度が目標の速度に達すると、図13(b)に示すように、加速度をゼロにする(加速=0)ことで、図13(a)に示すように、速度(パルス信号の周波数)を一定にしてパルスモータの回転速度を一定にする(定速区間)。 Next, when the rotational speed of the pulse motor reaches the target speed, as shown in FIG. 13B, the acceleration is set to zero (acceleration = 0), and as shown in FIG. (Pulse signal frequency) is made constant, and the rotation speed of the pulse motor is made constant (constant speed section).
更に、パルスモータの停止時には、図13(b)に示すように、一定の負の加速度を与える(負定加速)ことにより、図13(a)に示すように、速度(パルス信号の周波数)を徐々に低下させてパルスモータの回転速度を徐々に低下させ(減速区間)、目標速度に到達後にパルス信号を停止させる。 Further, when the pulse motor is stopped, as shown in FIG. 13B, a constant negative acceleration is given (negative constant acceleration), so that the speed (frequency of the pulse signal) is obtained as shown in FIG. 13A. Is gradually reduced to gradually reduce the rotational speed of the pulse motor (deceleration section), and the pulse signal is stopped after reaching the target speed.
ここで、図13の加速区間に注目して、加速区間における速度制御について図14を用いて更に説明する。図14は、台形駆動制御における加速区間を説明するグラフであり、(a)は横軸を時間[s]とし縦軸を速度[pps]としたグラフであり、(b)は横軸を時間[s]とし縦軸を加速度[pps/s]としたグラフである。 Here, paying attention to the acceleration section of FIG. 13, the speed control in the acceleration section will be further described with reference to FIG. FIG. 14 is a graph for explaining an acceleration section in trapezoidal drive control. (A) is a graph in which the horizontal axis is time [s] and the vertical axis is speed [pps], and (b) is the time in the horizontal axis. It is a graph which made acceleration [pps / s] the vertical axis | shaft with [s].
図14(a)に示すように、速度の初速度をFL[pps]とし、速度の到達速度(目標の速度)をFH[pps]とし、速度が到達速度FHに到達までのパルス数をN[p](pulse)とし、図14(b)に示すように、加速区間における加速度をA[pps/s]とする。 As shown in FIG. 14A, the initial speed is FL [pps], the speed arrival speed (target speed) is FH [pps], and the number of pulses until the speed reaches the speed FH is N. [P] (pulse), and the acceleration in the acceleration section is A [pps / s] as shown in FIG.
一般的にこの時の演算は、速度が初速度FLから到達速度FHに到達までの時間をtn [s]とすると、以下の式(1)で表すことができる。 In general, the calculation at this time can be expressed by the following formula (1), where t n [s] is the time required for the speed to reach the arrival speed FH from the initial speed FL.
ここで、パルスモータによる駆動において、常に、1パルス毎の移動距離が等しいことから、速度が初速度FLから到達速度FHに到達までのパルス数Nは、以下の式(2)で表すことができる。 Here, in the drive by the pulse motor, since the moving distance for each pulse is always the same, the number of pulses N until the speed reaches the arrival speed FH from the initial speed FL can be expressed by the following equation (2). it can.
そして、これら式(1)および式(2)より、時間tn は、以下の式(3)という演算式が導かれる。また、加速度Aは、以下の式(4)という演算式が導かれる。なお、式(3)および式(4)の導出は、非特許文献1および非特許文献2に開示されている。
From these formulas (1) and (2), the following formula (3) is derived for the time t n . The acceleration A is derived from the following equation (4). The derivation of Equation (3) and Equation (4) is disclosed in
従来のパルスモータ制御装置は、これら式(1)から式(4)に示す演算式を用いて、パルス生成タイミングを演算、または、あらかじめ演算結果を記憶しておき記憶された演算結果を読み出して使用することにより、パルスモータの回転速度制御を可能としている。 The conventional pulse motor control device calculates the pulse generation timing or stores the calculation result in advance and reads the stored calculation result using the calculation formulas shown in the formulas (1) to (4). By using it, it is possible to control the rotational speed of the pulse motor.
なお、図13および図14において、パルスモータ制御装置の速度制御を台形駆動制御するものとして説明した。パルスモータ制御装置の速度制御は、この台形駆動制御の他にも、加速度の急激な変化を抑制する制御方法として、2次関数や三角関数を使用したり、複数の直線を組み合せたりする(例えば、加速区間を「低加速区間、高加速区間、低加速区間」の3つの直線で駆動制御することにより、加速度の急激な変化を低減させる)制御方法等もある。 13 and 14, the speed control of the pulse motor control device has been described as performing trapezoidal drive control. In addition to the trapezoidal drive control, the speed control of the pulse motor control device uses a quadratic function or a trigonometric function or a combination of a plurality of straight lines as a control method for suppressing a rapid change in acceleration (for example, Further, there is a control method in which the acceleration section is driven and controlled by three straight lines of “low acceleration section, high acceleration section, and low acceleration section” to reduce a rapid change in acceleration).
しかしながら、前述のような演算によるパルスモータの回転速度制御の場合、全ての演算をリアルタイムで行うものとすると、演算が複雑で時間がかかるため、パルスモータの高速動作に適切に応答することが困難になってくるという課題がある。 However, in the case of the rotational speed control of the pulse motor by the above-described calculation, if all the calculations are performed in real time, the calculation is complicated and takes time, and it is difficult to respond appropriately to the high-speed operation of the pulse motor. There is a problem of becoming.
また、低速時のスローアップが不要な場合であっても、複雑な演算を行うこととなるため、演算に時間を要して、パルスモータの動作時間がかかり、システム全体のスループットの低下をまねく場合が生じてしまうという課題がある。 Even if slow-up at low speed is not required, complicated calculations are performed, so it takes time to calculate and the operation time of the pulse motor takes time, leading to a reduction in the throughput of the entire system. There is a problem that cases arise.
一方、これらの課題を解決する為に、演算式の簡易化を行うと、演算誤差の補正演算を追加しても、累積演算誤差を発生させる場合が生じてしまうという課題がある。 On the other hand, if the arithmetic expression is simplified in order to solve these problems, there is a problem that a cumulative calculation error may occur even if a calculation error correction calculation is added.
また、あらかじめ演算結果をメモリ等のデータ保持手段に記憶させておき、記憶された演算結果を読み出して使用する方式においては、必要な駆動パターン数や、駆動時間が増加するとデータ保持手段の容量が増大し、システムとしての対応が困難になってくるという課題がある。 In addition, in the method of storing the calculation result in a data holding unit such as a memory in advance and reading and using the stored calculation result, the capacity of the data holding unit increases as the number of necessary driving patterns and the driving time increase. There is a problem that it is increased and it becomes difficult to cope with the system.
したがって、演算負荷の低減が可能な演算式で、演算誤差が少ない演算方式を採用することが望ましい。また、必要な加速度の変化はシステムにより値が異なるので、不要な低加速変化をすることなく、システム毎に最適化を選択できることが望ましい。 Therefore, it is desirable to employ a calculation method that can reduce the calculation load and has a small calculation error. Further, since the value of the required change in acceleration varies depending on the system, it is desirable that optimization can be selected for each system without making unnecessary low acceleration changes.
そこで、本発明は、パルス生成タイミングの演算における演算誤差が少なく、演算負荷の低減が可能なパルスモータ制御装置およびパルス信号生成方法を提供することを課題とする。 Therefore, an object of the present invention is to provide a pulse motor control device and a pulse signal generation method that can reduce a calculation load with a small calculation error in calculation of pulse generation timing.
このような課題を解決するために、本発明は、制御区間ごとに前記制御区間の加加速度、加速度、速度の初期値および前記制御区間の終了条件が記憶される記憶手段と、前記記憶手段に記憶された前記制御区間の終了条件に基づいて、現在の制御区間から次の制御区間へと切り替わる点である変化点を検出する変化点検出手段と、パルス生成タイミングを出力する有界演算器と、前記有界演算器が出力した前記パルス生成タイミングに基づいて、パルスモータを制御するためのパルス信号を生成するパルス生成手段と、を備え、前記有界演算器は、加加速度を保持する加加速度値保持手段、加速度を保持する加速度値保持手段、速度を保持する速度値保持手段、距離を保持する距離値保持手段、第1の1/2演算手段、第2の1/2演算手段、および、1/3演算手段を有し、前記変化点検出手段が変化点を検出した場合、前記制御区間の加加速度、加速度、速度の初期値が前記加加速度値保持手段、前記加速度値保持手段、前記速度値保持手段に入力され、前記変化点検出手段が変化点を検出していない場合、前記加加速度値保持手段に保持された加加速度値と、前記加速度値保持手段に保持された加速度値とを、加算演算した値が前記加速度値保持手段に入力され、前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段で処理した値と、前記加速度値保持手段に保持された加速度値と、前記速度値保持手段に保持された速度値とを、加算演算した値が前記速度値保持手段に入力され、前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段および前記1/3演算手段で処理した値と、前記加速度値保持手段に保持された加速度値を前記第2の1/2演算手段で処理した値と、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値以上となると前記パルス生成タイミングを出力するとともに、前記加算演算した値から前記閾値を減算した値が前記距離値保持手段に入力され、前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段および前記1/3演算手段で処理した値と、前記加速度値保持手段に保持された加速度値を前記第2の1/2演算手段で処理した値と、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値未満となると、該加算演算した値が前記距離値保持手段に入力されることを特徴とするパルスモータ制御装置である。
また、本発明は、制御区間ごとに前記制御区間の加加速度、加速度、速度の初期値および前記制御区間の終了条件が記憶される記憶手段と、前記記憶手段に記憶された前記制御区間の終了条件に基づいて、現在の制御区間から次の制御区間へと切り替わる点である変化点を検出する変化点検出手段と、パルス生成タイミングを出力する有界演算器と、前記有界演算器が出力した前記パルス生成タイミングに基づいて、パルスモータを制御するためのパルス信号を生成するパルス生成手段と、を備え、前記有界演算器は、加加速度を保持する加加速度値保持手段、加速度を保持する加速度値保持手段、速度を保持する速度値保持手段、および、距離を保持する距離値保持手段を有し、前記変化点検出手段が変化点を検出した場合、前記制御区間の加加速度、加速度、速度の初期値が前記加加速度値保持手段、前記加速度値保持手段、、前記速度値保持手段に入力され、前記変化点検出手段が変化点を検出していない場合、前記加加速度値保持手段に保持された加加速度値と、前記加速度値保持手段に保持された加速度値とを、加算演算した値が前記加速度値保持手段に入力され、前記加速度値保持手段に保持された加速度値と、前記速度値保持手段に保持された速度値とを、加算演算した値が前記速度値保持手段に入力され、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値以上となると前記パルス生成タイミングを出力するとともに、前記加算演算した値から前記閾値を減算した値が前記距離値保持手段に入力され、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値未満となると、該加算演算した値が前記距離値保持手段に入力されることを特徴とするパルスモータ制御装置である。
In order to solve such a problem, the present invention provides storage means for storing an initial value of jerk, acceleration and speed of the control section and an end condition of the control section for each control section; based on the termination condition of the stored said control section, and the change point detection means for detecting a changing point is that switches from the current control section to the next control interval, bounded arithmetic unit for outputting a pulse generation timing And pulse generation means for generating a pulse signal for controlling a pulse motor based on the pulse generation timing output from the bounded arithmetic unit, and the bounded arithmetic unit holds jerk Jerk value holding means, acceleration value holding means for holding acceleration, speed value holding means for holding speed, distance value holding means for holding distance, first 1/2 calculation means, second 1/2 calculation means And when the change point detecting means detects a change point, initial values of jerk, acceleration and speed of the control section are the jerk value holding means and the acceleration value holding means. When the change point detection means does not detect a change point, the jerk value held in the jerk value holding means and the acceleration held in the acceleration value holding means are input to the speed value holding means. A value obtained by adding the value to the acceleration value holding unit, the value obtained by processing the jerk value held in the jerk value holding unit by the first ½ calculating unit, and the acceleration value A value obtained by adding the acceleration value held in the holding means and the speed value held in the speed value holding means is input to the speed value holding means, and the jerk held in the jerk value holding means The value of the first ½ A value processed by the calculating means and the 1/3 calculating means, a value obtained by processing the acceleration value held in the acceleration value holding means by the second 1/2 calculating means, and held in the speed value holding means. When the value obtained by adding the speed value and the distance value held in the distance value holding means exceeds a predetermined threshold value, the pulse generation timing is output, and the threshold value is subtracted from the added value. A value input to the distance value holding means, a value obtained by processing the jerk value held in the jerk value holding means by the first 1/2 calculating means and the 1/3 calculating means, and the acceleration value A value obtained by processing the acceleration value held in the holding means by the second ½ calculating means, a speed value held in the speed value holding means, and a distance value held in the distance value holding means. , The value obtained by the addition operation is a predetermined threshold If the value is less than the value, the value obtained by the addition calculation is input to the distance value holding means .
Further, the present invention provides storage means for storing initial values of jerk, acceleration and speed of the control section and end conditions of the control section for each control section, and end of the control section stored in the storage means. Based on the conditions, a change point detecting means for detecting a change point that is a point to switch from the current control section to the next control section, a bounded arithmetic unit that outputs a pulse generation timing, and the bounded arithmetic unit output Pulse generation means for generating a pulse signal for controlling the pulse motor based on the pulse generation timing, and the bounded arithmetic unit holds jerk value holding means for holding jerk, and holds acceleration An acceleration value holding means for holding, a speed value holding means for holding a speed, and a distance value holding means for holding a distance, and when the change point detecting means detects a change point, the control section When initial values of jerk, acceleration, and speed are input to the jerk value holding means, the acceleration value holding means, and the speed value holding means, and the change point detecting means does not detect a change point, A value obtained by adding the jerk value held in the acceleration value holding means and the acceleration value held in the acceleration value holding means is input to the acceleration value holding means and held in the acceleration value holding means A value obtained by adding the acceleration value and the velocity value held in the velocity value holding unit is input to the velocity value holding unit, the velocity value held in the velocity value holding unit, and the distance value holding unit When the value obtained by adding the distance value held in is equal to or greater than a predetermined threshold value, the pulse generation timing is output, and the value obtained by subtracting the threshold value from the added value is input to the distance value holding means. When the value obtained by adding the speed value held in the speed value holding means and the distance value held in the distance value holding means is less than a predetermined threshold value, the value obtained by the addition calculation is the distance value. The pulse motor control device is characterized by being inputted to the holding means.
また、本発明は、制御区間ごとに前記制御区間の加加速度、加速度、速度の初期値および前記制御区間の終了条件が記憶される記憶手段と、前記記憶手段に記憶された前記制御区間の終了条件に基づいて、現在の制御区間から次の制御区間へと切り替わる点である変化点を検出する変化点検出手段と、加加速度を保持する加加速度値保持手段、加速度を保持する加速度値保持手段、速度を保持する速度値保持手段、距離を保持する距離値保持手段、第1の1/2演算手段、第2の1/2演算手段、および、1/3演算手段を有し、パルス生成タイミングを出力する有界演算器と、前記有界演算器が出力した前記パルス生成タイミングに基づいて、パルスモータを制御するためのパルス信号を生成するパルス生成手段と、を備えるパルスモータ制御装置のパルス信号生成方法であって、前記有界演算器が、前記変化点検出手段が変化点を検出すると、前記制御区間の加加速度、加速度、速度の初期値を前記加加速度値保持手段、前記加速度値保持手段、前記速度値保持手段に入力するステップと、前記加加速度値保持手段に保持された加加速度値と、前記加速度値保持手段に保持された加速度値とを、加算演算した値を前記加速度値保持手段に入力するステップと、前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段で処理した値と、前記加速度値保持手段に保持された加速度値と、前記速度値保持手段に保持された速度値とを、加算演算した値を前記速度値保持手段に入力するステップと、前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段および前記1/3演算手段で処理した値と、前記加速度値保持手段に保持された加速度値を前記第2の1/2演算手段で処理した値と、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値以上となると前記パルス生成タイミングを出力するとともに、前記加算演算した値から前記閾値を減算した値を前記距離値保持手段に入力し、前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段および前記1/3演算手段で処理した値と、前記加速度値保持手段に保持された加速度値を前記第2の1/2演算手段で処理した値と、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値未満となると、該加算演算した値を前記距離値保持手段に入力するステップと、を実行することを特徴とするパルスモータ制御装置のパルス信号生成方法である。
また、本発明は、制御区間ごとに前記制御区間の加加速度、加速度、速度の初期値および前記制御区間の終了条件が記憶される記憶手段と、前記記憶手段に記憶された前記制御区間の終了条件に基づいて、現在の制御区間から次の制御区間へと切り替わる点である変化点を検出する変化点検出手段と、加加速度を保持する加加速度値保持手段、加速度を保持する加速度値保持手段、速度を保持する速度値保持手段、および、距離を保持する距離値保持手段を有し、パルス生成タイミングを出力する有界演算器と、前記有界演算器が出力した前記パルス生成タイミングに基づいて、パルスモータを制御するためのパルス信号を生成するパルス生成手段と、を備えるパルスモータ制御装置のパルス信号生成方法であって、前記有界演算器が、前記変化点検出手段が変化点を検出すると、前記制御区間の加加速度、加速度、速度の初期値を前記加加速度値保持手段、前記加速度値保持手段、前記速度値保持手段に入力するステップと、前記加加速度値保持手段に保持された加加速度値と、前記加速度値保持手段に保持された加速度値とを、加算演算した値を前記加速度値保持手段に入力するステップと、前記加速度値保持手段に保持された加速度値と、前記速度値保持手段に保持された速度値とを、加算演算した値を前記速度値保持手段に入力するステップと、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値以上となると前記パルス生成タイミングを出力するとともに、前記加算演算した値から前記閾値を減算した値を前記距離値保持手段に入力するステップと、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値未満となると、該加算演算した値を前記距離値保持手段に入力するステップと、を実行することを特徴とするパルスモータ制御装置のパルス信号生成方法である。
Further, the present invention provides storage means for storing initial values of jerk, acceleration and speed of the control section and end conditions of the control section for each control section, and end of the control section stored in the storage means. Based on conditions, a change point detecting means for detecting a change point that is a point at which the current control section is switched to the next control section, a jerk value holding means for holding jerk, and an acceleration value holding means for holding acceleration A speed value holding means for holding a speed, a distance value holding means for holding a distance, a first 1/2 calculation means, a second 1/2 calculation means, and a 1/3 calculation means, and a pulse generation A pulse motor comprising: a bounded arithmetic unit that outputs timing; and pulse generation means that generates a pulse signal for controlling the pulse motor based on the pulse generation timing output from the bounded arithmetic unit. A pulse signal generation method for a control device, wherein the bounded arithmetic unit detects initial values of jerk, acceleration, and velocity of the control section when the change point detecting means detects a change point. The acceleration value holding means, the step of inputting to the speed value holding means, the jerk value held in the jerk value holding means, and the acceleration value held in the acceleration value holding means are added and calculated. A step of inputting a value to the acceleration value holding means; a value obtained by processing the jerk value held in the jerk value holding means by the first 1/2 calculating means; and a value held in the acceleration value holding means. A value obtained by adding the acceleration value and the velocity value held in the velocity value holding means to the velocity value holding means; and the jerk value held in the jerk value holding means
Further, the present invention provides storage means for storing initial values of jerk, acceleration and speed of the control section and end conditions of the control section for each control section, and end of the control section stored in the storage means. Based on conditions, a change point detecting means for detecting a change point that is a point at which the current control section is switched to the next control section, a jerk value holding means for holding jerk, and an acceleration value holding means for holding acceleration A speed value holding means for holding the speed, a distance value holding means for holding the distance, a bounded arithmetic unit that outputs a pulse generation timing, and the pulse generation timing output by the bounded arithmetic unit A pulse signal generation method for a pulse motor control device comprising: a pulse generation means for generating a pulse signal for controlling the pulse motor, wherein the bounded arithmetic unit comprises: When the conversion point detecting means detects the change point, the initial values of the jerk, acceleration and speed of the control section are input to the jerk value holding means, the acceleration value holding means, and the speed value holding means; A step of inputting a value obtained by adding the jerk value held in the jerk value holding means and the acceleration value held in the acceleration value holding means to the acceleration value holding means; and A step of inputting, into the speed value holding means, a value obtained by adding the acceleration value held and the speed value held in the speed value holding means, the speed value held in the speed value holding means, When the value obtained by adding the distance value held in the distance value holding means exceeds a predetermined threshold, the pulse generation timing is output, and the threshold is subtracted from the added value. When the value obtained by adding the step of inputting to the distance value holding means, the speed value held in the speed value holding means, and the distance value held in the distance value holding means is less than a predetermined threshold value. And a step of inputting the value obtained by the addition calculation to the distance value holding means, and a pulse signal generation method for a pulse motor control device.
本発明によれば、パルス生成タイミングの演算における演算誤差が少なく、演算負荷の低減が可能なパルスモータ制御装置およびパルス信号生成方法を提供することができる。 According to the present invention, it is possible to provide a pulse motor control device and a pulse signal generation method that can reduce a calculation load with a small calculation error in calculation of pulse generation timing.
以下、本発明を実施するための形態(以下「実施形態」という)について、適宜図面を参照しながら詳細に説明する。なお、各図において、共通する部分には同一の符号を付し重複した説明を省略する。 Hereinafter, modes for carrying out the present invention (hereinafter referred to as “embodiments”) will be described in detail with reference to the drawings as appropriate. In each figure, common portions are denoted by the same reference numerals, and redundant description is omitted.
≪パルスモータ制御装置1≫
図1を用いて本実施形態に係るパルスモータ制御装置1について説明する。図1は、パルスモータ13を制御する本実施形態に係るパルスモータ制御装置1の構成ブロック図である。
≪Pulse
A pulse
パルスモータ制御装置1は、パルスモータ13を駆動させるためのパルス信号を生成して駆動回路12に送信することにより、パルスモータ13の回転速度やパルスモータ13の回転角を制御することができるようになっている。
The pulse
駆動回路12は、パルスモータ制御装置1(後述するパルス生成手段11)で生成されたパルス信号に基づいてパルスモータ13の励磁電流を生成し、パルスモータ13に出力するようになっている。
The
パルスモータ13は、駆動回路12から入力した励磁電流により回転するようになっている。なお、パルスモータ13により駆動する図示しない移動機構(例えば、回転運動を直線運動に変換する回転直動機構)が設けられている場合には、パルスモータ制御装置1は、パルスモータ13を制御することにより、移動機構(図示せず)の速度および移動距離を制御することができるようになっている。
The
パルスモータ制御装置1の各部について更に説明する。
パルスモータ制御装置1は、変化点検出手段2と、メモリアドレス生成手段3と、制御情報メモリ4と、演算定数選択手段5と、有界演算器6と、演算値計測手段7と、クロック計測手段8と、外部計測手段9と、パルス計測手段10と、パルス生成手段11と、を備えている。
Each part of the pulse
The pulse
変化点検出手段2は、後述する演算値計測手段7、クロック計測手段8、外部計測手段9およびパルス計測手段10からの各種計測情報と、制御情報メモリ4から入力された計測制御値に基づいて、変化点であるか否かを判定することができるようになっている。ここで、変化点とは、速度−時間特性(後述する図3参照)において、ある制御区間から次の制御区間に切り替わる点をいう。
そして、変化点であると判定した場合、変化点検出手段2は、メモリアドレス生成手段3および演算定数選択手段5に条件成立信号を出力するようになっている。
The change
When the change point is determined to be a change point, the change
メモリアドレス生成手段3は、メモリアドレスを保持し、制御情報メモリ4に保持されたメモリアドレスを出力するようになっている。
また、メモリアドレス生成手段3は、変化点検出手段2から条件成立信号が入力されると、メモリアドレスに記憶されているアドレスを「1」加算するようになっている。なお、アドレス値は、速度−時間特性(後述する図3参照)における1つの制御区間に対応するようになっている。
The memory address generation means 3 holds the memory address and outputs the memory address held in the
Further, when the condition establishment signal is input from the change
制御情報メモリ4は、アドレス(制御区間)に対応するように、計測制御値と演算設定値が記憶されている。ここで、計測制御値とは、変化点検出手段2で変化点であると判定するための閾値である。また、演算設定値とは、アドレスに対応する制御区間における演算値(加加速度B,加速度A,速度V)の初期値である。
また、制御情報メモリ4は、メモリアドレス生成手段3から入力されたアドレスに対応する計測制御値を変化点検出手段2に出力するとともに、メモリアドレス生成手段3から入力されたアドレスに対応する演算設定値を演算定数選択手段5に出力するようになっている。
The
Further, the
演算定数選択手段5は、制御情報メモリ4の演算設定値と、有界演算器6の演算結果値とのいずれかを選択して、有界演算器6に出力するようになっている。
具体的には、変化点検出手段2の条件成立信号が入力された場合には、制御情報メモリ4の演算設定値を有界演算器6に出力し、変化点検出手段2の条件成立信号が入力されなかった場合には、有界演算器6の演算結果値を有界演算器6に出力するようになっている。
The operation constant selection means 5 selects either the operation setting value of the
Specifically, when the condition establishment signal of the change
有界演算器6は、演算定数選択手段5から入力した値(演算設定値または演算結果値)に基づいて、演算周期(演算用クロックの周期)で演算を実行し、その演算結果値を、演算定数選択手段5および演算値計測手段7に出力するようになっている。
また、有界演算器6は、所定の条件を満たすことにより、パルス生成信号(後述するオーバーフロー信号)をパルス計測手段10およびパルス生成手段11に出力するようになっている。
なお、有界演算器6における演算については、図2等を用いて後述する。
The bounded
Further, the bounded
The calculation in the bounded
演算値計測手段7は、有界演算器6の演算結果値を保持するとともに、その演算結果値を計測情報として変化点検出手段2に出力することができるようになっている。
The calculation value measuring means 7 holds the calculation result value of the bounded
クロック計測手段8は、クロック(有界演算器6における演算回数)をカウントするとともに、そのクロックカウントを計測情報として変化点検出手段2に出力することができるようになっている。 The clock measuring means 8 counts the clock (the number of operations in the bounded arithmetic unit 6) and can output the clock count to the change point detecting means 2 as measurement information.
外部計測手段9は、パルスモータ制御装置1の外部の情報(例えば、図示しない移動機構が所定の位置まで移動したことを検知するセンサの検知信号)を取得するとともに、その外部情報を計測情報として変化点検出手段2に出力することができるようになっている。 The external measuring means 9 acquires information outside the pulse motor control device 1 (for example, a detection signal of a sensor that detects that a moving mechanism (not shown) has moved to a predetermined position), and uses the external information as measurement information. The change point detection means 2 can be output.
パルス計測手段10は、有界演算器6からパルス生成信号(オーバーフロー信号)が入力した回数をカウントすることにより、パルス生成手段11が生成したパルス信号の数を計測するとともに、その生成したパルス信号の数を計測情報として変化点検出手段2に出力することができるようになっている。
The pulse measuring means 10 measures the number of pulse signals generated by the pulse generating means 11 by counting the number of times the pulse generating signal (overflow signal) is input from the bounded
パルス生成手段11は、有界演算器6から入力したパルス生成信号(オーバーフロー信号)を受信することにより、パルス信号を生成して駆動回路12に送信することができるようになっている。
The pulse generation means 11 can generate a pulse signal and transmit it to the
≪有界演算器6における演算処理≫
次に、パルスモータ制御装置1が備える有界演算器6について更に説明する。
<< Operation processing in the bounded
Next, the bounded
<演算式>
まず、本実施形態に係るパルスモータ制御装置1が用いる演算式について説明する。
<Calculation formula>
First, an arithmetic expression used by the pulse
図13および図14を用いて説明した台形駆動制御を例に、台形駆動制御の加速区間でのパルス生成タイミングについて図15を用いて更に説明する。図15は、台形駆動制御における加速区間でのパルス生成タイミングの変化を説明するグラフであり、横軸を時間[s]とし縦軸を速度[pps]としたグラフである。 Taking the trapezoidal drive control described with reference to FIGS. 13 and 14 as an example, the pulse generation timing in the acceleration interval of the trapezoidal drive control will be further described with reference to FIG. FIG. 15 is a graph for explaining a change in pulse generation timing in the acceleration section in the trapezoidal drive control, in which the horizontal axis represents time [s] and the vertical axis represents speed [pps].
パルスモータによる駆動において、時間t0 ,t1 ,t2 ,・・・,tn においてパルス信号を出力するものとすると、常に、1パルス毎の移動距離が等しいことから、図15に示す速度−時間特性における面積S0 ,S1 ,S2 ,・・・,Sn-1 は、S0 =S1 =S2 =・・・=Sn-1 の関係が成立する。
また、一般的に、速度=∫加速度dt、距離=∫速度dt、の関係が成立する。
If the pulse signal is output at time t 0 , t 1 , t 2 ,..., T n in the drive by the pulse motor, the moving distance for each pulse is always equal, so the speed shown in FIG. - area S 0, S 1, S 2 at time characteristics, ···,
In general, the relationship of speed = ∫acceleration dt and distance = ∫speed dt is established.
そこで、図16に示すような2次曲線を採用したS字駆動制御を例に、S字駆動制御の加速区間でのパルス生成タイミングについて説明する。図16は、S字駆動制御の加速区間でのパルス生成タイミングの変化を示すグラフであり、(a)は横軸を時間[s]とし縦軸を速度[pps]としたグラフであり、(b)は横軸を時間[s]とし縦軸を加速度[pps/s]としたグラフである。 Therefore, the pulse generation timing in the acceleration section of the S-shaped drive control will be described by taking the S-shaped drive control employing a quadratic curve as shown in FIG. 16 as an example. FIG. 16 is a graph showing changes in pulse generation timing in the acceleration section of the S-shaped drive control. FIG. 16A is a graph in which the horizontal axis is time [s] and the vertical axis is speed [pps]. b) is a graph in which the horizontal axis represents time [s] and the vertical axis represents acceleration [pps / s].
即ち、図16(b)に示すように、一定の正の加加速度を与えて加速度を上昇させることにより、図16(a)に示すように、速度を2次曲線で徐々に上昇させる(加加速区間)。 That is, as shown in FIG. 16 (b), by giving a constant positive jerk and increasing the acceleration, as shown in FIG. 16 (a), the speed is gradually increased with a quadratic curve (acceleration). Acceleration section).
次に、図16(b)に示すように、加加速度をゼロにすることで加速度を一定にさせることにより、図16(a)に示すように、速度を一定の傾きで上昇させる(定加速区間)。 Next, as shown in FIG. 16B, by making the acceleration constant by setting the jerk to zero, the speed is increased with a constant inclination as shown in FIG. 16A (constant acceleration). section).
そして、図16(b)に示すように、一定の負の加加速度を与えて加速度を低下させることにより、図16(a)に示すように、速度を2次曲線で徐々に低下させる(減加速区間)。 Then, as shown in FIG. 16 (b), by applying a constant negative jerk and reducing the acceleration, as shown in FIG. 16 (a), the speed is gradually reduced (decreasing) with a quadratic curve. Acceleration section).
このようにS字駆動制御することにより、台形駆動制御(図13参照)と比較して、加速区間開始時および加速区間終了時における加速度の急激な変化を低減させることができるようになっている。即ち、図示しない移動機構にかかる力が、急激に変化することを抑制することができるようになっている。 By performing S-shaped drive control in this way, it is possible to reduce rapid changes in acceleration at the start of the acceleration section and at the end of the acceleration section, as compared with trapezoidal drive control (see FIG. 13). . That is, it is possible to suppress a sudden change in the force applied to a moving mechanism (not shown).
ここで、距離(パルス数)をd[p]とし、速度(パルス信号の周波数)をv[pps]とし、加速度をa[pps/s]とし、加加速度をb[pps/s2 ]として、ある時間tn [s]での距離dn 、速度vn 、加速度をan 、加加速度bn の関係は、以下の式(5)で表すことができる。 Here, the distance (number of pulses) is d [p], the speed (frequency of the pulse signal) is v [pps], the acceleration is a [pps / s], and the jerk is b [pps / s 2 ]. The relationship between the distance d n , the speed v n , the acceleration a n , and the jerk b n at a certain time t n [s] can be expressed by the following equation (5).
この式(5)から、特定の時間(Δt[s])が経過した時間tn+1[s](すなわち、tn+1 =tn+Δt)おける演算式は、以下の式(6)で表すことができる。 From this equation (5), an arithmetic expression at a time t n + 1 [s] (that is, t n + 1 = t n + Δt) when a specific time (Δt [s]) has elapsed is as follows: Can be expressed as
この式(6)のままでは、演算が複雑となるため、特定の時間(Δt)を演算用クロックの周波数1クロック分の時刻として、即ち、「Δt=1」として、演算式の簡略化を行った。簡略化された演算式を以下の式(7)に示す。なお、この簡略化された演算式(7)における加速度a,加加速度bは、演算用クロックで換算された値となっている。 Since the calculation is complicated with this formula (6), the calculation formula is simplified by setting a specific time (Δt) as a time corresponding to one clock frequency of the calculation clock, that is, “Δt = 1”. went. The simplified calculation formula is shown in the following formula (7). It should be noted that the acceleration a and jerk b in the simplified calculation formula (7) are values converted by a calculation clock.
演算式(7)において、各演算式のnが1進んだときの演算結果が、1クロック分の変化結果に相当することを示している。ここで、1パルス毎の移動距離が等しいことから、距離dが所定の値を超える(オーバーフローする)タイミングがパルス生成タイミングとなる。 In the calculation formula (7), it is shown that the calculation result when n of each calculation formula advances by 1 corresponds to the change result for one clock. Here, since the moving distance for each pulse is equal, the timing at which the distance d exceeds a predetermined value (overflows) is the pulse generation timing.
このように、演算式(7)に演算用クロックで換算した加速度a、加加速度bを与えて、クロック時刻に同期して演算を繰返すことで、パルス生成タイミングを生成することができ、複雑な演算が不要なパルス生成方式が可能となる。 In this way, by applying the acceleration a and jerk b converted by the arithmetic clock to the arithmetic expression (7) and repeating the arithmetic in synchronization with the clock time, the pulse generation timing can be generated, and the complicated A pulse generation method that does not require computation becomes possible.
<有界演算器6の構成>
図2を用いて、演算式(7)を実現する有界演算器6の構成について説明する。図2は、有界演算器6の構成を示す機能ブロック図である。
有界演算器6は、加加速度値保持手段61と、加速度値保持手段62と、速度値保持手段63と、距離値保持手段64と、加算器65a,65b,65c,65d,65eと、1/2演算器66a,66bと、1/3演算器67と、を備えている。
<Configuration of bounded
The configuration of the bounded
The bounded
まず、演算定数選択手段5(図1参照)から入力した値(演算設定値または演算結果値)のうち、加加速度値が加加速度値保持手段61に保持され、加速度値が加速度値保持手段62に保持され、速度値が速度値保持手段63に保持され、距離値が距離値保持手段64に保持される。 First, among the values (calculation set values or calculation result values) input from the calculation constant selection means 5 (see FIG. 1), the jerk value is held in the jerk value holding means 61, and the acceleration value is the acceleration value holding means 62. The speed value is held in the speed value holding means 63, and the distance value is held in the distance value holding means 64.
加速度値保持手段62には、加加速度値保持手段61に保持された加加速度値と加速度値保持手段62に保持された加速度値を加算器65aで加算した値が入力され、保持される。
A value obtained by adding the jerk value held in the jerk value holding means 61 and the acceleration value held in the acceleration value holding means 62 by the
速度値保持手段63には、加加速度値保持手段61に保持された加加速度値を1/2演算器66aで処理した値と、加速度値保持手段62に保持された加速度値と、速度値保持手段63に保持された速度値を加算器65b,65cで加算した値が入力され、保持される。
In the velocity value holding means 63, a value obtained by processing the jerk value held in the jerk value holding means 61 by the ½
距離値保持手段64には、加加速度値保持手段61に保持された加加速度値を1/2演算器66aおよび1/3演算器67で処理した値と、加速度値保持手段62に保持された加速度値を1/2演算器66bで処理した値と、速度値保持手段63に保持された速度値と、距離値保持手段64に保持された距離値を加算器65d,65eで加算した値が入力され、保持される。
In the distance value holding means 64, the jerk value held in the jerk value holding means 61 is processed by the 1/2
また、加算器65eは、オーバーフローが発生した際には、オーバーフローの発生を示すオーバーフロー信号をパルス生成信号としてパルス計測手段10およびパルス生成手段11に出力するようになっている。 Further, when an overflow occurs, the adder 65e outputs an overflow signal indicating the occurrence of the overflow to the pulse measuring means 10 and the pulse generating means 11 as a pulse generation signal.
そして、加加速度値保持手段61に保持された加加速度値と、加速度値保持手段62に保持された加速度値と、速度値保持手段63に保持された速度値と、距離値保持手段64に保持された距離値とを、演算結果値として演算定数選択手段5および演算値計測手段7に出力するようになっている。 The jerk value held in the jerk value holding means 61, the acceleration value held in the acceleration value holding means 62, the speed value held in the speed value holding means 63, and held in the distance value holding means 64. The calculated distance value is output to the calculation constant selection means 5 and the calculation value measurement means 7 as a calculation result value.
なお、有界演算器6において、1/2演算器66a,66bを1ビットシフトとし、1/3演算器67を3クロックに1回の割合で出力するものとすることにより、有界演算器6における必要な演算を加算のみにすることができる。
In the
≪パルスモータ制御装置1の動作(S字駆動制御)≫
次に、図3(a)に示すS字駆動制御を行う場合において、図3(b)に示す加速区間における加速度制御を例に本実施形態に係るパルスモータ制御装置1の動作について説明する。
<< Operation of pulse motor control device 1 (S-shaped drive control) >>
Next, in the case where the S-shaped drive control shown in FIG. 3A is performed, the operation of the pulse
図4は、制御情報メモリ4に格納されている格納データの例である。
図3(a)に示すように、パルスモータ13の起動から停止に至る一連の動作を、速度,加速度,加加速度などの制御条件が変化する毎の「制御区間」に分割されている。そして、各制御区間内における速度,加速度,加加速度などの初期値や制御区間の終了条件(次の制御区間への移行条件)を予め求めておき、格納データとして制御情報メモリ4に格納されている。
図3(a)に示すS字駆動制御は、制御区間TS1〜TS8の区間で区切られた曲線で構成されていることから、制御情報メモリ4に格納されている格納データは、例えば、図4に示すようになる。
FIG. 4 is an example of stored data stored in the
As shown in FIG. 3A, a series of operations from starting to stopping of the
Since the S-shaped drive control shown in FIG. 3A is composed of curves divided by control sections T S1 to T S8 , the stored data stored in the
変化点情報選択条件には、その制御区間において、変化点検出手段2が、いずれの計測情報と計測制御値に基づいて変化点であるか否かを判定するかが格納されている。
また、演算条件には、演算定数選択手段5において、制御情報メモリ4から出力される各初期値(速度、加速度、加加速度)を選択(上書き)して次の区間演算を始めるか、または、有界演算器6から出力される各演算結果値(速度、加速度、加加速度)を選択(継承)して次の区間演算を始めるか、を示す選択フラグとしての演算条件が格納されている。
なお、変化点情報選択条件(選択条件)と演算条件とは、後述する図5のように一つのフラグで管理されていてもよい。
The change point information selection condition stores which measurement information and measurement control value the change point detection means 2 determines whether to be a change point in the control section.
The calculation condition is that the calculation constant selection means 5 selects (overwrites) each initial value (speed, acceleration, jerk) output from the
Note that the change point information selection condition (selection condition) and the calculation condition may be managed by one flag as shown in FIG.
計測制御値には、変化点検出手段2で変化点であると判定するための閾値が格納されている。
演算設定値には、アドレスに対応する制御区間における演算値(加加速度B,加速度A,速度V)の初期値が格納されている。
The measurement control value stores a threshold value for determining that the change point detection means 2 is a change point.
The calculation set value stores the initial value of the calculation value (the jerk B, the acceleration A, and the speed V) in the control section corresponding to the address.
例えば、図3における入力パラメータを、加速区間における初速度FL=20000[pps]、加速区間における到達速度FH100000[pps]、制御区間TS1 =125[μs]、制御区間TS2 =32[μs]、制御区間TS3 =55[μs]、であるものとして説明する。
また、有界演算器6の演算周期(演算用クロック)を1[MHz]の周期で演算するものとし、図5に示す格納データを制御情報メモリ4に格納して、
また、オーバーフロー判定は距離Dが1000000を超える度に発生するものとして説明する。
For example, the input parameters in FIG. 3 are the initial speed FL in the acceleration section = 20000 [pps], the arrival speed FH100000 [pps] in the acceleration section, the control section T S1 = 125 [μs], and the control section T S2 = 32 [μs]. In the following description, it is assumed that the control section T S3 = 55 [μs].
Further, the calculation cycle (calculation clock) of the bounded
Further, it is assumed that the overflow determination occurs every time the distance D exceeds 1000000.
まず、メモリアドレス生成手段3には、アドレス「0」を保持されている。制御情報メモリ4は、アドレス「0」に基づいて、フラグ「0」、クロック設定値「0」、パルス設定値「0」(図5参照)を変化点検出手段2に出力する。
演算をスタートすると、変化点検出手段2は、条件成立信号をメモリアドレス生成手段3および演算定数選択手段5に出力する。
First, the memory address generation means 3 holds an address “0”. The
When the calculation is started, the change
メモリアドレス生成手段3は、メモリアドレスを1加算してアドレス「1」を保持するとともに、制御情報メモリ4にアドレス「1」を出力する。
制御情報メモリ4は、アドレス「1」に基づいて、フラグ「1」、計測制御値(クロック設定値「125」)(図5参照)を変化点検出手段2に出力する。また、制御情報メモリ4は、演算設定値(加加速度B「5」、加速度A「0」、速度V「20000」)を演算定数選択手段5に出力する。
なお、フラグ「1」とは、計測制御値のうちクロック設定値を用いて変化点の判定を行うことを示すフラグであり、演算定数選択手段5に演算設定値として加加速度B、加速度A、速度Vを出力することを示すフラグである。
The memory address generation means 3 adds 1 to the memory address, holds the address “1”, and outputs the address “1” to the
Based on the address “1”, the
The flag “1” is a flag indicating that the change point is determined using the clock setting value among the measurement control values, and the jerk B, acceleration A, It is a flag indicating that the speed V is output.
演算定数選択手段5は、変化点検出手段2から条件成立信号が入力されたことにより、演算設定値(加加速度B「5」、加速度A「0」、速度V「20000」)を有界演算器6に出力する。
有界演算器6は、加加速度値保持手段61に「5」、加速度値保持手段62に「0」、速度値保持手段63に「20000」を格納し、演算を開始する。そして、有界演算器6は、演算結果値(加加速度B「5」、加速度A「5」、速度V「20005」、距離D「20008」)を演算定数選択手段5および演算値計測手段7に出力するようになっている。
The calculation constant selection means 5 receives the condition establishment signal from the change point detection means 2, and thus the calculation set values (the jerk B “5”, the acceleration A “0”, and the speed V “20000”) are bounded. To the
The bounded
次の演算周期において、演算定数選択手段5は、変化点検出手段2から条件成立信号が入力されていないため、演算結果値(加加速度B「5」、加速度A「5」、速度V「20005」、距離D「20008」)を有界演算器6に出力する。そして、変化点検出手段2から演算定数選択手段5に条件成立信号が入力されるまで演算を繰り返す。
In the next calculation cycle, the calculation constant selection means 5 receives the calculation result values (the jerk B “5”, the acceleration A “5”, the speed V “20005” because the condition satisfaction signal is not input from the change point detection means 2. ”, Distance D“ 20008 ”) is output to the bounded
そして、クロック計測手段8が計測したカウントが「125」(即ち、制御区間TS1終了)となると、変化点検出手段2は、条件成立信号をメモリアドレス生成手段3および演算定数選択手段5に出力する。
When the count measured by the
図6に加加速区間TS1における有界演算器6の演算経過の例を示す。なお、距離Dは1000000を超える度にオーバーフローが発生するため、距離値保持手段64に保持される値は7桁目を削除したものとなるが、図6においては標記している。
このように、125クロック目の加速度が625、速度が59685に達しており、4個のパルスが生成したことがわかる。
FIG. 6 shows an example of calculation progress of the bounded
Thus, the acceleration at the 125th clock reaches 625 and the speed reaches 59985, and it can be seen that four pulses are generated.
制御区間TS1終了時に、条件成立信号が出力されたことにより、メモリアドレス生成手段3は、メモリアドレスを1加算してアドレス「2」を保持するとともに、制御情報メモリ4にアドレス「2」を出力する。
制御情報メモリ4は、アドレス「2」に基づいて、フラグ「2」、計測制御値(クロック設定値「32」)(図5参照)を変化点検出手段2に出力する。また、制御情報メモリ4は、演算設定値(加加速度B「0」、加速度A「625」)を演算定数選択手段5に出力する。
なお、フラグ「2」とは、計測制御値のうちクロック設定値を用いて変化点の判定を行うことを示すフラグであり、演算定数選択手段5に演算設定値として加加速度B、加速度Aを出力することを示すフラグである。
At the end of the control section T S1, when the condition establishment signal is output, the memory address generation means 3 adds 1 to the memory address and holds the address “2”, and also stores the address “2” in the
Based on the address “2”, the
The flag “2” is a flag indicating that the change point is determined using the clock set value among the measurement control values, and the jerk B and the acceleration A are set as calculation set values in the calculation
演算定数選択手段5は、変化点検出手段2から条件成立信号が入力されたことにより、演算設定値(加加速度B「0」、加速度A「625」)と演算結果値(速度V「59685」、距離D「206042」(オーバーフローにより7桁目は削除されている))を有界演算器6に出力する。そして、変化点検出手段2から演算定数選択手段5に条件成立信号が入力されるまで演算を繰り返す。
The calculation constant selection means 5 receives the condition establishment signal from the change point detection means 2, so that the calculation set value (the jerk B “0”, the acceleration A “625”) and the calculation result value (speed V “59685”). , Distance D “206042” (the seventh digit is deleted due to overflow)) is output to the bounded
そして、クロック計測手段8が計測したカウントが「32」(即ち、制御区間TS2終了)となると、変化点検出手段2は、条件成立信号をメモリアドレス生成手段3および演算定数選択手段5に出力する。
When the count measured by the clock measuring means 8 reaches “32” (that is, the end of the control section T S2 ), the change point detecting means 2 outputs a condition satisfaction signal to the memory address generating means 3 and the arithmetic
図7に加加速区間TS2における有界演算器6の演算経過の例を示す。なお、距離Dは1000000を超える度にオーバーフローが発生するため、距離値保持手段64に保持される値は7桁目を削除したものとなるが、図7においては標記している。
このように、32クロック目の速度が79685に達しており、2個のパルスが生成したことがわかる。
FIG. 7 shows an example of calculation progress of the bounded
Thus, the speed of the 32nd clock has reached 79985, and it can be seen that two pulses are generated.
制御区間TS2終了時に、条件成立信号が出力されたことにより、メモリアドレス生成手段3は、メモリアドレスを1加算してアドレス「3」を保持するとともに、制御情報メモリ4にアドレス「3」を出力する。
制御情報メモリ4は、アドレス「3」に基づいて、フラグ「2」、計測制御値(クロック設定値「55」)(図5参照)を変化点検出手段2に出力する。また、制御情報メモリ4は、演算設定値(加加速度B「−10」、加速度A「0」)を演算定数選択手段5に出力する。
At the end of the control section T S2, when the condition satisfaction signal is output, the memory address generation means 3 adds 1 to the memory address and holds the address “3”, and also stores the address “3” in the
Based on the address “3”, the
演算定数選択手段5は、変化点検出手段2から条件成立信号が入力されたことにより、演算設定値(加加速度B「−10」、加速度A「0」)と演算結果値(速度V「79685」、距離D「455962」(オーバーフローにより7桁目は削除されている))を有界演算器6に出力する。そして、変化点検出手段2から演算定数選択手段5に条件成立信号が入力されるまで演算を繰り返す。
The calculation
そして、クロック計測手段8が計測したカウントが「55」(即ち、制御区間TS3終了)となると、変化点検出手段2は、条件成立信号をメモリアドレス生成手段3および演算定数選択手段5に出力する。
When the count measured by the
図8に加加速区間TS3における有界演算器6の演算経過の例を示す。なお、距離Dは1000000を超える度にオーバーフローが発生するため、距離値保持手段64に保持される値は7桁目より上を削除したものとなるが、図8においては標記している。
このように、55クロック目の速度が100000に達しており、5個のパルスが生成したことがわかる。
FIG. 8 shows an example of calculation progress of the bounded
Thus, it can be seen that the speed of the 55th clock has reached 100,000, and five pulses have been generated.
制御区間TS4終了時に、条件成立信号が出力されたことにより、メモリアドレス生成手段3は、メモリアドレスを1加算してアドレス「4」を保持するとともに、制御情報メモリ4にアドレス「4」を出力する。
制御情報メモリ4は、アドレス「4」に基づいて、フラグ「3」、計測制御値(パルス設定値「5」)(図5参照)を変化点検出手段2に出力する。また、制御情報メモリ4は、演算設定値(加加速度B「0」、加速度A「0」、速度V「100000」)を演算定数選択手段5に出力する。
なお、フラグ「3」とは、計測制御値のうちパルス設定値を用いて変化点の判定を行うことを示すフラグであり、演算定数選択手段5に演算設定値として加加速度B、加速度A、速度を出力することを示すフラグである。
At the end of the control section T S4, when the condition establishment signal is output, the memory address generation means 3 adds 1 to the memory address and holds the address “4”, and stores the address “4” in the
The
The flag “3” is a flag indicating that the change point is determined using the pulse set value among the measurement control values, and the jerk B, acceleration A, This flag indicates that the speed is output.
演算定数選択手段5は、変化点検出手段2から条件成立信号が入力されたことにより、演算設定値(加加速度B「0」、加速度A「0」、速度V「100000」)と演算結果値(距離D「526881」(オーバーフローにより7桁目より上は削除されている))を有界演算器6に出力する。そして、変化点検出手段2から演算定数選択手段5に条件成立信号が入力されるまで演算を繰り返す。
The calculation constant selection means 5 receives the condition establishment signal from the change point detection means 2, so that the calculation set value (the jerk B “0”, the acceleration A “0”, the speed V “100000”) and the calculation result value are obtained. (Distance D “526881” (deleted above the seventh digit due to overflow)) is output to the bounded
そして、パルス計測手段10が計測したカウントが制御区間TS5開始から「5」増えると、変化点検出手段2は、条件成立信号をメモリアドレス生成手段3および演算定数選択手段5に出力する。
When the count measured by the pulse measuring means 10 increases by “5” from the start of the control section T S5 , the change point detecting means 2 outputs a condition satisfaction signal to the memory address generating means 3 and the arithmetic
これらの一連の動作により、本実施形態に係るパルスモータ制御装置1は、入力パラメータで指定した動作が可能となる。
With these series of operations, the pulse
このように、本実施形態に係るパルスモータ制御装置1によれば、演算式(7)の有界演算器6(図2参照)を用いることにより、前記した式(1)〜(4)に基づいて制御する従来のパルスモータ制御装置と比較して、除算回路を不要とし、高速に動作させることができるので、演算誤差が少なく、演算負荷を低減させることができる。
Thus, according to the pulse
また、式(1)〜(4)に基づいて制御する従来のパルスモータ制御装置では、制御パルスの生成が困難であったS字駆動制御(2次曲線速度制御)についても、本実施形態に係るパルスモータ制御装置1によれば、容易に実現することができる。
In addition, in the conventional pulse motor control device that controls based on the equations (1) to (4), the S-shaped drive control (second-order curve speed control), in which it is difficult to generate control pulses, is also included in this embodiment. Such a pulse
また、除算を不要とすることで、距離に対する累積誤差が発生しない演算回路とすることができる。更に、演算式(7)では、精度への制限が無いことから、演算周期と演算有効幅を適宜変更することで、システムが要求する演算精度に合せることも可能である。 Further, by eliminating the need for division, an arithmetic circuit that does not generate an accumulated error with respect to the distance can be obtained. Furthermore, since the calculation formula (7) is not limited in accuracy, it can be adjusted to the calculation accuracy required by the system by appropriately changing the calculation cycle and the calculation effective width.
≪変形例≫
なお、本実施形態に係るパルスモータ制御装置1は、上記実施形態の構成に限定されるものではなく、発明の趣旨を逸脱しない範囲内で種々の変更が可能である。
≪Modification≫
The pulse
変化点検出手段2は、クロック計測手段8の計測情報(クロック数)またはパルス計測手段10の計測情報(パルス数)に基づいて変化点であるか否かを判定するものを例に説明したが、これに限られるものではなく、演算値計測手段7の計測情報(演算された加速度、速度、距離等)や外部計測手段9の計測情報(図示しないセンサの出力値)に基づいて判定するものでもよく、これらを組み合せて判定するものであってもよい。 Although the change point detection means 2 has been described as an example of determining whether or not it is a change point based on measurement information (number of clocks) of the clock measurement means 8 or measurement information (number of pulses) of the pulse measurement means 10. The determination is not limited to this, but based on measurement information (calculated acceleration, speed, distance, etc.) of the calculation value measuring means 7 and measurement information (output value of a sensor not shown) of the external measurement means 9 Alternatively, it may be determined by combining these.
また、本実施形態に係るパルスモータ制御装置1は、図3に示すS字駆動制御するものとして説明したが、これに限られるものではない。本実施形態に係るパルスモータ制御装置1において、加加速度bn=0とすることにより、台形駆動制御(図13参照)や、図9に示す3直線での駆動制御(加速区間を「低加速区間、高加速区間、低加速区間」のすることにより、加速度の急激な変化を低減させる制御)を適用することもできる。
Further, the pulse
また、有界演算器6は、図2に示す構成であるものとして説明したが、これに限られるものではない。図10に示すように、有界演算器6Aは、加加速度値保持手段61と、加速度値保持手段62と、速度値保持手段63と、距離値保持手段64と、加算器65a,65c,65eとで構成されているものであってもよい。
このように構成することにより、レジスタ(加加速度値保持手段61、加速度値保持手段62、速度値保持手段63、距離値保持手段64)と、加算器(65a,65c,65e)のみで有界演算器6Aを構成することができるため、安価に構成することができる。
The bounded
With this configuration, only the registers (the jerk value holding means 61, the acceleration value holding means 62, the speed value holding means 63, the distance value holding means 64) and the adders (65a, 65c, 65e) are bounded. Since the
本実施形態に係るパルスモータ制御装置1の有界演算器6は、図2に示すハードウェアで構成されるものとして説明したが、これに限られるものではなく、ソフトウェアでも同様に実現できる。
The bounded
図11は、変形例に係るパルスモータ制御装置1Aの構成図である。
パルスモータ制御装置1Aは、例えば、コンピュータ装置であり、図11に示すように、演算部としてのCPU(Central Processing Unit)と、格納データ(図4図5参照)や各種アプリケーションプログラムが格納されているMemoryと、Timerと、入出力部であるI/Oと、を備え、各部はバスラインで接続されている。
FIG. 11 is a configuration diagram of a pulse
The pulse
CPUは、各種アプリケーションプログラムを実行することにより、変化点検出手段2、メモリアドレス生成手段3、演算定数選択手段5、有界演算器6、演算値計測手段7、パルス計測手段10として機能するようになっている。Memoryは、制御情報メモリ4として機能するようになっている。Timerは、クロック計測手段8として機能するようになっている。I/Oは、外部計測手段9およびパルス生成手段11として機能するようになっている。
The CPU functions as the change point detection means 2, the memory address generation means 3, the calculation constant selection means 5, the bounded
図12は、変形例に係るパルスモータ制御装置1Aの動作を示すフローチャートである。
FIG. 12 is a flowchart showing the operation of the pulse
ステップS101において、CPUは、前述の演算式(7)に基づいて、有界演算を実行する。 In step S101, the CPU executes a bounded operation based on the above-described arithmetic expression (7).
ステップS102において、CPUは、区間係数処理および条件処理を実行する。
ここで、区間係数処理は、区間の終了または駆動の終了を判定する(後述するステップS103,S107参照)際に用いる係数(例えば、速度、加速度、加加速度、クロック数、パルス数)の処理を行う。また、条件処理は、例えば、外部の情報(計測情報)に基づく区間の終了または駆動の終了を判定する際に用いる条件処理を行う。
In step S102, the CPU executes interval coefficient processing and condition processing.
Here, the section coefficient processing is processing of coefficients (for example, speed, acceleration, jerk, number of clocks, number of pulses) used when determining the end of the section or the end of driving (see steps S103 and S107 described later). Do. In addition, the condition process is performed, for example, when determining the end of a section or the end of driving based on external information (measurement information).
ステップS103において、CPUは、区間が終了したか否かを判定する。区間が終了した場合(S103・Yes)、CPUの処理はステップS107に進む。区間が終了していない場合(S103・No)、CPUの処理はステップS104に進む。 In step S103, the CPU determines whether or not the section has ended. If the section has ended (S103 / Yes), the CPU proceeds to step S107. If the section has not ended (S103, No), the CPU proceeds to step S104.
ステップS104において、CPUは、ステップS101で演算した距離Dn+1が所定のDPconstより大きいか否かを判定する。
距離Dn+1が所定のDPconstより大きい場合(S104・Yes)、CPUの処理はステップS105に進む。距離Dn+1が所定のDPconstより大きくない場合(S104・No)、CPUの処理はステップS106に進む。
In step S104, the CPU determines whether or not the distance D n + 1 calculated in step S101 is greater than a predetermined DPconst.
If the distance D n + 1 is greater than the predetermined DPconst (S104, Yes), the CPU proceeds to step S105. When the distance D n + 1 is not greater than the predetermined DPconst (S104 · No), the CPU proceeds to step S106.
ステップS105において、CPUは、オーバーフローしたと判定して、距離Dn+1を距離Dn+1−DPconstとするとともに、パルス生成タイミングとする。そして、CPUの処理はステップS106に進む。 In step S105, the CPU determines that the overflow has occurred, sets the distance D n + 1 to the distance D n + 1 −DPconst, and sets the pulse generation timing. Then, the processing of the CPU proceeds to step S106.
ステップS106において、CPUは、加速度A、速度V、距離Dを更新(承継)する。そして、CPUの処理はステップS101に戻る。 In step S106, the CPU updates (inherits) the acceleration A, the speed V, and the distance D. Then, the CPU process returns to step S101.
ステップS107において、CPUは、駆動が終了したか否かを判定する。駆動が終了した場合(S107・Yes)、CPUの処理を終了する。駆動が終了していない場合(S107・No)、CPUの処理はステップS108に進む。 In step S <b> 107, the CPU determines whether the driving is finished. When the driving is finished (S107, Yes), the CPU processing is finished. If the driving has not been completed (S107: No), the CPU proceeds to step S108.
ステップS108において、CPUは、Memoryの格納データ(図4図5参照)から次の区間の初期値を取得(上書き)する。
そして、CPUの処理はステップS104に進む。
In step S108, the CPU acquires (overwrites) the initial value of the next section from the storage data of Memory (see FIG. 4 and FIG. 5).
Then, the processing of the CPU proceeds to step S104.
そして、CPUは、パルス生成タイミング(ステップS105参照)に基づいてパルス信号を生成し、I/Oから出力する。このように、本実施形態に係るパルスモータ制御装置1は、ソフトウェアでも同様に実現することができる。
Then, the CPU generates a pulse signal based on the pulse generation timing (see step S105) and outputs it from the I / O. Thus, the pulse
1 パルスモータ制御装置
2 変化点検出手段
3 メモリアドレス生成手段
4 制御情報メモリ
5 演算定数選択手段
6 有界演算器
7 演算値計測手段
8 クロック計測手段
9 外部計測手段
10 パルス計測手段
11 パルス生成手段
12 駆動回路
13 パルスモータ
61 加加速度値保持手段
62 加速度値保持手段
63 速度値保持手段
64 距離値保持手段
65a,65b,65c,65d,65e 加算器
66a,66b 1/2演算器(1/2演算手段)
67 1/3演算器(1/3演算手段)
DESCRIPTION OF
67 1/3 calculator (1/3 calculator)
Claims (4)
前記記憶手段に記憶された前記制御区間の終了条件に基づいて、現在の制御区間から次の制御区間へと切り替わる点である変化点を検出する変化点検出手段と、
パルス生成タイミングを出力する有界演算器と、
前記有界演算器が出力した前記パルス生成タイミングに基づいて、パルスモータを制御するためのパルス信号を生成するパルス生成手段と、を備え、
前記有界演算器は、
加加速度を保持する加加速度値保持手段、加速度を保持する加速度値保持手段、速度を保持する速度値保持手段、距離を保持する距離値保持手段、第1の1/2演算手段、第2の1/2演算手段、および、1/3演算手段を有し、
前記変化点検出手段が変化点を検出した場合、
前記制御区間の加加速度、加速度、速度の初期値が前記加加速度値保持手段、前記加速度値保持手段、前記速度値保持手段に入力され、
前記変化点検出手段が変化点を検出していない場合、
前記加加速度値保持手段に保持された加加速度値と、前記加速度値保持手段に保持された加速度値とを、加算演算した値が前記加速度値保持手段に入力され、
前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段で処理した値と、前記加速度値保持手段に保持された加速度値と、前記速度値保持手段に保持された速度値とを、加算演算した値が前記速度値保持手段に入力され、
前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段および前記1/3演算手段で処理した値と、前記加速度値保持手段に保持された加速度値を前記第2の1/2演算手段で処理した値と、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値以上となると前記パルス生成タイミングを出力するとともに、前記加算演算した値から前記閾値を減算した値が前記距離値保持手段に入力され、
前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段および前記1/3演算手段で処理した値と、前記加速度値保持手段に保持された加速度値を前記第2の1/2演算手段で処理した値と、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値未満となると、該加算演算した値が前記距離値保持手段に入力される
ことを特徴とするパルスモータ制御装置。 Storage means for storing the jerk, acceleration, initial value of speed and end condition of the control section for each control section;
Based on the end condition of the control section stored in the storage means, a change point detection means for detecting a change point that is a point to switch from the current control section to the next control section;
And bounded arithmetic unit for outputting a pulse generation timing,
Based on the pulse generation timing output from the bounded arithmetic unit, a pulse generation means for generating a pulse signal for controlling a pulse motor , and
The bounded arithmetic unit is:
A jerk value holding means for holding jerk, an acceleration value holding means for holding acceleration, a speed value holding means for holding speed, a distance value holding means for holding distance, a first 1/2 calculation means, a second 1/2 calculating means and 1/3 calculating means,
When the change point detection means detects a change point,
Initial values of jerk, acceleration, and speed of the control section are input to the jerk value holding means, the acceleration value holding means, and the speed value holding means,
When the change point detection means does not detect a change point,
A value obtained by adding the jerk value held in the jerk value holding means and the acceleration value held in the acceleration value holding means is input to the acceleration value holding means,
A value obtained by processing the jerk value held in the jerk value holding means by the first ½ calculating means, an acceleration value held in the acceleration value holding means, and held in the speed value holding means. A value obtained by adding the calculated speed value is input to the speed value holding means,
The value obtained by processing the jerk value held in the jerk value holding means by the first ½ calculating means and the 3 calculating means, and the acceleration value held in the acceleration value holding means are The value obtained by adding the value processed by the 1/2 computing means, the speed value held in the speed value holding means, and the distance value held in the distance value holding means is a predetermined threshold value or more. Then, the pulse generation timing is output, and a value obtained by subtracting the threshold value from the addition calculation value is input to the distance value holding unit,
The value obtained by processing the jerk value held in the jerk value holding means by the first ½ calculating means and the 3 calculating means, and the acceleration value held in the acceleration value holding means are The value obtained by adding the value processed by the 1/2 computing means, the speed value held in the speed value holding means, and the distance value held in the distance value holding means is less than a predetermined threshold value. Then, the added value is input to the distance value holding means.
A pulse motor control device comprising a call.
前記記憶手段に記憶された前記制御区間の終了条件に基づいて、現在の制御区間から次の制御区間へと切り替わる点である変化点を検出する変化点検出手段と、
パルス生成タイミングを出力する有界演算器と、
前記有界演算器が出力した前記パルス生成タイミングに基づいて、パルスモータを制御するためのパルス信号を生成するパルス生成手段と、を備え、
前記有界演算器は、
加加速度を保持する加加速度値保持手段、加速度を保持する加速度値保持手段、速度を保持する速度値保持手段、および、距離を保持する距離値保持手段を有し、
前記変化点検出手段が変化点を検出した場合、
前記制御区間の加加速度、加速度、速度の初期値が前記加加速度値保持手段、前記加速度値保持手段、前記速度値保持手段に入力され、
前記変化点検出手段が変化点を検出していない場合、
前記加加速度値保持手段に保持された加加速度値と、前記加速度値保持手段に保持された加速度値とを、加算演算した値が前記加速度値保持手段に入力され、
前記加速度値保持手段に保持された加速度値と、前記速度値保持手段に保持された速度値とを、加算演算した値が前記速度値保持手段に入力され、
前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値以上となると前記パルス生成タイミングを出力するとともに、前記加算演算した値から前記閾値を減算した値が前記距離値保持手段に入力され、
前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値未満となると、該加算演算した値が前記距離値保持手段に入力される
ことを特徴とするパルスモータ制御装置。 Storage means for storing the jerk, acceleration, initial value of speed and end condition of the control section for each control section;
Based on the end condition of the control section stored in the storage means, a change point detection means for detecting a change point that is a point to switch from the current control section to the next control section;
And bounded arithmetic unit for outputting a pulse generation timing,
Based on the pulse generation timing output from the bounded arithmetic unit, a pulse generation means for generating a pulse signal for controlling a pulse motor , and
The bounded arithmetic unit is:
A jerk value holding means for holding jerk, an acceleration value holding means for holding acceleration, a speed value holding means for holding speed, and a distance value holding means for holding distance;
When the change point detection means detects a change point,
Initial values of jerk, acceleration, and speed of the control section are input to the jerk value holding means, the acceleration value holding means, and the speed value holding means,
When the change point detection means does not detect a change point,
A value obtained by adding the jerk value held in the jerk value holding means and the acceleration value held in the acceleration value holding means is input to the acceleration value holding means,
A value obtained by adding the acceleration value held in the acceleration value holding means and the speed value held in the speed value holding means is input to the speed value holding means,
When the value obtained by adding the speed value held in the speed value holding means and the distance value held in the distance value holding means exceeds a predetermined threshold, the pulse generation timing is output and the addition calculation is performed. A value obtained by subtracting the threshold value from the obtained value is input to the distance value holding means,
When the value obtained by adding the speed value held in the speed value holding means and the distance value held in the distance value holding means is less than a predetermined threshold, the value obtained by the addition calculation is the distance value holding means. Entered in
A pulse motor control device comprising a call.
前記有界演算器が、 The bounded arithmetic unit is
前記変化点検出手段が変化点を検出すると、前記制御区間の加加速度、加速度、速度の初期値を前記加加速度値保持手段、前記加速度値保持手段、前記速度値保持手段に入力するステップと、 When the change point detecting means detects a change point, inputting initial values of jerk, acceleration and speed of the control section to the jerk value holding means, the acceleration value holding means, and the speed value holding means;
前記加加速度値保持手段に保持された加加速度値と、前記加速度値保持手段に保持された加速度値とを、加算演算した値を前記加速度値保持手段に入力するステップと、 Inputting a value obtained by adding the jerk value held in the jerk value holding means and the acceleration value held in the acceleration value holding means to the acceleration value holding means;
前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段で処理した値と、前記加速度値保持手段に保持された加速度値と、前記速度値保持手段に保持された速度値とを、加算演算した値を前記速度値保持手段に入力するステップと、 A value obtained by processing the jerk value held in the jerk value holding means by the first ½ calculating means, an acceleration value held in the acceleration value holding means, and held in the speed value holding means. A value obtained by adding the calculated speed value to the speed value holding means;
前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段および前記1/3演算手段で処理した値と、前記加速度値保持手段に保持された加速度値を前記第2の1/2演算手段で処理した値と、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値以上となると前記パルス生成タイミングを出力するとともに、前記加算演算した値から前記閾値を減算した値を前記距離値保持手段に入力し、前記加加速度値保持手段に保持された加加速度値を前記第1の1/2演算手段および前記1/3演算手段で処理した値と、前記加速度値保持手段に保持された加速度値を前記第2の1/2演算手段で処理した値と、前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値未満となると、該加算演算した値を前記距離値保持手段に入力するステップと、を実行する The value obtained by processing the jerk value held in the jerk value holding means by the first ½ calculating means and the 3 calculating means, and the acceleration value held in the acceleration value holding means are The value obtained by adding the value processed by the 1/2 computing means, the speed value held in the speed value holding means, and the distance value held in the distance value holding means is a predetermined threshold value or more. Then, the pulse generation timing is output, and a value obtained by subtracting the threshold value from the added value is input to the distance value holding unit, and the jerk value held in the jerk value holding unit is input to the first acceleration value. A value processed by the 1/2 calculating means and the 1/3 calculating means, a value obtained by processing the acceleration value held in the acceleration value holding means by the second 1/2 calculating means, and the speed value holding means And the speed value held in the And a distance value held in the value holding means, executes the value obtained by adding operation is less than a predetermined threshold, the steps of: inputting a value obtained by the adding operation on the distance value holding means, the
ことを特徴とするパルスモータ制御装置のパルス信号生成方法。A pulse signal generation method for a pulse motor control device.
前記有界演算器が、 The bounded arithmetic unit is
前記変化点検出手段が変化点を検出すると、前記制御区間の加加速度、加速度、速度の初期値を前記加加速度値保持手段、前記加速度値保持手段、前記速度値保持手段に入力するステップと、 When the change point detecting means detects a change point, inputting initial values of jerk, acceleration and speed of the control section to the jerk value holding means, the acceleration value holding means, and the speed value holding means;
前記加加速度値保持手段に保持された加加速度値と、前記加速度値保持手段に保持された加速度値とを、加算演算した値を前記加速度値保持手段に入力するステップと、 Inputting a value obtained by adding the jerk value held in the jerk value holding means and the acceleration value held in the acceleration value holding means to the acceleration value holding means;
前記加速度値保持手段に保持された加速度値と、前記速度値保持手段に保持された速度値とを、加算演算した値を前記速度値保持手段に入力するステップと、 Inputting the value obtained by adding the acceleration value held in the acceleration value holding means and the speed value held in the speed value holding means to the speed value holding means;
前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値以上となると前記パルス生成タイミングを出力するとともに、前記加算演算した値から前記閾値を減算した値を前記距離値保持手段に入力するステップと、 When the value obtained by adding the speed value held in the speed value holding means and the distance value held in the distance value holding means exceeds a predetermined threshold, the pulse generation timing is output and the addition calculation is performed. Inputting a value obtained by subtracting the threshold value from the obtained value to the distance value holding means;
前記速度値保持手段に保持された速度値と、前記距離値保持手段に保持された距離値とを、加算演算した値が所定の閾値未満となると、該加算演算した値を前記距離値保持手段に入力するステップと、を実行する When the value obtained by adding the speed value held in the speed value holding means and the distance value held in the distance value holding means is less than a predetermined threshold, the value obtained by the addition calculation is stored in the distance value holding means. Steps to enter and execute
ことを特徴とするパルスモータ制御装置のパルス信号生成方法。A pulse signal generation method for a pulse motor control device.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012119883A JP6000652B2 (en) | 2012-05-25 | 2012-05-25 | Pulse motor control device and pulse signal generation method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012119883A JP6000652B2 (en) | 2012-05-25 | 2012-05-25 | Pulse motor control device and pulse signal generation method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2013247776A JP2013247776A (en) | 2013-12-09 |
| JP6000652B2 true JP6000652B2 (en) | 2016-10-05 |
Family
ID=49847166
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012119883A Active JP6000652B2 (en) | 2012-05-25 | 2012-05-25 | Pulse motor control device and pulse signal generation method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6000652B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6887857B2 (en) * | 2017-04-12 | 2021-06-16 | キヤノン株式会社 | Motor controller, method and program |
| JP7155653B2 (en) * | 2018-06-22 | 2022-10-19 | コニカミノルタ株式会社 | Drive device, image forming device, and control program |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS57211996A (en) * | 1981-06-24 | 1982-12-25 | Yokogawa Hokushin Electric Corp | Driving method for stepping motor |
| JPH05252775A (en) * | 1992-02-28 | 1993-09-28 | Japan Servo Co Ltd | Speed controller for motor |
-
2012
- 2012-05-25 JP JP2012119883A patent/JP6000652B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2013247776A (en) | 2013-12-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN102792167B (en) | Speed detection device | |
| JP6000652B2 (en) | Pulse motor control device and pulse signal generation method | |
| JP5056853B2 (en) | Speed detection method and motor control apparatus using the same | |
| JP4930919B2 (en) | Rotational position signal processor | |
| CN109768755B (en) | Semiconductor device, angle value correction circuit and method thereof | |
| JP6825260B2 (en) | Speed detector and speed control system | |
| JP6101117B2 (en) | Pulse motor control device | |
| CN112783098A (en) | Multi-axis linkage mechanical motion control method, device and system and readable storage medium | |
| RU2477887C1 (en) | Digital predictor | |
| EP3876162A1 (en) | Learning method, learning system, and learning program | |
| JP2009095154A (en) | Motor control device and speed detection method thereof | |
| JP2019196972A (en) | Rotation angle correction device, and motor control system | |
| RU2622852C1 (en) | Adaptive digital smoothing and predictive device | |
| JP2002116058A (en) | Encoder data conversion circuit | |
| CN111337702A (en) | Data processing system and method for optical incremental encoder | |
| JP6063190B2 (en) | Pulse motor control device and pulse signal generation method | |
| JPWO2020008627A1 (en) | Filtering device, sensor device, filtering method and program | |
| JP2016080547A (en) | Position control device | |
| JP7031573B2 (en) | Estimator, estimation method and estimation program | |
| JP5678868B2 (en) | Signal processing device | |
| JP4952631B2 (en) | Speed detection device | |
| JP5664895B2 (en) | Electric motor control device | |
| RU2629641C1 (en) | Digital predictor | |
| JP2010074637A (en) | Up/down counter device | |
| JP7718333B2 (en) | Speed detection device and speed detection method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150309 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160108 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160202 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160322 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20160705 |
|
| 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: 20160816 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160831 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6000652 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |