2005/A1

プログラム

//作成:Harada
//左を書くロボット
#define P_IN 370
#define P_OUT 350
#define P_DOWN 150
#define P_UP 155

void go(int t)			//前進 100で7cm程度
{
	OnFwd(OUT_A+OUT_C);
	Wait(t);
	Off(OUT_A+OUT_C);
}

void back(int t)		//後進
{
	OnRev(OUT_A+OUT_C);
	Wait(t);
	Off(OUT_A+OUT_C);
} 
 
 void left_t(int t)		//左転回 130で90度
{ 
	OnFwd(OUT_C); OnRev(OUT_A);
	Wait(t);
	Off(OUT_A+OUT_C);
}

void right_t(int t)		//右転回 130で90度
{
	OnFwd(OUT_A); OnRev(OUT_C);
	Wait(t);
	Off(OUT_A+OUT_C);
}

void left(int t)		//左旋回 260で90度
{
	OnFwd(OUT_C); Float(OUT_A);
	Wait(t);
	Off(OUT_A+OUT_C);
}

void right(int t)		//右旋回 260で90度
{
	OnFwd(OUT_A); Float(OUT_C);
	Wait(t);
	Off(OUT_A+OUT_C);
}

void left_b(int t)		//左後旋回 260で90度
{
	OnRev(OUT_C); Float(OUT_A);
	Wait(t);
	Off(OUT_A+OUT_C);
}

void right_b(int t)		//右後旋回 260で90度
{
	OnRev(OUT_A); Float(OUT_C);
	Wait(t);
	Off(OUT_A+OUT_C);
}

sub in()	//ペン挿入
{
	OnRev(OUT_B);
	Wait(P_IN);
	Float(OUT_B);
}

sub out()	//ペン排出
{
	OnFwd(OUT_B);
	Wait(P_OUT);
	Float(OUT_B);
}

sub down()	//ペン下降
{
	OnRev(OUT_B);
	Wait(P_DOWN);
	Float(OUT_B);
}

sub up()	//ペン上昇
{
	OnFwd(OUT_B);
	Wait(P_UP);
	Float(OUT_B);
}

	
task main()
{
	in();
	go(70);
	left_t(75);
	go(100);

	down();	//1画目
	back(250);
	up();
	go(140);
	right_t(75);
	back(70);

	down();	//2画目
	go(200);	
	up();
	back(130);
	left_t(75);
	back(60);
	right_t(75);
	go(20);
	right_t(130);

	down();	//3画目
	go(75);
	up();
	back(75);
	left_t(130);
 
 	down();	//4画目 
	go(100);
	up();
	down();
	right_t(130);
	go(75);
	up();
	right_t(130);
	go(100);

	down();	//5画目
	back(100);
	up();
	out();	
}

コメント



トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2005-11-15 (火) 02:29:27