Я пытаюсь управлять шаговым двигателем, используя Raspberry Pi и adafruit Motor HAT, чтобы вращать штангу, которая поднимает маленькие наполненные водой горшки. Однако мне нужно делать это медленно, чтобы дать воде стечь и предотвратить слишком тяжелую систему для двигателя.
Я пытаюсь создать вложенную l oop, которая выполняет дискретное число шаги, паузы на период, затем снова выполняет l oop. У меня возникают проблемы с элементом паузы, поскольку мои попытки вложения заканчивают тем, что я выключал двигатель после первого поворота.
Я могу смоделировать эффект, которого я хочу достичь, используя код ниже, но он, очевидно, громоздкий, неэффективно и трудно точно определить количество циклов.
from adafruit_motorkit import MotorKit
from time import sleep
kit = MotorKit()
from adafruit_motor import stepper
for i in range(20):
kit.stepper1.onestep(direction=stepper.BACKWARD, style=stepper.INTERLEAVE)
print("Turn")
sleep(10)
for i in range(20):
kit.stepper1.onestep(direction=stepper.BACKWARD, style=stepper.INTERLEAVE)
print("Turn")
sleep(10)
for i in range(20):
kit.stepper1.onestep(direction=stepper.BACKWARD, style=stepper.INTERLEAVE)
print("Turn")
for i in range(20):
kit.stepper1.onestep(direction=stepper.BACKWARD, style=stepper.INTERLEAVE)
print("Turn")
sleep(10)
for i in range(20):
kit.stepper1.onestep(direction=stepper.BACKWARD, style=stepper.INTERLEAVE)
print("Turn")
sleep(10)
for i in range(20):
kit.stepper1.onestep(direction=stepper.BACKWARD, style=stepper.INTERLEAVE)
print("Turn")
Буду очень признателен за совет о том, как правильно вкладывать l oop.