電源端子と PICkit3 に接続する端子を除けば、唯一未使用の18番ピンを P1A としてPWMを試してみました。 制御対象は手元にあったマブチモーター( RE-140RA )を FET( 2SK2232 )でドライブしています。

DSC00113

PIC18FのPWMは TIME2 を使う為、LCDと音声合成LSI制御に使っていた 2msec イベントタイーマーを TIMER2 から TIMER1 に移しています。 既存部分の回路変更はなく、PWM用の追加だけです。

1.5Vや3.0V定格のマブチモーターを5Vで駆動する場合に、供給電力を抑えてモーターの過熱を避ける目的でPWMを使います。 オープンループながら速度可変と言うおまけ付です。
今回は速度固定ですが、音声合成LSI が Ready 状態の(発声していない)間だけモーターが回転するようにしてみました。

ブラシローラー型水田除草ロボットの速度制御(フィードバック制御)でも使っているので、PWMのプログラムは確認済みですが、モーターのノイズ対策に時間を取られました。 別電源にしてみても効果が無く、結局写真のようにモーターの端子とケースの間にコンデンサーを付けて対策しました。

以下はPWM関連記事のインデックスにします。

PWM 2 設定  
 TIMER2を約 1kHz 周期に設定し、P1A端子 (だけ)をActive High のPWM出力に使用する設定を行います。

PWM 3 速度変更 
 メイン処理で速度を変更している部分の説明です。 

PWM 4 回路図 
 回路図とノイズ対策の話を書いてPWM関連記事を終わります。 ソース・ファイル(プロジェクト)をダウンロード出来ます。


楽々PIC」は楽しい道具を作りながら学ぶブログを目指します。