Стартуем в MACH3

Deemann

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

Текст макроса
-------------------
Sub Main

Open “C:\Mach3\SNAPSHOT.txt” For Output As #1

Print #1, “LINE#=”,GetDRO(16)
Print #1, “X=”,GetDRO(0)
Print #1, “Y=”,GetDRO(1)
Print #1, “Z=”,GetDRO(2)
Print #1, “A=”,GetDRO(3)
Print #1, “B=”,GetDRO(4)
Print #1, “C=”,GetDRO(5)
Print #1, “FEED=”,GetDRO(18)

Close #1

End Sub
--------------------------

macropump_snapshot.rar

sotikov

Deemann
 Вам самому не приходилось на деле проверять работоспособность макроса? И каковы результаты (запустилась ли обработка с места останова)?

Deemann
sotikov:

Вам самому не приходилось на деле проверять работоспособность макроса? И каковы результаты (запустилась ли обработка с места останова)?

Приходилось, запустилась. Или скажу иначе, написал я его ещё 2 месяца назад не для проверки работоспособности, а для упрощения “поиска” потерянной позиции станка.
Станок - плазморез, работает в цехе одной из промзон, прилегающей к новостройкам, по сему частенько бывают непредвиденные отключения промышленной электросети.

Типичная ситуация применения:

  1. обесточивается оборудование,
  2. либо начинаем резку с нуля, либо ползаем по столу с рулеткой, для выяснения координат остановки…
  3. ИЛИ до запуска Mach3 открываем файлик “SNAPSHOT.TXT” и видим, например, следующую запись: “LINE#=5323 X=3034.25 Y=1289.50 Z=0 A=0 B=0 C=0 FEED=1200”.
    Думаю, не нужно объяснять, что делать с этими данными, всё очевидно.
    Кстати, работник на плазморезе, особо не искушенный в программировании и чпу, запросто въехал в суть этой фишки и успешно ею пользуется. То есть, для него это “прозрачный” процесс, он думает, что так и должно быть, что это встроенная функция Mach…

Скрипт макроса можно сделать компактнее
-------------------------------------------------
Sub Main
Open “C:\Mach3\SNAPSHOT.txt” For Output As #1 ’ Open file.
Print #1, “LINE#=”,GetDRO(16);" X=“,GetDRO(0);” Y=“,GetDRO(1);” Z=“,GetDRO(2);” A=“,GetDRO(3);” B=“,GetDRO(4);” C=“,GetDRO(5);” FEED=",GetDRO(18)
Close #1 ’ Close file.
End Sub
-------------------------------------------------
В таком виде макрос успешно фунциклирует на моём домашнем чпу, а вот и “спасённая поделка”

1 month later
Agassi

Доброго дня. Подскажите: Создаю деталь в Арткам, после обработки под Мач деталь получается зеркально по оси Х (относительно Арткамовской модели ). Какие нужно изменить настройки в Маче???

dvd-media

Скорее всего в настройках мача (порты и пины) в закладке “мотор оутпутс” поставить галку, например Dir Low Active, или снять ее, если стоИт. Кажется так я инвертировал у своего ось Z.

Deemann:

Может кому тоже пригодится, мне сегодня этот скрипт поделку спас, когда свет рубанули.

Кнопку “спасибо” не нашел. Прими на словах.

Попробую при случае запустить, если разберусь. Может получится когданить использовать. Свет не знаю, а вот разные казусы по моей вине часто происходят, пока учусь.

Марат
dvd-media:

Кнопку “спасибо” не нашел.

где красным выделено

dvd-media

Нету. Есть на некоторых, включая ваше последнее сообщение. Все, что выше - без кнопки.

Сорри за оффтоп.

sotikov
dvd-media:

Нету. Есть на некоторых, включая ваше последнее сообщение. Все, что выше - без кнопки.

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

11 days later
TIPokF1

