2019b/Member/yamaji/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
目次
#contents
*課題1 [#zee55005]
[[2019b/Mission1]]を参照
*ロボットの説明 [#wad19d56]
左右のタイヤとペンの上げ下げに各1つのモータを使用した自...
まず、全体像はこちら。
#ref(2019b/Member/yamaji/Mission1/zenntai.JPG,50%,ロボッ...
ロボットの安定性を上げるため、左右の車輪の幅を大きくとり...
**ペンの持ち手 [#pd74ecc0]
#ref(2019b/Member/yamaji/Mission1/pen.JPG,50%,ペンの持ち手)
ペンは写真に写っているゴムで固定し、モータを動かすことで...
また、ロボットが回転する時にペンの位置がずれないようにペ...
**コードの仕様 [#s4aef569]
#ref(2019b/Member/yamaji/Mission1/kodo.png,50%,コードの仕...
コードのつけやすさも重要なポイントであると思い、誰がやっ...
*作成途中の問題 [#v8787693]
ロボットは完成し、プログラムを書き、実際に紙に似顔絵を書...
**1つ目 [#qcfce143]
同じプログラムなのにロボットを走らせるたびに絵が変わると...
#ref(2019b/Member/yamaji/Mission1/tigai.JPG,50%,顔の輪郭...
(黒線は手書き)
いろいろ考え試行錯誤してみたところ原因は紙と床の摩擦の違...
**2つ目 [#w6522fd4]
1つ目の問題をクリアし、作成を続けていると、今度はロボット...
**3つ目 [#t2fbfe56]
発表日の前日、プログラムを完成させようといつものように何...
*プログラムの説明 [#l0e57711]
**サブルーチン [#cab5aed8]
sub go_right(int l,int r,int t)
{
OnFwd(OUT_C,l);OnFwd(OUT_B,r);Wait(t);
}
sub vertical(int l,int r,int t)
{
OnFwd(OUT_C,l);OnFwd(OUT_B,r);Wait(t);
}
sub A_up()
{
RotateMotor(OUT_A,20,20);
}
sub A_down()
{
RotateMotor(OUT_A,20,-20);
}
A_upとA_downはペンの上げ下げをする。go_rightとverticalは...
**定義 [#t42b3814]
float GetDegree(float d)
{
const float diameter=5.45;
const float pi=3.1415;
float deg=d/(diameter*pi)*360.0;
return deg;
}
GetDegreeは進みたい距離dに対するタイヤの回転角度を計算し...
**メインプログラム [#gb4b08ad]
task main()
{
int degree8=GetDegree(8.0); int degree2=GetDegree(2...
int degree4=GetDegree(4.0); int degree5=GetDegree(5....
int degree13=GetDegree(13.0);
Wait(1000);
RotateMotor(OUT_BC,30,degree13); //髪の毛の斜め線の...
go_right(25,0,8300); //顔のあごの部分の...
RotateMotor(OUT_BC,30,degree8); //顔の左側面の直線...
go_right(25,0,7000); //頭頂部の曲線を描く
RotateMotor(OUT_BC,30,degree6); //顔の右側面の直線...
A_up(); //ペンを上げる
RotateMotor(OUT_BC,-30,degree4); //4cm後退
vertical(20,-20,1800); //90度旋回する
RotateMotor(OUT_BC,30,degree2); //2cm前進
A_down(); //ペンを下げる
RotateMotor(OUT_BC,30,degree3); //左目を描く
A_up();
RotateMotor(OUT_BC,30,degree4); //4cm前進
A_down();
RotateMotor(OUT_BC,30,degree3); //右目を描く
A_up();
RotateMotor(OUT_BC,-30,degree5); //5cm後退
vertical(-20,20,1800); //90度旋回する
A_down();
RotateMotor(OUT_BC,30,degree3); //鼻を描く
A_up();
RotateMotor(OUT_BC,30,degree4); //4cm前進
vertical(20,-20,1800); //90度旋回する
RotateMotor(OUT_BC,-30,degree2); //2cm後退
A_down();
RotateMotor(OUT_BC,30,degree4); //口を描く
A_up();
}
始めにint型で定義されたdegreeは直進したい距離をRotateMoto...
*まとめ [#w02582a6]
**描いた似顔絵 [#ndd8d4be]
#ref(2019b/Member/yamaji/Mission1/nigaoe.png,50%,ペアの似...
ペアの子の特徴的な髪型を表すため、髪の毛の斜め線だけは最...
**反省・振り返り [#w90ef1b3]
いろいろな問題にぶつかってはペアの子と協力して分析、解明...
終了行:
目次
#contents
*課題1 [#zee55005]
[[2019b/Mission1]]を参照
*ロボットの説明 [#wad19d56]
左右のタイヤとペンの上げ下げに各1つのモータを使用した自...
まず、全体像はこちら。
#ref(2019b/Member/yamaji/Mission1/zenntai.JPG,50%,ロボッ...
ロボットの安定性を上げるため、左右の車輪の幅を大きくとり...
**ペンの持ち手 [#pd74ecc0]
#ref(2019b/Member/yamaji/Mission1/pen.JPG,50%,ペンの持ち手)
ペンは写真に写っているゴムで固定し、モータを動かすことで...
また、ロボットが回転する時にペンの位置がずれないようにペ...
**コードの仕様 [#s4aef569]
#ref(2019b/Member/yamaji/Mission1/kodo.png,50%,コードの仕...
コードのつけやすさも重要なポイントであると思い、誰がやっ...
*作成途中の問題 [#v8787693]
ロボットは完成し、プログラムを書き、実際に紙に似顔絵を書...
**1つ目 [#qcfce143]
同じプログラムなのにロボットを走らせるたびに絵が変わると...
#ref(2019b/Member/yamaji/Mission1/tigai.JPG,50%,顔の輪郭...
(黒線は手書き)
いろいろ考え試行錯誤してみたところ原因は紙と床の摩擦の違...
**2つ目 [#w6522fd4]
1つ目の問題をクリアし、作成を続けていると、今度はロボット...
**3つ目 [#t2fbfe56]
発表日の前日、プログラムを完成させようといつものように何...
*プログラムの説明 [#l0e57711]
**サブルーチン [#cab5aed8]
sub go_right(int l,int r,int t)
{
OnFwd(OUT_C,l);OnFwd(OUT_B,r);Wait(t);
}
sub vertical(int l,int r,int t)
{
OnFwd(OUT_C,l);OnFwd(OUT_B,r);Wait(t);
}
sub A_up()
{
RotateMotor(OUT_A,20,20);
}
sub A_down()
{
RotateMotor(OUT_A,20,-20);
}
A_upとA_downはペンの上げ下げをする。go_rightとverticalは...
**定義 [#t42b3814]
float GetDegree(float d)
{
const float diameter=5.45;
const float pi=3.1415;
float deg=d/(diameter*pi)*360.0;
return deg;
}
GetDegreeは進みたい距離dに対するタイヤの回転角度を計算し...
**メインプログラム [#gb4b08ad]
task main()
{
int degree8=GetDegree(8.0); int degree2=GetDegree(2...
int degree4=GetDegree(4.0); int degree5=GetDegree(5....
int degree13=GetDegree(13.0);
Wait(1000);
RotateMotor(OUT_BC,30,degree13); //髪の毛の斜め線の...
go_right(25,0,8300); //顔のあごの部分の...
RotateMotor(OUT_BC,30,degree8); //顔の左側面の直線...
go_right(25,0,7000); //頭頂部の曲線を描く
RotateMotor(OUT_BC,30,degree6); //顔の右側面の直線...
A_up(); //ペンを上げる
RotateMotor(OUT_BC,-30,degree4); //4cm後退
vertical(20,-20,1800); //90度旋回する
RotateMotor(OUT_BC,30,degree2); //2cm前進
A_down(); //ペンを下げる
RotateMotor(OUT_BC,30,degree3); //左目を描く
A_up();
RotateMotor(OUT_BC,30,degree4); //4cm前進
A_down();
RotateMotor(OUT_BC,30,degree3); //右目を描く
A_up();
RotateMotor(OUT_BC,-30,degree5); //5cm後退
vertical(-20,20,1800); //90度旋回する
A_down();
RotateMotor(OUT_BC,30,degree3); //鼻を描く
A_up();
RotateMotor(OUT_BC,30,degree4); //4cm前進
vertical(20,-20,1800); //90度旋回する
RotateMotor(OUT_BC,-30,degree2); //2cm後退
A_down();
RotateMotor(OUT_BC,30,degree4); //口を描く
A_up();
}
始めにint型で定義されたdegreeは直進したい距離をRotateMoto...
*まとめ [#w02582a6]
**描いた似顔絵 [#ndd8d4be]
#ref(2019b/Member/yamaji/Mission1/nigaoe.png,50%,ペアの似...
ペアの子の特徴的な髪型を表すため、髪の毛の斜め線だけは最...
**反省・振り返り [#w90ef1b3]
いろいろな問題にぶつかってはペアの子と協力して分析、解明...
ページ名: