2018a/Member/Maedak/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*目次 [#s0bfc5d3]
#contents
*Mission1 [#z03d6834]
今回の課題はこれまで住んだことのある様々な地名の中から2文...
-ひとりにつき一つ以上のプログラムを作成すること。
-ペン以外はキットに含まれる部品を使うこと。
-キットに付属の高価な輪ゴムは切れやすいので切れないように...
-改良や調整をしやすくするため、ロボット本体だけでなく、プ...
*ロボ名と各機構の説明 [#ff891f66]
**ロボット名 [#n05fb570]
今回私たちの班ではこのロボットのことを
&size(24){”STRIDE ”};
と命名した。strideは’闊歩する’という意味で紙の上を縦横無...
**ロボット全体と各機構の仕組み [#jcb9151d]
&ref(2018a/Member/Maedak/Mission1/STRIDE.jpg,50%,stride);
今回は仕組みを作るのが比較的難しいがきれいな文字が書けるX...
?Y軸はLargeMotorで車輪一つを動かす単純な作りになっている。
?X軸は歯車と格子状のアームを用いて伸び縮みで横に伸ばせる...
?ペンを上げ下げする部分を私たちは”あかべこヘッド”と名付け...
*今回書いた漢字と書き順 [#d80ed018]
今回書いた文字は我が地元 山梨の別名
&size(48){甲州};
とした。斜め線がないのでとてもやりやすかった。
**「甲州」の書き順 [#f92f5355]
ここで重要になってくるのは甲州の書き順である。私は結果と...
-1回目(失敗例)
&ref(2018a/Member/Maedak/Mission1/甲州(1回目).png,50%,...
&color(#ff8800){橙};は空中での軌道
極力斜めの線をなくしたいという私の強い願望(=惰性)によ...
斜めの移動が少なくなることで誤差が小さくなる(という勝手...
デメリットとしてはy軸負方向から正方向へと動かす際に赤べこ...
------
-2回目(成功例)
&ref(2018a/Member/Maedak/Mission1/甲州(2回目).png,30%,...
&color(#ff8800){橙};は空中での軌道
1回目が実現が難しいと解り急遽組んだが、やはり書き順とは偉...
問題の斜めだったがよく考えたら、紙面上で斜めに動かさない...
-完成品
&ref(2018a/Member/Maedak/Mission1/kousyuu.jpg,50%,甲州);
*定義とプログラム [#p963e011]
pythonを用いるため以下のように組む
#!/usr/bin/env python3
from ev3dev.ev3 import*
from time import sleep
各機構を以下のように省略
mX = LargeMotor('outA') # x軸(マジックハンド)
mY = LargeMotor('outB')# y軸 車輪
mP = MediumMotor('outD')# あかべこヘッド(ペン)
**成功例【2回目】 [#icb0f0b3]
縦線横線を多用するので以下のような定義づけ
:move_migi():|右向きの線を描く関数
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mX.run_to_rel_pos(position_sp=-90, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_hidari():|左向きの線を描く関数
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_usirolong():|縦の長い線を引く関数
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=240, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_usiroshort():|縦の短い線を引く関数
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=120, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:point_dot():|点を書く関数
sleep(1)
mX.run_to_rel_pos(position_sp=30, speed_sp=170, stop...
sleep(1)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(1)
mY.run_to_rel_pos(position_sp=15, speed_sp=170, stop_...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(1)
mY.run_to_rel_pos(position_sp=-15, speed_sp=170, stop...
sleep(3)
実際のプログラムは以下の通り
まず、定番のリセット関数
mX.reset()
mY.reset()
mP.reset()
次に「甲」の字を描くプログラム
move_usiroshort()
mY.run_to_rel_pos(position_sp=-120, speed_sp=170, stop_a...
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_act...
sleep(3)
mX.run_to_rel_pos(position_sp=-83, speed_sp=170, stop_ac...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop_ac...
sleep(5)
move_usiroshort()
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=-60, speed_sp=170, stop_ac...
sleep(3)
move_migi()
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=60, speed_sp=170, stop_act...
move_migi()
mX.run_to_rel_pos(position_sp=45, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=-120, speed_sp=170, stop_a...
move_usirolong()
「州」の字を描くプログラム
mX.run_to_rel_pos(position_sp=30, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=20, speed_sp=170, stop_act...
sleep(3)
move_usirolong()
mX.run_to_rel_pos(position_sp=-30, speed_sp=170, stop_ac...
mY.run_to_rel_pos(position_sp=-240, speed_sp=170, stop_a...
sleep(5)
move_usirolong()
mX.run_to_rel_pos(position_sp=-30, speed_sp=170, stop_ac...
mY.run_to_rel_pos(position_sp=-240, speed_sp=170, stop_a...
sleep(5)
move_usirolong()
mX.run_to_rel_pos(position_sp=-10, speed_sp=170, stop_ac...
mY.run_to_rel_pos(position_sp=-120, speed_sp=170, stop_a...
sleep(3)
point_dot()
point_dot()
point_dot()
あれ? move_hidari() って使ってない...?
**失敗例(1回目) [#o70b94b3]
上記に加えて上向き関数2つ追加
:move_migi():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mX.run_to_rel_pos(position_sp=-90, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_hidari():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_maelong():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=-180, speed_sp=170, sto...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_usirolong():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=180, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_maeshort():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=-120, speed_sp=170, sto...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_usiroshort():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=120, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:point_dot():|
sleep(1)
mX.run_to_rel_pos(position_sp=45, speed_sp=170, stop_...
sleep(1)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(1)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
リセット関数
mX.reset()
mY.reset()
mP.reset()
これは失敗例なのでざっくりとプログラムを載せる。
move_maelong()//失敗箇所?
mX.run_to_rel_pos(position_sp=45, speed_sp=170, stop_act...
move_migi()
mY.run_to_rel_pos(position_sp=60, speed_sp=170, stop_act...
move_hidari()
mY.run_to_rel_pos(position_sp=60, speed_sp=170, stop_act...
move_migi()
move_maeshort()//失敗箇所?
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_act...
move_usiroshort()
mY.run_to_rel_pos(position_sp=120, speed_sp=170, stop_ac...
move_usirolong()
mX.run_to_rel_pos(position_sp=-45, speed_sp=170, stop_ac...
move_maelong()//失敗箇所?
mX.run_to_rel_pos(position_sp=-45, speed_sp=170, stop_ac...
move_usirolong()
mX.run_to_rel_pos(position_sp=20, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=60, speed_sp=170, stop_act...
sleep(3)
point_dot()
point_dot()
point_dot()
*反省と感想 [#cb8700c7]
-1回目(失敗例)の時、y軸を負方向から正方向に動かそうとし...
-2回目にmove_hidari()を定義したのにもかかわらず使わなかっ...
-直前になるまでプログラムを組もうとしていなかった点
-インターバルが長すぎるせいで一回に3分近くかかる点
*&counter(all); [#l5379687]アクセスカウンター [#adac46d4]
終了行:
*目次 [#s0bfc5d3]
#contents
*Mission1 [#z03d6834]
今回の課題はこれまで住んだことのある様々な地名の中から2文...
-ひとりにつき一つ以上のプログラムを作成すること。
-ペン以外はキットに含まれる部品を使うこと。
-キットに付属の高価な輪ゴムは切れやすいので切れないように...
-改良や調整をしやすくするため、ロボット本体だけでなく、プ...
*ロボ名と各機構の説明 [#ff891f66]
**ロボット名 [#n05fb570]
今回私たちの班ではこのロボットのことを
&size(24){”STRIDE ”};
と命名した。strideは’闊歩する’という意味で紙の上を縦横無...
**ロボット全体と各機構の仕組み [#jcb9151d]
&ref(2018a/Member/Maedak/Mission1/STRIDE.jpg,50%,stride);
今回は仕組みを作るのが比較的難しいがきれいな文字が書けるX...
?Y軸はLargeMotorで車輪一つを動かす単純な作りになっている。
?X軸は歯車と格子状のアームを用いて伸び縮みで横に伸ばせる...
?ペンを上げ下げする部分を私たちは”あかべこヘッド”と名付け...
*今回書いた漢字と書き順 [#d80ed018]
今回書いた文字は我が地元 山梨の別名
&size(48){甲州};
とした。斜め線がないのでとてもやりやすかった。
**「甲州」の書き順 [#f92f5355]
ここで重要になってくるのは甲州の書き順である。私は結果と...
-1回目(失敗例)
&ref(2018a/Member/Maedak/Mission1/甲州(1回目).png,50%,...
&color(#ff8800){橙};は空中での軌道
極力斜めの線をなくしたいという私の強い願望(=惰性)によ...
斜めの移動が少なくなることで誤差が小さくなる(という勝手...
デメリットとしてはy軸負方向から正方向へと動かす際に赤べこ...
------
-2回目(成功例)
&ref(2018a/Member/Maedak/Mission1/甲州(2回目).png,30%,...
&color(#ff8800){橙};は空中での軌道
1回目が実現が難しいと解り急遽組んだが、やはり書き順とは偉...
問題の斜めだったがよく考えたら、紙面上で斜めに動かさない...
-完成品
&ref(2018a/Member/Maedak/Mission1/kousyuu.jpg,50%,甲州);
*定義とプログラム [#p963e011]
pythonを用いるため以下のように組む
#!/usr/bin/env python3
from ev3dev.ev3 import*
from time import sleep
各機構を以下のように省略
mX = LargeMotor('outA') # x軸(マジックハンド)
mY = LargeMotor('outB')# y軸 車輪
mP = MediumMotor('outD')# あかべこヘッド(ペン)
**成功例【2回目】 [#icb0f0b3]
縦線横線を多用するので以下のような定義づけ
:move_migi():|右向きの線を描く関数
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mX.run_to_rel_pos(position_sp=-90, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_hidari():|左向きの線を描く関数
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_usirolong():|縦の長い線を引く関数
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=240, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_usiroshort():|縦の短い線を引く関数
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=120, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:point_dot():|点を書く関数
sleep(1)
mX.run_to_rel_pos(position_sp=30, speed_sp=170, stop...
sleep(1)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(1)
mY.run_to_rel_pos(position_sp=15, speed_sp=170, stop_...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(1)
mY.run_to_rel_pos(position_sp=-15, speed_sp=170, stop...
sleep(3)
実際のプログラムは以下の通り
まず、定番のリセット関数
mX.reset()
mY.reset()
mP.reset()
次に「甲」の字を描くプログラム
move_usiroshort()
mY.run_to_rel_pos(position_sp=-120, speed_sp=170, stop_a...
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_act...
sleep(3)
mX.run_to_rel_pos(position_sp=-83, speed_sp=170, stop_ac...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop_ac...
sleep(5)
move_usiroshort()
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=-60, speed_sp=170, stop_ac...
sleep(3)
move_migi()
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=60, speed_sp=170, stop_act...
move_migi()
mX.run_to_rel_pos(position_sp=45, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=-120, speed_sp=170, stop_a...
move_usirolong()
「州」の字を描くプログラム
mX.run_to_rel_pos(position_sp=30, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=20, speed_sp=170, stop_act...
sleep(3)
move_usirolong()
mX.run_to_rel_pos(position_sp=-30, speed_sp=170, stop_ac...
mY.run_to_rel_pos(position_sp=-240, speed_sp=170, stop_a...
sleep(5)
move_usirolong()
mX.run_to_rel_pos(position_sp=-30, speed_sp=170, stop_ac...
mY.run_to_rel_pos(position_sp=-240, speed_sp=170, stop_a...
sleep(5)
move_usirolong()
mX.run_to_rel_pos(position_sp=-10, speed_sp=170, stop_ac...
mY.run_to_rel_pos(position_sp=-120, speed_sp=170, stop_a...
sleep(3)
point_dot()
point_dot()
point_dot()
あれ? move_hidari() って使ってない...?
**失敗例(1回目) [#o70b94b3]
上記に加えて上向き関数2つ追加
:move_migi():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mX.run_to_rel_pos(position_sp=-90, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_hidari():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_maelong():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=-180, speed_sp=170, sto...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_usirolong():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=180, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_maeshort():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=-120, speed_sp=170, sto...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:move_usiroshort():|
sleep(3)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(3)
mY.run_to_rel_pos(position_sp=120, speed_sp=170, stop...
sleep(3)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
sleep(5)
:point_dot():|
sleep(1)
mX.run_to_rel_pos(position_sp=45, speed_sp=170, stop_...
sleep(1)
mP.run_to_rel_pos(position_sp=40, speed_sp=170, stop_...
sleep(1)
mP.run_to_rel_pos(position_sp=-40, speed_sp=170, stop...
リセット関数
mX.reset()
mY.reset()
mP.reset()
これは失敗例なのでざっくりとプログラムを載せる。
move_maelong()//失敗箇所?
mX.run_to_rel_pos(position_sp=45, speed_sp=170, stop_act...
move_migi()
mY.run_to_rel_pos(position_sp=60, speed_sp=170, stop_act...
move_hidari()
mY.run_to_rel_pos(position_sp=60, speed_sp=170, stop_act...
move_migi()
move_maeshort()//失敗箇所?
mX.run_to_rel_pos(position_sp=90, speed_sp=170, stop_act...
move_usiroshort()
mY.run_to_rel_pos(position_sp=120, speed_sp=170, stop_ac...
move_usirolong()
mX.run_to_rel_pos(position_sp=-45, speed_sp=170, stop_ac...
move_maelong()//失敗箇所?
mX.run_to_rel_pos(position_sp=-45, speed_sp=170, stop_ac...
move_usirolong()
mX.run_to_rel_pos(position_sp=20, speed_sp=170, stop_act...
mY.run_to_rel_pos(position_sp=60, speed_sp=170, stop_act...
sleep(3)
point_dot()
point_dot()
point_dot()
*反省と感想 [#cb8700c7]
-1回目(失敗例)の時、y軸を負方向から正方向に動かそうとし...
-2回目にmove_hidari()を定義したのにもかかわらず使わなかっ...
-直前になるまでプログラムを組もうとしていなかった点
-インターバルが長すぎるせいで一回に3分近くかかる点
*&counter(all); [#l5379687]アクセスカウンター [#adac46d4]
ページ名: