2018b/Member/Tom/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2018b/Member]]
目次
#contents
*課題1 [#t713a5e0]
これまで住んだことのある都道府県名、市町村名、地区名など...
私たちは書きやすさを考慮し、仙台という文字を書くことにし...
*ロボットの説明 [#l8dce5b3]
私たちのグループでは、当初プリンタ型のロボットを作ろうと...
&ref(2018b/Member/Tom/Mission1/robo.jpg,50%,ロボット);
**製作過程の問題点 [#t4d3de17]
問題点1 制御スピードについて
始めはロボットのスピードを50で動かしたが、左右に曲がると...
改善策1
私たちはロボットのスピードが速すぎることが原因でこのよう...
**走行時の問題点 [#i7892366]
問題点1 使用するペンについて
アームを下げるたびにペンの角度が変化して文字が書けなくな...
改善策1
&ref(2018b/Member/Tom/Mission1/39109.jpg,50%,ロボット);
プログラムを変えることは難しいと考えたため、使用するペン...
問題点2 文字の大きさの調節について
文字を書いてみるとA4の紙に文字が収まらずにうまく字が書け...
改善策2
ロボットを動かす時間をたくさん定義し、読める文字が書ける...
**工夫した点 [#m9a77c71]
重心を真ん中にするために左右対称になるロボットを製作した。
旋回をした時に文字がつながらなくなるのを防ぐために、2つ...
後輪をを取り付けることで重心を少し前にずらし、回転をより...
&ref(2018b/Member/Tom/Mission1/39104.jpg,50%,ロボット);
*プログラムの説明 [#y3453750]
**各定義の意味 [#yb6efdbe]
M_T=Move_Time 時間を定義する。
STP=STOP ロボットが停止する。
SSM=SUSUME 前進する。
MDR=MODORE 後退する。
MMGR=MiginiMAGARE 45度右に回る。
HMGR=HidariniMAGARE 45度左に回る。
PD=PenDown ペンを持つアームを上げる。
PU=PenUp ペンを持つアームを下げる。
定義は大きく分けて以下の8種類を作成した。
ロボットの動く時間の定義
#define M_T 250 //0.250秒を表している
#define M_T1 500 //0.500秒を表している
#define M_T2 707 //0.707秒を表している
#define M_T3 1000 //1.000秒を表している
#define M_T4 1500 //1.500秒を表している
#define M_T5 1875 //1.875秒を表している
#define M_T6 275 //0.275秒を表している
#define M_T7 457 //0.457秒を表している
ロボットの走行スピードの定義
#define SP 30
モータの停止の定義
#define STP Wait(M_T) //0.250秒間モータが停止する
#define STP1 Wait(M_T1) //0.500秒間モータが停止する
#define STP2 Wait(M_T2) //0.707秒間モータが停止する
#define STP3 Wait(M_T3) //1.000秒間モータが停止する
#define STP4 Wait(M_T4) //1.500秒間モータが停止する
#define STP5 Wait(M_T5) //1.875秒間モータが停止する
#define STP6 Wait(M_T6) //0.275秒間モータが停止する
#define STP7 Wait(M_T7) //0.457秒間モータが停止する
ロボットの停止時間の定義
#define TIS Off(OUT_BC);Wait(M_T1) //0.250秒間ロボッ...
ロボットの前進の定義
#define SSM OnFwd(OUT_BC,SP);STP;TIS //0.250秒間ロ...
#define SSM1 OnFwd(OUT_BC,SP);STP1;TIS //0.500秒間ロ...
#define SSM2 OnFwd(OUT_BC,SP);STP2;TIS //0.707秒間ロ...
#define SSM3 OnFwd(OUT_BC,SP);STP3;TIS //1.000秒間ロ...
#define SSM4 OnFwd(OUT_BC,SP);STP4;TIS //1.500秒間ロ...
#define SSM5 OnFwd(OUT_BC,SP);STP7;TIS //0.457秒間ロ...
ロボットの後退の定義
#define MDR OnRev(OUT_BC,SP);STP;TIS //0.250秒間ロ...
#define MDR1 OnRev(OUT_BC,SP);STP1;TIS //0.500秒間ロ...
#define MDR2 OnRev(OUT_BC,SP);STP2;TIS //0.707秒間ロ...
#define MDR3 OnRev(OUT_BC,SP);STP3;TIS //1.000秒間ロ...
#define MDR4 OnRev(OUT_BC,SP);STP4;TIS //1.500秒間ロ...
#define MDR5 OnRev(OUT_BC,SP);STP7;TIS //0.457秒間ロ...
旋回の定義
#define MMGR OnFwd(OUT_B,SP);OnRev(OUT_C,SP);STP6;TIS...
#define HMGR OnFwd(OUT_C,SP);OnRev(OUT_B,SP);STP6;TIS...
ペンの上げ下げの定義
#define PD RotateMotor(OUT_A,50,-90);Wait(M_T3); //...
#define PU RotateMotor(OUT_A,50,90);Wait(M_T3); //ペ...
**ロボットの稼働プログラム [#wf24613e]
文字は下記の写真のような書き順で書き、プログラムの右側の...
&ref(2018b/Member/Tom/Mission1/SENDAI.jpg,50%,ロボット);
***「仙」のイ [#w41cc116]
SSM3; //?を書く。
TIS;
PU; //ペンを上げる。
MDR1; //?で書いた線の中点まで戻る。ここで?が書き終わ...
TIS;
HMGR; //?を書くために左に45度回転する。
TIS;
PD; //ペンを下げる。
SSM3; //?を書く。
TIS;
PU; //ここで?が書き終わる。
HMGR; //ここからは?を書くための移動のプログラム。
TIS;
HMGR; //左に旋回を2回することで90度回転し右を向く。
TIS;
SSM1; //?を書くために右に進む。
TIS;
HMGR;
TIS;
HMGR; //?を書くために左に2回旋回する。
TIS; //移動完了。
***「仙」の山 [#j18e14bd]
PD; //ペンを下げる。
SSM1; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
MDR1; //ここからは?を書くための移動のプログラム。
TIS;
MMGR;
MMGR; //右に2回旋回することで90度回転する。
TIS; //移動完了。
PD; //ペンを下げる。
SSM3; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
HMGR; //ここからは?を書くための方向転換のプログラム。
TIS;
HMGR; //左に2回旋回することで90度回転する。方向転換...
PD; //ペンを下げる。
SSM1; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
SSM3; //ここからは?を書くための移動プログラム。 ...
TIS:
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転する。
TIS;
SSM1; //?の中点の延長線上まで移動する。
TIS;
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転する。
TIS; //移動完了。
PD; //ペンを下げる。
SSM4; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
TIS; //ここからは?を書くための移動プログラム。
HMGR; //
TIS;
HMGR; //左に2回旋回することで90度回転する。
SSM4; //?を書くための初期位置に移動する。
TIS; //移動完了。
***「台」のロ [#b973208b]
PD; //ペンを下げる。
SSM3; //?を書く。
TIS;
PU; //ペンを上げる。
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS;
PD; //ペンを下げる。
TIS;
SSM1; //?の続きを書く
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
TIS; //ここからは?を書くために向きを変えるプログラ...
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS; //方向転換完了。
PD; //ペンを下げる。
SSM3; //?を書く。
TIS;
PU; //ペンを上げる。
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS;
PD; //ペンを下げる。
SSM1; //?の続きを書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
MDR3; //ここからは?を書くための移動のプログラム。
TIS;
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS; //移動完了。
***「台」のム [#c2281337]
PD; //ペンを下げる。
SSM3; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
HMGR; //ここからは?を書くための移動のプログラム。
HMGR;
HMGR; //左に3回旋回することで135度回転し向きを変える。
MDR; //?を書くための初期位置に移動する。
TIS; //移動完了。
PD; //ペンを下げる。
SSM1; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
SSM5; //ここからは?を書くための移動のプログラム。前...
TIS;
HMGR;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS; //移動完了。
PD; //ペンを下げる。
SSM2; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
*実際に書けた文字 [#x0f21595]
&ref(2018b/Member/Tom/Mission1/39151.jpg,50%,ロボット);
A4の紙でもぎりぎりのサイズの大きさの文字ではあるが何とか...
*考察 [#w6c5cc02]
車体にペンを取り付けて走行するロボットは1度旋回を失敗する...
終了行:
[[2018b/Member]]
目次
#contents
*課題1 [#t713a5e0]
これまで住んだことのある都道府県名、市町村名、地区名など...
私たちは書きやすさを考慮し、仙台という文字を書くことにし...
*ロボットの説明 [#l8dce5b3]
私たちのグループでは、当初プリンタ型のロボットを作ろうと...
&ref(2018b/Member/Tom/Mission1/robo.jpg,50%,ロボット);
**製作過程の問題点 [#t4d3de17]
問題点1 制御スピードについて
始めはロボットのスピードを50で動かしたが、左右に曲がると...
改善策1
私たちはロボットのスピードが速すぎることが原因でこのよう...
**走行時の問題点 [#i7892366]
問題点1 使用するペンについて
アームを下げるたびにペンの角度が変化して文字が書けなくな...
改善策1
&ref(2018b/Member/Tom/Mission1/39109.jpg,50%,ロボット);
プログラムを変えることは難しいと考えたため、使用するペン...
問題点2 文字の大きさの調節について
文字を書いてみるとA4の紙に文字が収まらずにうまく字が書け...
改善策2
ロボットを動かす時間をたくさん定義し、読める文字が書ける...
**工夫した点 [#m9a77c71]
重心を真ん中にするために左右対称になるロボットを製作した。
旋回をした時に文字がつながらなくなるのを防ぐために、2つ...
後輪をを取り付けることで重心を少し前にずらし、回転をより...
&ref(2018b/Member/Tom/Mission1/39104.jpg,50%,ロボット);
*プログラムの説明 [#y3453750]
**各定義の意味 [#yb6efdbe]
M_T=Move_Time 時間を定義する。
STP=STOP ロボットが停止する。
SSM=SUSUME 前進する。
MDR=MODORE 後退する。
MMGR=MiginiMAGARE 45度右に回る。
HMGR=HidariniMAGARE 45度左に回る。
PD=PenDown ペンを持つアームを上げる。
PU=PenUp ペンを持つアームを下げる。
定義は大きく分けて以下の8種類を作成した。
ロボットの動く時間の定義
#define M_T 250 //0.250秒を表している
#define M_T1 500 //0.500秒を表している
#define M_T2 707 //0.707秒を表している
#define M_T3 1000 //1.000秒を表している
#define M_T4 1500 //1.500秒を表している
#define M_T5 1875 //1.875秒を表している
#define M_T6 275 //0.275秒を表している
#define M_T7 457 //0.457秒を表している
ロボットの走行スピードの定義
#define SP 30
モータの停止の定義
#define STP Wait(M_T) //0.250秒間モータが停止する
#define STP1 Wait(M_T1) //0.500秒間モータが停止する
#define STP2 Wait(M_T2) //0.707秒間モータが停止する
#define STP3 Wait(M_T3) //1.000秒間モータが停止する
#define STP4 Wait(M_T4) //1.500秒間モータが停止する
#define STP5 Wait(M_T5) //1.875秒間モータが停止する
#define STP6 Wait(M_T6) //0.275秒間モータが停止する
#define STP7 Wait(M_T7) //0.457秒間モータが停止する
ロボットの停止時間の定義
#define TIS Off(OUT_BC);Wait(M_T1) //0.250秒間ロボッ...
ロボットの前進の定義
#define SSM OnFwd(OUT_BC,SP);STP;TIS //0.250秒間ロ...
#define SSM1 OnFwd(OUT_BC,SP);STP1;TIS //0.500秒間ロ...
#define SSM2 OnFwd(OUT_BC,SP);STP2;TIS //0.707秒間ロ...
#define SSM3 OnFwd(OUT_BC,SP);STP3;TIS //1.000秒間ロ...
#define SSM4 OnFwd(OUT_BC,SP);STP4;TIS //1.500秒間ロ...
#define SSM5 OnFwd(OUT_BC,SP);STP7;TIS //0.457秒間ロ...
ロボットの後退の定義
#define MDR OnRev(OUT_BC,SP);STP;TIS //0.250秒間ロ...
#define MDR1 OnRev(OUT_BC,SP);STP1;TIS //0.500秒間ロ...
#define MDR2 OnRev(OUT_BC,SP);STP2;TIS //0.707秒間ロ...
#define MDR3 OnRev(OUT_BC,SP);STP3;TIS //1.000秒間ロ...
#define MDR4 OnRev(OUT_BC,SP);STP4;TIS //1.500秒間ロ...
#define MDR5 OnRev(OUT_BC,SP);STP7;TIS //0.457秒間ロ...
旋回の定義
#define MMGR OnFwd(OUT_B,SP);OnRev(OUT_C,SP);STP6;TIS...
#define HMGR OnFwd(OUT_C,SP);OnRev(OUT_B,SP);STP6;TIS...
ペンの上げ下げの定義
#define PD RotateMotor(OUT_A,50,-90);Wait(M_T3); //...
#define PU RotateMotor(OUT_A,50,90);Wait(M_T3); //ペ...
**ロボットの稼働プログラム [#wf24613e]
文字は下記の写真のような書き順で書き、プログラムの右側の...
&ref(2018b/Member/Tom/Mission1/SENDAI.jpg,50%,ロボット);
***「仙」のイ [#w41cc116]
SSM3; //?を書く。
TIS;
PU; //ペンを上げる。
MDR1; //?で書いた線の中点まで戻る。ここで?が書き終わ...
TIS;
HMGR; //?を書くために左に45度回転する。
TIS;
PD; //ペンを下げる。
SSM3; //?を書く。
TIS;
PU; //ここで?が書き終わる。
HMGR; //ここからは?を書くための移動のプログラム。
TIS;
HMGR; //左に旋回を2回することで90度回転し右を向く。
TIS;
SSM1; //?を書くために右に進む。
TIS;
HMGR;
TIS;
HMGR; //?を書くために左に2回旋回する。
TIS; //移動完了。
***「仙」の山 [#j18e14bd]
PD; //ペンを下げる。
SSM1; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
MDR1; //ここからは?を書くための移動のプログラム。
TIS;
MMGR;
MMGR; //右に2回旋回することで90度回転する。
TIS; //移動完了。
PD; //ペンを下げる。
SSM3; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
HMGR; //ここからは?を書くための方向転換のプログラム。
TIS;
HMGR; //左に2回旋回することで90度回転する。方向転換...
PD; //ペンを下げる。
SSM1; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
SSM3; //ここからは?を書くための移動プログラム。 ...
TIS:
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転する。
TIS;
SSM1; //?の中点の延長線上まで移動する。
TIS;
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転する。
TIS; //移動完了。
PD; //ペンを下げる。
SSM4; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
TIS; //ここからは?を書くための移動プログラム。
HMGR; //
TIS;
HMGR; //左に2回旋回することで90度回転する。
SSM4; //?を書くための初期位置に移動する。
TIS; //移動完了。
***「台」のロ [#b973208b]
PD; //ペンを下げる。
SSM3; //?を書く。
TIS;
PU; //ペンを上げる。
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS;
PD; //ペンを下げる。
TIS;
SSM1; //?の続きを書く
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
TIS; //ここからは?を書くために向きを変えるプログラ...
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS; //方向転換完了。
PD; //ペンを下げる。
SSM3; //?を書く。
TIS;
PU; //ペンを上げる。
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS;
PD; //ペンを下げる。
SSM1; //?の続きを書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
MDR3; //ここからは?を書くための移動のプログラム。
TIS;
HMGR;
TIS;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS; //移動完了。
***「台」のム [#c2281337]
PD; //ペンを下げる。
SSM3; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
HMGR; //ここからは?を書くための移動のプログラム。
HMGR;
HMGR; //左に3回旋回することで135度回転し向きを変える。
MDR; //?を書くための初期位置に移動する。
TIS; //移動完了。
PD; //ペンを下げる。
SSM1; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
SSM5; //ここからは?を書くための移動のプログラム。前...
TIS;
HMGR;
HMGR; //左に2回旋回することで90度回転し、向きを変え...
TIS; //移動完了。
PD; //ペンを下げる。
SSM2; //?を書く。
TIS; //ここで?が書き終わる。
PU; //ペンを上げる。
*実際に書けた文字 [#x0f21595]
&ref(2018b/Member/Tom/Mission1/39151.jpg,50%,ロボット);
A4の紙でもぎりぎりのサイズの大きさの文字ではあるが何とか...
*考察 [#w6c5cc02]
車体にペンを取り付けて走行するロボットは1度旋回を失敗する...
ページ名: