沼津高専 電子制御工学科
MIRS0001基本設計書
MIRS0001-DSGN-1001
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2001.2.1 mirs0001 竹村 初版
A02 2001.2.7 竹村 竹村 ドータボード外形図更新
ツリー図の変更
各部文章の訂正
A03 2001.2.8 mirs0001 竹村 ソフトウェア構成ツリー図の移動
A04 2001.4.19 太田 竹村 各リンクのCGI化
A05 2001.4.24 山下 竹村 モード遷移図の下一行追加
A06 2001.5.2 太田 竹村 MIRSATLM電子回路基板設計書(暫定版)の()内を削除
A07 2001.5.29 太田 竹村 ソフトウェア変更
A08 2001.10.24 植松 竹村 赤外線センサの配置及び個数の変更

目次

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

1 はじめに

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

2 システム概要

  1. ハードウェア

    MIRS0001システムのハードウェアは標準MIRS(注1)に準ずる構成を有するが、MIRS0001固有の機能を実現するためにいくつかの変更点がある。以下、標準MIRSと異なる点のみ述べる。 (注1)2000年1月現在、標準 MIRS は、5年生卒研の ATL-MIRS プロジェクトで開発中である。開発ドキュメントは MIRSATLM ドキュメント管理台帳 を参照のこと。

  2. ソフトウェア

    RT-Linux (Ver.2.3) を OS とし、Linux のユーザプロセスとして行動制御 プログラムを起動する。赤外センサ、タッチセンサからの入力は、行動制御 プログラムから、定期的にドライバーを呼び出すことにより監視する。 走行系の制御と超音波センサの制御は、RT タスクによって行い、RT-FIFO を 介して必要なデータ通信を行う。

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

  3. 競技会行動計画
    1. 1回目も2回目も基本的に同じルートで、競技場を時計回りに走行する。
    2. 競技開始位置の座標を(0,0)に設定する。
    3. 右の超音波センサにより壁との距離を一定に保つ。
    4. 左の超音波センサによりポストの探索を行う。
    5. ポストを発見したらそれを獲得しに行く。
    6. ポスト獲得時はポストを反時計回りに円運動しつつ、左の赤外光検出センサによりスイッチを発見する。
    7. ポストの周りを回るとき、横滑りしない程度のスピードで回る。
    8. ポストを獲得しだい、ルートへの復帰を行う。
    9. ルートへの復帰は一回壁へと接触する。
    10. ポストや壁にぶつかるときはできる限りゆっくりと。
    11. 超音波測距センサとロータリエンコーダによって一度獲得したポストかどうかの判断を行う。
    12. 早さよりも確実性を重視した行動を目標とする。

    行動計画の詳細は、行動計画提案書に記載されている。

3 諸元

  1. 外観

    図1に本システムの外観を示す。

    図1. MIRS0001外観図

     
  2. 機能性能

4 ハードウェア構成

  1. ハードウェア構成ツリー

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

    1. 設計は基本的にツリーの上位から行われ、組立は下位から行われる。
    2. 組立の順が狂ってはならない。とくに前段階で組み立てたものをその上の段階に組み立てるときに分解等の作業があってはならない。
    3. 電子回路も機構もソフトもこのツリーに包含されていなければならない。
    4. 試験検査仕様書や取扱説明書をも含んでいなければならない。
    MIRS0001製造仕様書
    |-MIRS0001組立図
    ||-ケーブル接続図
    ||-電池ホルダ
    ||-取付金具
    ||-ネジ類
    ||-シャーシフレーム組立図
    |||-シャーシフレーム
    |||-モーターx2
    |||-モーター取付金具x2
    |||-可逆モータパワー変換ボード
    |||-タッチセンサ・ロータリエンコーダケーブル
    ||||- マイクロスイッチx2
    ||||- コネクタ類
    ||||- ケーブル類
    ||| ケーブル検査仕様書
    |||-側面タッチセンサ左機構部
    |||-側面タッチセンサ右機構部
    |||-前方バンパ機構部
    |||-後方バンパ機構部
    |||-フォトインタラプタ回路基板
    |||-取り付けネジ類
    ||-シャーシフレーム試験仕様書
    |電子回路フレーム組立図
    ||-電子回路フレーム
    ||-ISA ラック
    |||-CPU ボード
    |||フラッシュディスク
    |||-FPGAボード
    |||ドータボード
    |||-テンキー
    |||-液晶ディスプレイボード
    ||電源制御基板
    ||-ロータリエンコーダ
    ||-超音波センサボード
    ||超音波センサ
    |赤外線センサボード
    ||赤外線センサ
    ||-電子フレーム部ケーブル接続図
    |||-コネクタ類
    |||-ケーブル類
    ||ケーブル検査仕様書
    ||-取付金具
    |ネジ類
    |-電池
    |-MIRS0001システム試験仕様書
    |-MIRS0001取扱説明書
    |
    ソフトウェア
    |-FPGA回路データ
    ||-インストール手順書
    |取扱説明書
    行動制御プログラム
    |-インストール手順書
    取扱説明書

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


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

    各部の機能
    1. <CPUボード>
      MIRSの情報処理、姿勢制御、駆動制御など各種演算を行うためのCPUを積んでいてISAラックに積みこむことができ、ISAバスに差し込みが可能。
      MIRS0001のCPUボード調査報告書

    2. <フラッシュディスク>
      MIRS0001の記憶装置としてハードディスクの役割を果たす。(64MB)

    3. <FPGAボード>


      • <タッチセンサ・赤外線センサ・パワーオン信号>
        赤外線センサボードから送られてくる断続的なパルスの引き延ばしを行う。
        タッチセンサ、赤外線センサ、パワーオン信号処理モジュールは5つのタッチセンサ信号、4つの赤外線センサ信号、1つのパワーオン信号の3種類13bitの信号16bitのTIPデータに変換してCPUに出力し、それらの入力に変化があった時に割り込み信号を発生させるためのものであり、FPGAボード内のFPGAチップに構成される。

      • <超音波センサ信号>
        MIRSATLM FPGAボード超音波センサモジュールは超音波センサボードで超音波の送受信を行うためのものであり、FPGAボード内のFPGAチップに構成される。

      • <ロータリーエンコーダ信号>
        MIRSATLM FPGAボード モジュールはモータの回転数をカウントし、移動した距離の計測や自己位置を認識する行うためのものであり、FPGAボード内のFPGAチップに構成される。

      • <液晶表示ディスプレイ制御>
        MIRSATLM FPGAボード液晶ディスプレイ制御モジュールはLCDの制御を行うためのものであり、CPUから送られてくる8bitの液晶ディスプレイボード制御信号の出力制御を行う。FPGAボード内のFPGAチップに構成される。

      • <ハードウェア割り込みの処理>
        必要によってCPUに対して割り込み信号を出力する。

      • <FPGA内の各入出力機能の制御>
        MIRSATLM FPGAボードアドレスデコーダはISAバスから送られるアドレスにより、FPGAチップ内に構成される他のモジュールの選択を行うためのものであり、FPGAボード内のFPGAチップに構成される。

      • <モーターパワー>
        MIRSATLM FPGAボード モータパワー制御モジュールは駆動モータのスピード、回転方向を行うためのものであり、CPUから送られてくる速度データをPWM変換し、同じくCPUから送られてくる方向データと共に出力する。FPGAボード内のFPGAチップに構成される。

    4. <ドーターボード>

      MIRSATLM ドーターボードは、FPGAボードで行っているATLMIRS独自の入出力機能の制御を補助するためのボードである。この機能を実現するためにMIRSATLM ドーターボードは以下のような機能を持つ。

      • ドーターボードを通してFPGAボードにつながる各基板に電源(5V GND)を供給する。
      • 液晶ディスプレイボードのコントラストアドジャストを行う。
      • タッチセンサ(マイクロスイッチ)から入力されるスイッチ入力のチャタリング除去を行う。
      • 超音波センサ選択信号によって選択された超音波センサをFPGAボードの超音波センサ信号処理モジュールに接続する。
      • NEC製 IC μPD4701 を用いてロータリーエンコーダから送られるエンコード信号のカウントを行う。
      • FPGAボードから送られてくるMPC信号を用いて、MPCボードのフォトカプラを動作させる。
      • PDボードから送られてくる駆動系電源ON信号からパワーオン信号を作ってFPGAボードに出力する。

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

      MIRS0001の電源ボード調査報告
    6. <モータパワー制御ボード>
      電源ボードは以下の性能を有する。 7.2Vニッカド充電電池から供給される7.2Vを電子回路系用の+5Vに変換する。 7.2Vニッカド充電電池から供給される7.2Vを緊急停止スイッチを介してモータパワー制御ボードへ供給する。 駆動系電源の状態を出力する。

    7. <テンキー>
      MIRSの電源のON/OFF、プログラムやモードの切り替えをするときに使う。

    8. <超音波センサ>
      MIRSATLM 超音波センサボードは、ボード1つにつき超音波センサが一対搭載され、FPGAの超音波センサ選択回路により選択されると超音波の送受信が行われる。この回路は、ゲートを組み合わせた送信回路と、オペアンプをつかった増幅回路を持つ受信回路、コンパレータを使った比較回路の3つの回路からなる。

      MIRS0001の超音波センサ調査報告
    9. <液晶ディスプレイ>
      実行中のモードやプログラムなど、MIRSの状態を表示することでMIRSの走行試験などで正しい動作をしているか確認する。

      MIRS0001の液晶ディスプレイ調査報告
    10. <ロータリーエンコーダ>
      タイヤの回転数(アナログ量)をパルス数(デジタル量)に変換し、回転方向と回転数を求めることができる

      MIRS0001のロータリーエンコーダ調査報告
      <モータ>
      MIRSの駆動系としてギアを間に入れてタイヤを付けて使用する。MIRS0001ではそれを二つ使って両タイヤをPWM制御によって制御する。
  3. エレクトロニクス回路基板

    回路基板の外形と取り付け穴位置、コネクタ位置、センサ取り付け位置などを図を用いて示す。この内容をもとに機構の設計を行うので、よく検討して後の変更が無いように作成しなければならない。
    1. 下記については標準MIRS基板を使用するので MIRS データベースを参照すること。

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

        図3. ドータボード外形図

  4. ソフトウェアビジビリティ

    ソフトウェアビジビリティとは、ソフトウェア(プログラム)から見たとき、ハードウェアにどうアクセスするのかを示したものである。 本システムのソフトウェアビジビリティはATL-MIRSソフトウェアビジビリティの仕様と同一である。

5 ソフトウェア

  1. ATL-MIRS 標準 ライブラリ

    ATL-MIRS用に開発された標準ライブラリを使用する。
    ATL-MIRS 標準 ライブラリユーザマニュアル (現在作成中)
    参考 MIRSATLM ソフト ウェア仕様書

  2. 動作モードとその遷移

    • 動作モード

      MIRS0001では以下のモードを定義する。

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

      2. 初期設定(初期動作)モード
        ・・・スタート位置の座標を(0,0)と設定する。
        スタート位置から20cm後退し、左へ90°回転してポスト探索モードの準備に入る。

      3. ポスト探索モード
        ・・・競技場を時計回りに進行しながら、MIRS左側に設置した超音波測距センサにより、ポスト の探索を行う。ポストを発見したらそのポストの位置を記憶する。

      4. 獲得判断モード
        ・・・ポスト探索モードで発見されたポストが獲得したものかそれとも未獲得かを判断する。
         
      5. ポスト接近モード
        ・・・獲得判断モードで未獲得判断されたポストへと直進接近する。前面部タッチセンサがぶつかるまで直進し、ぶつかって10cm後退したところでポスト獲得モードへ遷移する
         
      6. ポスト獲得モード
        ・・・まず右に90°回転。ポストを反時計回りに周回する。 そして、MIRS左側に設置した赤外光検出センサによりスイッチの探索を行う。その後発見したスイッチを獲得する。
          赤外光検出センサが反応したら、左へ90°回転し、ポストと正対する。
          前進してポストを獲得する。
         
      7. ポスト探索ルート復帰モード
        ・・・ポストを獲得した後、ポスト探索ルートへと移動する。

      8. 障害物回避モード
        ・・・障害物回避行動用のモードで、予備。障害物を発見した時に起動し、目標を回避する。
         
      9. 総合試験
        ・・・試験走行用のモードで各種試験を行うもの。試験内容はシステム試験仕様書による。

         

    • モード遷移

      図4. モード遷移図

      なおスイッチ探索モード以外には赤外線の感知を行わない!
      モード遷移表
      遷移前\遷移後待機モード初期設定(動作)モードポスト探索モード獲得判断モードポスト接近モードポスト獲得モードポスト探索ルート復帰 モード
      待機モードスタートスイッチ押下×××××
      初期設定(動作)モード×スタート位置を(0,0)と設定。スタート位置から20cm後退し左へ 90°回転。××××
      ポスト探索モード××超音波測距センサによりポスト発 見!×××
      獲得判断モード××獲得済と判断。-未獲得と判断。× ×
      ポスト接近モード×××× タッチセンサにより目標ポスト発見!ポストを見失う。
      ポスト獲得モード×××××スイッチを押し、赤外線 の反応が消えたのを確認。
      ポスト探索ルート復帰モード××ポスト探索ルートへと到着!×× ×

  3. モジュール定義

    • 初期動作モジュール
      定義:スタート位置の座標を(0,0)とし設定スタート位置から20cm後退し、左へ90°回転するための 関数群。
      API:PWM/エンコーダ・超音波センサ関数

    • ポスト獲得判断モジュール
      定義:ポスト探索モードで発見されたポストが獲得したものかそれとも未獲得かを判断するための関数 群。
      API:PWM/エンコーダ・超音波センサ・赤外線センサ関数

    • ポスト接近モジュール
      定義:ポストへと直進接近し、次に前面部タッチセンサがポストにぶつかるまで直進する。
      ぶつかって10cm後退したところで、スイッチ探索へと遷移する。
      API:PWM/エンコーダ・超音波センサ・赤外線センサ・タッチセンサ関数

    • 赤外線探索モジュール(ポスト獲得モード補助モジュール)
      定義:ポストへと前面部タッチセンサがポストにぶつかるまで直進接近する。ぶつかって10cm後退したところで、スイッチ探索へと入る。このような動作を実現するた めの関数群
      API:PWM/エンコーダ・超音波センサ・タッチセンサ関数

    • ポスト押下モジュール(ポスト獲得モード補助モジュール)
      定義:発見したスイッチを獲得する。このような動作を実現するた めの関数群
      API:PWM/エンコーダ・超音波センサ・赤外線センサ・タッチセンサ関数

    • 探索ルート復帰モジュール
      定義:ポストを獲得した後、ポスト探索ルートへと移動するための関数群。
      API:PWM/エンコーダ・超音波センサ関数
       
    • 直進走行モジュール
      定義:ロータリーエンコーダと超音波センサを用いて MIRS を指定した距離直進させるための関数 群。
      API:PWM/エンコーダ・超音波センサ関数

    • 回転モジュール
      定義:ロータリーエンコーダを用いて MIRS を指定した角度その場回転させる関数群。
      API:PWM/エンコーダ・超音波センサ関数

    • 左トレースモジュール
      定義:超音波センサを用いて 左の壁とMIRSの距離を指定した間隔で走行させるための関数群。
      API:PWM/エンコーダ・超音波センサ関数
       
    • 総合試験モジュール
      定義:試験走行用のモジュール。各種試験を行うもの。試験内容はシステム試験仕様書による。
      API:PWM/エンコーダ・超音波センサ・赤外線センサ・タッチセンサ・LCDデバイス等
       
    • メインモジュール(メインプログラム)
      定義:mirs0001本体の行動を決定する。
      API:PWM/エンコーダ・超音波センサ・赤外線センサ・タッチセンサ・LCDデバイス等
       
    • 障害物回避行動モジュール
      定義:障害物回避行動を行うためのプログラムモジュール。(予備)
      API:PWM/エンコーダ・超音波センサ・タッチセンサ

  4. ソフトウェア構成

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

    ソフトウェア構成
    |-API・関数
    ||-超音波センサ  API(RT-タスク)
    ||-PWM/エンコー ダー API(RT-タスク)
    ||-タッチセンサ (ド ライバー)
    ||-赤外線センサ  (ドライバー)
    |LCD (ドライ バー)
    |-モジュール
    ||-初期動作モジュー ル
    ||-ポスト獲得判断モ ジュール
    ||-ポスト獲得モ ジュール
    ||-探索ルート復帰モ ジュール
    ||-直進モジュール
    ||-回転モジュール
    ||-左トレースモジュール
    |総合試験モ ジュール
    メインプログラム
    メインモ ジュール(メインプログラム)

  5. モードの構成要素

    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、直進モジュール、回転モジュール、障害物回避行動モジュー ル  

  6. 試験機能

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

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

6 システム試験

  1. システム試験概要

    システム試験はシステムの組立が完了した段階で、基本設計書の内容に適合しているかどうかを試験する。システム試験を実施する際には、各サブシステムで規定されるサブシステム試験に合格していなければならない。 試験は以下の項目について行われる。

    • 外形試験
      ・・・規定内の大きさに収まって、寸法は計画どおりか。取れそうな部品はないか。

    • センサ機能試験
      ・・・プログラム通り正確に機能するか。また誤差はどれくらいあるのか。

    • 規定走行試験
      ・・・MIRSがプログラムどおりしっかり走行できるか。

    • 競技プログラム試験
      ・・・競技用のプログラムに誤りはないか実走する。

  2. システム試験詳細

    システム試験の詳細は、下記の試験仕様書に記載される。
    MIR0001システム試験仕様書

関連文書