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

2020年2月8日(土) 20:19

予備動作試験

 液晶ディスプレイまでセットした、フルの試験環境が完成。
 2ピンヘッダーを用意するだけでLCDが使えるというのは、現実に非常に便利。受信機脇に増設した、5Vの「サービスコンセント」が良い仕事している。

 まず、走行制御PICから手を加える。
 旋回試験で使用したポートC直接出力の8本のうち、MSB側の3本をSPI送信に流用する。MCCでC7とC6とC5をSPI用の名称に書き換え、SPI送信ルーチンを追加。スロットル値をSPI送信するよう修正したソフトをPICに書き込む。

 続いて、SPI受信側ソフトを作成し、受信値をポートCに出力する。これを書き込んだPICを、20ピンの空きソケットに挿入。PICはソフトを修正する度に頻繁に抜き挿しするため、ソケット2段重ねで抜き易いようにしている。しかし、この手の単純処理PICは修正回数が少ないので、最初からソケットに直接挿入している。
 SPI送受信は多用しているので標準ルーチンが出来ていて、ピンアサインさえ間違えていなければまずトラブルは発生しない。

 最後に本命28ピンPICに、ブラシレス試験用プログラムを書き込む。
 これは、マイクロステップもどきのオープンループ制御ドライバーが基本である。いちおう速度は決め打ちではなく、スロットル入力値で可変になるよう修正してある。
 そして重要なのは、ホールセンサーによる割り込み。割り込みルーチン内で、電気角を読み取るようにしている。ブラシレスモーターのドライブでは通常、ホールセンサーの状態から電気角を判断し、それに基づいてドライブする。しかしこのオープンループ方式では、ホールセンサーを無視して電気角を変化させている。

 要するに、ホールセンサーの変化がどの電気角で発生しているか、を調べているのだ。
 結果はLCDに表示させ、ついでにスロットル値も表示させて正常に送受信できているかどうか確認している。こうして、スロットル値は期待通りに読めていることが分かった。
 だが、ホールセンサーが取得した電気角はおかしい。値が安定せず、しばしば変化せず、つまりはセンサー値を正常に取得できているかどうか怪しい。

 ホールセンサーの仕様は、モーターによって異なる。だが、ラジコン用の場合はセンサーコードやESCはモーターが変わっても使い回せる。つまり、ラジコンショップで売っている540ブラシレスモーターであれば、同一仕様であると考えられる。そこで、ラジコン用ブラシレスモーターだけ調べると、どうやらホールセンサーはオープンドレイン出力らしい。
 すなわち、出力にプルアップが必要。

 ホールセンサーを読み取るPICピンに、内部プルアップを設定。これで、一気に値が安定するようになった。

 ただし、取得できた電気角はブレが大きく、綺麗に6通りに分かれるようなことはなかった。クロースドループ制御に変更するときの参考には、できない。

written by higashino [Sタンク 1/16] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

Comments

TrackBacks

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

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4