/************************************************************************
Title: MIRSVシステム 回避モード
File : ESCAPE.C Ver.1.0 written on Jan.27,1996 by J.W.
Ver.1.1 Feb.6,1996
Ver.1.2 Feb.12,1996
Ver.2.0 Feb.13,1996
*************************************************************************/
#include "m9401.h"
#include "mathf.h"
extern float Z;
extern float Th;
extern float Th_ref;
extern float Xc,Yc;
extern int Z_ref;
extern int Tc;
extern int Sc;
extern int Posi;
extern int flag;
extern int mode;
extern int Ze;
extern unsigned int Tmc;
extern int Th_e;
extern int Ps_d;
extern int Dist[];
extern int Seg[];
extern int Ts_d;/* Touch Sensor Data */
extern int Act; /* 0:go 1:turn_left 2:turn_right 3:back 4:stop */
int escape()
{
static int tmc;
static int ts_d;
static int posi2;
static int back;
static float th2;
static int Ec;
static int posi3;
if(flag==ON){
flag=OFF;
Sc=0;
Ec=0;
tmc=Tmc;
ts_d=Ts_d;
th2=Th;
posi3=Posi;
if(fabsf(Xc)<60 && fabsf(Yc)<60)
posi2=0;
else posi2=1;
if(posi2==0){
back=0;
}
else{
Z_ref=(int)Z-30;
switch(Posi){
case 1:
if(Th>PIH && ThPI && Th=0 && ThPI2-PIH && Th0 && Th