Страница 6 из 8

Re: WLMotion

Добавлено: 23 дек 2017, 23:23
CrazyUser
Bender писал(а):Я не понял т.е. ускорение не выдерживается? сделай видео пож.
Это я про теорию. Я просто когда то делал нечто похожее но на AVR-ке. Проблема в разрешающей способность делителя частоты. На высоких частотах невозможно обеспечить требуемое ускорение. Оно резко скачет вверх при минимальном изменении счётчика паузы между шагами.
Пример: Скорость шагов 36 кГц - счётчик делителя д.б. для STM-ки 2000. Приращение/уменьшение счётчика на 1 даст изменение частоты на +-18 Гц. При времени между импульсами 1/36000 с, получаем ускорение -> dF/dT = 18/(1/36000)=18*36000=648000/с^2, и меньше его уже никак не сделать на мой взгляд. Или может всё таки можно как то?

Re: WLMotion

Добавлено: 25 дек 2017, 08:35
wldev
понятно, если так генерировать то можно ещё и невилировать частотой 18-36-18-36 тогда средняя 27 .

Re: WLMotion

Добавлено: 29 дек 2017, 20:24
upack
Доброго времени суток!
Подскажите, могу ли я все собрать как на схеме которую набросал?
И ещё вопрос на счёт 3,3в и 5в. совсем запутался. будет работать?
В системотехнике я полнный 0.2, начал изучать неделю назад. :thinking:

Re: WLMotion

Добавлено: 30 дек 2017, 06:15
wldev
upack писал(а):Доброго времени суток!
Подскажите, могу ли я все собрать как на схеме которую набросал?
И ещё вопрос на счёт 3,3в и 5в. совсем запутался. будет работать?
В системотехнике я полнный 0.2, начал изучать неделю назад.
будет, нужна схема последнего устройства...(которое внизу картинки)
я помогу.

Re: WLMotion

Добавлено: 14 фев 2018, 13:05
wldev
Всем привет, давно не писал...
На работе переводил станки на свой контроллер....пашут...

Также было добавлено:
1. Можно плавно менять кривые разгона/торможения от трапеции к S. т.е. появился коэффициент kST который отвечает. какую долю будет занимать S разгон а какую трапеция.
2. Добавил возможность инвертировать сигналы Step и Dir.
3. Добавлена возможность выбора типа управляющих импульсов.
StepDir
CWCCW
AB
ABx2
ABx4

обновление будет выпущено после тестов

Re: WLMotion

Добавлено: 08 май 2018, 15:24
wldev
Появилось немного своб. времени....

Скоро выложу новую версию. но пока S кривые будут выключены....(
Но улучшена обработка траектории контроллером.
и добавлены п 2 и 3 предыдущего сообщения...
стало
https://youtu.be/PS2lmwKG0Bg?t=1m28s
было
https://youtu.be/x-7qtPf8Adw?t=1m29s

Re: WLMotion

Добавлено: 11 май 2018, 09:42
wldev
обновил, работает... сам на ней фрезерую...
описание новых параметров добавлено в таблицу на сайте wlmotion.ru там же и ссылка для скачивания
Также сделал выход шим в зависимости от S параметра программы, только негде попробовать)))...

Re: WLMotion

Добавлено: 11 май 2018, 10:48
selenur
Bender писал(а):Также сделал выход шим в зависимости от S параметра программы, только негде попробовать
Через 10 дней отправляю семью в отпуск, вот и попробую тогда :-)

Re: WLMotion

Добавлено: 11 май 2018, 17:25
Quark
Bender писал(а):...
Также сделал выход шим в зависимости от S параметра программы, только негде попробовать)))...
Поясни пожалуйста что это значит? Можно будет мощностью лазера управлять?
И ещё вопрос, можешь ли в своей программе сделать реверсивное исполнение G кода ?

Re: WLMotion

Добавлено: 12 май 2018, 05:07
wldev
Да. Это ШИМ для лазера....
реверса пока нет...

Re: WLMotion

Добавлено: 12 май 2018, 05:08
wldev
selenur писал(а):Через 10 дней отправляю семью в отпуск, вот и попробую тогда
Ещё раз все проверю... И добавлю описание...

Re: WLMotion

Добавлено: 29 май 2018, 14:33
wldev
Bender писал(а):Скоро выложу новую версию. но пока S кривые будут выключены....(
Включил и выложил новую. Теперь можно плавно менять тип кривой от трапеции к S;

коэффициент kSTCurve - единый для всех осей! (копируется с оси X).
т.е. у нас меняется скорость интерполяции(касательная) согласно заданной кривой.

если kSTCurve = 0 то это трапеция(100%)
если kSTCurve = 0,5 то это S(25%) трапеция(50%) S(25%)
если kSTCurve = 1 то это S(100%)

Теперь в параметрах движения задаются ускорения а не время разгона/торможения.

Re: WLMotion

Добавлено: 16 июн 2018, 19:02
wldev
Отлаживаю работу контроллера с использованием dma. Удалось значительно сократить сервоцикл и увеличить максимальную частоту до 72КГц.

Ещё... Интересный факт... Когда используются импульсы управления ABx4. То максимальная частота шагов по сравнению с обычным StepDir увеличивается в два раза!

То есть 144КГц.Но пока это не учитывается...(

Re: WLMotion

Добавлено: 16 июн 2018, 20:23
MX_Master
Сергей, ты чем там шаги генерируешь? В основном цикле вручную дёргаешь? Даже 72 КГц это очень даже мало. Там же 4 таймера есть, которые сами могут пины дёргать. А ты каждый сервоцикл (1000 мкс или 100мкс) смотри сколько чего надёргало и меняй частоты.

Re: WLMotion

Добавлено: 16 июн 2018, 21:08
wldev
MX_Master писал(а):Сергей, ты чем там шаги генерируешь? В основном цикле вручную дёргаешь? Даже 72 КГц это очень даже мало. Там же 4 таймера есть, которые сами могут пины дёргать. А ты каждый сервоцикл (1000 мкс или 100мкс) смотри сколько чего надёргало и меняй частоты.
По таймеру в ручную...

Пока один таймер на штурвале занят. Другой на выход S.

Надо подумать и попробовать дергать таймер ом...на другом контроллере...

Re: WLMotion

Добавлено: 16 июн 2018, 21:49
MX_Master
Для штурвала можно заюзать EXTI. Вывод S можно сделать или в основном цикле, или с помощью системного таймера. С помощью системного таймера, кстати, легко организуется и сервоцикл. Таким образом, все 4 таймера будут свободны и из них получится ровно 4 оси. Частота вывода шагов при этом может быть до 36 МГц.

Можно дергать на другом контроллере, или полностью перенести всё на другой. Например, на F407. Но я бы посоветовал рациональнее юзать уже имеющийся.

Re: WLMotion

Добавлено: 16 июн 2018, 22:48
selenur
MX_Master писал(а):Частота вывода шагов при этом может быть до 36 МГц.
А не много ли получается? Если учесть что при использовании нескольких осей, для каждой нужно разное количество импульсов выполнить, но при этом все импульсы должны равномерно быть распределены, и даже при использовании алгоритма Брезенхема, это занимает далеко не 2 такта... если исходить от использования 103 серии мк.

Re: WLMotion

Добавлено: 16 июн 2018, 23:31
MX_Master
Могу только две вещи сказать - чем больше выходная частота шагов, тем меньше точность попадания в траекторию. И чем короче сервопериод, тем точность выше.

Никто, кстати, и не будет такие частоты использовать (36 МГц), ибо нет таких драйверов. А вот до 4 МГц некоторые принять могут. А уж 200-400 КГц для шаговых драйверов в порядке вещей.

Re: WLMotion

Добавлено: 17 июн 2018, 04:34
wldev
MX_Master писал(а):Никто, кстати, и не будет такие частоты использовать (36 МГц), ибо нет таких драйверов. А вот до 4 МГц некоторые принять могут. А уж 200-400 КГц для шаговых драйверов в порядке вещей.
Для любительских систем и 30КГц вполне хватит....
Для средних 200КГц...
А современные системы уже отходят , а может и отошли, от шаг направление... Там все передается по сети(can,ethercat и прочее.) а именно каждому сервоприводу передается перемещение и скорость...
ИМХО

Re: WLMotion

Добавлено: 17 июн 2018, 04:41
wldev
MX_Master писал(а):Могу только две вещи сказать - чем больше выходная частота шагов, тем меньше точность попадания в траекторию. И чем короче сервопериод, тем точность выше
Чем выше максимальная частота шагов контроллера, тем плавнее будет меняться скорость по сравнению с контроллером с меньшей макс. частотой шагов.