Math или EMC (энкодер нужно)

Контроллеры, драйверы, датчики, управляющие устройства.
top000
Новичок
Сообщения: 12
Зарегистрирован: 28 мар 2013, 10:00
Репутация: 0
Контактная информация:

Math или EMC (энкодер нужно)

Сообщение top000 »

Собрал я из хлама станок на базе драйверов от Юниора.
Поработал я на нем годик, и получил Опыт (массу испорченных деталей). По причине "залипания" Мача, попадания стружки и т.п. Естественно, мантра "энкодер" не дает спокойно жить.
По случаю попали мне в руки несколько маленьких ШД с энкодерами. И загорелось.
Пролопатив массу форумов и статей, сделал вывод, что при применении ШД особо не заботятся о контроле положения, и так пойдет. Но. Увидел тут тему про EMС. Впечатлило.
Кто уже гуру, вам вопросики - я правильно понял, что эта программа позволяет назначить вход LPT порта на контроль энкодера и устранение пропусков? Не нашел, какое согласование, вообще, реализация стандартная драйверов?
Драйвер на ПИКе можно оставить без изменения? Про пингвина слышал и даже раз устанавливал. И почитал тут ветку. Справлюсь?
Очень хочу маленький, точный и надежный станок для плат и форм для ювелирки. :thinking:
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение Сергей Саныч »

Энкодеры - они не для устранения пропусков шагов ШД. Они для обеспечения обратной связи сервоприводов.
Нормальный ШД с нормальным драйвером на правильно настроенном станке шагов не пропускает. Может уйти в срыв шагов при перегрузке, но тут энкодер поможет только обнаружить факт срыва и остановить станок по аварии.
top000 писал(а):Про пингвина слышал и даже раз устанавливал. И почитал тут ветку. Справлюсь?
С высокой вероятностью - да.
Чудес не бывает. Бывают фокусы.
top000
Новичок
Сообщения: 12
Зарегистрирован: 28 мар 2013, 10:00
Репутация: 0
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение top000 »

Сергей Саныч писал(а):Энкодеры - они не для устранения пропусков шагов ШД. Они для обеспечения обратной связи сервоприводов.
Как-то в моем понимании обратная связь для того и делается, чтобы что-то корректировать. Разве не так? Поэтому и решил по-нубийски начать этот разговор. Не хочется опять нагородить, а потом пожалеть. (ТМ7, будь они неладны)
Как я понял - есть аппаратная обратка, когда в случае пропуска ось останавливается по аварии, а есть именно с коррекцией траектории, т.е. если был пропуск, система обнаружила, что пропущено столько-то по оси, значит нужно откатить на позицию плюс недостача? И запустить процесс далее. Мач для этого не годиться, там только статистика. Хотя пауза и откат возможны легко. Не знаю, может я совсем криворук, что у меня мач "кривит душой" и выдает иногда безобразие, вместо траектории. (одна из осей вдруг зависает). Причем это не помеха. Если работу не прерывать, то все ОК! Такое происходит после паузы или изменении скорости подачи. Грешил на драйверы, но замена местами четко ничего не дала. Ошибки возникали все равно. И самое главное, мне попались ШД с энкодерами, значит есть смысл в контроле. Вот только обычный останов как-то не устраивает. Хочется, чтобы система сама понимала, что был косяк, надо вернуться. Если такой системы нет, то вопрос снимается.
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение Сергей Саныч »

ШД с энкодером - это по сути, сервоприводы с бОльшим, чем обычно, числом полюсов. По сравнению с обычными ШД позволяют, например, более точно отработать микрошаг. Обнаружение срыва тут не более чем приятный бонус.
Надо помнить, что ШД сам по себе не может пропустить шаг, два или три. Минимум четыре полных шага! А это обычно означает запоротую деталь. И смысла "возвращаться и повторять" нет.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11730
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4703
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение michael-yurov »

Есть ШД с энкодером и специальные драверы для них. В них реализовано много приятных плюшек - отсутствие пропуска шагов впринципе, повышение рабочего тока с увеличением нагрузки и движение без вибраций.
Но это специальные драйверы работающие по своим хитым алгоритмам, и в данном случае положение энкодера согласовано с положением ротора ШД.
top000
Новичок
Сообщения: 12
Зарегистрирован: 28 мар 2013, 10:00
Репутация: 0
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение top000 »

michael-yurov писал(а): данном случае положение энкодера согласовано с положением ротора ШД.
А разве по-другому бывает? Наша задача как раз всегда знать положение ротора. Не так ли?
Ладно, вижу, что энкодер на ШД - стрельба по воробьям. Но раз они уже есть - заведу все равно их в мач. На энкодерах обычные NE555, только теперь понять, какие сигналы для мача надо формировать. И какой порт настроить.
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11730
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4703
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение michael-yurov »

top000 писал(а):А разве по-другому бывает?
Ok,
- включили драйвер.
- приняли текущее положение энкодера за нолевое.
- Подали на обмотку A ток удержания, а на обмотку B - нолевой ток.
- Энкодер переместился на 55 позиций вперед.

О чем это говорит?
Да ни о чем. Мотор мог быть нагружен перед включением, и 55 позиция может вовсе не соответствовать "нолевому" положению ротора.

Допустим у нас энкодер имеет 4000 позиций на один оборот.
Текущее значение тока в обмотках 100% и 0%
Как нужно изменить ток в обмотках, чтобы повернуть вал на 1,2 шага вперед (так чтобы энкодер повернулся на 24 позиции)?
Предположим мы посчитали, какое соотношение тока должно быть в обмотках, подали такие величины (на вскидку -30% / +95%), а вал почему-то повернулся не на 24 позиции, а только на 19 (из за нагрузки на валу так произошло, и из за неравномерности обмоток самого ШД). О чем это говорит? Что нужно в этом случае сделать?

А если ток в обмотках увеличили в 2 раза (-60% / +190%) - энкодер почему-то повернулся еще на 4 позиции. Почему? Что это значит? Соотношение то ведь не изменилось. Изменилась лишь сила удержания позиции.

А если мы по энкодеру заметили, что позиция вала изменяется, хотя ток в обмотках прежний - что в этом случае нужно делать - вращать мотор в обратном направлении? Но ведь это с большой долей вероятности приведет к срыву.

В общем - недостаточно просто повесить на мотор энкодер и что-то потом с этими показаниями сделать. Нужен более сложный подход.

И, кстати, Mach3 и LinuxCNC понятия не имеют, какой в данный момент ток в обмотках, и не могут его регулировать,
так что толку от того, что данные с энкодеров будут заведены в компьютер практически никакого не будет.
top000 писал(а):Наша задача как раз всегда знать положение ротора. Не так ли?
Что нам мешает всегда помнить, какое сейчас положение ротора?
top000
Новичок
Сообщения: 12
Зарегистрирован: 28 мар 2013, 10:00
Репутация: 0
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение top000 »

michael-yurov писал(а): Нужен более сложный подход.

Что нам мешает всегда помнить, какое сейчас положение ротора?
Что-то совсем в разрез с моими скромными познаниями. Если никто не знает, что было с ротором, как мы можем помнить его положение? Для меня вот вообще, новость, что ШД оказывается, такой "ненадежный товарищ".
Т.е. он может неодинаково реагировать на одинаковые события. Если взять избыточную надежность (читай, дорогую систему), то проблем вообще нет (пишут о миллионах строк кода без потери шагов). Но если собирать на коленке "нечто" и на остатки "потребительской корзины", то сразу всплывают "нюансы". :pssdoff:
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11730
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4703
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение michael-yurov »

