Главная страница
Навигация по странице:

  • 2.1 Краткие сведения

  • 2.2 Порядок выполнения работы

  • 2.3 Содержание отчета

  • 4. Как осуществить реверс ШД

  • Лаб.раб. 2. Лабораторная работа 2. Управление шаговым двигателем в Ардуино


    Скачать 272.83 Kb.
    НазваниеЛабораторная работа 2. Управление шаговым двигателем в Ардуино
    Анкорfhfrt
    Дата13.10.2022
    Размер272.83 Kb.
    Формат файлаpdf
    Имя файлаЛаб.раб. 2.pdf
    ТипЛабораторная работа
    #732674

    Лабораторная работа №2. Управление шаговым двигателем в
    Ардуино.
    Цель работы: приобретение навыков работы по управлению шаговым двигателем, а также разработка соответствующего кода для микроконтроллера платы Arduino Uno.
    2.1 Краткие сведения
    Шаговый двигатель – это мотор, перемещающий свой вал в зависимости от заданных в программе микроконтроллера шагов и направления. Подобные устройства чаще всего используются в робототехнике, принтерах, манипуляторах, различных станках и прочих электронных приборах. Большим преимуществом шаговых двигателей над двигателями постоянного вращения является обеспечение точного углового позиционирования ротора. Также в шаговых двигателях имеется возможность быстрого старта, остановки, реверса.
    Драйвер – это устройство, которое связывает контроллер с шаговым двигателем.
    В центральном вале имеется ряд магнитов и несколько катушек. При подаче питания от микроконтроллера через драйвер к двигателю, создается магнитное поле, которое воздействует на магниты и заставляет вал вращаться.
    2.2 Порядок выполнения работы
    2.2.1 Собрать схему управления шаговым двигателем в Proteus (рисунок
    2.1).
    Рисунок 2.1 – Схема подключения шагового двигателя в Proteus

    2.2.2 Листинг кода программы
    Для управления шаговыми двигателями в Arduino IDE есть стандартная библиотека, которая осуществляет только полношаговый режим коммутации.
    #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("clockwise"); // по часовой стрелке myStepper.step(stepsPerRevolution); delay(500);
    Serial.println("counterclockwise"); // против часовой стрелки myStepper.step(-stepsPerRevolution); delay(500);
    }
    Найденный hex-файл выбрать в поле Program File, расположенном в окне Properties платы Arduino Uno R3.
    2.3 Содержание отчета
    2.3.1 Цель работы.
    2.3.2 Скриншот схемы управления в Протеус.
    2.3.3 Листинг кода.
    2.3.4 Реальная схема на Ардуино и ШД (фото).
    2.3.5 Выводы.
    2.4 Контрольные вопросы

    1. Какую функцию выполняет драйвер ШД L293D?
    2.
    Почему последовательность управления

    ШД называется полушаговой?
    3. Почему режим работы ШД называется полношаговым?

    4. Как осуществить реверс ШД?
    5. Какие преимущества есть у ШД?

    Задания:
    Номер варианта
    Количество шагов на 1 оборот
    Скорость вращения ротора
    (об/мин)
    Вперёд (по часовой стрелке)
    Назад (против часовой стрелки)
    1 500 300 20 2
    200 400 15 3
    300 400 10 4
    250 300 20 5
    480 240 15 6
    320 180 12 7
    420 200 10 8
    260 300 18 9
    350 250 15 10 400 300 20


    написать администратору сайта