スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ブラシレスモータ

ブラシレスを回し始めてかなりたった.
とりあえずMAXONのモータが来たのでこちらで実験を続ける.

ノイズの問題は電源系のコンデンサ強化などで一応収束した.
いま一番の問題はモータの発熱である.前回までR/C用の大食いモータを使っていたので電流がやたら入るのはそのせいと思っていたが,MAXONに換えてそれが正常の範囲を明らかに逸脱していることがわかった.
スペック上無負荷なら0.3Aぐらいで30000rpm程度回るモータなのに,20000rpmを越えたところで2A近く行っている.すぐに触れないぐらいアツアツになってしまうのだ.
コメントいただいたのをヒントにPWMのキャリア周波数を高くするとすこし改善した.しかし,せいぜい20%程度の効果.まだ何かが根本的に違う.
そこで駆動パターンを見直す.これまで180°全通電のリニア駆動で疑似sin波として矩形波駆動していたのがマズイと思い,これを正弦波にしてみる.(下図のイメージ)

dsPICのRAMをフルに使ってLUTを用意し,ホールIC入力とタイマでタイミング良く3相正弦波のPWMを出力させる.しかし全く改善しないばかりか,正弦波のほうがむしろ発熱が大きい.これはどうしたことだ!
 しかたなく交流モータの本なんかを参考にしながら純粋なSin波ではなくASinθ+BSin3θのような高調波を重畳させて改善を試みたが効果なし.
おそらく120°通電の間欠駆動に比べて180°通電では駆動PWMをうまくモータの特性に合わせてやらないと効率ががた落ちになってしまうのだろう.今はどうもブレーキをかけながらアクセルも踏んでいるような状態になってしまっている可能性が高い.
うーん,これはやはり電流F/Bを行うベクトル制御に進むしかないのだろうか・・・
120°通電の1現象制御では位置決め制御に心もとないし・・・
スポンサーサイト

この記事へのコメント

国が管理する無料の参考書 - わたなべ - 2009年03月10日 23:42:44

「そんなことは了解済み」の場合は無視して下さい。
ご無沙汰しております。今年こそはリングにあがりたいと思っている、わたなべです。
既にご存知かとは思いますが特許庁のデータが一般にも無料で公開されています。私の場合ネット上で良い資料が見つからない場合、特許庁の電子図書館に駆け込んだりします。
例えば「ブラシレス 120度通電 電流 位相 トルク」で特開の公報全文のAND検索を行いますと253件がヒットします。
http://www8.ipdl.inpit.go.jp/Tokujitu/tjktc.ipdl
本当は全部見るか、もっとキーワードを絞ればよいんでしょうけど、とりあえず発明の名称から
「特開平07-337067 ブラシレスモータの通電位相角制御装置」あたりを「文献単位PDF」表示でローカルに落として見ますと、フローチャートや実測から起こしたと思われる波形もあるので参考になるのではないかと思います。
またこの特許が参考にしています「特開平3-285591 直流ブラシレスモータの駆動装置」の「発明が解決しようとする課題」のところが参考なになるかと思いますので、文末に抜き出しはりつけておきます。
特許の明細はうまくヒットしますと、課題の解決から原理、数式、実施例、実験データまでありますしね。まあ仕事の場合は特許回避のために頭をひねならければいけないわけですが、個人の趣味の場合はどんどん参考にしてしまいます。
特許庁電子図書館の活用方法は以前書いたことがありますのでよろしかったら御覧になって下さい。
「特許公報で学ぶ制御技術」
http://homepage3.nifty.com/tlgjpn/neo/tech/PAT.htm
では今年も仙台で!
●特開平3-285591の(発明が解決しようとする課題)からの引用
「...上記した従来の駆動装置では、1組の磁極検出素子から得られるロータ位置信号(すなわちロータ2が作る回転磁界)八-~C-の位相とステータ電圧U-~W″′の位相との関係(位相差)が固定不変であるので、低速時に最大トルクを発生するように磁極検出素子を配置した場合、高速時にトルクが低下してしまう欠点があった。
この理由は以下の通りである。
一般には、起動トルクの増大のために、低速時においてトルクが最大となるようにロータ位置信号A-~C-の位相に対するステータ電圧U-~W′の位相を決定している。すなわち、低速時においてロータ2が作る回転磁界の最大磁界位置に最大電流を流して、ロータ2が作る回転磁界とステータ電流の空間分布のベクトル積を最大にしている。けれども、高速回転時にはステータコイル1a、1b、1Cのりアクタンスが増加し、このリアクタンス増加の影響によりステータ電圧U-~W-に対してステータ電流の位相が遅延する。
実際においては、ステータ電流位相が遅延する分だけ、ステータN流が作る回転電磁界の位相がロータ2が作る回転磁界の位相に対して遅延し、その結果、トルク低下が生じる。
逆に、高速回転時にトルクが最大となるようにロータ位置信号の位相に対してステータ電圧の位相を進相すると、低速時にステータ電流の位相が進み過ぎてトルクが低下する。
なお、この問題は磁極検出素子をステータコイルに対して所望角度回転させることにより解消することができるが、この解決手段によると直流ブラシレスモータの構成が複雑化すると共に大型化するという問題がある。
そこで本発明は、直流ブラシレスモータの構成の複雑化及び大型化を招くことなく、回転数の変化に伴うステータ電流の位相変化を補償して回転数変化に対して安定かつ優れたトルクを発生する直流ブラシレスモータの駆動装置を提供することを、その解決すべき課題としている。 ...」

ベクトル制御 - わたなべ - 2009年03月10日 23:51:21

