MIRS0802 新規関数リファレンス
MIRS0802-SOFT-1001
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2008.11.20 初版
A02 2008.12.29 リンク校正

目次

1. 本ドキュメントについて
2. 使用関数一覧
3. 新規関数詳細

1. 本ドキュメントについて

    このドキュメントは、MIRS0802ソフトウェアの新規関数をリスト、それぞれの内容を記述するものである。

2. 使用関数一覧

    表1. 行動制御系関数
    ソース名 関数名 書式 戻り値 説明
    control_test.c main int main(void) 0 1回目メイン
    control_test2.c main int main(void) 0 2回目メイン
    initialize.c initialize int initialize(void) 0 初期化
    post_get.c post_get int post_get(int) 0 ポスト獲得
    post_search.c post_search int post_search(void) 0 ポスト探索
    post_check.c post_check void post_check(int, int, int) 0 ポスト判別
    post_approach.c post_approach int post_approach(void) 0 ポスト接近
    functions2.c correct_direction1 int correct_direction1(void) 0 ポスト接近前の角度補正
    correct_direction2 int correct_direction2(void) 0 ポスト接近後の角度補正
    uss_get int uss_get(int) 測定データ 超音波による距離測定
    move_std.c move_std int move_std(void) 0 基準位置移動
    line_return int line_return(void) 0 白線復帰
    back_line int back_line(void) 0 後退
    turn_line int turn_line(void) 0 垂直補正
    act_decide.c act_decide int act_decide(void) 0 ポスト接近後の角度補正
    decide_func.c data_get int data_get(void) 読取エラー数 ポスト情報読込・整理
    analyzer int analyzer(void) 分析エラー数 ポスト位置分析
    err_safe int err_safe(int) 0 エラー修正・位置予測
    route_dsgn int route_dsgn(int) 探索距離 探索経路設計
    表2. スレッド系関数
    ソース名 関数名 書式 戻り値 説明
    thread_func.c irs_ts_ws void *irs_ts_ws(void *t) なし 赤外線,タッチセンサ,白線センサ読み取りスレッド

3. 新規関数詳細

    3.1. 行動制御系

      int main(void)
      MIRS0802のメイン関数
      int post_get(int)
      ポスト獲得動作を定義する関数
      デバイスドライバを介してアームに信号を書き込み、
      獲得動作を開始させる。
      int post_search(void)
      ポスト探索を行う関数。
      ラインとレース走行をしつつ、超音波を出し、競技場内のポストを検知する。
      詳しくは、MIRS0802-SOFT-0006を参照のこと
      void post_check(int, int, int)
      ポスト判別を行なう関数。判別を行なうと共に、第1、第2引数に直交座標を、第3引数にMIRSの姿勢を与えることにより番号とポストの位置情報の記録も行なわせる。
      詳しくは、MIRS0802-SOFT-0002を参照のこと
      int post_approach(void)
      ポスト接近モードを定義する関数。
      姿勢を変えてポストと正対した後、白線からの移動距離を算出し、ポストに接近する。
      詳しくは、MIRS0802-SOFT-0003を参照のこと
      int move_std(void)
      初期位置から、白線(基準位置)まで移動する関数。
      back_lineとturn_lineを組み合わせて行動を定義する。
      int line_return(void)
      ポスト獲得後、白線に復帰する関数。
      back_lineとturn_lineを組み合わせて行動を定義する。
      int back_line(void)
      基準位置移動、白線復帰のための後退動作を定義する。
      int turn_line(void)
      基準位置移動、白線復帰のための角度補正動作を定義する。
      int act_decide(void)
      競技2回目において、行動判断・経路設計を行なう、メインとなる関数
      動作は、decide_func.cに含まれる以下の関数を取り込んで行なう。
      詳しくは、MIRS0802-SOFT-0004を参照のこと
      int data_get(void)
      競技1回目に得たポスト情報を取り込み、ポスト番号によってソートする。
      int analyzer(void)
      取り込んだポストの座標情報からおおまかに所属エリアの分類をする。
      int err_safe(int)
      未確認のポストがあった場合など、データが完全でない場合に確認済みのデータからおよその予測を立て、エラーを修正する。
      int route_dsgn(int)
      ポストを番号順に獲得するための探索コースを構成する。

    3.2. スレッド系

      void *irs_ts_ws(void *t)
      汎用センサ(白線センサ、タッチセンサ)のON/OFFとアームの動作終了信号を読取るためのスレッド
関連文書