mach3

toxa

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

26 days later
Stoun
JudgeBod:

А сигнал с энкодера загоняется в Мач а уже он корекцию на обороты вводит для ШИМ шпинделя

А нельзя ли подробнее, как и куда подключается энкодер для шпинделя в токарном варианте? На какие ноги порта? И как Мачу указать, что у него энкодер именно на шпинделе висит?
Я уже все настроцки облазил. Если подключить как MPG то работает. А как заставить энкодер за оборотами следить?

Creolka

Есть там во входах бяка под названием “индекс” - вот как-раз она и отслеживает обороты и для резьбы то же нужна. Вообще там три способа управления шпинделем, на выбор.

Stoun
Creolka:

Есть там во входах бяка под названием “индекс” - вот как-раз она и отслеживает обороты и для резьбы то же нужна. Вообще там три способа управления шпинделем, на выбор.

Ага, так ему sin cos не нужен? Он только импульсы считает без учета направления?

Stoun

Попробовал. Действительно работает. Спасибо.
В доке написано, что длительность импульса должна быть не меньше 200мкс. Я брал ВЕ-178 и нулевой сигнал с него. До 1000 об/мин еще Мач еще работает. Дальше импульсы пропускает. Сейчас попытаюсь оптопару с колесиком от мышки прикрутить. И щели проковырять потолще.

ReGet
Creolka:

И ещё. Практически не работает на “буках” почти любой модели, почему? Не знаю.

Запускал станок под 3мя разными буками, как простыми, так и hi-end’овыми - работает и mach2 и mach3 идеально 😒

Creolka
Stoun:

В доке написано, что длительность импульса должна быть не меньше 200мкс. … До 1000 об/мин Мач еще работает. Дальше импульсы пропускает. Сейчас попытаюсь оптопару с колесиком от мышки прикрутить. И щели проковырять потолще.

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

Stoun
Creolka:

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

Уже читал. Внутренности от мышки не прокатили. Сейчас как раз выпиливаю из текстолита. 5 отверстий 3мм и одно 6мм. Кстати в мануале маленькое несоответствие. Сказано, что одно отверстие должно быть в 1.5 раза толще, а в примере взято в 2 раза. Я так понимаю, что 1.5 раза - это минимальная, а делать можно и больше. Часика через три отпишусь о результатах

Stoun

Как-то странно оно работает. Обороты показывает, ПИД как-то работает, управленпие ШИМом тоже работает. Но в автокалибровке шпинделя всегда висит 1 Pulse per revolution. Хоть у меня на диске 5 мелких и 1 широкое отверстие (по формулам считал). А когда заклеил все и только одно оставил, то более осмысленно стало. Может Мачу еще где-то указывать надо сколько отверстий на диске? Вроде все перерыл, а нету таких установок.

Creolka

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

Stoun
Creolka:

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

Общие установки это где? Имелось ввиду два окошка для ввода цифирок? По крайней мере таких с х40мкс я не нашел. Есть только в Config - Logic окошки с надписями Input Debouce Interval = 500 и Index Debounce = 100. Может это оно и есть, но на число отверстий датчика оно не влияет. Скорей оно определяет период и время опроса входа Index. Реально я менял от 0 до 10000 - никаких изменений не заметил.

И еще лажа… Если я запускаю цикл нарезания резьбы и вручную торможу шпиндель или даже отключаю датчик, то подача по Z не изменяется, как шло так и идет. А она должна зависеть от оборотов шпинделя. Единственное что происходит это выскакивает сообщение No spindle feedbeck… и звук в динамиках. А это же в работе сломаный резец и запорченая деталь. Так нельзя!!!

Stoun

О, нашел в документации. Вход Timing используется если на датчике много отверстий. Попробовал, действительно пытается автоматически определить сколько именно отверстий, но нужно более качественно формировать сигнал.

А лажа с подачей на оборот все-равно осталась 😦(
Может Мач так не умеет управляться?

Creolka

Хай!
Мах, умеет.
Да, так не должно быть!
На практике никому в голову не придёт останавливать шпиндель руками.
ЭТО НЕ ШТАТНАЯ СИТУАЦИЯ!

Шпиндель чем управляеш? Скорость чем меряеш?

То про что я писал выше служит для подавления помех в системе слежения.
Своего рода “подавитель резонанса”, если можно так выразиться.

Stoun
Creolka:

Хай!
Мах, умеет.
Да, так не должно быть!
На практике никому в голову не придёт останавливать шпиндель руками.
ЭТО НЕ ШТАТНАЯ СИТУАЦИЯ!

Ну руками шпиндель конечно никто останавливать не будет. Но нештатные ситуации возможны: неисправность датчика, формирователя импульсов, привода шпинделя, механические повреждения типа клина в подшипниках или шестеренках, да мало ли чего еще может произойти. В любом случае обороты шпинделя будут отличаться от заданых или совсем остановится, а Мах как резал так и режет - каюк детали и резцу!

Шпиндель чем управляеш? Скорость чем меряеш?

Пока все это дело на столе лежит. Шпиндель - небольшой моторчик с диском на валу. Управляется Н-мостом + IR21844. на них подаю ШИМ прямо с ЛПТ. Обороты меряю по осциллографу (частота с датчика х 60 / число отверстий) и тахометром. Все измерения точно сходятся с реальными показаниями RPM Macha. Если включить внутрений ПИД регулятор, то обороты стабилизируются, все как и положено.
По оси Z шаговик тоже на столе. Обороты меряю по частотомеру (тактовая частота х шаг винта х 60 / 400) и тахометром. Тут тоже все сходится.

То про что я писал выше служит для подавления помех в системе слежения.
Своего рода “подавитель резонанса”, если можно так выразиться.

Ну да, я так и подумал. Но тут лучше аппаратно все сформировать и отфильтровать, затраты мизерные, но качество на много лучше.
Вчера накачал документации с сайта, сижу пыхчу… может и нарою чего.

Stoun

После экспериментов с датчиком и скоростями оказалось, что подача по Z таки зависит от оборотов шпинделя при нарезании резьбы. Но как-то криво это сделано. Обороты измеряются в момент захода резца на траекторию резьбовой канавки и в зависимости от них выставляется подача по Z. Если я ДО ЭТОГО приторможу или раскручу датчик, то реакция будет более-менее осмысленной. Если же остановка датчика произойдет ПОСЛЕ выхода резца на начало канавки, то ничего не изменится и резец полетит по канавке с заданой скоростью даже еслои шпиндель совсем остановится.
Наверное все-таки это глюк Маха…

И еще непонятка. В Установках Шпинделя есть 4 поля для выставления задержки его раскрутки и остановки. Я использую еще сигналы М3 М4. При выключении шпинделя сначала снимается задание ШИМ, а потом с задержкой снимается команда М3 (М4). Это есть гут, мне так и надо. Но при включении, и ШИМ и М выставляются одновременно, хотя лампочка Dwell исправно горит и показывает задержку. Это же не хорошо!!!

И в макросе пробовал прописывать строчки:
Call Code ("G04 P5 G0 X50) - через 5с Х едет в точку 50
Call Code ("G04 P5 S50M03) - обороты включаются сразу без задержки

Creolka

Начнём с простого.
Разгон/торможение через ШИМ - плавное наростание или падение оборотов. (посмотри на осцилографе длинну импульса)
М3; М4 - ВКЛ/ВЫКЛ шпинделя.
Если подать ШИМ без М3/М4 то никакого разгона не будет, мотор-то не включён!
Поэтому вместе.

Теперь про скорость.
Допустим S 500 - для обеспечения этих оборотов задаётся определённая длинна импульса. (коню понятно)
НО! мотор инерционная система и при малых временных отрезках он не в состоянии отреогировать адекватно.
Электроника делает своё дело, а механика нет, не успевает.
Есть два пути.
Понижение базовой частоты, для Мах рекомендовано в диапазоне 2-5 Герц.
Мощный, хороший двигатель и регулятор с обратной свяью по току. Хоть и дороже, но лучше.
Первый вариант используют чаще т.к. подбирают под то что есть.

З.Ы.
В каком режиме мучаеш?
Метры/мин или мм/об?
Если первое то Мах будет подгонять обороты, если второе то подачу. (если память не подводит)
И давай не штатные ситуации не принимать во внимание, грешно плакать о копеечной детали если станку хана.

MRoman

Приветствую Вас многоуважаемый ALL!
Позвольте задать пару вопросов.
Прикрутил я тут Mach3 для управления лазерным станочком на XPюшу (SP2). Все работает прекрасно, да вот беда: выяснилось, что во время работы происходит смешение нуля (равномерно по X и Y). Скажу сразу, это не пропуск шагов - не зависит от скорости обработки. На небольших изделиях - не критично, а вот когда идет длительная (по расстоянию) обработка - косяк. При работе по времени, скажем, 5мин - смешение составляет 1мм, т.е. при количестве шагов 214/мм - где-то 40 шагов/мин. Где покопать? Кто опрашивает порты? Делает ли такую гадость сама Винда, либо какой злобный вирь? Зависит ли это от установок LPT (SPP, ECP и т.д.)? Может кто сталкивался с подобным? Если прикрутить второй контроллер LPT2 может ли исчезнуть проблема? Я понимаю, вопрос, конечно, пальцем в небо (полагаю, что причин может быть до черта), но может кто имел такой же гимор, - как боролся. Есть желание переставить ХРюшу на 2000 - имеет ли смысл? (Честно говоря, до сих пор не добрался с осциллом до машины, осцилл-большой и в одном месте, а установка с мачем - в другом 😉 ).
2) У заказчика имеется желание, чтоб Mach после окончания обработки файла подавал звуковой сигнал. Как бы это реализовать?

Stoun
Creolka:

Начнём с простого.
Разгон/торможение через ШИМ - плавное наростание или падение оборотов. (посмотри на осцилографе длинну импульса)
М3; М4 - ВКЛ/ВЫКЛ шпинделя.

Не, ну это понятно…

Если подать ШИМ без М3/М4 то никакого разгона не будет, мотор-то не включён!
Поэтому вместе.

А вот здесь поподробнее, плз. Разгон шпинделя задается на вкладке Config - Motor Turning - Spindle так же как и для шаговиков? У меня по шпинделю никакой реакции на эти параметры.
Я имел в виду не плавный разгон (хотя это тоже бы не мешало получить), а задержку подачи ШИМ после включения сигналов М3 М4. Вот что, например, означают установки General Parametrs на этой вкладке?

(В предыдущем посте я писал, что происходит с задержками при включении и выключении)

Понижение базовой частоты, для Мах рекомендовано в диапазоне 2-5 Герц.

Это параметр PWM Base Freq. ? (рисунок выше)

В каком режиме мучаеш?
Метры/мин или мм/об?

Я так понимаю, что эти режимы переключаются по G94 G95 ? Гонял и так и так. Цикл резьбонарезания генерил прямо в Махе. В сгенерированной программе изначально ни G94 ни G95 не было, сам уже добавлял. Но никакой разницы не заметил.

И давай не штатные ситуации не принимать во внимание, грешно плакать о копеечной детали если станку хана.

Да я может бы и не принимал. Заказчик требует. Как пример приводит другие ЧПУ под которыми шпиндель можно даже руками медленно вращать, а Z синхронно едет или стоит. И мне теперь нужно аргументировано объяснить можно так же сделать в Махе или нельзя

Stoun
MRoman:

… во время работы происходит смешение нуля (равномерно по X и Y). … При работе по времени, скажем, 5мин - смешение составляет 1мм, т.е. при количестве шагов 214/мм - где-то 40 шагов/мин. …

В первую очередь проверить все установки, особенно число шагов на мм. Т.к. цифра 214 наводит на мысль, что шаг винта + редукция не совсем целое число, а при округлении естественно возникает погрешность, которая может накапливаться. Затем проверить “правильность” выдачи импульсов в порт - подключить элементарный реверсивный счетчик импульсов на ЛПТ и сравнить индикацию и реальное значение. Ну и механику станка проверить на люфты и прочие гадости.

  1. У заказчика имеется желание, чтоб Mach после окончания обработки файла подавал звуковой сигнал. Как бы это реализовать?

Создать макрос, например M555.m1s и прописать в нем строчку

PlayWave (“Путь к файлу\Name.wav”)

скобки и кавычки обязательно.
Команду М555 вставить в нужном месте программы и будет звук.

ЗЫ. Может можно как-то и по другому, я не знаю… В настройках есть несколько опций на вкладке Logic, но у меня они не срабатывали.

MRoman
Stoun:

В первую очередь проверить все установки, особенно число шагов на мм. Т.к. цифра 214 наводит на мысль, что шаг винта + редукция не совсем целое число, а при округлении естественно возникает погрешность, которая может накапливаться. Затем проверить “правильность” выдачи импульсов в порт - подключить элементарный реверсивный счетчик импульсов на ЛПТ и сравнить индикацию и реальное значение. Ну и механику станка проверить на люфты и прочие гадости.

Я думал насчет люфтов и прочего округления, но все равно не получается: разве сам Mach не считает эти импульсы? Тогда он совершенно точно должен приходить в свой же “0”. Плыла бы тогда геометрия, ноль же нет. Искать надо, какая гадость выдает лишние импульсы (на Mach3 я не грешу - ибо свят 😎 ). Конечно, надо было бы ставить на голую машину, но - что было, то было. Бум искать.

Создать макрос, например M555.m1s и прописать в нем строчку

PlayWave (“Путь к файлу\Name.wav”)

скобки и кавычки обязательно.
Команду М555 вставить в нужном месте программы и будет звук.

ЗЫ. Может можно как-то и по другому, я не знаю… В настройках есть несколько опций на вкладке Logic, но у меня они не срабатывали.

О-о-й! За это - премногий СЕНЬКС! А вообше, по VBA, применительно к Mach, существует какой-нибудь мануал, help? Так-то я с васиком давненько балуюсь (для Corel, в частности). А вот интересно было бы по Mach почитать.

Stoun
MRoman:

Я думал насчет люфтов и прочего округления, но все равно не получается: разве сам Mach не считает эти импульсы?

Не понял…

Тогда он совершенно точно должен приходить в свой же “0”. Плыла бы тогда геометрия, ноль же нет.

Это как ? Используется выход в 0 по нулевым концевикам? И что, не попадает?

Искать надо, какая гадость выдает лишние импульсы (на Mach3 я не грешу - ибо свят 😎 ). Конечно, надо было бы ставить на голую машину, но - что было, то было. Бум искать.

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

О-о-й! За это - премногий СЕНЬКС! А вообше, по VBA, применительно к Mach, существует какой-нибудь мануал, help? Так-то я с васиком давненько балуюсь (для Corel, в частности). А вот интересно было бы по Mach почитать.

На сайте производителя есть кнопка Tutorials. Там полно всякой документации. В файлике Customising есть трошки по макросам и по интерфейсу