[[2006a/B1/課題3左]] *光を追いかけるマシンができるまで [#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] -今回は全く隣の班とコミュニケーションをとらなかったので次のロボコンでは隣の班との連携が重要なのでこまめに集まりたいと思う. -今回も結局課題の期日に間に合わなかったのでこれ以上週に集まる期間を増やす事はできないので一回一回の集まりを大切にして集中しながらやっていきたいと思う。さらに集まった日だけやる訳ではなく自宅でやれる事(ホームページの更新やロボット作りなど)は集まる前からある程度終わらせといて集まるといきには何をするかの目標を具体的にして集まりたい。 -努力点と多少かぶってします部分はあるが今回の課題は過去のホームページのにばんぜんじみたいな感じだった事も否めないので次のロボコンでは自分たちの班だけの独特な案を出す事に努力をしたいと思う。