2014年2月9日日曜日

BrickPi お試し その3 (PORT_AとBのモータが動かない件の調査)

 BrickPi を使い始めて、すぐ(多分、初日、もしかすると、初期不良?)、モータのPORT_AとPORT_Bが効かなくなりました。はじめてサンプルプログラムを動かした時は動いたような?動かなかったような?はじめて動かした時はモータポートのCとDを使ったような気もするし・・・。そのあたりは曖昧なんですが、結果的に今はPORT_AとPORT_Bはまともに動きません。PORT_Aは片方向には回転するんですが、動きがおかしいです。また、PORT_Bは全く回転しません。(もちろん、同じモータをPORT_CかDにつなげば期待通りの動きをします。)



 そこで、まずは、公開されているBrickPiの回路図を参照してみました。実際のボード上の部品を見ていてなんとなく予想がついてはいましたが、PORT_AとB側とPORT_CとD側で回路がわかれていて、それぞれ別のモータドライバIC(SN754410)による実装となっています。となると、PORT_AとB側のこのSN754410が怪しいので、ロジアナで入出力を調べてみることにしました。


 まずは、正常なPORT_Cの入出力をロジアナでモニタしてみます。


 上から3つA0~A2が入力信号で、A0とA1がPWM入力とEnable信号の組み合わせ、A2が方向入力です。A2の方向入力の切り替えで、A3とA4の出力信号が変化しています。A3の位相が反転(On/Offのデューティ比が反転)して、同時にA4側のレベルが反転しています。結果的にモータは同じ速さで逆向きに回転することになります。これが、正しい動き。

 次に問題のPORT_AとPORT_Bを同じように調べてみました。






 A2の方向切り替え信号に怪しい波形が出ています。HブリッジICへの入力の時点ですでにおかしい(AtmelのコントローラATMEGA328からの出力)のでしょうか?


 ただ、もう片方は、PWM信号を入力している(Enableにもなっている)のに出力がHに張り付いたままになっていて、こちらはHブリッジICが機能していないように見えます。

 まずは、試しにSN754410 を入手して、交換してみるという感じでしょうか?SN754410自体は割りとポピュラーなHブリッジドライバICなので、秋月等でも手に入ると思われます。通販で部品入手したりして、調査の続きは来週だな・・・。