タスク構成
0、初期設定タスク(task00)
電源投入時またはリセットボタン押下時に一回だけ起動され、処理終了後行動計画タスクを起動する。
初期診断プログラムの実行、ハードウェアの初期設定、自己位置を競技開始位置に設定、タスクの初期
化、掲示板(BB)の初期化を行う。また、DIPスイッチを読み込み、動作モードをBBに書き込む。DIP
スイッチの状態によっては、リモートタスクを行動計画タスクとともに起動する。
1、自己位置認識タスク(task01)
タイマ割り込みにより起動される。ロータリエンコーダのカウント値を読み込み、自己位置(X,Y,θ:姿
勢角)を計算しBBに格納する。処理終了後、次のタイマ割り込みを設定する。また、LED表示モードが
X、Y、θのいずれかであれば7SegLED表示タスクを起動する。(7SegLED表示タスク用のBBを参照す
ることにより何を表示しているか知ることができる。)タイマ割り込み間隔については、総合試験で決定
するが、総合試験版では50msに設定する。
2、超音波制御タスク(task02)
タイマ割り込みにより起動される。5つの超音波センサをから1つずつ選択し順次距離を測定し結果を
BBに格納する。処理終了後、次のタイマ割り込みを設定する。LED表示モードが超音波センサ状態を
示していれば、7SegLED表示タスクを起動する。タイマ割り込み間隔については、総合試験で決定する。
3、赤外線制御タスク(task03)
ハードウェア割り込みにより起動され、赤外線センサの状態をBBに書き込む。LED表示モードが赤外
線センサ状態を示していれば7SegLED表示タスクを起動する。
4、タッチセンサ制御タスク(task04)
ハードウェア割り込みにより起動され、タッチセンサの状態をBBに書き込む。
5、MMI制御タスク(task05)
7SegLEDの表示内容を更新する。4桁のうち最上位桁は下位3桁の表示内容を示すIDでIDは0から9
までの数値、LED表示要求時に起動されBBに掲示された情報に基づき表示する。
6、自己位置補正タスク(task6)
ノーマルタスクであり、補正の必要な時に適宜呼び出される左右の超音波センサの測定したデータに
基づき、左右方向(XかYか はMIRSの姿勢及び現在位置により決定する)を補正する。
7、行動計画タスクその1(task07)
BBに掲示された情報に基づき、MIRSの行動を決定する。このタスクより走行制御タスクが起動される。
8、走行制御タスク(task08)
行動計画タスクから起動される。起動時に軌跡と目標位置が与えられる。起動後、BBに実行中コードを
書き込み、目標位置に到達するまでタイマ割り込みにより50ms毎に最起動され、与えられた軌道に対
する差を補正しながら移動する。目標位置に到達したときは実行完了コードをBBに書き込む。実行中に
実行を強制停止する機能を有する。
9、ダミータスク(task09)
処理は行わない。
10、ダミータスク(task10)
処理は行わない。
11、リモートコントロールタスク(task11)
BBに掲示された情報に基づき、RS−232Cポートを使用してデータの送受信を行う。送受信のタイミン
グは、総合試験計画で決定する。
12、行動計画タスクその2(task12)
探索行動を行う。
詳細設計書にBACK
改良設計書にBACK