Оглавление:
- Шаг 1. Библиотека StepDriver
- Шаг 2: глобальные переменные
- Шаг 3: Функции - Установка выводов драйвера
- Шаг 4: Функции - основные функции драйвера
- Шаг 5: Функции - Настройка шага двигателя
- Шаг 6: Функции - Установка пошагового режима двигателя
- Шаг 7: Функции - установка концевых выключателей
- Шаг 8: Функции - считывание концевых выключателей
- Шаг 9: Функции - Настройка движения
- Шаг 10: Функции - Функция движения
- Шаг 11: Функции - Функция движения - Переменные
- Шаг 12: Функции - Функция движения - Ускорение
- Шаг 13: Функции - Функция движения - Постоянная скорость
- Шаг 14: Функции - Функция движения - Замедление
- Шаг 15: Функции - Функция движения - Постоянная скорость
- Шаг 16: Функции - Функция перемещения - Перемещение поворотов
- Шаг 17: График движения - скорость положения
- Шаг 18: Анимированный график - позиция против. Позиция
- Шаг 19: Анимированная диаграмма - скорость против. Момент
![Arduino: Precision Lib для шагового двигателя: 19 шагов Arduino: Precision Lib для шагового двигателя: 19 шагов](https://i.howwhatproduce.com/images/002/image-3950-62-j.webp)
Видео: Arduino: Precision Lib для шагового двигателя: 19 шагов
![Видео: Arduino: Precision Lib для шагового двигателя: 19 шагов Видео: Arduino: Precision Lib для шагового двигателя: 19 шагов](https://i.ytimg.com/vi/etx24iFMilg/hqdefault.jpg)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
![Image Image](https://i.howwhatproduce.com/images/002/image-3950-64-j.webp)
![](https://i.ytimg.com/vi/BiJFfCu1CFI/hqdefault.jpg)
![Глобальные переменные Глобальные переменные](https://i.howwhatproduce.com/images/002/image-3950-65-j.webp)
Сегодня я покажу вам библиотеку для полного привода шагового двигателя с концевыми выключателями и движения двигателя с ускорением и микрошагом. Этот Lib, который работает как на Arduino Uno, так и на Arduino Mega, позволяет перемещать двигатели не только по количеству шагов, но и по миллиметрам. И это тоже довольно точно.
Важной особенностью этой библиотеки является то, что она позволяет вам создать свой собственный станок с ЧПУ, который не обязательно будет просто X, Y, но также, например, переключателем секций, потому что это не готовый GRBL, а скорее программа, которая позволяет сделать идеальную машину для вас.
Однако следующее утверждение - важная деталь! Это видео только для тех, кто уже привык к программированию. Если вы не знакомы с программированием Arduino, вам следует сначала посмотреть другие вводные видео на моем канале. Это потому, что я обсуждаю более сложную тему в этом конкретном видео и более подробно объясняю Lib, используемую в видео: Шаговый двигатель с ускорением и концом хода.
Шаг 1. Библиотека StepDriver
Эта библиотека охватывает три наиболее распространенных типа драйверов на рынке: A4988, DRV8825 и TB6600. Он конфигурирует контакты драйверов, позволяя им выполнять сброс и перевод в спящий режим, а также активировать и деактивировать выходы двигателя, воздействующие на контакт включения. Он также устанавливает входы микрошаговых выводов драйвера и ограничительные переключатели, а также уровень их активации (высокий или низкий). Он также имеет код движения двигателя с постоянным ускорением в мм / с², максимальной скоростью в мм / с и минимальной скоростью в мм / с.
Для тех, кто смотрел части 1 и 2 видео «Шаговый двигатель с ускорением и концом хода», скачайте эту новую библиотеку, доступную сегодня, потому что я внес некоторые изменения в этот первый файл, чтобы облегчить его использование.
Шаг 2: глобальные переменные
Я точно показываю, для чего предназначена каждая из глобальных переменных.
Шаг 3: Функции - Установка выводов драйвера
![Функции - Установка выводов драйвера Функции - Установка выводов драйвера](https://i.howwhatproduce.com/images/002/image-3950-66-j.webp)
Здесь я описываю некоторые методы.
Я установил параметры вывода и выводы Arduino в качестве вывода.
Шаг 4: Функции - основные функции драйвера
![Функции - основные функции драйвера Функции - основные функции драйвера](https://i.howwhatproduce.com/images/002/image-3950-67-j.webp)
В этой части мы работаем с настройкой драйвера и его основных функций.
Шаг 5: Функции - Настройка шага двигателя
![Функции - Настройка шага двигателя Функции - Настройка шага двигателя](https://i.howwhatproduce.com/images/002/image-3950-68-j.webp)
![Функции - Настройка шага двигателя Функции - Настройка шага двигателя](https://i.howwhatproduce.com/images/002/image-3950-69-j.webp)
На этом этапе кода мы настраиваем количество шагов на миллиметр, которые должен выполнить двигатель.
Шаг 6: Функции - Установка пошагового режима двигателя
![Функции - Настройка пошагового режима двигателя Функции - Настройка пошагового режима двигателя](https://i.howwhatproduce.com/images/002/image-3950-70-j.webp)
![Функции - установка пошагового режима двигателя Функции - установка пошагового режима двигателя](https://i.howwhatproduce.com/images/002/image-3950-71-j.webp)
![Функции - установка пошагового режима двигателя Функции - установка пошагового режима двигателя](https://i.howwhatproduce.com/images/002/image-3950-72-j.webp)
В этой таблице показаны настройки для шагового режима двигателя. Вот несколько примеров.
Шаг 7: Функции - установка концевых выключателей
![Функции - установка концевых выключателей Функции - установка концевых выключателей](https://i.howwhatproduce.com/images/002/image-3950-73-j.webp)
Здесь я должен прочитать целые и логические значения. При установке максимального и минимального предельных значений концевой шпильки необходимо указать, находится ли активный ключ вверх или вниз.
Шаг 8: Функции - считывание концевых выключателей
![Функции - считывание концевых выключателей Функции - считывание концевых выключателей](https://i.howwhatproduce.com/images/002/image-3950-74-j.webp)
![Функции - считывание концевых выключателей Функции - считывание концевых выключателей](https://i.howwhatproduce.com/images/002/image-3950-75-j.webp)
![Функции - считывание концевых выключателей Функции - считывание концевых выключателей](https://i.howwhatproduce.com/images/002/image-3950-76-j.webp)
Эта часть отличается от той, что в Lib, которую я сделал доступной на прошлой неделе. Почему я его поменял? Что ж, я создал eRead, чтобы заменить некоторые другие. Здесь eRead прочитает LVL, digitalRead (контакт) и вернет TRUE. Все это нужно выполнять на высоком уровне. Дальнейшая работа с активным ключом будет на низком уровне. Я использую его здесь, чтобы показать вам таблицу «Истина».
На изображении кода я разместил диаграмму, которая поможет понять, что в этой части исходного кода я двигаюсь по возрастанию и, конечно, еще не добрался до конца ключа.
Теперь, на этом изображении os code bool DRV8825, я показываю, что движок все еще движется в растущем направлении. Однако сработал максимальный концевой выключатель. Таким образом, механизм должен остановить движение.
Наконец, я показываю то же движение, но в противоположном направлении.
Здесь у вас уже активирован переключатель конца курса.
Шаг 9: Функции - Настройка движения
![Функции - Настройка движения Функции - Настройка движения](https://i.howwhatproduce.com/images/002/image-3950-77-j.webp)
Основная полезность метода motionConfig - преобразование миллиметров в секунду (измерение, используемое в станках с ЧПУ) в шаги, чтобы соответствовать контроллеру шагового двигателя. Поэтому именно в этой части я создаю экземпляры переменных, чтобы понимать шаги, а не миллиметры.
Шаг 10: Функции - Функция движения
![Функции - функция движения Функции - функция движения](https://i.howwhatproduce.com/images/002/image-3950-78-j.webp)
На этом шаге мы обрабатываем команду, которая перемещает шаг в желаемом направлении за период в микросекундах. Мы также устанавливаем штифт направления водителя, время задержки и направление концевых выключателей.
Шаг 11: Функции - Функция движения - Переменные
![Функции - Функция движения - Переменные Функции - Функция движения - Переменные](https://i.howwhatproduce.com/images/002/image-3950-79-j.webp)
В этой части мы настраиваем все переменные, которые включают, среди прочего, периоды максимальной и минимальной скорости, расстояние траектории и шаги, необходимые для прерывания траектории.
Шаг 12: Функции - Функция движения - Ускорение
![Функции - Функция движения - Ускорение Функции - Функция движения - Ускорение](https://i.howwhatproduce.com/images/002/image-3950-80-j.webp)
![Функции - Функция движения - Ускорение Функции - Функция движения - Ускорение](https://i.howwhatproduce.com/images/002/image-3950-81-j.webp)
Здесь я представляю некоторые подробности о том, как мы пришли к данным об ускорении, которые были рассчитаны с помощью уравнения Торричелли, поскольку при этом учитываются промежутки для работы ускорения, а не время. Но здесь важно понимать, что все это уравнение - это всего лишь одна строка кода.
Мы определили трапецию на изображении выше, потому что начальные обороты не подходят для большинства шаговых двигателей. То же самое и с замедлением. Из-за этого мы визуализируем трапецию в период между ускорением и замедлением.
Шаг 13: Функции - Функция движения - Постоянная скорость
![Функции - Функция движения - Постоянная скорость Функции - Функция движения - Постоянная скорость](https://i.howwhatproduce.com/images/002/image-3950-82-j.webp)
![Функции - Функция движения - Постоянная скорость Функции - Функция движения - Постоянная скорость](https://i.howwhatproduce.com/images/002/image-3950-83-j.webp)
Здесь мы сохраняем количество шагов, используемых при ускорении, мы продолжаем работать с постоянной скоростью и сохраняем максимальную скорость, что можно увидеть на изображении ниже.
Шаг 14: Функции - Функция движения - Замедление
![Функции - функция движения - замедление Функции - функция движения - замедление](https://i.howwhatproduce.com/images/002/image-3950-84-j.webp)
![Функции - функция движения - замедление Функции - функция движения - замедление](https://i.howwhatproduce.com/images/002/image-3950-85-j.webp)
Здесь у нас есть другое уравнение, на этот раз с отрицательным значением ускорения. Он также отображается в строке кода, которая на изображении ниже представляет прямоугольник с надписью Deceleration.
Шаг 15: Функции - Функция движения - Постоянная скорость
![Функции - Функция движения - Постоянная скорость Функции - Функция движения - Постоянная скорость](https://i.howwhatproduce.com/images/002/image-3950-86-j.webp)
![Функции - Функция движения - Постоянная скорость Функции - Функция движения - Постоянная скорость](https://i.howwhatproduce.com/images/002/image-3950-87-j.webp)
Мы возвращаемся к постоянной скорости, чтобы проработать вторую половину траектории, как показано ниже.
Шаг 16: Функции - Функция перемещения - Перемещение поворотов
![Функции - Функция перемещения - Ход поворотов Функции - Функция перемещения - Ход поворотов](https://i.howwhatproduce.com/images/002/image-3950-88-j.webp)
В этой части мы перемещаем двигатель на определенное количество оборотов в нужном направлении, переводя количество оборотов в миллиметры. Наконец, мы перемещаем двигатель в требуемом направлении.
Шаг 17: График движения - скорость положения
![График движения - скорость положения График движения - скорость положения](https://i.howwhatproduce.com/images/002/image-3950-89-j.webp)
На этом графике у меня есть данные, которые были извлечены из уравнения, которое мы использовали в части ускорения. Я взял значения и поиграл с последовательным интерфейсом Arduino, а затем перешел от этого к Excel, что привело к этой таблице. В этой таблице показан прогресс шага.
Шаг 18: Анимированный график - позиция против. Позиция
![График движения - позиция против. Позиция График движения - позиция против. Позиция](https://i.howwhatproduce.com/images/002/image-3950-90-j.webp)
Здесь мы берем положение в шагах и скорость и преобразуем их в период в микросекундах. Отметим на этом этапе, что период обратно пропорционален скорости.
Шаг 19: Анимированная диаграмма - скорость против. Момент
![График движения - скорость против. Момент График движения - скорость против. Момент](https://i.howwhatproduce.com/images/002/image-3950-91-j.webp)
Наконец, у нас есть скорость как функция момента, и благодаря этому у нас есть прямая линия, поскольку это скорость как функция времени.
Рекомендуемые:
Raspberry Pi, Python и драйвер шагового двигателя TB6600: 9 шагов
![Raspberry Pi, Python и драйвер шагового двигателя TB6600: 9 шагов Raspberry Pi, Python и драйвер шагового двигателя TB6600: 9 шагов](https://i.howwhatproduce.com/images/001/image-578-26-j.webp)
Raspberry Pi, Python и драйвер шагового двигателя TB6600: в этом руководстве описаны шаги, которые я предпринял для подключения Raspberry Pi 3b к контроллеру шагового двигателя TB6600, источнику питания 24 В постоянного тока и 6-проводному шаговому двигателю. Я, наверное, как и многие из вас, и у меня есть «сумка для переноски». остаточного номинала
Как сделать СИГНАЛЬНЫЙ драйвер для шагового двигателя: 5 шагов
![Как сделать СИГНАЛЬНЫЙ драйвер для шагового двигателя: 5 шагов Как сделать СИГНАЛЬНЫЙ драйвер для шагового двигателя: 5 шагов](https://i.howwhatproduce.com/images/003/image-6535-j.webp)
Как сделать драйвер с высоким током для шагового двигателя: здесь мы увидим, как сделать драйвер шагового двигателя с помощью контроллера Toshiba TB6560AHQ. Это полнофункциональный контроллер, которому нужны только 2 переменные в качестве входных данных, и он выполняет всю работу. Так как мне понадобились два из них, я сделал их с помощью
Выбор шагового двигателя и драйвера для проекта автоматического затенения Arduino: 12 шагов (с изображениями)
![Выбор шагового двигателя и драйвера для проекта автоматического затенения Arduino: 12 шагов (с изображениями) Выбор шагового двигателя и драйвера для проекта автоматического затенения Arduino: 12 шагов (с изображениями)](https://i.howwhatproduce.com/images/001/image-914-40-j.webp)
Выбор шагового двигателя и драйвера для проекта автоматизированного затененного экрана Arduino: в этом руководстве я проделаю шаги, которые я предпринял, чтобы выбрать шаговый двигатель и драйвер для прототипа проекта автоматизированного затененного экрана. Шторы - это популярные и недорогие модели Coolaroo с ручным приводом, и я хотел заменить их
Приспособление для испытания шагового двигателя: 3 шага
![Приспособление для испытания шагового двигателя: 3 шага Приспособление для испытания шагового двигателя: 3 шага](https://i.howwhatproduce.com/images/002/image-3021-29-j.webp)
Приспособление для тестирования шаговых двигателей: у меня практически не было опыта вождения шаговых двигателей, поэтому перед проектированием, печатью, сборкой и программированием аналоговых часов с автокоррекцией «Antique» (https://www.instructables.com/id/Antique-Auto-Correcting) -Аналоговые часы /) с помощью шагового двигателя
Интеллектуальная система рулевого управления для машин-роботов с использованием шагового двигателя от старого дисковода для гибких дисков / компакт-дисков: 8 шагов (с изображениями)
![Интеллектуальная система рулевого управления для машин-роботов с использованием шагового двигателя от старого дисковода для гибких дисков / компакт-дисков: 8 шагов (с изображениями) Интеллектуальная система рулевого управления для машин-роботов с использованием шагового двигателя от старого дисковода для гибких дисков / компакт-дисков: 8 шагов (с изображениями)](https://i.howwhatproduce.com/images/002/image-5961-16-j.webp)
Интеллектуальная система рулевого управления для автомобилей-роботов с использованием шагового двигателя старого дисковода для гибких дисков / компакт-дисков: интеллектуальная система рулевого управления для автомобилей-роботов Вы беспокоитесь о создании хорошей системы рулевого управления для своего автомобиля-робота? Вот отличное решение, просто используя ваши старые дисководы для гибких дисков / CD / DVD. следите за этим и получите представление о нем. Посетите georgeraveen.blogspot.com