разгон\торможение шагового\серво двигателя (step/dir) нужен код ардуино

3DGrodno
Offline
Зарегистрирован: 16.04.2017

Имеется серводвигатель, управляемый драйвером ADtech, есть ардуино нано, мега 328, необходимо при помощи генерации точного количесва импульсов Step Dir заставить его вращаться сперва в одну сторону, потом обратно, с разгоном\торможением+ контроль конечных точек по концевым датчикам. Проблема заключается в необходимой скорости(2500 об\мин). для этого необходимо сгенерировать частоту около 100-200 khz.

Yarik.Yar
Offline
Зарегистрирован: 07.09.2014

yaryarikyar@ya.ru пишите

Onkel
Offline
Зарегистрирован: 22.02.2016

Пишите ydom@mail.ru  сделаем без проблем. 2500 об/мин- это ~40 об/с - для шагового многовато, но если драйвер держит, то нужное к-во импульсов Step cгенерить  не проблема, достаточно уметь работать непосредственно с регистрами микроконтроллера. С родной ардуиновской digitalWrite() конечно труба будет - ей нужно 6 микросекунд туда, 6 микросекунд обратно. Могу написать на честном С, тогда надежность будет на порядок выше. Пишите ydom@mail.ru  Большой опыт работ такого рода, напишу код, проверю на макете, так что вы получите на 100% проверенный рабочий код.

vvadim
Offline
Зарегистрирован: 23.05.2012

какие то скорости большие для шаговика))))

да и для серводвигателя не хило..

3DGrodno
Offline
Зарегистрирован: 16.04.2017

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

roman2712@mail.ru
Offline
Зарегистрирован: 16.01.2014

Напишите на roman2712@mail.ru. Недавно реализовывал что то подобное для управление шаговиком. Но у меня верхняя частота получилась ограниченной (что то в районе 20 кГц) в виду необходимости в расчете циклов разгонов \ торможений. 

Если этого недостаточно, то надо переходить на STM32 или что то подобное.

А у вас сколько импульсов на оборот драйвер обеспечивает ?