- •Выпускная квалификационная работа
- •Научный руководитель
- •Введение
- •Глава 1. Виды, устройство и принцип работы шаговых двигателей [6]
- •1.1 Общие принципы шаговых двигателей
- •1.2 Виды шаговых двигателей
- •1.21 Двигатели с переменным магнитным сопротивлением
- •1.22 Двигатели с постоянными магнитами
- •1.23 Гибридные двигатели
- •1.24 Биполярные и униполярные шаговые двигатели
- •1.3 Способы управления фазами шд
- •Глава 2. Контроллеры шаговых двигателей
- •2 .1 Управление шаговым двигателем с помощью автономного контроллера
- •2.2 Управление шаговым двигателем с использованием эвм
- •2.3 Реализация адаптера шагового двигателя
- •Глава 3. Управление контроллером с помощью системы программирования PureBasic
- •3.1 Особенности системы программирования PureBasic
- •3.2 Синтаксис
- •3.3 Сравнение с Basic и Pascal
- •3.4 Особенности PureBasic
- •3.5 Программирование lpt порта
- •Глава 4. Модель крана как пример применения шаговых двигателей
- •4.1 Устройство модели
- •4.2 Программа управления краном на языке программирования PureBasic
- •Заключение
- •Список литературы
- •Приложения
- •1. Моделирование элементов устройств управления механизмами
- •2. Параллельный (lpt) порт ibm pc
- •3. Видеофильм о шаговых двигателях
- •4. Текст программы управления моделью крана
- •5. Результаты моделирования в программе MicroCap 7 устройства выработки управляющих импульсов на d-триггерах.
Приложения
1. Моделирование элементов устройств управления механизмами
В качестве устройства
управления можно успешно использовать
ЭВМ с LPT-портом.
Например, нам требуется выполнить
электронную «мигалку»
на светодиоде. Для этого необходимо
собрать схему:
Токоограничивающий резистор R подбирается под конкретный светодиод, в нашем случае для светодиода HL - АЛ307КМ - 300 Ом:
светодиоду АЛ307КМ с током потребления 10 мА желательно последовательно поставить резистор с сопротивлением(исходя из закона
Ома : R=(U-Uд)/I, где U-напряжение питания(т.е. 5 В), Uд, I-напряжение питания и ток потребления светодиода(можно найти в справочнике, для АЛ307КМ – Uд =2 В, I=10mA).Тогда R=300 Ом. Схема к ЭВМ подключается разъёмом DB-25М.
В программе используется процедура delay(m) (задержка программы на время m, в миллисекундах) и с помощью цикла триггеру D0 порта попеременно присваивается значение «1» и «0», часть программы на паскале может выглядеть так:
repeat
port[$378]:=1;
delay(1000);
port[$378]:=0;
delay(1000);
until keypressed;
Цикл завершится, как только пользователь нажмёт любую клавишу.
Поскольку светодиод требует малый ток (примерно 5-15 мА) в схеме не пришлось использовать дополнительный источник питания, поэтому схема проста. Если необходимо управлять нагрузкой, с потребляемым током более 15 мА, то желательно использовать схемы с усилителем мощности и, разумеется, отдельным источником питания.
Описанное выше устройство использует порт только как устройство вывода, хотя параллельный порт является более гибким устройством, способное выполнять ввод данных, следующая схема реализует слежение за положением выключателя SA 1 и может, при необходимости, включать и выключать какое-либо внешнее устройство, изменив, уже программно, информацию в регистре данных порта. Опять же, применение подобных схем не ограничивается включением или выключением какого-либо устройства, например, при включении SA 1 может запускаться программа, при реализации соответствующего ПО.
Таким
образом, при помощи ЭВМ можно управлять
практически любым электронным прибором,
в том числе и шаговым двигателем.
2. Параллельный (lpt) порт ibm pc
Данный порт компьютера IBM PC использует параллельный интерфейс и предназначен в основном для подключения принтера
Регистр данных порта работает только на выход, данные сохраняются в этом регистре до записи нового байта. Для записи байта Date в регистр можно использовать массив port[ ] в Turbo Pascal
port[Adres]:=Date
Здесь Adres – адрес регистра . Например, чтобы записать в регистр данных D0 логическую единицу, необходимо порту 378Н присвоить значение «1». Это будет выглядеть так:
Port[$378]:=1;
А если требуется, чтобы единица была в разряде регистра D2, а на остальных – 0, то требуется порту задать значение «4». Данные с разрядов D0..D7 снимаются соответственно с 2..9 контактов разъёма DB-25M.
Реализация ввода данных через порт реализуется подачей непосредствен-но на контакты, предназначенные для входа, высокого уровня напряжения(>=2,0 В), или низкого(<=0,8 В), которые и будут расцениваться за логическую единицу и ноль соответственно(если вход инвертирован, тогда наоборот) .[9]
Полезной будет следующая таблица:
Регистр |
Адрес |
Разряды регистра |
|||||||
|
|
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Данных (*)выход |
Base |
D7 (9) |
D6 (8) |
D5 (7) |
D4 (6) |
D3 (5) |
D2 (4) |
D1 (3) |
D0 (2) |
Состояния (*)вход |
Base+1 |
(11) |
Ackn (10) |
PE (12) |
Select (13) |
(15) |
X |
X |
X |
Где Base – базовый порт(LPT1-378H, LPT2-278H), тогда Base+1 – 379H(или 279H).
(*) – в скобках указан номер вывода разъёма DB-25M, соответствующий разряду регистра.