Здравствуйте.
Такой вопрос: При включении вот этого девайса www.cnc-controller.ru/4k25m-box.html движки пищат. Так должно быть или я что то не так припаял?
Собрал комп из старых запчастей, повесил систему ХР. Оптимизировал её как писалось по моему в этой теме выше. Установил Мач3 крякнутый!
Настроил как описано во всем известном руководстве блуждающем по сети с хорошим переводом.Спасибо автору перевода!
Перед запуском Мача, прогоняю ДрайверТест, на графике всё здорово, ровная линия.
Включаю контроллер подключённый к компу, движки начинают издавать писк, в программе нажимаю RESET, писк прекращается. Жму на стрелки клавиатуры, координаты в Маче изменяются, движки молчат. Так же через Tab в окне управления жму по стрелкам,- движки молчат.
В настройках Motors Outputs пробовал и галочки и крестики ставит в графе Dir LowActive результат одинаковый.
Что я делаю не так?
У моих движков 4 вывода, если поменять местами провода одной из обмоток друг с другом что получится?

Deemann

TIPokF1, распиновку порта контроллера покажите. Смотрим сигнал(ы) “EnableX(YZA)”. имхо как раз его-то(их-то) и надо инвертировать в настройках Масн

TIPokF1

распиновку порта контроллера покажите

Распиновка следующая:
2 - Step X (шаг - импульс положительный)
3 - Dir X
4 - Step Y
5 - Dir Y
6 - Step Z
7 - Dir Z
8 - Step A
9 - Dir A

10- E-Stop (входной сигнал)
11- Home X
12- Home Y
13- Home Z
15- Home A

1 - Реле R1
14- Реле R2

17- Enable (положительный сигнал)

16 - не используется
18-25 -общий,масса.
26 - вывод разъема на плате - минус,общий.

Сигнал STEP \ Enable - сигнал положительный “лог.1”
Сигнал HOME \ E-Stop - сигнал отрицательный “лог.0”
Сигнал DIR - может быть и - и + в зависимости от направления движения.

TIPokF1

Заработало!!!

АлександрСамара
Запросите у производителя файл конфигурации, сразу поможет.

Спасибо! Я до этого ещё месяц бы не додумался!
Запросил настройки, в течении часа получил ответ с настройками.Заменил файл и всё заработало!
Один момент.
Перед этим всем залез всётаки в биос, (я с ним особо не дружу) нашел там строку про LPT порт. На против стояло AUTO, я поменял на 378 как в Маче прописано и всё.

Deemann
TIPokF1:

17- Enable (положительный сигнал)

подавать напряжение на драйверы нужно когда этот сигнал установлен в “0”.
после запуска Масн “РЕСЕТ” должен моргать, тогда даем напругу и отжимаем ресет
При выходе из Масн он сам ставит “0” на Енабле

TIPokF1
Deemann:

подавать напряжение на драйверы нужно когда этот сигнал установлен в “0”.
после запуска Масн “РЕСЕТ” должен моргать, тогда даем напругу и отжимаем ресет
При выходе из Масн он сам ставит “0” на Енабле

Изменил 17-Pin на крестик и мой старый профиль заработал тоже!
Хотя в описании (инструкции по настройке) нарисовано что там должна стоять галочка. Инструкцию мне высылал в месте с контроллером продавец.
Всё сходится, раньше при включении контроллера движки сразу пищал (я об этом писал выше) нажимал Reset и они замолкали. Теперь они начинают пищать после нажатия на Reset. - так должно быть. Всё дело было на 17-pin. =))

AUS16

Всем привет. Помогите пожалуйста решить такую головоломку. В маче на главном экране есть кнопка REF ALL HOME. После ее нажатия оси по очереди начинают ехать домой. Все хорошо.
Но вот в моем случае на оси Х два мотора. ось А подчинена оси Х они вместе ползут до датчика дома. он срабатывает, мотор Х останавливается, а вот мотор А начинает отрабатывать в обратную , что само собой перекашивает портал. Как исправить это дело?

Lodochnik

Датчики по А и по Х должны быть на разных пинах и отдельно от лимитов.

23 days later
AUS16

А есть ли у кого нибудь готовый, рабочий текст скрипта для обнуления длины инструмента. У меня фигня какая то творится, после обновления мача, станок по одному ему известным причинам то подскакивает от пластинки пробника, то протыкает ее …

Lodochnik

Пользуюсь этим:

Message( “Auto Zeroing…” )
If IsSuchSignal (22) Then
code “G31 Z-15 F500”
While IsMoving()
Wend
Call SetDRO( 2, 71.8 )
code “G1 Z80”
End If

В нем F500- скорость опускания шпинделя, 71.8- высота датчика, Z80- высота подъема после касания датчика.

AUS16

Спасибо Олег. Ты меня опять выручил.