Управление шаговым двигателем(ШД) по протоколу STEP/DIR

Автор oksana, Пятница, марта 29, 2019, 21:46:29

« предыдущая тема - следующая тема »
Вниз

oksana

Пятница, марта 29, 2019, 21:46:29 Последнее редактирование: Среда, апреля 03, 2019, 07:28:26 от oksana
Исполнитель: Лызо Оксана,  группа 741 об
Руководитель: Русинов Владислав Леонидович

Особенности и функции драйверов шаговых двигателей
Драйвер (контроллер) шагового двигателя представляет собой устройство-набор микросхем, которое обеспечивает его правильную работу и заставляет двигатель четко выполнять сигналы управления. В сфере управления ШД существуют определенные стандарты - это сигналы STEP, DIR и ENABLE. Сигнал STEP отвечает за шаг двигателя, DIR - за направление вращения, а ENABLE является сигналом включения самого драйвера.
Контроллеры шаговых двигателей - это силовые электронные устройства, управляющие высоковольтными/сильноточными обмотками шагового двигателя на основе цифровых сигналов управления. С их помощью двигатель выполняет свою непосредственную функцию - делает шаги (то есть, вращается).
Как известно, шаговые двигатели имеют более сложную структуру и систему управления, по сравнению с теми же обычными коллекторными двигателями. Чтобы эффективно управлять ими, нужно переключать уровень напряжения в обмотках в определенной последовательности и одновременно поддерживать контроль тока. Поэтому, чтобы упростить обслуживание данных механизмов, были внедрены вспомогательные устройства управления - драйверы шаговых двигателей. Они позволяют контролировать вращения ротора двигателя, в зависимости от сигналов управления и в после этого делить физический шаг шагового двигателя на мелкие дискреты с помощью электроники.
Для того, чтобы обеспечить полноценную работу устройства, к контроллерам шагового двигателя подключаются сигналы управления, сам ШД через обмотки, а также источник питания. Стандартные сигналы управления для такого оборудования - это сигналы STEP\DIR (или же CW\CCW), а также сигнал ENABLE.
Протокол STEP\DIR
Сигнал STEP - основной сигнал шага, тактирующий. Один его импульс поворачивает ротор двигателя на один шаг. Важно, что здесь имеется в виду не физический шаг шагового двигателя, а специальный шаг, параметры которого определяются драйвером (например, 1:1, 1:8, 1:16). Как правило, драйверы шаговых двигателей отрабатывают этот шаг по заднему или же переднему фронту импульса.
Сигнал DIR - сигнал направления, потенциальный сигнал. В режиме логической единице шаговый двигатель вращается по часовой стрелке, а в режиме нуля - против нее. Также можно выставить значения этих параметров в обратной последовательности. Есть возможность инвертировать сигнал DIR из программы управления или же изменить последовательность подключения фаз двигателя с помощью драйвера (в разъеме его подключения).
Протокол CW/CWW
Сигнал CW - сигнал шага, тактирующий сигнал. Его импульс также поворачивает ротор. Один сигнал - один шаг ротора, коэффициенты которого устанавливаются драйвером (1:1, 1:16, 1:8 и т.д.). Шаг отрабатывается драйвером по переднему или заднему фронту импульса.
Сигнал ENABLE - сигнал включения/выключения драйвера, потенциальный сигнал. При логической единице (5В на вход) драйвер выключается, и обмотки шагового двигателя обесточиваются. При нуле (0В на вход) драйвер включен и обмотки запитаны.
Дополнительные функции контроллеров шаговых двигателей
• Контроль перегрузок по току
• Контроль напряжения в питании, в том числе и защита от эффекта обратной ЭДС. Если вращение ротора замедляется, шаговый двигатель начинает вырабатывать дополнительное напряжение, которое суммируется с напряжением питания и на краткий период времени увеличивает его. Чем сильнее замедление, тем больше растет напряжение обратной ЭДС, и тем больше скачет напряжение питания. Такой скачок напряжения негативно влияет на драйвер и может даже вывести его из строя, поэтому драйверы шаговых двигателей оснащены системой защиты от колебаний питающего напряжения. Если показатели напряжения превышают пороговое значение, драйвер автоматически отключается.
• Контроль изменения полюсов (переполюсовки) при подключении питающего напряжения и сигналов управления.
• Режим экономии электрического тока, подаваемого на обмотки ШД при его простое (определяется отсутствием сигнала STEP). Он позволяет уменьшить нагрев двигателя и снизить расход потребляемого тока (в режиме AUTO-SLEEP).
• Автоматическая система-компенсатор среднечастотного резонанса шагового двигателя. Резонанс часто возникает при работе ШД (в диапазоне 6-12 об/сек.) и негативно влияет на его работу. В частности, двигатель начинает гудеть, работать нестабильно и в итоге ротор останавливается. Это явление во многом зависит от механической нагрузки и параметров шагового двигателя. Автоматический компенсатор помогает полностью устранить явление резонанса, сделать вращение его ротора устойчивым и равномерным при любых диапазонах частот.
• Схема изменений формы фазовых токов с функцией увеличения их частоты. Также она называется морфинг - то есть, переход от микрошага к обычному шагу двигателя при увеличении частоты тока. Как известно, максимальный момент (заявленный в ТХ) отдается двигателем лишь при режиме полного шага. Поэтому, обычные драйверы шаговых двигателей (без морфинга) позволяют двигателям работать лишь на 70% от их максимальной мощности. Драйвер с функцией морфинга обеспечивает максимальную отдачу двигателя во всех частотных диапазонах.
• Генератор частоты STEP (встроенный) - это функция, позволяющая осуществить пробный запуск контроллера шагового двигателя без необходимости подключения к ПК или какому-либо другому внешнему генератору. Также с его помощью можно устанавливать простые системы перемещения опять так и без использования компьютера.

