Шаговый двигатель с драйверами ULN2003 только вибрирует и не вращается - PullRequest
1 голос
/ 27 июня 2019

Я пытаюсь заставить шаговый двигатель работать уже больше недели.Он давно не отвечает на мой скрипт на python.

Когда я только купил Stepper Motor, все работало нормально, и у меня не было проблем.Теперь, спустя несколько недель, это, кажется, не отвечает.Загораются индикаторы на плате ULN2003, но сам двигатель не вращается, а просто вибрирует.Это заставило меня думать, что это была проблема с проводом или скриптом, но это не похоже на это.Я пробовал несколько других скриптов и пару раз менял провода, но безрезультатно.

Это код, который работал:

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)


# 7=A, 11=B, 13=C, 15=D 
control_pins = [7,11,13,15] 

while 1:
  for pin in control_pins:
    GPIO.setup(pin, GPIO.OUT)
    GPIO.output(pin, 0)

  halfstep_seq = [
    [1,0,0,0], # Step 1
    [1,1,0,0], # Step 2
    [0,1,0,0], # Step 3
    [0,1,1,0], # Step 4
    [0,0,1,0], # Step 5
    [0,0,1,1], # Step 6
    [0,0,0,1], # Step 7
    [1,0,0,1]  # Step 8
  ]

  for i in range(512):
    for halfstep in range(8):
      for pin in range(4):
        GPIO.output(control_pins[pin], halfstep_seq[halfstep][pin])
      time.sleep(0.001)

И да, я знаю, что GPIO.cleanup () должен быть там.Я удалил его специально, чтобы цикл продолжал работать.Таким образом, мне было легче обнаружить любые ошибки вместо того, чтобы двигатель просто делал 1 круг и останавливался каждый раз.

Я искренне ожидаю, что двигатель по какой-то причине просто сломался.Не знаю как, не знаю когда, но, вероятно, что-то сломало двигатель изнутри.

Если есть кто-то с большим опытом, который может сказать мне, что делать в этой ситуации, пожалуйста, помогитея.

1 Ответ

0 голосов
/ 27 июня 2019

Таким образом, я предполагаю, что используемое вами время шага (время сна) слишком короткое, у мотора недостаточно времени, чтобы повернуть в новое положение, прежде чем вы попытаетесь перевести его в следующее.Программа эффективно опережает то, на что способен мотор.Может случиться так, что физические подшипники в двигателе немного ухудшились, или приводная цепь не способна управлять двигателем так же сильно (более низкое напряжение / мощность, чем когда он работал).Предоставляет ли техническая спецификация двигателя максимальное теоретическое число оборотов в минуту, на котором оно может работать?Предоставляет ли он минимальное время шага или аналогичную информацию, которая могла бы этим руководствоваться?

Кроме того, если вы скажете, что что-то сломалось, очень полезно предоставить трассировку стека или другие сообщения об ошибках, чтобы люди могли попытаться помочьпонять, почему и что именно не работает.

...