Motor control drivers selection for cooling channel cleaning after laser treatment
- Authors: Drozdov I.G.1, Ishchenko E.A.1, Boldyrev A.A.1, Egorova E.D.1
-
Affiliations:
- Voronezh State Technical University
- Issue: Vol 21, No 4 (2025): Bulletin of Voronezh State Technical University
- Pages: 238-245
- Section: Mechanical engineering and science of machines
- URL: https://ogarev-online.ru/1729-6501/article/view/364288
- DOI: https://doi.org/10.36622/1729-6501.2025.21.4.035
- ID: 364288
Cite item
Full Text
Abstract
The maximum rotation speed of a stepper motor that can be obtained with step fractionation on the A4988, DRV8825, and LV8729 drivers is investigated. The obtained results are illustrated by the analysis of the control code generated on a Raspberry Pi5 using the Python language and the RpiMotorLib library. The study was conducted on an experimental setup simulating loading and movements along the software-controlled feed axis of a laser processing machine. During the study, a law for determining the load movement speed using a ball screw was identified. During the measurements, the speed indicators of the motor, current characteristics at different step fractionation, and temperature indicators were determined. Recommendations are formulated for a substantiated selection of driver models for stepper motors used in feed drives of machine tools, enabling precise positioning movements while ensuring the highest possible speeds at high speeds. The obtained results make it possible to determine the possibility of using driver models to implement the movement of linear longitudinal and transverse feeds when moving working bodies in a device for laser cleaning of combustion chamber cooling channels near the critical section of a liquid rocket engine (LRE) after laser processing of “artificial roughness” elements.
Full Text
Введение
Перспективным методом нанесения «искусственной шероховатости» в каналах охлаждения ЖРД является размерная лазерная обработка [1]. Однако, в процессе испарения металла образуется металлосодержащая копоть, оседающая возле обработанной поверхности (рис. 1), особенно при обработке вблизи стенок канала. Хорошие результаты по очистке изделий из бронзовых сплавов от подобных загрязнений показывают методы лазерной очистки [2].
Для модернизации лазерного оборудования с целью применения для обработки каналов ЖРД целесообразным является добавление модуля лазерной очистки с автоматическим программно-управляемым перемещением рабочих органов. С учетом требований к точности позиционирования, нагрузкам, скорости (и как следствие, производительности обработки) для обеспечения движения подач выбраны шарико-винтовые передачи с шаговыми двигателями.


Рис. 1. Образцы с «искусственной шероховатостью», нанесенной лазерным методом
Для управления шаговыми двигателями требуется ряд контроллеров, которые обеспечат передачу требуемых сигналов для запитывания обмоток шагового двигателя. Стандартная схема реализации управления шаговым двигателем включает в свой состав: контроллер (компьютер), драйвер шагового двигателя и сам двигатель [3]. Особенностями современных драйверов шаговых двигателей является то, что они позволяют обеспечивать высокую точность позиционирования двигателя путем дробления шага, а также достижения высокой скорости вращения вала шагового двигателя [3, 4]. Однако достижение максимальной скорости шагового двигателя приводит к снижению максимального крутящего момента двигателя, что снижает предельную нагрузку, которую может перемещать двигатель [5]. Поэтому особый интерес вызывает предельно возможная скорость двигателя, которая может быть реализована с использованием драйверов шаговых двигателей для перемещения малых нагрузок. В случае системы лазерной очистки элементов камеры ЖРД нагрузка определяется массой рабочих органов, а максимальная скорость является залогом высокой производительности процесса.
Существует ряд исследований, направленных на определение характеристик наиболее распространенных драйверов шаговых двигателей семейства A4988, которые хорошо себя зарекомендовали в конструкциях станков с числовым программным управлением (ЧПУ). Большинство таких исследований направлены на исследование драйверов, которые подключаются к одноплатному компьютеру на базе Arduino [6-8], однако вычислительные мощности такого решения ограничены, поэтому особый интерес вызывают исследования, которые направлены на реализацию управления шаговыми двигателями с более мощных контроллеров, например, AVR или Raspberry Pi [9-10]. В данной работе исследуется предельная скорость шагового двигателя, которая может быть достигнута драйверами A4988, DRV8825 и LV8729 при управлении шаговым двигателем Nema 17. На основе проведенных исследований можно сделать вывод о применимости драйверов для управления двигателями в приводах подач системы лазерной очистки.
Конструкция установки
Для проведения эксперимента была составлена схема, которая состояла из следующей схемы: главный контроллер Raspberry Pi 5, который передает сигнал на драйвер шагового двигателя, обеспечивающий управление Nema17 17HS4023, вращающего шарико-винтовую передачу (ШВП) SFU1204 550 мм 1204 (диаметр 12 мм, шаг 4 мм) с опорами BK/BF10 и муфтой D19L25. Запитывание драйвера выполнялось лабораторным источником питания Rigol DP2031 с ограничением по напряжению 12 В и током 2 А, чего достаточно для выбранной модели шагового двигателя. Вид экспериментальной установки приводится на рис. 2.

Рис. 2. Исследуемая установка из ШВП и компьютера-контроллера
В процессе исследования рассматривались драйверы шагового двигателя A4988, DRV8825, LV8729, которые используются во многих ЧПУ-станках и 3D-принтерах. Основные характеристики драйверов приводятся в табл. 1.
Таблица 1. Характеристики драйверов шаговых двигателей
Драйвер | A4988 | DRV8825 | LV8729 |
Производитель | Allegro A4988 | TI DRV8825 | ONS LV8729 |
Напряжение питания, В | 8…35 | 8.2…45 | 6…36 |
Шаг (мин) | 1/16 | 1/32 | 1/128 |
Максимальный ток, А | 1 | 1.5 | 1.5 |
Как видно, драйверы реализуют разное дробление шага, что определяет предельную точность позиционирования вала двигателя. Определение уровня дробления шага двигателя определяется путем установки уровней сигналов на входе драйвера MS1-MS3 – рис. 3. Дробные значения шагового двигателя, которые могут быть сформированы драйвером, приводятся в табл. 2.

а)

б)
Рис. 3. Исследуемые драйверы: а) виды драйверов LV8729, A4988, DRV8825; б) установка уровней входов MS1-MS3 (выделены)
Таблица 2. Дробление уровней поворота вала шагового двигателя Nema17
Тип дробления шага | Угол поворота двигателя на шаг, | Количество шагов на оборот двигателя |
Полный (Full) | 1.8 | 200 |
Половина (Half) | 0.9 | 400 |
1/4 | 0.45 | 800 |
1/8 | 0.225 | 1600 |
1/16 | 0.1125 | 3200 |
1/32 | 0.05625 | 6400 |
1/64 | 0.028125 | 12800 |
1/128 | 0.0140625 | 25600 |
Как видно, с ростом дробления наблюдается кратный рост количества шагов, необходимый для поворота двигателя на полный оборот, а следовательно, будет снижаться и максимальная скорость работы двигателя, чем формируется баланс на этапе проектирования точности и скорости. Так как для управления двигателем используется одноплатный компьютер Raspberry Pi 5, то следует уделить внимание программной части, которая реализует управление драйвером и шаговым двигателем.
Анализ кода-управления шагового двигателя
Для управления шаговым двигателем были использованы язык программирования Python и открытая библиотека RpiMotorLib. В процессе реализации управления с использованием Raspberry Pi необходимо определить, какие выходы GPIO будут отвечать за управление драйвером. Для работы двигателя необходимо использование трех выходов, которые определяют направление (DIR), дают команду на включение (EN) и передают сигналы шагов (STEP):
direction = 21 # Контакт, который определяет направление движения
step = 20 # Контакт, который подает импульсы и управляет драйвером
EN_pin = 16 # Контакт включения драйвера
Следующим шагом определяется тип драйвера и двигателя, а также тип деления шага:
mymotortest = RpiMotorLib.A4988Nema(direction, step, (19,19,19), "A4988")
где в скобках определяется по порядку – контакт направления (direction), шага (step), комбинация положения ключей деления шага MS1-3 (в нашем случае все контакты были выбраны низкого уровня «0,0,0»), определение типа драйвера "A4988" (или DRV8825, LV8729).
Следующая строка устанавливает контакт включения как выходной тип:
GPIO.setup(EN_pin, GPIO.OUT)
Далее в код передается команда на вращение двигателя на нужное количество шагов (в нашем случае для перемещения на 300 мм):
distance_mm = 300 #дистанция перемещения в 300 мм
steps_per_mm = 50 #количество шагов для перемещения на 1 мм
steps_to_move = int(distance_mm * steps_per_mm) #количество шагов
Далее определяем направление вращения:
dir_array = [True] #False = крутится в одну сторону, True = в другую
Следующим шагом устанавливается низкий уровень на выходе EN, что включает драйвер, так как этот выход инвертирован:
GPIO.output(EN_pin, GPIO.LOW)
Далее выполняется вращение двигателя:
for i in range(1):
mymotortest.motor_go(dir_array[i],
"Full", #тип деления Full, Half, 1/4, 1/8 и т.д.
steps_to_move, #количество шагов
0.0005, # задержка между шагами (с) – скорость вращения
False, # подробная телеметрия в консоль
0.0005) # задержка запуска двигателя
time.sleep(1)
С учетом данного кода в режиме полного шага было исследовано, как формируется скорость вращения шагового двигателя. С учетом формируемого сигнала скорость перемещения каретки определяется по формуле:
, (1)
где – дистанция перемещения ШВП;
– количество шагов, необходимых для перемещения на ;
– задержка между шагами (с) (в нашем случае по коду выше 0.0005 c);
– скорость перемещения каретки по ШВП.
Или же если получить значение в оборотах в минуту:
, (2)
где – количество оборотов в минуту; , – количество шагов двигателя на оборот без деления, – дробление шага двигателя драйвером.
Для оценки базовых характеристик скорости и зависимости от параметра был исследован драйвер A4988, при выставленных уровнях напряжения 1.025 В ( А). В табл. 3 приводятся характеристики драйвера A4988 при управлении параметром (режим шага полный). На рис. 4 приводятся графические зависимости основных параметров скорости от задержки шага.
Таблица 3. Скоростные режимы драйвера A4988 на полном шаге
, с | , мм/с | , мм/с | , А | , об/мин |
0.0010 | 10.00 | 09.35 | 0.57 | 140 |
0.0009 | 11.10 | 10.28 | 0.58 | 154 |
0.0008 | 12.50 | 11.47 | 0.63 | 172 |
0.0007 | 14.29 | 12.96 | 0.62 | 194 |
0.0006 | 16.67 | 14.77 | 0.60 | 221 |
0.0005 | 20.00 | 17.19 | 0.54 | 258 |
0.0004 | 25.00 | 20.79 | 0.47 | 312 |
0.0003 | 33.33 | 26.59 | 0.40 | 399 |

Рис. 4. Зависимость скорости движения нагрузки ШВП от задержки между шагами
Таким образом, видно, что полученная на практике скорость вращения шагового двигателя ниже теоретического (расчетного) значения, что может быть вызвано скоростью реакции секундомера при измерениях, а также сопротивлением линии при вращении и задержками сигналов. На основании полученных значений особый интерес вызывает наивысшая скорость, которая может быть получена при дроблении шагов драйверов.
Экспериментальные измерения предельных скоростей вращения вала при дроблении шага
В процессе исследования рассматривались три драйвера, а на винт ШВП была установлена нагрузка 113 грамм. Измерения выполнялись до момента, когда вращение двигателя прекращалось и не позволяло перемещать нагрузку по ШВП. В табл. 4-6 приводятся основные характеристики, полученные при измерении разных драйверов, а на рис. 5 приводятся основные графические зависимости параметров от величины дробления шага.

а) зависимость максимальной скорости от шага

б) зависимость температуры от шага

в) зависимость тока от шага

г) зависимость шума от шага
Рис. 5. Зависимость характеристик системы драйвер/двигатель от дробления шага
Таблица 4. Максимальные скоростные режимы драйвера A4988 при дроблении шагов
Положение ключей | Дробление шага | , мм/с | , мс | , А | , дБ | |||
MS1 | MS2 | MS3 | ||||||
0 | 0 | 0 | Full | 26.59 | 0.300 | 0.40 | 64 | 62 |
1 | 0 | 0 | Half | 22.22 | 0.130 | 0.44 | 71 | 59 |
0 | 1 | 0 | 1/4 | 20.86 | 0.055 | 0.45 | 76 | 59 |
1 | 1 | 0 | 1/8 | 19.85 | 0.51 | 75 | 61 | |
1 | 1 | 1 | 1/16 | 09.79 | 0.73 | 77 | 58 | |
Примечания: Фоновый шум 45 дБ =1.025 В – температура радиатора драйвера шагового двигателя Направление движения вперед True | ||||||||
Таблица 5. Максимальные скоростные режимы драйвера DRV8825 при дроблении шагов
Положение ключей | Дробление шага | , мм/с | , мс | , А | , дБ | |||
MS1 | MS2 | MS3 | ||||||
0 | 0 | 0 | Full | 22.19 | 0.400 | 0.458 | 85 | 59 |
1 | 0 | 0 | Half | 18.95 | 0.250 | 0.500 | 89 | 62 |
0 | 1 | 0 | 1/4 | 20.53 | 0.060 | 0.540 | 94 | 62 |
1 | 1 | 0 | 1/8 | 18.87 | 0.560 | 92 | 57 | |
0 | 0 | 1 | 1/16 | 09.72 | 0.700 | 94 | 55 | |
1 | 1 | 1 | 1/32 | 04.85 | 0.700 | 100 | 55 | |
Примечания: Фоновый шум 45 дБ =0.689 В – температура радиатора драйвера шагового двигателя Направление движения вперед True | ||||||||
Таблица 6. Максимальные скоростные режимы драйвера LV8729 при дроблении шагов
Положение ключей | Дробление шага | , мм/с | , мс | , А | , дБ | |||
MS1 | MS2 | MS3 | ||||||
0 | 0 | 0 | Full | 20.26 | 0.45 | 0.48 | 33 | 60 |
1 | 0 | 0 | Half | 18.82 | 0.20 | 0.31 | 42 | 64 |
0 | 1 | 0 | 1/4 | 18.38 | 0.07 | 0.40 | 41 | 61 |
1 | 1 | 0 | 1/8 | 18.69 | 0.40 | 40 | 60 | |
0 | 0 | 1 | 1/16 | 09.60 | 0.39 | 40 | 55 | |
1 | 0 | 1 | 1/32 | 04.83 | 0.37 | 40 | 51 | |
0 | 1 | 1 | 1/64 | 02.42 | 0.37 | 38 | 49 | |
1 | 1 | 1 | 1/128 | 01.20 | 0.36 | 39 | 46 | |
Примечания: Фоновый шум 45 дБ =0.925 В – температура радиатора драйвера шагового двигателя Направление движения вперед False | ||||||||
Полученные результаты показывают, что повышение дробления шага приводит к снижению скорости вращения центрального вала, однако при снижении шага удается повысить точность позиционирования, а также уменьшить шум работы системы. При использовании драйвера LV8729 можно заметить, что предельная скорость вращения достигается при уровне тока, который близок к уровню 0.4 А. Особое внимание стоит также уделить температурным режимам драйверов. Видно, что драйвер DRV8825 работает в очень высокотемпературном режиме, что также можно заметить и по уровню тока, который нарастает вместе с температурой, при этом предельная температура кристалла по информации производителя составляет 150, при этом для A4988 такая температура равна 85, как и для LV8729. Поэтому в случае выбора драйвера DRV8825 необходимо продумывать возможность активного охлаждения драйвера, чтобы обеспечить рассеяние тепла.
На основании всех полученных результатов можно отметить, что в случае необходимости работы только в режимах Full и Half оптимальным выбором является драйвер A4988, но в случае необходимости увеличения дробления шагов следует выбирать драйвер LV8729, который обеспечивает большее деление шага, меньшую температурную нагрузку, а также меньший ток потребления при близких скоростях.
Заключение
В статье был произведен анализ предельных скоростных режимов работы шагового двигателя при использовании разных драйверов с возможностью дробления шагов. Проведенные исследования показывают, что выбор драйверов шаговых двигателей следует выполнять на основе анализа нескольких показателей: нагрев драйвера, шумность двигателя, возможность обеспечения минимального дробления шага, при этом стоит помнить, что с уменьшением микрошага при дроблении снижается также и скорость вращения винта, но при этом значительно повышается точность. Полученные результаты показали, что лучшими характеристиками обладает драйвер LV8729, однако в случае использования полного или половинного микрошага можно использовать драйвер A4988, который позволяет обеспечить высокую скорость перемещения, а также малые температуры нагрева, особенно по сравнению с драйвером DRV8825. Таким образом, выбор драйвера управления двигателями подач устройства лазерной очистки элементов камеры сгорания ЖРД определяется исходя из требований к точности позиционирования с обеспечением наибольшей скорости быстрых ходов на основе предложенных рекомендаций.
_______________________
© Дроздов И.Г., Ищенко Е.А., Болдырев А.А., Егорова Е.Д., 2025
About the authors
Igor' G. Drozdov
Voronezh State Technical University
Email: dig@cchgeu.ru
Dr. Sc. (Technical), Professor, Dean of the Faculty of Mechanical Engineering and Aerospace Engineering
Russian Federation, 84 20-letiya Oktyabrya str., Voronezh 394006, RussiaEvgeny A. Ishchenko
Voronezh State Technical University
Email: kursk1998@yandex.ru
ORCID iD: 0000-0002-5270-0792
Postgraduate Student, Engineer
Russian Federation, 84 20-letiya Oktyabrya str., Voronezh 394006, RussiaAlexander A. Boldyrev
Voronezh State Technical University
Author for correspondence.
Email: alexboldyrev@yandex.ru
Cand. Sc. (Technical), Associate Professor of the Department of Rocket Engines
Russian Federation, 84 20-letiya Oktyabrya str., Voronezh 394006, RussiaElena D. Egorova
Voronezh State Technical University
Email: reus.kaf@cchgeu.ru
Laboratory Research Assistant
Russian Federation, 84 20-letiya Oktyabrya str., Voronezh 394006, RussiaReferences
- Ryazantsev A.Yu., Yukhnevich S.S., Porotikov V.A. “Method of obtaining artificial roughness on the surface of a part by a combined processing method” (“Sposob polucheniya iskusstvennoy sherokhovatosti na poverkhnosti detali kombinirovannym metodom obrabotki”), patent of RF no. 2618594, IPC B23H 5/00, B23H 7/38 no. 2016110651, appl. 22.03.2016, publ. 04.05.2017, applicant FSUE “GKNPC named after M.V. Khrunichev”, EDN ZTWKDR.
- Volkov M.V., Zhurba V.M., Mitkin V.M., Orlov N.L. “Method of Laser Cleaning of Metals” (“Sposob lazernoy ochistki metal-lov”), patent of RF no. 2619692 C1, IPC B08B 7/00, no. 2016120022, appl. 24.05.2016, publ. 17.05.2017, applicant Scientific and Production Enterprise of Fiber-Optic and Laser Equipment LLC, EDN HJILPI.
- Barabas Z.A., Morar, A. “High Performance Microstepping Driver System based on Five-phase Stepper Motor (sine wave drive), Procedia Technology, 2014, no. 12, pp. 90–97, available at: https://doi.org/10.1016/j.protcy.2013.12.460
- Mirzaev R.A. Khalkovsky F.A., Smirnov N.A. “Control of a Bipolar Stepper Motor Using a Controller”, Actual Problems of Aviation and Cosmonautics (Aktual'nyye problemy aviatsii i kosmonavtiki), 2010, vol. 1, no. 6, pp. 365-366, EDN TBIAZL
- Nasr M., Singh A., Moore K.J. “Smart Automatic Modal Hammer: Predictor–Corrector Approach for Accurate Excitation of Dynamical Systems”, Journal of Vibration Engineering and Technologies, 2024, no. 12(S1), pp. 1045–1063, available at: https://doi.org/10.1007/s42417-024-01461-6
- Canning A.J., Li J.Q., Chen J., Hoang K., Thorsen T., Vaziri A., Vo-Dinh, T. “Tunable and scalable production of nanostar particle platforms for diverse applications using an AI-integrated automated synthesis system”, Journal of Materials Science, 2025, no. 60(8), pp. 3768–3785, available at: https://doi.org/10.1007/s10853-025-10692-1
- Melnichenko V.O. “Stepper Motor Control Using a Stepper Motor Driver and an Arduino Board”, Theoretical and Applied Aspects of Natural Science Education in the Era of Digitalization (Teoreticheskiye i prikladnyye aspekty yestestvenno-nauchnogo obra-zovaniya v epokhu tsifrovizatsii), proc. of the III International Scientific and Practical Conference, Bryansk, April 11–12, 2024, Bryansk, Bryansk State University named after Acad. I.G. Petrovsky, 2024, pp. 83-88, EDN ZQPKZR
- Sevtsov I.A., Tyurin S.A., Trusov V.A. “Comparative Analysis of Stepper Motor Drivers”, Proceedings of the International Symposium "Reliability and Quality", 2020, vol. 2, pp. 102-103, EDN LORXQP
- Wardhana A.W., Nugroho D.T. (). “Stepper motor control with DRV 8825 driver based on square wave signal from AVR mi-crocontroller timer”, AIP Conference Proceedings, 2019, vol. 2094, p. 020015
- Zhou R., Jiang J., Li P., Lu S., Li B., Du C. “Optimized compound control strategy for high-speed 3D printing: enhancing surface quality and printing precision”, Journal of the Brazilian Society of Mechanical Sciences and Engineering, 2025, 47(8), available at: https://doi.org/10.1007/s40430-025-05684-w
Supplementary files

