Ім'я файлу: ЛБ№5_ЕП_Гайворонський Ю.О._229-ст (1).docx Розширення: docx Розмір: 368кб. Дата: 02.05.2022 скачати Національний аерокосмічний університет ім. М. Є. Жуковського «Харківський авіаційний інститут» Факультет авіаційних двигунів Кафедра теоретичної механіки, машинознавства та роботомеханічних систем Розробка системи керування шаговим двигуном на Arduino з дисципліни «Електромеханічні приводи роботів і верстатів з ЧПК» Виконав: студент 3 курсу групи №229-ст напряму підготовки (спеціальності) 131«Прикладнамеханіка» (шифр і назва напряму підготовки (спеціальності) Гайворонський Ю.О. (прізвище й ініціали студента) Прийняв: ст.викладач Бєлявський О.В. (посада, науковий ступінь, прізвище й ініціали) Національна шкала: Кількість балів: Оцінка: ECTS Харків – 2021 Шаговый двигатель – принцип работыРис. 1 Схема шагового двигателя Шаговый двигатель – это мотор, перемещающий свой вал в зависимости от заданных в программе микроконтроллера шагов и направления. Представлен на Рис. 1. Подобные устройства чаще всего используются в робототехнике, принтерах, манипуляторах, различных станках и прочих электронных приборах. Большим преимуществом шаговых двигателей над двигателями постоянного вращения является обеспечение точного углового позиционирования ротора. Также в шаговых двигателях имеется возможность быстрого старта, остановки, реверса. Шаговый двигатель обеспечивает вращения ротора на заданный угол при соответствующем управляющем сигнале. Благодаря этому можно контролировать положение узлов механизмов и выходить в заданную позицию. Работа двигателя осуществляется следующим образом – в центральном вале имеется ряд магнитов и несколько катушек. При подаче питания создается магнитное поле, которое воздействует на магниты и заставляет вал вращаться. Такие параметры как угол поворота (шаги), направление движения задаются в программе для микроконтроллера. Рис. 2 Схемы работы шаговых двигателей Основные виды шаговых моторов: Двигатели с переменными магнитами (применяются довольно редко); Двигатели с постоянными магнитами; Гибридные двигатели (более сложные в изготовлении, стоят дороже, но являются самым распространенным видом шаговых двигателей). Драйвер для управления шаговым двигателемДрайвер – это устройство, которое связывает контроллер и шаговый двигатель. Для управления биполярным шаговым двигателем чаще всего используется драйвер ULN2003. Работа двигателя в биполярном режиме имеет несколько преимуществ: Увеличение крутящего момента на 40% по сравнению с униполярными двигателями; Возможность применения двигателей с любой конфигурацией фазной обмотки. Но существенным минусов в биполярном режиме является сложность самого драйвера. Драйвер униполярного привода требует всего 4 транзисторных ключа, для обеспечения работы драйвера биполярного привода требуется более сложная схема. С каждой обмоткой отдельно нужно проводить различные действия – подключение к источнику питания, отключение. Для такой коммутации используется схема-мост с четырьмя ключами. Рис. 3 Драйвер шагового двигателя ULN2003 Схема подключения на базе ULN2003 изображена на рисунке 4. Управляющие выходы с драйвера IN1-IN4 подключаются к любым цифровым контактам на Ардуино. В данном случае используются цифровые контакты 8-11. Питание подключается к 5В. Также для двигателя желательно использовать отдельный источник питания, чтобы не перегрелась плата Ардуино. Рис. 4 Подключение шагового двигателя к Ардуино Рис. 5 Принципиальная схема подключения шагового двигателя 28BYJ-48 – униполярный шаговый двигатель. Используется в небольших проектах роботов, сервоприводных устройствах, радиоуправляемых приборах. Характеристики двигателя: Номинальное питание – 5В; 4-х фазный двигатель, 5 проводов; Число шагов: 64; Угол шага 5,625°; Скорость вращения: 15 оборотов в секунду Крутящий момент 450 г/сантиметр; Сопротивление постоянного тока 50Ω ± 7% (25 ℃). Описание библиотеки для работы с шаговым двигателемВ среде разработки Ардуино IDE существует стандартная библиотека Strepper.h для написания программ шаговых двигателей. Основные функции в этой библиотеке: Stepper(количество шагов, номера контактов). Эта функция создает объект Stepper, которая соответствует подключенному к плате Ардуино двигателю. Аргумент – контакты на плате, к которым подключается двигатель, и количество шагов, которые совершаются для полного оборота вокруг своей оси. Информацию о количестве шагов можно посмотреть в документации к мотору. Вместо количества шагов может быть указан угол, который составляет один шаг. Для определения числа шагов, нужно разделить 360 градусов на это число. Set Speed(long rpms) – функция, в которой указывается скорость вращения. Аргументом является положительное целое число, в котором указано количество оборотов в минуту. Задается после функции Step(). Step(Steps) –поворот на указанное количество шагов. Аргументом может быть либо положительное число – поворот двигателя по часовой стрелке, либо отрицательное – против часовой стрелки. Скетч для управленияВ наборе библиотеки Stepper.h существует программа stepper_oneRevolution, в которой задаются все параметры для шагового двигателя – количество шагов, скорость, поворот. #include const int stepsPerRevolution = 200; Stepper myStepper(stepsPerRevolution, 8,9,10,11); //подключение к пинам 8…11 на Ардуино void setup() { myStepper.setSpeed(60); //установка скорости вращения ротора Serial.begin(9600); } void loop() { //Функция ожидает, пока поступит команда, преобразовывает текст и подает сигнал на двигатель для его вращения на указанное число шагов. Serial.println("Move right"); //по часовой стрелке Выводы:Разобрались в работе и строении шагового двигателя. Разработали управляющую программу, написали скетч. Ознакомились с драйверами и схемами управления. Разработали систему управления шаговым двигателем на Arduino. |