沼津高専 電子制御工学科
MIRS0101基本設計書
MIRS0101-DSGN-0002
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2002.1.24 全員 勝又俊介 初版
A02 2002.2.12 全員 勝又俊介 外観、ソフトウェア、機能性能の改正

目次

  1. はじめに
  2. システム概要
    1. ハードウェア
    2. ソフトウェア
    3. 競技会行動計画
  3. 諸元
    1. 外観
    2. 機能性能
  4. ハードウェア構成
    1. システム構成ツリー
    2. エレクトロニクス回路構成/機能
    3. エレクトロニクス回路基板
    4. ソフトウェアビジビリティ
  5. ソフトウェア構成
    1. ATL-MIRS 標準 ライブラリ
    2. 動作モードとその遷移
    3. モードのフローチャート
    4. モジュール定義
    5. ソフトウェア構成
    6. 試験機能
  6. システム試験

1 はじめに

本仕様書はMIRS2001競技規定に基づきMIRS0101チームの作成する自立型小型知能ロボットの基本仕様を記述する。

2 システム概要

  1. ハードウェア

    MIRS0101システムのハードウェアは標準MIRS(注1)に準ずる構成を有するが、MIRS0101固有の機能を実現するためにいくつかの変更点がある。以下、標準MIRSと異なる点のみ述べる。 (注1)開発ドキュメントは MIRSATLM ドキュメント管理台帳 を参照する。

  2. ソフトウェア

     RT-Linux (Ver.2.3) を OS とし、Linux のユーザプロセスとして行動制御 プログラムを起動する。

     赤外センサ、タッチセンサからの入力は、行動制御 プログラムから、定期的にドライバーを呼び出すことにより監視する。

     走行系の制御と超音波センサの制御は、RT タスクによって行い、RT-FIFO を 介して必要なデータ通信を行う。

     プログラムは、C 言語でコーディングする。

  3. 競技会行動計画

3 諸元

  1. 外観

    下に本システムの外観を示す。。図中の数字の単位はmmである。

    MIRS0101外観図

  2. 機能性能

