[[2006a/B1/課題3左]]

*光を追いかけるマシンができるまで [#j3dbc2e1]
*光を追いかけるマシンができるまで(ホームページ担当大とゆかポン)[#j3dbc2e1]
-6/30
またメンバー交代を行いあたらしメンバーでプログラム作りを開始!!~
とりあえずメンバーの仕事はたかおが光の部分、ゆかぽんが曲作り。大がホームページとマシン作りをたんとうすることに!
とりあえず曲は%%ジンギスカン%%に決まり!!マシンもプロトタイプが完成し、なかなか順風満帆のスタートです!!
今回ゆかポンが初めてのプログラムに挑戦しましたがなかなか苦労している様子…。
音楽のテンポが既に大変な上にプログラムがちょう度素人なゆかポンにとってはかなりしんどいらしい
-7/3
今日は孝雄と二人で光を追いかけるプログラム作りを開始~
最初 の方ではどうやってプログラムをすればいいかの検討もつかない ままのスタート…。
結局考えついた原理は
 1.光を探すため光を発見するまでぐるぐる回る。
 2.光を見つけたらその光に向かって追いかける。
という流れにする事になったんですけど1はとにかく2のプログ ラムをどうすればいいか全く案がわかない!!
とにかくさっぱりな のでホームページ内をうろうろしながら方法を探していきたいと 思います。。。しかも試運転中マシンにも問題が発生!!まず一つとして
 1.左の後輪のタイヤが外れる
という問題が発生しました。
**試作プログラム(光を発見するまでくるくる回るプログラム) [#h60ea93c]
 task main()
 { SetSensor(SENSOR_1,SENSOR_LIGHT);
 SetSensor(SENSOR_2,SENSOR_LIGHT);
 
 while(SENSOR_1<60.+SENSOR_2<60)
 {
  OnFwd(OUT_A);
  OnRev(OUT_C);
                }
                  }
-七月六日
今日は前回さっぱり案が沸かなかったプログラミングに再挑戦しました。未だにどうすればいいかさっぱりわからない状態だったが。光を追いかけるプログラムに
 go_light;
というプログラムがある事が判明。。。これによって前回作った光を探すプログラムと併用する事によって光を追いかけるプログラムが完成しました!
**試作プログラム2(光を探して見つけたら追いかけるプログラム) [#w41d4eea]
 task main ()
 {
 SetSensor(SENSOR_1,SENSOR_LIGHT);   //光の定義をします
 while(true)
 {
 while (SENSOR_1 <40)    //その間に光を探す為に左に回る
 {
 turn_left;
 }
 while (SENSOR_1 >50)    //光があったら
 {
 go_light;          //光を追いかける 
 
 }
 }

最後にこれにゆかポンが作ってくれた音楽を入力する事によってプログラムが完成!!曲はジンギスカンは難しかったらしくドラクエのテーマとテルーの唄(ゲド戦記主題歌)にきまり(正直こっちの方が大変じゃないのか?)
**完成プログラム(音楽を出しながら光を探して見つけたら違う曲を出すプログラム)作成者 プログラム ダイ たかお 音楽 ゆかぽん [#w9027432]
 task main()
 {
 while (true)       //音楽の定義をします
 
 #define Do0   262
 #define Re0   294
 #define Mi0   330
 #define Fa0   349
 #define Fa00  370
 #define Sol0  392
 #define Sol00 415
 #define Ra0   440
 #define Ti0   494
 #define Do1   523
 #define Re1   587
 #define Mi1   659
 #define Fa1   698
 #define Fa10  740
 #define Sol1  784
 #define Ra1   880
 #define Ti1   988
 #define Do2   1047
 #define Re2   1175
 #define Mi2   1319
 #define Fa2   1397
 #define Sol2  1568
 #define Ra2   1760
 #define Ti2   1976
 #define Do3   2093 
 
  
 task play_music1() //
 {
    while(true)    //曲(ドラゴンクエストのテーマ)を流します
    {
         PlayTone(Sol0,25); Wait(30);
         PlayTone(Sol0,15); Wait(20);   
 
         PlayTone(Do1,15);   Wait(20);
         PlayTone(Re1,15);   Wait(20);
         PlayTone(Mi1,15);   Wait(20);
         PlayTone(Fa1,15);   Wait(20);
         PlayTone(Sol1,15);  Wait(20);
         PlayTone(Do2,35);   Wait(40);
         PlayTone(Ti1,5);    Wait(10);
         PlayTone(Ra1,5);    Wait(10);
         PlayTone(Ra1,35);   Wait(40);
         PlayTone(Sol,5);    Wait(10);
         PlayTone(Fa10,5);   Wait(10);
         PlayTone(Fa10,5);   Wait(10);
         PlayTone(Ra1,5);    Wait(10);
         PlayTone(Sol1,15);  Wait(20);
         PlayTone(Mi1,35);   Wait(40);
         
         PlayTone(Mi0,5);    Wait(10);
         PlayTone(Mi0,5);    Wait(10);
         PlayTone(Mi0,15);   Wait(20);
         PlayTone(Mi0,15);   Wait(20);
         PlayTone(Fa00,15);  Wait(20);
         PlayTone(Sol00,15); Wait(20);
         PlayTone(Ra0,45);   Wait(50);
         
         PlayTone(Ra0,5);    Wait(10);
         PlayTone(Ti0,5);    Wait(10);
         PlayTone(Do1,5);    Wait(10);
         PlayTone(Re1,45);   Wait(50);
         
         PlayTone(Ra0,5);    Wait(10);
         PlayTone(Ra0,5);    Wait(10);
         PlayTone(Do1,5);    Wait(10);
         PlayTone(Do1,15);   Wait(20);
         PlayTone(Ti0,15);   Wait(20);
         PlayTone(Ra0,15);   Wait(20);
         PlayTone(Sol0,15);  Wait(20);
         
         PlayTone(Mi1,45);   Wait(50);
         PlayTone(Fa1,5);    Wait(10);
         PlayTone(Mi1,5);    Wait(10);
         PlayTone(Re1,5);    Wait(10);
         PlayTone(Do1,35);   Wait(40);
         PlayTone(Ra0,15);   Wait(20);
         PlayTone(Do1,15);   Wait(20);
         PlayTone(Re1,45);   Wait(50);
         PlayTone(Mi1,5);    Wait(10);
         PlayTone(Re1,5);    Wait(10);
         PlayTone(Do1,5);    Wait(10);
         PlayTone(Do1,35);   Wait(40);
         PlayTone(Ti0,5);    Wait(20);
         
         PlayTone(Sol0,15);  Wait(20);
         PlayTone(Sol1,45);  Wait(50);
         PlayTone(Mi1,5);    Wait(10);
         PlayTone(Fa1,5);    Wait(10);
         PlayTone(Sol1,5);   Wait(10);
         PlayTone(Ra1,45);   Wait(50);
         
         PlayTone(Ra0,5);    Wait(10);
         PlayTone(Ti0,5);    Wait(10);
         PlayTone(Do1,5);    Wait(10);
         PlayTone(Fa1,35);   Wait(40);
         PlayTone(Mi1,35);   Wait(40);
         PlayTone(Do1,45);   Wait(50);
         
          
 task play_music2() //二曲目(テルーの唄)のプログラムです
 {
 while(true)
 {
 
 
 PlayTone(Sol0,35);Wait(40);
 PlayTone(Sol0,15);Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Fa1,15); Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Re1,5);  Wait(10);
 PlayTone(Do1,5);  Wait(10);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Mi1,35); Wait(50);
 
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Sol1,35);Wait(40);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Do1,35); Wait(40);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Mi1,35); Wait(50);
 
 PlayTone(Ra0,15); Wait(20);
 PlayTone(Ra0,15); Wait(20);
 PlayTone(Ra0,15); Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Ra0,35); Wait(50);
 
 PlayTone(Sol0,15);Wait(20);
 PlayTone(Ra0,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Ti0,15); Wait(20);
 PlayTone(Ra0,35); Wait(50);
 
 PlayTone(Mi1,35); Wait(40);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Mi1,35); Wait(50);
 
 PlayTone(Mi1,35); Wait(40);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Ra1,15); Wait(20);
 PlayTone(Ra1,15); Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Re1,35); Wait(50);
 
 PlayTone(Mi1,35); Wait(40);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Sol1,15);Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Mi1,35); Wait(50);
 
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Ra1,35); Wait(40);
 PlayTone(Ra1,15); Wait(20);
 PlayTone(Ti1,15); Wait(20);
 PlayTone(Sol1,35);Wait(40);
 PlayTone(Mi1,5);  Wait(10);
 PlayTone(Re1,5);  Wait(10);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Mi1,15); Wait(20);
 PlayTone(Do1,15); Wait(20);
 PlayTone(Re1,15); Wait(20);
 PlayTone(Mi1,35); Wait(50);
 
   }
 }
 task main ()
  {
  SetSensor(SENSOR_1,SENSOR_LIGHT);   //光の定義をします
  while(true)
  {
  start play_music;      //音楽を流す
  while (SENSOR_1 <40)    //その間に光を探す為に左に回る
  {
  turn_left;
  }
  while (SENSOR_1 >50)    //光があったら
  {
  stop play_music;      //曲を止めて
  go_light;          //光を追いかける 
  }
  }
  }
 正直打つのすごく大変でした。楽譜も見つからなくて、カンと記憶を頼りに作るしかなかったので倍疲れた…  
**努力した点 [#defefa22]
-今回は当たり前といえば当たり前だが隣の班の力を借りる事なく自分たちの力だけで全行程を完成させた事。
-評価の中心がホームページなので今回はホームページを作る際に自分たちがどうやって作ってきたのかの行程を伝えたかったのでホームページの要所要所にロボットを作ったときに何があったかについて詳しく書いた。写真を多く使おうと仕立てんも努力したと思う。
-プログラムは最初かなり複雑に考えていたがホームページを回っていくうちに簡単なプログラムがわかっていけたので次のロボコンでも全部自分たちで考えていく訳ではなく過去のホームページを参考にしながら効率よく事を進めていきたい。
-曲に関して全く妥協せずにゆかぽんがとても頑張ってくれました。ほかの班に比べて二倍近く長い曲ができた。
-左の後輪のタイヤが外れてしまうというアクシデントが発生したがタイヤとマシンをつなぐ軸を長いものに変更する事によって解決しました。
-音楽に最初に定義値を打ち込んだため最初苦労した分曲を作るときにかね理解的に作業が進めた。今回の課題を通してサブルーチン等の重要さおよび便利さがわかったので複雑なプログラムを行うロボコンではぜひとも活用したい。そのためにはメンバー全員がサブルーチンなどの応用系のプログラミングを習得してロボコンに挑みたい
**反省点と次(ロボコン!!)への課題 [#r920dbc3]
-今回は全く隣の班とコミュニケーションをとらなかったので次のロボコンでは隣の班との連携が重要なのでこまめに集まりたいと思う.
-今回も結局課題の期日に間に合わなかったのでこれ以上週に集まる期間を増やす事はできないので一回一回の集まりを大切にして集中しながらやっていきたいと思う。さらに集まった日だけやる訳ではなく自宅でやれる事(ホームページの更新やロボット作りなど)は集まる前からある程度終わらせといて集まるといきには何をするかの目標を具体的にして集まりたい。
-努力点と多少かぶってします部分はあるが今回の課題は過去のホームページのにばんぜんじみたいな感じだった事も否めないので次のロボコンでは自分たちの班だけの独特な案を出す事に努力をしたいと思う。
-さすがに三回目の課題となるとみんな前回の反省を生かしつつ作業を行えたのでプログラムが多少複雑化しても基本が一緒のためだいぶスムーズにできた。がしかし次のロボコンではかなり作業量が多くなると思われるので油断しないように挑みたい。
**コメントお願いします(誰でも書き込みOK) [#i02e7ecb]
-お疲れ様。ロボコンがんばってください。 -- [[ゆき(TA)]] &new{2006-07-20 (木) 10:54:51};

#comment


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