Mach3 и двигатели постоянного тока.

vti
Soling:

Алгоритм таков:
Привод ведет до нуля стола. Он задается датчиками. Дальше прога осчитывает положение порталов по показаниям, ( но не подтверждениям), энкодера.
Получила 1000 шагов( импульсов энкодера) - ушла на 100мм. Встали.
В системе шаговых эторавноценно 1000 шагам на заданное расстояние.
Это просто линейка которая говориот что портал в таком то месте. Вот и все.

Не правда Ваша-)). Ни чего прога не считает. Прога выдает нужное количество импульсов. Контроллер дает ток на мотор, и читает с энкодера информацию о отработанных «импульсах» . Если полученное количество импульсов от проги и от энкодера совпало, то стоп. Если нет, то за определенное, установленное в контроллере время, докрутить мотор. Не докрутился - тогда стоп по «ощибке». Ну еще зависит какой LAG у Вас установлен в контроллере. Вот так, примерно-)))

Во уже ответили-)))

Soling
vti:

Не правда Ваша-)). Ни чего прога не считает. Прога выдает нужное количество импульсов. Контроллер дает ток на мотор, и читает с энкодера информацию о отработанных «импульсах» . Если полученное количество импульсов от проги и от энкодера совпало, то стоп. Если нет, то за определенное, установленное в контроллере время, докрутить мотор. Не докрутился - тогда стоп по «ощибке». Ну еще зависит какой LAG у Вас установлен в контроллере. Вот так, примерно-)))

Во уже ответили-)))

Какие импулсы с линейного двигателя???
Вы о чем?
Ваш привод - клоллекторный, линейный, ЛЮБОЙ кроме шагового умеет только одно - крутить. Куда и на сколько - не его дело. Шаговый - да, он завзан с углом шага. Остальные - дикие производители движения. КАК КОЛЛЕКТОРНЫЙ или асинхронник моджет определить на сколько он продвинул портал?
Задумайтесь и не несите ерунду.
ЛЮБОЕ перемещение нужно измерить. ШАГ - отношение угла к передаче. Напруга на коллекторнике - непредвиденное перемещение в пространстве. Ибо, ни с чем кроме его свойств не связано.
К стати, шаговые позиционируются как механизьмы для ТОЧНОГО перемещеия. Чего ни кто и никогда не писал об остальных двигателях.
Отношение оборотов колллекторника к перемещению портала может быть любым. А вот ШАГ энкодера вседа определяет дискрет Вашего станка То есть - его рассчетную точность позиционирования.

vti
Soling:

Вы о чем?

Soling, Вы же, вроде, умный человек. Ну оказались не правы, ну промолчите если не признаете-)). Но под дурочка то зачем? Ну удивили-)).

Soling
chkmatulla:

Куда и на сколько, естественно. И все. Остальное считает контроллер.

Энкодер не считает “куда”
Он дает колличество импульсов при движении в ЛЮБУЮ сторону. Прога же, типа Mach учитывая какое направление движения ( DIR ) она давала приводу, высчитывает по сигналам энкодера где на сегодня стоит портал.
Логику включите!!! Как можно иначе понять где ваш инструмент!

vti:

Soling, Вы же, вроде, умный человек. Ну оказались не правы, ну промолчите если не признаете-)). Но под дурочка то зачем? Ну удивили-)).

А головой подумать - слабо?
В каком месте не прав?
Может Вам стоит скромно промолчать?

chkmatulla

Все верно. Крутятся. Выражение, на сколько передвинул портал, несколько грубовато. Давайте уж везде будем применять понятие шаг. Так вот, сколько шагов и в каком направление, определяет контроллер. Согласны ? Думаю что, да.
Он же и дает команду движку, куда и на сколько повернуться. Согласны ? Думаю что и сейчас, да. Как видишь, энкодер до сих пор без дела. Движок начал крутиться и вот теперь, энкодер начал выдавать сигнал, в каком направлении и на сколько провернулся вал. И если все импульсы отработались, контроллер, а не энкодер, выдает следующую команду. Стало быть, задача энкодера только подтверждать, исполнение двигателем команды должным образом. А уж контроллер сам, на основании этих подтверждений, вычислит, где находится в данный момент управляемая ось и куда и на сколько ее нужно переместить в следующий шаг программы. Надеюсь что и теперь согласен ?

Soling

Возьмите простую систему - двигун - портал.
Есть вводные: двигун НЕ УМЕЕТ видеть до какого места дошел. Это свойство ВСЕХ приводов, кроме шаговых.
Нужна обратная связь, которая даст положение портала. Это энкодер. Он связан МЕХАНИЧЕСКИ с порталом и выдает имульсы СВЯЗАННЫЕ с еремещением портала,

chkmatulla

Опять врете. Это свойство всех приводов. И шаговых в том числе.
А теперь представим, что напряжение в сети пропало. Потом опять появилось. Кто теперь будет определять где и что находится ? Энкодер ? По сигналам контроллера ?
Может наоборот ? Контроллер по любой точке. Например, оператор поставил новую точку отсчета.

Soling
chkmatulla:

Опять врете. Это свойство всех приводов. И шаговых в том числе.
А теперь представим, что напряжение в сети пропало. Потом опять появилось. Кто теперь будет определять где и что находится ? Энкодер ? По сигналам контроллера ?
Может наоборот ? Контроллер по любой точке. Например, оператор поставил новую точку отсчета.

А как с головоЙ?
Если система обесточена она “забудет” всё Вплоть до того где у нее " базовый нуль"
Полжение портала придеться искать базированием по нулю датчиками стола.
Ну ка, проиграйте ситуацию - стаонк включили.
Первое - БАЗА. Любые флэшки бессильны, пока вы не дадите проге инфу о НУЛЯХ.
Задали нуль.
Куда ехать прога говорит сигналом DIR ( направление )
Шаговый знает - 1 шаг = 0,002мм ( к примеру. ) Но у него ШАГ ДИСКРЕТНЫЙ. У коллекторного НЕТ такого. Ему нужно что то, что скажет проге, что нужное уже прошли. Энкодер выдает импульс на ДИСКРЕТ пути. То есть говорит, что портал прошел те самые 0,002мм.
Что тут не понятно?

vti
Soling:

Возьмите простую систему - двигун - портал.
Есть вводные: двигун НЕ УМЕЕТ видеть до какого места дошел. Это свойство ВСЕХ приводов, кроме шаговых.

А кто Вам говорил о «умении двигуна видить до какого места дошел…»? Контроллер получает от программы ( в случае работы с Mach) импульсы, контроллер, согласно этим командам, дает ток на мотор, мотор начинает крутится. На валу мотора или на валу ходового винта ( все зависит от конструкции механики станка), стоит энкодер. Энкодеры тоже есть разные, линейные, дисковые – это по конструкции. И абсолютные или инкрементальные – это по “виду” отсчета. Мы сейчас говорим про инкрементальные . Когда мотор начал крутиться, начал крутиться и энкодер ( дисковый) и с него пошли импульсы на контроллер. Контроллер сравнивает количество импульсов пришедших от программы и с энкодера. 100 с программы 100 с энкодера, значит все нормально. Если не совпало, значит ошибка. А вот теперь, в зависимости от Вашей механики, будет ясно, на сколько мм произошло перемещение при 100 импульсах. Т.е. сколько нужно подать импульсов для перемещения на 1мм или 1 градус или 1 дюйм. Это знает управляющая программа, в конкретном случае Mach, где Вы установили это значение, сколько нужно сделать шагов, для перемещения на одтн UNIT (мм, дюйм, градус).

Soling
chkmatulla:

ке. Например, оператор поставил новую точку отсчета.

Если оператор поставил новую точку отсчета - сместил ноль стола, он может спокойно, не тратя сил и времени, выкинуть заготовку в корзину.
Конечно, если это смещение не прощитано заранее. Чего, обычно не делают. Пляшут от БАЗОВОГО нуля, который не меняют. Смысла нет.
Все это действительно при условии что датчики нуля стола не дают погрешности. Таких я видел мало. Если они врут - в корзину.

vti:

А кто Вам говорил о «умении двигуна видить до какого места дошел…»?

Так. Отделяем мух от котлет.
ШАГОВЫЙ двигатель УМЕЕТ видеть положение. Его шаг - точное расстояние по оси.
Сделал 100 шагов ( это прога задает, сколько на 1мм надо шагов. Вот и видит. ), получил 0,5мм смещения.

ВСЕ остальные делать этого не могут. Им нужна обратная связь - ЭНКОДЕР.
Исключение - линейные двигатели. У них положение зависит от напряжения питания.
Коллекторные и синхронные или асинхронные не чувствуюти места. Они только крутят.

И чтобы было понятнее. Программа обработки дает только координаты точек ухода - прихода. Как туда идти - просчитывает прога управления. Она же контролирует перемещение инструмента в зависимости от заданных настроек. В ни х входит и количество шагов на 1мм для шаговых и количество импульсов энкодера для остальных. Прочувствуйте связь!
В первом случае - даем шаги. Во втором - получаем их.
Ну, что тут такого непонятного то???

vti
Soling:

ШАГОВЫЙ двигатель УМЕЕТ видеть положение. Его шаг - точное расстояние по оси.

Да что Вы говорите-)) Может у ШД глазки завелись?-))) Он на линейку смотрит? Шаговый мотор умеет только одно: на поданный импульс, сделать шаг. Но он может это шаг и не сделать. По любым причинам. А их ( причин) много. Поэтому мы примерно знаем, что шаговый мотор сделал нужное нам количество шагов. И все!!! Нет у шагового мотора ГЛАЗОК-)))

Soling
vti:

Да что Вы говорите-)) \

То что есть, то и говорю.
Если ломает посмотреть паспортные данные шаговых не моя вина. Но, могу помочь - угол шага СТРОГО оговорен. Если когда нибудь изучали геометрию - угол поворота строго связан с линейным перемещением по радиусу шкива или винта. Сделать выводы о СТРОГОМ перемещении по оси станка сможете? Или разжевывать?
Дайте 10 импульсов на двигун - он сделает 10 шагов. Нет - думать надо головой, прежде чем нагружать его свех меры. Он железный. Ему не прикажшь - паши. Соблюдать надо условия а не выжимать три лошади из одной. Тогда и пропускать шаги не будет.

