» » » Управление шаговым двигателем с ПК

 
 
 
14

Управление шаговым двигателем с ПК

Разместил Muchachos 3 августа 2009. Просмотров: 72 468

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

Привет всем! Решил продолжить тему с шаговыми двигателями и написать о своей последней разработочке. В общем задача полезна вдвойне. Я думаю что каждому человеку работающему с МК рано или поздно приходится как-то этот МК подключать к персональному компьютеру, то ли для передачи управляющего воздействия с ПК, то ли принимать какие-то данные с микропроцессорной системы. Вот и у меня задача была таковой: разработать стенд, который будет организовывать работу двух шаговых двигателей, а также получать данные о этом управлении с ПК.

Короче говоря вы вводите на компьютере данные о том какому из 2х двигателей в какую сторону и сколько вращаться, данные передаются в микропроцессорный стенд, а тот в свою очередь исполняет вашу команду.
Задача поставлена. Я разбил ее на две подзадачи: организация связи МК с ПК и сам драйвер для ШД. Ну как я делал драйвер описывается в моей предыдущей статье, так что осталось связать микроконтроллер (МК) с персональным компьютером (ПК), а потом связать все это дело в одном устройстве.

Итак связь МК с ПК. Я немного полистал даташит МК ATmega8 (это самый на мой взгляд популярный AVR микроконтроллер, я с ним работаю в основном) и понял, что самый простой и подходящий для меня это интерфейс RS232, по простому СОМ порт. Он есть на любом ПК, а для ноутбука я просто использовал переходник USB to COM. Да и практически на любом МК тоже есть аппаратная реализация этого интерфейса. Говоря проще чтобы на МК заработал СОМ порт нужно просто написать определенную программку и все будет ок. Кусочек необходимого для этой задачи кода на языке С представлена ниже
com.rar | Файл 699 b загружен 165 раз.

Программа есть, остался вопрос аппаратной части реализации задачи. Дело в том что на выходе СОМ порта микроконтроллера 5 вольтовые импульсы, т.е. логическая 1 представляется в виде +5В, а логический 0 в виде 0В. А вот СОМ порт компьютера работает с +12В и -12В. Т.е. по сути необходимо согласовать уровни. Слава богу для этого есть хорошая микросхема MAX232 или ее китайский аналог. Даташит данной микросхемы представлен ниже
max232.rar | Файл 635,11 Kb загружен 118 раз.

Данная микросхема подключается к МК и к ней подключается разъем RS232. Также имеется небольшая обвязка. Принципиальная схема ниже

Схема в Dip trace
rs232.rar | Файл 3,67 Kb загружен 128 раз.

Все ваш МК подключен к компьютеру. Теперь я еще приделал два драйвера для ШД ко всей этой системе и написал программу с помощью которой можно управлять этими двумя движками.

Схема всего устройства с источником первичного питания для МК


Схема в Dip trace
stend_2_shd.rar | Файл 9,53 Kb загружен 150 раз.

А теперь и код программы
main.rar | Файл 1,07 Kb загружен 203 раз.

Программа написана на языке С в IAR (это отладчик+компилятор). Сразу приношу извинения за то, что программа практически без комментариев, но задавайте вопросы, все расскажу.

Система работает так: С ПК через гипертерминал например (виндошное приложение для отправки и получения инфы через СОМ порт) отправляете номер двигателя, например 1 или 2, а после этого колличество оборотов, после того как ШД прокрутится он пришлет на СОМ порт информацию о том что он сделал. Ну если что спрашивайте.


Чуть не забыл, печатная плата в Lay.
shag_2_1.rar | Файл 31,38 Kb загружен 158 раз.
Роман (Muchachos)
Украина, Донецк
Профиль Muchachos
Студент 5го курса, специальности СКС. Увлекаюсь программированием, в будущем намерен заниматься именно микроконтроллерными системами. В данный момент работаю над самодельным плоттером.
 

Понравилось? Палец вверх!

  • всего лайков: 22

Поделись с друзьями!

Связанные материалы:


Схема на Датагоре. Новая статья Намоточный станок с проводоукладчиком... Давно была идея о создании намоточного станка с проводоукладчиком. На просторах Интернета много...
Схема на Датагоре. Новая статья Управляем нагрузкой по USB с помощью ПК и ATMega8... В наше время все больше находят применение устройства, позволяющие управлять нагрузками с помощью...
Схема на Датагоре. Новая статья Программа обмена по RS-232 на языке C# в среде Microsoft Visual Studio... Сограждане, применяющие микроконтроллеры, часто испытывают потребность использования функций обмена...
Схема на Датагоре. Новая статья Дистанционный контроллер состояния подъездного освещения с web-интерефейсом: Лампочкометр-WEB... …а вот не видать из Челябинска моего Лампочкометра, я вам скажу больше – его уже и из-за угла не...
Схема на Датагоре. Новая статья Сделай сам лабораторный блок питания с микропроцессорным управлением на ATMega16. Вторая жизнь Back-UPS... Что такое "Back-UPS"? С точки зрения самодельщика - это прочный корпус и мощный блок питания...
Схема на Датагоре. Новая статья Лампочкометр возвращается! (vol. 2)... Вдох глубокий. Руки шире. Не спешите, три-четыре! Бодрость духа, грация и пластика. ...
Схема на Датагоре. Новая статья Микроконтроллерный регулятор мощности - 2... Учитывая замечания и предложение, поступившие в мой адрес после публикации статьи ...
Схема на Датагоре. Новая статья Микроконтроллер ATmega 8 управляет шаговым двигателем... Подключение шагового двигателя к микроконтроллеру ATmega 8 Недавно пришлось подключать шаговый...
Схема на Датагоре. Новая статья Миниатюрный полный USB-RS232 адаптер на CP-2102 для подключения микроконтроллера к компьютеру по USB... В продолжение к теме «Программатор AVR910», про маленькое устройство, хочу предоставить вашему...
Схема на Датагоре. Новая статья 10 практических устройств на AVR-микроконтроллерах. Книга 1. А.В. Кравченко... 10 практических устройств на AVR-микроконтроллерах. Книга 1. А.В. Кравченко Издательство:...
Схема на Датагоре. Новая статья ATmega8/L... Представляю вам даташит на микроконтроллер ATmega8/L фирмы Atmel. Если кто рискнёт перевести... ...
Схема на Датагоре. Новая статья Сопряжение компьютеров с внешними устройствами. Уроки реализации... Сопряжение компьютеров с внешними устройствами. Уроки реализации: Пер. с англ. -М.: Мир, 2000. —...
<
  • Гражданин
3 августа 2009 18:17

Тарас / _taras_

Цитата
  • С нами с 20.07.2008
  • Ушёл в реал Пользователь offline
  • 14 комментариев
  • 0 публикаций
 
  • 0
Спасибо за интересную статью. Будете делать станок :)?

<
  • Кандидат
3 августа 2009 21:37

Роман / Muchachos

Цитата
  • С нами с 1.06.2009
  • Ушёл в реал Пользователь offline
  • 11 комментариев
  • 2 публикации
 
  • 0
Вообще хотелось бы станок для нарезки рисунка печатной платы на текстолите

<
  • Гражданин
3 августа 2009 23:05

Евгений / udginb

Цитата
  • С нами с 19.05.2008
  • Ушёл в реал Пользователь offline
  • 15 комментариев
  • 1 публикация
 
  • 0
Я на МК не заморачивался. Нет смысла.Во-первых дефицит, потом прошивки, глючит и т.п. В управлении шаговыми двигателями для меня важней, чтобы схема могла реализовывать шаг, полушаг, имела опторазвязку от компа. А то не дай бог пробьет транзистор в ключе (а транзисторы горят там хорошо) и труба компу. Такая схема у меня уже почти год лежит. Управляет 4-мя ШД, хоть одним, хоть всеми 4-мя сразу. А лежит, так как нет у нас нигде нормальных шаговых двигателей. Вообще, если интересно, то могу на форуме выложить схемы и прочее.

<
  • Кандидат
3 августа 2009 23:44

Роман / Muchachos

Цитата
  • С нами с 1.06.2009
  • Ушёл в реал Пользователь offline
  • 11 комментариев
  • 2 публикации
 
  • 0
Вообще интересно, выложите если не сложно

<
  • Гражданин
4 августа 2009 00:23

Евгений / udginb

Цитата
  • С нами с 19.05.2008
  • Ушёл в реал Пользователь offline
  • 15 комментариев
  • 1 публикация
 
  • 0
Вот по этому пути я скинул схему и краткое описание:Радиофорум у Датагора » Практика » Секреты самодельщика>> Станки ЧПУ. Вообще в Гуглике набрать как в статье : Robozon.su и будет много чего, в том числе и счастье lol

<
  • Гражданин
4 августа 2009 01:52

Тарас / _taras_

Цитата
  • С нами с 20.07.2008
  • Ушёл в реал Пользователь offline
  • 14 комментариев
  • 0 публикаций
 
  • 0
udginb,
//vri-cnc.ru/ также содержит рецептуру счастья :) :)

<
  • Гражданин
4 августа 2009 17:42

Алексей / alex

Цитата
  • С нами с 7.01.2012
  • Ушёл в реал Пользователь offline
  • 58 комментариев
  • 4 публикации
 
  • 0
Друг, прежде чем делать станок делай плату с использованием драйверов SLA7024. Очень рекомендую. Ибо напрасен труд будет. Делал я как-то станок. Не раз на грабельки наступал.

<
  • Кандидат
4 августа 2009 20:09

Роман / Muchachos

Цитата
  • С нами с 1.06.2009
  • Ушёл в реал Пользователь offline
  • 11 комментариев
  • 2 публикации
 
  • 0
Спасибо

<
  • Кандидат
5 августа 2009 23:22

Евгений / tecno_maniak

Цитата
  • С нами с 5.09.2008
  • Ушёл в реал Пользователь offline
  • 41 комментарий
  • 0 публикаций
 
  • 0
а можно и меня на путь истенный вывести? SLA7024 это что за зверушка?
и вопросы к автору:
1)я хоть уже и спрашивал но уточню 3 ось прилепить можно?
2)я так понял шевелиться может только 1 движок за раз да?
3)чем посылал команды на ком?

<
  • Кандидат
7 августа 2009 04:33

Роман / Muchachos

Цитата
  • С нами с 1.06.2009
  • Ушёл в реал Пользователь offline
  • 11 комментариев
  • 2 публикации
 
  • 0
Отвечаю:
1. 3-ю ось прилепить можно, легко
2. реально да, но я переделаю прогу так, чтобы движки получив координаты отрабатывали их не сразу по очереди, а как бы по шагу. ну например 1й движок должен отработать 100 оборотов, а 2й - 50 оборотов, они будут делать так: 1й - 2 оборота, 2й - 1 оборот и так пока не дойдут до заданных величин, за счет этого создается почти одновременная работа
3. Ну смотри, в МК есть СОМ порт, т.е. я заношу в специальный регистр МК передаваемые данные, а он выводит их на специальные две ножки контроллера, которые в свою очередь через спец. микросхему передаются на СОМ порт компа. А на компе принимаю и получаю данные то ли через гипер терминал (виндошная прога), то ли через COM port toolking

А SLA7024 - это микросхема-драйвер, внутри транзисторные ключи, короче на нее подаешь сигналы с контроллера, а она управляет шаговым движком

<
  • Кандидат
7 августа 2009 04:41

Евгений / tecno_maniak

Цитата
  • С нами с 5.09.2008
  • Ушёл в реал Пользователь offline
  • 41 комментарий
  • 0 публикаций
 
  • 0
а в каком формате инфа идет?движки могут отработать полушаг хотя бы?или только шаг?

и под какие двиги можно использовать эту схему?у меня просто лежит 3 таких коротышки как на фото и 3 дши 200(старые но помощнее)

<
  • Прохожий
21 декабря 2009 17:27

/ SASHA788

Цитата
  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
Статья очень хорошая. Только вот хотелось бы слелать что-то типа стэнда для отработки схемы шагового привода (ведь это не только проц и 4 транзистора)

а по поводу микросхем типа SLA7024 и им подобные я думаю что это комплетующие уже для отлаженой механики -- потому как горят они очень охотно а цена на не которые тоже приличная ----- по этому хотелось бы сделать стэндик типа такого проц мега16 или лучше ключи на ирфах с драйверами схема слежения по току (шим) кнопки управления (ком порт не исключается --- но жалко порты на компе да для отладки схемы ПК не очень и нужен) можно добавить светодиодную индикацию . Думаю сомной может кто и согласится а те кто прошли через это -- может смогут помочь тем кто в этом нуждается.

<
  • Прохожий
10 апреля 2010 00:34

/ jurakez

Цитата
  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
  • 0
Были такие замечательные совейские матричные принтера СМ-какие то, шли они с компами ес-1840 и 41 под формат А3, так у них плата мозгов отдельно, а плата силовой части отдельно, это фактически готовый контроллер степ-дир со стабилизацией тока фаз, защитой от перегрузки и готовым блоком питания. Находим и барахолим 2 принтера - получаем контроллер на 4 канала, 4 шаговых двигателя ШД-200, 2 блока питания и будет вам счастье!

<
  • Кандидат
25 сентября 2014 23:11

Аноним / mqk62618955

Цитата
  • С нами с 26.09.2014
  • Ушёл в реал Пользователь offline
  • 1 комментарий
  • 0 публикаций
 
  • 0
у нас управление шаговыми двигателями идет от Lpt-порта (Step/Dir), то есть 1 бит – направление, 2-й бит – Step (движение), Как совместить вращение 2-х, 3-х и более двигателей при сложной траектории.
- токарный станок (2 движения вместе)
- фрезерный станок – 3 движения вместе (Line)
- робот «Пума» - до 6 движений.
smile

Добавление комментария


Налетай! Паяльники, станции, жала с доставкой
  • smilelolbyewinkyahoocoollaughing
    crazybadcryingsadirefulsickstraight
    ballooncakegooddrinksmailbombsun
    nightrainstarscolddashguitar-manhandshake
    musicnegativenopardonshoksleepunknown
    wackoyawnblushbullyhashsmokingwhew
Скопируйте текст вашего комментария на случай неверного ответа на контрольный вопрос.