Параллельный порт является великолепным интерфейсом, позволяющим подключать к персональному компьютеру множество самых различных устройств. Однако он может быть легко поврежден, поэтому при его использовании для подсоединения самодельных внешних устройств нужно быть очень внимательным. Если вы не уверены в том, что вы все делаете правильно, сначала проконсультируйтесь у специалистов и только потом экспериментируйте. Ниже приводится краткое описание параллельного порта. Параллельный порт имеет несколько линий ввода/вывода, которые могут быть разделены на две группы — линии передачи данных и линии сигналов управления. Линии передачи данных — двунаправленные (разумеется, речь идет о режимах ЕСР/ЕРР), и именно их мы и будем использовать. В табл.1 описано назначение выводов разъема порта 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 | общий провод |
Прим. переводчика: я использовал шаговый двигатель от русского дисковода. Тип двигателя: ПБМГ-200-265Ф. Для определения выводов применялся тестер. При этом я зарисовал схему обмоток, фиксируя на ней измеренные сопротивления. Оказалось, что двигатель имеет четыре обмотки. Две обмотки соединены друг с другом и имеют общий провод белого цвета, вторые выводы этих обмоток красного и зеленого цвета. Две другие обмотки также соединены друг с другом и имеют общий провод черного цвета, вторые выводы этих обмоток голубого и желтого цвета. Если соединить белый и черный провода, получается практически та же схема, что и описанная в оригинальной статье. Порядок подключения выводов я определил опытным путем.
Для управления шаговым двигателем можно использовать микросхему драйвера ULN2003, которая содержит семь мощных транзисторных ключей, собранных по схеме Дарлингтона. Каждый ключ способен управлять нагрузкой с током потребления до 500 мА. Микросхема имеет резисторы в цепи базы, что позволяет напрямую подключить ее входы к обычным цифровым микросхемам. Все эмиттеры соединены вместе и выведены на отдельный вывод. На выходах транзисторных ключей имеются защитные диоды, что позволяет управлять с помощью этой микросхемы индуктивными нагрузками при минимуме внешних компонентов. В нашей конструкции использовано только четыре транзисторных ключа. Электрическая схема подключения шагового двигателя показана на рис. 2.
Обратите внимание, что первый вывод шагового двигателя, идентифицированный с помощью описанной ранее процедуры, подсоединен к линии DO параллельного порта (разумеется, через микросхему ULN2003). Каждый следующий вывод подсоединен к соответствующему выводу параллельного порта. Если порядок подключения выводов шагового двигателя неверный, вал мотора будет не вращаться, а лишь поворачиваться на небольшой угол из одной стороны в другую и наоборот. Общий провод схемы подсоединен к источнику питания не напрямую, а через стабилитрон. Это сделано с целью защиты схемы от напряжения ЭДС самоиндукции, возникающего в катушках при резком выключении напряжения питания схемы.
Программа, разработанная для описываемого устройства, достаточно проста. Она управляет выводами порта и формирует на них специальную последовательность импульсов. Эта последовательность показана в табл. 2 и 3.
Различие между алгоритмами (полным и половинным углом поворота вала на один шаг) состоит в том, что во втором случае скорость вращения оказывается в два раза ниже, при этом в два раза уменьшается угол поворота вала двигателя на каждом шаге, т. е. увеличивается разрешающая способность системы. Также во втором случае примерно в два раза увеличивается потребляемая мощность, и кроме того, двигатель способен развивать в два раза больший крутящий момент.
Для изменения направления вращения вала двигателя необходимо формировать указанные последовательности в обратном порядке.
Ниже приведен короткий пример программы для Turbo С, работающей в операционной системе MS-DOS. Эта программа заставляет шаговый двигатель вращаться в прямом направлении, в режиме полного угла на один шаг.
Перевод с английского Михаила Голубцова.
Подпишитесь на наши новости
Получайте первыми актуальную информацию от ООО «Электропривод»
Видео:Управление ШАГОВЫМ двигателем с помощью старого КОМПЬЮТЕРА с LPT портомСкачать
Управление двигателем с компьютера
Давно меня мучает вопрос управления с компьютера. Придумала себе задачу, но вот не представляю, как связать две части: программную и физическую(непосредственно мотор с драйвером).
У меня есть драйвер двигателя L293D и моторчик.
Что я хочу?
Я хочу написать программу на ПК: она будет состоять из двух кнопок включить двигатель и выключить. — С программирование нет проблем.
Хочу сделать маленькую платку, чтобы вращался двигатель. — с этим конечно есть проблемы, но сейчас вопрос в другом.
Что мне не ясно?
Вот предположим есть у меня програма и плата. Как мне сделать так чтобы при нажатии на кнопку в программе двигатель начинал вращаться. Я понимаю, что на соответствующую ногу драйвера надо подать напряжение. Но как это сделать с компьютера?
Если ошиблась разделом, перенесите пожалуйста в нужный.
Буду благодарна за любые советы, ключевые слова. книги и т.д. и тп.
Скажу сразу, это не лабораторная в универ. Это для удовлетворения собственного любопытства.
Управление коллекторным двигателем
Пробую сделать управление движком постоянного тока. Мощность — 80. 100 Вт, питание -12В.
Управление коллекторным двигателем тактовой кнопкой
Ситуация такая, есть колекторник на 24В , питание +-12В тактовая кнопка и 2 размыкателя. Нужно.
Радио управление освещением с компьютера
Итак решил упростить себе жизнь и сохранить тысячи нервных клеток (надоело жене и дочери говорить.
Читайте также: Мотор форд мустанг 1967
простой ЭБУ двигателем
Посмотрев на цены и уровень шаманства вокруг мегаскврирта (есть такой набор «сделай сам себе ЭБУ»).
magirus, Ардуино, конечно хорошо.
Но я хочу по минимуму использовать готовые решения.
RefSol, а может посоветуете какую то литературу? или ключевые слова для поиска на тему обмена между ПК и устройством.
И правильно ли я понимаю, что это раздел Цифровая обработка сигнала или все таки нет?
Видео:Шаговые двигатели, и как ими управлять с помощью микроконтроллераСкачать
Управление двигателями постоянного тока с помощью компьютера
Принцип работы схемы:
Схема управления двигателем соединена с портом параллельного ввода–вывода, посредством U1, четырёхразрядного триггера-фиксатора 74LS192. Первые четыре линии данных используются для управления двигателями, а стробирующий сигнал от компьютера позволяет сохранить данные. В схеме две отдельных части управления двигателями, в каждой из которых по два транзистора и два реле. В схеме используются следующие реле: однополюсное на два направления и двухполюсное на два направления, с максимально допустимой мощностью включения контактов, подходящей для управляемых двигателей. Каждый двигатель управляется двумя битами, что даёт возможность оказывать на каждый двигатель четыре управляющих воздействия. Первые две линии данных управляют одним двигателем, а следующие две (D2 и D3), управляют вторым двигателем, где: 00 = остановка, 01 = вперёд, 10 = назад, 11 = остановка. Для обратной связи схемы используются данные линий состояния параллельного порта. Кодеры углового положения, прикреплённые к валам двигателей, состоят из металлического или пластикового диска с отверстиями и пары светодиод/фоторезистор с каждой стороны диска. Инверторы (U2a и U2b) регулируют сигнал, полученный на фоторезисторе и подают на компьютер импульсы с резким временем подъёма и падения.
Переменные резисторы 50 кОм настраиваются таким образом, чтобы инвертор включался только тогда, когда свет светодиода падает на фоторезистор сквозь отверстие в диске. Значение должно составлять примерно 17 кОм, однако оно будет зависеть от используемого фоторезистора.
Кодер двигателя № 1 подключается к линии состояния «нет бумаги», а кодер двигателя № 2 к линии состояния «занято». Компьютер опрашивает эти две линии в момент вращения двигателей.
Программная часть была написана на Turbo C и выполняет две функции: управление скоростью вращения двигателей и считывание состояния кодеров. Можно использовать и более современное ПО, при условии, что оно выполняет вышеописанные функции.
Функция считывания состояния вызывается с помощью ENC1 или ENC2 как параметра, который возвращает значение состояние одного из кодеров. Требуется циклический вызов функции, а счётчик используется для подсчёта отверстий на каждом кодере. Функция управления DCout вызывается посредством четырёхразрядного значения (байт данных, в котором игнорируются четыре старших разряда). Каждая пара битов представляет направление вращения двигателей.
Видео:Уроки Arduino. Управление моторами с библиотекой GyverMotorСкачать
Управление шаговым двигателем с ПК
Привет всем! Решил продолжить тему с шаговыми двигателями и написать о своей последней разработочке. В общем задача полезна вдвойне. Я думаю что каждому человеку работающему с МК рано или поздно приходится как-то этот МК подключать к персональному компьютеру, то ли для передачи управляющего воздействия с ПК, то ли принимать какие-то данные с микропроцессорной системы. Вот и у меня задача была таковой: разработать стенд, который будет организовывать работу двух шаговых двигателей, а также получать данные о этом управлении с ПК.
Короче говоря вы вводите на компьютере данные о том какому из 2х двигателей в какую сторону и сколько вращаться, данные передаются в микропроцессорный стенд, а тот в свою очередь исполняет вашу команду.
Задача поставлена. Я разбил ее на две подзадачи: организация связи МК с ПК и сам драйвер для ШД. Ну как я делал драйвер описывается в моей предыдущей статье, так что осталось связать микроконтроллер (МК) с персональным компьютером (ПК), а потом связать все это дело в одном устройстве.
Итак связь МК с ПК. Я немного полистал даташит МК ATmega8 (это самый на мой взгляд популярный AVR микроконтроллер, я с ним работаю в основном) и понял, что самый простой и подходящий для меня это интерфейс RS232, по простому СОМ порт. Он есть на любом ПК, а для ноутбука я просто использовал переходник USB to COM. Да и практически на любом МК тоже есть аппаратная реализация этого интерфейса. Говоря проще чтобы на МК заработал СОМ порт нужно просто написать определенную программку и все будет ок. Кусочек необходимого для этой задачи кода на языке С представлена ниже
▼ com.rar 699 b ⇣ 185
Программа есть, остался вопрос аппаратной части реализации задачи. Дело в том что на выходе СОМ порта микроконтроллера 5 вольтовые импульсы, т.е. логическая 1 представляется в виде +5В, а логический 0 в виде 0В. А вот СОМ порт компьютера работает с +12В и -12В. Т.е. по сути необходимо согласовать уровни. Слава богу для этого есть хорошая микросхема MAX232 или ее китайский аналог. Даташит данной микросхемы представлен ниже
▼ max232.rar 635,11 Kb ⇣ 136
Данная микросхема подключается к МК и к ней подключается разъем RS232. Также имеется небольшая обвязка. Принципиальная схема ниже
Схема в Dip trace
▼ rs232.rar 3,67 Kb ⇣ 145
Все ваш МК подключен к компьютеру. Теперь я еще приделал два драйвера для ШД ко всей этой системе и написал программу с помощью которой можно управлять этими двумя движками.
Схема всего устройства с источником первичного питания для МК
Схема в Dip trace
▼ stend_2_shd.rar 9,53 Kb ⇣ 167
А теперь и код программы
▼ main.rar 1,07 Kb ⇣ 223
Программа написана на языке С в IAR (это отладчик+компилятор). Сразу приношу извинения за то, что программа практически без комментариев, но задавайте вопросы, все расскажу.
Система работает так: С ПК через гипертерминал например (виндошное приложение для отправки и получения инфы через СОМ порт) отправляете номер двигателя, например 1 или 2, а после этого колличество оборотов, после того как ШД прокрутится он пришлет на СОМ порт информацию о том что он сделал. Ну если что спрашивайте.
📸 Видео
Драйвер мотору не нужен. Запускаем HDD моторСкачать
Мало кто знает об этой функции ВЕНТИЛЯТОРА от компьютера!!!Скачать
Управление двигателем с компьютераСкачать
Готовый трехфазный драйвер моторов из HDD-жесткого диска.Тест с разными моторамиСкачать
Простое управление оборотами шагового двигателя.Скачать
Подключение двигателя без электроники и Ардуино!Скачать
❓Как запустить моторчик от жёсткого дискаСкачать
Блок управления двигателем: устройство, можно ли написать свою программу и использовать по-своемуСкачать
Регулятор скорости для бесколлекторного двигателяСкачать
Уроки Arduino - управление бесколлекторным моторомСкачать
Курсовой "Управление Шаговым двигателем с помощью ПК"Скачать
Запуск двигателя CD-ROM от штатного драйвера.Скачать
Простое управление шаговым двигателем с компьютера через ардуиноСкачать
Панель управления шаговым двигателем на Arduino.Скачать
Обзор копеечной платы управления шаговым двигателем.Скачать
ПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14]Скачать
Блок управления двигателем манСкачать