Código e Implementación » History » Version 2
« Previous -
Version 2/45
(diff) -
Next » -
Current version
Javier Huanca, 12/16/2023 05:04 PM
Código e Implementación¶
Funciones¶
from ev3dev2.motor import LargeMotor, MediumMotor, OUTPUT_A, OUTPUT_B, OUTPUT_C, OUTPUT_D, SpeedRPM, MoveTank
from ev3dev2.sound import Sound
import math
import os
import sys
from time import sleep
def debug_print(*args, **kwargs):
'''Print debug messages to stderr.
This shows up in the output panel in VS Code.
'''
print(*args, **kwargs, file=sys.stderr)
os.system('setfont Lat15-TerminusBold14')
#movimiento simultáneo de las ruedas(rueda izquierda, rueda derecha)
movimiento_ruedas = MoveTank(OUTPUT_A, OUTPUT_B)
#movimiento del palo del robot
mPalo = LargeMotor(OUTPUT_C)
#movimiento de rotación de las ruedas delanteras
mRotar = MediumMotor(OUTPUT_D)
#función para lanzar un objeto con el palo
def lanzar(distancia):
pi = math.pi
vel_necesaria = math.sqrt((4.9*distancia)/math.cos(pi/4)*math.sin(pi/4))
vel_rpm = (60*vel_necesaria)/(2*pi*0.189)
# Rotar el motor en -180 grados al 6% de velocidad
mPalo.on_for_degrees(6,-180)
# Rotar el motor en 225 grados al porcentaje de velocidad de vel_rpm
mPalo.on_for_degrees(SpeedRPM(round(vel_rpm)),225)
# Rotar el motor en -45 grados al 6% de la velocidad
mPalo.on_for_degrees(6,-45)
#función para mover el robot hacia adelante
def mover_adelante():
movimiento_ruedas.on(-100, -100)
#función para mover el robot hacia atras
def mover_atras():
movimiento_ruedas.on(100, 100)
#función para mover el robot hacia la izquierda
def mover_izquierda():
mRotar.on(50)
#función para mover el robot hacia la derecha
def mover_derecha():
mRotar.on(-50)
#función para detener el robot
def detener():
movimiento_ruedas.stop()