名称

システム基本設計書

番号

MIRS-DSGN-0004


  
版 数 最終更新日 作 成 承 認 改 訂 記 事
A01 2009.7.10 金子 杉崎 第一版
A02 2009.10.2 杉崎 杉崎第二版




目次
1.はじめに
2.メカ分野について
3.エレキ分野について
4.ソフト分野について

1.はじめに

4班のMIRSのコンセプトはもし壁と衝突した場合にはベアリングローラで壁との摩擦を軽減し、さらにプログラムに関しての条件分岐がLEDで確認できるものにする。また、衝撃吸収のためにサスペンションを設置し、走行をより正確に遂行する。

2.メカ分野について


2-1 サスペンションについて

MIRS0904システム基本設計書で述べたように、キャスター部にサスペンションを実装する。


(1)取り付け位置

前部の超音波センサの横に取り付ける。下図参照。




fig.1 サスペンション取り付け位置


(2)動作原理

現状

    ・サスペンションの伸縮により、衝撃などを軽減する。
    ・下段シャーシのほうにボルトを通してスプリングを固定するはずだったが、シャーシにネジキリがされているため、ボルトが固定されてしまう. そこで、建築ボルトという先端だけネジキリされているもの、または、現在使用しているボルトを先端だけネジキリを残すことにより、シャーシ部分でのボルトの上下運動を実現する。
    ・また、下段シャーシの上部分に長方形の板を用意し、その間にサスペンションを挟み、ボルトを固定する。(板は下図参照)なお、前後のため、同じものを2セット作成する。



    (3)下段シャーシ上部の板について

      先に、記述したような設計を満足するようにアクリル板の加工のための寸法などの図を添付する。


    fig.2 下段シャーシ上部のアクリル板

    (4)部品表

    サスペンションとその周辺の部品表

    部品名
    数量
    アクリル板
     
    M3建築ボルト(または、M3ネジ)
    2
    M3ナット
    2
    サスペンション
    4

    2-2 ベアリングローラについて



    3.エレキ分野について


    LEDボード基本設 課題

    MIRSが行っている動作がわかるように、LEDボードを積むにはどうすればいいか?


    • FPGAの出力ピンからLEDボードにつなぎ、LEDを点滅させる。
    • FPGAからLEDを発光させるだけの電流を流すのではなく、LEDボード上でPICを使いLEDを発光させる。
    • LEDの点滅の仕方の決定は、PIC上で行う。
    • PICは馴染み深いPIC16F84を使う。入出力ポートもたくさんあるので実現可能だと思われる。
    • LEDボードは、昔実験で使っていたボードや、インターネットや文献を調べる。



    方法

    • FPGAのアドレスデコーダのVHDLファイルのOUTのピンを増やす。
    • CASE文にLEDボード用の信号を書き加える。
    • PICにLEDを点滅させるプログラムを入れる。(C言語、もしくはアセンブリ言語)  
    • シリアル通信での実現も検討する。

    •  

    予定

    詳細構想
    ボードの設計・VHDLの書き換え
    ボード作成・プログラム作成

    年内の完成を目指す。

      3.ソフト分野について


    • 通路、曲がり角、白線、ゴールについて
        左右の超音波センサの値を監視し、どちらかの値が小さくなりすぎたら、補正がかかるようにする。
        なお曲がり角は、タッチセンサの反応によって判断する。反応後少し後ろに下がり、方向を変える。
        また左右の超音波センサの値が大きいときは、なお白線センサにより、ある時間毎にDirection board判定用の白線がないか監視する。
        Direction boardの数字認識は3回までとする。それを超える場合、前方に少し移動し、白線センサで状態を確認する。
        このとき、白線と判断できないときはタッチセンサが反応するまで前進し、曲がり角の処理を行う。
        なおこのときは常に右に曲がるようにする。白線と判断したら、ゴールとする。
    • 小部屋について
        Direction boardの値によって小部屋と判定された場合とそうでない場合でプログラムを分ける。 Direction boardの値が取得できない場合は、正面と左右どちらかの超音波センサの値が大きくなったとき、正面に500mm前進し、そのとき左右どちらかの超音波センサの値が大きいままだったら小部屋と判断し、MIRSの向きはそのままで500mm後退する。 Direction boardの値が取得できたとき、小部屋の方向に500mm以上移動し超音波センサの値を見る。このとき左右の超音波センサの値を比べ、値が小さい(距離が近い)方へMIRS正面を向かせて、500mm移動する。値が同じ場合は右へ500mm移動する。移動の最中、タッチセンサが反応したら、曲がり角と判断し、向きを変える。壁に右か左かの超音波センサを常に近い状態にし、正面のタッチセンサの状態を見ながら移動する(壁伝いに移動することになる)。タッチセンサが反応したら、曲がり角の処理を行う。これを繰り返し、壁に隣接している超音波センサの値が大きくなったときを、小部屋の出口と判断する。出口を見つけたら、出口の方向にMIRS正面を向かせて500mm移動する。その後通路の処理に移行する。
    • ロータリーについて
        Direction boardによってロータリーと判定したら、前進し、向きを変えてタッチセンサが反応するまで前進する。
        タッチセンサに反応があったら、少し後退する。このときMIRSの向きは変えない。次に、MIRSの向きを右に変え250mm移動する。
        その後、右側の超音波センサの値を監視し、ある一定の値を保つように移動する。これによって、ロータリー内を移動する。
        次に、右側の超音波センサの値がある一定の値より大きくなったときを出口と判断し、MIRSの向きを変え、移動する。
        またDirection boardの値が取得できない場合は、タッチセンサの反応と、左右の超音波センサの値を用いてロータリーと判断する。
        具体的には、タッチセンサの反応があった場合、左右の超音波センサの値を確認し、ロータリーか否か判断する。
    • 数字認識
        白線センサによりDirection boardと判断したとき処理を行う。プログラムを改良し二つの数字を一度に認識できるようにしておく。認識したら、各課題に設定した優先順位に従い、各課題の処理に移行する。認識できない場合は、整体補正を行い再度認識を試みる。ただし再認識は2回までとする。それを超える場合については、通路、曲がり角、白線、ゴールについての項目を参照のこと。
    • 行き止まりかドア
        Direction boardによって判定した場合、基本進まないようにする。正面の超音波センサの値がある一定以下となったとき、タッチセンサが反応するまで前進する。タッチセンサが反応したら少し下がり、左右の超音波センサの値を確認する。その際、左右の値がある値以下ならば行き止まりと判断する。行き止まりならば、向きを180度変える。その後通路の処理に移行する。

      • Direction boardによって判定した場合、前進し、向きを変えてMIRSのタッチセンサが反応するまで進み反応したら後退する。その後、赤外線の反応を確認し、赤外線の反応が消えるのを確認するまで前進→MIRSのタッチセンサ反応→後退動作を繰り返す。赤外線の反応が消えたら、180度回転し、前進する。その後通路の処理に移行する。