*漢字の『右』を書く;書道ロボット(課題1) [#eb39bce2] #define PEN_TIME 10 //ペンを動かす時間 sub pen_down() //ペンの下ろす動作 { OnFwd(OUT_B); //Bモータ前回転 Wait(PEN_TIME); //0.1秒待つ Float(OUT_B); //Bモータ静かに停止 } sub pen_up() //ペンを上げる動作 { OnRev(OUT_B); //Bモータ後回転 Wait(PEN_TIME); //0.1秒待つ Float(OUT_B); //Bモータ静かに停止 } task main() { //一画目 PlaySound(SOUND_CLICK) ; //音を出す pen_down(); //ペンを下ろす動作 Wait(20); //0.2秒待つ OnFwd(OUT_A+OUT_C); //A、C両モータ前回転 Wait(10); //0.1秒待つ repeat(35){ //35回繰り返し OnRev(OUT_C); //Cモータ後回転 Wait(1); //0.01秒待つ OnFwd(OUT_C); //Cモータ前回転 Wait(3); //0.03秒待つ } Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(10); //0.1秒待つ pen_up(); //ペンを上げる動作 Wait(10); //0.1秒待つ OnRev(OUT_C); //Cモータ後回転 OnFwd(OUT_A); //Aモータ前回転 Wait(220); //2.2秒待つ OnFwd(OUT_C); //Cモータ前回転 Wait(120); //1.2秒待つ OnRev(OUT_C); //Cモータ前回転 Wait(147); //1.47秒待つ OnRev(OUT_A); //Aモータ後回転 Wait(100); //1秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(20); //0.2秒待つ //二画目 pen_down(); //ペンを下ろす動作 Wait(PEN_TIME); //0.1秒待つ OnFwd(OUT_A+OUT_C); //A,C両モータ前回転 Wait(100); //1秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(10); //0.1秒待つ pen_up(); //ペンを上げる動作 Wait(10); //0.1秒待つ OnRev(OUT_A+OUT_C); //A、C両モータ後回転 Wait(60); //0.6秒待つ OnFwd(OUT_A); //Aモータ前回転 OnRev(OUT_C); //Cモータ後回転 Wait(147); //1.47秒待つ OnRev(OUT_A); //Aモータ後回転 Wait(100); //1秒待つ OnFwd(OUT_A+OUT_C); //A、C両モータ前回転 Wait(25); //0.25秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(20); //0.2秒待つ //3画目 pen_down(); //ペンを下ろす動作 Wait(PEN_TIME); //0.1秒待つ OnFwd(OUT_A+OUT_C); //A、C両モータ前回転 Wait(45); //0.45秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(10); //0.1秒待つ pen_up(); //ペンを上げる動作 Wait(10); //0.1秒待つ OnRev(OUT_A+OUT_C); //A、C両モータ後回転 Wait(45); //0.45秒待つ OnRev(OUT_A); //Aモータ後回転 OnFwd(OUT_C); //Cモータ前回転 Wait(147); //1.47秒待つ Rev(OUT_A+OUT_C); //A、C両モータ後回転 Wait(100); //1秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(20); //0.2秒待つ //4画目 pen_down(); //ペンを下ろす動作 Wait(PEN_TIME); //0.1秒待つ OnFwd(OUT_A+OUT_C); //A、C両モータ前回転 Wait(60); //0.6秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(10); //0.1秒待つ pen_up(); //ペンを上げる動作 Wait(10); //0.1秒待つ OnFwd(OUT_A+OUT_C); //A、C両モータ前回転 Wait(100); //1秒待つ OnRev(OUT_C); //Cモータ後回転 Wait(147); //1.47秒待つ OnRev(OUT_A+OUT_C); //A、C両モータ後回転 Wait(100); //1秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(20); //0.2秒待つ pen_down(); //ペンを下ろす動作 Wait(PEN_TIME); //0.1秒待つ OnFwd(OUT_A+OUT_C); //A、C両モータ前回転 Wait(45); //0.45秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(10); //0.1秒待つ pen_up(); //ペンを上げる動作 Wait(10); //0.1秒待つ OnFwd(OUT_A+OUT_C); //A、C両モータ前回転 Wait(100); //1秒待つ OnRev(OUT_A); //Aモータ後回転 Wait(147); //1.47秒待つ OnRev(OUT_A+OUT_C); //A、C両モータ後回転 Wait(160); //1.6秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(20); //0.2秒待つ //5画目 pen_down(); //ペンを下ろす動作 Wait(10); //0.1秒待つ OnFwd(OUT_A+OUT_C); //A、C両モータ前回転 Wait(60); //0.6秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 Wait(10); //0.1秒待つ pen_up(); //ペンを上げる動作 Wait(10); //0.1秒待つ OnFwd(OUT_A+OUT_C); //A、C両モータ前回転 Wait(100); //1秒待つ Float(OUT_A+OUT_C); //A、C両モータ静かに停止 PlaySound(SOUND_FAST_UP) ; //音を鳴らす } -感想 思っていたよりもとても難しくて考えていたようなものは出来なかった。『右』 という漢字が出来上がらなかった。これから学んでいって良いものを作れるよう にしたいと思った。 -プログラム中のコメント文は / ではなくて // で始めます。また入門期を過ぎたころなので、すべての行にコメントを書くのではなくて説明の必要なところだけに留めておいたほうが逆にわかりやすい説明になると思います。 -- [[松本(教員)]] &new{2005-11-30 (水) 09:33:54}; #comment [[2005/C2/キャベツ]]