かみやんの技術者ブログ

主にプログラムの話です

ノイズ対策5

H8-3069へ自分のプログラムをロード中に暴走する件ですが、もやねさんにプルアップ抵抗をつければいいのでは?
ということで、まず、H8マイコンのデータシートをみて内蔵でプルアップ機能があるか調べたところ、P1、P2、P4、P5のポートは内蔵していてレジスタをたたけばONになるようだったが、自分の使っているPAは内蔵していなかったのでつけました。
適当に、1kΩ。
うまく行きました。昨日、自分のプログラムをFlashROMに焼いていたので、H8簡易モニタ(load3069.mot)を書いて元に戻して、Toppers/JSPカーネルをリビルドして、自分のプログラムもリビルドしてOK。
h8writeでフラッシュに書き込むのに成功すると下記のような絵になる。

とりあえず、モータードライバ関連のノイズ対策はこれで解決。
<今回の対策で行ったことまとめ>

  1. 基板のベースフレーム(アルミ板)を用意して、各基板を固定(レイアウト調整、配線の調整)→手を近づけただけで暴走していたのが改善
  2. 基板のGNDをフレームグランドに接続(グランディング)→基板等に触れてもときどき暴走していたのが改善
  3. 電源OFF時にモータドライバの電荷を逃がすためにショートさせる(起動改善)→起動直後2秒ぐらい暴走していたのが改善
  4. プログラムロード中にPWM信号線が不安定なのでプルアップ抵抗追加(初期化前改善)→プログラムロード中に暴走していたのが改善

あとノイズ対策としてはロータリーエンコーダだな。
が、その前に走らせると東京オフィスの床だと滑るので(名古屋本社のときはカーペットっぽいものだったので滑らなかった&屋外でも滑らない)、車輪の太さを増したい。が、想定していなかったのでスペースがほとんどないので、現在6mmの幅を9mmにするのがいいところか。

ということで久しぶりにMODELAを起動して、ABS板で削りだそう。