JP4059094B2 - Computer-readable recording medium storing a program for causing a computer to execute correction of sensor values of an electric motor control device and a rotational position sensor - Google Patents

Computer-readable recording medium storing a program for causing a computer to execute correction of sensor values of an electric motor control device and a rotational position sensor Download PDF

Info

Publication number
JP4059094B2
JP4059094B2 JP2003025824A JP2003025824A JP4059094B2 JP 4059094 B2 JP4059094 B2 JP 4059094B2 JP 2003025824 A JP2003025824 A JP 2003025824A JP 2003025824 A JP2003025824 A JP 2003025824A JP 4059094 B2 JP4059094 B2 JP 4059094B2
Authority
JP
Japan
Prior art keywords
value
sensor
error
computer
deviation
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.)
Expired - Lifetime
Application number
JP2003025824A
Other languages
Japanese (ja)
Other versions
JP2004242370A (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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2003025824A priority Critical patent/JP4059094B2/en
Publication of JP2004242370A publication Critical patent/JP2004242370A/en
Application granted granted Critical
Publication of JP4059094B2 publication Critical patent/JP4059094B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
この発明は、レゾルバの出力を補正して電動機を制御する電動機制御装置および回転位置センサーのセンサー値の補正をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体に関するものである。
【0002】
【従来の技術】
回転磁界によりモータの回転子を連続して回転するために回転子の位置を検出することが行なわれている。そして、この回転子の位置検出は、回転軸に取付けられたレゾルバにより行われる。
【0003】
すなわち、レゾルバは、回転する回転子の位置を検出し、回転子の各位置に対応する位置信号をアナログ信号として出力する。コンピュータのCPU(Central Processing Unit)は、レゾルバからのアナログ信号をデジタル信号に変換し、その変換したデジタル信号に基づいて、回転磁界を生成するための交流電流を回転子の外周部に設けられたステータコイル(通常、3相コイルから成る。)に流す駆動信号を生成してインバータへ出力する。インバータは、CPUからの駆動信号に基づいて、ステータコイルの各相に所定のタイミングで所定の交流電流を流す。これにより、ステータコイルは、回転磁界を生成し、回転子は、ステータコイルからの回転磁界により回転する。
【0004】
しかし、レゾルバは、通常、0.5次誤差、1次誤差および2次誤差等の誤差を生じるので、レゾルバからの出力は、時間とともに直線的に回転角が大きくなる特性を示さない。
【0005】
そこで、特開2002−315381号公報には、モータの回転速度Vmを推定し、その推定した回転速度Vmに基づいてモータのコイルに通電を行なう技術が開示されている。すなわち、ブラシレスモータのロータ位置に応じて、複数の位置検出素子から出力される位置検出信号Sa〜Scの出力状態が変化する信号変化期間tnが測定される。そして、信号変化期間tnにおける位置検出信号Sa〜Scの出力状態の変化率Rtが演算され、その演算された変化率Rtは所定値と比較される。
【0006】
その結果、回転速度Vmは、変化率Rtが所定値よりも大きいとき、最新の信号変化期間tnに基づき推定され、変化率Rtが所定値以下であるとき、信号変化期間tn〜tn−5の平均値に基づいて推定される。
【0007】
そして、推定された回転速度Vmに基づいて、ブラシレスモータのコイルへの通電が行なわれる。
【0008】
【特許文献1】
特開2002−315381号公報
【0009】
【特許文献2】
特開平7−168629号公報
【0010】
【特許文献3】
特開2001−211698号公報
【0011】
【特許文献4】
特開2001−165707号公報
【0012】
【発明が解決しようとする課題】
しかし、特開2002−315381号公報に開示された電動機の制御方法は、PWM制御を前提とした制御方法であり、その他の制御方法に適用することができないという問題がある。
【0013】
そこで、この発明は、かかる問題を解決するためになされたものであり、その目的は、制御方式に関係なく、回転位置センサーの誤差を補正可能な電動機制御装置を提供することである。
【0014】
また、この発明の別の目的は、制御方式に関係なく、回転位置センサーのセンサー値の補正をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体を提供することである。
【0015】
【課題を解決するための手段および発明の効果】
この発明によれば、電動機制御装置は、回転位置センサーと、制御手段と、補正手段とを備える。回転位置センサーは、電動機に含まれる回転子の回転位置を検出する。制御手段は、回転位置センサーにより検出されたセンサー値を補正したセンサー補正値を用いて、電動機を駆動する駆動装置を制御する。補正手段は、回転位置センサーにより検出されるセンサー値の予測値を演算し、その演算した予測値に基づいて回転位置センサーにより検出されたセンサー値を補正し、その補正したセンサー値をセンサー補正値として制御手段へ出力する。補正手段は、回転位置センサーから出力されるセンサー値の所定期間における平均値を演算し、その演算した平均値に基づいて予測値を演算する。
【0016】
好ましくは、補正手段は、回転位置センサーにより検出されたセンサー値と演算した予測値との差の絶対値である偏差を演算し、その演算した偏差を基準偏差と比較した比較結果に応じて検出されたセンサー値を補正する。
【0017】
好ましくは、補正手段は、偏差が基準偏差よりも小さいとき、演算した予測値をセンサー補正値とし、偏差が基準偏差よりも大きいとき、検出されたセンサー値に基準偏差を加減算した値をセンサー補正値とする。
【0018】
好ましくは、補正手段は、センサー値が許容誤差の上限値よりも大きいとき、検出されたセンサー値から基準偏差を減算した値をセンサー補正値とし、センサー値が許容誤差の下限値よりも小さいとき、検出されたセンサー値に基準偏差を加算した値をセンサー補正値とする。
【0020】
好ましくは、所定期間は、回転子が180度の整数倍回転するのに必要な時間である。
【0021】
好ましくは、電動機制御装置は、誤差検出手段をさらに備える。誤差検出手段は、センサー値に含まれる誤差の種類を検出し、その検出した誤差の種類に応じて所定期間を設定する。そして、補正手段は、誤差検出手段により設定された所定期間において平均値を演算する。
【0022】
好ましくは、誤差検出手段は、誤差の種類として0.5次の誤差を検出したとき、回転子が180度の整数倍回転するのに必要な時間を所定期間として設定する。
【0023】
好ましくは、誤差検出手段は、誤差の種類として1.0次の誤差を検出したとき、回転子が90度の整数倍回転するのに必要な時間を所定期間として設定する。
【0024】
好ましくは、誤差検出手段は、誤差の種類として2.0次の誤差を検出したとき、回転子が45度の整数倍回転するのに必要な時間を所定期間として設定する。
【0025】
好ましくは、電動機制御装置は、故障判定手段をさらに備える。故障判定手段は、補正手段により演算された偏差が最大誤差よりも大きいとき、回転位置センサーが故障していると判定する。
【0026】
また、この発明の他の局面によれば、電動機に含まれる回転子の回転位置を検出する回転位置センサーのセンサー値の補正処理をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体である。その補正処理は、回転位置センサーにより検出されるセンサー値の予測値を演算する第1のステップと、演算された予測値と、回転位置センサーにより検出されたセンサー値との差の絶対値である偏差を演算する第2のステップと、演算された偏差を基準偏差と比較する第3のステップと、比較結果に応じてセンサー値を補正する第4のステップとを含む。第1のステップは、回転位置センサーから出力されるセンサー値の所定期間における平均値を演算する第1のサブステップと、演算された平均値に基づいて前記予測値を演算する第2のサブステップとを含む。
【0027】
好ましくは、第4のステップは、偏差が基準偏差よりも小さいとき、演算した予測値をセンサー値を補正したセンサー補正値とする。
【0028】
好ましくは、第4のステップは、偏差が基準偏差よりも大きいとき、検出されたセンサー値に基準偏差を加減算した値をセンサー値を補正したセンサー補正値とする。
【0029】
好ましくは、第4のステップは、センサー値が許容誤差の上限値よりも大きいとき、検出されたセンサー値から基準偏差を減算した値をセンサー補正値とし、センサー値が許容誤差の下限値よりも小さいとき、検出されたセンサー値に基準偏差を加算した値をセンサー補正値とする。
【0031】
好ましくは、第1のサブステップは、回転子が180度の整数倍回転するのに必要な時間を所定期間として平均値を演算する。
【0032】
好ましくは、プログラムは、センサー値に含まれる誤差の種類を検出する第5のステップをさらにコンピュータに実行させ、第1のサブステップは、検出された誤差の種類に応じて決定された所定期間において平均値を演算する。
【0033】
好ましくは、第1のサブステップは、誤差の種類として0.5次の誤差が検出されたとき、回転子が180度の整数倍回転するのに必要な時間を所定期間として平均値を演算する。
【0034】
好ましくは、第1のサブステップは、誤差の種類として1.0次の誤差が検出されたとき、回転子が90度の整数倍回転するのに必要な時間を所定期間として平均値を演算する。
【0035】
好ましくは、第1のサブステップは、誤差の種類として2.0次の誤差が検出されたとき、回転子が45度の整数倍回転するのに必要な時間を所定期間として平均値を演算する。
【0036】
好ましくは、プログラムは、演算された偏差が最大誤差よりも大きいとき、回転位置センサーが故障していると判定する第6のステップをさらにコンピュータに実行させる。
【0037】
この発明においては、電動機のロータの回転位置を示すセンサー値の予測値が演算され、その演算された予測値に基づいてセンサー値が補正される。
【0038】
したがって、この発明によれば、電動機の制御方式に関係なく、センサー値を補正できる。
【0039】
【発明の実施の形態】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【0040】
[実施の形態1]
図1を参照して、この発明の実施の形態1による電動機制御装置を備えるモータ駆動装置100は、直流電源10と、コンデンサ20と、インバータ30と、電流センサー40と、回転位置センサー60と、制御装置70とを備える。
【0041】
電源ライン1は、直流電源10の正極に接続され、アースライン2は、直流電源10の負極に接続される。コンデンサ20は、電源ライン1とアースライン2との間に接続される。そして、コンデンサ20は、直流電源10からの直流電圧を平滑化し、その平滑化した直流電圧をインバータ30に供給する。
【0042】
インバータ30は、コンデンサ20を介して直流電圧を受け、その受けた直流電圧を制御装置70からの信号PWMによって交流電圧に変換して同期モータ50を駆動する。
【0043】
電流センサー40は、同期モータ50に流れるモータ電流Iu,Ivを検出し、その検出したモータ電流Iu,Ivを制御装置70へ出力する。なお、図1においては、電流センサー40は、2個しか示されていない。これは、同期モータ50が3相同期モータの場合、2つの相に流れるモータ電流Iu,Ivを検出すれば、その検出されたモータ電流Iu,Ivに基づいて残りの相に流れるモータ電流Iwを演算できるからである。したがって、3相の各々に流れるモータ電流Iu,Iv,Iwを独自に検出する場合、3個の電流センサー40を設けてもよい。
【0044】
同期モータ50は、U相コイル、V相コイルおよびW相コイルをステータコイルとして含む3相の同期モータである。
【0045】
回転位置センサー60は、同期モータ50のロータの回転位置を検出し、その検出した回転位置を示すセンサー値θbを制御装置70へ出力する。
【0046】
制御装置70は、誤差補正部71と、3相/2相変換部72と、電流指令生成部73と、減算器74,75と、PI制御部76と、2相/3相変換部77と、PWM生成部78とを含む。
【0047】
誤差補正部71は、回転位置センサー60からセンサー値θbを受け、その受けたセンサー値θbを後述する方法によって補正する。そして、誤差補正部71は、補正したセンサー補正値θhを3相/2相変換部72および2相/3相変換部77へ出力する。
【0048】
3相/2相変換部72は、2個の電流センサー40,40からモータ電流Iu,Ivを受ける。そして、3相/2相変換部72は、モータ電流Iu,Ivに基づいてモータ電流Iw=−Iu−Ivを演算する。
【0049】
そうすると、3相/2相変換部72は、モータ電流Iu,Iv,Iwを誤差補正部71からのセンサー値θhを用いて三相二相変換する。すなわち、3相/2相変換部72は、モータ電流Iu,Iv,Iwおよびセンサー補正値θhを次式に代入して電流値Id,Iqを演算する。
【0050】
【数1】

Figure 0004059094
つまり、3相/2相変換部72は、同期モータ50の3相コイルの各相に流れる3相のモータ電流Iu,Iv,Iwをセンサー補正値θhを用いてd軸およびq軸に流れる電流値Id,Iqに変換する。そして、3相/2相変換部72は、演算した電流値Idを減算器74へ出力し、演算した電流値Iqを減算器75へ出力する。
【0051】
電流指令生成部73は、モータ駆動装置100の外部に設けられたECU(Electrical Control Unit)からトルク指令値TRを受け、その受けたトルク指令値TRによって指定されたトルクを出力するための電流指令Id*,Iq*を生成する。そして、電流指令生成部73は、生成した電流指令Id*を減算器74へ出力し、生成した電流指令Iq*を減算器75へ出力する。
【0052】
減算器74は、電流指令Id*と電流値Idとの偏差ΔIdを演算し、その演算した偏差ΔIdをPI制御部76へ出力する。また、減算器75は、電流指令Iq*と電流値Iqとの偏差ΔIqを演算し、その演算した偏差ΔIqをPI制御部76へ出力する。
【0053】
PI制御部76は、偏差ΔId,ΔIqに対してPIゲインを用いてモータ電流調整用の電圧操作量Vd,Vqを演算し、その演算した電圧操作量Vd,Vqを2相/3相変換部77へ出力する。
【0054】
2相/3相変換部77は、PI制御部76からの電圧操作量Vd,Vqを誤差補正部71からのセンサー補正値θhを用いて二相三相変換する。すなわち、2相/3相変換部77は、PI制御部76からの電圧操作量Vd,Vqおよび誤差補正部71からのセンサー補正値θhを次式に代入して同期モータ50の3相コイルに印加する電圧の操作量Vu,Vv,Vwを演算する。
【0055】
【数2】
Figure 0004059094
つまり、2相/3相変換部77は、d軸およびq軸に印加する電圧の操作量Vd,Vqをセンサー補正値θhを用いて同期モータ50の3相コイルに印加する電圧の操作量Vu,Vv,Vwに変換する。
【0056】
そして、2相/3相変換部77は、電圧の操作量Vu,Vv,VwをPWM生成部78へ出力する。
【0057】
PWM生成部78は、電圧の操作量Vu,Vv,Vwに基づいて信号PWMを生成し、その生成した信号PWMをインバータ30へ出力する。
【0058】
図2は、インバータ30の回路図を示す。図2を参照して、インバータ30は、U相アーム15と、V相アーム16と、W相アーム17とを含む。U相アーム15、V相アーム16およびW相アーム17は、電源ライン1とアースライン2との間に並列に設けられる。
【0059】
U相アーム15は、直列に接続されたNPNトランジスタQ3,Q4から成り、V相アーム16は、直列に接続されたNPNトランジスタQ5,Q6から成り、W相アーム17は、直列に接続されたNPNトランジスタQ7,Q8から成る。また、各NPNトランジスタQ3〜Q8のコレクタ−エミッタ間には、エミッタ側からコレクタ側へ電流を流すダイオードD3〜D8がそれぞれ接続されている。
【0060】
インバータ30の各相アームの中間点は、同期モータ50の各相コイルの各相端に接続されている。すなわち、同期モータ50のU相コイルの他端がNPNトランジスタQ3,Q4の中間点に、V相コイルの他端がNPNトランジスタQ5,Q6の中間点に、W相コイルの他端がNPNトランジスタQ7,Q8の中間点にそれぞれ接続されている。
【0061】
図3を参照して、誤差補正部71におけるセンサー値θbの補正方法について説明する。なお、図3は、回転位置センサー60が1.0次の誤差を含むセンサー値θbを出力する場合について示す。
【0062】
曲線k1は、タイミングTxとタイミングTyとの間の所定期間Δt1(「規定期間」とも言う。以下同じ。)における回転位置センサー60からのセンサー値θbを示す。誤差補正部71は、タイミングTxにおけるPhase(Tx)とタイミングTyにおけるPhase(Ty)とを用いて、ロータの移動量の平均値PHavを演算する。そして、誤差補正部71は、演算した平均値PHavに時間Δt1を乗算することにより直線k2によって示される予測値を演算する。
【0063】
そうすると、誤差補正部71は、所定期間Δt1に隣接する所定期間Δt2(タイミングTy〜タイミングTz)において、回転位置センサー60からのセンサー値θb(曲線k3によって示される。)と予測値k2との差の絶対値、すなわち、偏差ΔPhを演算する。
【0064】
そして、誤差補正部71は、偏差ΔPhを許容誤差Ph_Jの半分の値に相当する基準偏差Ph_J/2と比較し、偏差ΔPhが基準偏差Ph_J/2よりも小さいとき、予測値k2をセンサー値θbを補正したセンサー補正値θhとし、偏差ΔPhが基準偏差Ph_J/2よりも大きいとき、回転位置センサー60からのセンサー値θbに基準偏差Ph_J/2を加減算した値をセンサー補正値θhとする。
【0065】
偏差ΔPhが基準偏差Ph_J/2よりも大きいとき、センサー値θbが許容誤差Ph_Jの上限値(直線k4によって示される。)よりも大きい場合と、センサー値θbが許容誤差Ph_Jの下限値(直線k5によって示される。)よりも小さい場合とが存在する。そこで、偏差ΔPhが基準偏差Ph_J/2よりも大きいとき、次のようにセンサー値θbを補正する。
【0066】
すなわち、誤差補正部71は、センサー値θbが許容誤差Ph_Jの上限値よりも大きいとき、回転位置センサー60からのセンサー値θbから基準偏差Ph_J/2を減算した値θb−Ph_J/2をセンサー補正値θhとし、センサー値θbが許容誤差Ph_Jの下限値よりも小さいとき、回転位置センサー60からのセンサー値θbに基準偏差Ph_J/2を加算した値θb+Ph_J/2をセンサー補正値θhとする。
【0067】
これにより、センサー値θbが許容誤差Ph_Jの範囲を超える誤差を含んでいる場合でもセンサー補正値θhは、許容誤差Ph_J内に入る。許容誤差Ph_Jの上限値(直線k4によって示される。)および下限値(直線k5によって示される。)は、回転位置センサー60の出荷時に設定される基準値とコンデンサ20に過電圧が印加されない値とを考慮して決定される。そして、回転位置センサー60からのセンサー値θbは、設定された許容誤差Ph_Jの上限値または下限値から基準偏差Ph_J/2を超えてずれることは殆どないので、センサー値θbが許容誤差Ph_Jの上限値よりも大きいとき、センサー値θbから基準偏差Ph_J/2を減算することによりセンサー補正値θhは許容誤差Ph_J内に入り、センサー値θbが許容誤差Ph_Jの下限値よりも小さいとき、センサー値θbに基準偏差Ph_J/2を加算することによりセンサー補正値θhは許容誤差Ph_J内に入る。
【0068】
そうすると、タイミングTyからタイミングT1までの期間、偏差ΔPhは、基準偏差Ph_J/2よりも小さいので、タイミングTyからタイミングT1までの期間、予測値k2がセンサー補正値θhとして用いられ、タイミングT1以降、センサー値θbに基準偏差Ph_J/2を加算した値θb+Ph_J/2がセンサー補正値θhとして用いられる。すなわち、センサー補正値θhは、曲線k6によって示される。
【0069】
偏差ΔPhが基準偏差Ph_J/2よりも小さいとき(タイミングTyからタイミングT1までの間)、センサー値θbに代えて予測値(曲線k3によって示される。)を用いることにしたのは、所定期間Δt1における平均値PHavから演算された予測値は、センサー値θbが時間に対してリニアに変化する特性を有するので誤差を含まないときのセンサー値に近い特性を示すと考えられ、その誤差を含まないときのセンサー値に近い予測値を用いることにより同期モータ50の制御性を向上させるためである。
【0070】
また、偏差ΔPhが基準偏差Ph_J/2よりも大きいとき(タイミングT1以降)、予測値ではなくセンサー値θbを基準偏差Ph_J/2により補正することにしたのは、偏差ΔPhが基準偏差Ph_J/2よりも大きくなる場合、予測値は同期モータ50の実際の回転位置から大きくずれており、センサー値θbに基準偏差Ph_J/2を加減算した値の方が実際の回転位置に近いと考えられるからである。
【0071】
上述したように、所定期間Δt1において演算された予測値に基づいて所定期間Δt2におけるセンサー値θbが補正される。
【0072】
そして、所定期間Δt2における予測値が上述した方法により演算され、その演算された予測値を用いて所定期間Δt2に隣接する所定期間においてセンサー値θbが補正される。このように、この発明においては、ある1つの所定期間において回転位置センサー60からのセンサー値θbの予測値を演算し、その演算した予測値を用いて次の所定期間におけるセンサー値を補正するとともにセンサー値の予測値を演算する。そして、その演算した予測値をさらに次の所定期間におけるセンサー値の補正に用いる。
【0073】
つまり、予測値の演算と、その演算した予測値を用いたセンサー値の補正とを順次繰返すことにより、センサー補正値θhは許容誤差Ph_J内に含まれるようになる。
【0074】
したがって、この発明は、センサー補正値θhが許容誤差Ph_J内に入るように、回転位置センサー60からのセンサー値θbを補正することを特徴とする。
【0075】
また、この発明においては、好ましくは、平均値PHavを演算するための期間Δt1は、同期モータ50のロータが180度の整数倍回転するのに必要な時間に設定される。
【0076】
上記においては、1.0次の誤差を含むセンサー値の補正について説明したが、0.5次の誤差または2.0次の誤差を含むセンサー値についても、上述した方法によって補正される。
【0077】
図4を参照して、誤差補正部71においてセンサー値θbを補正する動作について説明する。なお、上記においては、回転位置センサー60からのセンサー値は、θbによって表わされたが、同期モータ50の制御は所定のタイミングで行なわれるため、図4においては、同期モータ50の制御タイミングにおけるセンサー値を示すものとしてPhase(Tn)が用いられている。
【0078】
一連の動作が開始されると、誤差補正部71は、回転位置センサー60からセンサー値Phase(Tn)を取り込む(ステップS10)。そして、誤差補正部71は、上述した方法によって規定期間Tx〜Tyにおけるロータの移動量の平均値PHav=[Phase(Ty)−Phase(Tx)]/[Ty−Tx]を演算する(ステップS12)。その後、誤差補正部71は、演算した平均値PHavを用いて制御タイミングTnにおける予測値Phase_est(Tn)=Phase(Tn−1)+(Tn−Tn−1)×PHavを演算する(ステップS14)。そして、誤差補正部71は、予測値Phase_est(Tn)とセンサー値Phase(Tn)との差の絶対値である偏差ΔPhを上述した方法により演算する(ステップS16)。
【0079】
そうすると、誤差補正部71は、演算した偏差ΔPhが基準偏差Ph_J/2よりも小さいか否かを判定する(ステップS18)。そして、偏差ΔPhが基準偏差Ph_J/2よりも小さくないとき、誤差補正部71は、センサー値Phase(Tn)に基準偏差Ph_J/2を加減算した値をセンサー補正値とする。
【0080】
具体的には、偏差ΔPhが基準偏差Ph_J/2以上であるとき、すなわち、回転位置センサー60からのセンサー値Phase(Tn)が許容誤差Ph_Jの上限値以上であるとき、センサー値Phase(Tn)から基準偏差Ph_J/2を減算した値Phase(Tn)−Ph_J/2をセンサー補正値Phase(Tn)=Phase(Tn)−Ph_J/2とする。また、偏差ΔPhが基準偏差Ph_J/2よりも小さいとき、すなわち、回転位置センサー60からのセンサー値Phase(Tn)が許容誤差Ph_Jの下限値よりも小さいとき、センサー値Phase(Tn)に基準偏差Ph_J/2を加算した値Phase(Tn)+Ph_J/2をセンサー補正値Phase(Tn)=Phase(Tn)+Ph_J/2とする(ステップS20)。
【0081】
一方、ステップS18において、偏差ΔPhが基準偏差Ph_J/2よりも小さいと判定されたとき、誤差補正部71は、ステップS14において演算した予測値Phase_est(Tn)をセンサー補正値Phase(Tn)とする(ステップS22)。
【0082】
そして、ステップS20またはステップS22の後、一連の動作が終了する。なお、誤差補正部71におけるセンサー値の補正は、実際にはCPUによって実行され、CPUは、図4に示す各ステップを備えるプログラムをROM(Read Only Memory)から読み出し、図4に示す各ステップを実行して回転位置センサー60からのセンサー値を補正する。
【0083】
したがって、ROMは、回転位置センサー60からのセンサー値の補正をコンピュータ(CPU)に実行させるためのプログラムを記録したコンピュータ(CPU)読取り可能な記録媒体に相当する。
【0084】
再び、図1を参照して、モータ駆動装置100の動作について説明する。一連の動作が開始されると、回転位置センサー60は、同期モータ50の回転子の回転位置を検出してセンサー値θbを制御装置70へ出力する。電流センサー40は、同期モータ50に流れるモータ電流Iu,Ivを検出して制御装置70へ出力する。
【0085】
そうすると、制御装置70の誤差補正部71は、回転位置センサー60からのセンサー値θbを上述した方法により補正し、センサー補正値θhを3相/2相変換部72および2相/3相変換部77へ出力する。3相/2相変換部72は、電流センサー40からのモータ電流Iu,Ivに基づいてモータ電流Iwを演算する。そして、3相/2相変換部72は、誤差補正部71からのセンサー補正値θhおよびモータ電流Iu,Iv,Iwを式(1)に代入して電流値Id,Iqを演算し、誤差補正部71からのセンサー補正値θhを用いてモータ電流Iu,Iv,Iwを同期モータ50のd軸およびq軸に流れる電流値Id,Iqに変換する。
【0086】
電流指令生成部73は、外部ECUから受けたトルク指令値TRに応じて、同期モータ50がトルク指令値TRによって指定されたトルクを出力するための電流指令値Id*,Iq*を演算する。減算器74は、電流指令生成部73によって演算された電流指令値Id*から3相/2相変換部72によって変換された電流値Idを減算し、偏差ΔIdを演算する。また、減算器75は、電流指令生成部73によって演算された電流指令値Iq*から3相/2相変換部72によって変換された電流値Iqを減算し、偏差ΔIqを演算する。
【0087】
PI制御部76は、偏差ΔId,ΔIqに対してPIゲインを用いて同期モータ50のモータ電流調整用の電圧操作量Vd,Vqを演算する。そして、2相/3相変換部77は、誤差補正部71からのセンサー補正値θhおよびPI制御部76からの電圧操作量Vd,Vqを式(2)に代入して電圧Vu,Vv,Vwを演算し、誤差補正部71からのセンサー補正値θhを用いてPI制御部76からの電圧操作量Vd,Vqを二相三相変換する。PWM生成部78は、2相/3相変換部77からの電圧Vu,Vv,Vwに基づいて信号PWMを生成し、その生成した信号PWMをインバータ30のNPNトランジスタQ3〜Q8へ出力する。
【0088】
NPNトランジスタQ3〜Q8は、信号PWMに応じてオン/オフされ、インバータ30は、直流電源10からの直流電圧を交流電圧に変換して同期モータ50を駆動する。
【0089】
これにより、回転位置センサー60からのセンサー値θbに誤差が含まれていても、センサー値θbを補正してコンデンサ20に過電圧が印加されないように同期モータを駆動できる。
【0090】
なお、誤差補正部71は、センサー値を補正する「補正手段」を構成する。
また、3相/2相変換部72、電流指令生成部73、減算器74,75、PI制御部76、2相/3相変換部77およびPWM生成部78は、誤差補正部71によって補正されたセンサー値を用いて同期モータ50を制御する「制御手段」を構成する。
【0091】
さらに、電流センサー40、回転位置センサー60および制御装置70は、「電動機制御装置」を構成する。
【0092】
実施の形態1による電動機制御装置を備えたモータ駆動装置は、図5に示すモータ駆動装置100Aであってもよい。図5を参照して、モータ駆動装置100Aは、モータ駆動装置100の制御装置70を制御装置70Aに代えたものであり、その他は、モータ駆動装置100と同じである。制御装置70Aは、制御装置70の誤差補正部71を誤差補正部71Aに代えたものであり、その他は、制御装置70と同じである。
【0093】
誤差補正部71Aは、誤差補正部71の機能に加え、回転位置センサー60が異常であるか否かを判定する機能を有する。そして、誤差補正部71Aは、回転位置センサー60が異常であると判定したとき信号EMGをモータ駆動装置100Aの外部に設けられた表示器(図示せず)へ出力する。
【0094】
誤差補正部71Aは、上述した方法によって演算した偏差ΔPhが最大誤差Ph_Dよりも小さいか否かを判定する。そして、誤差補正部71Aは、偏差ΔPhが最大誤差Ph_D以上であるとき回転位置センサー60が故障していると判定し、信号EMGを生成する。また、誤差補正部71Aは、偏差ΔPhが最大誤差Ph_Dよりも小さいとき、上述したように、偏差ΔPhを基準偏差Ph_J/2と比較し、その比較結果に応じてセンサー値θbを補正する。
【0095】
最大誤差Ph_Dは、同期モータ50の制御破綻を来すような値に設定され、より具体的には、同期モータ50を車両に搭載した場合、車両の回転変動の最大値に設定される。
【0096】
偏差ΔPhが最大誤差Ph_D以上であるとき、回転位置センサー60が故障していると判定することにしたのは、回転位置センサー60が故障していなければ偏差ΔPhは最大誤差Ph_Dよりも小さくなり、偏差ΔPhが最大誤差Ph_D以上になった原因は回転位置センサー60の故障しか考えられないからである。
【0097】
図6を参照して、誤差補正部71Aにおいてセンサー値θbを補正する動作について説明する。図6に示すフローチャートは図4に示すフローチャートにステップS17,S24を追加したものであり、その他は、図4に示すフローチャートと同じである。
【0098】
偏差ΔPhが演算されると(ステップS16)、誤差補正部71Aは、偏差ΔPhが最大誤差Ph_Dよりも小さいか否かを判定する(ステップS17)。そして、偏差ΔPhが最大誤差Ph_Dよりも小さいとき、上述したステップS18、S20,S22が実行される。
【0099】
ステップS17において、偏差ΔPhが最大誤差Ph_D以上であると判定されたとき、誤差補正部71Aは、回転位置センサー60が故障していると判定し(ステップS24)、信号EMGを生成して外部に設けられた表示器へ出力する。そしてステップS20またはS22またはS24の後、一連の動作が終了する。
【0100】
このように、モータ駆動装置100Aにおいては、回転位置センサー60が故障しているか否かを判定し、回転位置センサー60が故障していない場合にセンサー値θbを補正するので、回転位置センサー60が正常に動作していることを前提にしてセンサー値θbの補正を正確に行なうことができる。
【0101】
なお、誤差補正部71Aにおけるセンサー値の補正は、実際にはCPUによって実行され、CPUは、図6に示す各ステップを備えるプログラムをROMから読み出し、図6に示す各ステップを実行して回転位置センサー60からのセンサー値を補正する。
【0102】
したがって、ROMは、回転位置センサー60からのセンサー値の補正をコンピュータ(CPU)に実行させるためのプログラムを記録したコンピュータ(CPU)読取り可能な記録媒体に相当する。
【0103】
モータ駆動装置100Aの動作は、モータ駆動装置100の動作において誤差補正部71の動作を上述した誤差補正部71Aの動作に代えたものであり、その他はモータ駆動装置100の動作と同じである。
【0104】
なお、誤差補正部71Aは、センサー値を補正する「補正手段」を構成する。また、3相/2相変換部72、電流指令生成部73、減算器74,75、PI制御部76、2相/3相変換部77およびPWM生成部78は、誤差補正部71Aによって補正されたセンサー値を用いて同期モータ50を制御する「制御手段」を構成する。
【0105】
さらに、電流センサー40、回転位置センサー60および制御装置70Aは、「電動機制御装置」を構成する。
【0106】
その他は、モータ駆動装置100に関して説明したとおりである。
実施の形態1によれば、電動機制御装置は、所定期間における回転位置センサーからのセンサー値の平均値に基づいて予測値を演算し、その演算した予測値とセンサー値との偏差を演算し、その演算した偏差が基準偏差よりも小さいとき予測値をセンサー補正値とし、偏差が基準偏差よりも大きいときセンサー値に基準偏差を加減算した値をセンサー補正値とする誤差補正部を備えるので、同期モータの制御方式に関係なく、センサー値を補正できる。
【0107】
[実施の形態2]
図7を参照して、実施の形態2による電動機制御装置を備えるモータ駆動装置100Bは、モータ駆動装置100の制御装置70を制御装置70Bに代えたものであり、その他は、モータ駆動装置100と同じである。
【0108】
制御装置70Bは、制御装置70に誤差検出部79を追加したものであり、その他は、制御装置70と同じである。
【0109】
誤差検出部79は、回転位置センサー60からセンサー値θbを受け、その受けたセンサー値θbに含まれる誤差の種類(0.5次の誤差、1.0次の誤差、および2.0次の誤差のいずれか)を検出する。
【0110】
図8を参照して、誤差の種類の検出方法について説明する。誤差検出部79は、同期モータ50のロータが360度回転したときのセンサー値θbを回転位置センサー60から受ける。また、誤差検出部79は、ロータが360度回転するために必要な時間t1を内蔵したタイマーにより測定する。そして、誤差検出部79は、360度を時間t1で除算してロータの平均回転速度を演算し、その演算した平均回転速度を用いて直線k7を決定する。
【0111】
図8において、曲線k8は0.5次の誤差を表わし、曲線k9は1.0次の誤差を表わし、曲線k10は2.0次の誤差を表わす。誤差検出部79は、センサー値θbと直線k7との差の絶対値、すなわち、偏差Δθbを演算する。
【0112】
センサー値θbが0.5次の誤差k8を含んでいるとき、偏差Δθbのデータは、2個の「0」を含み、センサー値θbが1.0次の誤差k9を含んでいるとき、偏差Δθbのデータは、3個の「0」を含み、センサー値θbが2.0次の誤差k10を含んでいるとき、5個の「0」を含む。したがって、誤差検出部79は、偏差Δθbのデータに含まれる「0」の個数によりセンサー値θbに含まれる誤差の種類を検出する。
【0113】
そして、誤差検出部79は、センサー値θbに含まれる誤差の種類として0.5次の誤差を検出したとき、同期モータ50のロータが180度の整数倍回転するために必要な時間を規定期間TD1として誤差補正部71へ出力する。また、誤差検出部79は、センサー値θbに含まれる誤差の種類として1.0次の誤差を検出したとき、同期モータ50のロータが90度の整数倍回転するために必要な時間を規定期間TD2として誤差補正部71へ出力する。さらに、誤差検出部79は、センサー値θbに含まれる誤差の種類として2.0次の誤差を検出したとき、同期モータ50のロータが45度の整数倍回転するために必要な時間を規定期間TD3として誤差補正部71へ出力する。
【0114】
0.5次の誤差がセンサー値θbに含まれる場合、ロータが180度の整数倍回転するために必要な時間を規定期間とするのは、ロータが180度の整数倍回転したとき、0.5次の誤差が最も大きくなるからである。また、1.0次の誤差がセンサー値θbに含まれる場合、ロータが90度の整数倍回転するために必要な時間を規定期間とするのは、ロータが90度の整数倍回転したとき、1.0次の誤差が最も大きくなるからである。さらに、2.0次の誤差がセンサー値θbに含まれる場合、ロータが45度の整数倍回転するために必要な時間を規定期間とするのは、ロータが45度の整数倍回転したとき、2.0次の誤差が最も大きくなるからである。
【0115】
したがって、この発明は、ロータがセンサー値θbの誤差が最大になる角度まで回転するために必要な時間を規定期間として設定することを特徴とする。
【0116】
誤差補正部71は、誤差検出部79からの規定期間(TD1〜3のいずれか)において、上述した平均値PHavを演算し、その演算した平均値PHavを用いて予測値を演算する。そして、誤差補正部71は、演算した予測値を用いて上述した方法により回転位置センサー60からのセンサー値θbを補正する。
【0117】
図9を参照して、誤差補正部71および誤差検出部79においてセンサー値θbを補正する動作について説明する。図9に示すフローチャートは、図4に示すフローチャートにステップS6,S8を追加したものであり、その他は、図4に示すフローチャートと同じである。
【0118】
一連の動作が開始されると、誤差検出部79は、回転位置センサー60からセンサー値θbを受け、上述した方法によってセンサー値θbに含まれる誤差の種類を検出する(ステップS6)。そして、誤差検出部79は、検出した誤差の種類に応じて規定時間Tx〜Ty(規定期間TD1〜TD3のいずれか)を決定し、その決定した規定時間Tx〜Tyを誤差補正部71へ出力する。
【0119】
その後、上述したステップS10〜S22が実行されてセンサー値θbが補正される。
【0120】
このように、実施の形態2においては、センサー値θbに含まれる誤差の種類が検出され、その検出された誤差の種類に応じて決定された所定期間において平均値PHavおよび予測値が演算されてセンサー値θbが補正される。
【0121】
なお、誤差補正部71および誤差検出部79におけるセンサー値の補正は、実際にはCPUによって実行され、CPUは、図9に示す各ステップを備えるプログラムをROMから読み出し、図9に示す各ステップを実行して回転位置センサー60からのセンサー値を補正する。
【0122】
したがって、ROMは、回転位置センサー60からのセンサー値の補正をコンピュータ(CPU)に実行させるためのプログラムを記録したコンピュータ(CPU)読取り可能な記録媒体に相当する。
【0123】
モータ駆動装置100Bの動作は、モータ駆動装置100の動作に誤差検出部79の動作を追加したものであり、その他はモータ駆動装置100の動作と同じである。
【0124】
なお、誤差補正部71および誤差検出部79は、センサー値を補正する「補正手段」を構成する。
【0125】
また、3相/2相変換部72、電流指令生成部73、減算器74,75、PI制御部76、2相/3相変換部77およびPWM生成部78は、誤差補正部71および誤差検出部79によって補正されたセンサー値を用いて同期モータ50を制御する「制御手段」を構成する。
【0126】
さらに、電流センサー40、回転位置センサー60および制御装置70Bは、「電動機制御装置」を構成する。
【0127】
その他は、モータ駆動装置100に関して説明したとおりである。
実施の形態2による電動機制御装置を備えるモータ駆動装置は、図10に示すモータ駆動装置100Cであってもよい。
【0128】
図10を参照して、モータ駆動装置100Cは、モータ駆動装置100Aの制御装置70Aを制御装置70Cに代えたものであり、その他は、モータ駆動装置100Aと同じである。
【0129】
制御装置70Cは、制御装置70Aに誤差検出部79を追加したものであり、その他は、制御装置70Aと同じである。
【0130】
誤差検出部79は、上述した方法により、センサー値θbに含まれる誤差の種類を検出し、その検出した誤差の種類に応じた所定期間(TD1〜3のいずれか)を設定して誤差補正部71Aへ出力する。
【0131】
誤差補正部71Aは、誤差検出部79からの所定期間(TD1〜3のいずれか)における平均値PHavおよび予測値を演算し、その演算した予測値を用いて偏差ΔPhを演算する。そして、誤差補正部71Aは、偏差ΔPhが最大誤差Ph_Dよりも小さいとき、偏差ΔPhと基準偏差Ph_J/2との比較結果に応じてセンサー値θbを補正する。また、誤差補正部71Aは、偏差ΔPhが最大誤差Ph_D以上であるとき、回転位置センサー60が故障していると判定し、信号EMGを生成して外部に設けられた表示器(図示せず)へ出力する。
【0132】
図11を参照して、誤差補正部71Aおよび誤差検出部79においてセンサー値θbを補正する動作について説明する。図11に示すフローチャートは図6に示すフローチャートにステップS6,S8を追加したものであり、その他は、図6に示すフローチャートと同じである。
【0133】
また、ステップS6,S8は、図9に示すフローチャートにおいて説明したとおりである。
【0134】
なお、誤差補正部71Aおよび誤差検出部79におけるセンサー値の補正は、実際にはCPUによって実行され、CPUは、図11に示す各ステップを備えるプログラムをROMから読み出し、図11に示す各ステップを実行して回転位置センサー60からのセンサー値を補正する。
【0135】
したがって、ROMは、回転位置センサー60からのセンサー値の補正をコンピュータ(CPU)に実行させるためのプログラムを記録したコンピュータ(CPU)読取り可能な記録媒体に相当する。
【0136】
モータ駆動装置100Cの動作は、モータ駆動装置100Aの動作に誤差検出部79の動作を追加したものであり、その他はモータ駆動装置100Aの動作と同じである。
【0137】
なお、誤差補正部71Aおよび誤差検出部79は、センサー値を補正する「補正手段」を構成する。
【0138】
また、3相/2相変換部72、電流指令生成部73、減算器74,75、PI制御部76、2相/3相変換部77およびPWM生成部78は、誤差補正部71Aおよび誤差検出部79によって補正されたセンサー値を用いて同期モータ50を制御する「制御手段」を構成する。
【0139】
さらに、電流センサー40、回転位置センサー60および制御装置70Cは、「電動機制御装置」を構成する。
【0140】
その他は、モータ駆動装置100Aに関して説明したとおりである。
上述したように、実施の形態2においては、センサー値θbに含まれる誤差の種類を検出し、その検出した誤差の種類に応じて設定された所定期間(TD1〜3のいずれか)を設定してセンサー値θbを補正することを特徴とする。
【0141】
その他は、実施の形態1と同じである。
実施の形態2によれば、電動機制御装置は、回転位置センサーからのセンサー値に含まれる誤差の種類に応じて所定期間を設定する誤差検出部と、誤差検出部により設定された所定期間における回転位置センサーからのセンサー値の平均値に基づいて予測値を演算し、その演算した予測値とセンサー値との偏差を演算し、その演算した偏差が基準偏差よりも小さいとき予測値をセンサー補正値とし、偏差が基準偏差よりも大きいときセンサー値に基準偏差を加減算した値をセンサー補正値とする誤差補正部を備えるので、センサー値に含まれる誤差に応じてセンサー値を補正できる。
【0142】
なお、上述したモータ駆動装置100,100A,100B,100Cは、ハイブリッド自動車または電気自動車に搭載され、ハイブリッド自動車または電気自動車の駆動輪を駆動する駆動モータを駆動する。そして、モータ駆動装置100,100A,100B,100Cは、回転位置センサー60からのセンサー値θbの誤差が許容誤差に入るようにセンサー値θbを補正し、その補正したセンサー補正値θhに基づいて駆動モータを駆動する。したがって、安定して駆動モータを駆動でき、ハイブリッド自動車または電気自動車はスムーズに走行できる。
【0143】
また、上記においては、PWM制御方式のものについて説明したが、この発明は、回転位置センサーにより検出されたセンサー値に基づいて予測値を演算し、その演算した予測値を用いてセンサー値を補正するため、PWM制御方式のものに限らず、種々の制御方式、たとえば、過変調制御方式、矩形(1パルス)制御方式等の電動機制御方式に適用可能である。
【0144】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図1】 実施の形態1による電動機制御装置を備えたモータ駆動装置の概略ブロック図である。
【図2】 図1に示すインバータの回路図である。
【図3】 図1に示す回転位置センサーからのセンサー値の補正方法を説明するための図である。
【図4】 図1に示す誤差補正部においてセンサー値を補正する動作を説明するためのフローチャートである。
【図5】 実施の形態1による電動機制御装置を備えたモータ駆動装置の他の概略ブロック図である。
【図6】 図5に示す誤差補正部においてセンサー値を補正する動作を説明するためのフローチャートである。
【図7】 実施の形態2による電動機制御装置を備えたモータ駆動装置の概略ブロック図である。
【図8】 回転位置センサーからのセンサー値に含まれる誤差の種類を検出する方法を説明するための図である。
【図9】 図7に示す誤差補正部および誤差検出部においてセンサー値を補正する動作を説明するためのフローチャートである。
【図10】 実施の形態2による電動機制御装置を備えたモータ駆動装置の他の概略ブロック図である。
【図11】 図10に示す誤差補正部および誤差検出部においてセンサー値を補正する動作を説明するためのフローチャートである。
【符号の説明】
1 電源ライン、2 アースライン、10 直流電源、15 U相アーム、16 V相アーム、17 W相アーム、20 コンデンサ、30 インバータ、40 電流センサー、50 同期モータ、60 回転位置センサー、70,70A,70B,70C 制御装置、71,71A 誤差補正部、72 3相/2相変換部、73 電流指令生成部、74,75 減算器、76 PI制御部、77 2相/3相変換部、78 PWM生成部、79 誤差検出部、100,100A,100B,100C モータ駆動装置、Q3〜Q8 NPNトランジスタ、D3〜D8 ダイオード。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an electric motor control device that controls an electric motor by correcting an output of a resolver, and a computer-readable recording medium that records a program for causing a computer to correct a sensor value of a rotational position sensor.
[0002]
[Prior art]
In order to continuously rotate the rotor of the motor by the rotating magnetic field, the position of the rotor is detected. The position of the rotor is detected by a resolver attached to the rotating shaft.
[0003]
In other words, the resolver detects the position of the rotating rotor and outputs a position signal corresponding to each position of the rotor as an analog signal. A CPU (Central Processing Unit) of the computer converts an analog signal from the resolver into a digital signal, and an alternating current for generating a rotating magnetic field is provided on the outer periphery of the rotor based on the converted digital signal. A drive signal to be passed through the stator coil (usually composed of a three-phase coil) is generated and output to the inverter. The inverter causes a predetermined alternating current to flow through each phase of the stator coil at a predetermined timing based on a drive signal from the CPU. Thereby, a stator coil produces | generates a rotating magnetic field and a rotor rotates with the rotating magnetic field from a stator coil.
[0004]
However, since the resolver usually generates errors such as a 0.5th order error, a first order error, and a second order error, the output from the resolver does not exhibit a characteristic that the rotation angle increases linearly with time.
[0005]
Japanese Patent Laid-Open No. 2002-315381 discloses a technique for estimating the rotational speed Vm of the motor and energizing the motor coil based on the estimated rotational speed Vm. That is, the signal change period tn in which the output states of the position detection signals Sa to Sc output from the plurality of position detection elements change according to the rotor position of the brushless motor is measured. Then, the change rate Rt of the output state of the position detection signals Sa to Sc in the signal change period tn is calculated, and the calculated change rate Rt is compared with a predetermined value.
[0006]
As a result, the rotation speed Vm is estimated based on the latest signal change period tn when the rate of change Rt is greater than a predetermined value, and when the rate of change Rt is equal to or less than the predetermined value, the signal change period tn to tn-5. Estimated based on average value.
[0007]
Based on the estimated rotation speed Vm, the coil of the brushless motor is energized.
[0008]
[Patent Document 1]
JP 2002-315381 A
[0009]
[Patent Document 2]
Japanese Patent Laid-Open No. 7-168629
[0010]
[Patent Document 3]
Japanese Patent Laid-Open No. 2001-211698
[0011]
[Patent Document 4]
JP 2001-165707 A
[0012]
[Problems to be solved by the invention]
However, the motor control method disclosed in Japanese Patent Laid-Open No. 2002-315381 is a control method based on PWM control, and has a problem that it cannot be applied to other control methods.
[0013]
Accordingly, the present invention has been made to solve such a problem, and an object thereof is to provide an electric motor control device capable of correcting an error of a rotational position sensor regardless of a control method.
[0014]
Another object of the present invention is to provide a computer-readable recording medium in which a program for causing a computer to correct the sensor value of the rotational position sensor is recorded regardless of the control method.
[0015]
[Means for Solving the Problems and Effects of the Invention]
  According to this invention, the electric motor control device includes the rotational position sensor, the control means, and the correction means. The rotational position sensor detects the rotational position of the rotor included in the electric motor. The control means controls the drive device that drives the electric motor using the sensor correction value obtained by correcting the sensor value detected by the rotational position sensor. The correction means calculates a predicted value of the sensor value detected by the rotational position sensor, corrects the sensor value detected by the rotational position sensor based on the calculated predicted value, and uses the corrected sensor value as a sensor correction value. To the control means.The correcting means calculates an average value of the sensor value output from the rotational position sensor for a predetermined period, and calculates a predicted value based on the calculated average value.
[0016]
Preferably, the correction means calculates a deviation that is an absolute value of a difference between the sensor value detected by the rotational position sensor and the calculated predicted value, and detects the calculated deviation according to a comparison result obtained by comparing the calculated deviation with a reference deviation. Correct the sensor value.
[0017]
Preferably, when the deviation is smaller than the reference deviation, the correction means sets the calculated predicted value as a sensor correction value, and when the deviation is larger than the reference deviation, the sensor correction is performed by adding and subtracting the reference deviation to the detected sensor value. Value.
[0018]
Preferably, when the sensor value is larger than the upper limit value of the allowable error, the correction means sets the value obtained by subtracting the reference deviation from the detected sensor value as the sensor correction value, and when the sensor value is smaller than the lower limit value of the allowable error A value obtained by adding a reference deviation to the detected sensor value is defined as a sensor correction value.
[0020]
Preferably, the predetermined period is a time required for the rotor to rotate by an integral multiple of 180 degrees.
[0021]
Preferably, the motor control device further includes error detection means. The error detection means detects the type of error included in the sensor value and sets a predetermined period according to the detected type of error. Then, the correction means calculates an average value for a predetermined period set by the error detection means.
[0022]
Preferably, the error detecting means sets, as a predetermined period, a time required for the rotor to rotate by an integral multiple of 180 degrees when a 0.5th order error is detected as the error type.
[0023]
Preferably, the error detecting means sets a time required for the rotor to rotate by an integral multiple of 90 degrees as a predetermined period when a 1.0th order error is detected as the error type.
[0024]
Preferably, the error detecting means sets, as a predetermined period, a time required for the rotor to rotate by an integral multiple of 45 degrees when a 2.0th order error is detected as the error type.
[0025]
Preferably, the motor control device further includes a failure determination unit. The failure determination means determines that the rotational position sensor has failed when the deviation calculated by the correction means is larger than the maximum error.
[0026]
  Also, this inventionOther aspects ofAccording to the correction of the sensor value of the rotational position sensor that detects the rotational position of the rotor included in the electric motorprocessingA computer-readable recording medium storing a program for causing a computer to executeIt is. Correction processIs a first step of calculating a predicted value of the sensor value detected by the rotational position sensor, and calculates a deviation which is an absolute value of a difference between the calculated predicted value and the sensor value detected by the rotational position sensor A second step of comparing the calculated deviation with a reference deviation, and a fourth step of correcting the sensor value according to the comparison result.Including. The first step includes a first sub-step for calculating an average value of sensor values output from the rotational position sensor over a predetermined period, and a second sub-step for calculating the predicted value based on the calculated average value. Including.
[0027]
Preferably, in the fourth step, when the deviation is smaller than the reference deviation, the calculated predicted value is set as a sensor correction value obtained by correcting the sensor value.
[0028]
Preferably, in the fourth step, when the deviation is larger than the reference deviation, a value obtained by adding or subtracting the reference deviation to the detected sensor value is set as a sensor correction value obtained by correcting the sensor value.
[0029]
Preferably, in the fourth step, when the sensor value is larger than the upper limit value of the allowable error, a value obtained by subtracting the reference deviation from the detected sensor value is set as a sensor correction value, and the sensor value is lower than the lower limit value of the allowable error. When the value is small, a value obtained by adding a reference deviation to the detected sensor value is set as a sensor correction value.
[0031]
Preferably, in the first sub-step, an average value is calculated by setting a time required for the rotor to rotate an integral multiple of 180 degrees as a predetermined period.
[0032]
Preferably, the program further causes the computer to execute a fifth step of detecting an error type included in the sensor value, and the first sub-step is performed in a predetermined period determined according to the detected error type. Calculate the average value.
[0033]
Preferably, in the first sub-step, when a 0.5th order error is detected as an error type, an average value is calculated by setting a time required for the rotor to rotate an integral multiple of 180 degrees as a predetermined period. .
[0034]
Preferably, in the first sub-step, when a 1.0-order error is detected as an error type, an average value is calculated by setting a time required for the rotor to rotate an integral multiple of 90 degrees as a predetermined period. .
[0035]
Preferably, in the first sub-step, when a 2.0th order error is detected as an error type, an average value is calculated by setting a time required for the rotor to rotate an integer multiple of 45 degrees as a predetermined period. .
[0036]
Preferably, the program further causes the computer to execute a sixth step of determining that the rotational position sensor has failed when the calculated deviation is greater than the maximum error.
[0037]
In this invention, the predicted value of the sensor value indicating the rotational position of the rotor of the electric motor is calculated, and the sensor value is corrected based on the calculated predicted value.
[0038]
Therefore, according to the present invention, the sensor value can be corrected regardless of the control method of the electric motor.
[0039]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals and description thereof will not be repeated.
[0040]
[Embodiment 1]
Referring to FIG. 1, a motor drive device 100 including an electric motor control device according to Embodiment 1 of the present invention includes a DC power supply 10, a capacitor 20, an inverter 30, a current sensor 40, a rotational position sensor 60, And a control device 70.
[0041]
The power supply line 1 is connected to the positive electrode of the DC power supply 10, and the ground line 2 is connected to the negative electrode of the DC power supply 10. Capacitor 20 is connected between power supply line 1 and earth line 2. Capacitor 20 smoothes the DC voltage from DC power supply 10 and supplies the smoothed DC voltage to inverter 30.
[0042]
Inverter 30 receives a DC voltage via capacitor 20, converts the received DC voltage into an AC voltage by signal PWM from control device 70, and drives synchronous motor 50.
[0043]
Current sensor 40 detects motor currents Iu and Iv flowing through synchronous motor 50, and outputs the detected motor currents Iu and Iv to control device 70. In FIG. 1, only two current sensors 40 are shown. This is because when the synchronous motor 50 is a three-phase synchronous motor, if the motor currents Iu and Iv flowing in the two phases are detected, the motor current Iw flowing in the remaining phases is determined based on the detected motor currents Iu and Iv. It is because it can calculate. Therefore, when the motor currents Iu, Iv, and Iw flowing in each of the three phases are detected independently, three current sensors 40 may be provided.
[0044]
Synchronous motor 50 is a three-phase synchronous motor including a U-phase coil, a V-phase coil, and a W-phase coil as stator coils.
[0045]
The rotational position sensor 60 detects the rotational position of the rotor of the synchronous motor 50 and outputs a sensor value θb indicating the detected rotational position to the control device 70.
[0046]
The control device 70 includes an error correction unit 71, a three-phase / two-phase conversion unit 72, a current command generation unit 73, subtracters 74 and 75, a PI control unit 76, and a two-phase / three-phase conversion unit 77. PWM generator 78.
[0047]
The error correction unit 71 receives the sensor value θb from the rotational position sensor 60 and corrects the received sensor value θb by a method described later. Then, the error correction unit 71 outputs the corrected sensor correction value θh to the 3-phase / 2-phase conversion unit 72 and the 2-phase / 3-phase conversion unit 77.
[0048]
The three-phase / two-phase converter 72 receives motor currents Iu and Iv from the two current sensors 40 and 40. Then, the three-phase / two-phase converter 72 calculates a motor current Iw = −Iu−Iv based on the motor currents Iu and Iv.
[0049]
Then, the three-phase / two-phase converter 72 converts the motor currents Iu, Iv, and Iw into three-phase to two-phase using the sensor value θh from the error corrector 71. That is, the three-phase / two-phase converter 72 calculates the current values Id, Iq by substituting the motor currents Iu, Iv, Iw and the sensor correction value θh into the following equation.
[0050]
[Expression 1]
Figure 0004059094
That is, the three-phase / two-phase conversion unit 72 uses the three-phase motor currents Iu, Iv, Iw flowing in the respective phases of the three-phase coil of the synchronous motor 50 to flow in the d-axis and the q-axis using the sensor correction value θh. Convert to values Id and Iq. Then, the three-phase / two-phase conversion unit 72 outputs the calculated current value Id to the subtractor 74 and outputs the calculated current value Iq to the subtractor 75.
[0051]
The current command generation unit 73 receives a torque command value TR from an ECU (Electrical Control Unit) provided outside the motor drive device 100, and outputs a torque specified by the received torque command value TR. Id * and Iq * are generated. Then, the current command generator 73 outputs the generated current command Id * to the subtracter 74 and outputs the generated current command Iq * to the subtractor 75.
[0052]
The subtractor 74 calculates a deviation ΔId between the current command Id * and the current value Id, and outputs the calculated deviation ΔId to the PI control unit 76. Subtractor 75 calculates deviation ΔIq between current command Iq * and current value Iq, and outputs the calculated deviation ΔIq to PI control unit 76.
[0053]
The PI control unit 76 calculates the voltage operation amounts Vd and Vq for adjusting the motor current using the PI gain with respect to the deviations ΔId and ΔIq, and the calculated voltage operation amounts Vd and Vq are two-phase / three-phase conversion units. Output to 77.
[0054]
The two-phase / three-phase conversion unit 77 performs two-phase three-phase conversion on the voltage operation amounts Vd and Vq from the PI control unit 76 using the sensor correction value θh from the error correction unit 71. That is, the two-phase / three-phase converter 77 substitutes the voltage manipulated variables Vd and Vq from the PI controller 76 and the sensor correction value θh from the error corrector 71 into the following formula to the three-phase coil of the synchronous motor 50. The operation amounts Vu, Vv, Vw of the applied voltage are calculated.
[0055]
[Expression 2]
Figure 0004059094
In other words, the two-phase / three-phase conversion unit 77 uses the operation amounts Vd and Vq of the voltage applied to the d-axis and the q-axis to the operation amount Vu of the voltage applied to the three-phase coil of the synchronous motor 50 using the sensor correction value θh. , Vv, Vw.
[0056]
Then, the two-phase / three-phase converter 77 outputs the voltage manipulated variables Vu, Vv, Vw to the PWM generator 78.
[0057]
The PWM generator 78 generates a signal PWM based on the voltage manipulated variables Vu, Vv, and Vw, and outputs the generated signal PWM to the inverter 30.
[0058]
FIG. 2 shows a circuit diagram of the inverter 30. Referring to FIG. 2, inverter 30 includes a U-phase arm 15, a V-phase arm 16, and a W-phase arm 17. U-phase arm 15, V-phase arm 16 and W-phase arm 17 are provided in parallel between power supply line 1 and earth line 2.
[0059]
The U-phase arm 15 includes NPN transistors Q3 and Q4 connected in series, the V-phase arm 16 includes NPN transistors Q5 and Q6 connected in series, and the W-phase arm 17 includes NPN transistors connected in series. It consists of transistors Q7 and Q8. Further, diodes D3 to D8 that flow current from the emitter side to the collector side are connected between the collectors and emitters of the NPN transistors Q3 to Q8, respectively.
[0060]
An intermediate point of each phase arm of inverter 30 is connected to each phase end of each phase coil of synchronous motor 50. That is, the other end of the U-phase coil of the synchronous motor 50 is at the intermediate point of the NPN transistors Q3 and Q4, the other end of the V-phase coil is at the intermediate point of the NPN transistors Q5 and Q6, and the other end of the W-phase coil is the NPN transistor Q7. , Q8, respectively.
[0061]
A method for correcting the sensor value θb in the error correction unit 71 will be described with reference to FIG. FIG. 3 shows a case where the rotational position sensor 60 outputs a sensor value θb including a 1.0th order error.
[0062]
A curve k1 indicates a sensor value θb from the rotational position sensor 60 in a predetermined period Δt1 (also referred to as “specified period”, hereinafter the same) between the timing Tx and the timing Ty. The error correction unit 71 calculates the average value PHav of the movement amount of the rotor using Phase (Tx) at the timing Tx and Phase (Ty) at the timing Ty. Then, the error correction unit 71 calculates the predicted value indicated by the straight line k2 by multiplying the calculated average value PHav by the time Δt1.
[0063]
Then, the error correction unit 71 determines the difference between the sensor value θb (indicated by the curve k3) from the rotational position sensor 60 and the predicted value k2 in a predetermined period Δt2 (timing Ty to timing Tz) adjacent to the predetermined period Δt1. Is calculated, that is, the deviation ΔPh is calculated.
[0064]
Then, the error correction unit 71 compares the deviation ΔPh with a reference deviation Ph_J / 2 corresponding to half the allowable error Ph_J. When the deviation ΔPh is smaller than the reference deviation Ph_J / 2, the error correction unit 71 calculates the predicted value k2 as the sensor value θb. Is a sensor correction value θh, and when the deviation ΔPh is larger than the reference deviation Ph_J / 2, a value obtained by adding / subtracting the reference deviation Ph_J / 2 to the sensor value θb from the rotational position sensor 60 is set as a sensor correction value θh.
[0065]
When the deviation ΔPh is larger than the reference deviation Ph_J / 2, the sensor value θb is larger than the upper limit value of the allowable error Ph_J (indicated by the straight line k4), and the sensor value θb is lower limit of the allowable error Ph_J (the straight line k5). Less than). Therefore, when the deviation ΔPh is larger than the reference deviation Ph_J / 2, the sensor value θb is corrected as follows.
[0066]
That is, when the sensor value θb is larger than the upper limit value of the allowable error Ph_J, the error correction unit 71 performs sensor correction on a value θb−Ph_J / 2 obtained by subtracting the reference deviation Ph_J / 2 from the sensor value θb from the rotational position sensor 60. When the sensor value θb is smaller than the lower limit value of the allowable error Ph_J, the value θb + Ph_J / 2 obtained by adding the reference deviation Ph_J / 2 to the sensor value θb from the rotational position sensor 60 is set as the sensor correction value θh.
[0067]
Thereby, even when the sensor value θb includes an error that exceeds the range of the allowable error Ph_J, the sensor correction value θh falls within the allowable error Ph_J. The upper limit value (indicated by a straight line k4) and the lower limit value (indicated by a straight line k5) of the allowable error Ph_J are a reference value set at the time of shipment of the rotational position sensor 60 and a value at which no overvoltage is applied to the capacitor 20. Decided in consideration. Since the sensor value θb from the rotational position sensor 60 hardly deviates from the set upper limit value or lower limit value of the allowable error Ph_J beyond the reference deviation Ph_J / 2, the sensor value θb exceeds the upper limit of the allowable error Ph_J. When the sensor value θb is smaller than the lower limit value of the allowable error Ph_J, the sensor correction value θh falls within the allowable error Ph_J by subtracting the reference deviation Ph_J / 2 from the sensor value θb. By adding the reference deviation Ph_J / 2, the sensor correction value θh falls within the allowable error Ph_J.
[0068]
Then, since the deviation ΔPh from the timing Ty to the timing T1 is smaller than the reference deviation Ph_J / 2, the predicted value k2 is used as the sensor correction value θh from the timing Ty to the timing T1, and after the timing T1, A value θb + Ph_J / 2 obtained by adding the reference deviation Ph_J / 2 to the sensor value θb is used as the sensor correction value θh. That is, the sensor correction value θh is indicated by the curve k6.
[0069]
When the deviation ΔPh is smaller than the reference deviation Ph_J / 2 (between timing Ty and timing T1), it is decided to use the predicted value (indicated by the curve k3) instead of the sensor value θb for a predetermined period Δt1. The predicted value calculated from the average value PHav at is considered to exhibit characteristics close to the sensor value when the sensor value θb does not include an error because the sensor value θb has a characteristic that changes linearly with respect to time, and does not include the error. This is because the controllability of the synchronous motor 50 is improved by using a predicted value close to the sensor value at that time.
[0070]
Further, when the deviation ΔPh is larger than the reference deviation Ph_J / 2 (after timing T1), the reason why the sensor value θb is corrected by the reference deviation Ph_J / 2 instead of the predicted value is that the deviation ΔPh is the reference deviation Ph_J / 2. The predicted value is greatly deviated from the actual rotational position of the synchronous motor 50, and the value obtained by adding or subtracting the reference deviation Ph_J / 2 to the sensor value θb is considered to be closer to the actual rotational position. is there.
[0071]
As described above, the sensor value θb in the predetermined period Δt2 is corrected based on the predicted value calculated in the predetermined period Δt1.
[0072]
Then, the predicted value in the predetermined period Δt2 is calculated by the method described above, and the sensor value θb is corrected in the predetermined period adjacent to the predetermined period Δt2 using the calculated predicted value. As described above, in the present invention, the predicted value of the sensor value θb from the rotational position sensor 60 is calculated in a certain predetermined period, and the sensor value in the next predetermined period is corrected using the calculated predicted value. Calculate the predicted value of the sensor value. The calculated predicted value is further used for correcting the sensor value in the next predetermined period.
[0073]
That is, the sensor correction value θh is included in the allowable error Ph_J by sequentially repeating the calculation of the predicted value and the correction of the sensor value using the calculated predicted value.
[0074]
Therefore, the present invention is characterized in that the sensor value θb from the rotational position sensor 60 is corrected so that the sensor correction value θh falls within the allowable error Ph_J.
[0075]
In the present invention, preferably, the period Δt1 for calculating the average value PHav is set to a time required for the rotor of the synchronous motor 50 to rotate by an integral multiple of 180 degrees.
[0076]
In the above description, the correction of the sensor value including the 1.0th order error has been described. However, the sensor value including the 0.5th order error or the 2.0th order error is also corrected by the above-described method.
[0077]
With reference to FIG. 4, the operation | movement which correct | amends sensor value (theta) b in the error correction part 71 is demonstrated. In the above description, the sensor value from the rotational position sensor 60 is represented by θb. However, since the control of the synchronous motor 50 is performed at a predetermined timing, in FIG. Phase (Tn) is used to indicate the sensor value.
[0078]
When a series of operations is started, the error correction unit 71 takes in the sensor value Phase (Tn) from the rotational position sensor 60 (step S10). Then, the error correction unit 71 calculates the average value PHav = [Phase (Ty) −Phase (Tx)] / [Ty−Tx] of the movement amount of the rotor in the specified periods Tx to Ty by the method described above (step S12). ). Thereafter, the error correction unit 71 calculates the predicted value Phase_est (Tn) = Phase (Tn−1) + (Tn−Tn−1) × PHav at the control timing Tn using the calculated average value PHav (step S14). . Then, the error correction unit 71 calculates the deviation ΔPh, which is the absolute value of the difference between the predicted value Phase_est (Tn) and the sensor value Phase (Tn), by the method described above (step S16).
[0079]
Then, the error correction unit 71 determines whether or not the calculated deviation ΔPh is smaller than the reference deviation Ph_J / 2 (Step S18). When the deviation ΔPh is not smaller than the reference deviation Ph_J / 2, the error correction unit 71 sets a value obtained by adding or subtracting the reference deviation Ph_J / 2 to the sensor value Phase (Tn) as a sensor correction value.
[0080]
Specifically, when the deviation ΔPh is equal to or larger than the reference deviation Ph_J / 2, that is, when the sensor value Phase (Tn) from the rotational position sensor 60 is equal to or larger than the upper limit value of the allowable error Ph_J, the sensor value Phase (Tn). A value Phase (Tn) −Ph_J / 2 obtained by subtracting the reference deviation Ph_J / 2 from the sensor correction value Phase (Tn) = Phase (Tn) −Ph_J / 2. When the deviation ΔPh is smaller than the reference deviation Ph_J / 2, that is, when the sensor value Phase (Tn) from the rotational position sensor 60 is smaller than the lower limit value of the allowable error Ph_J, the sensor value Phase (Tn) has a reference deviation. A value Phase (Tn) + Ph_J / 2 obtained by adding Ph_J / 2 is set as a sensor correction value Phase (Tn) = Phase (Tn) + Ph_J / 2 (step S20).
[0081]
On the other hand, when it is determined in step S18 that the deviation ΔPh is smaller than the reference deviation Ph_J / 2, the error correction unit 71 sets the predicted value Phase_est (Tn) calculated in step S14 as the sensor correction value Phase (Tn). (Step S22).
[0082]
And a series of operation | movement is complete | finished after step S20 or step S22. The correction of the sensor value in the error correction unit 71 is actually executed by the CPU. The CPU reads a program including each step shown in FIG. 4 from a ROM (Read Only Memory), and performs each step shown in FIG. This is executed to correct the sensor value from the rotational position sensor 60.
[0083]
Therefore, the ROM corresponds to a computer (CPU) readable recording medium that records a program for causing the computer (CPU) to correct the sensor value from the rotational position sensor 60.
[0084]
Again, the operation of the motor drive device 100 will be described with reference to FIG. When a series of operations is started, the rotational position sensor 60 detects the rotational position of the rotor of the synchronous motor 50 and outputs the sensor value θb to the control device 70. The current sensor 40 detects motor currents Iu and Iv flowing through the synchronous motor 50 and outputs them to the control device 70.
[0085]
Then, the error correction unit 71 of the control device 70 corrects the sensor value θb from the rotational position sensor 60 by the method described above, and converts the sensor correction value θh into the three-phase / two-phase conversion unit 72 and the two-phase / three-phase conversion unit. Output to 77. The three-phase / two-phase converter 72 calculates the motor current Iw based on the motor currents Iu and Iv from the current sensor 40. Then, the 3-phase / 2-phase conversion unit 72 calculates the current values Id and Iq by substituting the sensor correction value θh and the motor currents Iu, Iv, and Iw from the error correction unit 71 into the equation (1), and corrects the error. Motor currents Iu, Iv, Iw are converted into current values Id, Iq flowing in the d-axis and q-axis of synchronous motor 50 using sensor correction value θh from unit 71.
[0086]
Current command generator 73 calculates current command values Id * and Iq * for synchronous motor 50 to output the torque specified by torque command value TR in accordance with torque command value TR received from the external ECU. The subtracter 74 subtracts the current value Id converted by the three-phase / two-phase converter 72 from the current command value Id * calculated by the current command generator 73 to calculate a deviation ΔId. The subtractor 75 subtracts the current value Iq converted by the three-phase / two-phase converter 72 from the current command value Iq * calculated by the current command generator 73 to calculate a deviation ΔIq.
[0087]
The PI control unit 76 calculates the voltage operation amounts Vd and Vq for adjusting the motor current of the synchronous motor 50 using the PI gain with respect to the deviations ΔId and ΔIq. Then, the 2-phase / 3-phase conversion unit 77 substitutes the sensor correction value θh from the error correction unit 71 and the voltage manipulated variables Vd and Vq from the PI control unit 76 into the expression (2) to generate voltages Vu, Vv, and Vw. And the voltage manipulated variables Vd and Vq from the PI control unit 76 are subjected to two-phase to three-phase conversion using the sensor correction value θh from the error correction unit 71. The PWM generator 78 generates a signal PWM based on the voltages Vu, Vv, and Vw from the 2-phase / 3-phase converter 77 and outputs the generated signal PWM to the NPN transistors Q3 to Q8 of the inverter 30.
[0088]
NPN transistors Q3 to Q8 are turned on / off in response to signal PWM, and inverter 30 converts a DC voltage from DC power supply 10 into an AC voltage to drive synchronous motor 50.
[0089]
Thereby, even if the sensor value θb from the rotational position sensor 60 includes an error, the synchronous motor can be driven so that the sensor value θb is corrected and an overvoltage is not applied to the capacitor 20.
[0090]
The error correction unit 71 constitutes “correction means” for correcting the sensor value.
Further, the three-phase / two-phase conversion unit 72, the current command generation unit 73, the subtractors 74 and 75, the PI control unit 76, the two-phase / three-phase conversion unit 77, and the PWM generation unit 78 are corrected by the error correction unit 71. The “control means” is configured to control the synchronous motor 50 using the sensor value.
[0091]
Furthermore, the current sensor 40, the rotational position sensor 60, and the control device 70 constitute a “motor control device”.
[0092]
The motor drive device provided with the electric motor control device according to Embodiment 1 may be motor drive device 100A shown in FIG. Referring to FIG. 5, motor drive device 100 </ b> A is the same as motor drive device 100 except that control device 70 of motor drive device 100 is replaced with control device 70 </ b> A. The control device 70A is the same as the control device 70 except that the error correction unit 71 of the control device 70 is replaced with an error correction unit 71A.
[0093]
In addition to the function of the error correction unit 71, the error correction unit 71A has a function of determining whether or not the rotational position sensor 60 is abnormal. When it is determined that the rotational position sensor 60 is abnormal, the error correction unit 71A outputs a signal EMG to a display (not shown) provided outside the motor driving device 100A.
[0094]
The error correction unit 71A determines whether or not the deviation ΔPh calculated by the method described above is smaller than the maximum error Ph_D. Then, the error correction unit 71A determines that the rotational position sensor 60 has failed when the deviation ΔPh is equal to or greater than the maximum error Ph_D, and generates a signal EMG. Further, when the deviation ΔPh is smaller than the maximum error Ph_D, the error correction unit 71A compares the deviation ΔPh with the reference deviation Ph_J / 2 as described above, and corrects the sensor value θb according to the comparison result.
[0095]
The maximum error Ph_D is set to a value that causes the control failure of the synchronous motor 50. More specifically, when the synchronous motor 50 is mounted on a vehicle, the maximum error Ph_D is set to the maximum value of the rotational fluctuation of the vehicle.
[0096]
When the deviation ΔPh is greater than or equal to the maximum error Ph_D, it is determined that the rotational position sensor 60 has failed. If the rotational position sensor 60 has not failed, the deviation ΔPh is smaller than the maximum error Ph_D. The reason why the deviation ΔPh becomes greater than or equal to the maximum error Ph_D is that only the failure of the rotational position sensor 60 can be considered.
[0097]
With reference to FIG. 6, the operation of correcting the sensor value θb in the error correction unit 71A will be described. The flowchart shown in FIG. 6 is the same as the flowchart shown in FIG. 4 except that steps S17 and S24 are added to the flowchart shown in FIG.
[0098]
When the deviation ΔPh is calculated (step S16), the error correction unit 71A determines whether or not the deviation ΔPh is smaller than the maximum error Ph_D (step S17). When the deviation ΔPh is smaller than the maximum error Ph_D, steps S18, S20, and S22 described above are executed.
[0099]
When it is determined in step S17 that the deviation ΔPh is greater than or equal to the maximum error Ph_D, the error correction unit 71A determines that the rotational position sensor 60 is out of order (step S24), generates a signal EMG, and outputs the signal EMG to the outside. Output to the provided display. And a series of operation | movement is complete | finished after step S20 or S22 or S24.
[0100]
As described above, in the motor drive device 100A, it is determined whether or not the rotational position sensor 60 has failed. When the rotational position sensor 60 has not failed, the sensor value θb is corrected. The sensor value θb can be accurately corrected on the assumption that the sensor is operating normally.
[0101]
The correction of the sensor value in the error correction unit 71A is actually executed by the CPU. The CPU reads a program including each step shown in FIG. 6 from the ROM, and executes each step shown in FIG. The sensor value from the sensor 60 is corrected.
[0102]
Therefore, the ROM corresponds to a computer (CPU) readable recording medium that records a program for causing the computer (CPU) to correct the sensor value from the rotational position sensor 60.
[0103]
The operation of the motor drive device 100A is the same as the operation of the motor drive device 100 except that the operation of the error correction unit 71 in the operation of the motor drive device 100 is replaced with the operation of the error correction unit 71A described above.
[0104]
The error correction unit 71A constitutes “correction means” for correcting the sensor value. Further, the three-phase / two-phase conversion unit 72, the current command generation unit 73, the subtractors 74 and 75, the PI control unit 76, the two-phase / three-phase conversion unit 77, and the PWM generation unit 78 are corrected by the error correction unit 71A. The “control means” is configured to control the synchronous motor 50 using the sensor value.
[0105]
Furthermore, the current sensor 40, the rotational position sensor 60, and the control device 70A constitute a “motor control device”.
[0106]
Others are as described regarding the motor driving device 100.
According to the first embodiment, the motor control device calculates a predicted value based on an average value of sensor values from the rotational position sensor in a predetermined period, calculates a deviation between the calculated predicted value and the sensor value, Since the calculated deviation is smaller than the standard deviation, an error correction unit is provided that uses the predicted value as the sensor correction value, and when the deviation is larger than the standard deviation, the sensor correction value is obtained by adding or subtracting the standard deviation to the sensor value. The sensor value can be corrected regardless of the motor control method.
[0107]
[Embodiment 2]
Referring to FIG. 7, motor drive device 100B including the motor control device according to the second embodiment is obtained by replacing control device 70 of motor drive device 100 with control device 70B. The same.
[0108]
The control device 70B is obtained by adding an error detection unit 79 to the control device 70, and is otherwise the same as the control device 70.
[0109]
The error detection unit 79 receives the sensor value θb from the rotational position sensor 60, and the type of error included in the received sensor value θb (0.5th order error, 1.0th order error, and 2.0th order error). Detect one of the errors).
[0110]
The error type detection method will be described with reference to FIG. Error detector 79 receives sensor value θb from rotational position sensor 60 when the rotor of synchronous motor 50 rotates 360 degrees. The error detector 79 measures the time t1 necessary for the rotor to rotate 360 degrees with a built-in timer. Then, the error detection unit 79 calculates 360 degrees of average rotation speed by dividing 360 degrees by time t1, and determines the straight line k7 using the calculated average rotation speed.
[0111]
In FIG. 8, curve k8 represents a 0.5th order error, curve k9 represents a 1.0th order error, and curve k10 represents a 2.0th order error. The error detector 79 calculates the absolute value of the difference between the sensor value θb and the straight line k7, that is, the deviation Δθb.
[0112]
When the sensor value θb includes a 0.5th order error k8, the deviation Δθb data includes two “0”, and when the sensor value θb includes a 1.0th order error k9, the deviation The data of Δθb includes three “0”, and includes five “0” when the sensor value θb includes a 2.0th-order error k10. Therefore, the error detection unit 79 detects the type of error included in the sensor value θb based on the number of “0” included in the data of the deviation Δθb.
[0113]
When the error detection unit 79 detects a 0.5th-order error as the type of error included in the sensor value θb, the error detection unit 79 sets the time required for the rotor of the synchronous motor 50 to rotate by an integral multiple of 180 degrees for a specified period. The result is output to the error correction unit 71 as TD1. Further, when the error detection unit 79 detects a 1.0-order error as the type of error included in the sensor value θb, the error detection unit 79 sets a time required for the rotor of the synchronous motor 50 to rotate by an integral multiple of 90 degrees for a specified period. The result is output to the error correction unit 71 as TD2. Furthermore, when the error detection unit 79 detects a 2.0th order error as the type of error included in the sensor value θb, the error detection unit 79 sets the time required for the rotor of the synchronous motor 50 to rotate by an integral multiple of 45 degrees for a specified period. The result is output to the error correction unit 71 as TD3.
[0114]
When the 0.5th-order error is included in the sensor value θb, the time required for the rotor to rotate by an integral multiple of 180 degrees is set as the specified period when the rotor rotates by an integral multiple of 180 degrees. This is because the fifth-order error is the largest. In addition, when a 1.0-order error is included in the sensor value θb, the time required for the rotor to rotate by an integer multiple of 90 degrees is set as the specified period when the rotor rotates by an integer multiple of 90 degrees. This is because the 1.0th order error is the largest. Furthermore, when a 2.0th order error is included in the sensor value θb, the time required for the rotor to rotate an integer multiple of 45 degrees is set as the specified period when the rotor rotates an integer multiple of 45 degrees. This is because the 2.0th order error is the largest.
[0115]
Therefore, the present invention is characterized in that the time required for the rotor to rotate to an angle at which the error of the sensor value θb is maximized is set as the specified period.
[0116]
The error correction unit 71 calculates the average value PHav described above during the specified period (any one of TD1 to TD3) from the error detection unit 79, and calculates the predicted value using the calculated average value PHav. Then, the error correction unit 71 corrects the sensor value θb from the rotational position sensor 60 by the method described above using the calculated predicted value.
[0117]
The operation of correcting the sensor value θb in the error correction unit 71 and the error detection unit 79 will be described with reference to FIG. The flowchart shown in FIG. 9 is obtained by adding steps S6 and S8 to the flowchart shown in FIG. 4, and is otherwise the same as the flowchart shown in FIG.
[0118]
When a series of operations is started, the error detection unit 79 receives the sensor value θb from the rotational position sensor 60, and detects the type of error included in the sensor value θb by the method described above (step S6). Then, the error detection unit 79 determines the specified times Tx to Ty (any of the specified periods TD1 to TD3) according to the detected error type, and outputs the determined specified times Tx to Ty to the error correction unit 71. To do.
[0119]
Thereafter, steps S10 to S22 described above are executed to correct the sensor value θb.
[0120]
As described above, in the second embodiment, the type of error included in the sensor value θb is detected, and the average value PHav and the predicted value are calculated in a predetermined period determined according to the detected type of error. The sensor value θb is corrected.
[0121]
The correction of the sensor value in the error correction unit 71 and the error detection unit 79 is actually executed by the CPU, and the CPU reads a program including each step shown in FIG. 9 from the ROM, and performs each step shown in FIG. This is executed to correct the sensor value from the rotational position sensor 60.
[0122]
Therefore, the ROM corresponds to a computer (CPU) readable recording medium that records a program for causing the computer (CPU) to correct the sensor value from the rotational position sensor 60.
[0123]
The operation of the motor driving device 100B is the same as the operation of the motor driving device 100 except that the operation of the error detection unit 79 is added to the operation of the motor driving device 100.
[0124]
The error correction unit 71 and the error detection unit 79 constitute a “correction unit” that corrects the sensor value.
[0125]
In addition, the three-phase / two-phase converter 72, the current command generator 73, the subtractors 74 and 75, the PI controller 76, the two-phase / three-phase converter 77, and the PWM generator 78 are the error corrector 71 and the error detector. A “control unit” that controls the synchronous motor 50 using the sensor value corrected by the unit 79 is configured.
[0126]
Furthermore, the current sensor 40, the rotational position sensor 60, and the control device 70B constitute a “motor control device”.
[0127]
Others are as described regarding the motor driving device 100.
The motor drive device provided with the electric motor control device according to Embodiment 2 may be motor drive device 100C shown in FIG.
[0128]
Referring to FIG. 10, motor drive device 100C is the same as motor drive device 100A except that control device 70A of motor drive device 100A is replaced with control device 70C.
[0129]
The control device 70C is obtained by adding an error detection unit 79 to the control device 70A, and is otherwise the same as the control device 70A.
[0130]
The error detection unit 79 detects the type of error included in the sensor value θb by the method described above, sets a predetermined period (any one of TD1 to TD3) according to the detected error type, and an error correction unit. Output to 71A.
[0131]
The error correction unit 71A calculates an average value PHav and a predicted value in a predetermined period (any of TD1 to TD3) from the error detection unit 79, and calculates a deviation ΔPh using the calculated predicted value. When the deviation ΔPh is smaller than the maximum error Ph_D, the error correction unit 71A corrects the sensor value θb according to the comparison result between the deviation ΔPh and the reference deviation Ph_J / 2. Further, when the deviation ΔPh is equal to or greater than the maximum error Ph_D, the error correction unit 71A determines that the rotational position sensor 60 has failed, generates a signal EMG, and an indicator (not shown) provided outside. Output to.
[0132]
With reference to FIG. 11, the operation of correcting the sensor value θb in the error correction unit 71A and the error detection unit 79 will be described. The flowchart shown in FIG. 11 is obtained by adding steps S6 and S8 to the flowchart shown in FIG. 6, and is otherwise the same as the flowchart shown in FIG.
[0133]
Steps S6 and S8 are as described in the flowchart shown in FIG.
[0134]
The sensor value correction in the error correction unit 71A and the error detection unit 79 is actually executed by the CPU. The CPU reads a program including each step shown in FIG. 11 from the ROM, and performs each step shown in FIG. This is executed to correct the sensor value from the rotational position sensor 60.
[0135]
Therefore, the ROM corresponds to a computer (CPU) readable recording medium that records a program for causing the computer (CPU) to correct the sensor value from the rotational position sensor 60.
[0136]
The operation of the motor drive device 100C is the same as the operation of the motor drive device 100A except that the operation of the error detection unit 79 is added to the operation of the motor drive device 100A.
[0137]
The error correction unit 71A and the error detection unit 79 constitute a “correction unit” that corrects the sensor value.
[0138]
The three-phase / two-phase converter 72, the current command generator 73, the subtractors 74 and 75, the PI controller 76, the two-phase / three-phase converter 77, and the PWM generator 78 include an error correction unit 71A and error detection. A “control unit” that controls the synchronous motor 50 using the sensor value corrected by the unit 79 is configured.
[0139]
Furthermore, the current sensor 40, the rotational position sensor 60, and the control device 70C constitute a “motor control device”.
[0140]
Others are as described regarding the motor drive device 100A.
As described above, in the second embodiment, the type of error included in the sensor value θb is detected, and a predetermined period (any one of TD1 to TD3) set in accordance with the detected type of error is set. Then, the sensor value θb is corrected.
[0141]
Others are the same as in the first embodiment.
According to the second embodiment, the electric motor control device includes an error detection unit that sets a predetermined period according to the type of error included in the sensor value from the rotational position sensor, and rotation in the predetermined period that is set by the error detection unit. Calculates the predicted value based on the average value of the sensor values from the position sensor, calculates the deviation between the calculated predicted value and the sensor value, and calculates the predicted value as the sensor correction value when the calculated deviation is smaller than the reference deviation. And an error correction unit that uses a value obtained by adding / subtracting the reference deviation to / from the sensor value when the deviation is larger than the reference deviation as a sensor correction value, the sensor value can be corrected according to the error included in the sensor value.
[0142]
The motor drive devices 100, 100A, 100B, and 100C described above are mounted on a hybrid vehicle or an electric vehicle, and drive a drive motor that drives a drive wheel of the hybrid vehicle or the electric vehicle. The motor driving devices 100, 100A, 100B, and 100C correct the sensor value θb so that the error of the sensor value θb from the rotational position sensor 60 falls within an allowable error, and drive based on the corrected sensor correction value θh. Drive the motor. Therefore, the drive motor can be driven stably, and the hybrid vehicle or electric vehicle can run smoothly.
[0143]
In the above description, the PWM control method is described. However, the present invention calculates a predicted value based on the sensor value detected by the rotational position sensor, and corrects the sensor value using the calculated predicted value. Therefore, the present invention is not limited to the PWM control method but can be applied to various control methods such as an electric motor control method such as an overmodulation control method and a rectangular (one pulse) control method.
[0144]
The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is shown not by the above description of the embodiment but by the scope of claims for patent, and is intended to include all modifications within the meaning and scope equivalent to the scope of claims for patent.
[Brief description of the drawings]
FIG. 1 is a schematic block diagram of a motor drive device including an electric motor control device according to a first embodiment.
FIG. 2 is a circuit diagram of the inverter shown in FIG.
FIG. 3 is a diagram for explaining a method for correcting a sensor value from a rotational position sensor shown in FIG. 1;
4 is a flowchart for explaining an operation of correcting a sensor value in the error correction unit shown in FIG.
FIG. 5 is another schematic block diagram of a motor drive device including the motor control device according to the first embodiment.
6 is a flowchart for explaining an operation of correcting a sensor value in the error correction unit shown in FIG.
FIG. 7 is a schematic block diagram of a motor drive device including an electric motor control device according to a second embodiment.
FIG. 8 is a diagram for explaining a method of detecting the type of error included in a sensor value from a rotational position sensor.
9 is a flowchart for explaining an operation of correcting a sensor value in the error correction unit and the error detection unit shown in FIG.
FIG. 10 is another schematic block diagram of a motor drive device including an electric motor control device according to a second embodiment.
11 is a flowchart for explaining an operation of correcting a sensor value in the error correction unit and the error detection unit shown in FIG.
[Explanation of symbols]
1 power line, 2 ground line, 10 DC power supply, 15 U-phase arm, 16 V-phase arm, 17 W-phase arm, 20 capacitor, 30 inverter, 40 current sensor, 50 synchronous motor, 60 rotational position sensor, 70, 70A, 70B, 70C control device, 71, 71A error correction unit, 72 3-phase / 2-phase conversion unit, 73 current command generation unit, 74, 75 subtractor, 76 PI control unit, 77 2-phase / 3-phase conversion unit, 78 PWM Generator, 79 error detector, 100, 100A, 100B, 100C motor drive, Q3-Q8 NPN transistor, D3-D8 diode.

Claims (20)

電動機に含まれる回転子の回転位置を検出する回転位置センサーと、
前記回転位置センサーにより検出されたセンサー値を補正したセンサー補正値を用いて、前記電動機を駆動する駆動装置を制御する制御手段と、
前記回転位置センサーにより検出されるセンサー値の予測値を演算し、その演算した予測値に基づいて前記回転位置センサーにより検出されたセンサー値を補正し、その補正したセンサー値を前記センサー補正値として前記制御手段へ出力する補正手段とを備え
前記補正手段は、前記回転位置センサーから出力されるセンサー値の所定期間における平均値を演算し、その演算した平均値に基づいて前記予測値を演算する、電動機制御装置。
A rotational position sensor for detecting the rotational position of the rotor included in the electric motor;
Control means for controlling a driving device for driving the electric motor using a sensor correction value obtained by correcting the sensor value detected by the rotational position sensor;
A predicted value of the sensor value detected by the rotational position sensor is calculated, the sensor value detected by the rotational position sensor is corrected based on the calculated predicted value, and the corrected sensor value is used as the sensor correction value. Correction means for outputting to the control means ,
The electric motor control device , wherein the correction unit calculates an average value of sensor values output from the rotational position sensor in a predetermined period, and calculates the predicted value based on the calculated average value .
前記補正手段は、前記回転位置センサーにより検出されたセンサー値と前記演算した予測値との差の絶対値である偏差を演算し、その演算した偏差を基準偏差と比較した比較結果に応じて前記検出されたセンサー値を補正する、請求項1に記載の電動機制御装置。  The correction means calculates a deviation which is an absolute value of a difference between the sensor value detected by the rotational position sensor and the calculated predicted value, and compares the calculated deviation with a reference deviation according to a comparison result. The motor control device according to claim 1, wherein the detected sensor value is corrected. 前記補正手段は、前記偏差が前記基準偏差よりも小さいとき、前記演算した予測値を前記センサー補正値とし、前記偏差が前記基準偏差よりも大きいとき、前記検出されたセンサー値に前記基準偏差を加減算した値を前記センサー補正値とする、請求項2に記載の電動機制御装置。  The correction means uses the calculated predicted value as the sensor correction value when the deviation is smaller than the reference deviation, and sets the reference deviation to the detected sensor value when the deviation is larger than the reference deviation. The motor control device according to claim 2, wherein a value obtained by addition / subtraction is used as the sensor correction value. 前記補正手段は、前記センサー値が許容誤差の上限値よりも大きいとき、前記検出されたセンサー値から前記基準偏差を減算した値を前記センサー補正値とし、前記センサー値が前記許容誤差の下限値よりも小さいとき、前記検出されたセンサー値に前記基準偏差を加算した値を前記センサー補正値とする、請求項3に記載の電動機制御装置。  When the sensor value is larger than the upper limit value of the allowable error, the correction unit sets a value obtained by subtracting the reference deviation from the detected sensor value as the sensor correction value, and the sensor value is the lower limit value of the allowable error. 4. The motor control device according to claim 3, wherein a value obtained by adding the reference deviation to the detected sensor value is used as the sensor correction value. 前記所定期間は、前記回転子が180度の整数倍回転するのに必要な時間である、請求項に記載の電動機制御装置。The electric motor control device according to claim 1 , wherein the predetermined period is a time required for the rotor to rotate an integral multiple of 180 degrees. 前記センサー値に含まれる誤差の種類を検出し、その検出した誤差の種類に応じて前記所定期間を設定する誤差検出手段をさらに備え、
前記補正手段は、前記誤差検出手段により設定された所定期間において前記平均値を演算する、請求項に記載の電動機制御装置。
Further comprising error detection means for detecting an error type included in the sensor value and setting the predetermined period according to the detected error type;
The motor control apparatus according to claim 1 , wherein the correction unit calculates the average value in a predetermined period set by the error detection unit.
前記誤差検出手段は、前記誤差の種類として0.5次の誤差を検出したとき、前記回転子が180度の整数倍回転するのに必要な時間を前記所定期間として設定する、請求項に記載の電動機制御装置。It said error detection means, upon detection of a 0.5 order error as the type of the error, setting the rotor time required to integer multiple rotation 180 degrees as the predetermined period, to claim 6 The motor control device described. 前記誤差検出手段は、前記誤差の種類として1.0次の誤差を検出したとき、前記回転子が90度の整数倍回転するのに必要な時間を前記所定期間として設定する、請求項に記載の電動機制御装置。Said error detection means, upon detection of a 1.0 order error as the type of the error, setting the rotor time required to integer multiple 90 degrees of rotation as the predetermined period, to claim 6 The motor control device described. 前記誤差検出手段は、前記誤差の種類として2.0次の誤差を検出したとき、前記回転子が45度の整数倍回転するのに必要な時間を前記所定期間として設定する、請求項に記載の電動機制御装置。It said error detection means, upon detection of a 2.0 order error as the type of the error, setting the time required to an integral multiple rotation of the rotor 45 degrees as the predetermined period, to claim 6 The motor control device described. 前記補正手段により演算された前記偏差が最大誤差よりも大きいとき、前記回転位置センサーが故障していると判定する故障判定手段をさらに備える、請求項2から請求項のいずれか1項に記載の電動機制御装置。Wherein when said deviation calculated by the correction means is greater than the maximum error, further comprising determining failure determining means and the rotational position sensor has a failure, according to claims 2 to any one of claims 4 Electric motor control device. 電動機に含まれる回転子の回転位置を検出する回転位置センサーのセンサー値の補正処理をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体であって、
前記補正処理は、
前記回転位置センサーにより検出されるセンサー値の予測値を演算する第1のステップと、
前記演算された予測値と、前記回転位置センサーにより検出されたセンサー値との差の絶対値である偏差を演算する第2のステップと、
前記演算された偏差を基準偏差と比較する第3のステップと、
前記比較結果に応じて前記センサー値を補正する第4のステップとを含み、
前記第1のステップは、
前記回転位置センサーから出力されるセンサー値の所定期間における平均値を演算する第1のサブステップと、
前記演算された平均値に基づいて前記予測値を演算する第2のサブステップとを含む、コンピュータ読取り可能な記録媒体。
A computer-readable recording medium recording a program for causing a computer to execute correction processing of a sensor value of a rotational position sensor that detects a rotational position of a rotor included in an electric motor,
The correction process includes
A first step of calculating a predicted value of a sensor value detected by the rotational position sensor;
A second step of calculating a deviation which is an absolute value of a difference between the calculated predicted value and a sensor value detected by the rotational position sensor;
A third step of comparing the calculated deviation with a reference deviation;
And a fourth step of correcting the sensor value according to the comparison result ,
The first step includes
A first sub-step of calculating an average value of sensor values output from the rotational position sensor over a predetermined period;
And a second sub-step of calculating the predicted value based on the calculated average value .
前記第4のステップは、前記偏差が前記基準偏差よりも小さいとき、前記演算した予測値を前記センサー値を補正したセンサー補正値とする、請求項11に記載のコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。The program for causing a computer to execute the computer according to claim 11 , wherein when the deviation is smaller than the reference deviation, the fourth step uses the calculated predicted value as a sensor correction value obtained by correcting the sensor value. A recorded computer-readable recording medium. 前記第4のステップは、前記偏差が前記基準偏差よりも大きいとき、前記検出されたセンサー値に前記基準偏差を加減算した値を前記センサー値を補正したセンサー補正値とする、請求項11に記載のコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。Said fourth step, when the deviation is larger than the reference deviation, and the sensor correction value a value obtained by subtracting the reference deviation of the detected sensor values obtained by correcting the sensor value, according to claim 11 A computer-readable recording medium on which a program to be executed by a computer is recorded. 前記第4のステップは、前記センサー値が許容誤差の上限値よりも大きいとき、前記検出されたセンサー値から前記基準偏差を減算した値を前記センサー補正値とし、前記センサー値が前記許容誤差の下限値よりも小さいとき、前記検出されたセンサー値に前記基準偏差を加算した値を前記センサー補正値とする、請求項13に記載のコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。In the fourth step, when the sensor value is larger than an upper limit value of the allowable error, a value obtained by subtracting the reference deviation from the detected sensor value is set as the sensor correction value, and the sensor value is the allowable error. 14. A computer-readable record recording a program for causing a computer to execute according to claim 13 , wherein a value obtained by adding the reference deviation to the detected sensor value is used as the sensor correction value when the value is smaller than a lower limit value. Medium. 前記第1のサブステップは、前記回転子が180度の整数倍回転するのに必要な時間を前記所定期間として前記平均値を演算する、請求項11に記載のコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。The program for causing a computer to execute the computer according to claim 11 , wherein the first sub-step calculates the average value by using a time required for the rotor to rotate by an integral multiple of 180 degrees as the predetermined period. A recorded computer-readable recording medium. 前記センサー値に含まれる誤差の種類を検出する第5のステップをさらにコンピュータに実行させ、
前記第1のサブステップは、前記検出された誤差の種類に応じて決定された所定期間において前記平均値を演算する、請求項11に記載のコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。
Causing the computer to further execute a fifth step of detecting the type of error included in the sensor value;
12. The computer readable recording program for causing the computer to execute according to claim 11 , wherein the first sub-step calculates the average value in a predetermined period determined according to the type of the detected error. Recording medium.
前記第1のサブステップは、前記誤差の種類として0.5次の誤差が検出されたとき、前記回転子が180度の整数倍回転するのに必要な時間を前記所定期間として前記平均値を演算する、請求項16に記載のコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。In the first sub-step, when a 0.5th order error is detected as the type of error, the average value is determined by setting the time required for the rotor to rotate an integral multiple of 180 degrees as the predetermined period. The computer-readable recording medium which recorded the program for making the computer of Claim 16 perform an operation. 前記第1のサブステップは、前記誤差の種類として1.0次の誤差が検出されたとき、前記回転子が90度の整数倍回転するのに必要な時間を前記所定期間として前記平均値を演算する、請求項16に記載のコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。In the first sub-step, when a 1.0-order error is detected as the error type, the average value is determined by setting the time required for the rotor to rotate by an integral multiple of 90 degrees as the predetermined period. The computer-readable recording medium which recorded the program for making the computer of Claim 16 perform an operation. 前記第1のサブステップは、前記誤差の種類として2.0次の誤差が検出されたとき、前記回転子が45度の整数倍回転するのに必要な時間を前記所定期間として前記平均値を演算する、請求項16に記載のコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。In the first sub-step, when a 2.0th-order error is detected as the error type, the average value is determined by setting the time required for the rotor to rotate an integral multiple of 45 degrees as the predetermined period. The computer-readable recording medium which recorded the program for making the computer of Claim 16 perform an operation. 前記演算された前記偏差が最大誤差よりも大きいとき、前記回転位置センサーが故障していると判定する第6のステップをさらにコンピュータに実行させる、請求項11から請求項19のいずれか1項に記載のコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。The computer according to any one of claims 11 to 19 , further causing a computer to execute a sixth step of determining that the rotational position sensor has failed when the calculated deviation is larger than a maximum error. A computer-readable recording medium having recorded thereon a program to be executed by the computer.
JP2003025824A 2003-02-03 2003-02-03 Computer-readable recording medium storing a program for causing a computer to execute correction of sensor values of an electric motor control device and a rotational position sensor Expired - Lifetime JP4059094B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003025824A JP4059094B2 (en) 2003-02-03 2003-02-03 Computer-readable recording medium storing a program for causing a computer to execute correction of sensor values of an electric motor control device and a rotational position sensor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003025824A JP4059094B2 (en) 2003-02-03 2003-02-03 Computer-readable recording medium storing a program for causing a computer to execute correction of sensor values of an electric motor control device and a rotational position sensor

Publications (2)

Publication Number Publication Date
JP2004242370A JP2004242370A (en) 2004-08-26
JP4059094B2 true JP4059094B2 (en) 2008-03-12

Family

ID=32954007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003025824A Expired - Lifetime JP4059094B2 (en) 2003-02-03 2003-02-03 Computer-readable recording medium storing a program for causing a computer to execute correction of sensor values of an electric motor control device and a rotational position sensor

Country Status (1)

Country Link
JP (1) JP4059094B2 (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4105174B2 (en) * 2005-05-18 2008-06-25 三菱電機株式会社 Brushless motor drive method and drive control apparatus thereof
JP4022552B2 (en) * 2005-05-18 2007-12-19 三菱電機株式会社 Brushless motor drive method and drive control apparatus thereof
JP2008245460A (en) * 2007-03-28 2008-10-09 Toyota Motor Corp Motor control device
CN102597709B (en) 2009-07-24 2014-12-24 丰田自动车株式会社 Rotation angle detection device
JP4803286B2 (en) 2009-07-31 2011-10-26 株式会社デンソー Vehicle drive motor control device
JP5131318B2 (en) 2009-10-29 2013-01-30 トヨタ自動車株式会社 Motor control device
JP5381958B2 (en) * 2009-11-27 2014-01-08 株式会社デンソー VEHICLE TRAVEL MOTOR CONTROL DEVICE, VEHICLE MOTOR CONTROL SYSTEM, AND ROTATION DETECTION DEVICE
JP5115616B2 (en) * 2010-06-23 2013-01-09 株式会社デンソー Vehicle travel motor control device, vehicle motor control system, storage medium, motor detection angle correction method, and rotation detection device
JP5182302B2 (en) * 2010-02-08 2013-04-17 株式会社デンソー Rotating machine control device
JP5842334B2 (en) * 2011-02-07 2016-01-13 株式会社ニコン Encoder device and drive device
JP5737123B2 (en) * 2011-10-12 2015-06-17 株式会社デンソー Rotating machine control device and rotation angle calculation device
JP5303050B1 (en) * 2012-03-30 2013-10-02 三菱電機株式会社 Protection control device for electric supercharger
JP5383887B2 (en) * 2012-10-11 2014-01-08 キヤノン株式会社 Displacement detection device, control device, machine tool device, irradiation device, and displacement detection method
JP6015498B2 (en) * 2013-03-04 2016-10-26 株式会社デンソー Rotating machine rotational position detecting device and rotating machine rotational position detecting method
JP6163135B2 (en) * 2014-05-30 2017-07-12 日立オートモティブシステムズ株式会社 Motor control device
JP6354612B2 (en) 2015-02-06 2018-07-11 株式会社デンソー Integrated circuit

Also Published As

Publication number Publication date
JP2004242370A (en) 2004-08-26

Similar Documents

Publication Publication Date Title
JP4059094B2 (en) Computer-readable recording medium storing a program for causing a computer to execute correction of sensor values of an electric motor control device and a rotational position sensor
JP4223880B2 (en) Motor drive device
JP4230276B2 (en) Brushless DC motor control device
US7049782B2 (en) Electrically operated drive controller, electrically operated drive control method and its program
JP4007345B2 (en) Electric drive control device, electric drive control method, and program
JP4007197B2 (en) Motor control device
JP4517793B2 (en) Permanent magnet synchronous motor control device and module
WO2007125669A1 (en) Motor-driven control device and motor-driven control method
JP2006025499A (en) Motor controller
JP2007274779A (en) Electromotive drive control device, and electromotive drive control method
JP4425091B2 (en) Motor position sensorless control circuit
JP5549553B2 (en) Rotating machine control device
JP5605312B2 (en) Rotating machine control device
JP4896562B2 (en) Electric drive control device and electric drive control method
JP2003255006A (en) Current sensor fault sensing device for ac motor
JP4839119B2 (en) Electric drive control device and electric drive control method
JP3933108B2 (en) Electric drive control device, electric drive control method and program thereof
JP2023048833A (en) State estimation method for motor unit and state estimation device
JP2009219239A (en) Motor control device
JP4221861B2 (en) Motor control device and motor control method
JP2007259650A (en) Apparatus and method for electric drive control
JP2010022189A (en) Position sensorless control circuit for motor
JP4613861B2 (en) Electric drive control device and electric drive control method
JP4232420B2 (en) Electric machine control device, electric machine control method and program
JP3920213B2 (en) Electric drive control device, electric drive control method and program thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050701

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070530

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071210

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101228

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4059094

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101228

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111228

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111228

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121228

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131228

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

EXPY Cancellation because of completion of term