Отправляет email-рассылки с помощью сервиса Sendsay

Бизнес в Интернете

  Все выпуски  

Современная Электроника


Современная Электроника
выпуск 16 от 2007-04-17


Использование шаговых двигателей

Доброй работы, Подписчик!

Роман Ветров прислал статью, посвященную маломощным шаговым двигателям. В статье описан один из наиболее простых методов подключения и алгоритм управления несколькими шаговыми двигателемя через порт LPT.


По сравнению с обычными двигателями постоянного тока, шаговые двигатели требуют более сложных схем управления, выполняющих коммутацию обмоток при работе. В зависимости от конфигурации обмоток двигатели делятся на биполярные и униполярные. Для управления биполярным двигателем требуется более сложный драйвер (силовая часть электросхемы управления шаговым двигателем, не путать с программным драйвером). Наиболее полно описание видов шаговых двигателей изложено в статье на www.telesys.ru.

В экспериментах использованы шаговые двигатели от 5,25-дюймов дисководов. В основном в дисководах попадаются двигатели с сопротивлением обмоток 70 ом и напряжением питания 12В.

Электрическую схему управление шаговыми двигателями с помощью компьютера можно разбить на две части: контроллер (буфер) и драйвер см.рис.1.



Разработанный контроллер может обслуживать до 16 шаговых двигателей, он собран на трех микросхемах 555TM7. Схема контроллера изображена на рис.2.



Контроллер подключается к LPT. Привожу назначение выводов разъема порта LPT.


Распиновка
выв Название Направление Описание
1 STROBE вход/выход устанавливается PC после завершения каждой передачи данных
2..9 D0-D7 выход 8 линий данных
10 ACK вход устанавливается в "0" внешним устройством после приема байта
11 BUSY вход устройство показывает, что оно занято, путем установки этой линии в "1"
12 Paper out вход для принтеров
13 Select вход устройство показывает, что оно готово, путем установки на этой линии "1 "
14 Autofeed вход/выход  
15 Error вход индицирует об ошибке
16 Initialize вход/выход  
17 Select In вход/выход  
18..25 Ground   общий провод


Есть хороший рускоязычный ресурс, посвященный распиновке компьютерных разъемов - wired.hard.ru.


Я разбил 8 бит данных идущих от LPT на две группы по 4 бит: "данные" (bit 0-3) и "адреса" (bit 4-7). "Данные" передаются на триггеры ТМ7 выводы 2, 3, 6,7 (D1, D2, D3, D4 см.рис.2), а "адреса" определяют какой из триггеров запишет эти "данные".

В моей схеме 7 бит не используется т.к. применено 3 двигателя. Для подключения к схеме 16 двигателей необходимо на управляющие биты "адреса" установить дешифратор.

К выходам ТМ7 подключается драйвер - силовые ключи коммутирующие обмотки шагового двигателя. Драйвер состоит из 4х транзисторов КТ 972 см.рис.3. Диоды можно использовать любые с допустимым импульсным током 200мА.



Также можно использовать серийные микросхемы (stepper motor driver), например ULN 2004 (9 ключей) на 0.6А. или НА13408 (1.5А) см.рис.4



Для питания контроллера и шаговых двигателей понадобится блок питания. Его мощность зависит от мощности шаговых двигателей. При использовании двигателей от 5" дисководов потребляемый ток будет равен: 3 двигателя, одновременно может запитано по 2 обмотки (полу-шаговый режим) по 0.6А т.е. 3х2х0,6=3,6А

А теперь о том как управлять контроллером и шаговыми двигателями с помощью компьютера.

Проще всего из Qbasic (под DOS)


    Команда
        OUT 888, Х

    Порт принтера LPT имеет адрес 888. процедурой OUT мы в порт помещаем число Х.
    Повернем двигатель №1 на один оборот:

    OUT 888, 17 ' число 00010001
    'задержка
    OUT 888, 18 ' число 00010010
    'задержка
    OUT 888, 20 ' число 00010100
    'задержка
    OUT 888, 24 ' число 00011000
    'задержка

После каждой команды необходимо поставить задержку, т.к. шаговый двигатель не успеет повернуться в следующее положение. Например создать пустой цикл:


     FOR i = 1 TO 100000
     NEXT i

Максимальная частота коммутации обмоток шагового двигателя (те которые были у меня) 2000Гц, что соответствует 4 об/сек. При большей частоте двигатель будет пропускать шаги.

На основании выше изложенной методики, был собран трехкоординатный станок. С помощью которого я рисую и сверлю печатные платы. Рис.5.



Подробнее можно посмотреть на сайте temport.by.ru. На сайте есть программа под Windows XP для управления самодельным станком с ЧПУ. Программа позволят рисовать на станке платы нарисованные в AutoCad, SprintLayout, Corel DRAW, P-Cad или из любой другой программы конвертирующей файлы в DXF, Gerber.

Роман Ветров


P.S. От себя добавлю: если возникли трудности с LPT-портом (на многих современных материнках его уже может и не быть), то для подключения к компьютеру можно использовать микросхемы USB интерфейсов FTDI, например FT245.

Если у вас есть интересные материалы по теме рассылки - пишите, я с удовольствием их опубликую. Пишите также, если у вас возникли любые вопросы или предложения, замечания или дополнения.

НОВОСТИ


  • ExpoElectronica'2007. Через неделю, 25 апреля, откроется главная выставка российских электронщиков. Проводиться на этот раз она будет в Крокус-Экспо, Москва, с 25 по 28 апреля.

  • Первое торжественное собрание, пресс-конференция и прием членов АССОЦИАЦИИ РОССИЙСКИХ ПРОИЗВОДИТЕЛЕЙ ЭЛЕКТРОНИКИ, созданой этой зимой, пройдет 25 апреля на открытии выставки ExpoElectronica'2007.

  • 23-26 апреля в Экспоцентре, Москва, пройдет многоотраслевой форум-выставка Высокие технологии XXI века.


  • Автор Сайт рассылки Архив Рассылки

    Были использованны материалы:

    Количество подписчиков: 7028


    В избранное