わたなべです。
産業界は普通にベクトル制御のようなのですが書物に書かれているのは、あまりにも原理ばかりで、これではプログラムできん?雑誌の記事はおおざっぱ過ぎて...。未だに???の私です。
やはりもやねさんのように実践と理論でをくり返しながらが良いのでしょうね。ただモータの場合は定量的なデータを取るにはコントロールできるトルク負荷が...そのうちモータベンチができていたりして!
というわけでベクトル制御も特許庁電子図書館でと思ったのですが、その前にMicrochipのサイトで検索してみましたら。これはスゴイ!
マイコンメーカーのドキュメントにブラシレスモータ活用のためのペリフェラルの適用の解説はよくあるのですが、マイクロチップはベクトル制御の解説からソースまであるようです。
Search「vector control」
http://search.microchip.com/searchapp/searchhome.aspx?q=vector%20control
「AN908 - Using the dsPIC30F - dsPIC33F for Vector Control of an ACIM - Application Notes - Details」
「This application note describes a vector control application that is written for the dsPIC30F / dsPIC33F family of devices. 」
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en019806
「Microchip Technology User Forums」
http://www.microchip.com/forums/tm.aspx?m=230600&mpage=1&key=Dynamic%2cData%2cControl%2cfor%2cMotor%2cReference𸓈

- もやね - 2009年03月11日 19:21:19

わたなべさん有用な情報ありがとうございます.
さっそく見てみましたが,今回のモータ駆動方法なんかは特許は役に立ちそうです.アイデア入手だけでなくて技術の勘どころもさりげなく書いてあるので流し読みするだけでもとても勉強になりますね.
製品化するワケじゃないので使えるノウハウはバンバン取り入れて行きたいところです!
(MicroChipのアプリケーションノートがなぜか開けない・・・)
知ロボ,今年も仕事の繁閑によっては行けない可能性ありますが,出れたらぜひよろしくお願いいたします.

英語の勉強には最適? - わたなべ - 2009年03月12日 22:46:19

>(MicroChipのアプリケーションノートがなぜか開けない・・・)
開きませんか?大手のサイトでもたまに応答悪いときもあるようですし。
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en019806
のページから
「AN908」(をクリックで開きましたし)右クリックで「00908B.pdf」
「AN908 Source Code for dsPIC33FJ12MC202]を右クリックで「AN908_33FJ12MC202.zip」
「AN908 Source Code for dsPIC30F6010Aを右クリックで「AN908 Source Code for dsPIC30F6010A.zip」
がダウンロードできました。
「00908B.pdf」は題名が「Using the dsPIC30F for Vector Controk of an ACIM」で項目は
「Vector Control Theory/Code Description/Demo Hardware/Project Setup and Device Programing/Software Operation/Software Tuning/...」
となっておりますが私の英語力では...。
ベクトル制御が流行ってきたのはマイコンのコストパフォーマンスが上がり、モータの性能を最大限引き出すのにベクトル制御が量産コストで使えるようになったのもひとつの要因だと思います。
もっともベクトル制御をしなくてもブラシレスモータは実用的に回っていたと思います。
もしかしたらブラシレスの解説もあるかなと思いMicrochipのTopページからみてみました。
既に御覧になっているかとは思いますが皆様の参考になるかと思い以下、記しておきます。
なんか高い専門書物を買わなくても英語の辞書を買えば良いような気もしてきました。
英語に苦手なもので、眺めてみただけですが。
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=64
から
「Applications→Motor Control→(Appnotes and Software by Motor Type)のBrushless DC」に以下のようにあり
「App Notes and Source Code for Brushless DC Motor Control」
「The app notes on this page are written for brushless motors that are commutated with ‘six-step’ control. This control technique is also called ‘120 degree conduction’ or ‘trapezoidal control’...」
「AN885(Brushless DC Motor Fundamentals」
基本原理のみ?PICでの構成図(FIGURE9)はあるけどプログラムできん。
「AN857(Brushless DC Motro Control Made Easy)」
英語を読むのがEasyで無い...
まいったなサンプルコードがPIC16Fxxでアセンブラだ...。(an857.zipの中にソースあり)
「Brushless DC Motor Control Made Easy」
「Advanced BLDC Control Solutions」
「AN957(Sensored BLDC Motor Control Using dsPIC30F2010)」
こっちはC言語
ふと思ったのは、時間→角度変換の補正は必要無い?です。
回路等の系の遅れは回転にかかわらず時間ほぼ一定だと思いますが、この遅れ時間を角度にすると回転が高くなるほど角度換算では大きくなるわけで。
昔エコランで点火制御をやったときは「エンジン回転-遅れ補正角度」実測でデータ取って、それをもとにルックアップテーブル作って、エンジン回転で補正してましたけど。
雑誌などで読んでブラシレスモータを理解していたつもりですけど、全然理解できていないことに気付きました。精進せねば。
では。

- もやね - 2009年03月18日 01:04:01

わたなべさん詳しい解説ありがとうございます.
dsPICのapp-noteは見れました.ソースがCなのでコピペで行けるかも?しかし,途中の座標変換がインラインアセンブラなあたりはさすが.1ループ50usecですか!なんでそんな時間で処理が終わるの?って思いました.ホントだとしたらdsPICのポテンシャルは計り知れない・・・
角度変換のところはご指摘の通りミスってました.角度に直さず時間のままオフセットした方が正解でした.
まだまだ私も理解が追いついてないのですが,なんとかがんばりたいです.

トラックバック

URL :

プロフィール

もやね

Author:もやね
長野県在住の会社員(メカニカル・エンジニア).
ロボットは完全な趣味としてやってます.
E-mail:
mo_ya_ne[a]yahoo.co.jp
[a]⇒@

最近の記事
最近のコメント
最近のトラックバック
月別アーカイブ
カテゴリー
FC2カウンター
ブログ内検索
RSSフィード
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。