Шаговый двигатель на GyverStepper

Версия не ниже FLP7.3.4

Пользовательские блоки для управления шаговыми двигателями и сервоприводами
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

Шаговый двигатель на GyverStepper

#1

Сообщение AlexCrane » 24.03.2021{, 22:49}

Блок для управления ШД на основе библиотек Gyver'а
    ШД ГайверЛиб.png
    ШД ГайверЛиб.png (40.2 КБ) 18960 просмотров
      Используемые библиотеки (в блок не интегрированы, скачивать по ссылкам ниже):
      GyverStepper (https://alexgyver.ru/gyverstepper/)
      GyverTimers (https://alexgyver.ru/gyvertimers/)

      В блоке реализована поддержка всех функций библиотеки gyverstepper!

      Особенности использования данных блоков:Показать
      Первым на холст программирования нужно вытаскивать блок ШД AlexCrane GyverLIB и лишь затем блок ШД Конечный.
      Если вытащили еще один блок ШД AlexCrane GyverLIB, то удалите блок ШД Конечный и вытащите его заново.
      Если удалите самый последний блок ШД AlexCrane GyverLIB то удалите и блок ШД Конечный и начните заново.


      Возможно автор программы Сергей что-то подправил, но сейчас компилируется нормально и без ШД блок конечный... Пока оставил...
      Блоки бета-версия от 17.06.2021: - исправлена ошибка изменения скорости в режиме постоянного вращения на лету

      Обозначения:Показать
      _|¯ - постоянная подача true, отработка по переднему фронту
      _|_ - Подача сигнала через RTrig на один цикл
      Входы:Показать
      _|_ EnableMotor - Подать питание на мотор, через RTrig
      _|_ DisableMotor - Снять питание с мотора, через RTrig
      Endless_Rotation_Speed - Скорость постоянного вращения, шаг/сек
      Endless_Rotation_Smooth - Режим ускорения для бесконечного вращения На данный момент используется вход Acceleration
      _|_ Start_Endless_Rotation - Пуск постоянного вращения, через RTrig
      _|_ Stop - Плавная остановка ШД, через RTrig
      _|_ Brake - Резкая остановка ШД, через RTrig
      _|_ Reset - Резкая остановка и сброс координат в 0, через RTrig
      MaxSpeed - Максимальная скорость шаг/сек, указывать обязательно
      Acceleration - Ускорение в шаг/сек за сек, указывать обязательно
      Steps - Установка шагов
      _|_ Start_Steps - Пуск шагов, через RTrig
      _|¯ Absolute - Режим абсолютных координат true, Режим относительных координат - false
      _|¯ CCW - Направление вращения
      _|_ CurrentPosition - Текущая позиция мотора
      _|_ setCurrentPosition - Установка текущей позиции мотора, через RTrig
      _|¯ AutoPower - Управление питанием
      _|_ getSpeed - Просмотр целевой скорости мотора на выходе curSpeed, через RTrig
      Выходы:Показать
      _|¯ Ready - На выходе высокий уровень, если мотор стоит или остановился
      Position - На выходе текущая позиция в шагах
      curSpeed - На выходе текущая целевая скорость мотора
      Параметры блоки описаны внутри блока.

      Ненужные режимы, входы отключаются.
      Выявленные недостатки библиотеки gyverstepper: пока не проверено…Показать
      1. В режиме бесконечного вращения с включенным режимом SMOOTH (плавный разгон и торможение) если во время плавного ускорения вызвать плавную остановку stop, то мотор резко останавливается и продолжает медленно шагать! Как решение использовать резкую остановку break или reset. Все вопросы к Гайверу (в тестовом примере с его сайта у меня наблюдаются такие-же глюки).
      2. В режиме бесконечного вращения с включенным режимом SMOOTH (плавный разгон и торможение) если во время плавного ускорения вызвать плавную остановку stop и тут же включить опять бесконечное вращение то мотор ускоряется не с нуля а с момента остановки (может стартануть вообще без ускорения)... Решение см. п.1.
      Примеры (внимание в примерах используются и старые и новые блоки…Показать
      Бесконечное вращение -
      ШД G бесконечное вращение.zip
      (90.63 КБ) 210 скачиваний
      Бесконечное вращение с реверсом - Шагаем в режиме относительных координат -
      ШД G шагаем относительно.zip
      (51.17 КБ) 204 скачивания
      Крутим мотор туда сюда на определенное количество шагов бесконечно viewtopic.php?t=7245&start=40#p103761[/color]
      Протестировал базовые функции. НЕ удалось достичь высоких скоростей на моем ШД (максимум 2500 при питании 50В Nema23)

      ТРЕБУЕТСЯ ТЕСТИРОВАНИЕ ВСЕХ РЕЖИМОВ....
      Можете отблагодарить на кофе, ну или хотя-бы лайкните пост.
      Последний раз редактировалось AlexCrane 01.07.2021{, 23:00}, всего редактировалось 11 раз.
      Если не знаю, то не скажу. Если скажу, то сначала проверю...
      Если нет возможности отблагодарить материально, хотя бы оцени пост....

      Аватара пользователя
      Vuktor
      Сержант
      Сообщения: 237
      Зарегистрирован: 11.04.2021{, 14:44}
      Репутация: 12
      Имя: Vuktor

      Шаговый двигатель на GyverStepper

      #61

      Сообщение Vuktor » 08.06.2021{, 09:47}

      AlexCrane писал(а):
      17.05.2021{, 16:45}
      Забыл вчера отписаться. Обновил блоки до версии 1.13
      Уже вышла GyverStepper v1.14

      Аватара пользователя
      AlexCrane
      Капитан
      Сообщения: 895
      Зарегистрирован: 20.10.2017{, 13:22}
      Репутация: 294
      Откуда: Ульяновск
      Имя: Александр

      Шаговый двигатель на GyverStepper

      #62

      Сообщение AlexCrane » 08.06.2021{, 19:53}

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

      Аватара пользователя
      Vuktor
      Сержант
      Сообщения: 237
      Зарегистрирован: 11.04.2021{, 14:44}
      Репутация: 12
      Имя: Vuktor

      Шаговый двигатель на GyverStepper

      #63

      Сообщение Vuktor » 08.06.2021{, 21:57}

      AlexCrane, Какие такие баги? :shok:

      Аватара пользователя
      AlexCrane
      Капитан
      Сообщения: 895
      Зарегистрирован: 20.10.2017{, 13:22}
      Репутация: 294
      Откуда: Ульяновск
      Имя: Александр

      Шаговый двигатель на GyverStepper

      #64

      Сообщение AlexCrane » 08.06.2021{, 22:00}

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

      Аватара пользователя
      Vuktor
      Сержант
      Сообщения: 237
      Зарегистрирован: 11.04.2021{, 14:44}
      Репутация: 12
      Имя: Vuktor

      Шаговый двигатель на GyverStepper

      #65

      Сообщение Vuktor » 08.06.2021{, 22:10}

      AlexCrane, Я знаком с определением слова баг.

      Отправлено спустя 18 минут 29 секунд:

      Версии
      v1.12 - пофикшена плавная работа в KEEP_SPEED. Добавлена поддержка "внешних" драйверов. Убран аргумент SMOOTH из setSpeed
      v1.13 - исправлены мелкие баги, оптимизация
      v1.14 - исправлены ошибки разгона и торможения в KEEP_SPEED
      v1.15 - оптимизация, исправлены мелкие баги, stop() больше не сбрасывает maxSpeed

      Отправлено спустя 22 минуты 54 секунды:
      AlexCrane, Не могли бы вы в описании дать ссылку на версию 1.13 так как по ссылке предлагается свежая версия. Или будет работать с последней? У меня была 1.13 но удалилась случайно.

      Аватара пользователя
      AlexCrane
      Капитан
      Сообщения: 895
      Зарегистрирован: 20.10.2017{, 13:22}
      Репутация: 294
      Откуда: Ульяновск
      Имя: Александр

      Шаговый двигатель на GyverStepper

      #66

      Сообщение AlexCrane » 09.06.2021{, 07:03}

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

      Аватара пользователя
      Vuktor
      Сержант
      Сообщения: 237
      Зарегистрирован: 11.04.2021{, 14:44}
      Репутация: 12
      Имя: Vuktor

      Шаговый двигатель на GyverStepper

      #67

      Сообщение Vuktor » 09.06.2021{, 09:24}

      AlexCrane, А что, так можно что ли?

      Hrust01
      Рядовой
      Сообщения: 4
      Зарегистрирован: 16.04.2020{, 17:08}
      Репутация: 0
      Имя: Рустам

      Шаговый двигатель на GyverStepper

      #68

      Сообщение Hrust01 » 17.06.2021{, 09:43}

      12.png
      Перед запятой нужно добавить ноль.

      Аватара пользователя
      AlexCrane
      Капитан
      Сообщения: 895
      Зарегистрирован: 20.10.2017{, 13:22}
      Репутация: 294
      Откуда: Ульяновск
      Имя: Александр

      Шаговый двигатель на GyverStepper

      #69

      Сообщение AlexCrane » 17.06.2021{, 13:25}

      Hrust01, Исправил

      Обновил блок до версии 1.15. Искать в первом посту viewtopic.php?t=7245&start=60#p101766
      Если не знаю, то не скажу. Если скажу, то сначала проверю...
      Если нет возможности отблагодарить материально, хотя бы оцени пост....

      Hrust01
      Рядовой
      Сообщения: 4
      Зарегистрирован: 16.04.2020{, 17:08}
      Репутация: 0
      Имя: Рустам

      Шаговый двигатель на GyverStepper

      #70

      Сообщение Hrust01 » 22.06.2021{, 15:07}

      Строю шнековый дозатор сыпучих продуктов на двигателе 57HS112 драйвер TB4240 на чипе TB6600.
      Как только запускаю ардуинку при нажатии кнопок "Грубо" или "Точно" двигатель вращается с соответствующей скоростью.
      При нажатии кнопки "Стоп" двигатель останавливается. По истечении нескольких минут при нажатии любой из кнопок
      "Грубо" или "Точно" двигатель начинает бешено вращаться при нажатии кнопки "Стоп" двигатель останавливается. После перезагрузки ардуино схема снова работает нормально.
      Помогите разобраться с бешеными оборотами двигателя.

      Дозатор.png
      Дозатор.png (11.32 КБ) 1039 просмотров
      Вложения
      дозатор.flp
      (4.35 МБ) 52 скачивания

      Аватара пользователя
      AlexCrane
      Капитан
      Сообщения: 895
      Зарегистрирован: 20.10.2017{, 13:22}
      Репутация: 294
      Откуда: Ульяновск
      Имя: Александр

      Шаговый двигатель на GyverStepper

      #71

      Сообщение AlexCrane » 23.06.2021{, 07:46}

      Hrust01, Версия библиотеки какая?
      Если не знаю, то не скажу. Если скажу, то сначала проверю...
      Если нет возможности отблагодарить материально, хотя бы оцени пост....

      Hrust01
      Рядовой
      Сообщения: 4
      Зарегистрирован: 16.04.2020{, 17:08}
      Репутация: 0
      Имя: Рустам

      Шаговый двигатель на GyverStepper

      #72

      Сообщение Hrust01 » 23.06.2021{, 07:55}

      AlexCrane писал(а):
      23.06.2021{, 07:46}
      Hrust01, Версия библиотеки какая?
      библиотека.png
      библиотека.png (10.91 КБ) 1015 просмотров

      Аватара пользователя
      AlexCrane
      Капитан
      Сообщения: 895
      Зарегистрирован: 20.10.2017{, 13:22}
      Репутация: 294
      Откуда: Ульяновск
      Имя: Александр

      Шаговый двигатель на GyverStepper

      #73

      Сообщение AlexCrane » 23.06.2021{, 08:42}

      Hrust01, Установите версию 1.15 отсюда https://github.com/GyverLibs/GyverStepper. Гайвер вроде исправил этот баг
      Если не знаю, то не скажу. Если скажу, то сначала проверю...
      Если нет возможности отблагодарить материально, хотя бы оцени пост....

      Hrust01
      Рядовой
      Сообщения: 4
      Зарегистрирован: 16.04.2020{, 17:08}
      Репутация: 0
      Имя: Рустам

      Шаговый двигатель на GyverStepper

      #74

      Сообщение Hrust01 » 23.06.2021{, 08:56}

      AlexCrane писал(а):
      23.06.2021{, 08:42}
      Hrust01, Установите версию 1.15 отсюда https://github.com/GyverLibs/GyverStepper. Гайвер вроде исправил этот баг
      Обновил библиотеку. Проблема ушла. Лучше стало работать ускорение.

      azgold
      Рядовой
      Сообщения: 6
      Зарегистрирован: 03.06.2021{, 16:16}
      Репутация: 0
      Имя: Николай

      Шаговый двигатель на GyverStepper

      #75

      Сообщение azgold » 26.06.2021{, 22:05}

      Здравствуйте всем! Я только начинаю изучать, нужна простенькая схемка управления двумя шаговыми двигателями. Они должны вращаться независимо друг от друга и скорость регулироватся двумя потенциометрами каждый для своего двигателя. Есть два двигателя типа nema17, ардуино уно и два переменных резистора. На мой взгляд, данный блок больше всего подходит но как и куда вставить резисторы - не понимаю... Буду очень благодарен за помощь!

      Аватара пользователя
      AlexCrane
      Капитан
      Сообщения: 895
      Зарегистрирован: 20.10.2017{, 13:22}
      Репутация: 294
      Откуда: Ульяновск
      Имя: Александр

      Шаговый двигатель на GyverStepper

      #76

      Сообщение AlexCrane » 27.06.2021{, 20:35}

      azgold, Так
      2ШД.png
      2ШД.flp
      (5.01 МБ) 82 скачивания
      2ШД.flp
      (5.01 МБ) 82 скачивания
      Если не знаю, то не скажу. Если скажу, то сначала проверю...
      Если нет возможности отблагодарить материально, хотя бы оцени пост....

      azgold
      Рядовой
      Сообщения: 6
      Зарегистрирован: 03.06.2021{, 16:16}
      Репутация: 0
      Имя: Николай

      Шаговый двигатель на GyverStepper

      #77

      Сообщение azgold » 29.06.2021{, 20:50}

      AlexCrane писал(а):
      27.06.2021{, 20:35}
      azgold, Так
      2ШД.png2ШД.flp
      2ШД.flp
      Спасибо ОГРОМНОЕ! Сегодня попробую!
      Если можно небольшое уточнение... Можно ли кнопку СТАРТ заменить инверсией входа, а кнопку стоп вообще не использовать?

      Аватара пользователя
      AlexCrane
      Капитан
      Сообщения: 895
      Зарегистрирован: 20.10.2017{, 13:22}
      Репутация: 294
      Откуда: Ульяновск
      Имя: Александр

      Шаговый двигатель на GyverStepper

      #78

      Сообщение AlexCrane » 29.06.2021{, 22:02}

      azgold писал(а):
      29.06.2021{, 20:50}
      Если можно небольшое уточнение... Можно ли кнопку СТАРТ заменить инверсией входа, а кнопку стоп вообще не использовать?
      Да кнопку стоп уберите.
      Кнопку старт тоже уберите, но Rtrig оставьте и на входе этого Rtrig поставьте инверсию, тогда двигатель стартанет при старте контроллера. Вы этого хотите?
      Если не знаю, то не скажу. Если скажу, то сначала проверю...
      Если нет возможности отблагодарить материально, хотя бы оцени пост....

      azgold
      Рядовой
      Сообщения: 6
      Зарегистрирован: 03.06.2021{, 16:16}
      Репутация: 0
      Имя: Николай

      Шаговый двигатель на GyverStepper

      #79

      Сообщение azgold » 29.06.2021{, 22:48}

      Просто ОГРОМЕННОЕ спасибо! Да, именно это и хотел.
      Еще раз огромное спасибо!!!

      azgold
      Рядовой
      Сообщения: 6
      Зарегистрирован: 03.06.2021{, 16:16}
      Репутация: 0
      Имя: Николай

      Шаговый двигатель на GyverStepper

      #80

      Сообщение azgold » 01.07.2021{, 01:58}

      Оба двигателя работают, только не реагируют на повороты резисторов, крутятся с одной скоростью.
      До этого (по другой прошивке) по одному работали и скорость изменялась через SCALE с такими же настройками.

      Ответить

      Вернуться в «Управление шаговыми двигателями и сервоприводами»