2005/B5/Dezz05
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
目次
#contents
*最初 [#gf3144f3]
作成日:11月18日
作成者:Dezz
#define turn_TIME 104 // 曲がる時間(変更
// 可)
sub turn_left() // 左に曲がる
{
SetPower(OUT_A,7);
SetPower(OUT_C,7);
OnRev(OUT_A);OnFwd(OUT_C);
Wait(turn_TIME);Off(OUT_A+OUT_C);Wait(50);
}
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH); // 端子1タッチセンサ
SetSensor(SENSOR_3,SENSOR_TOUCH); // 端子3タッチセンサ
while(true)
{
if ( SENSOR_1 == 1 )
{
SetPower(OUT_A,7);
SetPower(OUT_C,7);
OnRev(OUT_A+OUT_C); // 1が押されると後退
Wait(20); // 後退時間
turn_left(); // 左ターン
}
if ( SENSOR_3 == 1 ) // 3が押されると
{
SetPower(OUT_A,0);
SetPower(OUT_C,7);
OnFwd(OUT_A+OUT_C); // 曲進
Wait (20) ; // 曲進時間
}
else //1,3離れると
{
SetPower(OUT_A,7);
SetPower(OUT_C,7);
OnFwd(OUT_A+OUT_C);Wait(10) //少し前進
OnFwd(OUT_A);OnRev(OUT_C); //左にターン
OnFwd(OUT_A+OUT_C);Wait(10) //少し前進
Wait (30) ; //3が押されるまで
}
} //繰り返し...
}
*改良版 [#w7d12253]
#define turn_TIME 104
sub turn_left()
{
OnRev(OUT_A);OnFwd(OUT_C);
Wait(turn_TIME);Off(OUT_A+OUT_C);Wait(50);
}
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH);
SetSensor(SENSOR_3,SENSOR_TOUCH);
while(true)
{
if (( SENSOR_1 == 0)&&( SENSOR_3 == 1 ))
{
OnFwd(OUT_A+OUT_C);
}
if ( SENSOR_1 == 1 )
{
OnRev(OUT_A+OUT_C);
Wait (50) ;
}
if (( SENSOR_3 == 0 ) && ( SENSOR_1 == 0 ))
{
OnFwd(OUT_A);
}
}
}
*改良版2 [#o42fd717]
#define turn_TIME 104
sub turn_left()
{
OnRev(OUT_A);OnFwd(OUT_C);
Wait(turn_TIME);Off(OUT_A+OUT_C);Wait(50);
}
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH);
SetSensor(SENSOR_3,SENSOR_TOUCH);
while(true)
{
if (( SENSOR_1 == 0)&&( SENSOR_3 == 1 ))
{
Off (OUT_A+OUT_C);
OnFwd(OUT_C);Wait(10);Off (OUT_A+OUT_C);
OnFwd(OUT_C+OUT_A);
}
if ( SENSOR_1 == 1 )
{
Off (OUT_A+OUT_C);
OnRev(OUT_A+OUT_C);
Wait (30) ;turn_left();
OnFwd(OUT_A);Wait(20);OnFwd(OUT_C+OUT_A);
until(SENSOR_3 == 1);
}
if (( SENSOR_3 == 0 ) && ( SENSOR_1 == 0 ))
{
Off (OUT_A+OUT_C);
OnFwd(OUT_A);
}
}
}
[[戻る>2005/B5/dezz01]]
終了行:
目次
#contents
*最初 [#gf3144f3]
作成日:11月18日
作成者:Dezz
#define turn_TIME 104 // 曲がる時間(変更
// 可)
sub turn_left() // 左に曲がる
{
SetPower(OUT_A,7);
SetPower(OUT_C,7);
OnRev(OUT_A);OnFwd(OUT_C);
Wait(turn_TIME);Off(OUT_A+OUT_C);Wait(50);
}
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH); // 端子1タッチセンサ
SetSensor(SENSOR_3,SENSOR_TOUCH); // 端子3タッチセンサ
while(true)
{
if ( SENSOR_1 == 1 )
{
SetPower(OUT_A,7);
SetPower(OUT_C,7);
OnRev(OUT_A+OUT_C); // 1が押されると後退
Wait(20); // 後退時間
turn_left(); // 左ターン
}
if ( SENSOR_3 == 1 ) // 3が押されると
{
SetPower(OUT_A,0);
SetPower(OUT_C,7);
OnFwd(OUT_A+OUT_C); // 曲進
Wait (20) ; // 曲進時間
}
else //1,3離れると
{
SetPower(OUT_A,7);
SetPower(OUT_C,7);
OnFwd(OUT_A+OUT_C);Wait(10) //少し前進
OnFwd(OUT_A);OnRev(OUT_C); //左にターン
OnFwd(OUT_A+OUT_C);Wait(10) //少し前進
Wait (30) ; //3が押されるまで
}
} //繰り返し...
}
*改良版 [#w7d12253]
#define turn_TIME 104
sub turn_left()
{
OnRev(OUT_A);OnFwd(OUT_C);
Wait(turn_TIME);Off(OUT_A+OUT_C);Wait(50);
}
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH);
SetSensor(SENSOR_3,SENSOR_TOUCH);
while(true)
{
if (( SENSOR_1 == 0)&&( SENSOR_3 == 1 ))
{
OnFwd(OUT_A+OUT_C);
}
if ( SENSOR_1 == 1 )
{
OnRev(OUT_A+OUT_C);
Wait (50) ;
}
if (( SENSOR_3 == 0 ) && ( SENSOR_1 == 0 ))
{
OnFwd(OUT_A);
}
}
}
*改良版2 [#o42fd717]
#define turn_TIME 104
sub turn_left()
{
OnRev(OUT_A);OnFwd(OUT_C);
Wait(turn_TIME);Off(OUT_A+OUT_C);Wait(50);
}
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH);
SetSensor(SENSOR_3,SENSOR_TOUCH);
while(true)
{
if (( SENSOR_1 == 0)&&( SENSOR_3 == 1 ))
{
Off (OUT_A+OUT_C);
OnFwd(OUT_C);Wait(10);Off (OUT_A+OUT_C);
OnFwd(OUT_C+OUT_A);
}
if ( SENSOR_1 == 1 )
{
Off (OUT_A+OUT_C);
OnRev(OUT_A+OUT_C);
Wait (30) ;turn_left();
OnFwd(OUT_A);Wait(20);OnFwd(OUT_C+OUT_A);
until(SENSOR_3 == 1);
}
if (( SENSOR_3 == 0 ) && ( SENSOR_1 == 0 ))
{
Off (OUT_A+OUT_C);
OnFwd(OUT_A);
}
}
}
[[戻る>2005/B5/dezz01]]
ページ名: