Использование шаговых двигателей (управление шаговыми двигателями с помощью компьютера)
В данной статье описан один из наиболее простых методов подключения нескольких шаговых двигателей к компьютеру через порт LPT, а алгоритм управления двигателями. По сравнению с обычными двигателями постоянного тока, шаговые двигатели требуют значительно более сложных схем управления, которые должны выполнять все коммутации обмоток при работе двигателя.
В зависимости от конфигурации обмоток двигатели делятся на биполярные и униполярные. Для управления биполярным двигателем требуется более сложный драйвер. Драйвер – так называется силовая часть электро схемы управления шаговым двигателем, не путать с программным драйвером.
Наиболее полно описание видов шаговых двигателей изложено в статье http://www.telesys.ru/indexold.shtml.
Я, в своих экспериментах использовал шаговые двигатели от 5,25-дюймов дисководов. В основном в дисководах попадаются двигатели с сопротивлением обмоток 70 ом и напряжением питания 12в. Всю электрическую схему можно разбить на две части: контроллер (буфер) и драйвер см.рис.1.
Разработанный мной контроллер может обслуживать до 16 шаговых двигателей, он собран на трех микросхемах 555TM7. Схема контроллера изображена на рис.2.
Контроллер подключается к LPT. Привожу назначение выводов разъема порта LPT.
выв. |
Название |
Направление |
Описание |
1 |
STROBE |
ввод и вывод |
устанавливается PC после завершения каждой передачи данных |
2/9 |
DO-D7 |
вывод |
8 линий данных |
10 |
АСК |
ввод |
устанавливается в "0" внешним устройством после приема байта |
11 |
BUSY |
ввод |
устройство показывает, что оно занято, путем установки этой линии в «1» |
12 |
Paper out |
ввод |
для принтеров |
13 |
Select |
ввод |
устройство показывает, что оно готово, путем установки на этой линии «1 » |
14 |
Autofeed |
Ввод и вывод |
|
15 |
Error |
ввод |
индицирует об ошибке |
16 |
Initialize |
Ввод и вывод |
|
17 |
Select In |
Ввод и вывод |
|
18-25 |
Ground |
GND |
общий провод |
Я разбил 8 бит данных идущих от LPT на две группы по 4 бит: «данные» (bit 0-3) и «адреса» (bit 4-7)
|
|||||||
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
данные |
адрес –определяет на какой двигатель придет сигнал - данные |
«Данные» передаются на триггеры ТМ7 выводы 2, 3, 6,7 (D1, D2, D3, D4 см.рис.2), а «адреса» определяют какой из триггеров запишет эти «данные».
Рассмотрим примеры:
Биты LPT |
Примечание |
|||||||
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
«адрес» |
«данные» |
|||||||
4 |
3 |
2 |
1 |
4 |
3 |
2 |
1 |
|
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
Данные 0101 запишутся в триггер 1 и передадутся в драйвер 1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
Данные 0101 запишутся в триггер 1 и передадутся в драйвер 2 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
Данные 0101 запишутся в триггер 1 и передадутся в драйвер 3 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
Данные никуда не поступят, т.к. не выбран «адрес» |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
Данные 1011 запишутся сразу в три триггера 1,2,3 |
В моей схеме 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)
Команда
Максимальная частота коммутации обмоток шагового двигателя (те которые были у меня) 2000Гц, что соответствует 4 об/сек. При большей частоте двигатель будет пропускать шаги.
На основании выше изложенной методики, мной бал собран трех координатный станок. С помощью которого я рисую и сверлю печатные платы. Рис.5.
Подробнее можно посмотреть на сайте http://vri-cnc.ru
Также на сайте имеется программа под Windows XP для управления самодельным станком с ЧПУ. Программа позволят рисовать на станке платы нарисованные в AutoCad, SprintLayout, Corel DRAW, P-Cad или из любой другой программы конвертирующей файлы в DXF, Gerber.
Ветров Роман
9.04.2007. vetrovroman на маил.ру
импортные станки токарные купить недорого |