「水木」の字を書くプログラム。
作成: ゆき

/* 前進/後退 : OUT_A */
/* アーム制御 : OUT_B */
/* ペンの上下 : OUT_C */

#define UNITTIME 13

#define pen_down_wait           OnFwd(OUT_C); Wait(100)
#define pen_up                  OnRev(OUT_C)
#define pen_up_wait             OnRev(OUT_C); Wait(100)


#define move_left(t)            Off(OUT_A); OnRev(OUT_B); Wait(UNITTIME*t)
#define move_right(t)           Off(OUT_A); OnFwd(OUT_B); Wait(UNITTIME*t)
#define move_up(t)              OnRev(OUT_A); Off(OUT_B); Wait(UNITTIME*t)
#define move_down(t)            OnFwd(OUT_A); Off(OUT_B); Wait(UNITTIME*t)
#define move_leftup(t)          OnRev(OUT_A); OnRev(OUT_B); Wait(UNITTIME*t)
#define move_leftdown(t)        OnFwd(OUT_A); OnRev(OUT_B); Wait(UNITTIME*t)
#define move_rightup(t)         OnRev(OUT_A); OnFwd(OUT_B); Wait(UNITTIME*t)
#define move_rightdown(t)       OnFwd(OUT_A); OnFwd(OUT_B); Wait(UNITTIME*t)

#define move_wait(t)            Wait(UNITTIME*t)
#define move_stop               Off(OUT_A); Off(OUT_B)

#define move_left_stop(t)       Off(OUT_A); OnRev(OUT_B); Wait(UNITTIME*t); move_stop
#define move_right_stop(t)      Off(OUT_A); OnFwd(OUT_B); Wait(UNITTIME*t); move_stop
#define move_up_stop(t)         OnRev(OUT_A); Off(OUT_B); Wait(UNITTIME*t); move_stop
#define move_down_stop(t)       OnFwd(OUT_A); Off(OUT_B); Wait(UNITTIME*t); move_stop
#define move_leftup_stop(t)     OnRev(OUT_A); OnRev(OUT_B); Wait(UNITTIME*t); move_stop
#define move_leftdown_stop(t)   OnFwd(OUT_A); OnRev(OUT_B); Wait(UNITTIME*t); move_stop
#define move_rightup_stop(t)    OnRev(OUT_A); OnFwd(OUT_B); Wait(UNITTIME*t); move_stop
#define move_rightdown_stop(t)  OnFwd(OUT_A); OnFwd(OUT_B); Wait(UNITTIME*t); move_stop


task main()
{
    SetPower(OUT_A,1);
    SetPower(OUT_B,7);
    SetPower(OUT_C,2);
    
    // 水 - 1
    pen_down_wait;
    move_down(10);
    pen_up;
    move_wait(1);
    move_leftup_stop(3);
    pen_up_wait;
    
    // 水 - 2
    move_leftup(1);
    move_up_stop(3);
    pen_down_wait;
    move_right_stop(3);
    pen_up;
    move_wait(1);
    move_leftdown_stop(3);
    pen_up_wait;
    
    // 水 - 3
    move_rightup(6);
    move_right_stop(1);
    pen_down_wait;
    pen_up;
    move_leftdown_stop(3);
    pen_up_wait;
    
    // 水 - 4
    pen_down_wait;
    move_rightdown(4);
    pen_up;
    move_wait(1);
    move_right_stop(2);
    pen_up_wait;
    
    // 移動
    move_leftdown(8);
    move_left_stop(2);
    
    // 木 - 1
    pen_down_wait;
    move_right_stop(8);
    pen_up;
    move_left_stop(1);
    pen_up_wait;
    
    // 木 - 2
    move_leftup(3);
    move_left_stop(1);
    pen_down_wait;
    move_down_stop(9);
    pen_up_wait;
    
    // 木 - 3
    move_up_stop(6);
    pen_down_wait;
    move_leftdown(2);
    pen_up;
    move_leftdown_stop(3);
    pen_up_wait;
    
    // 木 - 4
    move_rightup_stop(5);
    pen_down_wait;
    move_rightdown(3);
    pen_up;
    move_rightdown(2);
    move_right_stop(1);
    pen_up_wait;
    
    
    move_down(5);
    Off(OUT_A+OUT_B+OUT_C);
}

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-05-26 (金) 12:08:08