4 ハードウェア構成

  1. システム構成ツリー

    下記にハードウェアの構成を示す。

           
    MIRS0101製造仕様書
    |--------MIRS0101組立図
    ||--------シャーシフレーム組立図
    |||--------シャーシフレーム
    |||--------モーターx2
    |||--------モーター取付金具x2
    |||--------可逆モータパワー変換ボード
    |||--------タッチセンサ・ロータリエンコーダ
    ケーブル
    ||||-------- マイクロスイッチx4
    ||||-------- コネクタ類
    ||||-------- ケーブル類
    ||||-------- ケーブル検査仕様書
    |||--------前面左タッチセンサ機構部
    |||--------前面右タッチセンサ機構部
    |||--------右側面タッチセンサ機構部
    |||--------左側面タッチセンサ機構部
    |||--------フォトインタラプタ回路基板
    |||--------取り付けネジ類
    |||--------シャーシフレーム試験仕様書
    ||--------電子回路フレーム組立図
    |||--------電子回路フレーム
    |||--------ISA ラック
    ||||--------CPU ボード
    |||||--------フラッシュ
    ディスク
    ||||--------FPGAボード
    |||||--------ドータボード
    ||||--------テンキー
    ||||--------液晶ディスプレイボード
    ||||--------電源制御基板
    |||--------ロータリエンコーダ
    |||--------白線感知センサボード
    ||||--------白線感知センサx4
    |||--------超音波センサボード
    ||||--------超音波センサx2
    |||--------赤外線センサボード
    ||||--------赤外線センサx4
    |||--------電子フレーム部ケーブル接続図
    ||||--------コネクタ類
    ||||--------ケーブル類
    ||||--------ケーブル検査仕様書
    |||--------取付金具
    |||--------ネジ類
    ||--------ケーブル接続図
    ||--------電池ホルダ
    ||--------取付金具
    ||--------ネジ類
    |--------ソフトウェア取り扱い説明書
    ||--------FPGA回路データ
    |||--------インストール手順書
    |||--------取り扱い説明書
    ||--------行動制御プログラム
    ||--------インストール手順書
    ||--------取り扱い説明書
    |--------電池
    |--------MIRS0101システム試験仕様書
    |--------MIRS0101取扱説明書

  2. エレクトロニクス回路構成/機能


    図2.MIRS0101エレクトロニクス回路ブロック

    各部の機能
    1. < CPU ボード部 (CPU)
      CPUボードの仕様
      • 名称 AT-461VREP
      • CPU AMD486DX5-133(SQFP)
      • CLOCK 133MHz
      • 外形寸法 185mm x 122mm
      • 販売元 日本データシステム株式会社

    2. FPGA ボード部 (FPGA)
      MIRS0101ではFPGAボードを使って以下の機能を実現する。
      • タッチセンサ信号の処理
      • 赤外線センサ信号の処理
      • パワーオン信号の処理
      • 白線感知センサ信号の処理
      • 超音波センサ信号の処理
      • ロータリーエンコーダ信号の処理
      • 液晶表示ディスプレイ制御信号の処理
      • モータパワー制御信号の処理
      • ハードウェア割り込み処理
      • 上記の各入出力機能の制御

    3. ドータボード部 (DB)
      MIRS0101ではドーターボードを使って以下の機能を実現する。
      • ドーターボードを通してFPGAボードにつながる各基板に電源(5V GND)を供給する。
      • 液晶ディスプレイボードのコントラストアドジャストを行う。
      • タッチセンサ(マイクロスイッチ)から入力されるスイッチ入力のチャタリング除去を行う。
      • 超音波センサ選択信号によって選択された超音波センサをFPGAボードの超音波センサ信号処理モジュールに接続する。
      • FPGAボードから送られてくるMPC信号を用いて、MPCボードのフォトカプラを動作させる。
      • PDボードから送られてくる駆動系電源ON信号からパワーオン信号を作ってFPGAボードに出力する。
    4. 液晶ディスプレイ部(LCD)
      液晶ディスプレイ(LCD)はMIRSの状態を表示するためのものである。
      FPGAボードの液晶ディスプレイ制御モジュールはLCDの制御を行うためのもので、FPGAボード内のFPGAチップに構成される。

    5. ロータリーエンコーダ
      タイヤの回転数をパルスにして、回転子の回転数&速度の検出を行う。 仕組みはLEDの光を、スリットで通過、遮断させ、それを受光素子で検出後、信号にする カウンタ回路はカウンタ(15bit)と方向判別(1bit)の両方を兼ね備えている。
      製品にコネクタを接続し、タイヤの回転数(アナログ量)をパルス数(デジタル量)に変換する機能がある。MIRSでは最も一般的な光電式を使用する。ロータリーエンコーダは、回転軸の回転速度に比例した、互いに90°位相の異なる2相の近似正弦波を出力しているもので、2相の位相関係から回転方向が判別できる。他に、2相の信号をカウントして回転数を求めることができる。
      一般的なロータリーエンコーダの使用方法は、回転子の回転数の検出、 更に、回転子の速度の検出である。

    6. タッチセンサ
      マイクロスイッチを用い、スイッチ押下時のチャタリングを除去した信号を送る。
      ポストに衝突した場合、MIRSがポストの中心を割り出すのにこれを使用する。

    7. 超音波センサ
      送信信号により超音波を発信し、その超音波の受信により受信信号を出力する。
      MIRSにおいて、ポストの検知・距離測定するセンサ。

    8. 白線感知センサ
      白線感知センサ回路は状態を2つの値(反応有り,無し)で得るようになる。この回路は白線感知センサの受光素子から送られてくる”H ”又は” L ”の信号を処理し、信号に状態変化が起きたときに割り込み要求信号をCPUに送る機能を有する。

    9. 赤外線センサ
      赤外線センサ回路は赤外線の受光状態を2つの値(反応有り,無し)で得るようになる。この回路は赤外線センサの受光素子から送られてくるH 又は Lの信号を処理し、信号に状態変化が起きたときに割り込み要求信号をCPUに送る機能を有する。

    10. PWM回路
      PWM回路では、モータを制御する信号であるPWM信号を作り出し、方向データとともに出力する。速度データとカウンタのカウント値との比較によりPWM信号を形成する、この信号のDuty比は0%から100%で、これを128段階に分けている。

    11. モータ
      MIRS本体の駆動部分。ここの回転によりMIRSを動かす。
      DCモータは、電源から供給される電力に応じて回転力を発生する電気エネルギー → 機械エネルギ変換器である。一般的に言う直流モーターであり、直流電源で回すことができる。
      モータはPWM制御部からのパルスによってエネルギーを供給されることにより動作する。このパルス幅を変調することによってモーターへの供給エネルギーを調整し、モータの回転数を調節することが出来る。

    12. 電源ボード
      電源制御ボードは、主に2つの機能を持つ。
      1.各ボードの電源として+5Vの電圧を出力する。
      2.非常停止スイッチ用コネクタにより、モーターの電源のみをカットする事を可能にする。

       
  3. エレクトロニクス回路基板外形

    1. 下記については標準MIRS基板を使用するので MIRS データベースを参照すること。

    2. ドータボード
      • FPGA の20pin ジャンパコネクタに接続したとき、ISA ラックに収納可能なこと。
      • I/O 接続コネクタが ISA ラックの外に出て、ケーブルの取外しが容易であること。ただし、不必要にラックの外に飛び出さないこと。
      • ボード外形は詳細設計で示す。

  4. ソフトウェアビジビリティ
    本システムのソフトウェアビジビリティはATL-MIRSソフトウェアビジビリティ(暫定版)の仕様を基本とし、MIRS0101の各センサの個数に合わせて、変更する。

5 ソフトウェア

  1. ATL-MIRS 標準 ライブラリ
    ATL-MIRS用に開発された標準ライブラリを使用する。

  2. 動作モードとその遷移
    1. 待機モード
      メインプログラムを立ち上げ、スタートスイッチが押されるまでの待機状態に入る。

    2. 直線上のポスト検索モード
      超音波センサから超音波を出し、MIRS正面の直線上にポストがないか検索する。
      ポストを発見しない、もしくは2000o以上先に発見した場合『中心移動モード』に入る。
      1600o〜2000oの位置にポストを発見した場合『ポスト接近モード』に入る。
      1600o以内にポストを発見した場合『ポスト回避モード』に入る。

    3. ポスト回避モード
      右に90°回転し300o前進する。移動後、左側に向けている超音波センサを使い『直線上のポスト検索モード』に入る。

    4. 中心移動モード
      MIRSがその時いる位置から中心に移動する。
      その後『ポストの方向に回転モード』に入る。
      『直線上のポスト検索モード』→『中心移動モード』の順番で実行している場合は、『ポスト検索モード(1)』に入る。

    5. ポスト検索モード(1)
      その場で360°右回転し、どの方向にポストがあるか検索する。その後『ポスト方向に回転モード』に入る。

    6. ポスト検索モード(2)
      その時周っているポストを中心に360°右回転し、どの方向にポストがあるか検索する。その後『ポスト方向に回転モード』に入る。

    7. ポスト方向に回転モード
      右回転して『ポスト検索モード』で見つけた次のポストの方向を向く。向いたら、『ポスト接近モード』に入る。

    8. ポスト接近モード
      ポストに近づいていく。この時、前面の赤外線センサを使いポストの赤外線センサがこちらを向いていないか確認する。
      赤外線センサがこちらに向いていない時はポストにぶつかるまで進み、『ポストの周り回転モード』に入る。
      赤外線センサがこちらを向いている時は『赤外線識別モード』に入る。

    9. ポストの周り回転モード
        ポストの周りを右回転しポストに取り付けられた赤外線センサを探す。同時に左側に向けている超音波センサを使い中心とそのポストの直線上に別のポストがないか見る。
      赤外線を見つけたら『赤外線識別モード』に入る。
      発見できなかった時は『中心移動モード』に入る。
      赤外線は発見できなかったが、中心から反対がわにポストを発見にした場合そのポストに対して『ポスト方向に回転モード』に入る。
      『直線上のポスト検索モード』→『ポスト接近モード』→『ポストの周り回転モード』の手順で実行している時は『ポスト検索モード(2)』に入る。

    10. 赤外線識別モード
        赤外線の周波数からポストの番号を割り出す。『ポスト獲得モード』に入る。

    11. ポスト獲得モード
        ポストの番号が獲得すべきものだった場合、右へ90°回転、ぶつかるまで前進しスイッチを押す。その後、前面の赤外線センサを使い赤外線が出ていない事を確認する。
      ポストを獲得した時と、ポストの番号が獲得すべきでなかった時は『中心移動モード』に入る。
      上と同じ条件で、さらに中心から反対がわにポストを発見にした場合そのポストに対して『ポスト方向に回転モード』に入る。
      『直線上のポスト検索モード』→『ポスト接近モード』→『赤外線識別モード』→『ポスト獲得モード』の手順で実行している時は『ポスト検索モード(2)』に入る。

    12. 白線感知モード
        MIRSの進行方向前方に白線を感知した場合『中心移動モード』に入る。


  3. モードのフローチャート

    図4. モード遷移図

    モード遷移表
    遷移前\遷移後 待機モード 直線上のポスト検索モード ポスト回避モード 中心移動モード ポスト検索モード(1) ポスト検索モード(2) ポスト方向に回転モード ポスト接近モード ポストの周り回転モード 赤外線識別モード ポスト獲得モード 白線感知モード
    待機モード スタートスイッチ押下 × × × × × × × × × 前方に白線を感知
    直線上のポスト検索モード × 1600o以内にポストを発見 ポストを発見しない、もしくは2000o以上先に発見 × × × 1600o〜2000oの位置にポストを発見 × × × 前方に白線を感知
    ポスト回避モード × 右に90°回転し300o前進 × × × × × × × × 前方に白線を感知
    中心移動モード × × × 『直線上のポスト検索モード』→『中心移動モード』の順番で実行 × 中心に移動したら × × × × 前方に白線を感知
    ポスト検索モード(1) × × × × × × × どの方向にポストがあるか検索 × × 前方に白線を感知
    ポスト検索モード(2) × × × × × × × どの方向にポストがあるか検索 × × 前方に白線を感知
    ポスト方向に回転モード × × × × × × 順々にポストの方向を向く × × × 前方に白線を感知
    ポスト接近モード × × × × × × × 赤外線センサがこちらに向いていない時ポストにぶつかるまで進む 赤外線センサがこちらを向いている時 × 前方に白線を感知
    ポストの周り回転モード × × × 赤外線を発見できなかった × 『直線上のポスト検索モード』→『ポスト接近モード』→『ポストの周り回転モード』の手順で実行 赤外線は発見できなかったが、中心から反対がわにポストを発見 × 赤外線を見つけた × 前方に白線を感知
    赤外線識別モード × × × × × × × × × ポストの番号識別 前方に白線を感知
    ポスト獲得モード × × × ポストを獲得した
    ポストの番号が獲得すべきでなかった
    × 『直線上のポスト検索モード』→『ポスト接近モード』→『赤外線識別モード』→『ポスト獲得モード』の手順で実行 中心から反対がわにポストを発見にしていた × × × 前方に白線を感知
    白線感知モード × × × 白線を感知 × × × × × × ×


  4. モジュール定義

  5. ソフトウェア構成

    以下にソフトウェア構成のツリー図を示す。

    ソフトウェア構成
    |-API・関数
    ||-超音波センサ  API(RT-タスク)
    ||-PWM/エンコー ダー API(RT-タスク)
    ||-タッチセンサ (ド ライバー)
    ||-赤外線センサ  (ドライバー)
    ||-白線検知センサ  (ドライバー)
    |LCD (ドライ バー)
    |-モジュール
    ||-初期動作モジュール
    ||-ポスト回避モジュール
    ||-ポスト探索モジュール1
    ||-ポスト探索モジュール2
    ||-ポスト接近モジュール1
    ||-ポスト接近モジュール2
    ||-ポスト押下モジュール
    ||-探索ルート復帰モジュール
    ||-直進モジュール
    ||-回転モジュール
    ||-白線検知行動モジュール
    ||-障害物回避行動モジュール
    |総合試験モ ジュール
    メインプログラム
    メインモ ジュール(メインプログラム)

  6. モードの構成要素

    1. 待機モード

    2. 直線上のポスト検索モード
      ・・・初期動作モジュール、PWM/エンコーダ API、直進モジュール、回転モジュール

    3. ポスト回避モード
      ・・・超音波センサ API、PWM/エンコーダ API、左トレースモジュール、回転モジュール
       
    4. 中心移動モード
      ・・・ポスト獲得判断モジュール、超音波センサ API、PWM/エンコーダ API
       
    5. ポスト検索モード
      ・・・ポスト獲得モジュール、超音波センサ API、タッチセンサ API、直進モジュール

       

    6. ポスト獲得モード
      ・・・ポスト獲得モジュール、超音波センサ API、赤外線センサ API、直進モジュール、回転モジュール、左トレースモジュール
       
    7. ポスト探索ルート復帰モード
      ・・・ルート復帰モジュール、タッチセンサ API、直進モジュール、回転モジュール 
       
    8. 総合試験
      ・・・総合試験モジュール、すべてのAPI

    9. 障害物回避モード
      ・・・超音波センサ API、PWM/エンコーダ API、直進モジュール、回転モジュール、障害物回避行動モジュー ル  

  7. 試験機能

    下記の試験機能を有する。

    • 各センサの状態を表示する機能。
    • 左右車輪の回転数と回転方向を独立に試験する機能。
    • 一辺1mの正方形をトレースする機能。
    • 半径1mの円をトレースする機能。

6 システム試験