モーターAを回転速度0、ブレーキ有効で動かす:

nxt_motor_set_speed(NXT_PORT_A, 0, 1);
  1. [吉田] お、ブレーキ!!固定できそうじゃん!!こんな感じで動かしてみれば良いかな。

検証タスク:

TASK(Main) {
    while (1) {
       nxt_motor_set_speed(NXT_PORT_A, 0, 1);
    }
}

  1. [吉田] 。。。んー。なんか、倒れてきちゃうよ。ブレーキ効いてるのかな?ブレーキモードってこんなもんなのかな?
  2. [舟元] 確かに倒れてきちゃうね。ブレーキは効いてるみたいだし、こんなもんなのかな。ブレーキだと弱くて支えられないね。
  3. [吉田] えー、じゃあ、作戦失敗!?
  4. [舟元] 大丈夫、まだ策はある!!モーターの回転角度が取得できるから、その回転角度を意図する角度になるように制御すればできるんじゃないかな。
  5. [吉田] っ!!(@。@
  6. [舟元] ライントレースのときの、「白だったら右、黒だったら左」と同じ感じってこと。
  7. [吉田] あーなるほどぉ。それじゃぁ、こういうことかな。

モーター回転角度を目標値にして制御:

TASK(Main) {
    // 目標とする角度
    static const int ROTATE = 60;
    int current = ROTATE;
    nxt_motor_set_count(NXT_PORT_A, 0);
    while (1) {
        current = nxt_motor_get_count(NXT_PORT_A);
        if (current > 0) {
            nxt_motor_set_speed(NXT_PORT_A, 20, 1);
        } else {
            nxt_motor_set_speed(NXT_PORT_A, -20, 1);
        }
    }
}
  1. [舟元] そうそう、そういうことだね。
  2. [吉田] お。おぉ!!今度は、しっかり支えてる!!
  3. [舟元] 良い感じだね。倒立制御→後傾走行、後傾走行→倒立制御も、尻尾の操作だけでどうにかなりそうだよ。 後傾したままの走行も含めてまとめるね。
フェーズ走り方
倒立制御→後傾走行倒立制御の前進量を0としてから、尻尾を下ろしていく。 ※尻尾側に重心が移るので前に倒れてしまうことは、ほぼ無い。
後傾走行前述のとおり、尻尾を走行体を支える位置に制御し続ける。
後傾走行→倒立制御一度、走行体を垂直に近くなるよう尻尾で起こしてから倒立制御を再開する。
  1. [吉田] これで、ルックアップゲートは攻略できそうだね!!なんだか、コース全体を考えると、難しくて、ゴチャゴチャしちゃうけど、難所ごとに考えれば、意外と簡単だね。
  2. [舟元] そうだね。難しい問題も簡単に実装できるようにするのも、設計時の腕の見せ所だね。

まとめ

  1. [吉田] 今回は、設計と難所の攻略をやってみました。「どうやって作れば良いか」が「設計する」ってことらしいのですが、まだ実装の経験が乏しいし設計と言われてもピンときませんでした。もっと、他人の作ったものを読んだり、自分で作ってみないとダメですね。

【参照リンク】

<サイト最終アクセス:2011.10>

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30