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

 
 
 

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

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

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

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

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



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



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

Схема в Dip trace
Файловый сервис недоступен. Зарегистрируйтесь или авторизуйтесь на сайте.



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

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


Схема в Dip trace
Файловый сервис недоступен. Зарегистрируйтесь или авторизуйтесь на сайте.



А теперь и код программы
Файловый сервис недоступен. Зарегистрируйтесь или авторизуйтесь на сайте.



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

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


Чуть не забыл, печатная плата в Lay.
Файловый сервис недоступен. Зарегистрируйтесь или авторизуйтесь на сайте.



Камрад, рассмотри датагорские рекомендации

💰 Внимание! 800 рублей для новичков на Aliexpress 💰
Регистрируйтесь по нашей ссылке. Если вы впервые на Aliexpress - получите 800.00₽ купонами на свой первый заказ.
Роман (Muchachos)
Украина, Донецк
Профиль Muchachos
Студент 5го курса, специальности СКС. Увлекаюсь программированием, в будущем намерен заниматься именно микроконтроллерными системами. В данный момент работаю над самодельным плоттером.
 

Читательское голосование

Нравится

Статью одобрили 16 читателей.

Для участия в голосовании зарегистрируйтесь и войдите на сайт с вашими логином и паролем.
 

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

 

 

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

 

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

Общаемся по статье 💬

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

Комментарии, вопросы, ответы, дополнения, отзывы

 

<
Читатель Датагора

_taras_
Тарас

  • Гражданин
Комментарий # 1 от 03-08-09, 18:17.
  • С нами с 20.07.2008
  • 14 комментариев
  • 0 публикаций
 
Спасибо за интересную статью. Будете делать станок :)?

<
Читатель Датагора

Muchachos
Роман

  • Гражданин
Комментарий # 2 от 03-08-09, 21:37.
  • С нами с 1.06.2009
  • 11 комментариев
  • 2 публикации
 
Вообще хотелось бы станок для нарезки рисунка печатной платы на текстолите

<
Читатель Датагора

udginb
Евгений

  • Гражданин
Комментарий # 3 от 03-08-09, 23:05.
  • С нами с 19.05.2008
  • 15 комментариев
  • 1 публикация
 
Я на МК не заморачивался. Нет смысла.Во-первых дефицит, потом прошивки, глючит и т.п. В управлении шаговыми двигателями для меня важней, чтобы схема могла реализовывать шаг, полушаг, имела опторазвязку от компа. А то не дай бог пробьет транзистор в ключе (а транзисторы горят там хорошо) и труба компу. Такая схема у меня уже почти год лежит. Управляет 4-мя ШД, хоть одним, хоть всеми 4-мя сразу. А лежит, так как нет у нас нигде нормальных шаговых двигателей. Вообще, если интересно, то могу на форуме выложить схемы и прочее.

<
Читатель Датагора

Muchachos
Роман

  • Гражданин
Комментарий # 4 от 03-08-09, 23:44.
  • С нами с 1.06.2009
  • 11 комментариев
  • 2 публикации
 
Вообще интересно, выложите если не сложно

<
Читатель Датагора

udginb
Евгений

  • Гражданин
Комментарий # 5 от 04-08-09, 0:23.
  • С нами с 19.05.2008
  • 15 комментариев
  • 1 публикация
 
Вот по этому пути я скинул схему и краткое описание:Радиофорум у Датагора » Практика » Секреты самодельщика>> Станки ЧПУ. Вообще в Гуглике набрать как в статье : Robozon.su и будет много чего, в том числе и счастье lol

<
Читатель Датагора

_taras_
Тарас

  • Гражданин
Комментарий # 6 от 04-08-09, 1:52.
  • С нами с 20.07.2008
  • 14 комментариев
  • 0 публикаций
 
udginb,
//vri-cnc.ru/ также содержит рецептуру счастья :) :)

<
Читатель Датагора

alex
Алексей

  • Гражданин
Комментарий # 7 от 04-08-09, 17:42.
  • С нами с 7.01.2012
  • 58 комментариев
  • 4 публикации
 
Друг, прежде чем делать станок делай плату с использованием драйверов SLA7024. Очень рекомендую. Ибо напрасен труд будет. Делал я как-то станок. Не раз на грабельки наступал.

<
Читатель Датагора

Muchachos
Роман

  • Гражданин
Комментарий # 8 от 04-08-09, 20:09.
  • С нами с 1.06.2009
  • 11 комментариев
  • 2 публикации
 
Спасибо

<
Читатель Датагора

tecno_maniak
Евгений

  • Кандидат
Комментарий # 9 от 05-08-09, 23:22.
  • С нами с 5.09.2008
  • 41 комментарий
  • 0 публикаций
 
а можно и меня на путь истенный вывести? SLA7024 это что за зверушка?
и вопросы к автору:
1)я хоть уже и спрашивал но уточню 3 ось прилепить можно?
2)я так понял шевелиться может только 1 движок за раз да?
3)чем посылал команды на ком?

<
Читатель Датагора

Muchachos
Роман

  • Гражданин
Комментарий # 10 от 07-08-09, 4:33.
  • С нами с 1.06.2009
  • 11 комментариев
  • 2 публикации
 
Отвечаю:
1. 3-ю ось прилепить можно, легко
2. реально да, но я переделаю прогу так, чтобы движки получив координаты отрабатывали их не сразу по очереди, а как бы по шагу. ну например 1й движок должен отработать 100 оборотов, а 2й - 50 оборотов, они будут делать так: 1й - 2 оборота, 2й - 1 оборот и так пока не дойдут до заданных величин, за счет этого создается почти одновременная работа
3. Ну смотри, в МК есть СОМ порт, т.е. я заношу в специальный регистр МК передаваемые данные, а он выводит их на специальные две ножки контроллера, которые в свою очередь через спец. микросхему передаются на СОМ порт компа. А на компе принимаю и получаю данные то ли через гипер терминал (виндошная прога), то ли через COM port toolking

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

<
Читатель Датагора

tecno_maniak
Евгений

  • Кандидат
Комментарий # 11 от 07-08-09, 4:41.
  • С нами с 5.09.2008
  • 41 комментарий
  • 0 публикаций
 
а в каком формате инфа идет?движки могут отработать полушаг хотя бы?или только шаг?

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

<
Читатель Датагора

SASHA788

  • Прохожий
Комментарий # 12 от 21-12-09, 17:27.
  • С нами с --
  • 0 комментариев
  • 0 публикаций
 
Статья очень хорошая. Только вот хотелось бы слелать что-то типа стэнда для отработки схемы шагового привода (ведь это не только проц и 4 транзистора)

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

<
Читатель Датагора

jurakez

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

<
Читатель Датагора

mqk62618955

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

Информация
Вы не можете участвовать в комментировании. Вероятные причины:
— Администратор остановил комментирование этой статьи.
— Вы не авторизовались на сайте. Войдите с паролем.
— Вы не зарегистрированы у нас. Зарегистрируйтесь.
— Вы зарегистрированы, но имеете низкий уровень доступа. Получите полный доступ.