Анализируя все выше сказанное составим временную диаграмму сигналов работы протокола STEP/DIR.


Временная диаграмма

Эта временная диаграмма служит основой для написания программы управления шаговыми двигателями.
Схема включает в себя:
• CW(DIR) - сигнал определяющий направление вращения двигателя (при высоком уровне сигнала двигатель вращается по часовой стрелке, при низком уровне - в противоположную сторону);
• CLK(STEP) - шаг, это тактирующий сигнал, один импульс говорит о том, что ротор двигателя надо повернуть на один шаг;
• Ти - длительность импульса сигнала;
• Т - период импульса сигнала.



ran

#1
Вторник, апреля 02, 2019, 06:55:06 Последнее редактирование: Вторник, апреля 02, 2019, 07:29:01 от ran
Все! Наконец, мне кажется, я распознал планы Вашего руководителя.
Представьте себе, стоит станок с ЧПУ, он обслуживается роботами. И станок и роботы управляются по протоколу Step-Dir от Arduino. Станок и роботы питаются энергией, вырабатываемой солнечной батареей. Для создания комфортных для станка и роботов условий задействованы элементы Пельтье, измерение температуры производится цифровыми датчиками, подключенными к контроллеру по сети 1-wire. По необходимости станок производит новые солнечные элементы и элементы Пельтье. Мозгом системы является компьютер, соединенный с Arduino по USB. С помощью него Руководитель контролирует процесс. Сервисные функции выполняют студенты-илоты, работающие за оценки. Сейчас студентов пока мало, но со временем их будет все больше и больше, поскольку мощность системы будет постоянно расти.
Описанный конгломерат под названием СКБ постепенно поглощает кафедру, а потом и весь вуз...
Это все бы ничего, пугает то, что разговор зашел уже о роторных экскаваторах...

Михаил

Андрей Николаевич, зачем так сложно, зачем роботам обслуживать станок. Можно написать безотказную программу на Ардуино для управлением станком с ЧПУ + ещё добавить энкодеры и все.

ran

А кто будет "заготовки" устанавливать и готовые изделия извлекать?
Нет, тут еще работы много.

Михаил

Да, действительно, упустил важную часть!!!

RVL

Они были мною на первом курсе предупреждены, на "Введении в профессию", говорил им: Это Спарта! Они улыбались в ответ....

RVL

Хороший текстовый доклад, но нуждается в графических пояснениях, дополните пожалуйста. Начните с протокола STEP/DIR, покажите его временную диаграмму.

knoppix

1. Зачем здесь вообще использовать Ардуино? Или Ардуино используется как аппаратная платформа, а для написания программы используется нормальный язык программирования?
2. Мне кажется в прошлом году уже был подобный доклад?
Амурский Государственный Университет  - 2010 - Специалист
Harbin Institute of Technology - 2016 - M.Sc.Eng
Главный инженер-программист АСУ ТП

ran

У нас нет такого понятия "прошлое". Мы устремлены в будущее.
А вообще, проблема серьезная. Эти студенты, черт бы их побрал, почти все постоянно куда-то уходят. Причем те, которые нужны, уходят гарантированно, а те, которые не нужны, почему-то остаются. В результате мы вынуждены каждый раз снова и снова предпринимать титанические усилия для того, чтобы хоть как-то двигаться вперед.
Нужно внести в Госдурму законопроект о "пожизненных студентах". Пусть вуз определяет их список самостоятельно, а государство позаботиться о пожизненной стипендии.

RVL

Вы как всегда смотрите в корень, но достаточно вернуться к специалитету и будет легче!

knoppix

Вы как всегда смотрите в корень, но достаточно вернуться к специалитету и будет легче!
Еще можно качественных студентов на цепь сажать и никаких специалитетов не надо будет :)
Амурский Государственный Университет  - 2010 - Специалист
Harbin Institute of Technology - 2016 - M.Sc.Eng
Главный инженер-программист АСУ ТП

RVL

Оксана! Тема вашего доклада должна быть связана с системой управления УР-4. Т.е., покажите как используется протокол в СУ роботом-манипулятором!

oksana

Действительно, изучив доклады прошлого года, нашла доклад http://forum.kafedra-appie.ru/index.php?topic=218.0 , в котором  тема моего доклада подробно разобрана... там и про step/dir и про его применение в роботе. Не вижу смысла продолжать свой доклад...

ran

Зря Вы туда смотрели!
Я тоже часто ловлю себя на такой мысли: вспомнив то, что я говорил и показывал на лекциях год, два,...10 лет назад, не вижу смысла продолжать это дело. Но приходится...

RVL

Оксана, в свете последних "изысканий", разработайте, как можно скорее, структурно-функциональную схему управления робота УР-4. От графического интерфейса пользователя, до рабочего органа (схвата).

Вверх