Униполярный шаговый двигатель

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить
Родился
Сообщения: 3
Зарегистрирован: Ср мар 10, 2010 21:25:14

Сообщение Hukumka »

Собрал схему эту: http://ra4a.narod.ru/Spravka3/43.htm (думаю те кто пробовал управлять вращением - видели эту схему)

Импульсы посылаются... Двигатель дергается.
из статьи:
Повернем двигатель №1 на один оборот:
OUT 888, 17 ‘ число 00010001
‘задержка
OUT 888, 18 ‘ число 00010010
‘задержка
OUT 888, 20 ‘ число 00010100
‘задержка
OUT 888, 24 ‘ число 00011000
‘задержка
(писал это же на C#)

Первые две команды поворачивают двигатель по часовой стрелке на два такта, вторые две команды - против часовой стрелки. От этого и дрыгается...
Если оставить крутиться в цикле только первые две команды то вращение происходит в одну сторону, но мощность мизерная и просто чуть чуть придавливая ось можно заставить двигатель стоять на месте.

Подскажите, пожалуйста, в чем может быть ошибка?
(или это и есть штатная работа?)
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 7371
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Сообщение uldemir »

Наиболее вероятная причина - перепутаны выводы обмоток двигателя или двигатель другого типа. Для более достоверной диагностики недостаточно информации.
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Реклама
Родился
Сообщения: 3
Зарегистрирован: Ср мар 10, 2010 21:25:14

Сообщение Hukumka »

uldemir писал(а):Наиболее вероятная причина - перепутаны выводы обмоток двигателя или двигатель другого типа. Для более достоверной диагностики недостаточно информации.
Спасибо за реакцию.
уточню:
двигатель вытащил из старого принтера OKI mikroline 183
написано на корпусе 12V 70 Ом
Двигатель имеет 6 выводов. Два из которых - середины обмоток (ну все четко как на схеме нарисовано).
Объединил эти две середины обмоток и подаю на них +12.
step.jpg
(7.22 КБ) 1471 скачивание
итак, по картинке: объединил выводы 2 и 5

как действовать дальше? схему то я собрал: 5 выходов, 4 из которых "минус" и один - "плюс" (который на середину обмоток)...
Ведь из физики, если я буду "пускать" ток так:
от 2 контакта к 1
от 2 контакта к 3
от 5 контакта к 4
от 5 контакта к 6
то как раз двигатель и будет дергаться. Вот такие импульсы: 2-1 и 2-3 или 5-4 и 5-6 крутят двигатель в разном направлении...
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 7371
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Сообщение uldemir »

Hukumka писал(а):Ведь из физики, если я буду "пускать" ток так:
от 2 контакта к 1
от 2 контакта к 3
от 5 контакта к 4
от 5 контакта к 6
Так правильно.
Hukumka писал(а):Вот такие импульсы: 2-1 и 2-3 или 5-4 и 5-6 крутят двигатель в разном направлении...
Неправильно.
Один цикл - появление тока на 4 обмотках по очереди. А вот очередность меняет направление. Т.е. 1-3-4-6 - одно направление, 6-4-3-1 - противоположное. Вот в википедии: http://en.wikipedia.org/wiki/Stepper_motor и ещё можнов интернете найти много всего. вот еще с анимацией http://www.pyroelectro.com/tutorials/l2 ... heory.html
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Сообщения: 3
Зарегистрирован: Ср мар 10, 2010 21:25:14

Сообщение Hukumka »

А сколько по времени держать напряжение на обмотке?
надеюсь, что моя ошибка в том что я слишком долго держал напряжение. 50 миллисекунд на обмотку.
т.е. в коде это выглядит так:
outport(888, 17); // 10001
Sleep(50); // 50 миллисекунд держим напряжение на первой обмотке.
outport(888, 18); // 10010
Sleep(50); // 50 миллисекунд держим на второй
outport(888, 20); // и т.д...
Sleep(50);
outport(888, 24);
Sleep(50);

Охх... в общем сейчас могу только предполагать, спасибо за пищу... Надеюсь, когда буду дома, разбирусь.
Контактная информация:
Реклама
Родился
Сообщения: 3
Зарегистрирован: Вс авг 22, 2010 20:02:51

Сообщение Wikly »

Люди подскажите что не правильно сделал:

подключил ШД к компу по схеме http://homecnc.ru/index.php/electro/10-cnc-controller

двигатель: M42SP-5P
Микросхема: LB1233 (Аналог ULN2003A)

управляю им через программу написанную на Delphi.

Посылаю команды в порт так:

Код: Выделить всё

Procedure move;
begin
for i := 1 to 50 do
begin
Out32($378, 6);
Sleep(10);
Out32($378, 4);
Sleep(10);
Out32($378, 3);
Sleep(10);
Out32($378, 1);
Sleep(10);

end;
    Sleep(1000);
for I := 1 to 50 do
  begin
Out32($378, 1);
Sleep(9);
Out32($378, 3);
Sleep(9);
Out32($378, 4);
Sleep(9);
Out32($378, 6);
Sleep(9);
  end;
end;
по идее двигатель должен вращаться сначала в одну сторону, потом в другую.
Но происходит не так, он крутится в одну и ту же сторону.

Подскажите может я чего не првильно сделал?
Реклама
Родился
Аватара пользователя
Сообщения: 10
Зарегистрирован: Пт дек 07, 2007 04:49:41
Откуда: Ульяновск

Сообщение Moreman »

Года 2 назад делал схемку ,может понравится
Вложения
Контроллер к униполярному шд.rar
(44.73 КБ) 991 скачивание
Контактная информация:
Открыл глаза
Сообщения: 64
Зарегистрирован: Сб апр 19, 2014 19:25:20

Сообщение arteomng »

Так как тема уже существует и вопрос мой то же по управлению униполярным двигателем, решил напсать тут.
Собрал схему
Спойлер(http://tehnomir.ucoz.lv/publ/skhemy/upravlenie_shagovym_dvigatelem/2-1-0-99)
(первый рисунок).
Вместо LPT у меня микроконтроллер ATMega8. код программы такой
Спойлер#include <mega8.h>
#include <delay.h>


void main(void)
{
while (1)
{
PORTD.0=1; delay_ms (250);
PORTD.0=0; delay_ms (750);
PORTD.1=1; delay_ms (250);
PORTD.1=0; delay_ms (750);
PORTD.2=1; delay_ms (250);
PORTD.2=0; delay_ms (750);
PORTD.3=1; delay_ms (250);
PORTD.3=0; delay_ms (750);
PORTD.4=1;
}

}
При проверке тестером, импульсы идут. Однако заметил что напряжение на них не 5В (как питание), а около 4В. При подаче импульса на ULN2003 напрямую от шины питания, двигатель ходит.
Вообще сложилось впечатление такое, что не хватает мощности управляющих импульсов. Да же при при подключении светодиода, без ограничивающего резистора, на управляющие пины, он горит очень тускло.
В чем может быть проблема?
Открыл глаза
Сообщения: 64
Зарегистрирован: Сб апр 19, 2014 19:25:20

Сообщение arteomng »

Разобрался!
Питание МК производил от блока питания макетной платы (BreadBord), а она здорово ограничивать ток в цепи.
Запитал от зарядки мобильника, все заработало! Правда там 7,5 В, но МК пока все равно работает!
Вымогатель припоя
Аватара пользователя
Сообщения: 532
Зарегистрирован: Сб июн 25, 2011 20:02:22
Откуда: Украина, г. Сумы

Сообщение Pavel83 »

Здравствуйте! Подскажите, как узнать параметры шагового двигателя M42SP-5P (7,5 град. step, 22 Ом). Меня интересует какие максимальные обороты он может выдать и мощность.
Ответить

Вернуться в «Интеграция с ПК»