GyverStepper (https://alexgyver.ru/gyverstepper/)
GyverTimers (https://alexgyver.ru/gyvertimers/)
В блоке реализована поддержка всех функций библиотеки gyverstepper!
Особенности использования данных блоков:Показать
Первым на холст программирования нужно вытаскивать блок ШД AlexCrane GyverLIB и лишь затем блок ШД Конечный.
Если вытащили еще один блок ШД AlexCrane GyverLIB, то удалите блок ШД Конечный и вытащите его заново.
Если удалите самый последний блок ШД AlexCrane GyverLIB то удалите и блок ШД Конечный и начните заново.
Возможно автор программы Сергей что-то подправил, но сейчас компилируется нормально и без ШД блок конечный... Пока оставил...
Если вытащили еще один блок ШД AlexCrane GyverLIB, то удалите блок ШД Конечный и вытащите его заново.
Если удалите самый последний блок ШД AlexCrane GyverLIB то удалите и блок ШД Конечный и начните заново.
Возможно автор программы Сергей что-то подправил, но сейчас компилируется нормально и без ШД блок конечный... Пока оставил...
Обозначения:Показать
_|¯ - постоянная подача true, отработка по переднему фронту
_|_ - Подача сигнала через RTrig на один цикл
_|_ - Подача сигнала через 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
_|_ 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 - На выходе текущая целевая скорость мотора
Position - На выходе текущая позиция в шагах
curSpeed - На выходе текущая целевая скорость мотора
Ненужные режимы, входы отключаются.
Выявленные недостатки библиотеки gyverstepper: пока не проверено…Показать
1. В режиме бесконечного вращения с включенным режимом SMOOTH (плавный разгон и торможение) если во время плавного ускорения вызвать плавную остановку stop, то мотор резко останавливается и продолжает медленно шагать! Как решение использовать резкую остановку break или reset. Все вопросы к Гайверу (в тестовом примере с его сайта у меня наблюдаются такие-же глюки).
2. В режиме бесконечного вращения с включенным режимом SMOOTH (плавный разгон и торможение) если во время плавного ускорения вызвать плавную остановку stop и тут же включить опять бесконечное вращение то мотор ускоряется не с нуля а с момента остановки (может стартануть вообще без ускорения)... Решение см. п.1.
2. В режиме бесконечного вращения с включенным режимом SMOOTH (плавный разгон и торможение) если во время плавного ускорения вызвать плавную остановку stop и тут же включить опять бесконечное вращение то мотор ускоряется не с нуля а с момента остановки (может стартануть вообще без ускорения)... Решение см. п.1.
Примеры (внимание в примерах используются и старые и новые блоки…Показать
Бесконечное вращение -
Бесконечное вращение с реверсом -
Шагаем в режиме относительных координат -
Крутим мотор туда сюда на определенное количество шагов бесконечно viewtopic.php?t=7245&start=40#p103761[/color]
ТРЕБУЕТСЯ ТЕСТИРОВАНИЕ ВСЕХ РЕЖИМОВ....
Можете отблагодарить на кофе, ну или хотя-бы лайкните пост.