Перейти к содержанию
    

Pyboard v1.0 шаговый мотор, почему не идет?

Всем привет, нужна помощь, есть плата Pyboard v1.0 и шаговый мотор, все это нужно запрограммировать так, чтобы мотор делал 25 шагов в одну сторону и обратно, желательно проверяя положение нуля, а так же записывая на флеш память кол-во итераций. Но для начала я даже не могу сделать так чтоб он двигался, подскажите в чем проблема? 

from pyb import Pin, Timer
import time
napravl = Pin('Y3', Pin.OUT, Pin.PULL_UP) # ножка включения реверса - коричневый провод
p = Pin('Y4', Pin.OUT, Pin.PULL_DOWN) # Y4 ножка шага мотора это TIM11, CH1 - красный провод

def (timer):
  time.sleep_ms(2)
  p.low()
  time.sleep_ms(2)
  p.high()
  return

def new_side_high(timer):
  napravl.high()
  return

def new_side_low(timer):
  napravl.low()
  return

tim = pyb.Timer(11)
tim.init(freq=200)

while True:
  tim.callback(new_side_high)
  time.sleep(1.5)
  for i in range(500):
    tim.callback()

  tim.callback(new_side_low)
  time.sleep(1.5)
  for j in range(500):
    tim.callback()

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, pogy said:

подскажите в чем проблема? 

Слишком специфичный вопрос вы задали. Здесь, обычно, микроконтроллеры программируют на Си/Си+=/ассемблере. Ну да ладно. Осциллограф есть? Посмотрите, что с сигналом на ножках. Либо, если нет осцилла, припаяйте туда светодиоды и снизьте частоту, чтобы можно глазом увидеть мигание светодиодов.

 

Ну и что за двигатель, схему подключения, всё это в студию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Осциллографа нет, но я с помощью тестера посмотрел как сигнал ходит, ходит он так... Есть 3 ножки (PUL, DIR, GRD). PUL - отвечает за подачу сигнала на катушки шагового двигателя, тем самым должна его крутить. DIR - отвечает за смену направления движения, подавая 0 она крутиться в одну сторону, при 1 в другую. GRD - земля. Так вот, подключив тестер к PUL, наблюдал постоянное значение напряжения, возможно это из за того, что частота высокая и импульсы не заметны. DIR же показывал плавное изменение напряжения от 0 до 3В, что в свою очередь должно быть логическим 0 и 1. Однако мотор в движение не приходит и я не вижу ошибки в коде. Функция первая в которой название не показалось, верная, с ней у меня мотор ходил, но когда я добавляю смену направления все ломается и ничего не двигается, подскажите свои идеи что можно сделать, со светодиодами еще проверю и отпишусь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...