Raspberry PiでDCモーターを制御したい

n13i/rpi-motorserver · GitHub

資材

PWM出力

balancedとmark:space

clockとrange

  • clockは分周比
    • 19.2 / clock(2~4095) / range [MHz]
    • HIGH/LOWを切り替える最小単位が19.2/clock[MHz]になる
  • BD6211Fの仕様(20kHz~100kHz)に適合するには
    • clock = 8, range = 100 だと24kHz

モーターの電源

制約

  • 今回使うモータードライバは信号(RasPi)系の電源と負荷(モーター)系の電源が分かれていない
  • 信号入力に電源電圧以上かけちゃダメ
  • 信号入力は電源電圧にかかわらず2V以上でH

対応

  • アイソレーションする回路作りゃいいんだろうけど横着
  • モータードライバへの電源はNi-MH二次電池×4で5V前後を供給
    • このモーターは元々3Vで動作していたので,フルパワー出力するとまずそう
    • 50%ぐらいを超えないようにPWM制御する
  • Raspberry PiのGPIOからの信号出力(3.3V)をダイオードを通して2.8Vぐらいまで落として信号入力へ
    • モータードライバへの電源である電池の終止電圧時でも2.8Vは下回らないと想定
      • 電池外したらどうなるんだろう

Raspberry Piの電源

乾電池からUSB電源にするやつ