スピードコントローラ

[Previous] [Next] [Index]
インドアエアプレーンのリチウムイオン電池 1 セル用スピードコントローラのプログラムを考える
 赤外線送受信機を手がけたばかりだが、軽量なリチウムポリマ電池の入手をきっかけに、スピードコントローラを先に手がけることにした。

 マグネットアクチュエータドライバのプログラムを作っていて、ふとスピードコントローラにも応用できるのではないかと考えた。

 マグネットアクチュエータドライバの時は送信機のニュートラルを中心に左右で出力を逆転したが、今回はスロットル最スローからフルハイまでリニアに PWM 制御すればいいことになる。

 Li-Ion 電池 1 セルで使うことを前提にすると BEC (Battery Eliminator Circuit) は必要ない。 PWM 変換した PIC 出力をモータドライブのために FET に出力する。

 およそ 1KHz での PWM 制御を考える。つまり 1msec の固定パルス幅の中でパルスの ON/OFF デューティ比を変化させてモータ出力をコントロールする。最スローからフルハイまで 20 ステップもあれば十分だろう。

 インドアで使用する軽量な受信機はそのほとんどが PPM なので。受信信号の周期はおよそ 23msec となる。およそ 1msec〜2msec の受信パルスを受け取ったあと、次のパルスが入力されるまでの約 21msec の間に PWM 出力をしようという考えだ。

 Futaba の送信機ではスロットルスローでパルス幅が広く、ハイで狭くなる。市販されているスピードコントローラの多くが Futaba の送信機を使用する場合、スロットルをリバースに設定するように指示している。ノイズの影響を受けた場合を考えるとパルス幅の広いほうをスロットルハイに設定するほうが安全だ。

 Futaba ではスロットルが 3 チャンネル目に設定されているが、 JR では 1 チャンネル目がスロットルだ。しかも JR のスロットルはスロー側でパルス幅が狭い。両者のパルス振幅にも違いがある。どの送受信機メーカーにも対応したスピードコントローラを作らなければならないメーカは大変だろうなぁ。その点アマチュアは自分の使うものだけを考えればいいから楽だ。

 ということでスロットルをリバースに設定してのプログラムを考える。とりあえずスロットル最スロー時のパルス幅を 1msec とし、フルハイ時のパルス幅を 2msec として 50μsec ごとに PWM のデューティ比を変えて 20 ステップの分解能をプログラミングしてみる。

 今回も実際にインドアエアプレーンに搭載することを前提にしているので、極力軽量に仕上げたい。付けたほうが安全だが付けなくても動作するといった部品は極力省略する。

 前回作ったマグネットアクチュエータドライバ同様、今回も PIC への供給電圧 3.6V と入力パルスの振幅に大きな違いがないので、入力回路のトランジスタは省略する。また PIC 出力とモータドライブ用の FET 入力は直結で使用する。電源に大容量のコンデンサとバイパスコンデンサ、 FET 出力部分にショットキダイオードとコンデンサ程度の部品構成となる予定。( micro01 スピードコントローラ回路図)

 プログラミングには今回も PIC16F84A を使うが、実装時には PIC12C509A/SN を使いたいので、スタックも 2 段までという制約の中でプログラムを考える。

 前回のマグネットアクチュエータドライバで、 PIC12C509A の 2 ページにわたるプログラムも何とか組むことができたので、今回はそれほど苦労しなくても組めそうだ。


[Previous] [Next] [Index]
2002/07/13