So-net無料ブログ作成
検索選択

コアレスモータ対応鉄道模型用コントローラの開発~その5・PICの利用~ [模型]

2017年3月25日の日記

前回,PICマイコンを使ってコアレスモータにも対応した鉄道模型コントローラを設計しました。

どうにもコアレスモータは性能がよすぎて,従来のコントローラを使うとつまみをほんの少し回しただけでスタートしてしまい,あまり低速では運転できないし,前照灯が点灯すると同時に走り出してしまうので,停車中に点灯させることができない,という感じです。

原因はいろいろ調べたところ,今まで作ってきたPWM式のコントローラの最低デューティが大きく,10%前後もあるため,性能のよいコアレスモータだとパルスが出始めた時点ですぐに回転してしまうため,と判断しました。実際,第4回に書きましたが,コアレスモータ機はデューティが5%くらいでも走り出してしまうようで,これでは従来のPWM式では対応できないものがあると思います。

なお,この最低デューティの問題は市販のPWM式コントローラでも同様のようで,実際,ネットを見ても皆さん,苦情を書いておられますね。

では,なぜ,PWM式コントローラの最低デューティが0%じゃなくて数%とか,ひどい場合には10%以上になってしまうのでしょうか。

ひとつはスイッチング周波数が高すぎるためです。

PWM式のコントローラは1回目に書いておきましたように,スイッチング周波数が高いほどモータや制御素子の損失が小さいためです。また,電圧をパルス状にしているため,モータが瞬間的に起動と停止を繰り返すため,電磁的な音が発生し,唸ります。ちょうど,チョッパ電車やインバータ電車と同じです。

特に,昔のチョッパ電車や初期のインバータ電車はサイリスタを制御素子に使っていて,スイッチング速度が遅いため,スイッチング周波数も300Hzとか,1kHzとか低かったため,かなりの電磁音を出しました。プーッと甲高い音を出して走っていましたよね......(^^;)。

最近はスイッチング周波数を上げて音が小さくなっているのはご存じの通りです。これは素子が高速のIGBT(ゲート絶縁型バイポーラトランジスタ)を使っていたり,電圧が2段(0→1/2→1)になっている3レベルインバータを使っているためです。

ついでに,今は小型のIGBTも作られていて,秋月電子さんなどで売られています。東芝のGT20J34なんて,250円です。600V,80Aの高性能ですが,同じTO-220のパッケージです。驚いちゃいますね。 

鉄道模型も全く同じで,スイッチング周波数は普通,20kHzくらいにして,人間の耳に聞こえないようにしてあります。市販のPWM式コントローラもこのような高い周波数となっています。 

ところが,こんなに高い周波数にしちゃうと,あまり低いデューティのパルスは出力できなくなってしまいます。iruchanは20kHzなんて,半導体じゃ,スイッチングは楽勝じゃん,と思っていたのですが,さすがに20kHzでデューティ1%とするとパルス幅は0.5μsになりますが,そんな狭い幅のパルスを出力するのは困難です。 

原因は出力の半導体にあります。また,使用している素子により原因は異なります。

まず,現在,広くモータやLEDの制御に用いられているMOS-FETの場合は前回も書いていますように,入力にキャパシタンス分(入力容量)があり,このコンデンサが入力信号が来てもその電圧を食いつぶしてしまい,なかなかMOS-FETがonする電圧(ゲートしきい値電圧VGS_th)に達しないためです。

MOS-FET入力容量1.jpg MOS-FETの各電極間容量

なお,真空管同様,MOS-FETには各電極間に3つのキャパシタンス分があり,これらのうち,入力容量CissはCg-dとCg-sの和です。 また,帰還容量Crssも要注意で,これはCg-dそのものです。

ちょっと,Spiceでシミュレーションしてみました。20kHzで,デューティ1%でドライブしてみます。 

2SK2466出力段.jpgMOS-FETの場合

2SK2466 入出力波形(20kHz, duty 1%).jpg やはり太いです。

もとのパルスがですが,実際にMOS-FETが出力する電圧はのように,幅が広くなってしまっています。

これは,ゲートの入力容量Cissと,ゲート抵抗RG10Ωが時定数を形成し,のように,ゲートの電圧が変化するためです。斜めに立ち上がっていますね。もし,Rgが100ΩだとMOS-FETはonすらしなくなってしまいます。

MOS-FETはいろいろありますが,VGSは大体,2~4Vくらいかけないとonしません。 バイポーラTrは0.6Vですから,大きな値です。簡単にPICでonできない場合もあり,とくに,最近のPICは3Vで動作するものが多いので,下手するとドライブできませんのでご注意ください。また,仮にドライブできていたとしてもMOS-FETが非飽和領域で動作していて,MOS-FETが発熱することもありますので,注意が必要です。▼の回路図で,ドライバ段の電源を12Vから取っているのもそのためです。PIC用の5Vラインから取るとドライバ段の出力は5V以下になってしまい,終段のMOS-FETのドライブ電圧が下がります。 

もし,RGを0Ωにできれば,もっと高速にできるし,実際,PWMコントローラの場合,この抵抗を入れずにPICと直結している場合も多いと思います。

ただ,オーディオ用のアンプなどの場合はこの抵抗は必須です。なぜかというと寄生発振と言って数MHzくらいで発振してしまうことがあるのと,スイッチング回路の場合はさきほどの帰還容量Crssのせいで大きなサージ電圧が発生し,MOS-FETを破壊することがあるためです。

と言う次第で,できればこの抵抗を入れておいた方がいいのですが,大きな値だとスイッチングが遅くなっちゃいますので注意が必要です。

一方,つい最近まで,電力制御の主役だったバイポーラTrは,と言うとこちらはスイッチング速度が遅いためです。

バイポーラTrはスイッチング速度がMOS-FETの1/10以下のため,信号の立ち上がり,立ち下がりにうまく追随できません。

2SD794 出力段.jpgバイポーラTr回路

2SD794 入出力波形(20kHz, duty 1%).jpg ありゃ?

▲のMOS-FETのときとはちょっと様子が異なります。一応,スイッチングはできるのですが,立ち下がりが遅いですね......。

バイポーラTrはスイッチング時には立ち上がり時間 ton, 蓄積時間 tstg, 立ち下がり時間 toff の3つの速度があり,規格表にも書いてあります。

といって,スイッチング用と称しているTrでないとあまり規格表に書いていないのが困ったものなんですけど....。 

ton と toff はほぼ同じで,大体,0.5μs~1μsくらいです。一方,tstg は2~3μsもあって遅いのです。

tstg はP-N接合面付近で,キャリア(電子と正孔)が中和している領域があり,そこが完全に元の状態に戻るまでの時間です。元の状態に戻ると電流を遮断し始めます。 

MOS-FETはキャリアの蓄積効果がなく,この tstg の部分がないので,やはり速いです。もとから ton やtoff は10倍くらい速いのですしね。

というのが実際に教科書に書いてある話なのですが,▲のシミュレーション結果を見ると,立ち上がりの部分が非常に小さく,蓄積時間 tstg は入力パルスがoffになってから,少しまだ出力が水平となっている部分があって,その時間のことですが,ここも短いです。

 

Tr switching waveform.jpg 

  トランジスタのスイッチング時間測定条件(NECの2SD560規格表から引用) 

問題は立ち下がりの toff の部分のように思います。

なんか,実を言うと,iruchanもちょっとこのシミュレーションは少しおかしいという気がしているのですが.....。もっと立ち上がりは遅いはずだし,立ち下がりは逆に遅すぎると思います。

原因は負荷電流で,今回,100mAくらいなんですが,1Aも流すともっと立ち下がりは速いし,バイポーラTrと言っても意外に速いと言うことがわかりました。負荷が大きいと,キャリアの中和領域が早く消えるようです。

しかし,やはりパルス幅はMOS-FETの約2倍となってしまいます。

なお,スイッチングを高速化するには,MOS-FETの場合はこの入力容量の充放電を速くすればよいわけですから,短時間に大量の充放電電流を流してやればよく,そのため,プッシュプルドライバを入れてやれば解決する,と言うのが前回までの話でした。

ところが,バイポーラTrの場合は素子そのものの物理的な現象のため,打つ手がありません。 高速化コンデンサと称して,10~100pFくらいのコンデンサをRBにパラにすると速くなりますが,これとてやってみると大して速くはなりません。

だから,結局のところ,やはり鉄道模型のコントローラにはMOS-FETが適していると判断せざるを得ません。

と言う次第で,今回,設計をやり直し,下記の通りとしました。

PWM式コントローラ(PIC・調光)1.jpg 回路

さすがに結構,大規模な回路変更なのでプリント基板も一から作り直しました........orz。

なお,今回,過電流保護は0.6Ωの抵抗と2SC1815で構成しています。1A以上の電流が流れると2SC1815がonし,2SK2382のゲート電位を下げるので,電流を絞ってくれます。面倒でしたら,抵抗1本だけでもOKです。そのときは抵抗値は1.6Ωくらいにしてください。ただし,この場合,この抵抗による電圧降下が大きく,1A流したときは最大出力電圧は10Vくらいに下がりますのでご注意ください。 それはちょっと困るな,と言う方はこの抵抗の代わりにポリヒュースを入れてください。

PIC controller & driver PCB.jpg 最終的な基板です。

従来型との比較.jpg 従来型(左)との比較です。

従来型はタイマIC555とコンパレータNJM2903DLM393互換)との組み合わせです。 

プリント基板(PIC).jpg プリント基板図(パターン面) 

プリント基板(PIC)1.jpg 部品配置(部品面から見た図) 

基板サイズは55mm×30mmです。 

ピンクのLEDはパイロット用,オレンジは出力のモニター用です。つけておくと何かと便利だと思います。 出力のMOS-FETのドレインにスナバ回路(100Ω+0.01μF)も入っていますが,どちらも特に不要なので,フリーホイーリングDiの11EQS06以外はつけなくても構いません。

また,ソフトは前回と同じものです。 

最低デューティ(PP driver).jpg デューティは1.6%となりました。

残念ながら,最低デューティは最初,基板を作り直した時点では2.6%くらいで目標に到達しなかったので,多少,回路定数を変更しました。

でも,結局,1%以下にすることはできず,▲のように1.6%となりました。時間的にはパルス幅0.83μsと言ったところです。0.5μs以下にしたかったんですけどね.....。

波形が途中から斜めになっているのは負荷がLEDのためです。2V以下ではほとんど電流が流れず,自然放電しているだけです。 

原因はやはりMOS-FETの入力容量です。

今回,出力には東芝の2SK2382を使いました。もうじき東芝の半導体も身売りされて消えちゃいますので.....。

第2回に現行のMOS-FETの特性をまとめていますが,2SK2382はCissが2000pFもあり,最近のMOS-FETなので非常に大きいです。やはり,KATOのKC-1改で使用したNECの2SK2412(Ciss=860pF)の方がよかったと思います。今回は素子の選択ミスです。 おそらく,2SK2412だったら最低デューティは1%以下にできたと思います。

ドライバ&出力段.jpg さようなら......。

今回,ドライバの2SA10202SC2235と出力の2SK2382,レギュレータのTA78L05は東芝製を使いました。いずれも手持ちです。本当は2SA1020のコンプリは2SC2655ですけどね....。

最近はTO-92型のTrも数が減り,2SA1020も秋葉じゃ台湾UTC社のものが幅を利かせています。あまり外国製は使いたくないのでパスです。真空管時代からの名門東芝も半導体部門の売却が決まり,とうとう消えていきます。それこそiruchanは2SB54の時代から東芝のトランジスタを使ってきたので残念です。北陸の田舎じゃ,ソニーや日立はもちろん,NECだって部品屋さんでは売っていませんでしたから.....。

まあ,2SK2382でも最低デューティは1.6%ですから,モータは回転しませんし,LEDも非常に小さく,チップの表面がうっすらと点灯するくらいですので,十分,常点灯には対応しますけど......。

調光つまみmaxデューティ.jpg 調光つまみmax.の状態です。

今回,走行用と調光用でKC-1みたいにつまみを分離しました。こうしておくと,別個に調整できて便利です。

調光用は最大デューティ10%となるようにソフトを組みましたが,実際には最大12.0%でした。まあ,こんなものでしょう。おそらく,調光用つまみを最大にすると模型も走り出してしまう,と思いますので,前照灯は点灯しても走行はしない,というレベルで固定しておきます。

無事に動作しましたので,近日中にケースに入れてみたいと思います。   

2017年7月9日追記

ケースに入れました。こちらで紹介しています。よろしければご覧ください。

2017年8月13日追記

驚いたことに,6月に発売されたKATOのC12は想定より最低デューティを小さくしないと停車しないことがわかりました。D51と同じソフトじゃ,動いてしまうんです[雨]

しかたないのでソフトを書き換え,最低デューティを1.5%としました。ようやくこれでC12が止まるようになりました[晴れ]

最低デューティ(2SD409, C12対応版).jpg C12対応版の最低デューティ波形です。

ソフトは下記の通りです。so-netはhexファイルをupできないのでテキストファイルにしておきます。.txtを.hexにして書き込んでください。

PWM controller.txt


nice!(4)  コメント(2)  トラックバック(0) 

nice! 4

コメント 2

ぼち吉鉄道

ご無沙汰しています。
下期は仕事で死んでました。
上期になった瞬間暇になっています。
揺り戻しを恐れている日々です(^^;)

息子さんとの旅行記いいですね。
もう少し大きくなったら、私ところも楽しめますかね…。

この記事待ってました!
さすがですね。
今の自作コントローラでは、KATOは全く止まりません。
諦めていましたが…。
一応、PICチャレンジしています。
後閑さんの本でやったのですがね…動きません。
ブレッドボード上で放置しています。
もうそろそろ再開しないと…思い出せないですね。
このソース使ってテストしてみたいと思います。
by ぼち吉鉄道 (2017-04-05 16:24) 

iruchan

ぽち吉鉄道さん,本当にいつもご覧いただき,ありがとうございます。

まだお子さんは小さいのですね。うちの息子はそろそろ大人料金になっちゃうので今のうちです.....。

PICはかなり難しいです。いまだによくわからず,ソフトも試行錯誤です。

ただ,単一周波数のPWMはやはり厳しい感じで,コアレスモータだとなんとか静止させておくことはできますが,感覚としてはギリギリ,という感じです。その意味でも,やはりKC-1は偉大だと思います。
by iruchan (2017-04-05 21:30) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

Facebook コメント

トラックバック 0