<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/etrobocon_pattern/">
    <title>ETロボットコンテストのためのパターンランゲージ</title>
    <link>http://w.atwiki.jp/etrobocon_pattern/</link>
    <atom:link href="https://w.atwiki.jp/etrobocon_pattern/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>ETロボットコンテストのためのパターンランゲージ</description>

    <dc:language>ja</dc:language>
    <dc:date>2012-12-20T16:29:48+09:00</dc:date>
    <utime>1355988588</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/55.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/54.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/53.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/52.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/51.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/50.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/49.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/48.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/47.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/etrobocon_pattern/pages/46.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/55.html">
    <title>フラグ管理</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/55.html</link>
    <description>
      **状況
走行体にそれぞれ難所によってモードを変化させる機能がついているとき。

**問題
難所によってモードを変化させる機能をつけたとしても、機能しているかは見た目で判断しにくい。

**フォース
-[[自己位置推定]]を実装している
-場面変化のモードの変化のさせかたは、int型の値等で変化させている
-走行体に変化を与えることができる

**解決策
＜[[ログで状態確認]]＞
走行体にはログとして値を与えることができ、ジャイロセンサーなどの値の変化によって難所の場面変化がきちんとなされているかログを見ることで把握することができる。また、実際にそれらのログを見ることで、場面変化が行われているか確認することができた。

＜走行体にわかりやすい動きをさせる＞
場面が切り替わった瞬間に以下の動きをさせることによって、確認できる。
・しっぽを下す
・エラーを起こして走行体を止める
・音を出す    </description>
    <dc:date>2012-12-20T16:29:48+09:00</dc:date>
    <utime>1355988588</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/54.html">
    <title>チームの親睦</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/54.html</link>
    <description>
      **状況
お互いのメンバーとあまり関わりがないとき。

**問題
チーム全体の雰囲気が悪いと、コミュニケーションが不足してコンテストに対するモチベーションが下がってしまう。

**フォース
-[[シニアとジュニア]]で別れるなど、ETロボコンの知識が近い
-チームのメンバーが集まれる機会がある

**解決策
チームメンバーで飲み会をするなど、親睦を深めるイベントを開催する。また、メンバーも互いに仲良くなるように努力するべきである。チームの親睦が深まれば、様々な提案や、[[大きな目標]]も立てやすくなり、[[大会規約の分担]]などを積極的に行うことができる。また、[[頼み上手]]を行える環境も比較的容易となる。    </description>
    <dc:date>2012-12-20T17:27:01+09:00</dc:date>
    <utime>1355992021</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/53.html">
    <title>問題の原因探索</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/53.html</link>
    <description>
      **状況
走行体が予想と違う動きをするとき。

**問題
何が問題で走行体が予想と違う動きをしているか分からないと、そもそも問題がわからないので修正のしようがない。

**フォース
-パターンランゲージで考えられる問題を把握することができる
-肉眼でロボットの挙動を把握することはできる
-ソースコードレベルの問題は肉眼では把握できない

**解決策
ロボットの挙動をきちんと観察することが重要である。例えば、走行体はまっすぐ進んでいるか、電池は充電されているか、コースにしわはないか、などといった点である。観察した上で下記のパターンと状況が一致しているか確認する。
・[[コースの再現]]
・[[いつもフル充電]]
・[[モータの性能差]]
・[[自己位置推定]]
・メモリエラー    </description>
    <dc:date>2012-12-20T17:25:36+09:00</dc:date>
    <utime>1355991936</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/52.html">
    <title>スタートを万全に</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/52.html</link>
    <description>
      **状況
地区大会やチャンピオンシップなどで走行体をスタートさせるとき。

**問題
色の値を取り忘れていたりすると、たとえ完璧に実装してあっても走行体はスタートしない。

**フォース
-本番（地区大会やチャンピオンシップ）で、必ずスタートに失敗してはならない
-[[現場チューン]]ができる
-[[キャリブレーション式]]や[[まいまい式]]など、色を取るシチュエーションが存在する
-本番は緊張するので手の震えなどが生じる

**解決策
スタート前に確認すべきことをリストにしておき、何回もシミュレーションを重ねておく。
また、手の震えなどによって、タッチセンサーのスタートに失敗してしまう可能性があるので、
なるべくBluetoothでスタートを実装させることを目標にする。
また、リモートスタートの失敗に備えて、ボタンスタートもできるようにするのがベストである。

以下に確認すべき内容を記す。
・ケーブルの抜けの確認
・ラインの右側に置くか左側に置くかの確認
・インコース、アウトコースの確認    </description>
    <dc:date>2012-12-20T16:38:06+09:00</dc:date>
    <utime>1355989086</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/51.html">
    <title>頼み上手</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/51.html</link>
    <description>
      **状況
何かしらの問題に衝突したとき
また、忙しくて開発に携われないとき

**問題
ETロボコンに参加していた人間でないと、解決できない問題が存在する
しかし、初めての人間にとっては、それを知るすべはない
また、仕事の合間を縫って開発するETロボコンでは、開発に携われない期間がどうしても存在してしまう

**フォース
-チームメンバーが複数存在する
-近くにETロボコンに詳しい人間がいる
-環境開発や組み込み系に詳しい上司・先輩がいる
-[[チームの親睦]]がとれている

**解決策
上司や同僚・友人に「うまく」頼む。「うまく」とは、頼られた、信頼されることにうれしさを感じさせることを意味する。特に女性が男性に頼むと効果的である。    </description>
    <dc:date>2012-12-17T14:27:04+09:00</dc:date>
    <utime>1355722024</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/50.html">
    <title>灰色無視走行</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/50.html</link>
    <description>
      **状況
しっぽを下げて、灰色のラインを通らなければならないとき。

**問題
灰色の検知はかなり難しい。特にしっぽを下げて走行していると困難を極める。
そのため、ライトセンサーで感知することができず、コースアウトを招く。
また、灰色を検知ができないと、難所の手前にいるのか走行体自身が把握できない。
そのため、難所を走行するモードに切り替えることができない。

**フォース
-[[直線走行]]ができる。
-[[自己位置推定]]で、灰色の場所を走行体が把握することができる。

**解決策
灰色を検知できない場合は、[[自己位置推定]]と[[直線走行]]を組み合わせることで解決できる。
[[自己位置推定]]で灰色の場所を予想し、そのまま[[直線走行]]を行うことで灰色の検知を行わずに突破できる。

**事例
実際にこの実装によって、灰色検知をおこなわずにルックアップゲートを攻略した（２０１１年度）    </description>
    <dc:date>2013-12-26T19:34:51+09:00</dc:date>
    <utime>1388054091</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/49.html">
    <title>ログで状態確認</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/49.html</link>
    <description>
      ログで状態確認→[[フラグ管理]]    </description>
    <dc:date>2012-12-20T16:32:43+09:00</dc:date>
    <utime>1355988763</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/48.html">
    <title>自己位置推定</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/48.html</link>
    <description>
      **状況
走行体がどこを走っているか、走行体自身が把握していないとき。

**問題
走行体がコースのどの部分を走っているか走行体自身が把握していないと、
難所ポイントに差し掛かった際、走行体がどのような駆動をすればよいか決定できない。

**フォース
-ログを取ることが出来る
-走行体にどの場所を走っているか、走行中に開発者が伝えることはできない
-[[コースの再現]]が出来ている

**解決策
角度と距離、時間、ジャイロセンサーの値を利用して、走行体自身がコースのどこを走っているかを把握する。
具体的には、練習の走行の際に、各コーナーを曲がる角度と距離、時間を観測しておく。
その値と参照することで走行体の現在地を走行体自身が知ることができる。
また、障害物を検知する方法として、障害物が接触したときのジャイロセンサーの値を観測することで
ジャイロセンサーの値が変更されたタイミングと照らし合わせることにより、走行体が障害物を検知することができる。

**事例
[[自己位置推定]]することで、難所ポイント手前でしっぽを収納することや様々な作戦の切り替えを行うことが出来た。
※切り替えの確認については[[ログで状態確認]]を参照
ただし、[[自己位置推定]]はあくまでも、観測の値にずれがない場合成功する。
よって、途中で若干のコースアウトや予期せぬ事態（他の障害物にあたる）ことがあると、
時間や角度の値が信用できないものとなる。この場合、値の変更によってガレージイン手前で停止するチームが続出した。     </description>
    <dc:date>2012-12-19T17:24:35+09:00</dc:date>
    <utime>1355905475</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/47.html">
    <title>直線走行</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/47.html</link>
    <description>
      **状況
光センサーに依存することができない走行を必要とするとき。
つまり、光センサーでは拾えないような灰色のラインや黒いラインが存在しない難所を走行したいとき。
もしくは、スピードや段差を登る必要とする走行を実装したいとき。

**問題
・光センサーに依存ができない時
光センサーに依存することができないため、初めから自動的に走行体が動くような仕組みを埋め込まなければならない。
しかし、それらの状況は頻繁に起きるため、それぞれの場所において実装するとコストがかかる。

・スピードを要する時（階段やシーソーなどの段差を上る時）
ライントレースをしながらスピードを出すことはとても難しい。
なぜなら、ラインをトレースすることによって、走行体が左右に常にぶれてしまうからだ。

**フォース
-[[モーターの性能差]]を解決している。
-[[コースの再現]]をしている。

**解決策
直線的にロボットが自動的に走行できるシステムを開発する。
直線走行の実装方法は、[[モータの性能差]]に記してある。

直線走行は様々な場面で応用できる。
[[マッピング走行]]をしたいとき：
直線走行を組み合わせることによって、大抵のコースを走行することができる。
ただし、その場で回転する仕組みを作る必要がある。

スピードや段差を登る必要があるとき：
ラインを無視して、直線走行を用いるとスピードをあげることができる。
さらに急な加速を求める場合は、[[急発進急停止]]を参考にすると良い。

また、走行体がまっすぐ段差に対してまっすぐ入るように実装しないと
段差を登る際に走行体の片方の車輪が脱輪してしまうので注意が必要である。

**事例
実際の大会においても、シーソーや階段を攻略することができた。
また、灰色のラインでは、ライントレースを無視した走行を可能にした。    </description>
    <dc:date>2013-12-25T19:51:40+09:00</dc:date>
    <utime>1387968700</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/etrobocon_pattern/pages/46.html">
    <title>急発進急停止</title>
    <link>https://w.atwiki.jp/etrobocon_pattern/pages/46.html</link>
    <description>
      **状況
難所ポイントの段差を上らなければならないとき。

**問題
通常の走行速度では、段差を上ることはできない。
ぎりぎり上れたとしても、倒立振子の制御が追い付かず走行体がふらついてしまう。

**フォース
-通常のスピードより速い加速が必要である
-上りきった直後も止まる必要がある
-[[いつもフル充電]]している

**解決策
急発進・急停止の要素技術を走行体に搭載することによって、
段差においても走行体をなるべくふらつかせずに走行することが可能になる。
ただし、[[モータの性能差]]があるため、走行体が段差に対してまっすぐ入るように実装する必要がある。  
また、急発進する際にジャイロ値をいじらないと[[急発進急停止]]は実装できない。    </description>
    <dc:date>2012-12-19T16:56:18+09:00</dc:date>
    <utime>1355903778</utime>
  </item>
  </rdf:RDF>
