PWM(しゃちょ〜)

今日は台湾出張先から書き込み。

Pulse Width Modulationの略で、要はパルス幅を可変にすることです。基本周期に占めるON時間の割合をデューティー比と言います。0%デューティはずっとLowが出力されていて、100%デューティはずっとHiが出力されます。50%デューティはHiとLowが同じ幅で交互に出ているということですね。
ラジコンサーボでもPWMという言葉を使いますが、モータの制御でのPWMと、ラジコンサーボでのPWMは若干意味合いが違います。いや、意味は同じだが、使い方が違うといった方が正しいかな?ラジコンサーボでは、基本周期20ms(50Hz)で、5〜15%程度でONの時間を変化させると、出力軸の回転位置が-90度〜+90度に対応して出力されます。つまり5%デューティだと-90度、15%デューティだと+90度になります。デューティ比が出力角度になるわけです。(方向やデューティ幅、可動範囲はサーボによって様々です。)
一方、(普通の)サーボでは、PWMは20kHzとか50kHzとか、かなり高周波でON/OFFさせています。例えば2枚の100円玉をめちゃめちゃ速くすり合わせると残像で3枚に見えたりしますよね。でも、残念ながらどれも透けた100円玉になってしまいます。本当に増えてくれれば朝から晩まで100円玉をこするのですが。。。(それなら100円玉高速スリスリロボットを開発します)
これと同じ要領(?)で、高速にON/OFFすると、残像で擬似的に電圧が変わって見えるんです。例えば5Vの信号で、50%デューティにすると2.5Vに、10%デューティにすると0.5Vに。
DCモータはみなさんもご存知の通り、両端子の間に入れる電圧(電池の本数)によって回転数が変わります。しかし、いちいちモータの回転数を変化させるために、電池の本数を手動で入れ替えていたのでは制御は間に合いません。そこで登場したのがPWM。単一電源(例えば24Vとか)で、擬似的に0〜24Vの電圧を生成する方法です。つまり、電源を入れた/切った/入れた/切った・・・を高速に繰り返すと、モータのイナーシャで、ある一定速度で回転してくれるんです。ONの時間が短いとゆっくり、長いと速く回転します。
じゃぁ、電源とモータの間に可変抵抗器を取り付けて、分圧回路の要領で、モータ両端にかかる電圧を変化させれば良いじゃん。という方もいらっしゃると思います。確かに出来ます。
が、抵抗器というのはエネルギーを熱に変換する装置のため、エネルギーロスが起きます。限られたバッテリで動くロボットにとってそれはもったいない。ロボットも環境にやさしくないといけません。PWMは電源を高速でON/OFFしているので、理論上途中でのエネルギーロスはありません。モータのイナーシャを巧く使っているからです。
東京と大阪を頻繁に行き来している私ももっと頻繁になれば、擬似的に名古屋にいた。ということは起きないんでしょうか?でも、東京の自分、大阪の自分、名古屋の自分、どれも半透明な人間ですが。