センサのアームを最初長めに作ってたのですが,長すぎたようなのでカットして短くしました.
回路をチェックして,1箇所だけハンダミスがあり,修正.
簡単なプログラムを入れて動き出しました.
でも,ハードの制約から制御するのはけっこう難しいです.
まず,Arduinoでサーボとタイマー割り込みとPWMによるアナログ出力は同時に使えなかったのを見落としてて,モータのPWMが使えません.ソフト的にPWMをかけるにしても,処理が遅くてタイマーが5msより短くできないため,PWMというより,ON-OFFのタイミングを適当に変えた感じ.モータには結構な負荷がかかってるはずです.
モータが非力でギヤ比が大きく,レスポンスが遅すぎ.加速も減速も遅く,遅れが出るので制御が難しいです.
サーボのレスポンスも遅いのでラインを追従させるのが難しいです.
安価なエンコーダを使ったのですが,もともと性能が悪いのか,加工時に壊してしまったのか,裏ぶたに振動を加えるとチャタリング?で4回転分くらいカウントがずれます.速度フィードバックに不安ありです.
ジャイロは秋月さんで売ってるムラタのジャイロ.低回転用なので急に回すと飽和して非線形になります.
でも,制御の原理は分かったので安心しました.あとは気長にソフトに改良を加えて,ちゃんと走るようにしたら実験終わり.
なんでもないコーナーでコースアウトしてしまう情けない動画はこちら.