2015a/Member/junpon/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2015a/Member]]
*書道ロボット(名前) [#vdf158c3]
**はじめに [#w9ac1c74]
このページは2015年ロボテッィクス入門ゼミ前期の課題1、書...
**ロボットの説明 [#xf3f0713]
#ref(IMG_20150605_124126.jpg,,30%)
このロボットは真ん中に穴が開いており、タイヤを使ってペン...
ペンは通常のサインペンであればどれでも対応可能である。
土台は基本的な形で、右と左にタイヤが2つずつくっついて設...
プログラミングが記憶されている機械は後ろについているので...
代わりのレゴブロックを設置している。
文字を書く際はロボット自体が線の軌跡をたどり、線が途切れ...
**プログラムについて [#b955b91c]
#define turn_right(t) OnRev(OUT_C); OnFwd(OUT_A);\
Wait(t);Off(OUT_AC);
#define turn_left(t) OnRev(OUT_A); OnFwd(OUT_C);\
Wait(t);Off(OUT_AC);
#define go_forward(t) OnFwd(OUT_AC);\
Wait(t);Off(OUT_AC);
#define go_back(t) OnRev(OUT_AC);\
Wait(t);Off(OUT_AC);
#define go_down(t) OnRev(OUT_B); Wait(t);Off(OUT_B)
#define go_up(t) OnFwd(OUT_B); Wait(t);Off(OUT_B)
task main()
{
go_forward(50);
turn_left(78);
go_forward(50);
turn_left(78);
go_forward(25);
go_back(75);
turn_right(39);
go_forward(75);
turn_left(78);
go_forward(13);
go_back(25);
go_forward(12);
turn_left(78);
go_forward(38);
turn_left(78);
go_forward(25);
go_up(25);
turn_right(78);
go_forward(38);
turn_left(39);
go_down(25);
go_back(13);
go_up(25);
turn_right(39);
go_back(63);
turn_right(39);
go_down(25);
go_back(13);
go_up(25);
turn_right(45);
go_forward(100);
turn_right(90);
go_down(25);
go_forward(50);
turn_left(117);
go_up(25);
go_forward(35);
turn_left(117);
go_down(25);
go_forward(100);
turn_left(78);
go_forward(50);
turn_left(78);
go_forward(10);
go_up(25);
go_forward(50);
go_down(25);
go_back(15);
turn_left(78);
go_forward(50);
turn_right(78);
go_forward(15);
}
今回は「純」の字を書いた。
基本的には書き順通りだが、限界があるので、逆から書いてい...
それぞれについて説明していく。
#define turn_right(t) OnRev(OUT_C); OnFwd(OUT_A);\
Wait(t);Off(OUT_AC);
右にまわるプログラミングの名前を定義
#define turn_left(t) OnRev(OUT_A); OnFwd(OUT_C);\
Wait(t);Off(OUT_AC);
左にまわるプログラミングを定義
#define go_forward(t) OnFwd(OUT_AC);\
Wait(t);Off(OUT_AC);
まっすぐ進むプログラミングを定義
#define go_back(t) OnRev(OUT_AC);\
Wait(t);Off(OUT_AC);
後ろに進むプログラミングを定義
#define go_down(t) OnRev(OUT_B); Wait(t);Off(OUT_B)
ペンをおろすプログラミングを定義
#define go_up(t) OnFwd(OUT_B); Wait(t);Off(OUT_B)
ペンを上げるプログラミングを定義
以上が定義したものである。
ここからメインの部分
go_forward(50);
turn_left(78);
go_forward(50);
ここまでが1画目
turn_left(78);
go_forward(25);
go_back(75);
turn_right(39);
go_forward(75);
ここまでが2画目
turn_left(78);
go_forward(13);
go_back(25);
go_forward(12);
turn_left(78);
ここまでが3画目
go_forward(38);
turn_left(78);
3画目から4画目への移動
go_forward(25);
go_up(25);
ここまでが4画目
turn_right(78);
go_forward(38);
turn_left(39);
ここは4画目から5画目への移動
go_down(25);
go_back(13);
go_up(25);
ここまでが5画目
turn_right(39);
go_back(63);
turn_right(39);
go_down(25);
ここは5画目から6画目への移動
go_back(13);
go_up(25);
turn_right(45);
ここまでが6画目これで糸へんはおしまい
go_forward(100);
turn_right(90);
go_down(25);
ここは6画目から7画目への移動
go_forward(50);
turn_left(117);
go_up(25);
ここまでが7画目
go_forward(35);
turn_left(117);
go_down(25);
ここが変則的
純の字の縦につっきる部分を先に書く
go_forward(100);
turn_left(78);
go_forward(50);
turn_left(78);
go_forward(10);
go_up(25);
ここまで
go_forward(50);
go_down(25);
ここまでで移動
最後の残りをここから
go_back(15);
turn_left(78);
go_forward(50);
turn_right(78);
go_forward(15);
これで完成
**おわりに [#s8ec89e9]
とりあえず完成はしたが、かなりいびつになってしまった。
原因はタイヤがたまに空回りすることだと思った。
純の字か?の字か悩んだが、戻るほうが大変なのでこっちにした。
直接ロボットが動くほうが頭の中で想像しやすくプログラミン...
終了行:
[[2015a/Member]]
*書道ロボット(名前) [#vdf158c3]
**はじめに [#w9ac1c74]
このページは2015年ロボテッィクス入門ゼミ前期の課題1、書...
**ロボットの説明 [#xf3f0713]
#ref(IMG_20150605_124126.jpg,,30%)
このロボットは真ん中に穴が開いており、タイヤを使ってペン...
ペンは通常のサインペンであればどれでも対応可能である。
土台は基本的な形で、右と左にタイヤが2つずつくっついて設...
プログラミングが記憶されている機械は後ろについているので...
代わりのレゴブロックを設置している。
文字を書く際はロボット自体が線の軌跡をたどり、線が途切れ...
**プログラムについて [#b955b91c]
#define turn_right(t) OnRev(OUT_C); OnFwd(OUT_A);\
Wait(t);Off(OUT_AC);
#define turn_left(t) OnRev(OUT_A); OnFwd(OUT_C);\
Wait(t);Off(OUT_AC);
#define go_forward(t) OnFwd(OUT_AC);\
Wait(t);Off(OUT_AC);
#define go_back(t) OnRev(OUT_AC);\
Wait(t);Off(OUT_AC);
#define go_down(t) OnRev(OUT_B); Wait(t);Off(OUT_B)
#define go_up(t) OnFwd(OUT_B); Wait(t);Off(OUT_B)
task main()
{
go_forward(50);
turn_left(78);
go_forward(50);
turn_left(78);
go_forward(25);
go_back(75);
turn_right(39);
go_forward(75);
turn_left(78);
go_forward(13);
go_back(25);
go_forward(12);
turn_left(78);
go_forward(38);
turn_left(78);
go_forward(25);
go_up(25);
turn_right(78);
go_forward(38);
turn_left(39);
go_down(25);
go_back(13);
go_up(25);
turn_right(39);
go_back(63);
turn_right(39);
go_down(25);
go_back(13);
go_up(25);
turn_right(45);
go_forward(100);
turn_right(90);
go_down(25);
go_forward(50);
turn_left(117);
go_up(25);
go_forward(35);
turn_left(117);
go_down(25);
go_forward(100);
turn_left(78);
go_forward(50);
turn_left(78);
go_forward(10);
go_up(25);
go_forward(50);
go_down(25);
go_back(15);
turn_left(78);
go_forward(50);
turn_right(78);
go_forward(15);
}
今回は「純」の字を書いた。
基本的には書き順通りだが、限界があるので、逆から書いてい...
それぞれについて説明していく。
#define turn_right(t) OnRev(OUT_C); OnFwd(OUT_A);\
Wait(t);Off(OUT_AC);
右にまわるプログラミングの名前を定義
#define turn_left(t) OnRev(OUT_A); OnFwd(OUT_C);\
Wait(t);Off(OUT_AC);
左にまわるプログラミングを定義
#define go_forward(t) OnFwd(OUT_AC);\
Wait(t);Off(OUT_AC);
まっすぐ進むプログラミングを定義
#define go_back(t) OnRev(OUT_AC);\
Wait(t);Off(OUT_AC);
後ろに進むプログラミングを定義
#define go_down(t) OnRev(OUT_B); Wait(t);Off(OUT_B)
ペンをおろすプログラミングを定義
#define go_up(t) OnFwd(OUT_B); Wait(t);Off(OUT_B)
ペンを上げるプログラミングを定義
以上が定義したものである。
ここからメインの部分
go_forward(50);
turn_left(78);
go_forward(50);
ここまでが1画目
turn_left(78);
go_forward(25);
go_back(75);
turn_right(39);
go_forward(75);
ここまでが2画目
turn_left(78);
go_forward(13);
go_back(25);
go_forward(12);
turn_left(78);
ここまでが3画目
go_forward(38);
turn_left(78);
3画目から4画目への移動
go_forward(25);
go_up(25);
ここまでが4画目
turn_right(78);
go_forward(38);
turn_left(39);
ここは4画目から5画目への移動
go_down(25);
go_back(13);
go_up(25);
ここまでが5画目
turn_right(39);
go_back(63);
turn_right(39);
go_down(25);
ここは5画目から6画目への移動
go_back(13);
go_up(25);
turn_right(45);
ここまでが6画目これで糸へんはおしまい
go_forward(100);
turn_right(90);
go_down(25);
ここは6画目から7画目への移動
go_forward(50);
turn_left(117);
go_up(25);
ここまでが7画目
go_forward(35);
turn_left(117);
go_down(25);
ここが変則的
純の字の縦につっきる部分を先に書く
go_forward(100);
turn_left(78);
go_forward(50);
turn_left(78);
go_forward(10);
go_up(25);
ここまで
go_forward(50);
go_down(25);
ここまでで移動
最後の残りをここから
go_back(15);
turn_left(78);
go_forward(50);
turn_right(78);
go_forward(15);
これで完成
**おわりに [#s8ec89e9]
とりあえず完成はしたが、かなりいびつになってしまった。
原因はタイヤがたまに空回りすることだと思った。
純の字か?の字か悩んだが、戻るほうが大変なのでこっちにした。
直接ロボットが動くほうが頭の中で想像しやすくプログラミン...
ページ名: