そろそろ9月が終わってしまいますね…。
マウスの方は、探索時の壁切れが安定しました。少し調整してみたら良くなって、柱でも切れ目読めているのでまぁまぁ良さげです。
斜めの制御は入れているつもりですがかかっていないみたいなので、見直してみます。
櫛壁制御も、探索の時は入れるようにしました。ないよりは良くなったように思えます。
という感じで機能は少しずつ増えていますが安定感がまだまだで、今日は8×9の迷路で初回8区画櫛、斜めからの斜め、V90n回という感じのコースでやってみましたが、探索はまだしも最短はほとんど走れずという感じでした。
原因を整理していくと
・探索
吸い込まれ現象の対策が効いていません。特に片壁→両壁なしのパターンが悲惨です。あと片方だけ櫛の時もなかなかひどくフラフラします。
・最短
とりあえず櫛でずれています。あと壁切れが欲しいです。内側の柱にぶつかってばかりです。135とV90が攻めすぎなのかもしれないのですが走れる時がたまにあることを考えるとそれまでのずれが大きいだけなように思います。
なかなか安定させるのは難しいですね。東日本が近づいていますが、結構きついかもです。
とりあえず吸い込まれ現象の対策のところの調整をして、最短に壁切れを入れたいですね。ただ、この機体少し壁切れを読むタイミングが遅いようなのですが、大丈夫なのでしょうかね。
最短の櫛壁制御はどうすればできるのでしょうか。なかなか課題は多いですね。東日本では安定した探索と遅くても良いので最短を決めること目標ですかね。
今日はこの辺で。
2017年9月25日月曜日
斜め走行実装!
東日本まで少しずつ迫っていますね。そろそろマウスシーズンですね。
えっと、また前回から少し空いてしまいました。
壁制御に関してはジャイロのI成分を入れたらフラつきが減りました。減速域に制御かけるようにしたら高速時でも真ん中に復帰するようになりました。
壁切れも実装してみてもみましたが、判定の仕方が悪いのか調整不足かわかりませんがずれてしまいます。出来なくなさそうなことは確認しました。
その後は、とりあえず調整よりもできることを増やそうという感じで、ひたすら斜め走行の最短プログラムを作成しました。何日もかけて、ようやく書けたと思ったらプログラムの行数が1300行以上増えていて、驚きました。
今日、それで走らせてみました。一気に書いたので大きなバグがないと良いなと思いましたが、細かいバグ(斜めの距離がおかしくなる、向きが逆、パラメータの計算を間違えている、など)はありましたが、直したら、斜め走行が出来るようになりました!
場合分けが多くなかなか大変でした。そのぶん出来た時はとても嬉しかったです。一応5種類のターンのパラメータや速度を変えられるように、ゴール区画では真っ直ぐ止まるようになっているのでなかなか良く出来たのではないでしょうか。
今後はセンサー系の制御を導入、調整が中心になると思います。とりあえず、
・斜め直進中壁制御
・壁切れ補正(探索、最短共に)
・櫛壁制御
・壁制御の壁切れ時の値の調整
・パラメータごとのゲイン調整
どれもなかなか難しいと思いますが、とりあえず上の2つを導入したいと思います。
導入できることを導入して、1通り出来たら調整という流れでいきます。
今日はこの辺で。
えっと、また前回から少し空いてしまいました。
壁制御に関してはジャイロのI成分を入れたらフラつきが減りました。減速域に制御かけるようにしたら高速時でも真ん中に復帰するようになりました。
壁切れも実装してみてもみましたが、判定の仕方が悪いのか調整不足かわかりませんがずれてしまいます。出来なくなさそうなことは確認しました。
その後は、とりあえず調整よりもできることを増やそうという感じで、ひたすら斜め走行の最短プログラムを作成しました。何日もかけて、ようやく書けたと思ったらプログラムの行数が1300行以上増えていて、驚きました。
今日、それで走らせてみました。一気に書いたので大きなバグがないと良いなと思いましたが、細かいバグ(斜めの距離がおかしくなる、向きが逆、パラメータの計算を間違えている、など)はありましたが、直したら、斜め走行が出来るようになりました!
場合分けが多くなかなか大変でした。そのぶん出来た時はとても嬉しかったです。一応5種類のターンのパラメータや速度を変えられるように、ゴール区画では真っ直ぐ止まるようになっているのでなかなか良く出来たのではないでしょうか。
今後はセンサー系の制御を導入、調整が中心になると思います。とりあえず、
・斜め直進中壁制御
・壁切れ補正(探索、最短共に)
・櫛壁制御
・壁制御の壁切れ時の値の調整
・パラメータごとのゲイン調整
どれもなかなか難しいと思いますが、とりあえず上の2つを導入したいと思います。
導入できることを導入して、1通り出来たら調整という流れでいきます。
今日はこの辺で。
2017年9月19日火曜日
マウスその後
試しに迷路で走らせてみました。
壁制御に関しては前よりはかなり良くなったように見えました。真ん中をたどってくれるようになったようなので、とりあえず良かったです。
ただ、減速域で壁制御を切っているために、高速域ではほとんど制御が書けられていないことに気づきました。今度修正せねばです。
また、切れ目に対してもどうなのか分からないので、少し広めの迷路で試すべきかもしれません。直進で微妙にグラグラしているように見えなくもないので、一度ジャイロのIゲインを入れても良いかもですね。
あと、よく分からないのですが何故か最短走行のモードが起動しないバグ(?)に遭遇しました。時間なかったので良く分からないのですが、なんか仕込みましたっけ…?
なかなかやることが多いので、整理します。
・減速域の壁制御
・Iゲインを入れて試す
・探索時の壁切れ
・櫛壁制御
・探索の思考時間を考慮した部分のバグ取り
・斜め走行
斜め走行、やりたいですよね。ただまずは探索の安定性を上げていきたいと思います。
今日はこの辺で。
2017年9月18日月曜日
吸引実装&壁制御改善?
少し放置気味でした。
これまでやったことをまとめていきます。
前回投稿した翌日、壁制御を直すためにソフトを改修しようとしたと思います。でも、どうもダメだったように思います。正直だいぶ前で詳しくは忘れましたが、ミスやバグを抱えまくっていた気がします。
その翌日。壁制御出来ない上迷路で調整もできない日だったので、吸引機構を使える状態にしました。ファンを1つ手を滑らせて壊してしまいましたが、なんとか2次スカートまで付けて使える状態になりました。Duty30%で130g程度吸えているので結構良くできたと思います。
その次の日。とりあえず吸引の効果を試すためにパラメータ高めのサーキットをやらせてみました。結論、効果絶大でした。ターンは1.0m/sでフラついていたのに、吸うと1.4m/sまでは安定して、1.6m/sでもたまに走れるくらいになりました。さすがに驚きました。壁制御なし、調整なしで走っているので吸引の力はすごいですね。
ただ、サーキットモードだとモーターのトルク不足感があって、直進速と加速度がそこそこなところでフェールセーフがかかってしまいます。まぁ、DC初年度なので、これくらいの方がもしろ制御しやすい気がします。
その後は壁制御の根本を変更しました。前までは角速度をP制御していましたが、調べてみるとあまり良くないようだったので、角加速度をPD補償してやるように変えたと思います。安定はしませんでしたが、とりあえず変えたと思います。
さらに次の日。調整しようとしたら、突如モーターが少ししか回らなくなりました。?という感じで、しかも動くときと動かない時がある…これはハードだなと分かりましたが、この日はそれの原因をひたすら追求していました。両輪が回らなくなるのでケーブルの接触ではないし、元気な時もあるからモータードライバとも考えにくい、などと色々試したいたところバッテリー電源を監視するA/D変換がうまくいっていないことを突き止めて終了でした。
そして昨日。そこの修理をしました。分圧抵抗の接触かと思いきやマイコンの半田不良でした。とりあえず直りました。
その後はひたすら壁制御の調整。目標加速度は正しくなっているのに目標速度が変わっているバグがあったので直しました。あと、ついでにセンサの近似化をする時に自然対数の結果で除算をしていることを考慮していないために値がマイナスになったり無限になったりする結構危険めなバグを修正しました。
ログを取りながらひたすら調整。上のバグからかもしれませんが目標角速度が20000°/sとかになることがあったので、偏差が大きすぎる時は抑えるように上限を定めて、そこそこ走れそうになりました。
そうしたら壁の切れ目に吸われてしまい、値を変えてもうまくいかないので切れ目を検知した時にはD項を切るようにしたらようやく走れそうな状態になってきました。
まだ迷路で探索させているわけではないのでどうなるかは分かりませんが、結構頑張りました。久々にかなり苦労しました。どうにかこれで壁制御は安定して欲しいですね…。
吸引が出来るようになったので、斜めもできるようになりたいところです。まぁ、まずは壁制御が大丈夫なことが確認できたら、というところですね。本当、そろそろ安定してもらいたいです。頼むよ…。
今日はこの辺で。
これまでやったことをまとめていきます。
前回投稿した翌日、壁制御を直すためにソフトを改修しようとしたと思います。でも、どうもダメだったように思います。正直だいぶ前で詳しくは忘れましたが、ミスやバグを抱えまくっていた気がします。
その翌日。壁制御出来ない上迷路で調整もできない日だったので、吸引機構を使える状態にしました。ファンを1つ手を滑らせて壊してしまいましたが、なんとか2次スカートまで付けて使える状態になりました。Duty30%で130g程度吸えているので結構良くできたと思います。
その次の日。とりあえず吸引の効果を試すためにパラメータ高めのサーキットをやらせてみました。結論、効果絶大でした。ターンは1.0m/sでフラついていたのに、吸うと1.4m/sまでは安定して、1.6m/sでもたまに走れるくらいになりました。さすがに驚きました。壁制御なし、調整なしで走っているので吸引の力はすごいですね。
ただ、サーキットモードだとモーターのトルク不足感があって、直進速と加速度がそこそこなところでフェールセーフがかかってしまいます。まぁ、DC初年度なので、これくらいの方がもしろ制御しやすい気がします。
その後は壁制御の根本を変更しました。前までは角速度をP制御していましたが、調べてみるとあまり良くないようだったので、角加速度をPD補償してやるように変えたと思います。安定はしませんでしたが、とりあえず変えたと思います。
さらに次の日。調整しようとしたら、突如モーターが少ししか回らなくなりました。?という感じで、しかも動くときと動かない時がある…これはハードだなと分かりましたが、この日はそれの原因をひたすら追求していました。両輪が回らなくなるのでケーブルの接触ではないし、元気な時もあるからモータードライバとも考えにくい、などと色々試したいたところバッテリー電源を監視するA/D変換がうまくいっていないことを突き止めて終了でした。
そして昨日。そこの修理をしました。分圧抵抗の接触かと思いきやマイコンの半田不良でした。とりあえず直りました。
その後はひたすら壁制御の調整。目標加速度は正しくなっているのに目標速度が変わっているバグがあったので直しました。あと、ついでにセンサの近似化をする時に自然対数の結果で除算をしていることを考慮していないために値がマイナスになったり無限になったりする結構危険めなバグを修正しました。
ログを取りながらひたすら調整。上のバグからかもしれませんが目標角速度が20000°/sとかになることがあったので、偏差が大きすぎる時は抑えるように上限を定めて、そこそこ走れそうになりました。
そうしたら壁の切れ目に吸われてしまい、値を変えてもうまくいかないので切れ目を検知した時にはD項を切るようにしたらようやく走れそうな状態になってきました。
まだ迷路で探索させているわけではないのでどうなるかは分かりませんが、結構頑張りました。久々にかなり苦労しました。どうにかこれで壁制御は安定して欲しいですね…。
吸引が出来るようになったので、斜めもできるようになりたいところです。まぁ、まずは壁制御が大丈夫なことが確認できたら、というところですね。本当、そろそろ安定してもらいたいです。頼むよ…。
今日はこの辺で。
2017年9月12日火曜日
壁制御…
マウスは良くなりつつもまだまだという感じです。
やったこととしては、まず軽く修理をしました。前から少し気にはなっていたのですが、ピニオンが外側すぎてたまにホイールに当たっていたので、固定を良くしました。
今日から壁制御に取り掛かっているのですが、壁制御難しいですね。入れるとどうも不安定になります。元の制御が悪いのか、と言ってもただ直進させるぶんには良さげなのに何故でしょう。ゲインの問題でしょうか。少し時間がかかるかもですね。
とりあえず壁制御は諦めてサーキットモード搭載しました。壁制御なしで3m/s、大回り90度実装したのでターンは適当ですが1m/sで走っています。加速度は8m/ssと抑え気味です。おそらくどれも抑え気味なのでまだまだ速くできると思います。
と言っても壁制御が不安定じゃあなーという感じですね。どうしましょうかね。
今日はこの辺で。
2017年9月8日金曜日
バグ発見
マウスはかなり良くなりました。
ログとったりなんども走らせたりして、ようやくこれまでの問題の大体が分かりました。
まず、ときより吹っ飛ぶ謎の挙動。ログを取ってようやく分かりました。エンコーダのカウントが、一定速を超えるとおかしくなっていたバグ(というかミス)でした。1m/sで走って1.2m/sで吹っ飛ぶのでバグと確信しログを取ってみて値がとんでもなくなっていて気付きました。
また、ずれは調整不足でした。スラロームを20回連続でやらせてターンを調整、タイヤ径も直進でテスト。袋小路バック後の距離もテストと、1通り調整しました。
これによって姿勢が綺麗になり壁誤検知も無くなりました。
ちなみに、壁制御を入れると不安定になるので、壁制御を今は切っています。ただ、4*8の迷路をほとんどずれずに走ってくれています。
最短もようやくDCらしくなり、今のパラメータは直進最高速3m/s、加速度12m/ss、ターン0.8m/sとかなり速くなりました。
今後は壁制御を改善して導入、それが出来たら斜めや最短での壁切れなどをやっていきたいと思っています。
今日はこの辺で。
ログとったりなんども走らせたりして、ようやくこれまでの問題の大体が分かりました。
まず、ときより吹っ飛ぶ謎の挙動。ログを取ってようやく分かりました。エンコーダのカウントが、一定速を超えるとおかしくなっていたバグ(というかミス)でした。1m/sで走って1.2m/sで吹っ飛ぶのでバグと確信しログを取ってみて値がとんでもなくなっていて気付きました。
また、ずれは調整不足でした。スラロームを20回連続でやらせてターンを調整、タイヤ径も直進でテスト。袋小路バック後の距離もテストと、1通り調整しました。
これによって姿勢が綺麗になり壁誤検知も無くなりました。
ちなみに、壁制御を入れると不安定になるので、壁制御を今は切っています。ただ、4*8の迷路をほとんどずれずに走ってくれています。
最短もようやくDCらしくなり、今のパラメータは直進最高速3m/s、加速度12m/ss、ターン0.8m/sとかなり速くなりました。
今後は壁制御を改善して導入、それが出来たら斜めや最短での壁切れなどをやっていきたいと思っています。
今日はこの辺で。
2017年9月3日日曜日
まだ不安定
全日本の登録が始まっていますが、今年のマウスはなかなか良い動きをしていません。
進捗はあまりなく、袋小路バックと最短の加速がスムーズにならない仕様を直したくらいです。あと、ロジック電源が3.0Vで計算されているという意味のわからないミスも見つけました。多分FFのかかりが悪い気がしたのはこのせいです。
問題がなかなか多いので、まとめてみます。
・壁誤検知
これが今の一番の課題で、特に前壁をないと判定することがとても多いです。閾値変えると2区画先を読んでしまってという感じでうまくいっていません。何故でしょう。というか明らかに閾値が変な気がするんですよね。実測すると近似値が100~130くらいなのですが、350とかにしないとまずまともに判定しなくなってしまい、頭を抱えています。
・暴走
ターン時にときより吹っ飛びます。ゲインか壁制御か分からないです。
Iゲインが大きすぎる気もします。もしかしたらIで曲がっているかもです。
・ずれ
袋小路バックを入れてマシになりましたが、ずれが起こるような気がします。ゲイン関係でしょうか。
問題が多いのにそれの解決策が見えてこなくて今年の機体は難しいですね。
とりあえず走らせてみて、ゲインのあたりから解決していきましょうか。
今日はこの辺で。
進捗はあまりなく、袋小路バックと最短の加速がスムーズにならない仕様を直したくらいです。あと、ロジック電源が3.0Vで計算されているという意味のわからないミスも見つけました。多分FFのかかりが悪い気がしたのはこのせいです。
問題がなかなか多いので、まとめてみます。
・壁誤検知
これが今の一番の課題で、特に前壁をないと判定することがとても多いです。閾値変えると2区画先を読んでしまってという感じでうまくいっていません。何故でしょう。というか明らかに閾値が変な気がするんですよね。実測すると近似値が100~130くらいなのですが、350とかにしないとまずまともに判定しなくなってしまい、頭を抱えています。
・暴走
ターン時にときより吹っ飛びます。ゲインか壁制御か分からないです。
Iゲインが大きすぎる気もします。もしかしたらIで曲がっているかもです。
・ずれ
袋小路バックを入れてマシになりましたが、ずれが起こるような気がします。ゲイン関係でしょうか。
問題が多いのにそれの解決策が見えてこなくて今年の機体は難しいですね。
とりあえず走らせてみて、ゲインのあたりから解決していきましょうか。
今日はこの辺で。