Вообще то тема не об то.
Схема станка с не шаговыми приводами проста. Есть привод, который в случае работы с mach работает с сигналом DIR и STEP . При этом доминирует сигнал STEP. То есть, при его наличии на двигатель подается питание. DIR же только определят его полярность. Наличие сигнала STEP прога Mach выдает по данным энкодера, который определяет по факту положение портала относительно нуля стола.
Остальные схемы порождены полным непониманием логики работы системы и к рассмотрению не пригодны.
( Желающим почесать пальцы о клаву советую ознакомиться с мануалами прог упарвления станками. )
Удачи!

vti

Повторяюсь. Для сильных-))
Шаговый мотор, может сделать нужное количество шагов, а может и не сделать ( не 0.9 градуса не 1.8 градуса и т.д.). И не обязательно его нагружать сверх меры. Может провод отломаться-)), может компьютер «сбойнуть», может электричество «скакнуть». Причин много. Могу еще привести примеры. Теория вероятности есть. Хороший пример, фильм « Четыре комнаты», Тарантино, сцена с зажигалкой.
И не скажет шаговый мотор где он сейчас находится-)).

Soling
vti:

И не скажет шаговый мотор где он сейчас находится-)).

А Вы поставьте энкодер в пару с шаговым. Тогда он скажет, сделан шаг или нет.
Хотя из практики такой паранои не встречал. Просто нормально рассчитывают возможности двигуна и… ну не парятся. Даже при прямом приводе на винт с шагом в 5мм получается 50 кг на инструмент. Это как надо упереться, что бы пропустил шаги??? ( А главное - на хрена? )

vti

Так я энкодер на серво ставлю-)). На шаговые - только для MPG, своего изготовления. А для хобби станков, и ШД без энкодера, нормально работает. Тут я с Вами полностью согласен.

Soling
vti:

Так я энкодер на серво ставлю-)). На шаговые - только для MPG, своего изготовления. А для хобби станков, и ШД без энкодера, нормально работает. Тут я с Вами полностью согласен.

И об что упор? Пальцы почесать?
Ежу понято - шаговый сам знает куда шагнл. Ему только количество надо шагов. Остальным место знать надо через энкодер. Дальше давить на клаву будем или спать пойдем?

arisov77

Тоже раньше интересовался этим rcopen.com/forum/f41/topic74997. Масh не корретирует позицию по энкодеру, он только для индикации перемещения (в DRO-окошечках). Так что в случае с Мach Вы, Soling не правы. Сервоконтроллеру нужно знать рассогласование, действительную скорость и он эти данные берёт с энкодера. Возможно с другими профессиональными программами энкодер нужен, но тогда выход Step/Dir им не нужен, а только промышленный по напряжению +/-10В и сервоконтроллер тоже не нужен будет, достаточно мощного усилителя постоянного тока, но это уже совсем другая история…

chkmatulla

Мдя-а. Шаговый знает куда приехал. А что тогда про пропуск шагов сказать можете ? Или такой проблемы нет ?

Alexf2a
arisov77:

Тоже раньше интересовался этим rcopen.com/forum/f41/topic74997. Масh не корретирует позицию по энкодеру, он только для индикации перемещения (в DRO-окошечках). Так что в случае с Мach Вы, Soling не правы. Сервоконтроллеру нужно знать рассогласование, действительную скорость и он эти данные берёт с энкодера. Возможно с другими профессиональными программами энкодер нужен, но тогда выход Step/Dir им не нужен, а только промышленный по напряжению +/-10В и сервоконтроллер тоже не нужен будет, достаточно мощного усилителя постоянного тока, но это уже совсем другая история…

Я нашел плату ,которая перекодирует сигнал для шагового двигателя в аналоговый -+10В.
www.cnc4pc.com/Store/osc/product_info.php?products…
Кто-то работал с такой системой или с подобной?
Как к ней подключить оптические датчики?
Будет ли она работать с индуктивными линейками?

arisov77

Alexf2a, Вы «идёте» по моему пути. С этой платкой можно управлять, например скоростью шпинделя. Есть и проще преобразователи ШИМ (от Mach) в +/-10В. Положение ни Mach, ни эта плата не подкорректируют. Если Вы задумываетесь о покупке, то лучше уж приобретите сервоконтроллер, например UHU и энкодер на каждую ось. Кстати, каковы параметры двигателей?

bolt

Соблюдать надо условия а не выжимать три лошади из одной. Тогда и пропускать шаги не будет.

Скорее использовать 3 лошади вместо одной, что гарантирует отсутствие пропусков. 😃

Наличие сигнала STEP прога Mach выдает по данным энкодера,

Как я понимаю, КОНТРОЛЛЕР отрабатывает step по данным энкодера, а Мач тупо посылает отдельные шаги, як в ШД, в надежде, что серва за ним поспевает.
Сервопривод имеет возможности, которые Мач использовать не умеет.