- 追加された行はこの色です。
- 削除された行はこの色です。
[[2017a/Member/nami/mission1]]
*課題について [#fd03242b]
7画以上の文字を選ぶこと。
課題は2017a/Mission1を参照。漢字は県の森の実行委員やバイトでロボティスクの勉強をする時間が深夜しかなかったため「辛」にしました。
*ロボットについて [#i170e7dd]
ロボットは最初は自走する形にしたが直角に曲がることが出来なかったため、前後をタイヤ移動左右をベルトコンベアで動く構造にした。問題は揺れが生じやすく文字がぶれてしまった。
*プログラムについて [#z56e1fd2]
調整をしやすいようにすべてサブルーチン化をして右に移動するなどをまとめた。
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import ev3dev.ev3 as ev3
import time
motor_x = ev3.LargeMotor('outB')
motor_z = ev3.MediumMotor('outC')
motor_y = ev3.LargeMotor('outA')
def pen_down():
motor_z.run_forever(duty_cycle_sp=50, speed_sp=250)
time.sleep(0.3)
motor_z.stop(stop_action='brake')
def pen_up():
motor_z.run_forever(duty_cycle_sp=50, speed_sp=-250)
time.sleep(0.3)
motor_z.stop(stop_action='brake')
def go_right():
motor_x.run_forever(duty_cycle_sp=50, speed_sp=250)
time.sleep(0.36)
motor_x.stop(stop_action='brake')
def go_right_half():
motor_x.run_forever(duty_cycle_sp=50, speed_sp=250)
time.sleep(0.18)
motor_x.stop(stop_action='brake')
def go_left():
motor_x.run_forever(duty_cycle_sp=50, speed_sp=-250)
time.sleep(0.36)
motor_x.stop(stop_action='brake')
def go_left_half():
motor_x.run_forever(duty_cycle_sp=50, speed_sp=-250)
time.sleep(0.18)
motor_x.stop(stop_action='brake')
def go_front():
motor_y.run_forever(duty_cycle_sp=50, speed_sp=-125)
time.sleep(0.36)
motor_y.stop(stop_action='brake')
def go_back():
motor_y.run_forever(duty_cycle_sp=50, speed_sp=125)
time.sleep(0.36)
motor_y.stop(stop_action='brake')
pen_down()
go_front()
pen_up()
go_left()
pen_down()
go_right()
go_right()
pen_up()
go_left_half()
pen_down()
go_front()
pen_up()
go_left()
pen_down()
go_back()
pen_up()
go_front()
go_left_half()
pen_down()
go_right()
go_front()
pen_down()
go_back()
go_back()
motor_y.run_forever(duty_cycle_sp=50, speed_sp=120)
time.sleep(0.2)
motor_y.stop(stop_action='brake')
pen_up()
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import ev3dev.ev3 as ev3
import time
motor_x = ev3.LargeMotor('outB')
motor_z = ev3.MediumMotor('outC')
motor_y = ev3.LargeMotor('outA')
def pen_down():
motor_z.run_forever(duty_cycle_sp=50, speed_sp=250)
time.sleep(0.3)
motor_z.stop(stop_action='brake')
def pen_up():
motor_z.run_forever(duty_cycle_sp=50, speed_sp=-250)
time.sleep(0.3)
motor_z.stop(stop_action='brake')
def go_right():
motor_x.run_forever(duty_cycle_sp=50, speed_sp=250)
time.sleep(0.36)
motor_x.stop(stop_action='brake')
def go_right_half():
motor_x.run_forever(duty_cycle_sp=50, speed_sp=250)
time.sleep(0.18)
motor_x.stop(stop_action='brake')
def go_left():
motor_x.run_forever(duty_cycle_sp=50, speed_sp=-250)
time.sleep(0.36)
motor_x.stop(stop_action='brake')
def go_left_half():
motor_x.run_forever(duty_cycle_sp=50, speed_sp=-250)
time.sleep(0.18)
motor_x.stop(stop_action='brake')
def go_front():
motor_y.run_forever(duty_cycle_sp=50, speed_sp=-125)
time.sleep(0.36)
motor_y.stop(stop_action='brake')
def go_back():
motor_y.run_forever(duty_cycle_sp=50, speed_sp=125)
time.sleep(0.36)
motor_y.stop(stop_action='brake')
pen_down()
go_front()
pen_up()
go_left()
pen_down()
go_right()
go_right()
pen_up()
go_left_half()
pen_down()
go_front()
pen_up()
go_left()
pen_down()
go_back()
pen_up()
go_front()
go_left_half()
pen_down()
go_right()
go_front()
pen_down()
go_back()
go_back()
motor_y.run_forever(duty_cycle_sp=50, speed_sp=120)
time.sleep(0.2)
motor_y.stop(stop_action='brake')
pen_up()