2014b/Member/edaeda/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
目次
#contents
*Mission1について [#mb754557]
書道ロボットを作り、自分の名前の中から1文字選び、それを...
*の紹介 [#p4b9127d]
当初は何も思いつかず、最初に作った前後左右に動くロボッ...
&ref(2014b/Member/edaeda/Mission1/IMG_3304 イ?ト・gif.gif,5...
**機能 [#v6be992d]
紙の上をロボットが動き、そこにペンの上げ下げの動作を加...
***ペン [#jd7dcb42]
ペンをどのようにしてロボット本体に取り付けようか悩んだ...
またアームを下げた際にペンが上にスライドしてしまい、も...
***モーター [#p5618ab5]
モーター2つを両側のタイヤに、1つをペンの上げ下げに用い...
*プログラム [#t2e1dae2]
float GetAngle(float d)
{
const float diameter = 5.45;
const float pi=3.1415;
float ang =d/(diameter*pi)*360.0;
return ang;
}
#define SPEED 50
#define Ninety GetAngle(16.5)
#define ten GetAngle(10)
#define Five GetAngle(5)
#define Eight GetAngle(8)
#define HalfNinety GetAngle(8.25)
#define NineRight RotateMotor(OUT_C,SPEED,Ninety); Rotat...
#define NineLeft RotateMotor(OUT_B,SPEED,Ninety); Rotate...
#define HalfNineLeft RotateMotor(OUT_BC,SPEED,Five); Rot...
#define HalfNineRight RotateMotor(OUT_BC,SPEED,Five); Ro...
#define PenUp RotateMotor(OUT_A,SPEED,-50);
#define PenDown RotateMotor(OUT_A,SPEED,50);
#define GoGo RotateMotor(OUT_BC,SPEED ,angle);
#define BackBack RotateMotor(OUT_BC,SPEED ,-angle);
#define GoUp GoGo;PenUp;
#define NineLeftGoGo2NineLeftDown NineLeft;GoGo;NineLeft...
#define NineLeftDownBackUp HalfNineLeft;PenDown;BackBack...
#define Plus(t) angle += GetAngle(t);
#define Minus(s) angle -= GetAngle(s);
task main()
{
Wait(2000);
Int angle = GetAngle(7);
GoUp;
Minus(3.5);//3.5cm進む
NineLeftGoGo2NineLeftDown;
Plus(11.5);//15
GoUp;
Minus(2);//13
BackBack;HalfNineRight;PenDown;
Minus(9);//4
GoUp;BackBack;NineLeft;PenDown;GoUp;BackBack;HalfNineL...
Plus(3);//7
GoUp;
Minus(3.5);//3.5
NineLeftGoGo2NineLeftDown;
Plus(2.5);//6
GoUp;
Plus(5.3137);//11.3137
HalfLeftDownBackUp;HalfNineLeft;
Minus(5.3137);//6
GoGo;
Plus(3.3137);//9.3137
HalfLeftDownBackUp;
}
**定義 [#baee514f]
#define SPEED 50
#define ten GetAngle(10)
#define Five GetAngle(5)
#define Eight GetAngle(8)
#define Ninety GetAngle(16.5)
#define HalfNinety GetAngle(8.25)
↑それぞれ90°、45°曲がるときに必要な進む距離、そのほかよ...
#define NineRight RotateMotor(OUT_C,SPEED,Ninety); Rotat...
#define NineLeft RotateMotor(OUT_B,SPEED,Ninety); Rotate...
↑90°左右に回転するプログラムです。片方のタイヤが90°分回...
#define HalfNineLeft RotateMotor(OUT_BC,SPEED,Five); Rot...
#define HalfNineRight RotateMotor(OUT_BC,SPEED,Five); Ro...
↑45°左右に回転するプログラムです。NineRight、NineLeftと...
#define PenUp RotateMotor(OUT_A,SPEED,-50);
#define PenDown RotateMotor(OUT_A,SPEED,50);
↑ペンを上げ下げするプログラムです。
#define GoGo RotateMotor(OUT_BC,SPEED ,angle);
#define BackBack RotateMotor(OUT_BC,SPEED ,-angle);
↑ロボットが前進、後退するプログラムです。その時のangle...
#define GoUp GoGo;PenUp;
#define NineLeftGoGo2NineLeftDown NineLeft;GoGo;NineLeft...
#define NineLeftDownBackUp HalfNineLeft;PenDown;BackBack...
↑繰り返し行う動作の入力を省略するためのプログラムです。
#define Plus(t) angle += GetAngle(t);
#define Minus(s) angle -= GetAngle(s);
↑angleの値を足し引きして、定義するためのプログラムです。
**main関数 [#ncfed52f]
task main()
{
Wait(2000);
Int angle = GetAngle(7);
GoUp;
Minus(3.5);//3.5cm進む
NineLeftGoGo2NineLeftDown;
Plus(11.5);//15
GoUp;
Minus(2);//13
BackBack;HalfNineRight;PenDown;
Minus(9);//4
GoUp;BackBack;NineLeft;PenDown;GoUp;BackBack;HalfNineL...
Plus(3);//7
GoUp;
Minus(3.5);//3.5
NineLeftGoGo2NineLeftDown;
Plus(2.5);//6
GoUp;
Plus(5.3137);//11.3137
HalfLeftDownBackUp;HalfNineLeft;
Minus(5.3137);//6
GoGo;
Plus(3.3137);//9.3137
HalfLeftDownBackUp;
}
↑main関数は自分でもプログラムを把握しやすいように、動作...
**苦労した点 [#ze01c9d6]
今回私は「枝」という文字を書くことにしたのですが、書き...
*結果 [#t430f487]
&ref(2014b/Member/edaeda/Mission1/image1.JPG,10%,画像の...
左図のように本番に紙が少しずれてしまったこともありまし...
*反省と感想 [#w4fe0249]
今回はいかに正確なプログラムを仕上げ、本番までにロボッ...
終了行:
目次
#contents
*Mission1について [#mb754557]
書道ロボットを作り、自分の名前の中から1文字選び、それを...
*の紹介 [#p4b9127d]
当初は何も思いつかず、最初に作った前後左右に動くロボッ...
&ref(2014b/Member/edaeda/Mission1/IMG_3304 イ?ト・gif.gif,5...
**機能 [#v6be992d]
紙の上をロボットが動き、そこにペンの上げ下げの動作を加...
***ペン [#jd7dcb42]
ペンをどのようにしてロボット本体に取り付けようか悩んだ...
またアームを下げた際にペンが上にスライドしてしまい、も...
***モーター [#p5618ab5]
モーター2つを両側のタイヤに、1つをペンの上げ下げに用い...
*プログラム [#t2e1dae2]
float GetAngle(float d)
{
const float diameter = 5.45;
const float pi=3.1415;
float ang =d/(diameter*pi)*360.0;
return ang;
}
#define SPEED 50
#define Ninety GetAngle(16.5)
#define ten GetAngle(10)
#define Five GetAngle(5)
#define Eight GetAngle(8)
#define HalfNinety GetAngle(8.25)
#define NineRight RotateMotor(OUT_C,SPEED,Ninety); Rotat...
#define NineLeft RotateMotor(OUT_B,SPEED,Ninety); Rotate...
#define HalfNineLeft RotateMotor(OUT_BC,SPEED,Five); Rot...
#define HalfNineRight RotateMotor(OUT_BC,SPEED,Five); Ro...
#define PenUp RotateMotor(OUT_A,SPEED,-50);
#define PenDown RotateMotor(OUT_A,SPEED,50);
#define GoGo RotateMotor(OUT_BC,SPEED ,angle);
#define BackBack RotateMotor(OUT_BC,SPEED ,-angle);
#define GoUp GoGo;PenUp;
#define NineLeftGoGo2NineLeftDown NineLeft;GoGo;NineLeft...
#define NineLeftDownBackUp HalfNineLeft;PenDown;BackBack...
#define Plus(t) angle += GetAngle(t);
#define Minus(s) angle -= GetAngle(s);
task main()
{
Wait(2000);
Int angle = GetAngle(7);
GoUp;
Minus(3.5);//3.5cm進む
NineLeftGoGo2NineLeftDown;
Plus(11.5);//15
GoUp;
Minus(2);//13
BackBack;HalfNineRight;PenDown;
Minus(9);//4
GoUp;BackBack;NineLeft;PenDown;GoUp;BackBack;HalfNineL...
Plus(3);//7
GoUp;
Minus(3.5);//3.5
NineLeftGoGo2NineLeftDown;
Plus(2.5);//6
GoUp;
Plus(5.3137);//11.3137
HalfLeftDownBackUp;HalfNineLeft;
Minus(5.3137);//6
GoGo;
Plus(3.3137);//9.3137
HalfLeftDownBackUp;
}
**定義 [#baee514f]
#define SPEED 50
#define ten GetAngle(10)
#define Five GetAngle(5)
#define Eight GetAngle(8)
#define Ninety GetAngle(16.5)
#define HalfNinety GetAngle(8.25)
↑それぞれ90°、45°曲がるときに必要な進む距離、そのほかよ...
#define NineRight RotateMotor(OUT_C,SPEED,Ninety); Rotat...
#define NineLeft RotateMotor(OUT_B,SPEED,Ninety); Rotate...
↑90°左右に回転するプログラムです。片方のタイヤが90°分回...
#define HalfNineLeft RotateMotor(OUT_BC,SPEED,Five); Rot...
#define HalfNineRight RotateMotor(OUT_BC,SPEED,Five); Ro...
↑45°左右に回転するプログラムです。NineRight、NineLeftと...
#define PenUp RotateMotor(OUT_A,SPEED,-50);
#define PenDown RotateMotor(OUT_A,SPEED,50);
↑ペンを上げ下げするプログラムです。
#define GoGo RotateMotor(OUT_BC,SPEED ,angle);
#define BackBack RotateMotor(OUT_BC,SPEED ,-angle);
↑ロボットが前進、後退するプログラムです。その時のangle...
#define GoUp GoGo;PenUp;
#define NineLeftGoGo2NineLeftDown NineLeft;GoGo;NineLeft...
#define NineLeftDownBackUp HalfNineLeft;PenDown;BackBack...
↑繰り返し行う動作の入力を省略するためのプログラムです。
#define Plus(t) angle += GetAngle(t);
#define Minus(s) angle -= GetAngle(s);
↑angleの値を足し引きして、定義するためのプログラムです。
**main関数 [#ncfed52f]
task main()
{
Wait(2000);
Int angle = GetAngle(7);
GoUp;
Minus(3.5);//3.5cm進む
NineLeftGoGo2NineLeftDown;
Plus(11.5);//15
GoUp;
Minus(2);//13
BackBack;HalfNineRight;PenDown;
Minus(9);//4
GoUp;BackBack;NineLeft;PenDown;GoUp;BackBack;HalfNineL...
Plus(3);//7
GoUp;
Minus(3.5);//3.5
NineLeftGoGo2NineLeftDown;
Plus(2.5);//6
GoUp;
Plus(5.3137);//11.3137
HalfLeftDownBackUp;HalfNineLeft;
Minus(5.3137);//6
GoGo;
Plus(3.3137);//9.3137
HalfLeftDownBackUp;
}
↑main関数は自分でもプログラムを把握しやすいように、動作...
**苦労した点 [#ze01c9d6]
今回私は「枝」という文字を書くことにしたのですが、書き...
*結果 [#t430f487]
&ref(2014b/Member/edaeda/Mission1/image1.JPG,10%,画像の...
左図のように本番に紙が少しずれてしまったこともありまし...
*反省と感想 [#w4fe0249]
今回はいかに正確なプログラムを仕上げ、本番までにロボッ...
ページ名: