ブラシレスDCモーターのコントローラー

ブラシレスDCモーターコントローラーの制作


2017-07-23

誘導モーターインバーター回路は高電圧でテストや計測がやりにくいのでもう少し電圧の低いブラシレスモーターで回路を組んで実験する。ブラシレスモーターは同期モーターなのでフィードバック回路が必須になるところが誘導モーターとは異なるが誘導モーターでも回転数を計測し駆動周波数との差(=滑り)を元にフィードバック回路を構成することは可能なため基本的な部分は同じはず

R0035570.jpg

この本からスタート

2017-07-25

実験用のモーターを注文。自転車のハブモーターなのでどれくらい出力が出ているか体感しやすい。ダイレクト駆動ではなくたぶんハブ軸と同軸の遊星ギヤで減速している。海外ではマウンテンバイクの電動化が流行っているらしくコントローラーなどの入手性は非常に良い。厳密には違法らしいのだがあまり気にしないお国柄の様子。日本と比べると道幅もずっと広い。
本は大体読み終わった。ベクトル制御というのは永久磁石ローターの位置を検出して最も効率の良い電流をモーターの電磁石に流す制御。センサーがローター位置を検出するたびにフィードバック制御がかかるのでローターが1回転する間に複数回(多極モーターだとかなり多い)のフィードバックがかかる。特に低速で負荷変動するものに効果が大きい

R0035581.jpg

中国メーカー製

2017-07-27

Aliexpressにはボトムブラケット(=クランク軸のこと)型のトルクセンサーも売っている。これがあれば電動ママチャリを自作できてしまう。中国製にしては高価

R0035630.jpg

同一トルクでもクランクの向きによって計測値が変わっているので日本の電動ママチャリとは違っている。ひずみゲージがBB軸に接着してあるのかもしれない

R0035631.jpg

内部はこれか? SEMPUというメーカー名らしき単語で検索して見つかった画像

SEMPUsensor.png

2017-08-19

モーターと部品が届いたので設計開始。マイクロチップ社のアプリケーションノートを少し変更するだけなので設計というほどの作業にはならない。MPUはdsPICを使う

R0035947.jpg

2017-08-20

これは洗濯機のモーター。10極12スロット。実際のモーターの内部構造は入門書の通りの極数の整数倍にはなっていない。
極:磁石の数。NとSの一組で1個とは数えない
スロット:コイルの数。鉄心の溝にコイルが巻き付けてあるので溝の数と等しい
半端な極数はトルク変動を小さくするための物らしい

R0035950.jpg

コイルの巻き方をたどってみるとこうなっている。UVWはスター結線。マイナス符号付のコイルは巻き方が逆になっている。コイルWがS極になっているときはW-コイルはN極に磁化される。自転車用のモーターは殆どがアウターローターなので永久磁石を外側にして作図してある。右の黒い物はホールセンサーの位置。これも入門書とは異なり電気角120度間隔では配置されていない。ホールセンサーは永久磁石1個の大きさよりあまり大きくならない間隔で配置すればローターの位置検出はできる

sentakuki10p12s.png

ホールセンサー。3個等間隔に並んでいる。専用ICや高速MPUを使う場合はローターの位置検出さえできれば良くハードやソフトの負担を減らすために電気角120度で配置する必要は無いということだと思う

R0035952.jpg

2017-08-31

センサーの電線は全部で6本ある。1本多いので実測テスト。電源電圧は自転車用モーターコントローラーの仕様から。市販のコントローラーは主に出力電流が異なるだけで大体共通の仕様になっている
 赤-電源+5v
 白-1パルス/回転 速度センサー オープンコレクタ出力
 青-ホールセンサーA オープンコレクタ出力
 緑-ホールセンサーB   同上
 黄-ホールセンサーC   同上
 黒-電源-
余計な1本は速度センサーだった。オープンコレクターなので通常はHIGH(+5V)、センサーが反応するとLOW出力

R0036077.jpg

2017-08-31

ソフトがコンパイルできるか確認。ハードがアプリケーションノートの物と異なるのでソースを少し変更する必要がある。スタンドアローンでも動くがシリアル経由でも制御できるサンプルプログラムがある

R0036078.jpg

回路図を書いた。センサーレス駆動用の逆起電力計測回路などを省いた。アプリケーションノートの回路はdsPICとPIC18F2431の両方で動く設計になっている。dsPICはクローズドループ制御が出来るところが異なる。dsPICはプログラムの書き込みとシリアル通信が共存しないため先ずPIC18F2431で試してみる。回路はまだ暫定

R0036081.jpg

2017-09-08

電力部とMPU部に分けた。MPUはPIC18FとdsPIC用2種

R0036123.jpg

2017-09-22

部品がそろったので半田付け。購入済みの電流検出抵抗は0.05Ω。10A流した時5Wも発熱して定格オーバー。購入しなおし。それまで弱電側だけの動作テストをする。センサーからフィードバックが無いと回り続けないがモーター停止時はフィードバック無しでも少し回るはず。回らない限りセンサーから信号は来ないので最初の1回転分くらいは動くはず

R0036159.jpg

2017-10-17

動作テスト。基板に銅箔のゴミが付着していて誤動作。FETを2個飛ばしてしまったが交換して動くようになった。無負荷だと電流は1Aも流れない。2A流すと手で回転を止めるのは困難。現時点の問題点は
1)カタカタ異音がする。機械的なものなのか電気的な物が要因になっているか不明。音と同期して電流計の針が振れるが機械的な要因によって負荷が増えて電流増加しているとも考えられる
2)回転数が遅い。26インチのタイヤを付けたら最高時速15km程度だと思う

R0036264.jpg

2017-10-18

異音の原因を探るためFETのゲートドライブ電圧をオシロスコープで計測

ADS00003.png

正常

ADS00004.png

異常あり

ホールセンサーの信号が変な可能性が高いので観測。かなりノイズが入っている。ローパスフィルターを入れたら異音は無くなった。黄色がローパスフィルター入り。青は無し

ADS00012.png

パソコンに接続してGUIモードで回してみる

R0036267.jpg

設定上は1000rpmになっているが実際は337rpm(ギヤで減速されるのでハブはもっとゆっくり回る)でしか回っていない。電源電圧を上げると回転数も上がるので電源電圧不足。FETの耐圧が低く電圧をこれ以上上げられないのでFETを交換。同じものが6個必要。在庫が無いので買い出し

R0036268.jpg

2017-10-19

ここまでの回路図とプログラムを添付しておく。詳細は「PICDEM MC LV Development Board」で検索。殆どこれの丸パクリ回路になっている
・モーターの回転数は普通のDCモーター同様にPWM(このプログラムはPWM周波数16kHz)のDUTYを0~100%にすることにより行われている
 このモーターは電源電圧29VではDUTY100%で210rpmしか回らない 
・DCモーターと違って3相の極性を切り替えないと回転が止まってしまうのでホールセンサーの信号を受信するたびに極性を切り替えている
・ホールセンサーは目的の回転数に達した時の回転数検知センサーとしても使用されている。目的の回転数になるようにDUTYを加減する
Youtube動画 センサー付きブラシレスDCモーターの実験

R0036275.jpg
プログラムなど
ファイル ファイルタイプ 添付ファイルの解説
Hall_open.zip OTHER プログラム スタンドアローン版 オリジナルを微修正してある
BLDC_OL.zip OTHER プログラム GUI版 オリジナルを微修正してある。Windowsで動くGUIプログラムは無修正なので添付しない
bldcan1017.png PNG 回路図 電流検出回路はシャント抵抗の抵抗値だけ変更したので正しく機能していないことに注意。モーター回路のFET耐圧は30Vなのでこれ以上の電圧を加えないこと

2017-10-20

減速比が大きくベクトル制御は効きそうにもないのでトルクセンサーを買って電動ママチャリに仕立ててみることにする。実験用の自転車のクランク軸は八角形のトルクス形状。通常この手の安い自転車は四角形の軸になっている。四角軸は今でも生き残っているがこの形状は消滅してしまっていると思う。クランク軸がダメになったらクランク、ギヤ毎交換になる。ギヤ数が合わなければチェーンも交換

R0036282.jpg

通常右側のクランクにスプロケットが付いているがこれはクランク軸にスプロケットが嵌っている。クランクを抜いてしまうとスプロケットはぐらぐら。クランクは左右共通

R0036284.jpg

ここも2面幅が40mmで工具が合わない。このサイズを回せる工具が無いので大きなモンキーレンチを注文しておいた

R0036286.jpg

2017-10-26

モンキーレンチでは外れず。焼きが入っていないのか凹んでしまった。自転車の方はベアリングのアウターなのでものすごく固い

R0036336.jpg

軸を外すとこんな形状。左のような形状の工具で外すのだと思う。これはサイズが合わない。工具もかなり昔に販売終了で今はコレクターズアイテム並の入手性。フレーム側のネジ規格は昔から変わらないが軸の規格は生まれては消え更にメーカー毎に違うものを作るので互換性はパソコン部品並み。脚力が昔と大きく変わっているわけで無しスラスト方向のガタについては昔のほうが構造上優れていたりするので新しい規格を作って買い替え需要を促すといった意味合いが強いような気がする

R0036345.jpg

タガネが引っかかる凹みをグラインダーで削ってから接線方向に叩いて回した。この方法はかなり強力。右だけ逆ネジになっている。水抜き穴が無いのでシートポストから侵入した雨水でトルクセンサーが壊れるような気がする。シートポスト側をコーキングで塞いでしまうか水抜き穴を空けるかセンサーの防水性を見てから決める

R0036346.jpg

2017-11-05

最新版ではセンサーの形状が変わったらしい。発送後に連絡がきた

sensorimg.jpg

2017-12-31

トルクセンサーの動作確認。屋外放置できない自転車なのでこの自転車ではセンサーの動作確認しかしない

R0036706.jpg

取り付け方法はちょっと複雑。軸方向のガタを完全にとることはできない

R0036696.jpg

回り止めをねじ込む。これはプラスチック

R0036693.jpg

工具が届かないので手で回す。どこまでねじ込むべきかは試行する必要がある

R0036698.jpg

左側のベアリングアウター受けをねじ込んでロックリングで固定

R0036701.jpg

センサーを入れる

R0036704.jpg

右側のベアリング受けをねじ込む

トルクセンサーの出力波形。センサーはクランク位置による感度の違いがあるため実際のトルクを表していない。波形のピーク<->ピーク間がクランク1回転。片側のトルク検出しかできない。非接触なのでセンサーの回転抵抗は無い。消費電力も無視できるレベル。トルク検出はこの曲線を積分してもピークを検出しても同じ気がする。1回転クランクを回さないとトルクが計算できないがヤマハのPASでも体感的に同じような気がする。一定トルクでクランクを回しても出力が安定するまで少し遅れるし漕ぐのをやめても出力が短時間残る。クランク回転角センサーも内蔵で1回転24パルス。馬力をトルクx回転速度で計算しこの値でモーターのPWMデューティーに制限をかければ良いことになるが本当にこんな幼稚なロジックで良いのだろうか

torquewf.png

電源電圧を変えても出力電圧は変化しない感じ

torquewfclip.png

強く踏み込むと波形がクリップする

2018-01-01

長期放置した自転車なので分解。ブレーキケーブルなどがさび付いている。ステムが固着して抜けない。9年前のタイヤはひび割れもせずまだ使える。チューブの虫ゴムは日も当たらないのに劣化していた。プラスチック部品は紫外線でダメになっているものが多い

R0036710.jpg

ハンドルが酷く錆びている

R0036712.jpg

2018-01-02

インター8も回すとゴリゴリするので分解

R0036715.jpg

かなり錆びている。取り付けたのは10年前

R0036714.jpg

2018-01-03

すごい錆び

R0036727.jpg

このベアリングは特殊工具を使わないと取れないところにあるがマイナスドライバー2本をタガネ代わりに使って写真A(180度反対側も同じ造り)の出っ張りを同時に叩き込むと外れる。それほど強くたたかなくても外れるが奥のほうまで押し込んでやらないといけないので太いマイナスドライバーでは無理。分解方法の説明は NEXUS_SG-8R20-Werkstatthandbuch.pdf という名称

R0036732.jpg

再利用不可。部品はモノタローで売っている。ハイフンとスペースを取り去った型番で商品登録してある。小さいほうが約¥200、大きいほうが約¥400

R0036729.jpg

2018-01-04

ステムを切断して抜いた。叩き込むと僅かに入っていくので固着は解除されているが摩擦が大きくて抜けない

R0036735.jpg

コラムは鉄、それ以外はアルミ。二股はアルミ鋳物。バーナーであぶってアルミステムを溶かしてしまう方法もあるらしいがかなり深くまで入っているので加熱したらフォークも溶けてしまうと思う。ステムにネジを切って引き抜くか削って切子にしてしまうかのどちらかで抜くしかない。ステムの臼は中に入ったままなので下から叩くことは出来ない

R0036736.jpg

2018-01-07

M14のタップを切る。穴は最初から空いていた物が丁度合う。鋳物の抜き勾配が付いているので末広がりになっている

R0036752.jpg

ボルトをねじ込んでヘッドパーツをスペーサー代わりに。一番左の部品はコラムのネジと噛み合っている。この状態でナットを締め込んでいく。プーラーと同じ仕組みなので確実

R0036754.jpg

抜けた。ヘッドパーツはベアリングが付いている状態で強く叩いてしまったので再利用しない。ベアリングは若干錆びているがハンドルはぐるぐる回す物では無いので叩かなければ再利用出来た。ステムを伝って雨水が容易に浸入する構造なので時々分解しないとまた固着する。ママチャリのフォークは1kg程度有るがこれは主要な部品がアルミで650gと軽量

R0036756.jpg

2019-08-21

バッテリーの入手性に難アリなのでこの案件はしばらく休眠。勾配のきつい坂道が多いのでかなり大きなバッテリーが必要になるがリチウムイオン電池は安く大量に購入できない。フレームの自作実験のためエンジンを買った。中国製124cc。¥26500+送¥1000

R0041668.jpg

2021-06-05

中国製の電源を買ったので動作確認。型番RD6012。60V12Aの可変タイプ。電流制限もかけられる。出力端子が3つあるが1つはリチウムイオン電池などの充電用。約¥17000。上位機種に18Aの物があるがAC100Vだと出力電流が仕様いっぱいまで上がらないようなので12Vで妥協

R0049113.jpg

キットなので自分で組み立てる。銀色の大きいのが68Vの固定電圧スイッチングレギュレータ。デジタルパネルの裏側に降圧スイッチングレギュレータがある。AC100VをDC68Vにしてそれを降圧する仕組み。組み立て動画はYouTubeに沢山ある

R0049099.jpg

仕様上は36Vで290rpm。実際は250rpm。制御回路のPWMデューティーが100%にはならないのでこんなものだろう。これ以上電圧を上げると基板上の5Vレギュレータの最大定格をオーバーしてしまう。無負荷では0.65Aしか流れない。負荷が小さければもっと電圧を上げて問題無いはず。FETの最大定格を6Vオーバーしているが基板の銅箔が剥がれそうなのでFETの交換はやめた

R0049111.jpg

2021-06-10

14インチのリムを付けた。定格より電圧を上げても時速20km程度しか出ないと思う。本来は普通の自転車のリムサイズ26~27インチで使用する設計になっている。電気的に最高回転数を上げるためには電圧を上げるかモーターコイルの巻き数を減らす。どちらの場合も定格を超えた運転になるので高負荷時に定格以上の電力が流れ込まないようにコントローラー側で制限をかける必要がある

R0049133.jpg

スポークはリムに対してかなり斜めになる。限界に近い角度。スポーク長は作図で求める。長さ69mm。Aliexpressにスポーク長を指定できる販売店がある。長さ指定は良くあるサイズより4割高

spokesakuzu.png

2021-06-21

実験用の中国製コントローラーを買った。送料込み¥1300。自作コントローラーが完成するまでケース入りの完成品があると原因の切り分けに使えて便利

R0049170.jpg

コネクターは多数あるが電源、モーター、スロットル、イグニッション(電源+につなぐだけ)が接続されれば動作する。中国製のコントローラーの大多数はセルフスタディ機能がある。黒いコネクターがそれ。このコネクターを繋いで電源を入れるとスロットルポジションは無視して一定速度でモーターが回る。もし回転方向が逆なら電源を入れた状態のままコネクターの接続を解除する。そして電源を入れ直すとモーターの回転方向が反転する

R0049172.jpg

2021-08-14

FETの定格電圧を超える48Vで動作させて壊してしまったのでFET基板を作り直した

R0049353.jpg

通電してスロットルを回したら基板パターンが焼き切れた。FETのハイサイド/ローサイドドライバー電源のLM317の入力側。つなぎ直して通電。電源電圧は正常なのでハイサイドローサイドドライバーのIR2108が飛んでいる可能性大。その前にFAULT_LEDが点滅するのでソフトの調査が必要。プログラムのソースを見たらアセンブラ。最終的にはプログラムを自作する必要があるのでC言語で書き換えることにする

R0049355.jpg

2021-08-16

どのIR2108が壊れたのかテスト。全部か?。新品が1個も無いので対照実験できず。5個注文

R0049358.jpg