「達筆」の字を書くプログラム。~
作成: ゆき

 /* 前進/後退 : 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 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_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_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
 #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);
    
     SetPower(OUT_A,1);
     SetPower(OUT_B,7);
     SetPower(OUT_C,2);
     
 
    // 達 - 1
    pen_down_wait;
    move_right_stop(4);
    pen_up_wait;
    
    // 達 - 2
    move_leftup(1); move_left_stop(1);
    pen_down_wait;
    move_down_stop(2);
    pen_up_wait;
    
    // 達 - 3
    move_left_stop(3);
    pen_down_wait;
    move_right_stop(6);
    pen_up_wait;
    
    // 達 - 4
    move_leftdown(1); move_left_stop(4);
    pen_down_wait;
    move_rightdown_stop(1);
    pen_up_wait;
    
    // 達 - 5
    move_rightup(1); move_right_stop(2);
    pen_down_wait;
    move_leftdown_stop(1);
    pen_up_wait;
    
    // 達 - 6
    move_left_stop(4);
    pen_down_wait;
    move_right_stop(6);
    pen_up_wait;
    
    // 達 - 7
    move_leftdown(1); move_left_stop(4);
    pen_down_wait;
    move_right_stop(4);
    pen_up_wait;
    
    // 達 - 8
    move_leftdown(1); move_left_stop(4);
    pen_down_wait;
    move_right_stop(6);
    pen_up_wait;
    
    // 達 - 9
    move_leftup(2); move_left_stop(1);
    pen_down_wait;
    move_down_stop(5);
    pen_up_wait;
    
    // 達 - しんにょう1
    move_leftup(6); move_up_stop(2);
    pen_down_wait;
    move_rightdown_stop(2);
    pen_up_wait;
    
    // 達 - しんにょう2
    move_leftdown(1); move_left_stop(2);
    pen_down_wait;
    move_right_stop(3);
    pen_up; move_wait(1);
    move_leftdown_stop(2);
    pen_down_wait;
    move_right_stop(2);
    pen_up; move_wait(1);
    move_leftdown_stop(2);
    pen_up_wait;
    
    // 達 - しんにょう3
    move_leftup_stop(1);
    pen_down_wait;
    move_rightdown(3); move_right(3);
    pen_up;
    move_right_stop(5);
    pen_up_wait;
    
    // 移動
    move_leftdown(2);
    move_left_stop(6);
    
    // 筆 - 竹冠1
    pen_down_wait;
    pen_up;
    move_leftdown_stop(3);
    pen_up_wait;
    
    // 筆 - 竹冠2
    move_rightup_stop(2);
    pen_down_wait;
    move_right_stop(2);
    pen_up_wait;
    
    // 筆 - 竹冠3
    move_left_stop(1);
    pen_down_wait;
    move_down_stop(1);
    pen_up_wait;
    
    // 筆 - 竹冠4
    move_rightup(2); move_right_stop(2);
    pen_down_wait;
    pen_up;
    move_leftdown_stop(3);
    pen_up_wait;
    
    // 筆 - 竹冠5
    move_rightup_stop(2);
    pen_down_wait;
    move_right_stop(2);
    pen_up_wait;
    
    // 筆 - 竹冠6
    move_left_stop(1);
    pen_down_wait;
    move_down_stop(1);
    pen_up_wait;
    
    // 筆 - 下の部分1
    move_leftdown(1); move_left_stop(4);
    pen_down_wait;
    move_right_stop(4); move_wait(1); move_down_stop(2);
    pen_up_wait;
    
    // 筆 - 下の部分2
    move_leftup(1); move_left_stop(4);
    pen_down_wait;
    move_right_stop(6);
    pen_up_wait;
    
    // 筆 - 下の部分3
    move_leftdown(1); move_left_stop(4);
    pen_down_wait;
    move_right_stop(4);
    pen_up_wait;
    
    // 筆 - 下の部分4
    move_leftdown(1); move_left_stop(3);
    pen_down_wait;
    move_right_stop(4);
    pen_up_wait;
    
    // 筆 - 下の部分5
    move_leftdown(1); move_left_stop(5);
    pen_down_wait;
    move_right_stop(8);
    pen_up_wait;
    
    // 筆 - 下の部分6
    move_leftup(4); move_up_stop(1);
    pen_down_wait;
    move_down(6);
    pen_up;
    move_down_stop(8);
    
    
    Off(OUT_A+OUT_B+OUT_C);
     // 達 - 1
     pen_down_wait;
     move_right_stop(4);
     pen_up_wait;
     
     // 達 - 2
     move_leftup(1); move_left_stop(1);
     pen_down_wait;
     move_down_stop(2);
     pen_up_wait;
     
     // 達 - 3
     move_left_stop(3);
     pen_down_wait;
     move_right_stop(6);
     pen_up_wait;
     
     // 達 - 4
     move_leftdown(1); move_left_stop(4);
     pen_down_wait;
     move_rightdown_stop(1);
     pen_up_wait;
     
     // 達 - 5
     move_rightup(1); move_right_stop(2);
     pen_down_wait;
     move_leftdown_stop(1);
     pen_up_wait;
     
     // 達 - 6
     move_left_stop(4);
     pen_down_wait;
     move_right_stop(6);
     pen_up_wait;
     
     // 達 - 7
     move_leftdown(1); move_left_stop(4);
     pen_down_wait;
     move_right_stop(4);
     pen_up_wait;
     
     // 達 - 8
     move_leftdown(1); move_left_stop(4);
     pen_down_wait;
     move_right_stop(6);
     pen_up_wait;
     
     // 達 - 9
     move_leftup(2); move_left_stop(1);
     pen_down_wait;
     move_down_stop(5);
     pen_up_wait;
     
     // 達 - しんにょう1
     move_leftup(6); move_up_stop(2);
     pen_down_wait;
     move_rightdown_stop(2);
     pen_up_wait;
     
     // 達 - しんにょう2
     move_leftdown(1); move_left_stop(2);
     pen_down_wait;
     move_right_stop(3);
     pen_up; move_wait(1);
     move_leftdown_stop(2);
     pen_down_wait;
     move_right_stop(2);
     pen_up; move_wait(1);
     move_leftdown_stop(2);
     pen_up_wait;
     
     // 達 - しんにょう3
     move_leftup_stop(1);
     pen_down_wait;
     move_rightdown(3); move_right(3);
     pen_up;
     move_right_stop(5);
     pen_up_wait;
     
     // 移動
     move_leftdown(2);
     move_left_stop(6);
     
     // 筆 - 竹冠1
     pen_down_wait;
     pen_up;
     move_leftdown_stop(3);
     pen_up_wait;
     
     // 筆 - 竹冠2
     move_rightup_stop(2);
     pen_down_wait;
     move_right_stop(2);
     pen_up_wait;
     
     // 筆 - 竹冠3
     move_left_stop(1);
     pen_down_wait;
     move_down_stop(1);
     pen_up_wait;
     
     // 筆 - 竹冠4
     move_rightup(2); move_right_stop(2);
     pen_down_wait;
     pen_up;
     move_leftdown_stop(3);
     pen_up_wait;
     
     // 筆 - 竹冠5
     move_rightup_stop(2);
     pen_down_wait;
     move_right_stop(2);
     pen_up_wait;
     
     // 筆 - 竹冠6
     move_left_stop(1);
     pen_down_wait;
     move_down_stop(1);
     pen_up_wait;
     
     // 筆 - 下の部分1
     move_leftdown(1); move_left_stop(4);
     pen_down_wait;
     move_right_stop(4); move_wait(1); move_down_stop(2);
     pen_up_wait;
     
     // 筆 - 下の部分2
     move_leftup(1); move_left_stop(4);
     pen_down_wait;
     move_right_stop(6);
     pen_up_wait;
     
     // 筆 - 下の部分3
     move_leftdown(1); move_left_stop(4);
     pen_down_wait;
     move_right_stop(4);
     pen_up_wait;
     
     // 筆 - 下の部分4
     move_leftdown(1); move_left_stop(3);
     pen_down_wait;
     move_right_stop(4);
     pen_up_wait;
     
     // 筆 - 下の部分5
     move_leftdown(1); move_left_stop(5);
     pen_down_wait;
     move_right_stop(8);
     pen_up_wait;
     
     // 筆 - 下の部分6
     move_leftup(4); move_up_stop(1);
     pen_down_wait;
     move_down(6);
     pen_up;
     move_down_stop(8);
     
     
     Off(OUT_A+OUT_B+OUT_C);
 
 }



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS