JP2008035624A - ブラシレスモータの制御装置 - Google Patents
ブラシレスモータの制御装置 Download PDFInfo
- Publication number
- JP2008035624A JP2008035624A JP2006206387A JP2006206387A JP2008035624A JP 2008035624 A JP2008035624 A JP 2008035624A JP 2006206387 A JP2006206387 A JP 2006206387A JP 2006206387 A JP2006206387 A JP 2006206387A JP 2008035624 A JP2008035624 A JP 2008035624A
- Authority
- JP
- Japan
- Prior art keywords
- overflow
- rotation
- brushless motor
- count value
- free
- 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.)
- Withdrawn
Links
Images
Landscapes
- Control Of Motors That Do Not Use Commutators (AREA)
Abstract
【課題】速度変動によらずに回転速度を素早く測定できるようにする。
【解決手段】ブラシレスモータの制御装置1は、センサエッジ切り替わり回数カウント部12を有し、位置検出センサ3が出力する信号のエッジの回数をカウントする。このカウント値でオーバーフロー推測部14の推定テーブルを検索し、そのカウント値でオーバーフローするときのオーバーフローチェックカウンタの値を抽出する。抽出した値が実際のオーバーフローチェックカウンタの値より大きい場合はオーバーフローを起こすとみなして回転周期の算出を行わない。
【選択図】図1
【解決手段】ブラシレスモータの制御装置1は、センサエッジ切り替わり回数カウント部12を有し、位置検出センサ3が出力する信号のエッジの回数をカウントする。このカウント値でオーバーフロー推測部14の推定テーブルを検索し、そのカウント値でオーバーフローするときのオーバーフローチェックカウンタの値を抽出する。抽出した値が実際のオーバーフローチェックカウンタの値より大きい場合はオーバーフローを起こすとみなして回転周期の算出を行わない。
【選択図】図1
Description
本発明は、ブラシレスモータの回転制御を行う制御装置に関する。
ブラシレスモータの回転制御を行う場合には、回転子に回転式のエンコーダを取り付けて、エンコーダの出力信号から回転子の回転位置を検出し、この回転位置の信号に基づいて固定子のコイルの通電制御を行うことが知られている。ここで、ブラシレスモータをサーボ制御する場合などには、ブラシレスモータの回転速度を調べ、外部から入力される速度指令値と、実際の回転速度が一致するように制御を行っている。このため、従来のブラシレスモータの制御装置では、エンコーダが出力するパルス信号のパルス数をタイマでカウントし、1周期分のカウント値に達するまでの時間から回転速度を算出していた(例えば、特許文献1参照)。
特開平4−46582号公報
しかしながら、従来の方法では、ブラシレスモータが1周期分回転した後でないと回転数を更新することができなかった。回転速度を更新する処理が1回転ごとに行われるので、ブラシレスモータの回転速度が急激に変化したとき、特に回転速度が急激に小さくなったときには回転速度の検出が遅れることがあった。
また、タイマがオーバーフローしていない範囲で取得したカウント値でないと、正しい回転の周期を測定することができないので、ブラシレスモータの回転数が低速回転の場合など、1回転する前にタイマのカウント値がオーバーフローしていたときには、オーバーフローしたカウント値に基づいて回転数が算出されることになり、正しい回転速度が得られなかった。
この発明は、このような事情に鑑みてなされたものであり、速度変動によらずに回転速度を素早く測定できるようにすることを主な目的とする。
また、タイマがオーバーフローしていない範囲で取得したカウント値でないと、正しい回転の周期を測定することができないので、ブラシレスモータの回転数が低速回転の場合など、1回転する前にタイマのカウント値がオーバーフローしていたときには、オーバーフローしたカウント値に基づいて回転数が算出されることになり、正しい回転速度が得られなかった。
この発明は、このような事情に鑑みてなされたものであり、速度変動によらずに回転速度を素早く測定できるようにすることを主な目的とする。
上記の課題を解決する本発明の請求項1に係る発明は、ブラシレスモータの回転制御を行うための制御装置であって、時間経過と共に一定の割合でカウント値を増加又は減少させ、所定のカウント値になったらリセットを行うフリーランタイマと、前記ブラシレスモータの回転子の回転位置を検出するセンサから出力される信号のエッジごとに、前記フリーランタイマのカウント値を格納可能な複数のメモリと、前記ブラシレスモータの回転周期を算出する指令を受け取ったときの前記フリーランタイマのカウント値と、前記ブラシレスモータの1回転前の前記フリーランタイマのカウント値とから前記ブラシレスモータの回転周期を算出する回転周期算出部と、を有することを特徴とするブラシレスモータの制御装置とした。
このブラシレスモータの制御装置では、ブラシレスモータが1回転する前であっても、メモリに格納しておいた1周期前のカウント値を読み出して現在のカウント値との差を演算することでブラシレスモータの回転周期が演算される。
このブラシレスモータの制御装置では、ブラシレスモータが1回転する前であっても、メモリに格納しておいた1周期前のカウント値を読み出して現在のカウント値との差を演算することでブラシレスモータの回転周期が演算される。
請求項2に係る発明は、請求項1に記載のブラシレスモータの制御装置において、前記複数のメモリが、前記ブラシレスモータが1回転するときに前記センサから出力される信号のエッジ数より多いことを特徴とする。
このブラシレスモータの制御装置では、ブラシレスモータが1回転するときにセンサから出力される信号のエッジ数より多いメモリを搭載しているため、1周期前のカウント値を読み出すことができる。
このブラシレスモータの制御装置では、ブラシレスモータが1回転するときにセンサから出力される信号のエッジ数より多いメモリを搭載しているため、1周期前のカウント値を読み出すことができる。
請求項3に係る発明は、請求項1または2に記載のブラシレスモータの制御装置において、前記フリーランタイマの値がオーバーフローするか否かを監視するためのオーバーフローカウンタと、前記フリーランタイマがオーバーフローする回転速度における前記オーバーフローカウンタの値をエッジの切り替え回数ごとに定めた推定テーブルと、前記推定テーブルを参照して前記フリーランタイマの値がオーバーフローすると判定したときに前記回転周期算出部に回転周期を算出する指令を出力するオーバーフロー推測部と、を有することを特徴とする。
このブラシレスモータの制御装置では、ブラシレスモータの回転数が小さくなってオーバーフローするような場合に、推定テーブルを参照することで任意のタイミングであってもオーバーフローするか否かを判定することができるようになる。そして、オーバーフローしない場合だけ回転周期を算出する。
このブラシレスモータの制御装置では、ブラシレスモータの回転数が小さくなってオーバーフローするような場合に、推定テーブルを参照することで任意のタイミングであってもオーバーフローするか否かを判定することができるようになる。そして、オーバーフローしない場合だけ回転周期を算出する。
請求項4に係る発明は、請求項3に記載のブラシレスモータの制御装置において、前記推定テーブルを参照して前記フリーランタイマの値がオーバーフローすると判定したときに、前回算出した回転周期を維持することを特徴とする。
このブラシレスモータの制御装置では、オーバーフローチェックカウンタがオーバーフローする場合、つまりフリーランタイマがオーバーフローするときには、回転周期を更新せずに前回算出した結果を維持するので、回転周期に基づいて制御などを行う場合に制御不能になることが防止される。
このブラシレスモータの制御装置では、オーバーフローチェックカウンタがオーバーフローする場合、つまりフリーランタイマがオーバーフローするときには、回転周期を更新せずに前回算出した結果を維持するので、回転周期に基づいて制御などを行う場合に制御不能になることが防止される。
本発明によれば、ブラシレスモータが1回転する前に回転周期を算出することができる。例えば、ブラシレスモータを回転速度制御する場合には、回転速度をフィードバックする回数を増やすことができるので、応答性を高めることができる。推定テーブルを有する場合には、回転数が急激に下がったときでも1回転するまで待たなくてもフリーランタイマがオーバーフローするか否かを判定できるので、ブラシレスモータが1回転する前に回転周期を算出しようとしたときに、オーバーフローしたカウント値で回転周期を算出してしまうことを防げる。
発明を実施するための最良の形態について図面を参照しながら詳細に説明する。
図1に示すように、ブラシレスモータの制御装置1は、ブラシレスモータ2の回転子の回転位置を位置検出センサ3で検出した結果に基づいて通電制御を行い、インバータ回路4の駆動信号を出力して、電源5からブラシレスモータ2に通電される電流を切り替え制御するものである。
図1に示すように、ブラシレスモータの制御装置1は、ブラシレスモータ2の回転子の回転位置を位置検出センサ3で検出した結果に基づいて通電制御を行い、インバータ回路4の駆動信号を出力して、電源5からブラシレスモータ2に通電される電流を切り替え制御するものである。
ここで、ブラシレスモータ2は、固定子と回転子とを主な構成要素とする。固定子には、3本の固定子巻線U,V,Wが巻き回されてコイルが形成されている。固定子巻線U,V,Wは、いわゆるデルタ結線やスター結線で接続されている。回転子は、回転軸と、回転軸の周方向に沿って複数の磁極(N極及びS極)が配置される永久磁石とから構成されている。なお、ブラシレスモータは、インナーロータ型であっても良いし、アウターロータ型であっても良い。
位置検出センサ3は、例えば、ホール素子と電子回路を備えるホールIC(Integrated Circuit)が用いられ、回転子の回転位置を検出可能な所定の位置に3つ配置されている。これら位置検出センサ3から出力されるセンサ信号の一例を図2に示す。図2は、横軸が機械角になっており、縦方向に3つの位置検出センサ3の出力を並べてある。各位置検出センサ3の出力は、周期的に信号レベルがハイレベル(H)とローレベル(L)とに切り替わっている。図2では、モータが機械角で360°回転する間に、各相に対応する位置検出センサ3の信号のエッジが36回切り替わっている。
インバータ回路4は、例えば、6個のスイッチング素子を電源5の正負両端子間に2個ずつブリッジ接続して構成される回路であって、電源5から供給された直流電圧を、制御装置1から入力されたパルス幅変調波形信号(駆動信号)に基づく交流電圧に変換し、ブラシレスモータ2を駆動させる。
制御装置1は、位置検出センサ3のセンサ信号が入力されるセンサ信号変化検出部11を有する。センサ信号変化検出部11は、センサ信号のエッジを検出して、センサエッジ切り替わり回数カウント部12に出力する。センサエッジ切り替わり回数カウント部12には、1回転分センサエッジ切り替わり推測部13と、オーバーフロー推測部14とが接続されている。
1回転分センサエッジ切り替わり推測部13は、センサエッジの切り替わり回数を判定する。図2のようにモータ1回転でセンサエッジが36ステージある場合には、エッジが36回検出されたか否かを判定する。判定結果は、センサエッジ切り替わり回数リセット部15と、オーバーフローチェックカウンタリセット部16と、カウント値格納推測部17とに出力される。
1回転分センサエッジ切り替わり推測部13は、センサエッジの切り替わり回数を判定する。図2のようにモータ1回転でセンサエッジが36ステージある場合には、エッジが36回検出されたか否かを判定する。判定結果は、センサエッジ切り替わり回数リセット部15と、オーバーフローチェックカウンタリセット部16と、カウント値格納推測部17とに出力される。
センサエッジ切り替わり回数リセット部15は、センサエッジ切り替わり回数を「0」にリセットすると共に、リセット信号をオーバーフロー推測部14に出力する。オーバーフローチェックカウンタリセット部16は、オーバーフローチェックカウンタを「0」にリセットすると共に、リセット信号をカウント値格納推測部17に出力する。カウント値格納推測部17は、オーバーフローチェックカウンタカウント部18からオーバーフローチャックカウンタのカウント値を取得し、カウント値がオーバーフローしているか否かを判定する。オーバーフローしていない場合には、カウント値格納部19に信号を出力する。
カウント値格納部19は、フリーランタイマ20のカウント値とセンサエッジ切り替わり回数とを関連付けてカウント値格納テーブルに格納する。フリーランタイマ20は、例えば、図2に示すように、「0000h」から「FFFFh」までカウントアップする。カウント値格納テーブルは、センサエッジごとに用意された複数のメモリから構成され、各テーブルにフリーランタイマ20のカウント値が1つずつ格納される。なお、図2には、カウント値格納テーブルのメモリとして、テーブル0〜テーブル36が図示されているが、メモリの数はブラシレスモータ2が1回転する間に発生するエッジの切り替え回数より多く(この場合は37以上)あれば良く、37個に限定されない。
カウント値を格納した回数の情報は、カウント値格納回数カウント部21に出力される。一方、カウント値格納推測部17がオーバーフローと判定したときは、カウント値格納回数リセット部22に信号を出力する。
オーバーフローチェックカウンタカウント部18は、所定のカウント指令を受けてオーバーフローチェックカウンタをカウントアップする。カウント指令は、制御タイミング時間作成タイマ31が一定の制御タイミング(例えば、1ms)で発生させるパルス信号に基づき、オーバーフローチェックカウンタカウントタイミング推測部30が生成する。
オーバーフローチェックカウンタカウント部18でカウントしたオーバーフローチェックカウンタのカウント値は、カウント値格納推測部17と、オーバーフロー確定推測部32とに受け渡される。
オーバーフロー確定推測部32は、オーバーフローチェックカウンタの値がオーバーフローしたか否かを判定する。例えば、図2に示すように、オーバーフローチェックカウンタが1msごとに「0」から「643」までカウントアップ可能なカウンタである場合には、カウント値が「643」に達したらオーバーフローと判定する。オーバーフローと判定したら、カウント値格納回数リセット部22にリセットを指令すると共に、オーバーフロー確定部33のオーバーフロー確定フラグを「1」に設定させる。
オーバーフローチェックカウンタカウント部18でカウントしたオーバーフローチェックカウンタのカウント値は、カウント値格納推測部17と、オーバーフロー確定推測部32とに受け渡される。
オーバーフロー確定推測部32は、オーバーフローチェックカウンタの値がオーバーフローしたか否かを判定する。例えば、図2に示すように、オーバーフローチェックカウンタが1msごとに「0」から「643」までカウントアップ可能なカウンタである場合には、カウント値が「643」に達したらオーバーフローと判定する。オーバーフローと判定したら、カウント値格納回数リセット部22にリセットを指令すると共に、オーバーフロー確定部33のオーバーフロー確定フラグを「1」に設定させる。
さらに、制御装置1は、制御タイミング時間作成タイマ31で作成された制御タイミングに基づいて、回転数算出タイミング推測部41が回転数を算出するタイミングを作成する。このタイミングに従って、オーバーフロー確定済み推測部42と、カウント値1回転分格納推測部43とを経てオーバーフロー推測部14でオーバーフローするか否かを判定する。そして、オーバーフロー推測部14の判定結果に基づいて回転周期算出部44が周期計算をし、回転数算出部45で回転数が算出される。
オーバーフロー確定済み推測部41は、オーバーフロー確定部33でオーバーフローが確定されているか否かを判定する処理を実行するもので、カウント値1回転分格納推測部43と回転数初期化部46とに接続されている。オーバーフローが確定していたときは、回転数初期化部46に回転数を初期化させ、オーバーフロー確定済みクリア部47でオーバーフロー確定部33のオーバーフロー確定フラグを「0」にリセットする。
カウント値1回転分格納推測部43は、オーバーフローが確定していないときにカウント値格納回数リセット部22と、カウント値格納回数カウント部21のデータを受けて、カウント値が1回転分が格納されたか否かを判定する処理を行う。
カウント値1回転分格納推測部43は、オーバーフローが確定していないときにカウント値格納回数リセット部22と、カウント値格納回数カウント部21のデータを受けて、カウント値が1回転分が格納されたか否かを判定する処理を行う。
オーバーフロー推測部14は、フリーランタイマ20のカウント値が1回転分保有されている状態で、センサエッジの切り替わり回数と、オーバーフローチェックカウンタのカウント値とを取得し、オーバーフローチェックカウンタがオーバーフローする回転数であるか否かを判定する。この際に使用する推定テーブルの一例を図3に示す。この推定テーブルは、センサエッジの切り替わり回数と、オーバーフローする直前のオーバーフローチェックカウンタのカウント値とを関連付けて格納してある。カウント値は、オーバーフローする直前の回転数(例えば、93rpm以下)に相当する値になっており、このカウント値以上の場合にはオーバーフローチェックカウンタがまだオーバーフローしていなくても、フリーランタイマ20のカウント値はこの時点ですでにオーバーフローしている可能性があるため、センサエッジ切り替わり回数に対応するオーバーフローチェックカウンタの値からオーバーフローしない回転数になっていることを判定することでフリーランタイマ20のカウント値の正しさを推定することができる。
具体的には、センサエッジの切り替わり回数が「34」のときは、チェックカウンタの値が「606」であるので、センサエッジが34回切り替わったときのチェックカウンタの値が606よりも小さい場合は、この回転速度以上であればオーバーフローチェックカウンタ及びフリーランタイマ20がオーバーフローしないと判定できる。
具体的には、センサエッジの切り替わり回数が「34」のときは、チェックカウンタの値が「606」であるので、センサエッジが34回切り替わったときのチェックカウンタの値が606よりも小さい場合は、この回転速度以上であればオーバーフローチェックカウンタ及びフリーランタイマ20がオーバーフローしないと判定できる。
回転周期算出部44は、オーバーフローしないと判定されたときに処理を実行し、カウント値格納部19のカウント値格納テーブルの値を読み込んで回転周期を算出する。回転周期算出部44は、回転周期を算出するタイミングになったときは、1周期分前のフリーランタイマのカウント値を取り込んで回転周期を算出する。回転数算出部45は、回転周期からブラシレスモータ2の回転数を算出する処理を実行する。
次に、この実施の形態の作用について説明する。
まず、回転数を算出するときの処理の具体例を図2を参照して説明する。例えば、センサエッジの切り替え回数が36回目で算出のタイミングを迎えたときは、今回のカウント値(テーブル36のカウント値)と、切り替え回数が36回前のカウント値(テーブル0のカウント値)を読み込む。そして、両者の差に回転数算出タイミング推測部41の制御サイクル(例えば、10μs)を掛け算すると回転周期が算出される。
まず、回転数を算出するときの処理の具体例を図2を参照して説明する。例えば、センサエッジの切り替え回数が36回目で算出のタイミングを迎えたときは、今回のカウント値(テーブル36のカウント値)と、切り替え回数が36回前のカウント値(テーブル0のカウント値)を読み込む。そして、両者の差に回転数算出タイミング推測部41の制御サイクル(例えば、10μs)を掛け算すると回転周期が算出される。
これに対して、ブラシレスモータ2の回転数が小さい場合や、回転の途中で急激に減速した場合には、図4に示すようにステージ0から1周期分のステージ36に至るまでの間でカウント値がオーバーフローすることがある。この場合、図2と同様にして今回のカウント値(テーブル36のカウント値)と、切り替え回数が36回前のカウント値(テーブル0のカウント値)を読み込むと、フリーランタイマ20が途中で一度リセットされていることから、正しい回転周期を算出することができなくなる。したがって、このような場合には、回転周囲を算出しないようにしている。このような処理を実現する制御装置1の処理を図5及び図6のフローチャートを主に参照して説明する。
まず、電源が投入されたら(ステップS101でYes)、フリーランタイマ20をスタートさせる(ステップS102)。さらに、制御タイミング時間作成タイマ31をスタートさせる(ステップS103)。
センサ信号変化検出部11がセンサ信号のエッジを検出したら(ステップS104でYes)、センサエッジ切り替わり回数カウント部12がセンサエッジ切り替わり回数を1つインクリメントする(ステップS105)。1回転分センサエッジ切り替わり推測部13が1回転分のセンサエッジの切り替わり回数に到達したことを確認したら(ステップS106でYes)、センサエッジ切り替わり回数リセット部15がセンサエッジ切り替わり回数を「0」にリセットする(ステップS107)。さらに、オーバーフローチェックカウンタリセット部16がオーバーフローチェックカウンタを「0」にリセットする(ステップS108)。この後、オーバーフローチェックカウンタがオーバーフロー判定値に到達したか否かを判定する(ステップS109)。この処理は、カウント値格納推測部17が実施する。なお、先のステップS106で1回転分のセンサエッジの切り替わり回数に達していない場合には、ステップS107及びステップS108を経ずにステップS109が実施される。
オーバーフローチェックカウンタがオーバーフロー判定値に未到達であった場合には(ステップS109でYes)、フリーランタイマ20がオーバーフローしていないので、カウント値格納部19がフリーランタイマ20のカウント値をテーブルに格納し(ステップS110)、カウント値格納回数カウント部21のカウント値格納回数を1つインクリメントしてから(ステップS111)、ステップS104に戻る。なお、オーバーフローチェックカウンタがオーバーフロー判定値に到達した場合(ステップS109でNo)、カウント値格納回数リセット部22がカウント値格納回数を「0」にリセットして(ステップS112)、ステップS110及びステップS111を経ずにステップS104に戻る。
一方、センサ信号のエッジが変化していないときは(ステップS104でNo)、オーバーフローチェックカウンタのカウントタイミングであれば(ステップS120でYes)、オーバーフローチェックカウンタカウント部18がカウンタを1つインクリメントする(ステップS121)。この後、オーバーフローチェックカウンタがオーバーフロー判定値に到達している場合(ステップS122でYes)、オーバーフロー確定部33でオーバーフロー確定フラグを「1」にセットする(ステップS123)。さらに、オーバーフロー確定推測部32の指令でカウント値格納回数リセット部22がカウント値格納回数を「0」にリセットし(ステップS124)、ステップS104に戻る。
ステップS120でオーバーフローチェックカウンタのカウントタイミングでない場合(ステップS120でNo)、端子Aから進む図6のステップS130で回転数算出タイミング推測部41で回転数算出のタイミングか調べる。
そして、回転数算出のタイミングでなければ(ステップS130でNo)、そのままステップS104に戻る。回転数算出のタイミングであれば(ステップS130でYes)、オーバーフロー確定済み推測部42でオーバーフローが確定していない場合には(ステップS131でYes)、カウント値を1回転分のセンサエッジ切り替わり回転数分だけテーブルに格納しているか判定する(ステップS132)。
そして、回転数算出のタイミングでなければ(ステップS130でNo)、そのままステップS104に戻る。回転数算出のタイミングであれば(ステップS130でYes)、オーバーフロー確定済み推測部42でオーバーフローが確定していない場合には(ステップS131でYes)、カウント値を1回転分のセンサエッジ切り替わり回転数分だけテーブルに格納しているか判定する(ステップS132)。
センサエッジの切り替わり回数とオーバーフローチェックカウンタ値からフリーランタイマ20がオーバーフローしない回転であると推定したら(ステップS133でYes)、回転周期算出部44がカウント値格納テーブルから回転周期を算出する(ステップS134)。
そして、回転数算出部45が回転周期から回転数を算出する(ステップS135)。回転数の用途としては、ブラシレスモータ2の実際の回転数をフィードバックしてブラシレスモータ2を回転制御する場合があげられる。また、算出した回転数を他の装置に出力しても良い。
そして、回転数算出部45が回転周期から回転数を算出する(ステップS135)。回転数の用途としては、ブラシレスモータ2の実際の回転数をフィードバックしてブラシレスモータ2を回転制御する場合があげられる。また、算出した回転数を他の装置に出力しても良い。
ステップS132でNoの場合、ステップS133でオーバーフローすると推定された場合には、端子Bから回転数を算出せずにステップS104に戻る。なお、ステップS123でオーバーフロー確定フラグが「1」にセットされた場合には、ステップS131からステップS136に進む。回転数初期化部46が回転数を初期化し(ステップS136)、オーバーフロー確定済みクリア部47がオーバーフロー確定フラグを「0」にする(ステップS137)。なお、ステップS136における回転数の初期値は、「0」でも良いし、エラー表示でも良い。以上の処理は、制御装置1がオフされるまで継続して実施される。
この実施の形態によれば、回転周期を算出する際に、そのときのフリーランタイマ20のカウント値と、ステージの1周期分前のカウント値とから回転周期を算出するようにしたので、任意のタイミングで回転周期や回転数を算出することが可能になる。例えば、ステージ0に相当するタイミングで回転周期を算出した後に、回転子が半回転したステージ18で再度回転周期を算出することが可能になる。
また、オーバーフローチェックカウンタがオーバーフローする前に推定テーブルを使ってフリーランタイマ20のオーバーフローの有無を確認することができるようにした。推定テーブルを使用すると、回転子が1回転する前にフリーランタイマ20のカウント値がオーバーフローするか否かを判定できるので、回転子が1回転する前のタイミングでフリーランタイマ20のカウント値がオーバーフローしてリセットされた場合に、リセット後のカウント値を使って誤った回転周期や回転数を算出することがなくなる。
また、オーバーフローチェックカウンタがオーバーフローする前に推定テーブルを使ってフリーランタイマ20のオーバーフローの有無を確認することができるようにした。推定テーブルを使用すると、回転子が1回転する前にフリーランタイマ20のカウント値がオーバーフローするか否かを判定できるので、回転子が1回転する前のタイミングでフリーランタイマ20のカウント値がオーバーフローしてリセットされた場合に、リセット後のカウント値を使って誤った回転周期や回転数を算出することがなくなる。
なお、本発明は、前記の実施の形態に限定されずに広く応用することができる。
オーバーフロー推測部推定テーブルの代わりに、エッジの切り替わり回数と、オーバーフローチェックカウンタのカウント値を関連付けたものであれば良く、図3に示す構成に限定されない。
また、オーバーフローするときに回転数を初期化する代わりに直前に算出した回転数を維持するように構成しても良い。このようにすると、回転速度制御などをする場合に、システムエラーが発生することを防止できる。
オーバーフロー推測部推定テーブルの代わりに、エッジの切り替わり回数と、オーバーフローチェックカウンタのカウント値を関連付けたものであれば良く、図3に示す構成に限定されない。
また、オーバーフローするときに回転数を初期化する代わりに直前に算出した回転数を維持するように構成しても良い。このようにすると、回転速度制御などをする場合に、システムエラーが発生することを防止できる。
1 制御装置
2 ブラシレスモータ
3 位置検出センサ
14 オーバーフロー推測部(推定テーブル)
18 オーバーフローチェックカウント部(オーバーフローチェックカウンタ)
19 カウント値格納推測部(メモリ)
20 フリーランタイマ
44 回転周期算出部
2 ブラシレスモータ
3 位置検出センサ
14 オーバーフロー推測部(推定テーブル)
18 オーバーフローチェックカウント部(オーバーフローチェックカウンタ)
19 カウント値格納推測部(メモリ)
20 フリーランタイマ
44 回転周期算出部
Claims (4)
- ブラシレスモータの回転制御を行うための制御装置であって、
時間経過と共に一定の割合でカウント値を増加又は減少させ、所定のカウント値になったらリセットを行うフリーランタイマと、
前記ブラシレスモータの回転子の回転位置を検出するセンサから出力される信号のエッジごとに、前記フリーランタイマのカウント値を格納可能な複数のメモリと、
前記ブラシレスモータの回転周期を算出する指令を受け取ったときの前記フリーランタイマのカウント値と、前記ブラシレスモータの1回転前の前記フリーランタイマのカウント値とから前記ブラシレスモータの回転周期を算出する回転周期算出部と、
を有することを特徴とするブラシレスモータの制御装置。 - 前記複数のメモリは、前記ブラシレスモータが1回転するときに前記センサから出力される信号のエッジ数より多いことを特徴とする請求項1に記載のブラシレスモータの制御装置。
- 前記フリーランタイマの値がオーバーフローするか否かを監視するためのオーバーフローカウンタと、
前記フリーランタイマがオーバーフローする回転速度における前記オーバーフローカウンタの値をエッジの切り替え回数ごとに定めた推定テーブルと、
前記推定テーブルを参照して前記フリーランタイマの値がオーバーフローすると判定したときに前記回転周期算出部に回転周期を算出する指令を出力するオーバーフロー推測部と、
を有することを特徴とする請求項1または2に記載のブラシレスモータの制御装置。 - 前記推定テーブルを参照して前記フリーランタイマの値がオーバーフローすると判定したときに、前回算出した回転周期を維持することを特徴とする請求項3に記載のブラシレスモータの制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006206387A JP2008035624A (ja) | 2006-07-28 | 2006-07-28 | ブラシレスモータの制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006206387A JP2008035624A (ja) | 2006-07-28 | 2006-07-28 | ブラシレスモータの制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008035624A true JP2008035624A (ja) | 2008-02-14 |
Family
ID=39124458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006206387A Withdrawn JP2008035624A (ja) | 2006-07-28 | 2006-07-28 | ブラシレスモータの制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008035624A (ja) |
-
2006
- 2006-07-28 JP JP2006206387A patent/JP2008035624A/ja not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5840717B2 (ja) | ブラシレスモータの駆動装置及び制御方法 | |
JP2018033302A (ja) | Pmsmモータのセンサフリー制御の為の方法 | |
JP2016021850A (ja) | モーターストールを検出するための方法および電子回路 | |
US20160056692A1 (en) | Motor control device | |
JP4618890B2 (ja) | 電子コミュテーション式モータ | |
JP6186824B2 (ja) | ブラシレスモータの制御装置、ブラシレスモータの電気角推定方法、および記憶媒体 | |
JP2011239563A (ja) | 電動機制御装置及び制御方法 | |
JP2018050409A (ja) | モータ制御装置及びモータ制御装置の制御方法 | |
US10505475B1 (en) | Driving method for single-phase DC brushless motor using sensor only in start-up | |
US10686390B2 (en) | Fixed rotation direction start-up method for single-phase sensorless DC brushless motor | |
US10530283B2 (en) | Motor controller and control method for stepping motor | |
JP5539002B2 (ja) | モータ制御装置 | |
US8896257B2 (en) | Motor control device and out-of-step detecting method of stepping motor | |
TW202013876A (zh) | 單相直流無刷馬達僅於啟動運用感測器的驅動方法 | |
TW202010236A (zh) | 單相無感測器直流無刷馬達之固定旋轉方向啟動方法 | |
US7460030B2 (en) | System and method for encoder failure detection | |
JP2008035624A (ja) | ブラシレスモータの制御装置 | |
CN114172414A (zh) | 伺服电机初始电角度确定方法、装置及可读存储介质 | |
JP2007195321A (ja) | ブラシレスモータ制御装置及びブラシレスモータの制御方法 | |
JP2005526982A (ja) | 回転数を求める方法および回転数を求める装置 | |
JP2007325421A (ja) | ステッパモータ装置及びステッパモータの制御方法 | |
US7459876B2 (en) | Motors and control methods thereof | |
JP4681130B2 (ja) | ステッピングモータ原点設定方法 | |
JP2006067744A (ja) | 同期モータ制御装置及びその初期位相設定方法 | |
US10985678B2 (en) | Motor control apparatus and motor control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20091006 |