かみやんの技術者ブログ

主にプログラムの話です

直進制御、P制御を実装してみました〜

前の日のエントリで、ロータリエンコーダ板のすべり止めテープが少し横にずれるだけで透過型フォトインタラプタのギャップにぶつかると書いたが、ロータリエンコーダ板3mmに対して、3mmのテープを貼ったため。ということでまずは2mmのテープに張り替えた。

次。

同様に前の日のエントリで、「モータのノイズで余分なカウントアップが大量に走っていたらどうしよう」と書いたが、まずは、オシロスコープ スティングレイで、モータを回しているときのロータリエンコーダの出力を計測した。
「二足歩行ロボット自作入門」という超気合いの入った本を書いた吉野さんのW6でもモータのノイズでロータリエンコーダのカウントで苦労したとあったので、ちょっと怖い。

やはりコンスタントにモータのノイズが乗っている。が、誤判定するほどではない。マイコンからみたON・OFFはたぶん2V以下が閾値。この図を見る限り4V以下になっていない。

結果的には、配線を調べたところハーネスの断線だった。断線でハイインピーダンス(ピンの先が何もつながっていない状態)になっただけでカウンタ回路は誤動作するものなんだろうか。よく分からない。ハーネスが断線した理由は、前日のエントリにも書いたが、電源基板、モータドライバ基板、マイコン基板を適当に置いたままロボットを走らせたので、ガンガン揺れて断線したものと思われる。

というわけで真面目にスタック。

最初、基板間のスペーサをどうしたものかと思ったが、東急ハンズで内径3mmの塩ビパイプが売っていたのでそれを切って使うことにした。1mで200円ぐらいと安いので、好きなだけ好きな長さでスペーサが作れる。ネジは、M3の長さ20mm、30mm、40mm、50mm、60mmを買ってきた。ネジは10本100円ぐらい。

あとバッテリも台車にビニールテープで固定。スタックした基板もテープで固定。(下記)

あと、試走しているとモータ(タミヤ 540K75)と車輪を結合している六角シャフトのイモネジがすぐに緩んできた。というか1、2回試走するだけで緩む。本にDカット+イモネジの固定はあんまりいい固定ではないとあったが、こんなに緩むものか。
という訳でネジロック剤を使うことにした。ツクモロボット王国で買った中強度のやつ。ネジロックは強力なものを選ぶと2度と取れないというぐらいロックされるらしいので中強度。

あと、試走中に壁に激突してモータ固定台の接着部が壊れた。やはりモータ固定台を接着で作るのは間違っているかな。

という訳で昨日の問題は主に断線だったので、直進の制御の続き。とりあえずP制御(比例制御)のみということでユラユラゆれる。

動きをよく見ているとやはりスタート時にスリップしている。スリップの量が左右の動輪で違うために最初に向きがずれることがおおい。まだ台形速度制御をしてないせいもあるが。
つぎは、D制御(微分制御)を追加して、P-D制御として、まっすぐ進むようにしたいなー。

#しかし、こういう制御って大学で習ったし、学生実験でもなんか計測して、解析的にゲインを求めて最速で目標値に近づけて収束させるというようなことをやったのだが。さっぱり覚えていない。もう一度制御の教科書読み直しですね。