沼津高専 電子制御工学科
MIRS0405 software取扱説明書
MIRS0405-SOFT-0003
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2005.2.25 大竹・鈴木 鈴木 初版
A02 2005.2.28 大竹・鈴木 鈴木 圧縮ファイルの追加

目次

  1. ソースプログラム一覧
  2. その他、そのプログラムを扱う上での必要な説明

1.ソースファイル一覧


ファイル名分類簡単な説明
post_to_post.c関数プログラムポスト間の移動。
new_post_search.c関数プログラム新しく作ったポスト探索プログラム。
post_approach.c関数プログラム中心からポストに接近するプログラム。
post_approach2.c関数プログラムスタート位置からポストに接近するプログラム。
first_move.c関数プログラムスタート位置から中心まで進む。
functions.c関数プログラム色々な関数が入っている。
post_get.c関数プログラムポストを獲得するプログラム。
initialize.c関数プログラム競技1回目の初期化プログラム。
postdata.c関数プログラムポスト情報を保存、読み出しをするプログラム。
main1.cメインプログラム競技1回目のプログラム。
main2.cメインプログラム競技2回目のプログラム。
new_map_test.cテストプログラムnew_post_search のテストプログラム。
map_move_test.cテストプログラムポスト探索とポスト間移動のテストプログラム。
ptptest.cテストプログラムpost_to_postの計算のテストプログラム。ターミナルウィンドウで実行する。
pa2test.cテストプログラムpost_approach2 の計算のテストプログラム。ターミナルウィンドウで実行する。
first_test.cテストプログラムfirst_move のテストプログラム。
correct.cテストプログラムcrrect_direction1 と crrect_direction2 のテストプログラム。
circle_test.cテストプログラムポストの周回プログラム。
atan.cテストプログラムarc tan の返ってくる値を調べるプログラム。ターミナルウィンドウで実行する。
correct_test.cテストプログラム正対補正に関する実験のプログラム。
2test.cテストプログラムinitialize2 のテストプログラム。
add_test.cテストプログラム加減算のテストプログラム。ターミナルウィンドウで実行する。
run_test.cテストプログラム走行のテストプログラム。
main1test.cテストプログラムmain1 のテストプログラム。
both.c標準機のプログラム標準機のプログラム
pwm.c標準機のプログラム標準機のプログラム
thread_func.c標準機のプログラム標準機のプログラム
control.hヘッダーファイル色々と宣言している。
func_extern.hヘッダーファイル関数を宣言する。
irs_ts_ws.hヘッダーファイル赤外線センサ、タッチセンサ、白線センサに関するヘッダーファイル。
pwm_enc.hヘッダーファイルロータリーエンコーダーに関するヘッダーファイル。
uss.hヘッダーファイル超音波センサに関するヘッダーファイル。
Makefileメイクファイル実行ファイルを作る時に使う。
mirs0405.tar.gz圧縮ファイル上記のファイルを全て圧縮したもの。

2.その他、そのプログラムを扱う上での必要な説明

  1. post_to_post.c
      引数は2つで、前のポストの番号と次に向かうポストの番号が入る。先ず次に向かうポストの方向へ向き、ポスト間の半分程の距離進む。次に超音波センサを使い少しずつ近づき一定距離近づいたら正対補正する。ポスト間に別のポストがあったら回避する。
  2. new_post_search.c
      一回転しながら左の超音波センサでポストを探索する。そしてポストの数と位置データを保存する。
      ポストの確認の仕方は、超音波センサでポストの両端を見つける事によりポストの中心位置がわかる。
  3. post_approach.c
      フィールドの中心からポストに近づく時に使う。先ず中心からポストまでの半分ほどの距離を進み、次に超音波センサを使い少しずつ近づき一定距離近づいたら正対補正する。
  4. post_approach2.c
      スタート位置からポストに近づく時に使う。先ず中心からポストまでの半分ほどの距離を進み、次に超音波センサを使い少しずつ近づき一定距離近づいたら正対補正する。向かうポストまでの間にポストがあったら回避する。
  5. first_move.c
      スタート位置からフィールドの中心まで移動する。中心までにポストがあったら回避する。中心付近にポストがあったらポストの一定距離手前で止まる。
  6. functions.c
      post_select() : 次に取るコードのポストを選択する。
      nearest_post() : 一番近いポストを選択する。
      irs_code_get(int dumy) : 標準機通り。
      uss_get(int uss_no) : 標準機通り。
      correct_direction1(int_target_post) : ポストに近づく時に使う関数。
      correct_direction2() : ポストに近づく時に使う関数。
      correct_ir() : ポストの赤外線センサに正対補正する。実用化はされなかった。
      correct_distance() : 標準機通り
      iqr_rotate(int ang,int time) : 標準機通り
      iqr_straight(int dis,int time) : 標準機通り
      iqr_circle(int radious,int ang,int time) : 標準機通り
      以上の関数が入っている。
  7. post_get.c
      ポストを周回して、ポストから出ている赤外線を捜す。見つけたら、赤外線コードを保存する。取るべきコードだったら90度回転しポストを獲得する。ポストを周回し始めた位置に戻る。その際に距離が短い方から戻る。
  8. initialize.c
      デバイスファイルを開く。スレッドを作る。変数を初期化する。
  9. postdata.c
      ポストの位置データとコードの保存と読み出しをする関数が入ってる。
  10. main1.c
      一回目の競技で使用するmain関数。ポスト探索で一度で見つからなかった場合にMIRSの角度や位置を変えて再度探索するようにしている。
  11. main2.c
      一回目の競技で全てのポストのNoが確認できたら使用するmain関数。ファイルに保存しておいたポストのデータを取り出して使用する。最短距離で移動する。
  12. new_map_test.c
      new_post_searchのテストをする。実行結果が見つけたポストの位置データが画面に表示される。
  13. map_move_test.c
      new_post_search と post_to_postのテストをするプログラム。
  14. ptptest.c
      post_to_postの計算を実験をする。二つのポストの位置データを入力するとMIRSの回転する角度が出てくる。
  15. pa2test.c
      post_approach2の計算を実験する。最初に向かうポストの位置データを入力するとMIRSの回転する角度とポストまでの距離が出てくる。
  16. first_test.c
      first_moveのテストをする。
  17. correct.c
      correct_direction1とcorrect_direction2のテストをする。
  18. circle_test.c
      ポストの周回のテストをする。
  19. atan_test.c
      アークタンジェントの返ってくる値を調べる。
  20. correct_test.c
      correct_directionで回転するべき角度を調べる為の実験をする。
  21. 2test.c
      保存したポストのデータを読み出すテストをする。
  22. add_test.c
      加減算のテストをする。
  23. run_test.c
      直進のテストをする。
  24. main1test.c
      main1の移動のテストをする。
  25. both.c
      標準機通り。
  26. pwm.c
      標準機通り。
  27. thread_func.c
      標準機通り。
  28. control.h
      色々な関数で使う定数、変数、スレッドを宣言する。
  29. func_extern.h
      使う関数を事前に宣言する。
  30. irs_ts_ws.h
      標準機通り。
  31. pwm_enc.h
      標準機通り。
  32. uss.h
      標準機通り。
  33. Makefile
      作りたい実行ファイルによってMakefileの内容を変更する。

関連ドキュメント
MIRS-0405
標準動作プログラム関数レファレンス