2018a/Member/montbell/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*目次 [#e1e7976c]
#contents
*課題?:書道ロボット [#p7281f93]
今回の課題はこれまで住んだことのある様々な地名の中から2文...
- ひとりにつき一つ以上のプログラムを作成すること。
- ペン以外はキットに含まれる部品を使うこと。
- キットに付属の高価な輪ゴムは切れやすいので切れないよう...
- 改良や調整をしやすくするため、ロボット本体だけでなく、...
...
でした。そこで僕は大学に来るまで住んでいた「東京」を書く...
書道ロボットには大きくいくつ種類がありましたが、プログラ...
(課題について詳しくはhttp://yakushi.shinshu-u.ac.jp/...
*躯体本体 [#t79b7a78]
**各部名称 [#n6fffa66]
***ロボット本体 [#r3b62f5a]
僕たちはこのロボットに
&size(22){”STRIDE ”};
と名付けました。strideは'闊歩する'を意味する言葉で用紙の...
相方(Maedak)に書いてあるのはウソですよ、頑張って心...
***駆動部 [#u9e64a1b]
このロボットには主に3つの駆動系に分けられます。
ー赤べこヘッドー
ペンの上げ下げをする機構です。動きが赤べこ(会津若松の郷...
ー?軸系統ー
A4の用紙を縦に置いたときの横向きに赤べこヘッドを動かすた...
ーY軸系統ー
A4の用紙を縦に置いたときの縦向きに躯体本体を動かすための...
**赤べこヘッド [#t8decd30]
&ref(2018a/Member/montbell/Mission1/赤べこヘッド 図1.jp...
&ref(2018a/Member/montbell/Mission1/赤べこヘッド 写真2....
赤べこヘッドの機構は信頼性を重視しマニュアルにある既存の...
また赤べこヘッドを作る際はEV3に輪ゴムが附属していなかった...
**?軸系統 [#b073fda3]
&ref(2018a/Member/montbell/Mission1/?軸系統 写真1.jpg,5...
&ref(2018a/Member/montbell/Mission1/?軸系統 写真2.jpg,5...
&ref(2018a/Member/montbell/Mission1/?軸系統 歯車.jpg,50%...
STRIDEの?軸系統はマジックアームとそれを支えるレールから成...
まずマジックアームについてです。?軸系統はY軸系統の上に乗...
&ref(2018a/Member/montbell/Mission1/?軸系統 アーム裏.jpg...
&ref(2018a/Member/montbell/Mission1/?軸系統 レール2.jpg...
&ref(2018a/Member/montbell/Mission1/?軸系統 レール1.jpg...
次にレールに関してです。レールはアームとは別になっており...
また、レールにはタイヤがついており重たい赤べこヘッドを支...
**Y軸系統 [#id710a3e]
Y軸系統は一つラージモーターで同軸の2つのタイヤを回転さ...
*プログラム [#ta377af2]
**前準備 [#s78ea4c9]
プログラムを組むにあたってまず初めにロボットで書く文字を...
#ref(2018a/Member/montbell/Mission1/ひねくれ斜線.jpg,50%,...
次に書き順を検討しました。「刈谷」を書こうとした際、下か...
参考
#ref(2018a/Member/montbell/Mission1/東京 書き順.JPG,50%,...
**関数...の前に [#ad1b2a62]
まず次の文章をプログラムしました。説明は省略します。
#!/usr/bin/env python3
from ev3dev.ev3 import *
from time import sleep
それぞれの端子に接続しているモーターのインスタンスを作成...
mX = LargeMotor('outA')
mY = LargeMotor('outB')
mM = MediumMotor('outD')
mX.reset()
mY.reset()
**関数 [#t09afa87]
関数を作成します。
:赤べこヘッドがペンを下げる関数|
mMを40度回転させペンを下げると同時に次の動作を行うまで3秒...
def pen_down():
mM.run_to_rel_pos(position_sp=40, speed_sp=100, stop...
sleep(3)
:Y軸系統を動作させる関数|
mYを指定した値(t)の角度だけ回転させます。縦に置いたA4用紙...
tに正の値を代入すると下に動き、負の値を導入すると上に動き...
def move_vertical(t):
sleep(0.2)
mY.run_to_rel_pos(position_sp=t, speed_sp=170, stop_...
:?軸系統を動作させる関数|
mXを指定した値(t)の角度だけ回転させます。縦に置いたA4用紙...
tに正の値を代入すると左に動き、負の値を導入すると右に動き...
def move_slide(t):
mX.run_to_rel_pos(position_sp=t, speed_sp=110, stop_...
:赤べこヘッドがペンを上げる関数|
mMを-40度回転させペンを下げると同時に次の動作を行うまで3...
def pen_up():
mM.run_to_rel_pos(position_sp=-40, speed_sp=100, sto...
sleep(3)
**「東京」を書くプログラム [#ya38410c]
ここからは上で定義した関数を使用し実際に文字を書くプログ...
書き始めの位置まで移動したのちペンを下げ、1つの画を書き...
:一文字目「東」|
pen_down() //一画目
move_slide(-90) ・・・?
sleep(3)
pen_up()
move_slide(90) //二画目
sleep(3)
move_vertical(50)
sleep(3)
pen_down()
move_vertical(60)
sleep(3)
pen_up()
move_vertical(-65) //三画目
sleep(3)
pen_down()
move_slide(-80) ・・・?
sleep(3)
move_vertical(60)
sleep(3)
pen_up()
move_slide(80) //四画目
sleep(3)
move_vertical(-25)
sleep(3)
pen_down()
move_slide(-80)
sleep(3)
pen_up()
move_slide(80) //五画目
move_vertical(30)
sleep(3)
pen_down()
move_slide(-80)
sleep(3)
pen_up()
move_slide(55) //六画目
sleep(2)
move_vertical(-140)
sleep(3)
pen_down()
move_vertical(220)
sleep(3)
pen_up()
move_vertical(-70) //七画目
sleep(2)
move_slide(9)
sleep(3)
pen_down()
move_vertical(30)
move_slide(30)
sleep(2)
pen_up()
move_vertical(-45) //八画目
sleep(2)
move_slide(-58)
sleep(3)
pen_down()
move_vertical(30)
move_slide(-30)
sleep(2)
pen_up()
:二文字目「京」|
move_slide(45) //一画目
sleep(2)
move_vertical(60)
sleep(3)
pen_down()
move_vertical(30)
sleep(2)
pen_up()
move_slide(30) // 二画目
sleep(3)
pen_down()
move_slide(-80)
sleep(3)
pen_up()
move_slide(80) //三画目
sleep(2)
move_vertical(40)
sleep(3)
pen_down()
move_vertical(50)
sleep(3)
pen_up()
move_vertical(-50) //四画目
sleep(3)
pen_down()
move_slide(-60)
sleep(3)
move_vertical(50)
sleep(3)
pen_up()
move_slide(60) //五画目
sleep(2)
pen_down()
move_slide(-60)
sleep(2)
pen_up()
move_slide(35) //六画目
sleep(3)
pen_down()
move_vertical(95)
sleep(3)
pen_up()
move_vertical(-75) //七画目
sleep(2)
move_slide(15)
sleep(2)
pen_down()
move_vertical(30)
move_slide(20)
sleep(2)
pen_up()
move_vertical(-40) //八画目
sleep(2)
move_slide(-60)
sleep(3)
pen_down()
move_vertical(30)
move_slide(-20)
sleep(2)
pen_up()
必要なプログラムはここまでですが?軸系統とY軸系統のブレー...
sleep(3)
mX.stop_action = 'coast'
mY.stop_action = 'coast'
**試行錯誤 [#r91ec592]
:元に戻らない|
#ref(2018a/Member/montbell/Mission1/東京2.jpg,50%,東京2)
まず苦しんだのは?軸がしっかり固定できないことでした。上の...
:?軸の誤差|
上記と同じ理由で?軸の線の長さにも誤差ができてしまいました...
*最後に [#ga1854f9]
いろいろ頑張ってできたのがこれです。
#ref(2018a/Member/montbell/Mission1/東京 清書.jpg,30%,東...
かなり四苦八苦しましたが読めるものができてよかったです。
終了行:
*目次 [#e1e7976c]
#contents
*課題?:書道ロボット [#p7281f93]
今回の課題はこれまで住んだことのある様々な地名の中から2文...
- ひとりにつき一つ以上のプログラムを作成すること。
- ペン以外はキットに含まれる部品を使うこと。
- キットに付属の高価な輪ゴムは切れやすいので切れないよう...
- 改良や調整をしやすくするため、ロボット本体だけでなく、...
...
でした。そこで僕は大学に来るまで住んでいた「東京」を書く...
書道ロボットには大きくいくつ種類がありましたが、プログラ...
(課題について詳しくはhttp://yakushi.shinshu-u.ac.jp/...
*躯体本体 [#t79b7a78]
**各部名称 [#n6fffa66]
***ロボット本体 [#r3b62f5a]
僕たちはこのロボットに
&size(22){”STRIDE ”};
と名付けました。strideは'闊歩する'を意味する言葉で用紙の...
相方(Maedak)に書いてあるのはウソですよ、頑張って心...
***駆動部 [#u9e64a1b]
このロボットには主に3つの駆動系に分けられます。
ー赤べこヘッドー
ペンの上げ下げをする機構です。動きが赤べこ(会津若松の郷...
ー?軸系統ー
A4の用紙を縦に置いたときの横向きに赤べこヘッドを動かすた...
ーY軸系統ー
A4の用紙を縦に置いたときの縦向きに躯体本体を動かすための...
**赤べこヘッド [#t8decd30]
&ref(2018a/Member/montbell/Mission1/赤べこヘッド 図1.jp...
&ref(2018a/Member/montbell/Mission1/赤べこヘッド 写真2....
赤べこヘッドの機構は信頼性を重視しマニュアルにある既存の...
また赤べこヘッドを作る際はEV3に輪ゴムが附属していなかった...
**?軸系統 [#b073fda3]
&ref(2018a/Member/montbell/Mission1/?軸系統 写真1.jpg,5...
&ref(2018a/Member/montbell/Mission1/?軸系統 写真2.jpg,5...
&ref(2018a/Member/montbell/Mission1/?軸系統 歯車.jpg,50%...
STRIDEの?軸系統はマジックアームとそれを支えるレールから成...
まずマジックアームについてです。?軸系統はY軸系統の上に乗...
&ref(2018a/Member/montbell/Mission1/?軸系統 アーム裏.jpg...
&ref(2018a/Member/montbell/Mission1/?軸系統 レール2.jpg...
&ref(2018a/Member/montbell/Mission1/?軸系統 レール1.jpg...
次にレールに関してです。レールはアームとは別になっており...
また、レールにはタイヤがついており重たい赤べこヘッドを支...
**Y軸系統 [#id710a3e]
Y軸系統は一つラージモーターで同軸の2つのタイヤを回転さ...
*プログラム [#ta377af2]
**前準備 [#s78ea4c9]
プログラムを組むにあたってまず初めにロボットで書く文字を...
#ref(2018a/Member/montbell/Mission1/ひねくれ斜線.jpg,50%,...
次に書き順を検討しました。「刈谷」を書こうとした際、下か...
参考
#ref(2018a/Member/montbell/Mission1/東京 書き順.JPG,50%,...
**関数...の前に [#ad1b2a62]
まず次の文章をプログラムしました。説明は省略します。
#!/usr/bin/env python3
from ev3dev.ev3 import *
from time import sleep
それぞれの端子に接続しているモーターのインスタンスを作成...
mX = LargeMotor('outA')
mY = LargeMotor('outB')
mM = MediumMotor('outD')
mX.reset()
mY.reset()
**関数 [#t09afa87]
関数を作成します。
:赤べこヘッドがペンを下げる関数|
mMを40度回転させペンを下げると同時に次の動作を行うまで3秒...
def pen_down():
mM.run_to_rel_pos(position_sp=40, speed_sp=100, stop...
sleep(3)
:Y軸系統を動作させる関数|
mYを指定した値(t)の角度だけ回転させます。縦に置いたA4用紙...
tに正の値を代入すると下に動き、負の値を導入すると上に動き...
def move_vertical(t):
sleep(0.2)
mY.run_to_rel_pos(position_sp=t, speed_sp=170, stop_...
:?軸系統を動作させる関数|
mXを指定した値(t)の角度だけ回転させます。縦に置いたA4用紙...
tに正の値を代入すると左に動き、負の値を導入すると右に動き...
def move_slide(t):
mX.run_to_rel_pos(position_sp=t, speed_sp=110, stop_...
:赤べこヘッドがペンを上げる関数|
mMを-40度回転させペンを下げると同時に次の動作を行うまで3...
def pen_up():
mM.run_to_rel_pos(position_sp=-40, speed_sp=100, sto...
sleep(3)
**「東京」を書くプログラム [#ya38410c]
ここからは上で定義した関数を使用し実際に文字を書くプログ...
書き始めの位置まで移動したのちペンを下げ、1つの画を書き...
:一文字目「東」|
pen_down() //一画目
move_slide(-90) ・・・?
sleep(3)
pen_up()
move_slide(90) //二画目
sleep(3)
move_vertical(50)
sleep(3)
pen_down()
move_vertical(60)
sleep(3)
pen_up()
move_vertical(-65) //三画目
sleep(3)
pen_down()
move_slide(-80) ・・・?
sleep(3)
move_vertical(60)
sleep(3)
pen_up()
move_slide(80) //四画目
sleep(3)
move_vertical(-25)
sleep(3)
pen_down()
move_slide(-80)
sleep(3)
pen_up()
move_slide(80) //五画目
move_vertical(30)
sleep(3)
pen_down()
move_slide(-80)
sleep(3)
pen_up()
move_slide(55) //六画目
sleep(2)
move_vertical(-140)
sleep(3)
pen_down()
move_vertical(220)
sleep(3)
pen_up()
move_vertical(-70) //七画目
sleep(2)
move_slide(9)
sleep(3)
pen_down()
move_vertical(30)
move_slide(30)
sleep(2)
pen_up()
move_vertical(-45) //八画目
sleep(2)
move_slide(-58)
sleep(3)
pen_down()
move_vertical(30)
move_slide(-30)
sleep(2)
pen_up()
:二文字目「京」|
move_slide(45) //一画目
sleep(2)
move_vertical(60)
sleep(3)
pen_down()
move_vertical(30)
sleep(2)
pen_up()
move_slide(30) // 二画目
sleep(3)
pen_down()
move_slide(-80)
sleep(3)
pen_up()
move_slide(80) //三画目
sleep(2)
move_vertical(40)
sleep(3)
pen_down()
move_vertical(50)
sleep(3)
pen_up()
move_vertical(-50) //四画目
sleep(3)
pen_down()
move_slide(-60)
sleep(3)
move_vertical(50)
sleep(3)
pen_up()
move_slide(60) //五画目
sleep(2)
pen_down()
move_slide(-60)
sleep(2)
pen_up()
move_slide(35) //六画目
sleep(3)
pen_down()
move_vertical(95)
sleep(3)
pen_up()
move_vertical(-75) //七画目
sleep(2)
move_slide(15)
sleep(2)
pen_down()
move_vertical(30)
move_slide(20)
sleep(2)
pen_up()
move_vertical(-40) //八画目
sleep(2)
move_slide(-60)
sleep(3)
pen_down()
move_vertical(30)
move_slide(-20)
sleep(2)
pen_up()
必要なプログラムはここまでですが?軸系統とY軸系統のブレー...
sleep(3)
mX.stop_action = 'coast'
mY.stop_action = 'coast'
**試行錯誤 [#r91ec592]
:元に戻らない|
#ref(2018a/Member/montbell/Mission1/東京2.jpg,50%,東京2)
まず苦しんだのは?軸がしっかり固定できないことでした。上の...
:?軸の誤差|
上記と同じ理由で?軸の線の長さにも誤差ができてしまいました...
*最後に [#ga1854f9]
いろいろ頑張ってできたのがこれです。
#ref(2018a/Member/montbell/Mission1/東京 清書.jpg,30%,東...
かなり四苦八苦しましたが読めるものができてよかったです。
ページ名: