from machine import Pin, PWM
from utime import sleep
#Configurar el pin para el servo motor
señalServo = PWM(Pin(25), freq=50)
# Configurar el pin para el led
Led = Pin(19, Pin.OUT)
# Función que cumple la primera accion del servo (abrir el dispensador)
def disp_abierto():
# Aqui se configura el servo para que gire los grados necesarios
for gradServo in range(0, 90):
# Ajustar el valor de la señal
señalServo.duty(gradServo)
# Pausas para el que el servo gire lentamente
sleep(0.05)
# Mensaje que muestra la acion que esta haciendo el servo y los grados que ha girado
print(f"Abriendo dispensador ", gradServo, "°")
# Aqui se enciende el led solo cuando se abre el dispensador
Led.on()
# Función que cumple la segunda accion del servo (cerrar el dispensador)
def disp_cerrado():
# Aqui se configura de nuevo el servo para que gire los grados necesarios, en este casi en direccion contraria
for gradServo in range(90, 0, -1):
# Ajusta el valor de la señal para mover el servo
señalServo.duty(gradServo)
# Pausas para que el servo gire lentamente
sleep(0.05)
# Mensaje que muestra la accion que esta haciendo el servo y los grados que ha girado
print(f"Cerrando dispensador ", gradServo, "°")
# Aqui apaga el led cuando el dispensador se esta cerrando
Led.off()
# Llamar la funcion que abre el servo
disp_abierto()
# Esperar durante 3 segundos mientras se llena la coca
sleep(3)
# Llamar la funcion que cierra el servo
disp_cerrado()