top000 писал(а):Что-то совсем в разрез с моими скромными познаниями. Если никто не знает, что было с ротором, как мы можем помнить его положение?
А что с ним могло быть?
Если мотор включен, и никто не пытается с большим усилием провернуть его вал, с чего бы ему менять положение?
top000 писал(а):Для меня вот вообще, новость, что ШД оказывается, такой "ненадежный товарищ".
Почему же?
У меня обычные китайские ШД, и моторы работают без проблем. Положение сами по себе не меняют, в другую позицию втихаря не перескакивают. Работают и работают.
Чтобы ШД перескочил на новую позицию нужно приложить существенное усилие, если все правильно настроено.
top000 писал(а):Если взять избыточную надежность (читай, дорогую систему), то проблем вообще нет (пишут о миллионах строк кода без потери шагов).
Нет разницы - миллион строк, или 25. Если ШД принципиально не может накосячить - у него, как ни крути всегда ровно 200 шагов на оборот. Не 201 и не 199.5, и не 199.9999999, а ровно 200.
top000 писал(а):Но если собирать на коленке "нечто" и на остатки "потребительской корзины", то сразу всплывают "нюансы".
Ну, это если собрать с ошибками.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение Serg »

michael-yurov писал(а):Чтобы ШД перескочил на новую позицию нужно приложить существенное усилие, если все правильно настроено.
Или просто выключить, а потом включить... ;)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11730
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4703
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение michael-yurov »

С тем же успехом и энкодер потеряет позицию, если его выключить и включить.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение Serg »

Имеется в виду снятие сигнала Enable и повторная его активация, например при нажатии E-STOP или F2 в LinuxCNC (В Масh3 не знаю какая), или просто на время обеда, чтоб движки не грелись.
michael-yurov писал(а):С тем же успехом и энкодер потеряет позицию, если его выключить и включить.
Энкодер не потеряет позиции пока программа (LinuxCNC) не будет полностью закрыта.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11730
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4703
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение michael-yurov »

Ладно, согласен, практическая польза есть - мне тоже не нравится, когда моторы шипят в простое.

Но наличие энкодеров на шаговиках принципиального значения для управления станком не имеет, (относительно контроля координат).
Аватара пользователя
kingartur
Новичок
Сообщения: 37
Зарегистрирован: 25 янв 2015, 15:49
Репутация: -1
Настоящее имя: Vladimir
Откуда: Вся Россия
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение kingartur »

Энкодер ставится на ШД и замыкает обратную связь по положению на уровне драйвера. В принципе ШД не нужен энкодер, он был изобретен для дешевой альтернативы сервоприводу где есть энкодер и высокая цена. Если поставить энкодер на сам станок и завести его в программу управления - максимум что получим - контроль координат. Реальной скоростью расчета и обмена с энкодером для контроля положения ни Mach ни EMC не обладают.
Майами ХИТ
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение Nick »

kingartur писал(а):еальной скоростью расчета и обмена с энкодером для контроля положения ни Mach ни EMC не обладают.
через доп платы запросто. Помимо контроля следования добавляется обнуление по индексной метке - гораздо больше точность, в сравнении с обычными концевиками.
Аватара пользователя
kingartur
Новичок
Сообщения: 37
Зарегистрирован: 25 янв 2015, 15:49
Репутация: -1
Настоящее имя: Vladimir
Откуда: Вся Россия
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение kingartur »

Nick писал(а):
kingartur писал(а):еальной скоростью расчета и обмена с энкодером для контроля положения ни Mach ни EMC не обладают.
через доп платы запросто. Помимо контроля следования добавляется обнуление по индексной метке - гораздо больше точность, в сравнении с обычными концевиками.
Про доплаты я не спорю, но по сути сказанного вы согласны?
Майами ХИТ
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение Nick »

Более менее :)
Аватара пользователя
PKM
Почётный участник
Почётный участник
Сообщения: 4263
Зарегистрирован: 31 мар 2011, 18:11
Репутация: 705
Настоящее имя: Андрей
Откуда: Украина
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение PKM »

Я бы сформулировал, что реальной скоростью ПК не обладает. Независимо от софта
Аватара пользователя
kingartur
Новичок
Сообщения: 37
Зарегистрирован: 25 янв 2015, 15:49
Репутация: -1
Настоящее имя: Vladimir
Откуда: Вся Россия
Контактная информация:

Re: Math или EMC (энкодер нужно)

Сообщение kingartur »

Nick писал(а):Более менее :)
И на том низкий поклон :clap: :clap: :clap: :clap: :D
Майами ХИТ
Ответить

Вернуться в «Электроника»