Страница 1 из 1

Помогите запустить шаговый двигатель через Arduino и TB6560

Добавлено: 15 ноя 2015, 22:33
Cosmologist
Доброго времени суток!
Итак, есть униполярный шаговый двигатель WT 42BYGH807 (разводка), драйвер шагового двигателя TB6560 V2 (красная трех-канальная плата) (документация, китайская Arduino Uno на CH340.
Даю на драйвер 24 вольта, двигатель подключен белый провод на A-, красный на A+, желтый на B-, синий на B+.
Arduino подключена к LPT - 2 пин (StepX) с LPT на 13 цифровой выход Arduino, 3 пин (DirX) с LPT на 12 цифровой выход Arduino, 25 пин (Ground) с LPT на Gnd Arduino. Также пробовал подключить первый пин c LPT (Enable Control Signal) к 11 цифровому выходу arduino.
Код использовал следующий (основан на http://www.instructables.com/id/ARDUINO ... /?ALLSTEPS:

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

// the setup function runs once when you press reset or power the board
void setup() {
  pinMode(11, OUTPUT);
  pinMode(12, OUTPUT);
  pinMode(13, OUTPUT);

  digitalWrite(11, HIGH);
  digitalWrite(12, LOW);
  digitalWrite(13, LOW);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(100);              // wait for a second
  digitalWrite(13, LOW);    // turn the LED off by making the voltage LOW
  delay(100);              // wait for a second
}
Двигатель не крутится, на драйвере мигает светодиод с соответствующей программе частотой (видео).
Есть нюанс - я подключал двигатель не так, как указано везде, к примеру здесь, так как при прозвонке двигателя оказалось что на одной обмотке висит красный-белый-зеленый провод, а не красный-белый-синий, как везде указывается.
Пробовал мультиметром померить напряжение на выходах драйвера к двигателю - ничего не показывается.

Изображение

Драйвер умер или я что-то не так делаю?
Помогите разобраться, друзья!

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 16 ноя 2015, 01:45
xenon-alien
Я могу посоветовать прошить Ардуино при помощи XLoader ( http://russemotto.com/xloader/XLoader.zip ) прошивкой grbl_v0_9g_atmega328p_16mhz_115200.hex ( http://bit.ly/1m8E1Qa )
О настройке параметров Grbl-v0.9 можно здесь почитать.
https://github.com/grbl/grbl/wiki/Configuring-Grbl-v0.9
И так проверить.
Есть расписана распиновка.
http://freedelivery.in.ua/shop/details/ ... d-v30.html
http://blog.protoneer.co.nz/arduino-cnc ... bly-guide/
Так что думаю должно получиться.
Вот прошивка, XLoader и grbl controller 3.6.1 которые я использую.
GRBL.rar
(5.04 МБ) 981 скачивание
Вот здесь я свой пробовал подключать, но не через такую плату.
http://www.cnc-club.ru/forum/viewtopic. ... 92#p233462

Точно к оси Х подключен шаговик? (я просто не встречался ещё с такими драйверами)
Настроен ли правильный ток?
На LPT всё ли правильно подключено?
Подключаемые провода ШД должны иметь больше сопротивления.
И главное фазы не перепутать.

Если ШД будет использоваться до 2,5 А то спокойно можно перейти на такую "схему" http://www.cnc-club.ru/forum/viewtopic. ... 92#p233136
Можно запустить 3 оси + 1 клонировать, если использовать CNC Shield.

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 16 ноя 2015, 05:21
selenur
Может на контроллере нужно еще наличие сигнала E-stop?

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 16 ноя 2015, 05:42
megagad
Для начала вопрос - двигатель "шумит" при подаче напряжения на "красную плату"? Если нет - значит драйвер или не рабочий вообще, или нужно в ЛПТ "поиграть" с первым выводом(обычно - вывод EN никуда не подключается). Говоря проще - без наличия входных сигналов, только при подключённом ШД и БП к плате двигатель должен делать "шшшшшшш" :) Это говорит о том, что на него подаётся ток удержания с частотой ШИМа9которая и "шипит").

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 16 ноя 2015, 08:54
grakun
Cosmologist писал(а):Также пробовал подключить первый пин c LPT (Enable Control Signal) к 11 цифровому выходу arduino.
Первый пин нужно просто подключить на землю или написать digitalWrite(11, LOW);

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 16 ноя 2015, 23:09
Cosmologist
Ребята, спасибо!
Подал LOW на Enable Control Signal и все закрутилось!

Еще такой вопрос возник - сделал задержку в 1 миллисекунду между сменой сигнала на Step-пине, потом заметил, что двигатель прилично нагрелся - температуру сказать тяжело, но больше секунды пальцами его не удержать.
Драйвер запитан на 24V и потреблял ток около 0.8A (получается около 20W).
Исходник приложения
Это нормально или что-то не так?

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 17 ноя 2015, 00:02
grakun
Cosmologist писал(а):потреблял ток около 0.8A
Он будет греться. 0.8А это не много.

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 17 ноя 2015, 03:24
xenon-alien
Cosmologist писал(а):Это нормально или что-то не так?
807 модели не нашел.
http://www.wantmotor.com/ProductsView.asp?id=156&pid=80
Cosmologist писал(а):но больше секунды пальцами его не удержать
Это приблизительно 60-70 градусов.
Номинальная температура ШД 80 градусов.
Если будет выше, то нужно снизить ток (или напряжение).

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 17 ноя 2015, 05:35
megagad
Cosmologist писал(а):Драйвер запитан на 24V и потреблял ток около 0.8A (получается около 20W).
А на двигатель какой ток выставлен?

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 17 ноя 2015, 18:02
Cosmologist
xenon-alien писал(а):
Cosmologist писал(а):Это нормально или что-то не так?
807 модели не нашел.
http://www.wantmotor.com/ProductsView.asp?id=156&pid=80
Cosmologist писал(а):но больше секунды пальцами его не удержать
Это приблизительно 60-70 градусов.
Номинальная температура ШД 80 градусов.
Если будет выше, то нужно снизить ток (или напряжение).
Опечатался - моделька 42BYGH801, ток 0.4A.

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 17 ноя 2015, 18:03
Cosmologist
megagad писал(а):
Cosmologist писал(а):Драйвер запитан на 24V и потреблял ток около 0.8A (получается около 20W).
А на двигатель какой ток выставлен?
А как его выставить? На драйвере вроде этого сделать нельзя.

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 17 ноя 2015, 19:53
Bmax77
Cosmologist писал(а):А как его выставить? На драйвере вроде этого сделать нельзя.
Можно и даже нужно! Посмотрите мануал на плату, там есть переключатели рядом с разъемами куда подключаются движки, они и задают ток.

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 18 ноя 2015, 00:35
Patriot
Прежде чем трогать ток, смени delay(1) на delayMicroseconds(20). 1 милисекунда - это очень много. А потом можно уже удивлять ток, что бы температура ШД была не более 70-80 градусов.

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 18 ноя 2015, 09:38
megagad
Cosmologist писал(а): А как его выставить? На драйвере вроде этого сделать нельзя.
У разьёмов подключения ШД имеются пара джамперов - ими-то и выставляется "процент" выходного тока(обычные значения 100/75/50/25% от максимального - 3А). табличка со значениями имеется там-же в мануале.

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 18 ноя 2015, 18:36
Cosmologist
Спасибо, с током разобрался - действительно можно выставлять. У меня получается выставить минимальный ток 20%*3.5A, то есть ~0.7A, двигатель расчитан на 0.4A, получается не надо использовать этот двигатель с этим драйвером или какой-то диапазон допустим?

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 18 ноя 2015, 18:37
Cosmologist
Patriot писал(а):Прежде чем трогать ток, смени delay(1) на delayMicroseconds(20). 1 милисекунда - это очень много. А потом можно уже удивлять ток, что бы температура ШД была не более 70-80 градусов.
А причем тут задержка? Она ведь только на скорость вращения влияет?

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 18 ноя 2015, 19:06
xenon-alien
Cosmologist писал(а):У меня получается выставить минимальный ток 20%*3.5A, то есть ~0.7A, двигатель расчитан на 0.4A
Можно попробовать отключить один провод от драйвера (который идет к ШД), подключить последовательно через мультиметр и измерить ток. Переменный, или постоянный.
Попробуйте посмотреть выдает ли драйвер при полном шаге 100% тока от выбранного значения. (мои драйвера 71% выдают при полно шаговом режиме)
Если да, то нужно задать шаг и измерить постоянный ток (ШД должен оставаться в режиме удержания). Если ШД постоянно вращается, то нужно измерять переменный ток (но значение будет меньше чем при измерении постоянного тока).
Не совсем правильный метод, но я мои так настраивал.
https://www.youtube.com/watch?v=QNNtGGH_5ns
https://www.youtube.com/watch?v=7HmshaGLRkk
Если что, то под видео есть описание.
Думаю можно попробовать и в этом случае.

Если будет большой ток при выбранном 20% 0,7-0,8 А, то нужно снизить напряжение на 12в и так ещё раз измерить. (может прокатит и с этим драйвером)
В характеристиках ШД рекомендованное напряжения 12В. Думаю и ток упадет (уже не помню точную зависимость сопротивления, напряжения и тока - закон Ома, если память не подводит U=I*R, I= 24/30=0,8А I=12/30=0,4 А).

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 19 ноя 2015, 14:37
xenon-alien
Кто-то вчера добавил познавательное видео о 2-х фазных ШД
https://www.youtube.com/watch?v=ea44K0S ... 65&list=WL

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 19 ноя 2015, 17:19
Patriot
Отличное видео! Расскажите еще про настройку драйверов и что такое микрошаг, зачем он нужен и как им пользоваться. Ну и будет здорово, если расскажите не только что выставлять в драйверах (ток какой), но и почему именно так.

Re: Помогите запустить шаговый двигатель через Arduino и TB6

Добавлено: 19 ноя 2015, 17:25
xenon-alien
Вот ещё от того же человека. (виде не мои)
https://www.youtube.com/watch?v=8df9vz7lPQg