Ошибка времени выполнения ШИМ-объект уже существует для этого канала GPIO - PullRequest
0 голосов
/ 09 мая 2019

Я новичок в RasPberry Pi, и я получил ошибку при работе серводвигателя в моем сценарии обнаружения объектов

Вот часть кода, все функции импорта которой указаны поверх кода

for i in range (classes.size):
    if(classes[0][i] == 2 and scores[0][i]>0.5):

      servoPIN = 22
      GPIO.setmode(GPIO.BCM)
      GPIO.setup(servoPIN, GPIO.OUT)
      p = GPIO.PWM(servoPIN, 50)  #line 150
      p.start(2.5) # Initialization
      try:

        p.ChangeDutyCycle(5)
        time.sleep(4)
        p.ChangeDutyCycle(10)
        time.sleep(4)
      except KeyboardInterrupt:
        p.stop()
      except:
          #print ("exception")

        GPIO.cleanup()

выход: (двигатель включается и сразу же появляется ошибка ниже)

Traceback (most recent call last):
  File "Object_detection_picamera.py", line 150, in <module>
    p = GPIO.PWM(servoPIN, 50) # GPIO 17 for PWM with 50Hz
RuntimeError: A PWM object already exists for this GPIO channel

Я не знаю, почему это происходит, пожалуйста, помогите мне

...