mach3

AlexSpb

вывод энкодер + шаговик = несовместимы.= лажа

Жаль Роланд об этом не знает.
Таки лепят лажу. 😁

Soling
GOOD:

GOOD DAY

вывод энкодер + шаговик = несовместимы.

GOOD LUCK

Во как!
А это ничего, что шаговый двигатель, при использовании соответствующей схемы, может крутится постоянно, как обычный движок? При дискрете шага меньшем, чем дискрет энкодера точность позиционирования будет не хуже, а может и лучше, чем с нешаговым.
Другое дело, что это просто не нужно в большинстве случаев. Шаговики изначально создавались для систем точного позиционирования. Применение энкодера с ними оправдано только необходимостью контроля. Например в системах, в которых возможна аварийная ситуация невыполнения шага. Например при заклинивании и каретки. В этом случае энкодер просто сообщит, что объект на место не прибыл и имеется аварийная ситуация. Но, это уже на уровне параноидального желания создать супер надежную систему. Или при неуверенности в возможностях механики. ( Как в случае с Роландами 😁 )

AlexxxMksv

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

Baha
AlexxxMksv:

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

Вот шаговик с энкодером и драйвером на горбу. Такой у меня есть, пока еще в дело не пускал.

AlexxxMksv

красивый шаговик. Но только как его работа будет выглядить с прогой МАСН???

mobiserv

А какая разница мач, не мач? Степ, дир, он понимает, почему бы ему с мачем не работать? 😃

Creolka
GOOD:

логично предположить

  1. step энкодера < step перемещения шагового двигателя = лажа
  2. step энкодера = step перемещения шагового двигателя = вроде как должно работать, но чудеса они случаются
  3. step энкодера > step перемещения шагового двигателя = лажа
    вывод энкодер + шаговик = несовместимы.

Весьма любоопытно наблюдать за такими вот высказываниями!
Гораздо логичнее будет для начала разобраться в вопросе: “Как работает система снабжёная энкодером?”
Для “наводки” скажу что есть ВСЕГДА! два типа координат:

  1. Текущая координата - то место где находится инструмент в данный момент.
  2. конечная координата - то место куда должен прибыть инструмент.
    Не путать с координатами стола, детали, машины!
    Вот когда с этими пунктами разберётесь - тогда и скажете: “вывод энкодер + шаговик = несовместимы”
    или “Извените заблуждался”.
Soling
AlexxxMksv:

однако ни кто пока не похвастался реализацией енкодер+шаговик.

Не хвастают, по простой причине. Грамотно просчитанный станок имеет запас надежности, позволяющий быть уверенным в выполнении работы. Если такой уверенности нет, значит станок не подходит для нее. Либо режимы обработки подобраны не верно. Наличие этого запаса делает обратную связь по энкодеру сложным и недешевым излишеством.
Оправданным оно становится только на сверх точных работах абсолютно не допускающих отклонений. Что, согласитесь, в деле моделизьма не встречается.

AlexxxMksv:

красивый шаговик. Но только как его работа будет выглядить с прогой МАСН???

Работает это просто. Шаг мотора - сигнал с энкодера. Нет сигнала - повторяем шаг. Прошла серия повторений - пишим аварию и отключаем систему.
Реализуется все как и остальные функции в Маче. Находим в мануале номер пина энкодера ( они отличны от номеров на раземе и имеют название. ). Затем пишим функцию обработки сигнала энкодера. Усё.
😃

Creolka:

Шаги на энкодерах и моторах должны быть кратными без остатка иначе может возникнуть ситуация “должен-не могу”.

Это можно учесть при обработке сигнала энекодера.

AlexxxMksv
Soling:

Работает это просто. Шаг мотора - сигнал с энкодера. Нет сигнала - повторяем шаг. Прошла серия повторений - пишим аварию и отключаем систему.
Реализуется все как и остальные функции в Маче. Находим в мануале номер пина энкодера ( они отличны от номеров на раземе и имеют название. ). Затем пишим функцию обработки сигнала энкодера. Усё.
😃
Это можно учесть при обработке сигнала энекодера.

ВОТ и хочется обсудить подробнее как это практически;
“”““Шаг мотора - сигнал с энкодера. Нет сигнала - повторяем шаг””"–это жолжна обеспечить прога для управления шаговиками.
я так понял для этого надо написать функцию обработки сигнала энкодера в самой проге,
если я все правильно понял может у кого нибудь есть готовая функцию обработки сигнала энкодера (просьба поделится).

Creolka

В Мах-е есть специальная программка для пересчёта осей.
Она всё делает автоматом, нужно только задать даты и произвести калибровку.
После всего этого шаговики работают в режиме “а`ля сервомотор” и будут крутить
до тех пор пока энкодер не выдаст нужное кол-во шагов.
Теория это хорошо, а теория подкреплённая практикой всегда лютче!

Soling
AlexxxMksv:

я так понял для этого надо написать функцию обработки сигнала энкодера в самой проге,
если я все правильно понял может у кого нибудь есть готовая функцию обработки сигнала энкодера (просьба поделится).

Боюсь не поделятся. Не по жадности а в силу выше изложенных причин. Наиболее реальный путь решения проблемы - самому разобраться и написать. Функции в Маче ( скрипты ) пишутся на VBA. Описание названий сигналов которые используются Мачем есть в мануалах. Отладку в Вашем случае можно провести эмулировав сбой простым отключением двигателя.

Creolka:

После всего этого шаговики работают в режиме “а`ля сервомотор” и будут крутить
до тех пор пока энкодер не выдаст нужное кол-во шагов.
Теория это хорошо, а теория подкреплённая практикой всегда лютче!

Это второй путь. Возможно более простой.
😃

AlexxxMksv
Creolka:

В Мах-е есть специальная программка для пересчёта осей.
Она всё делает автоматом, нужно только задать даты и произвести калибровку.
После всего этого шаговики работают в режиме “а`ля сервомотор” и будут крутить
до тех пор пока энкодер не выдаст нужное кол-во шагов.
Теория это хорошо, а теория подкреплённая практикой всегда лютче!

Я так понял поделились чисто теоретическими знаниями, но и это хорошо, если есть более подробная инфа для специальной программки для пересчёта осей, т.е. где она как ее найти-пощюпать. тогда может кто то и дойдет до практического применения.
Работа в МАСН сильно услажняется отсутствием внятного перевода инструкций.

Soling:

Боюсь не поделятся. Не по жадности а в силу выше изложенных причин. Наиболее реальный путь решения проблемы - самому разобраться и написать. Функции в Маче ( скрипты ) пишутся на VBA. Описание названий сигналов которые используются Мачем есть в мануалах. Отладку в Вашем случае можно провести эмулировав сбой простым отключением двигателя.
Это второй путь. Возможно более простой.
😃

Согласен простая остановка шаговика при ошибке тоже может подойти при некотор случаях, но при условии остановки всех шаговиков сразу и выводе ошибки с инфой в какой оси и на сколко- это возможно???
И прошу для несведующего подробнее о VBA и скриптах.

Sergei-md

Вопрос такой, как в Маче2 настроить контактную пластину, при касании которой фрезой, на индикаторе оси Z установиться толщина этой пластины. К примеру +1.
То есть, проще говоря нужна установка оси Z в 0 детали.

Creolka
AlexxxMksv:

Я так понял поделились чисто теоретическими знаниями,…

Вы поняли не правильно!

Creolka
Sergei-md:

Вопрос такой, как в Маче2 настроить контактную пластину,…
То есть, проще говоря нужна установка оси Z в 0 детали.

Мах 2 - в этой версии корректировка по высоте работает не совсем корректно!
Попытаюсь рассказать на “пальцах” что происходит и как:
Открываем окно Ctrl2
Задаём Тхх -энтер.
Нажимаем на кнопку “Калибровка инструмента”, станок едет в зону замера-смены. (задаётся в установках)
На экране светится окно “Выключить шриндель, Сменить инструмент” - меняем/устанавливаем инструмент.
После установки нажимаем ОК!
Происходит замер расстояния от “HOME” до датчика, затем ось Z поднимается в верх и обнуляется.
Следующий шаг:
В ручном режимме перемещаем инструмент в нужную Вам точку.
В ручном режимме подводим Z на необходимую высоту, я для калибровки использую “паралельку” толщиной 10мм,
подводить фрезу желательно на высоту “паралельки”+ 0.5-1 мм…
Следующий шаг:
Переключаем ручное перемещение в “шаговый” режимм и пошагово начинаем снижать инструмент “до касания”.
В окне “Координаты” по оси Z задаём толщину “паралельки”, в моём случае - 10мм, и нажимаем “ENTER”.
За тем пподнимаем Z на безопасную высоту, 15-50 мм., у кого как.
И последнее: нажимаем на кнопку “смена инструмента” - станок “едет” в зону “смена/замер”, загорается окно “Выключить шриндель, Сменить инструмент” и нажимаем ОК.
Производится замер инструмента и после замера станок возвращается в исходную позицию.
Если Вы не меняли фрезу то окно “крректировка длинны инструмента” НЕ БУДЕТ светиться зелёным и в строке “Н” БУДУТ стоять “нули”!
Если Вы поменяли инструмент то окно “крректировка длинны инструмента” БУДЕТ светиться зелёным и в строке “Н” появится число отличное от нуля.
В дальнейшем нужно использовать ТОЛЬКО кнопку “смена инструмента”, все последующие замены/замеры будут производиться относительно длинны инструмента на котором была произведена калибровка.

Каждый настраивает свой станок по своему!
У меня станок настроен следующим образом:
“HOME”- правый-дальний-верхний угол.
“Машинный” 0 находится в левом-ближнем-нижнем углу (на столе)- это сделанно для того что-бы описать “рабочее поле” станка. Высота оси Z откалибрована относительно стола.
При помощи команды G52 - произвожу смещение координаты “0” на заготовку и дальше всё по плану.
Всё это работает при условии присутствия необходимых компонентов: настройки, датчик, а главное рабочей версии программы!

Sergei-md

Я наверно не правильно задал вопрос.
Мне не надо коректировать под каждый инструмент.
Мне надо тупо нажать одну кнопку, чтоб ось Z стала медлено опускаться к металической пластине, которая лежит на детали. Толщина этой пластины 1мм. Как только фреза коснется этой пластины, ось Z остановиться, показания изменятся на +1мм (толщина пластины) и ось Z поднимиться на +20мм.
Теперь убрав пластину в сторону я буду точно знать, что поверхность детали это точный 0.

Мой “Машинный” 0 также находится в левом-ближнем-нижнем углу.
Мачь2 офиц куплен.

Creolka

Выше я оисал как настроить станок для того что-бы ОН потом “тупо” выполнял то что Вы от него хотите.
В Мах 2, повторяю, кректировка работает НЕ ВЕРНО (через зад если хотите).
Сам алгоритм не верен!
В следующих версиях, начиная с Мах3 ревизион 2-15, замер производится по образу и подобию “настоящих/индустриальных” станков!
Скачайте 15-ю версию и всё будет нормально работать!
Ваша лицензия действительна и для этой версии!
Начиная с 20-й версии применяется другая лицензия из-за того что в Мах встроили САД-САМ программу.

Soling
AlexxxMksv:

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

В обратном порядке:
VBA - Визуал Байсик для приложений. Встраивается и поддерживается многими пакетами. Для того, что бы пользователь мог всавить в пакет свою функцию, которую разработчики не предусмотрели. Или требующую индивидуального подхода.
Скрипт - небольшая программка на этом Бэйсике. По скольку язык этот достаточно мощен ( для данных целей ), можно
написать программу позволяющую обработать данные так, как нужно. Мачь предоставляет доступ ко всем своим элементам. Следовательно вполне реально по сбою, то есть при отсутствии на линии энкодера реакции на шаг, остановить станок и зафиксировать на табло координаты, номер строки или любую интересующую информацию. А поскольку он позволяет запуск с введенного номера строки, можно не повторяя весь цикл обработки продолжить ее после устранения причин сбоя.
Условия для корректного продолжения: надо запомнить координаты рабочего нуля. ( Не путать с нулем станка! )
Концевики осей HOME должны быть надежными и не вносить погрешности. При выполнении этого гарантируется точность
продолжения работы. Ну, конечно, если заготовку не снимали.

Как пример скриптик который лежит под кнопкой *Ref All Home *:
DoButton( 24 )
DoButton( 23 )
DoButton( 22 )
DoButton( 25 )

AlexxxMksv
Soling:

Как пример скриптик который лежит под кнопкой *Ref All Home *:
DoButton( 24 )
DoButton( 23 )
DoButton( 22 )
DoButton( 25 )

СПАСИБО всем попробую

1 month later
appolinari

Подскажите пожалуйста, где в маче задается дистанция, на которую сдвигается фреза при нажатии на клавишу?
Ну, к примеру у меня фреза позицируется по Х У курсорными клавишами и по Z клавишами А и Z.
При нажатии на А фреза поднимается. Причем поднимается на 0.975 мм. Перерыл все настройки…
Где сменить ото магическое 0.975??? 😃