2016a/Member/tamura/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2016a/Member]]
目次
#contents
*課題 [#c628f72e]
~課題はクラスメイトの似顔絵を描くことである。
*ロボットの概形 [#w1a43a72]
#ref(./k.PNG,ev3全体の概形)
#ref(./penrotate.gif,ev3全体の概形)
ペンの下ろし方は、歯車を回転することでペン先を設置させる方法である。
~ペンを持ち上げるときは特に気をつけた。
~rotatepenの速度を速くしすぎると、回転しすぎるので押させる必要があるが、
~遅すぎるとモーターの駆動力がモーターを持ち上げるのに必要な力に達し得ないので、
~速すぎず、遅すぎずの速さに設定した。
*描画の手順 [#t74c474b]
~まずは前置き部分と定義である
!/usr/bin/python
import ev3dev.ev3 as ev3
import time
left = ev3.LargeMotor('outD')
right = ev3.LargeMotor('outA')
arm = ev3.MediumMotor('outC')
def forward(t,dl,dr):
left.run_forever(duty_cycle_sp=dl)
right.run_forever(duty_cycle_sp=dr)
time.sleep(t/1000)
left.stop()
right.stop()
def rotatepen(t,da):
arm.run_forever(duty_cycle_sp=da)
time.sleep(t/1000)
arm.stop()
~顔のラインを描く
forward(1000,29,20)
forward(1000,38,10)
forward(2500,12,1)''
~髪を書く
forward(4100,30,-15)
forward(3100,-30,15)
forward(2400,38,-18)
forward(2400,-40,24)
forward(2400,45,-20)
forward(2600,-38,20)
forward(2400,47,-23)
forward(2600,-35,25)
forward(2600,39,-24)
forward(2600,-32,24)
forward(2100,40,-21)
forward(1600,-32,24)
forward(1400,45,-23)
~一度ペン先をあげて、回転する.。
できるだけ車体を用紙の横と平行にする
time.sleep(1)
rotatepen(1000,40)
forward(2100,45,-23)
forward(2230,27,2)
forward(1600,-50,-50)
~目を描く
forward(1000,20,20)
time.sleep(1)
rotatepen(1100,-32)
time.sleep(1)
rotatepen(1100,40)
forward(1000,20,20)
time.sleep(1)
forward(1000,35,35)
rotatepen(1100,-32)
time.sleep(1)
rotatepen(1100,40)
~先ほど通った奇跡上を後退してたどり、
楕円常時移動して途中でペンを下ろして口をかく
forward(3900,-30,-30)
forward(1000,25,33)
time.sleep(1)
rotatepen(1100,-29)
forward(1000,20,28)
~完成!
#ref(./掛けた画.png,547 KB,実際描いた画である)
*感想 [#aa92acae]
ペンの設置が不規則であるため、少し車体の動きを変えてしまう
イレギュラーを発生させてしまうため、同じプログラミングでも
同じ動きができなかった。
プログラミング制作時間は10時間を要した。
そのため、ロボットプログラミングに少し慣れてきた。
終了行:
[[2016a/Member]]
目次
#contents
*課題 [#c628f72e]
~課題はクラスメイトの似顔絵を描くことである。
*ロボットの概形 [#w1a43a72]
#ref(./k.PNG,ev3全体の概形)
#ref(./penrotate.gif,ev3全体の概形)
ペンの下ろし方は、歯車を回転することでペン先を設置させる方法である。
~ペンを持ち上げるときは特に気をつけた。
~rotatepenの速度を速くしすぎると、回転しすぎるので押させる必要があるが、
~遅すぎるとモーターの駆動力がモーターを持ち上げるのに必要な力に達し得ないので、
~速すぎず、遅すぎずの速さに設定した。
*描画の手順 [#t74c474b]
~まずは前置き部分と定義である
!/usr/bin/python
import ev3dev.ev3 as ev3
import time
left = ev3.LargeMotor('outD')
right = ev3.LargeMotor('outA')
arm = ev3.MediumMotor('outC')
def forward(t,dl,dr):
left.run_forever(duty_cycle_sp=dl)
right.run_forever(duty_cycle_sp=dr)
time.sleep(t/1000)
left.stop()
right.stop()
def rotatepen(t,da):
arm.run_forever(duty_cycle_sp=da)
time.sleep(t/1000)
arm.stop()
~顔のラインを描く
forward(1000,29,20)
forward(1000,38,10)
forward(2500,12,1)''
~髪を書く
forward(4100,30,-15)
forward(3100,-30,15)
forward(2400,38,-18)
forward(2400,-40,24)
forward(2400,45,-20)
forward(2600,-38,20)
forward(2400,47,-23)
forward(2600,-35,25)
forward(2600,39,-24)
forward(2600,-32,24)
forward(2100,40,-21)
forward(1600,-32,24)
forward(1400,45,-23)
~一度ペン先をあげて、回転する.。
できるだけ車体を用紙の横と平行にする
time.sleep(1)
rotatepen(1000,40)
forward(2100,45,-23)
forward(2230,27,2)
forward(1600,-50,-50)
~目を描く
forward(1000,20,20)
time.sleep(1)
rotatepen(1100,-32)
time.sleep(1)
rotatepen(1100,40)
forward(1000,20,20)
time.sleep(1)
forward(1000,35,35)
rotatepen(1100,-32)
time.sleep(1)
rotatepen(1100,40)
~先ほど通った奇跡上を後退してたどり、
楕円常時移動して途中でペンを下ろして口をかく
forward(3900,-30,-30)
forward(1000,25,33)
time.sleep(1)
rotatepen(1100,-29)
forward(1000,20,28)
~完成!
#ref(./掛けた画.png,547 KB,実際描いた画である)
*感想 [#aa92acae]
ペンの設置が不規則であるため、少し車体の動きを変えてしまう
イレギュラーを発生させてしまうため、同じプログラミングでも
同じ動きができなかった。
プログラミング制作時間は10時間を要した。
そのため、ロボットプログラミングに少し慣れてきた。
ページ名: