JP6349093B2 - Motor control device and correction data creation method in the same - Google Patents

Motor control device and correction data creation method in the same Download PDF

Info

Publication number
JP6349093B2
JP6349093B2 JP2014012320A JP2014012320A JP6349093B2 JP 6349093 B2 JP6349093 B2 JP 6349093B2 JP 2014012320 A JP2014012320 A JP 2014012320A JP 2014012320 A JP2014012320 A JP 2014012320A JP 6349093 B2 JP6349093 B2 JP 6349093B2
Authority
JP
Japan
Prior art keywords
rotation
motor
correction data
current
command signal
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
JP2014012320A
Other languages
Japanese (ja)
Other versions
JP2015142390A (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.)
Yamaha Motor Co Ltd
Original Assignee
Yamaha Motor Co Ltd
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 Yamaha Motor Co Ltd filed Critical Yamaha Motor Co Ltd
Priority to JP2014012320A priority Critical patent/JP6349093B2/en
Priority to TW103137078A priority patent/TWI571043B/en
Priority to US14/602,488 priority patent/US9507338B2/en
Priority to EP15000220.2A priority patent/EP2899874B1/en
Priority to CN201510040656.0A priority patent/CN104808694B/en
Publication of JP2015142390A publication Critical patent/JP2015142390A/en
Application granted granted Critical
Publication of JP6349093B2 publication Critical patent/JP6349093B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Control Of Electric Motors In General (AREA)
  • Control Of Motors That Do Not Use Commutators (AREA)

Description

この発明は、モータの回転軸に接続されるレゾルバやエンコーダなどのセンサから出力される信号に基づいて回転軸の位置検出信号を生成し、さらに当該位置検出信号を補正データで補正して得られる補正済位置信号をフィードバックしてモータを制御するモータ制御装置および同装置で使用する補正データを作成する補正データ作成方法に関するものである。   The present invention is obtained by generating a position detection signal of a rotating shaft based on a signal output from a sensor such as a resolver or an encoder connected to the rotating shaft of the motor, and further correcting the position detection signal with correction data. The present invention relates to a motor control apparatus that controls a motor by feeding back a corrected position signal, and a correction data generation method that generates correction data used in the apparatus.

モータ制御技術においては、位置指令と実際のモータの回転軸の回転位置との位置偏差を得るために、回転軸の回転位置を検出することが必要となる。この位置検出手段の一つに、レゾルバがある。ここで、レゾルバを用いる場合には、レゾルバの位置検出誤差を考慮した位置補正技術が必要となる。そこで、例えば特許文献1や特許文献2に記載の装置では、補正データを予めメモリに記憶しておき、モータ制御時には、レゾルバから出力される信号に基づき作成した位置検出信号を補正データで補正して補正済位置信号を作成し、当該補正済位置信号でモータをフィードバック制御している。   In the motor control technology, it is necessary to detect the rotational position of the rotary shaft in order to obtain a positional deviation between the position command and the actual rotational position of the rotary shaft of the motor. One of the position detecting means is a resolver. Here, when a resolver is used, a position correction technique that takes into account the position detection error of the resolver is required. Therefore, for example, in the devices described in Patent Document 1 and Patent Document 2, correction data is stored in a memory in advance, and a position detection signal created based on a signal output from the resolver is corrected with correction data during motor control. Thus, a corrected position signal is created, and the motor is feedback-controlled using the corrected position signal.

特許第2541169号公報Japanese Patent No. 2541169 特許第5281102号公報Japanese Patent No. 5281102

特許文献1および特許文献2ではレゾルバで検出された位置検出信号から補正データを作成しているが、当該補正データが必ずしも高精度なものであるとはいえず、当該補正データを用いて位置検出信号を補正してもモータを高精度に制御することは困難であった。   In Patent Document 1 and Patent Document 2, correction data is created from a position detection signal detected by a resolver. However, the correction data is not necessarily highly accurate, and position detection is performed using the correction data. Even if the signal is corrected, it is difficult to control the motor with high accuracy.

この発明は上記課題に鑑みなされたものであり、レゾルバやエンコーダなどのセンサから出力される信号に基づいてモータを制御するモータ制御装置で使用する補正データを高精度に作成することができ、モータ制御の精度を向上させることを目的とする。   The present invention has been made in view of the above problems, and can accurately create correction data used in a motor control device that controls a motor based on a signal output from a sensor such as a resolver or an encoder. The purpose is to improve the accuracy of control.

この発明の第1態様は、位置指令信号に応じて回転するモータの回転軸の回転角度に対応してセンサから出力される信号に基づいて回転軸の回転位置に関連する位置検出信号を生成し、位置検出信号を補正データで補正して得られる補正済位置信号と位置指令信号とに基づいて速度指令信号を生成し、補正済位置信号を微分して得られるモータの駆動速度と速度指令信号とに基づいて生成される電流指令信号によりモータをフィードバック制御するモータ制御装置において補正データを作成する補正データ作成方法であって、回転軸が一定速度で回転する定速度領域を含む駆動パターンでモータを駆動しながら回転軸が定速度領域で一回転以上回転する間に電流指令信号をサンプリングして得られるサンプリングデータから回転時指令情報を取得する第1工程と、回転時指令情報に相似比を掛け合わせて補正データを作成する第2工程とを備え、第1工程では、位置検出信号を補正データで補正することなくフィードバックしてモータを駆動しながら定速度領域で一回転以上回転する間に電流指令信号をサンプリングして得られるサンプリングデータから直流成分を取り除いて電流リプルを回転時指令情報として求め、第2工程では、相似比の候補として互いに異なる複数の相似比候補値を準備しておき、相似比候補値毎に、当該相似比候補値を電流リプルに掛け合わせて得られるデータに基づき位置検出信号を補正して得られる補正済位置信号をフィードバックしてモータを駆動しながら定速度領域で一回転以上回転する間に電流指令信号をサンプリングして得られるサンプリングデータから直流成分を取り除いて電流リプルのうち最大値と最小値の差を電流リプル振幅として算出し、複数の電流リプル振幅のうち最小値となる相似比候補値を相似比として設定することを特徴としている。
また、この発明の第2態様は、位置指令信号に応じて回転するモータの回転軸の回転角度に対応してセンサから出力される信号に基づいて回転軸の回転位置に関連する位置検出信号を生成し、位置検出信号を補正データで補正して得られる補正済位置信号と位置指令信号とに基づいて速度指令信号を生成し、補正済位置信号を微分して得られるモータの駆動速度と速度指令信号とに基づいて生成される電流指令信号によりモータをフィードバック制御するモータ制御装置において補正データを作成する補正データ作成方法であって、回転軸が一定速度で回転する定速度領域を含む駆動パターンでモータを駆動しながら回転軸が定速度領域で一回転以上回転する間に電流指令信号をサンプリングして得られるサンプリングデータから回転時指令情報を取得する第1工程と、回転時指令情報に相似比を掛け合わせて補正データを作成する第2工程とを備え、第1工程では、定速度領域を含む往路駆動パターンでモータを駆動しながら回転軸が定速度領域で一回転以上正回転する間に電流指令信号をサンプリングして得られる正回転のサンプリングデータから直流成分を取り除いて正回転電流リプルを求め、回転軸が定速度領域を含む復路駆動パターンでモータを駆動しながら回転軸が定速度領域で一回転以上逆回転する間に電流指令信号をサンプリングして得られる逆回転のサンプリングデータから直流成分を取り除いて逆回転電流リプルを求め、回転軸の回転角度毎に正回転電流リプルと逆回転電流リプルの平均を演算して得られる回転角度毎の平均電流リプルを回転時指令情報として求め、第2工程では、相似比の候補として互いに異なる複数の相似比候補値を準備しておき、相似比候補値毎に、当該相似比候補値を回転時指令情報に掛け合わせて得られるデータに基づき位置検出信号を補正して得られる補正済位置信号をフィードバックしてモータを往復駆動し、往路駆動中に電流指令信号をサンプリングして得られるサンプリングデータから直流成分を取り除いて正回転電流リプルを求めるとともに復路駆動中に電流指令信号をサンプリングして得られるサンプリングデータから直流成分を取り除いて逆回転電流リプルを求め、回転軸の回転角度毎に正回転電流リプルと逆回転電流リプルの平均を演算して得られる回転角度毎の平均電流リプルのうち最大値と最小値の差を電流リプル振幅として算出し、複数の電流リプル振幅のうち最小値となる相似比候補値を相似比として設定することを特徴としている。
The first aspect of the present invention generates a position detection signal related to the rotational position of the rotating shaft based on a signal output from the sensor corresponding to the rotational angle of the rotating shaft of the motor rotating in accordance with the position command signal. A speed command signal is generated based on the corrected position signal and the position command signal obtained by correcting the position detection signal with the correction data, and the motor driving speed and the speed command signal obtained by differentiating the corrected position signal. Is a correction data generation method for generating correction data in a motor control device that feedback-controls a motor by a current command signal generated based on the motor, and a motor having a driving pattern including a constant speed region in which a rotating shaft rotates at a constant speed rotation time command information a current command signal from the sampling data obtained by sampling during the rotation shaft while driving to rotate one revolution or more at a constant speed region A first step of Tokusuru, by multiplying the similarity ratio on the rotation time of command information and a second step of creating correction data, in the first step, the motor is fed back without correcting the position detection signal with the correction data The DC ripple is removed from the sampling data obtained by sampling the current command signal while rotating at least one revolution in the constant speed region while driving, and the current ripple is obtained as rotation command information. In the second step, the similarity ratio candidate A plurality of similarity ratio candidate values different from each other are prepared, and for each similarity ratio candidate value, a corrected position detection signal is obtained based on data obtained by multiplying the similarity ratio candidate value by a current ripple. A sample obtained by sampling the current command signal while rotating one or more revolutions in the constant speed range while driving the motor by feeding back the position signal Characterized in that calculated as a current ripple amplitude difference between the maximum value and the minimum value of the current ripple from the data by removing the DC component, to set a homothetic ratio candidate value having the minimum value among the plurality of current ripple amplitude as similarity ratio It is said.
According to a second aspect of the present invention, a position detection signal related to the rotational position of the rotating shaft is generated based on a signal output from the sensor in accordance with the rotational angle of the rotating shaft of the motor rotating in accordance with the position command signal. Generate a speed command signal based on the corrected position signal and position command signal obtained by correcting the position detection signal with the correction data, and the motor driving speed and speed obtained by differentiating the corrected position signal A correction data generation method for generating correction data in a motor control device that feedback-controls a motor based on a current command signal generated based on a command signal, the driving pattern including a constant speed region in which a rotating shaft rotates at a constant speed Command during rotation from the sampling data obtained by sampling the current command signal while rotating the motor one or more times in the constant speed range while driving the motor A first step of acquiring information and a second step of generating correction data by multiplying the rotation command information by the similarity ratio, and in the first step, the motor is driven with an outward drive pattern including a constant speed region. While rotating the rotating shaft in the constant speed range, the DC rotation is removed from the positive rotation sampling data obtained by sampling the current command signal during one or more positive rotations in the constant speed range. The reverse rotation current ripple is obtained by removing the DC component from the reverse rotation sampling data obtained by sampling the current command signal while the rotation axis rotates backward or more in the constant speed region while driving the motor with the return path drive pattern including The average current ripple for each rotation angle obtained by calculating the average of the forward rotation current ripple and the reverse rotation current ripple for each rotation angle of the rotation shaft is used as the rotation command information. In the second step, data obtained by preparing a plurality of different similarity ratio candidate values as similarity ratio candidates and multiplying the similarity ratio candidate value by the rotation time command information for each similarity ratio candidate value. A positive rotation current ripple is obtained by feeding back the corrected position signal obtained by correcting the position detection signal based on the feedback and driving the motor back and forth, and removing the DC component from the sampling data obtained by sampling the current command signal during the forward drive. The reverse rotation current ripple is obtained by removing the DC component from the sampling data obtained by sampling the current command signal during the backward drive, and the average of the forward rotation current ripple and the reverse rotation current ripple is calculated for each rotation angle of the rotating shaft. The difference between the maximum and minimum values of the average current ripple for each rotation angle obtained by calculation is calculated as the current ripple amplitude, and multiple current ripples are calculated. It is characterized in that the similarity ratio candidate value that is the minimum value among the amplitudes is set as the similarity ratio.

また、この発明の第態様は、位置指令信号に応じて回転するモータの回転軸の回転角度に対応してセンサから出力される信号に基づいて回転軸の回転位置に関連する位置検出信号を生成し、位置検出信号を補正データで補正して得られる補正済位置信号と位置指令信号とに基づいて速度指令信号を生成し、補正済位置信号を微分して得られるモータの駆動速度と速度指令信号とに基づいて生成される電流指令信号によりモータをフィードバック制御するモータ制御装置であって、上記補正データ作成方法により補正データを作成する補正データ作成部を備えことを特徴としている。 According to a third aspect of the present invention, a position detection signal related to the rotational position of the rotating shaft is generated based on a signal output from the sensor in accordance with the rotational angle of the rotating shaft of the motor rotating in accordance with the position command signal. Generate a speed command signal based on the corrected position signal and position command signal obtained by correcting the position detection signal with the correction data, and the motor driving speed and speed obtained by differentiating the corrected position signal a motor control apparatus for feedback control of the motor by the current command signal is generated based on the command signal, it is characterized by Ru a correction data creation unit that creates correction data by the correction data generation method.

このように構成された発明では、回転軸が定速度領域で一回転以上回転する間に指令信号がサンプリングされる。そして、サンプリングデータから回転時指令情報が取得される。この回転時指令情報は後で詳述するように動的実誤差と相似関係を有しており、回転時指令情報に相似比を掛け合わせることで補正データを高精度に作成することが可能となる。また、こうして作成される補正データを用いたフィードバック制御を行うことでモータ制御の精度が向上する。   In the invention configured as described above, the command signal is sampled while the rotating shaft rotates at least once in the constant speed region. Then, rotation command information is obtained from the sampling data. As will be described in detail later, this rotational command information has a similar relationship with the dynamic actual error, and correction data can be created with high accuracy by multiplying the rotational command information by the similarity ratio. Become. Further, the accuracy of motor control is improved by performing feedback control using the correction data thus created.

以上のように、本発明によれば、回転時指令情報に対して相似比を掛け合わせてモータ制御装置で使用する補正データを作成しているため、補正データを高精度に作成することができ、モータ制御の精度を向上させることが可能となる。   As described above, according to the present invention, the correction data to be used in the motor control device is created by multiplying the rotation command information by the similarity ratio, so that the correction data can be created with high accuracy. It is possible to improve the accuracy of motor control.

本発明の基礎となる知見を得るために用いたモータ制御装置の構成、当該装置により検出された動的実誤差と電流リプルとの関係、および静的実誤差を示す図である。It is a figure which shows the structure of the motor control apparatus used in order to acquire the knowledge used as the foundation of this invention, the relationship between the dynamic real error detected by the said apparatus, and a current ripple, and a static real error. 本発明にかかるモータ制御装置の第1実施形態の電気的構成を示す図である。It is a figure which shows the electrical constitution of 1st Embodiment of the motor control apparatus concerning this invention. 図2に示すモータ制御装置における補正データ作成動作を示すフローチャートである。3 is a flowchart showing a correction data creation operation in the motor control device shown in FIG. 2. 第1実施形態での補正データ作成中のモータの回転速度パターンを示す図である。It is a figure which shows the rotational speed pattern of the motor in correction data creation in 1st Embodiment. 正回転電流リプルの一例を示すグラフである。It is a graph which shows an example of a normal rotation current ripple. オフセット合わせ動作を示すグラフである。It is a graph which shows offset adjustment operation | movement. 相似比合わせ動作の一例を示すグラフである。It is a graph which shows an example of similarity ratio matching operation. 図1(a)に示す装置において認められる静的実誤差と正回転時の動的実誤差との関係を示す図である。It is a figure which shows the relationship between the static real error recognized in the apparatus shown to Fig.1 (a), and the dynamic real error at the time of forward rotation. 図1(a)に示す装置において認められる静的実誤差と逆回転時の動的実誤差との関係を示す図である。It is a figure which shows the relationship between the static real error recognized in the apparatus shown to Fig.1 (a), and the dynamic real error at the time of reverse rotation. 図1(a)に示す装置において同一の定速度でモータを往復駆動した際に正回転時動的実誤差、逆回転時動的実誤差および静的実誤差の関係を示す図である。It is a figure which shows the relationship between the dynamic actual error at the time of forward rotation, the dynamic actual error at the time of reverse rotation, and the static actual error when the motor is reciprocated at the same constant speed in the apparatus shown in FIG. 第2実施形態における補正データ作成動作を示すフローチャートである。It is a flowchart which shows the correction data creation operation | movement in 2nd Embodiment. 補正データ作成中のモータの回転速度パターンを示す図である。It is a figure which shows the rotational speed pattern of the motor in correction data creation. 正回転時および逆回転時の電流リプルの一例を示すグラフである。It is a graph which shows an example of the current ripple at the time of forward rotation and reverse rotation. 位相合わせ動作の一例を示すグラフである。It is a graph which shows an example of phase alignment operation. 相似比合わせ動作の一例を示すグラフである。It is a graph which shows an example of similarity ratio matching operation. オフセット合わせ動作を示すグラフである。It is a graph which shows offset adjustment operation | movement. 補正データを用いることによる静的実誤差の改善を示すグラフである。It is a graph which shows the improvement of a static real error by using correction data.

A.レゾルバの位置検出誤差と電流指令との相似関係
本願発明者は、図1(a)に示す構成を有するモータ制御装置により種々の実験を行い、レゾルバの位置検出誤差と電流指令との間に相似関係が存在するという知見を得た。ここで実験に使用したモータ制御装置100はロボットコントローラであり、当該モータ制御装置100によりモータMを回転駆動する。このモータMの回転軸には、図1(a)に示すように、レゾルバReを取り付けるだけでなく、レゾルバReよりも高精度に位置を検出することが可能な基準位置検出器Eが取り付けられており、レゾルバReおよび基準位置検出器Eによる検出信号がそれぞれモータ制御装置100に出力される。なお、同図(a)中の符号PCはシリアル通信インターフェース(RS232C)を介してモータ制御装置100に接続されたパーソナルコンピュータである。
A. Similarity Relationship between Resolver Position Detection Error and Current Command The inventor of the present application conducted various experiments using the motor control device having the configuration shown in FIG. I gained the knowledge that a relationship exists. The motor control device 100 used in the experiment here is a robot controller, and the motor M is rotated by the motor control device 100. As shown in FIG. 1A, a reference position detector E capable of detecting a position with higher accuracy than the resolver Re is attached to the rotating shaft of the motor M. Detection signals from the resolver Re and the reference position detector E are output to the motor control device 100, respectively. In addition, the code | symbol PC in the figure (a) is a personal computer connected to the motor control apparatus 100 via the serial communication interface (RS232C).

また、図1(b)はレゾルバReを用いたときの動的実誤差と電流指令の関係を示す図である。この実験結果はモータMを30[rps]の一定速で回転させている間にサンプリングしたものである。同図(b)中の動的実誤差は一定速動作状態で計測したレゾルバと基準位置検出器の検出位置の差を意味しており、本実施形態では各回転角度におけるレゾルバReの検出位置から基準位置検出器Eの検出位置を差し引いた値を用いており、この動的実誤差によってレゾルバReの位置検出誤差を示している。また、電流指令は一定速動作状態での電流指令値のAC成分、つまり電流リプルを示しており、本実施形態では一回転区間の間にサンプリングした電流指令信号の電流値をサンプリングデータとし、その区間平均を求めるとともに、当該区間中の電流指令信号の電流値から上記区間平均を差し引いて電流リプルを求めている。なお、同図(b)の横軸、つまり回転角度は、基準位置検出器Eの検出位置を角度換算したものである。 FIG. 1B is a diagram showing the relationship between the dynamic actual error and the current command when the resolver Re is used. This experimental result was sampled while rotating the motor M at a constant speed of 30 [rps]. The dynamic actual error in FIG. 5B means the difference between the detection position of the resolver measured in the constant speed operation state and the reference position detector. In this embodiment, the dynamic actual error is determined from the detection position of the resolver Re at each rotation angle. A value obtained by subtracting the detection position of the reference position detector E is used, and the position detection error of the resolver Re is indicated by this dynamic actual error. The current command indicates the AC component of the current command value in the constant speed operation state, that is, the current ripple. In this embodiment, the current value of the current command signal sampled during one rotation section is used as sampling data, A section average is obtained, and a current ripple is obtained by subtracting the section average from the current value of the current command signal in the section. The horizontal axis in FIG. 5B, that is, the rotation angle is obtained by converting the detection position of the reference position detector E into an angle.

同図(b)から明らかなように、レゾルバReの位置検出誤差である動的実誤差は電流指令値のAC成分(電流リプル)と相似関係を有している。したがって、本願発明者は、電流リプルから動的実誤差を推定することができ、その推定誤差から補正データを作成し、当該補正データによりレゾルバReの位置検出信号を補正することで位置精度を向上させることが可能であるという知見を得た。なお、ここでは、モータMを30[rps]の一定速で回転させている間にサンプリングしたサンプリング結果に基づいて上記知見を得ているが、当該30[rps]を含めた速度範囲、具体的には15[rps]〜100[rps]の速度範囲においても上記と同じ知見が成立することを本願発明者は確認した。   As is clear from FIG. 5B, the dynamic actual error, which is the position detection error of the resolver Re, has a similar relationship with the AC component (current ripple) of the current command value. Therefore, the inventor of the present application can estimate the dynamic actual error from the current ripple, create correction data from the estimation error, and improve the position accuracy by correcting the position detection signal of the resolver Re with the correction data. The knowledge that it was possible to get it. Here, the above knowledge is obtained based on the sampling result sampled while rotating the motor M at a constant speed of 30 [rps], but the speed range including the 30 [rps], specifically The present inventor has confirmed that the same knowledge as described above holds even in the speed range of 15 [rps] to 100 [rps].

また、同図(c)は静的実誤差を示す図である。この「静的実誤差」とは静止状態で計測したレゾルバReと基準位置検出器Eの検出角度の差を意味している。ここで、同図(c)に示された静的実誤差において注目すべき点は、回転角度がゼロのとき、静的実誤差がゼロとなっていることである。したがって、本願発明者は、補正データを作成する際に、上記したように電流リプルから動的実誤差を推定するのに加え、回転角度ゼロで静的実誤差がゼロになるという点をさらに考慮することで補正データの精度をさらに高めることができるという知見を得た。   FIG. 6C shows a static actual error. The “static actual error” means a difference between the detection angle of the resolver Re and the reference position detector E measured in a stationary state. Here, the point to be noted in the static actual error shown in FIG. 4C is that the static actual error is zero when the rotation angle is zero. Therefore, the present inventor further considers that the static actual error becomes zero at the rotation angle of zero in addition to estimating the dynamic actual error from the current ripple as described above when generating the correction data. As a result, it has been found that the accuracy of the correction data can be further improved.

このような知見に基づき本願発明者は、モータMの回転軸が定速度で回転する間に指令信号をサンプリングして得られるサンプリングデータから電流リプルを取得し、電流リプルに適切な相似比を掛け合わせることで補正データを高精度に作成することが可能であるとの結論を得た。以下、上記知見を用いて補正データを作成する発明の実施形態について以下に図面を参照しつつ説明する。   Based on such knowledge, the inventor of the present application obtains a current ripple from sampling data obtained by sampling a command signal while the rotation shaft of the motor M rotates at a constant speed, and multiplies the current ripple by an appropriate similarity ratio. It was concluded that correction data can be created with high accuracy by combining them. Hereinafter, embodiments of the invention for creating correction data using the above knowledge will be described with reference to the drawings.

B.第1実施形態
図2は本発明にかかるモータ制御装置の第1実施形態の電気的構成を示す図である。このモータ制御装置1は、位置指令信号に基づいてモータMを駆動するモータ駆動部2と、補正データを作成する補正データ作成部3とを備えている。以下では、先にモータ駆動部2の構成を説明した後で、補正データ作成部3の構成を説明する。
B. First Embodiment FIG. 2 is a diagram showing an electrical configuration of a first embodiment of a motor control device according to the present invention. The motor control device 1 includes a motor drive unit 2 that drives a motor M based on a position command signal, and a correction data creation unit 3 that creates correction data. In the following, the configuration of the correction data creation unit 3 will be described after the configuration of the motor drive unit 2 is described first.

モータ駆動部2では、位置制御部21が外部から与えられる位置指令信号と後で説明する補正済位置信号との差に基づいて速度指令信号を出力する。速度制御部22は、上記補正済位置信号を微分器23で微分することで算出されるモータMの駆動速度と速度指令信号との差に基づいて電流指令信号を出力する。この電流指令信号は後述する補正データ作成部3に出力されるとともに電流制御部24に出力される。この電流制御部24は電流指令信号に基づいて駆動指令信号を電流センサ25を介してモータMに出力する。より詳しくは、電流センサ25は電流制御部24から出力された駆動指令信号を検出して駆動指令信号の電流値を示す電流検出信号を電流制御部24の入力側にフィードバックする。そして、電流制御部24は電流検出信号と電流指令信号との差に基づいて駆動指令信号を出力する。そして、駆動指令信号を受けたモータMは、この駆動指令信号に応じたトルクを出力する。   In the motor drive unit 2, the position control unit 21 outputs a speed command signal based on a difference between a position command signal given from the outside and a corrected position signal described later. The speed control unit 22 outputs a current command signal based on the difference between the driving speed of the motor M calculated by differentiating the corrected position signal with the differentiator 23 and the speed command signal. This current command signal is output to the correction data creation unit 3 described later and also to the current control unit 24. The current control unit 24 outputs a drive command signal to the motor M via the current sensor 25 based on the current command signal. More specifically, the current sensor 25 detects the drive command signal output from the current control unit 24 and feeds back a current detection signal indicating the current value of the drive command signal to the input side of the current control unit 24. Then, the current control unit 24 outputs a drive command signal based on the difference between the current detection signal and the current command signal. And the motor M which received the drive command signal outputs the torque according to this drive command signal.

また、モータMの回転軸(図示省略)にはレゾルバReが接続されており、回転軸の回転位置を検出して回転位置を示すアナログ信号を出力する。このアナログ信号はRD変換器26に入力されてデジタルの位置検出信号に変換され、出力される。この位置検出信号に対して次に説明する補正データ作成部3で作成された補正信号を加えて補正した信号が上記補正済位置信号であり、上記したように位置制御部21および微分器23に与えられる。   In addition, a resolver Re is connected to the rotation shaft (not shown) of the motor M, and the rotation position of the rotation shaft is detected and an analog signal indicating the rotation position is output. This analog signal is input to the RD converter 26, converted into a digital position detection signal, and output. A signal corrected by adding a correction signal generated by the correction data generating unit 3 described below to the position detection signal is the corrected position signal. As described above, the position control unit 21 and the differentiator 23 receive the corrected signal. Given.

次に、補正データ作成部3の構成について説明した後で、補正データの作成方法について説明する。この補正データ作成部3は、CPU(Central Processing Unit)等のような演算機能を有する演算処理部31と、4つのメモリ321〜324を有する記憶部32とを備えている。演算処理部31は、モータ駆動部2によってモータMが所定の駆動パターンで往復駆動されている間に、予め記憶されているプログラムに従って速度制御部22から出力される電流指令信号をサンプリングし、さらに次に詳述する電流リプル取得処理、オフセット合わせ処理および相似比合わせ処理を実行して補正データを作成する。このように、本実施形態では、演算処理部31は、電流指令値サンプリング部311、電流リプル取得部312、相似比合わせ部313およびオフセット合わせ部314として機能する。   Next, after describing the configuration of the correction data creation unit 3, a method for creating correction data will be described. The correction data creation unit 3 includes an arithmetic processing unit 31 having an arithmetic function such as a CPU (Central Processing Unit) and a storage unit 32 having four memories 321 to 324. The arithmetic processing unit 31 samples a current command signal output from the speed control unit 22 in accordance with a program stored in advance while the motor M is reciprocatingly driven by the motor driving unit 2 with a predetermined driving pattern. Next, a current ripple acquisition process, an offset adjustment process, and a similarity ratio adjustment process, which will be described in detail, are executed to create correction data. Thus, in the present embodiment, the arithmetic processing unit 31 functions as the current command value sampling unit 311, the current ripple acquisition unit 312, the similarity ratio matching unit 313, and the offset matching unit 314.

図3は図2に示すモータ制御装置における補正データ作成動作を示すフローチャートである。本実施形態では、モータMやレゾルバReの取付や交換などが行われた場合やユーザにより補正データの作成が指令された場合、モータMが装置に組み込まれた状態、例えばモータMをロボットの駆動源として用いる場合にはモータMの回転軸にロボットの可動部(ボールネジなどの移動機構部)が連結された状態のまま以下に説明する補正データ作成処理が実行される。   FIG. 3 is a flowchart showing a correction data creation operation in the motor control device shown in FIG. In the present embodiment, when the motor M or the resolver Re is attached or exchanged or when the creation of correction data is instructed by the user, the motor M is incorporated in the apparatus, for example, the motor M is driven by the robot. When used as a source, correction data creation processing described below is executed while the movable part of the robot (moving mechanism part such as a ball screw) is connected to the rotation axis of the motor M.

ステップS1では、モータ駆動部2によってモータMを動作させてロボットを移動させる距離と定速度領域の速度V0+、V0−とが設定される。これらの設定により補正データ作成処理を行う際にモータMがロボットを駆動してロボットが動作する動作パターン、つまりモータ駆動部2によるモータMの駆動パターンを決定する。また、モータ駆動部2の動作モードとして、予め複数の動作モードが用意されているが、補正データの作成処理においては最初、モータ駆動部2に補正信号を出力しない、つまり補正データによる補正を行わずにモータMを駆動する「補正無し動作」を選択し(ステップS2)、電流リプル取得処理を実行する(ステップS3〜S5)。   In step S1, the distance for moving the robot by operating the motor M by the motor driving unit 2 and the speeds V0 + and V0− in the constant speed region are set. With these settings, when the correction data creation process is performed, the motor M drives the robot and the operation pattern in which the robot operates, that is, the motor M drive pattern by the motor driving unit 2 is determined. In addition, a plurality of operation modes are prepared in advance as the operation mode of the motor drive unit 2, but in the correction data creation process, a correction signal is not first output to the motor drive unit 2, that is, correction by correction data is performed. “No correction operation” is selected to drive the motor M (step S2), and current ripple acquisition processing is executed (steps S3 to S5).

この電流リプル取得処理では、モータ駆動部2によるモータMの駆動を開始してロボットを往復移動させるとともに往路移動中に電流サンプリングを行う(ステップS3)。すなわち、モータMの駆動開始により、例えば図4に示すように、モータMが正回転し、所定時間をかけてロボットの移動速度を速度V0+まで加速し、ステップS1で設定した移動距離に応じた時間だけ一定速度V0+を維持した後、減速を開始してモータMの正回転を停止させる。このように、モータMを正回転させてロボットを移動させることを「往路移動」と称し、そのように移動させるためのモータMの駆動パターンを「往路駆動パターン」と称するとともに、その往路駆動パターンにおいて一定速度V0+が維持される領域を「定速度領域」と称する。また、往路移動中の定速度領域のほぼ中間位置において、モータMの一回転中にモータ駆動部2の速度制御部22から出力される電流指令信号を一定の時間間隔でサンプリングした回転角度毎の電流指令値を「サンプリングデータ」として電流サンプリングメモリ321に書き込む。   In this current ripple acquisition process, driving of the motor M by the motor driving unit 2 is started to reciprocate the robot, and current sampling is performed during the forward movement (step S3). That is, when the motor M starts to be driven, for example, as shown in FIG. 4, the motor M rotates forward, and the moving speed of the robot is accelerated to the speed V0 + over a predetermined time, according to the moving distance set in step S <b> 1. After maintaining the constant speed V0 + for the time, deceleration is started and the forward rotation of the motor M is stopped. In this way, moving the robot by rotating the motor M forward is referred to as “outward movement”, and the drive pattern of the motor M for such movement is referred to as “outward drive pattern” and the forward drive pattern. A region where the constant speed V0 + is maintained in is referred to as a “constant speed region”. In addition, at almost the intermediate position of the constant speed region during the forward movement, the current command signal output from the speed control unit 22 of the motor drive unit 2 during one rotation of the motor M is sampled at every rotation angle. The current command value is written in the current sampling memory 321 as “sampling data”.

また、次のステップS4では、電流サンプリングメモリ321から一回転分の電流指令値を読み出し、その平均値を計算する。そして、回転角度毎に電流指令値から上記平均値を引いて正回転電流リプルを求め、電流サンプリングメモリ321に上書きする。こうして往路移動中の電流指令値のAC成分である正回転電流リプルが取得される(図5)。   In the next step S4, the current command value for one rotation is read from the current sampling memory 321, and the average value is calculated. Then, for each rotation angle, the average value is subtracted from the current command value to obtain a positive rotation current ripple, and the current sampling memory 321 is overwritten. Thus, the positive rotation current ripple that is the AC component of the current command value during the forward movement is acquired (FIG. 5).

さらに、回転角度ゼロでの静的実誤差はゼロであることからオフセット合わせを行う(ステップS5)。つまり、電流リプルを構成する回転軸の回転角度毎の値のうち回転角度がゼロである値をオフセットデータとし、回転角度毎の値からオフセットデータを引いてオフセット合わせ済電流リプル(例えば図6中の実線)を求め、これをメモリ322中の補正元テーブルに書き込む(ステップS6)。   Further, since the static actual error at the rotation angle of zero is zero, offset adjustment is performed (step S5). That is, of the values for each rotation angle of the rotating shaft constituting the current ripple, the value where the rotation angle is zero is used as the offset data, and the offset data is subtracted from the value for each rotation angle (for example, in FIG. 6). And is written in the correction source table in the memory 322 (step S6).

上記した電流リプル取得処理が完了し、動作モードとして「相似比合わせ動作」を選択する(ステップS7)と、次の往復駆動の開始タイミングT1(図4)より、以下に説明する相似比合わせ処理を実行する(ステップS8〜S15)。この相似比合わせ処理では、まず最初に各種初期設定を行う。本実施形態では、初期設定のひとつとして、カウント値nの初期値として「1」を設定するとともに一回転分の電流リプルの最大値から最小値を引いた値、つまり電流リプル振幅の最小値RWminをデフォルト値(この実施形態では、「10000」)に設定する(ステップS8)。そして、次のステップS9で相似比を値(n/20)に設定する。例えばn=1のとき、相似比は初期値(1/20)に設定される。 When the above-described current ripple acquisition process is completed and “similarity ratio matching operation” is selected as the operation mode (step S7), the similarity ratio matching process described below is performed from the start timing T1 of the next reciprocating drive (FIG. 4). Are executed (steps S8 to S15). In this similarity ratio matching process, first, various initial settings are performed. In the present embodiment, the initial setting as one of the value obtained by subtracting the minimum value from the maximum value of current ripple one rotation sets a "1" as an initial value of the count value n, that is the minimum value of the current ripple amplitude RWmin is set to a default value (“10000” in this embodiment) (step S8). In the next step S9, the similarity ratio is set to a value (n / 20). For example, when n = 1, the similarity ratio is set to an initial value (1/20).

相似比(n/20)の設定後、補正元テーブルメモリ322からオフセット合わせ済電流リプルを読み出し、当該オフセット合わせ済電流リプルに相似比を掛け合わせたものを補正信号としてモータ駆動部2に出力する。そして、補正信号による補正を行いながら、モータ駆動部2によるモータMの駆動を開始してロボットを往復移動させるとともに当該移動中に電流サンプリングを行う(ステップS10)。なお、補正信号による補正を行っている点を除き、往復移動動作および電流サンプリング動作は電流リプル取得処理時のそれら(ステップS3)と同一であり、一回転分のサンプリングデータが電流サンプリングメモリ321に書き込まれる。例えばn=1のとき、図4中のタイミングT1からタイミングT2までの間でモータMを駆動しながら、往路駆動パターンの定速度領域のほぼ中間の一回転分の電流サンプリングを行う。   After setting the similarity ratio (n / 20), the offset matched current ripple is read from the correction source table memory 322, and a product obtained by multiplying the offset matched current ripple by the similarity ratio is output to the motor drive unit 2 as a correction signal. . Then, while performing correction using the correction signal, the motor driving unit 2 starts driving the motor M to reciprocate the robot, and current sampling is performed during the movement (step S10). The reciprocating movement operation and the current sampling operation are the same as those in the current ripple acquisition process (step S3) except that the correction signal is used for correction, and sampling data for one rotation is stored in the current sampling memory 321. Written. For example, when n = 1, current sampling is performed for one rotation substantially in the middle of the constant speed region of the forward path driving pattern while driving the motor M from timing T1 to timing T2 in FIG.

電流サンプリングが完了すると、電流リプルの計算および相似比合わせメモリ323への書込を行う(ステップS11)。すなわち、上記ステップS4と同様にして電流リプルを算出する。そして、相似比を(n/20)に設定した時の電流リプルを相似比合わせメモリ323に書き込む。   When the current sampling is completed, the current ripple is calculated and written into the similarity ratio matching memory 323 (step S11). That is, the current ripple is calculated in the same manner as in step S4. Then, the current ripple when the similarity ratio is set to (n / 20) is written to the similarity ratio matching memory 323.

次のステップS12では、相似比合わせメモリ323に書き込まれた一回転分の電流リプルより電流リプル振幅を求めた後、当該電流リプル振幅が最小値RWmin未満であるか否かを判定する。そして、ステップS12で「YES」と判定、つまりカウント値nでの電流リプル振幅が最小値RWmin未満であると判定したとき、最小値RWminを当該電流リプル振幅に更新するとともに当該カウント値nを最適値Kbestとして相似比合わせメモリ323に書き込んだ(ステップS13)後で、ステップS14に進む。なお、最適値Kbestの記憶先は相似比合わせメモリ323に限定されるものではなく、任意のメモリに書き込むことができる。一方、ステップS12で「NO」と判定したときには、最小値RWminおよび最適値Kbestの更新を行わず、そのままステップS14に進む。   In the next step S12, after obtaining the current ripple amplitude from the current ripple for one rotation written in the similarity ratio matching memory 323, it is determined whether or not the current ripple amplitude is less than the minimum value RWmin. Then, when “YES” is determined in step S12, that is, when it is determined that the current ripple amplitude at the count value n is less than the minimum value RWmin, the minimum value RWmin is updated to the current ripple amplitude and the count value n is optimized. After the value Kbest is written in the similarity ratio matching memory 323 (step S13), the process proceeds to step S14. Note that the storage destination of the optimum value Kbest is not limited to the similarity comparison memory 323, and can be written to an arbitrary memory. On the other hand, if “NO” is determined in the step S12, the minimum value RWmin and the optimum value Kbest are not updated, and the process directly proceeds to a step S14.

このステップS14でカウント値nを「1」だけインクリメントした後、カウント値nが「21」であるか否かを判定する(ステップS15)。そして、ステップS15で「NO」、つまりカウント値nが「20」以下であると判定する間、ステップS9に戻って電流リプル振幅が最小となる相似比の導出処理(ステップS9〜S14)を繰り返す。つまり、本実施形態では、相似比の候補として(1/20)、(2/20)、…、(20/20)を準備しておき、相似比の候補毎に相似比の導出処理を行った上で最適値Kbestを決定している。   After the count value n is incremented by “1” in step S14, it is determined whether or not the count value n is “21” (step S15). Then, while it is determined as “NO” in step S15, that is, the count value n is “20” or less, the process returns to step S9 to repeat the similarity ratio derivation process (steps S9 to S14) that minimizes the current ripple amplitude. . That is, in the present embodiment, (1/20), (2/20),..., (20/20) are prepared as candidates for similarity ratio, and the similarity ratio derivation process is performed for each similarity ratio candidate. In addition, the optimum value Kbest is determined.

一方、ステップS15で「YES」と判定したときには、図3のステップS16に進む。このステップS16では、相似比合わせメモリ323から最適値Kbestを読み出し、電流リプル振幅が最も小さくなる最適相似比(=Kbest/20)を決定する。そして、補正元テーブルメモリ322からオフセット合わせ済電流リプルを読み出し、当該オフセット合わせ済電流リプルを構成する回転角度毎の値に最適相似比を掛け合わせて相似比合わせ済データを作成し、これを補正データとして補正テーブルメモリ324に書き込む(ステップS16)。これによって、より高精度な補正データが得られる。 On the other hand, when it is determined as "YES" in the step S15, the process proceeds to step S 16 in FIG. In step S 16, it reads out the optimum value Kbest from similarity ratio registration memory 323 to determine the optimal similarity ratio of current ripple amplitude is minimized to (= Kbest / 20). Then, the offset-matched current ripple is read from the correction source table memory 322, and the similarity-matched data is created by multiplying the value for each rotation angle constituting the offset-matched current ripple by the optimum similarity ratio and correcting it. Data is written in the correction table memory 324 (step S 16 ). Thereby, more accurate correction data can be obtained.

以上のように、本実施形態によれば、上記した「A.レゾルバの位置検出誤差と電流指令との相似関係」の項で説明した知見に基づきモータ制御装置1で使用する補正データを作成しているため、補正データを高精度に作成することができ、モータMの制御精度を向上させることが可能である。   As described above, according to the present embodiment, correction data used in the motor control device 1 is created based on the knowledge described in the section “A. Similarity between position detection error of resolver and current command”. Therefore, the correction data can be created with high accuracy, and the control accuracy of the motor M can be improved.

また、補正データを作成する方法として、基準位置検出器を取り付けて当該基準位置検出器で計測した位置との誤差を補正データとするものが従来より提案されているが、この場合、補正データを作成するための補正設備が別途必要となる。これに対し、上記実施形態では、当該補正設備を一切用いることなく、モータ制御装置1の独自の機能によって補正データを作成することができ、自らの性能を改善することができる。つまり、上記実施形態にかかるモータ制御装置1は自己補正機能を有している。また、ロボットにモータMを取り付けた状態で補正データを作成することができる。したがって、ロボットを設置した工場などでモータMを交換したり、修理した時にも、その場で交換・修理後に補正データを作成することができる。   In addition, as a method for creating correction data, a method has been proposed in which a reference position detector is attached and an error from a position measured by the reference position detector is used as correction data. A correction facility for preparation is separately required. On the other hand, in the said embodiment, correction data can be created by the original function of the motor control apparatus 1 without using the said correction equipment at all, and own performance can be improved. That is, the motor control device 1 according to the above embodiment has a self-correction function. Further, the correction data can be created with the motor M attached to the robot. Therefore, even when the motor M is replaced or repaired at a factory or the like where the robot is installed, correction data can be created after replacement and repair on the spot.

また、上記実施形態では、速度指令信号を速度制御部22で増幅した後の電流指令信号を利用して補正データを作成しており、分解能を十分に高く取れ、補正後の位置精度を従来技術よりも上げることができる。ここで、電流指令信号の代わりに、電流検出信号を用いて補正データを作成してもよく、上記実施形態と同様の作用効果が得られる。   Further, in the above embodiment, the correction data is created using the current command signal after the speed command signal is amplified by the speed control unit 22, and the resolution can be sufficiently high, and the corrected position accuracy is achieved by the prior art. Than can be raised. Here, the correction data may be created using the current detection signal instead of the current command signal, and the same effect as the above embodiment can be obtained.

このように本実施形態では、レゾルバReが本発明の「センサ」の一例に相当している。また、上記実施形態では電流リプル取得処理およびオフセット合わせ処理によってオフセット合わせ済電流リプルを求めており、これらの処理が本発明の「第1工程」の一例に相当している。また、相似比合わせ処理が本発明の「第2工程」の一例に相当している。この相似比合わせ処理において相似比(n/20)をオフセット合わせ済電流リプルに掛け合わせて得られるデータが本発明の「補正データ候補」の一例に相当し、当該データを取得する動作が本発明の「補正データ候補作成工程」の一例に相当するとともに当該データでフィードバック制御してモータMを駆動する動作が本発明の「モータ駆動工程」の一例に相当している。   Thus, in the present embodiment, the resolver Re corresponds to an example of the “sensor” of the present invention. In the above embodiment, the current ripple having been offset-adjusted is obtained by the current ripple acquisition process and the offset adjustment process, and these processes correspond to an example of the “first step” of the present invention. The similarity ratio matching process corresponds to an example of the “second step” in the present invention. In this similarity ratio matching process, data obtained by multiplying the similarity ratio (n / 20) by the offset matched current ripple corresponds to an example of the “correction data candidate” of the present invention, and the operation of acquiring the data is the present invention. The “correction data candidate creation step” of FIG. 5 and an operation of driving the motor M by feedback control with the data correspond to an example of the “motor drive step” of the present invention.

また、ステップS6で求められたオフセット合わせ済電流リプルが本発明の「回転時指令情報」の一例に相当している。なお、本発明の「回転時指令情報」については、正回転電流リプルを本発明の「回転時指令情報」として用いてもよい。この場合、電流リプル取得処理が本発明の「第1工程」の一例に相当する。また、相似比合わせ処理を実行する前にオフセット合わせ処理を実行しないことになるため、相似比合わせ済データに対してオフセット合わせ処理を行って得られるオフセット合わせ済データを補正データとするのが望ましい。また、上記実施形態では、正回転中に電流サンプリングを行って得られるサンプリングデータから正回転電流リプルを取得し、さらにオフセット合わせ済電流リプルおよび相似比合わせ済データなどを求めているが、上記正回転サンプリングデータの代わりに、逆回転中に電流サンプリングを行って得られるサンプリングデータを用いてもよい。つまり、逆回転電流リプルに基づいて補正データを作成してもよい。   Further, the offset adjusted current ripple obtained in step S6 corresponds to an example of “rotational command information” of the present invention. As for the “rotational command information” of the present invention, a positive rotation current ripple may be used as the “rotational command information” of the present invention. In this case, the current ripple acquisition process corresponds to an example of the “first step” of the present invention. In addition, since the offset matching process is not executed before the similarity ratio matching process is executed, it is desirable to use the offset matched data obtained by performing the offset matching process on the similarity matched data as the correction data. . In the above embodiment, the positive rotation current ripple is acquired from the sampling data obtained by performing current sampling during the forward rotation, and the offset adjusted current ripple and the similarity ratio completed data are obtained. Instead of the rotation sampling data, sampling data obtained by performing current sampling during reverse rotation may be used. That is, correction data may be created based on the reverse rotation current ripple.

C.第2実施形態
上記したように第1実施形態では、正回転電流リプルまたは逆回転電流リプルを用いて補正データを作成しているが、両者を用いて補正データを作成してもよい。これにより本発明の「回転時指令情報」を高精度に求めることができ、補正データの精度をさらに高めることができる。その理由は、正回転時および逆回転時の誤差の増加方向および位相の変化方向が互いに正反対であり、正回転電流リプルおよび逆回転電流リプルから動的実誤差をより高精度に推定することができるからである。これは、図1(a)に示す構成を有するモータ制御装置による実験により得られた別の知見であり、これを利用することで精度向上を図ることができる。以下、当該「別の知見」について説明した後で、当該「別の知見」を利用した本発明の第2実施形態について説明する。
C. Second Embodiment As described above, in the first embodiment, the correction data is generated using the forward rotation current ripple or the reverse rotation current ripple, but the correction data may be generated using both. Thereby, the “rotational command information” of the present invention can be obtained with high accuracy, and the accuracy of the correction data can be further increased. The reason is that the error increasing direction and the phase changing direction at the time of forward rotation and reverse rotation are opposite to each other, and the dynamic actual error can be estimated with higher accuracy from the forward rotation current ripple and the reverse rotation current ripple. Because it can. This is another finding obtained by an experiment by the motor control device having the configuration shown in FIG. 1A, and accuracy can be improved by using this. Hereinafter, after describing the “other knowledge”, a second embodiment of the present invention using the “other knowledge” will be described.

本願発明者は図1(a)のモータ制御装置において種々の定速度(15[rps]、30[rps]、60[rps])でモータMを正回転させながら動的実誤差を計測し、その計測結果を静的実誤差とともに図8にまとめた。また、モータMを逆回転させた場合の動的実誤差についても計測し、その計測結果を静的実誤差とともに図9にまとめた。   The inventor of the present application measures the dynamic actual error while rotating the motor M forward at various constant speeds (15 [rps], 30 [rps], 60 [rps]) in the motor control device of FIG. The measurement results are summarized in FIG. 8 together with static actual errors. Further, the dynamic actual error when the motor M was rotated in the reverse direction was also measured, and the measurement results are summarized in FIG. 9 together with the static actual error.

図8は図1(a)に示す装置において認められる静的実誤差と正回転時の動的実誤差との関係を示す図である。また、図9は図1(a)に示す装置において認められる静的実誤差と逆回転時の動的実誤差との関係を示す図である。さらに、図10は図1(a)に示す装置において同一の定速度でモータを往復駆動した際に正回転時動的実誤差、逆回転時動的実誤差および静的実誤差の関係を示す図である。   FIG. 8 is a diagram showing the relationship between the static actual error recognized in the apparatus shown in FIG. 1A and the dynamic actual error during forward rotation. FIG. 9 is a diagram showing the relationship between the static actual error recognized in the apparatus shown in FIG. 1A and the dynamic actual error during reverse rotation. Furthermore, FIG. 10 shows the relationship between the dynamic actual error during forward rotation, the dynamic actual error during reverse rotation, and the static actual error when the motor is reciprocated at the same constant speed in the apparatus shown in FIG. FIG.

正回転時には、図8に示すように、速度の上昇に伴って位相が遅れるとともに、(−)側の誤差が増加している。これに対し、逆回転時には、図9に示すように横軸の回転角度が360゜から0゜方向に走査されるため、速度の上昇に伴って位相が遅れるとともに、(+)側の誤差が増加している。この主たる理由のひとつはモータ制御装置100に内蔵されるRD変換器に起因すると考えられる。この「RD変換器」はレゾルバ−デジタル変換器であり、レゾルバの出力信号をデジタルの角度データに変換処理する機能を有するものである。したがって、RD変換器の遅れ系により、遅れのない基準位置検出器Eの検出結果に対してレゾルバReの検出結果では誤差が増大するとともに位相も遅れる傾向にあると考察される。   At the time of forward rotation, as shown in FIG. 8, the phase is delayed as the speed increases, and the (−) side error is increased. On the other hand, at the time of reverse rotation, as shown in FIG. 9, since the rotation angle of the horizontal axis is scanned from 360 ° to 0 °, the phase is delayed as the speed increases, and the error on the (+) side is also increased. It has increased. One of the main reasons can be attributed to the RD converter built in the motor control device 100. This “RD converter” is a resolver-digital converter and has a function of converting the output signal of the resolver into digital angle data. Therefore, due to the delay system of the RD converter, it is considered that the error in the detection result of the resolver Re increases and the phase tends to be delayed with respect to the detection result of the reference position detector E without delay.

また、モータMを定速度、例えば60[rps]で正回転させる時の動的実誤差、同速度で逆回転させる時の動的実誤差および静的実誤差を同一グラフにプロットすると、図10に示すように、誤差の増加方向および位相の変化方向が正回転および逆回転で正反対であり、正回転時の動的実誤差と逆回転時の動的実誤差との平均が静的実誤差に近似している。つまり、同一の定速度でモータMを往復駆動しながら正回転時の動的実誤差と逆回転時の動的実誤差とを求め、さらに回転角度毎に両者の値を平均化することで静的実誤差を近似的に求めることができるという知見を本願発明者は得た。なお、図8ないし図10では、15〜60[rps]の計測結果のみを示しているが、60〜100[rps]についても同様の計測結果が得られ、上記知見が成立する。   Further, when the dynamic actual error when the motor M is normally rotated at a constant speed, for example, 60 [rps], the dynamic actual error when the motor M is reversely rotated at the same speed, and the static actual error are plotted on the same graph, FIG. As shown in Fig. 3, the error increasing direction and the phase changing direction are opposite in the forward and reverse rotations, and the average of the dynamic actual error in the forward rotation and the dynamic actual error in the reverse rotation is the static actual error. Is approximate. That is, while the motor M is reciprocatingly driven at the same constant speed, the dynamic actual error at the time of forward rotation and the dynamic actual error at the time of reverse rotation are obtained, and the values are averaged for each rotation angle. The inventor of the present application has obtained the knowledge that the actual error can be approximately obtained. 8 to 10, only the measurement result of 15 to 60 [rps] is shown, but the same measurement result is obtained for 60 to 100 [rps], and the above knowledge is established.

そして、このような知見に基づき本願発明者は、モータMの回転軸が定速度で正回転する定速度領域を含む往路駆動パターンと同速度で逆回転する定速度領域を含む復路駆動パターンとでモータMを往復駆動しながら正回転時動的実誤差と逆回転時動的実誤差を取得した後でそれらから補正データを高精度に作成することが可能であるとの結論を得た。以下、上記知見を用いて補正データを作成する発明の第2実施形態について図11ないし図17を参照しつつ説明する。   Based on such knowledge, the inventor of the present application uses a forward drive pattern including a constant speed region in which the rotation shaft of the motor M rotates forward at a constant speed and a return path drive pattern including a constant speed region in which the motor M rotates backward at the same speed. It was concluded that the correction data can be created with high accuracy from the dynamic actual error during forward rotation and the dynamic actual error during reverse rotation while the motor M is driven reciprocally. Hereinafter, a second embodiment of the invention for creating correction data using the above knowledge will be described with reference to FIGS.

第2実施形態におけるモータ制御装置1の構成は基本的に第1実施形態のそれと同一であり、演算処理部31で実行される処理の一部が相違しているのみである。つまり、補正データ作成部3の演算処理部31は、モータ駆動部2によってモータMが所定の駆動パターンで往復駆動されている間に、予め記憶されているプログラムに従って速度制御部22から出力される電流指令信号をサンプリングし、さらに次に詳述する位相合わせ処理、相似比合わせ処理およびオフセット合わせ処理を実行して補正データを作成する。このように、本実施形態では、演算処理部31は、電流指令値サンプリング部311、位相合わせ部315、相似比合わせ部313およびオフセット合わせ部314として機能する。   The configuration of the motor control device 1 in the second embodiment is basically the same as that of the first embodiment, and only part of the processing executed by the arithmetic processing unit 31 is different. That is, the arithmetic processing unit 31 of the correction data generating unit 3 is output from the speed control unit 22 according to a program stored in advance while the motor M is reciprocatingly driven with a predetermined drive pattern by the motor driving unit 2. The current command signal is sampled, and correction data is created by executing a phase matching process, a similarity ratio matching process, and an offset matching process, which will be described in detail below. Thus, in the present embodiment, the arithmetic processing unit 31 functions as the current command value sampling unit 311, the phase matching unit 315, the similarity ratio matching unit 313, and the offset matching unit 314.

図11は第2実施形態における補正データ作成動作を示すフローチャートである。本実施形態においても、第1実施形態と同様に、モータMやレゾルバReの取付や交換などが行われた場合やユーザにより補正データの作成が指令された場合、モータMが装置に組み込まれた状態、例えばモータMをロボットの駆動源として用いる場合にはモータMの回転軸にロボットの可動部(ボールネジなどの移動機構部)が連結された状態のまま以下に説明する補正データ作成処理が実行される。   FIG. 11 is a flowchart showing the correction data creation operation in the second embodiment. Also in this embodiment, as in the first embodiment, when the motor M or resolver Re is attached or exchanged, or when the creation of correction data is instructed by the user, the motor M is incorporated in the apparatus. When the motor M is used as a driving source for the robot, for example, the correction data creation process described below is executed while the robot's movable part (moving mechanism part such as a ball screw) is connected to the rotating shaft of the motor M. Is done.

第1実施形態と同様に、ステップS21でロボットを移動させる距離と定速度領域の速度V0+、V0−とが設定される。ただし、第2実施形態では
|V0+|=|V0−|
が成立するように設定される。それに続いて、モータ駆動部2の動作モードとして「補正無し動作」を選択し(ステップS22)、位相合わせ処理を実行する(ステップS23〜S26)。
Similar to the first embodiment, the distance for moving the robot and the speeds V0 + and V0− in the constant speed region are set in step S21. However, in the second embodiment, | V0 + | = | V0− |
Is set to hold. Subsequently, “no correction operation” is selected as the operation mode of the motor drive unit 2 (step S22), and phase matching processing is executed (steps S23 to S26).

この位相合わせ処理では、モータ駆動部2によるモータMの駆動を開始してロボットを往復移動させるとともに当該移動中に正回転および逆回転のサンプリングを行う(ステップS23)。すなわち、モータMの駆動開始により、例えば図12に示すように、モータMが正回転し、所定時間をかけてロボットの移動速度を速度V0+まで加速し、ステップS21で設定した移動距離に応じた時間だけ一定速度V0+を維持した後、減速を開始してモータMの正回転を停止させる。このように往路駆動パターンで駆動中に定速度領域のほぼ中間位置において、モータMの一回転中にモータ駆動部2の速度制御部22から出力される電流指令信号を一定の時間間隔でサンプリングして回転角度毎の電流指令値を「正回転のサンプリングデータ」として電流サンプリングメモリ321に書き込む。   In this phase matching processing, the motor M is started to be driven by the motor drive unit 2 to reciprocate the robot, and sampling of forward rotation and reverse rotation is performed during the movement (step S23). In other words, when the motor M starts to be driven, as shown in FIG. 12, for example, the motor M rotates forward, and the moving speed of the robot is accelerated to the speed V0 + over a predetermined time, and according to the moving distance set in step S21. After maintaining the constant speed V0 + for the time, deceleration is started and the forward rotation of the motor M is stopped. In this way, the current command signal output from the speed control unit 22 of the motor drive unit 2 during one rotation of the motor M is sampled at a constant time interval at a substantially intermediate position in the constant speed region during driving with the forward drive pattern. Then, the current command value for each rotation angle is written in the current sampling memory 321 as “positive rotation sampling data”.

次のステップS24では、電流サンプリングメモリ321から正回転のサンプリングデータを読み出し、一回転分の電流指令値の平均値を計算する。そして、回転角度毎に電流指令値から上記平均値を引いて正回転電流リプルを求め、電流サンプリングメモリ321に上書きする。こうして往路移動中の電流指令値のAC成分である正回転電流リプルが取得される(図13中の実線)。   In the next step S24, normal rotation sampling data is read from the current sampling memory 321, and an average value of current command values for one rotation is calculated. Then, for each rotation angle, the average value is subtracted from the current command value to obtain a positive rotation current ripple, and the current sampling memory 321 is overwritten. Thus, the positive rotation current ripple that is the AC component of the current command value during the forward movement is acquired (solid line in FIG. 13).

また、逆回転側についても、正回転側と同様にして逆回転電流リプルを求める(ステップS25)。すなわち、電流サンプリングメモリ321から逆回転のサンプリングデータを読み出し、一回転分の電流指令値の平均値を計算し、回転角度毎に電流指令値から上記平均値を引いて逆回転電流リプルを求め、電流サンプリングメモリ321に上書きする。こうして復路移動中の電流指令値のAC成分である逆回転電流リプルが取得される(図13中の点線)。   On the reverse rotation side, the reverse rotation current ripple is obtained in the same manner as the normal rotation side (step S25). That is, the reverse rotation sampling data is read from the current sampling memory 321, the average value of the current command value for one rotation is calculated, the reverse rotation current ripple is obtained by subtracting the average value from the current command value for each rotation angle, The current sampling memory 321 is overwritten. Thus, the reverse rotation current ripple that is the AC component of the current command value during the backward movement is acquired (dotted line in FIG. 13).

正回転電流リプルおよび逆回転電流リプルが求まると、電流サンプリングメモリ321から回転角度毎に正回転の電流リプルおよび逆回転の電流リプルをそれぞれ読み出し、それらの値の平均値を計算する。そして、平均値(=(正回転電流リプル+逆回転電流リプル)/2)を平均電流リプルとしてメモリ322中の補正元テーブルに書き込む(ステップS26)。   When the normal rotation current ripple and the reverse rotation current ripple are obtained, the normal rotation current ripple and the reverse rotation current ripple are read from the current sampling memory 321 for each rotation angle, and the average value of these values is calculated. Then, the average value (= (forward rotation current ripple + reverse rotation current ripple) / 2) is written as an average current ripple in the correction source table in the memory 322 (step S26).

上記した位相合わせ処理が完了する(図12中のタイミングT1)と、動作モードとして「相似比合わせ動作」を選択し(ステップS27)、第1実施形態と類似した相似比合わせ処理を実行する(ステップS28〜S36)。ここで、第2実施形態における相似比合わせ処理が第1実施形態のそれと大きく相違する点は平均電流リプルに対して相似比合わせを行っている点である。すなわち、第2実施形態の相似比合わせ処理では第1実施形態と同様に各種初期設定を行う(ステップS28)。そして、次のステップS29で相似比を値(n/20)に設定する。例えばn=1のとき、相似比は初期値(1/20)に設定される。   When the phase matching process described above is completed (timing T1 in FIG. 12), “similarity matching operation” is selected as the operation mode (step S27), and the similarity matching process similar to that of the first embodiment is executed (step S27). Steps S28 to S36). Here, the point in which the similarity ratio matching process in the second embodiment is greatly different from that in the first embodiment is that the similarity ratio matching is performed on the average current ripple. That is, in the similarity ratio matching process of the second embodiment, various initial settings are performed as in the first embodiment (step S28). In the next step S29, the similarity ratio is set to a value (n / 20). For example, when n = 1, the similarity ratio is set to an initial value (1/20).

相似比(n/20)の設定後、補正元テーブルメモリ322から平均電流リプルを読み出し、回転角度毎の平均電流リプルに相似比を掛け合わせた値を補正信号としてモータ駆動部2に出力する。そして、補正信号による補正を行いながら、モータ駆動部2によるモータMの駆動を開始してロボットを往復移動させるとともに当該移動中に電流サンプリングを行う(ステップS30)。なお、補正信号による補正を行っている点を除き、往復移動動作、正回転および逆回転の電流サンプリング動作は位相合わせ処理時のそれら(ステップS23)と同一であり、一回転分の正回転のサンプリングデータと一回転分の逆回転のサンプリングデータとは電流サンプリングメモリ321に書き込まれる。例えばn=1のとき、図12中のタイミングT1からタイミングT2までの間でモータMを連続する往路駆動パターンおよび復路駆動パターンで駆動しながら、各定速度領域のほぼ中間の一回転分の電流サンプリングを行う。   After setting the similarity ratio (n / 20), the average current ripple is read from the correction source table memory 322, and a value obtained by multiplying the similarity ratio by the average current ripple for each rotation angle is output to the motor drive unit 2 as a correction signal. Then, while performing the correction by the correction signal, the driving of the motor M by the motor driving unit 2 is started to reciprocate the robot, and current sampling is performed during the movement (step S30). Except for the point of performing correction by the correction signal, the reciprocating movement operation, forward rotation and reverse rotation current sampling operations are the same as those in the phase matching process (step S23), and the forward rotation for one rotation is performed. Sampling data and reverse rotation sampling data for one rotation are written in the current sampling memory 321. For example, when n = 1, the motor M is driven with a continuous forward drive pattern and a backward drive pattern between timing T1 and timing T2 in FIG. Sampling is performed.

電流サンプリングが完了すると、電流リプルの計算および相似比合わせメモリ323への書込を行う(ステップS31)。すなわち、上記ステップS4と同様にして正回転電流リプルを算出し、上記ステップS5と同様にして逆回転電流リプルを算出し、さらに上記ステップS6と同様にして平均電流リプルを算出する。そして、相似比を(n/20)に設定した時の平均電流リプルを相似比合わせメモリ323に書き込む。   When the current sampling is completed, the current ripple is calculated and written to the similarity ratio matching memory 323 (step S31). That is, the forward rotation current ripple is calculated in the same manner as in step S4, the reverse rotation current ripple is calculated in the same manner as in step S5, and the average current ripple is calculated in the same manner as in step S6. Then, the average current ripple when the similarity ratio is set to (n / 20) is written to the similarity ratio matching memory 323.

次のステップS32では、相似比合わせメモリ323に書き込まれた一回転分の平均電流リプルより電流リプル振幅を求めた後、当該電流リプル振幅が最小値RWmin未満であるか否かを判定する。そして、ステップS32で「YES」と判定、つまりカウント値nでの電流リプル振幅が最小値RWmin未満であると判定したとき、最小値RWminを当該電流リプル振幅に更新するとともに当該カウント値nを最適値Kbestとして相似比合わせメモリ323に書き込んだ(ステップS33)後で、ステップS34に進む。なお、最適値Kbestの記憶先は相似比合わせメモリ323に限定されるものではなく、任意のメモリに書き込むことができる。一方、ステップS32で「NO」と判定したときには、最小値RWminおよび最適値Kbestの更新を行わず、そのままステップS34に進む。   In the next step S32, after obtaining the current ripple amplitude from the average current ripple for one rotation written in the similarity ratio matching memory 323, it is determined whether or not the current ripple amplitude is less than the minimum value RWmin. Then, when “YES” is determined in step S32, that is, when it is determined that the current ripple amplitude at the count value n is less than the minimum value RWmin, the minimum value RWmin is updated to the current ripple amplitude and the count value n is optimized. After the value Kbest is written in the similarity ratio matching memory 323 (step S33), the process proceeds to step S34. Note that the storage destination of the optimum value Kbest is not limited to the similarity comparison memory 323, and can be written to an arbitrary memory. On the other hand, when “NO” is determined in the step S32, the minimum value RWmin and the optimum value Kbest are not updated, and the process directly proceeds to a step S34.

このステップS34でカウント値nを「1」だけインクリメントした後、カウント値nが「21」であるか否かを判定する(ステップS35)。そして、ステップS35で「NO」、つまりカウント値nが「20」以下であると判定する間、ステップS9に戻って電流リプル振幅が最小となる相似比の導出処理(ステップS29〜S35)を繰り返す。つまり、本実施形態においても、相似比の候補として(1/20)、(2/20)、…、(20/20)を準備しておき、相似比の候補毎に相似比の導出処理を行った上で最適値Kbestを決定している。 After the count value n is incremented by “1” in step S34, it is determined whether or not the count value n is “21” (step S35). Then, "NO" in the step S35, that is, between the judges that the count value n is equal to or less than "20", the derivation of similarity ratio as the current ripple amplitude minimum returns to Step S 2 9 (step S29~S35) repeat. That is, also in this embodiment, (1/20), (2/20), ..., (20/20) are prepared as candidates for similarity ratio, and the similarity ratio derivation process is performed for each candidate for similarity ratio. After that, the optimum value Kbest is determined.

一方、ステップS35で「YES」と判定したときには、相似比合わせメモリ323から最適値Kbestを読み出し、電流リプル振幅が最も小さくなる最適相似比(=Kbest/20)を決定する。そして、補正元テーブルメモリ322から平均電流リプルを読み出し、回転角度毎の平均電流リプルに最適相似比を掛け合わせた値を相似比合わせ済データとして補正テーブルメモリ324に書き込む(ステップS36)。   On the other hand, if “YES” is determined in the step S35, the optimum value Kbest is read from the similarity ratio matching memory 323, and the optimum similarity ratio (= Kbest / 20) at which the current ripple amplitude is minimized is determined. Then, the average current ripple is read from the correction source table memory 322, and a value obtained by multiplying the average current ripple for each rotation angle by the optimum similarity ratio is written in the correction table memory 324 as similarity ratio completed data (step S36).

このように最適相似比で平均電流リプルを調整することで静的実誤差(図15中の点線)に近似した相似比合わせ済データ(図15中の実線)が得られ、例えば図15に示すように、相似比合わせ済データが静的実誤差からオフセットしており、しかも図15の点線で示すように回転角度が0゜のときの静的実誤差はゼロであるため、本実施形態では、最後にオフセット合わせを行う(ステップS37)。すなわち、回転角度毎の相似比合わせ済データに対して回転角度ゼロの相似比合わせ済データを差し引き、このオフセット合わせ済データを最終的な補正データ(例えば図16中の実線)として補正テーブルメモリ324に上書きする。これによって、より高精度な補正データが得られる。   In this way, by adjusting the average current ripple with the optimum similarity ratio, similar ratio matched data (solid line in FIG. 15) approximated to the static actual error (dotted line in FIG. 15) is obtained. As described above, the similarity ratio-matched data is offset from the static actual error, and the static actual error when the rotation angle is 0 ° is zero as shown by the dotted line in FIG. Finally, offset adjustment is performed (step S37). That is, the similarity-matched data with the rotation angle of zero is subtracted from the similarity-matched data for each rotation angle, and the offset-matched data is used as final correction data (for example, a solid line in FIG. 16) to the correction table memory 324. Overwrite to. Thereby, more accurate correction data can be obtained.

以上のように、第2実施形態によれば、上記した「A.レゾルバの位置検出誤差と電流指令との相似関係」の項で説明した知見に加え、上記「別の知見」を考慮してモータ制御装置1で使用する補正データを作成しているため、第1実施形態と同様の作用効果が得られるのみならず、補正データをさらに高精度に作成することができ、モータMの制御精度をさらに向上させることが可能である。   As described above, according to the second embodiment, in addition to the knowledge described in the above-mentioned section “A. Similar relationship between position detection error of resolver and current command”, the above “other knowledge” is considered. Since the correction data used by the motor control device 1 is created, not only the same effect as the first embodiment can be obtained, but also the correction data can be created with higher accuracy, and the control accuracy of the motor M is improved. Can be further improved.

このように第2実施形態では、ステップS26で求められた平均電流リプルが本発明の「回転時指令情報」の一例に相当している。ここで、第1実施形態と同様に平均電流リプルに対してオフセット合わせ処理を行って得られるオフセット合わせ済電流リプルを本発明の「回転時指令情報」として用いてもよい。この場合、ステップS37が不要となり、ステップS36で算出された相似比合わせ済データを補正データとすることができる。   As described above, in the second embodiment, the average current ripple obtained in step S26 corresponds to an example of “rotational command information” of the present invention. Here, as in the first embodiment, the offset-adjusted current ripple obtained by performing the offset adjustment processing on the average current ripple may be used as “rotational command information” of the present invention. In this case, step S37 is not necessary, and the similarity-matched data calculated in step S36 can be used as correction data.

また、第2実施形態では、位相合わせ処理が本発明の「第1工程」の一例に相当している。また、相似比合わせ処理が本発明の「第2工程」の一例に相当している。この相似比合わせ処理において相似比(n/20)を平均電流リプルに掛け合わせて得られるデータが本発明の「補正データ候補」の一例に相当し、当該データを取得する動作が本発明の「補正データ候補作成工程」の一例に相当するとともに当該データでフィードバック制御してモータMを駆動する動作が本発明の「モータ駆動工程」の一例に相当している。   In the second embodiment, the phase matching process corresponds to an example of the “first step” of the present invention. The similarity ratio matching process corresponds to an example of the “second step” in the present invention. In this similarity ratio matching process, data obtained by multiplying the similarity ratio (n / 20) by the average current ripple corresponds to an example of the “correction data candidate” of the present invention, and the operation of acquiring the data is “ An operation of driving the motor M by performing feedback control with the data corresponds to an example of the “correction data candidate creation step” and corresponds to an example of the “motor drive step” of the present invention.

C.その他
なお、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したものに対して種々の変更を加えることが可能である。例えば、上記実施形態では、レゾルバReから出力される信号を用いてモータMを制御するモータ制御装置1に本発明を適用しているが、レゾルバRe以外の位置検出センサ、例えばエンコーダなどを本発明の「センサ」として用いるモータ制御装置にも本発明を適用可能である。
C. Others The present invention is not limited to the above-described embodiment, and various modifications can be made to the above-described one without departing from the gist thereof. For example, in the above embodiment, the present invention is applied to the motor control device 1 that controls the motor M using a signal output from the resolver Re. However, the present invention is applicable to position detection sensors other than the resolver Re, such as an encoder. The present invention can also be applied to a motor control device used as a “sensor”.

また、上記実施形態では、電流指令信号のサンプリング期間はモータMの一回転分であるが、一回転を超えてサンプリングしてもよい。例えば、m回転分の電流指令信号をサンプリングした場合には回転角度毎にm個のサンプリングデータを平均化して「正回転電流リプル」や「逆回転電流リプル」を導出してもよい。   In the above embodiment, the sampling period of the current command signal is one rotation of the motor M, but may be sampled exceeding one rotation. For example, when the current command signal for m rotations is sampled, m sampling data may be averaged for each rotation angle to derive “forward rotation current ripple” or “reverse rotation current ripple”.

また、上記実施形態では、図3や図11に示すように、相似比合わせ処理中に相似比の候補を切り替えながら一対のサンプリング動作を20回繰り返しているが、当該繰り返し数(相似比の候補数)はこれに限定されるものではなく、任意である。   In the above embodiment, as shown in FIGS. 3 and 11, the pair of sampling operations are repeated 20 times while switching the similarity ratio candidates during the similarity ratio matching process. However, the number of repetitions (similarity ratio candidates) The number) is not limited to this and is arbitrary.

さらに、上記実施形態では、モータMをロボットの駆動源として用いる場合について説明したが、本発明の適用対象はロボットに取り付けられたモータを制御する技術に限定されるものではない。つまり、モータにより可動部が駆動される装置、例えば表面実装機、部品検査装置、半導体製造装置などの産業機器に取り付けられたモータを制御するモータ制御装置にも本発明を適用することができる。   Furthermore, although the case where the motor M is used as a driving source of the robot has been described in the above embodiment, the application target of the present invention is not limited to the technique for controlling the motor attached to the robot. That is, the present invention can also be applied to a motor control device that controls a motor attached to an industrial device such as a surface mounter, a component inspection device, or a semiconductor manufacturing device, in which a movable part is driven by a motor.

この発明は、モータの回転軸に接続されるセンサから出力される信号を補正するための補正データを作成する補正データ作成技術および当該補正データを用いてモータを制御するモータ制御技術全般に適用可能である。   The present invention can be applied to a correction data generation technique for generating correction data for correcting a signal output from a sensor connected to a rotating shaft of a motor and a motor control technique for controlling a motor using the correction data. It is.

1…モータ制御装置
3…補正データ作成部
31…演算処理部
M…モータ
Re…レゾルバ
DESCRIPTION OF SYMBOLS 1 ... Motor control apparatus 3 ... Correction data creation part 31 ... Operation processing part M ... Motor Re ... Resolver

Claims (7)

位置指令信号に応じて回転するモータの回転軸の回転角度に対応してセンサから出力される信号に基づいて前記回転軸の回転位置に関連する位置検出信号を生成し、前記位置検出信号を補正データで補正して得られる補正済位置信号と前記位置指令信号とに基づいて速度指令信号を生成し、前記補正済位置信号を微分して得られる前記モータの駆動速度と前記速度指令信号とに基づいて生成される電流指令信号により前記モータをフィードバック制御するモータ制御装置において前記補正データを作成する補正データ作成方法であって、
前記回転軸が一定速度で回転する定速度領域を含む駆動パターンで前記モータを駆動しながら前記回転軸が前記定速度領域で一回転以上回転する間に前記電流指令信号をサンプリングして得られるサンプリングデータから回転時指令情報を取得する第1工程と、
前記回転時指令情報に相似比を掛け合わせて前記補正データを作成する第2工程とを備え
前記第1工程では、前記位置検出信号を前記補正データで補正することなくフィードバックして前記モータを駆動しながら前記定速度領域で一回転以上回転する間に前記電流指令信号をサンプリングして得られるサンプリングデータから直流成分を取り除いて電流リプルを前記回転時指令情報として求め、
前記第2工程では、前記相似比の候補として互いに異なる複数の相似比候補値を準備しておき、前記相似比候補値毎に、当該相似比候補値を前記電流リプルに掛け合わせて得られるデータに基づき前記位置検出信号を補正して得られる補正済位置信号をフィードバックして前記モータを駆動しながら前記定速度領域で一回転以上回転する間に前記電流指令信号をサンプリングして得られるサンプリングデータから直流成分を取り除いて電流リプルのうち最大値と最小値の差を電流リプル振幅として算出し、前記複数の電流リプル振幅のうち最小値となる相似比候補値を前記相似比として設定する
ことを特徴とする補正データ作成方法。
A position detection signal related to the rotation position of the rotary shaft is generated based on a signal output from the sensor corresponding to the rotation angle of the rotary shaft of the motor that rotates in accordance with the position command signal, and the position detection signal is corrected. A speed command signal is generated based on the corrected position signal obtained by correcting with data and the position command signal, and the motor driving speed and the speed command signal obtained by differentiating the corrected position signal are obtained. A correction data creating method for creating the correction data in a motor control device that feedback-controls the motor by a current command signal generated based on the current command signal,
Sampling obtained by sampling the current command signal while driving the motor with a driving pattern including a constant speed region in which the rotating shaft rotates at a constant speed while the rotating shaft rotates one or more times in the constant speed region. A first step of obtaining rotational command information from the data;
A second step of creating the correction data by multiplying the rotation command information by a similarity ratio ;
In the first step, the position detection signal is fed back without being corrected by the correction data, and is obtained by sampling the current command signal during one rotation or more in the constant speed region while driving the motor. DC component is removed from the sampling data, and the current ripple is obtained as the rotation command information.
In the second step, a plurality of different similarity ratio candidate values are prepared as candidates for the similarity ratio, and data obtained by multiplying the similarity ratio candidate value by the current ripple for each similarity ratio candidate value Sampling data obtained by sampling the current command signal while rotating one or more revolutions in the constant speed region while driving the motor by feeding back the corrected position signal obtained by correcting the position detection signal based on The difference between the maximum value and the minimum value of the current ripple is calculated as a current ripple amplitude by removing the DC component from the current ripple, and the similarity ratio candidate value that is the minimum value among the plurality of current ripple amplitudes is set as the similarity ratio. A correction data creation method characterized by the above.
請求項1に記載の補正データ作成方法であって、
前記電流指令信号のサンプリングは前記回転軸の回転角度毎に行われる補正データ作成方法。
The correction data creation method according to claim 1 ,
The current command signal sampling is a correction data creation method that is performed for each rotation angle of the rotation shaft.
請求項に記載の補正データ作成方法であって、
前記センサはレゾルバであり、
前記第1工程では、前記電流リプルを構成する前記回転軸の回転角度毎の値のうち回転角度がゼロである値をオフセットデータとし、前記回転角度毎の値から前記オフセットデータを引いたオフセット合わせ済データを前記回転時指令情報とする補正データ作成方法。
The correction data creation method according to claim 2 ,
The sensor is a resolver;
In the first step, of the values for each rotation angle of the rotation shaft constituting the current ripple, a value where the rotation angle is zero is used as offset data, and the offset adjustment is performed by subtracting the offset data from the value for each rotation angle. A correction data creation method using completed data as the rotation command information.
位置指令信号に応じて回転するモータの回転軸の回転角度に対応してセンサから出力される信号に基づいて前記回転軸の回転位置に関連する位置検出信号を生成し、前記位置検出信号を補正データで補正して得られる補正済位置信号と前記位置指令信号とに基づいて速度指令信号を生成し、前記補正済位置信号を微分して得られる前記モータの駆動速度と前記速度指令信号とに基づいて生成される電流指令信号により前記モータをフィードバック制御するモータ制御装置において前記補正データを作成する補正データ作成方法であって、
前記回転軸が一定速度で回転する定速度領域を含む駆動パターンで前記モータを駆動しながら前記回転軸が前記定速度領域で一回転以上回転する間に前記電流指令信号をサンプリングして得られるサンプリングデータから回転時指令情報を取得する第1工程と、
前記回転時指令情報に相似比を掛け合わせて前記補正データを作成する第2工程とを備え
前記第1工程では、前記定速度領域を含む往路駆動パターンで前記モータを駆動しながら前記回転軸が前記定速度領域で一回転以上正回転する間に前記電流指令信号をサンプリングして得られる正回転のサンプリングデータから直流成分を取り除いて正回転電流リプルを求め、前記回転軸が前記定速度領域を含む復路駆動パターンで前記モータを駆動しながら前記回転軸が前記定速度領域で一回転以上逆回転する間に前記電流指令信号をサンプリングして得られる逆回転のサンプリングデータから直流成分を取り除いて逆回転電流リプルを求め、前記回転軸の回転角度毎に前記正回転電流リプルと前記逆回転電流リプルの平均を演算して得られる回転角度毎の平均電流リプルを前記回転時指令情報として求め、
前記第2工程では、前記相似比の候補として互いに異なる複数の相似比候補値を準備しておき、前記相似比候補値毎に、当該相似比候補値を前記回転時指令情報に掛け合わせて得られるデータに基づき前記位置検出信号を補正して得られる補正済位置信号をフィードバックして前記モータを往復駆動し、前記往路駆動中に前記電流指令信号をサンプリングして得られるサンプリングデータから直流成分を取り除いて正回転電流リプルを求めるとともに前記復路駆動中に前記電流指令信号をサンプリングして得られるサンプリングデータから直流成分を取り除いて逆回転電流リプルを求め、前記回転軸の回転角度毎に前記正回転電流リプルと前記逆回転電流リプルの平均を演算して得られる回転角度毎の平均電流リプルのうち最大値と最小値の差を電流リプル振幅として算出し、前記複数の電流リプル振幅のうち最小値となる相似比候補値を前記相似比として設定する
ことを特徴とする補正データ作成方法。
A position detection signal related to the rotation position of the rotary shaft is generated based on a signal output from the sensor corresponding to the rotation angle of the rotary shaft of the motor that rotates in accordance with the position command signal, and the position detection signal is corrected. A speed command signal is generated based on the corrected position signal obtained by correcting with data and the position command signal, and the motor driving speed and the speed command signal obtained by differentiating the corrected position signal are obtained. A correction data creating method for creating the correction data in a motor control device that feedback-controls the motor by a current command signal generated based on the current command signal,
Sampling obtained by sampling the current command signal while driving the motor with a driving pattern including a constant speed region in which the rotating shaft rotates at a constant speed while the rotating shaft rotates one or more times in the constant speed region. A first step of obtaining rotational command information from the data;
A second step of creating the correction data by multiplying the rotation command information by a similarity ratio ;
In the first step, the current command signal is obtained by sampling the current command signal while driving the motor with the forward drive pattern including the constant speed region while the rotating shaft rotates forward one or more times in the constant speed region. The forward rotation current ripple is obtained by removing the direct current component from the rotation sampling data, and the rotation axis is reversed by one rotation or more in the constant speed region while the motor is driven by the backward drive pattern including the constant speed region. A reverse rotation current ripple is obtained by removing a direct current component from reverse rotation sampling data obtained by sampling the current command signal during rotation, and the forward rotation current ripple and the reverse rotation current for each rotation angle of the rotation shaft. Obtain the average current ripple for each rotation angle obtained by calculating the average of ripples as the rotation command information,
In the second step, a plurality of different similarity ratio candidate values are prepared as candidates for the similarity ratio, and for each similarity ratio candidate value, the similarity ratio candidate value is obtained by multiplying the rotation command information. The corrected position signal obtained by correcting the position detection signal based on the obtained data is fed back to drive the motor back and forth, and the DC component is obtained from the sampling data obtained by sampling the current command signal during the forward drive. The positive rotation current ripple is obtained by removing the direct current component from the sampling data obtained by sampling the current command signal during the backward drive, and the reverse rotation current ripple is obtained, and the forward rotation is performed for each rotation angle of the rotary shaft. Of the average current ripple for each rotation angle obtained by calculating the average of the current ripple and the reverse rotation current ripple, the maximum value and the minimum value It was calculated as the current ripple amplitude, the correction data generation method a homothetic ratio candidate value having the minimum value among the plurality of current ripple amplitude and said <br/> be set as the similarity ratio.
請求項に記載の補正データ作成方法であって、
前記第2工程では、前記回転軸の回転角度毎の相似比合わせ済データのうち回転角度がゼロである相似比合わせ済データをオフセットデータとし、前記回転角度毎の相似比合わせ済データから前記オフセットデータを引いたオフセット合わせ済データを前記補正データとする補正データ作成方法。
The correction data creation method according to claim 4 ,
In the second step, the similarity ratio-matched data in which the rotation angle is zero among the similarity ratio-matched data for each rotation angle of the rotating shaft is set as offset data, and the offset from the similarity ratio-matched data for each rotation angle A correction data creation method in which offset-adjusted data obtained by subtracting data is used as the correction data.
請求項1、2、4または5に記載の補正データ作成方法であって、
前記センサはレゾルバであり、
前記一定速度は15[rps]ないし100[rps]である補正データ作成方法。
The correction data creation method according to claim 1, 2, 4 or 5 ,
The sensor is a resolver;
The correction data creation method, wherein the constant speed is 15 [rps] to 100 [rps].
位置指令信号に応じて回転するモータの回転軸の回転角度に対応してセンサから出力される信号に基づいて前記回転軸の回転位置に関連する位置検出信号を生成し、前記位置検出信号を補正データで補正して得られる補正済位置信号と前記位置指令信号とに基づいて速度指令信号を生成し、前記補正済位置信号を微分して得られる前記モータの駆動速度と前記速度指令信号とに基づいて生成される電流指令信号により前記モータをフィードバック制御するモータ制御装置であって、
請求項1ないし6のいずれか一項に記載の補正データ作成方法により前記補正データを作成する補正データ作成部を備え
ことを特徴とするモータ制御装置。
A position detection signal related to the rotation position of the rotary shaft is generated based on a signal output from the sensor corresponding to the rotation angle of the rotary shaft of the motor that rotates in accordance with the position command signal, and the position detection signal is corrected. A speed command signal is generated based on the corrected position signal obtained by correcting with data and the position command signal, and the motor driving speed and the speed command signal obtained by differentiating the corrected position signal are obtained. A motor control device that feedback-controls the motor by a current command signal generated based on the command,
Motor control device according to claim wherein the Ru a correction data creation unit that creates correction data <br/> it by the correction data generating method according to any one of claims 1 to 6.
JP2014012320A 2014-01-27 2014-01-27 Motor control device and correction data creation method in the same Active JP6349093B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2014012320A JP6349093B2 (en) 2014-01-27 2014-01-27 Motor control device and correction data creation method in the same
TW103137078A TWI571043B (en) 2014-01-27 2014-10-27 Motor control device and correction data generation method in the same device
US14/602,488 US9507338B2 (en) 2014-01-27 2015-01-22 Motor control device and correction data generation method in same
EP15000220.2A EP2899874B1 (en) 2014-01-27 2015-01-26 Motor control device and correction data generation method in same
CN201510040656.0A CN104808694B (en) 2014-01-27 2015-01-27 The correction data creation method of controller for motor and the device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014012320A JP6349093B2 (en) 2014-01-27 2014-01-27 Motor control device and correction data creation method in the same

Publications (2)

Publication Number Publication Date
JP2015142390A JP2015142390A (en) 2015-08-03
JP6349093B2 true JP6349093B2 (en) 2018-06-27

Family

ID=53772425

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014012320A Active JP6349093B2 (en) 2014-01-27 2014-01-27 Motor control device and correction data creation method in the same

Country Status (1)

Country Link
JP (1) JP6349093B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220288776A1 (en) * 2019-08-20 2022-09-15 Halodi Robotics As Method and a medium for cogging compensating a motor driving signal
CN117781994B (en) * 2024-02-27 2024-05-07 南京新紫峰电子科技有限公司 Method, device and medium for testing rotary-variable sensor

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2951801B2 (en) * 1992-07-27 1999-09-20 シャープ株式会社 Motor speed control circuit
JPH0670567A (en) * 1992-08-07 1994-03-11 Matsushita Electric Ind Co Ltd Automatic setting method of control gain for motor and detecting method of backlash
JP2002126964A (en) * 2000-10-23 2002-05-08 Hitachi Ltd Control device of positioning stage
JP4998159B2 (en) * 2007-09-05 2012-08-15 パナソニック株式会社 Control method for articulated robot
JP2010166686A (en) * 2009-01-15 2010-07-29 Yaskawa Electric Corp Motor control unit equipped with failure diagnosing section of machine
JP5359313B2 (en) * 2009-01-27 2013-12-04 フジテック株式会社 Motor control device
JP4676551B1 (en) * 2009-12-22 2011-04-27 ファナック株式会社 Motor control device having cogging torque correction amount calculation function
JP5916342B2 (en) * 2011-10-21 2016-05-11 三菱重工業株式会社 Motor control device and motor control method

Also Published As

Publication number Publication date
JP2015142390A (en) 2015-08-03

Similar Documents

Publication Publication Date Title
US9507338B2 (en) Motor control device and correction data generation method in same
JP6377506B2 (en) Motor control device and correction data creation method in the same
CN109421047B (en) Robot system
JP6272508B2 (en) Angular error correction device and angular error correction method for position detector
JP2011135645A (en) Motor control unit including cogging torque correction amount calculation function
JP6349093B2 (en) Motor control device and correction data creation method in the same
KR20080042602A (en) Control apparatus using velocity estimation for dc motor in image forming apparatus and method thereof
JP6004830B2 (en) Control device and stepping motor control method
US9764414B2 (en) Spot welding system and spot welding method
JP6401624B2 (en) Motor control method and apparatus
JP2019077026A5 (en)
US10175260B2 (en) Apparatus and method for measuring motor speed
JP2009244115A (en) Device and method for correcting position detection error
JP2019096219A (en) Control device of machine tool
JP2008041011A (en) Position correcting method in machine tool
JP2006293624A (en) Multiaxis controller
US11015959B2 (en) Encoder and control system
JP7003454B2 (en) Control device, position control system, position control method, and position control program
US11493898B2 (en) Servo motor controller
JP6580296B2 (en) Actuator control device and control method
WO2021124603A1 (en) Motor control device and motor control method
JP6011697B2 (en) Electric motor position control device
JP4085196B2 (en) Motor driving device and driving voltage correction method thereof
JP2020190499A (en) Encoder device
WO2020149002A1 (en) Motor control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170418

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170616

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180604

R150 Certificate of patent or registration of utility model

Ref document number: 6349093

Country of ref document: JP

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