Darkside(リンクエラー修正しました)

2018年12月03日の記事

2018年12月3日(月) 21:48

PWM発振失敗

 SPI受信できていなくても、適当な値を受信したことにしてやればモーター動作の確認はできる。

 ニュートラルが128で、最高速前進が255である。そこで、左右とも200が受信できたものとして処理する。

 ラジコン戦車本体の電源を入れたとたん、左右のキャタピラが期待通りの速度で動いた。ただし、期待と逆方向に。
 これ自体は、いい。Hブリッジで、どっちを前進としどっちを後退にするか、は曖昧であって取り違えることは良くある。そんなものは、ソフトをちょっと書き換えれば済む話だ。

 問題は、0.3秒ぐらい動いたらヒューズがオレンジ色に輝いて切れたこと。
 送信機には、死亡直前のテレメトリーが残っていた。普段は拝めない低電圧の、戦車バッテリーである。

 何てこった!
 SPI受信ができないばかりか、肝心のモーター制御までヒューズが飛んだ。しかも、モーターが動いたうえで。モーターが動かずにヒューズが飛んだのであれば、配線ミスだろう。あるいは、ピンアサインミスだろう。コネクターから先は旧バトルタンクのままなのだから、慎重に確認して製作したら、単なるピンの取り違えという可能性は低い。そう、確かにモーターは動いた。動いて、ヒューズが飛んだ。
 完全に想定外の不具合が、発生している。

 ここで、大きなミスに気付いた。それは、モーター制御の回路図だ。7年前に製作した回路を、再確認しなかったミスだ。そう、ハイサイドはP型FETを普通に駆動しているため、逆論理なのだ。PICから1を出力すればOFFで、0を出力すればONです。それを、ONにするつもりで1を出力していた。

 ハイサイドはPWMなので、ペリフェラル設定を Active-Hi から Active-Lo に変更。MCC上でサクっと済む。あっさり解決、と思ったら動かない。
 ソフトを更にいじっていると、またヒューズ(30円)が飛んだ。
 モーター制御回路に接続しているコネクターを外し、出力信号を確認する。何だこれ?PWM出力されていない。

 送信機の振動モーターを動作させるのにもPWMを使用していて、期待通りに動作している。すべてMCCに任せているので、機種の差も吸収されている。なぜ、動かない?

written by higashino [バトルタンク改造Tiger1] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL
Darkside(リンクエラー修正しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4