WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

wldev писал(а): 25 мар 2023, 19:48 Большинство не использует длины инструментов.
Что с ними не так?
а я "проехал" этот стиль работы и уже обратно не вернусь.
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

wldev писал(а): Я ничего не понял. Мне не надо объяснять зачем это, скажите, что нужно в 2-3 словах. Например.
Нужна возможность....
Нужен параметр.... и всё.
сделайте в "правке" галочку - безопасная высота устанавливается через G28. Я ее сниму, так как устанавливаю эту высоту скриптом и чтобы не было конфликта приходится назначать G28 ниже уровня стола. Это мне вообще не мешает так как я G28 не использую, но это как то неправильно.
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

wldev писал(а): Отключается по Stop если скрипт не активен. На случай если забыли отключить игнор.
если я правильно помню игнор автоматически снимался при начале движения, то есть действовал на одно движение. теперь я вижу что он включен в течении всего скрипта Stop(). А может у меня несколько движений внутри этого скрипта? и вообще игнор не только для Stop нужен.. например нужно запустить УП на исполнение при открытой двери кабинета.
что нужно в 2х словах:
1. функция "игнор-стоп" который отключается автоматически при начале движения и соответственно действует только во время него.
2. то же самое для сигнала проб - она как бы есть - но вы ее упрятали похоже в тело программы, а мне вот нужна своя, скриптовая, кнопка
3. может добавить функцию "статический игнор-стоп". но вот это как раз можно аппаратным тумблером сделать. поэтому если нет то нет.
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

wldev писал(а): Всё старое работает. Если нужно на новом, то конечно нужно править...
нет написано именно на новом с расчетом что кнопки со временем появятся.
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

vtgmfg писал(а): 19 мар 2023, 06:11
vtgmfg писал(а): 17 янв 2023, 09:43
wldev писал(а): Пока незнаю как решить.
а можно сделать пока функцию которая бы осуществляла тычок в кнопку Положение/Home(при закрытой панели)? А если сделать функцию универсальной то можно и кнопку Степ и Стоп организовать из скрипта рабочие 100% а не ущербные и еще много чего для чего функций в скриптах не предусмотрено. единственно надо ключ разрешение нажать кнопку на закрытой панели. и имена или номера кнопок нужны естественно и чтобы они не менялись в процессе развития.
wldev писал(а): Смещение и номер инструмента это всего лишь ячейки памяти. Так повелось...
вообще то это вроде как таблица инструмента и ее строки - это номера инструментов, а не смещений.
может и можно навесить сюда еще какой то функционал без ущерба основному - но уже стало сложнее тупо понимать о чем речь. смещение смещения
wldev писал(а): Так для того чтобы было удобно задавать смещение вы выставляете 1 (базовый шпиндель) в 0,0 и уазываетет G54 X0 Y0 Z0.
почему G54? разве инструмент не в машинной СК?
wldev писал(а): 1 Выбрать смещение . P24 (оно должно подсветится)
без MDI и вообще обращения и правки таблицы - в скрипте
что нужно сделать если Т24 G53 X5. но на самом деле инструмент в 5.001.
полгода жду когда же присутствующая в описании неизвестно с каких пор функция
MACHINE.goDriveFind
наконец заработает.
изза этого несколько месяцев стоит раком мой скрипт хоуминга так как без этой функции получается не продвинутый хоуминг, а какое то уродство. Я уже давно не прошу сделать тот или иной функционал типа коррекция шарика щупа, поддержка тулсеттера, замер диаметра фрезы, коррекция машинной СК, пробинг довести до ума - сам сделаю в конце концов. Да я и раньше не просил каких-то заказного функционала. Только общеполезный насколько помню. Но функции то дайте? И не втягивайте в программу то что ранее управлялось скриптом - изза этого логика скрипта который не вы писали рушится. Особенно если знаете что у когото это точно в скрипте задействовано. Зачем вообще то что можно вынести в скрипт и там бы каждый увидел логику - прятать в тело программы? у вас же есть механизм апдейта скриптов из программы?

Так же не решена и вряд ли решается проблема со Step из скрипта. опять же есть 2 варианта - через управление кнопкой (в том числе и при закрытой панели) и через MACHINE.runGProgram() - добавить элемент окончания движения. это ерунда конечно. но скрипт у меня полгода или может больше недоделан - c неработающей кнопкой.. но функция то получилась бы весьма полезная не только для реализации Step

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

И функцию чтобы взять номер программы (то что после буквы О). Это прошу недавно, неделю всего, и это пожалуй тот редкий случай когда не всем понятно накой этот номер вообще нужен. Да - я могу его вытащить заставив ПП выдать его в формате понятном скрипту, да и то недокументированным способом . это подождет, но так делать это уродство.
продолжаю ждать простой казалось бы вещи - запуск хоуминга функцией из скрипта. наверное можно было было бы повесить какую то внешнюю программу которая бы распознавала кнопку "хоум" и действовать как то через жопу. но вот беда в том что панель эту, где кнопка хоум, я и хочу закрыть. жду уже более полугода.

какие то другие проблемы решились окольными путями, универсальный диалог вот появился хоть тач все равно не поддерживается - а с хоумом както беспросветно.
Cvazist
Мастер
Сообщения: 1080
Зарегистрирован: 16 окт 2017, 16:07
Репутация: 85
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение Cvazist »

Как задать смещение для щупа на штанге относительно оси шпинделя?
За ранее благодарю за реальные ответы.
Вложения
PXL_20230515_111831997.MP.jpg (560 просмотров) <a class='original' href='./download/file.php?id=207823&sid=9e67464f3047a8ab8ae4ce9003dce743&mode=view' target=_blank>Загрузить оригинал (1.48 МБ)</a>
Аватара пользователя
wldev
Мастер
Сообщения: 1639
Зарегистрирован: 24 янв 2012, 16:04
Репутация: 510
Настоящее имя: Сергей Бочаров
Откуда: Новосибирск
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение wldev »

Сделал видео про смещения. В телеграмм канале... заливаю
Новости: https://t.me/wldevruch
Обсуждения: https://t.me/wldevgr
Vytos
Кандидат
Сообщения: 72
Зарегистрирован: 13 ноя 2018, 18:03
Репутация: 3
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение Vytos »

М97-> М99 в принципе не умеет? Или как?
Аватара пользователя
wldev
Мастер
Сообщения: 1639
Зарегистрирован: 24 янв 2012, 16:04
Репутация: 510
Настоящее имя: Сергей Бочаров
Откуда: Новосибирск
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение wldev »

Vytos писал(а): 11 авг 2023, 04:07 М97-> М99 в принципе не умеет? Или как?
Подпрограммы пока не поддерживаются..
Новости: https://t.me/wldevruch
Обсуждения: https://t.me/wldevgr
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

function M30()
{
//SCRIPT.runFunction("M30A()")
SCRIPT.setTimeout("M30A()",5000)
//SCRIPT.runFunction("Test_Mode_Menu()")
}

// как вот тут закончить выполнение программы с точки зрения WLMill?
// чтобы сбросился прогресс индикатор и остановился таймер времени выполнения УП
// УП чтобы осталась загружена
// а потом автоматически запустилась функция-диалог как поступать дальше c файлами и тп.
// как сделать разрыв тут. можно выйти совсем и нажать кнопку. тогда получается. но я не понимаю почему это нельзя организовать программно.
// иначе приходится этот диалог вставлять в M30 и выходить из него коряво через SCRIPT.includeFile("/Custom/Auto.js")

function M30A() // функция с диалогами про то что делать дальше
{
Vytos
Кандидат
Сообщения: 72
Зарегистрирован: 13 ноя 2018, 18:03
Репутация: 3
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение Vytos »

wldev писал(а): 11 авг 2023, 16:15 Подпрограммы пока не поддерживаются..
Какая досада... Только начал знакомиться с продуктом. А скриптами некое подобие закостылить нельзя?
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

а как вы начали знакомиться - без контроллера особо не разгуляешься. такой симуляции нет.

да вроде нет ограничений запускать в автоматическом режиме разные УП из самодельного JS скрипта - по крайней мере держу в уме возможность такую как альтернативу одной "склеенной" УП. из САМ можно и так и так сохранить , но на момент отладки короткие УП удобнее. почему бы так и не использовать в итоге? опять же можно какую то операцию выкинуть удалив файл из директории например. И в принципе можно свалить все УП в одну директорию и ее и запускать. только нужен признак кто за кем. например номер в имени файла. причем номера можно делать типа 10,20,30.. понятно зачем..

соответственно и циклы можно реализовать из УП, но будет некоторый тормоз на время загрузки следующего файла.
А вот разбирать готовую УП с циклами скриптом не получится.
Vytos
Кандидат
Сообщения: 72
Зарегистрирован: 13 ноя 2018, 18:03
Репутация: 3
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение Vytos »

vtgmfg писал(а): 12 авг 2023, 12:35 а как вы начали знакомиться ...
Станок есть. Собран на этом хозяйстве. Работает. Пара юных дилетантов режут на нем. Но.. Хотелось бы вместо нескольких монструозных уродцев по 50к+ строк иметь ОДИН элегантный код всего на пару сотен строк, который подходил бы для нескольких вариантов резки. Возможность использования подпрограмм это легко дала бы реализовать.
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

Vytos писал(а): Хотелось бы вместо нескольких монструозных уродцев по 50к+ строк иметь ОДИН элегантный код всего на пару сотен строк,
ну а что это дает? 50к строк ну это типа мегабайт.. когда этот Gcode сочинили (~1980г) мегабайт стоил $20 000. понятно зачем были нужны все эти циклы..
Vytos писал(а): ОДИН элегантный код всего на пару сотен строк
ну тогда время загрузки подпрограммы загруженной и запущенной скриптом как отдельная УП невелика и тормоз можно и не заметить. вот попробовал сколько грузится 400000 строк 8МБ УП - ну где то 600кб/сек на компе с SSD i5. ну а 200 строк значит 4кб и типа 7мс.. ну не знаю..
Vytos
Кандидат
Сообщения: 72
Зарегистрирован: 13 ноя 2018, 18:03
Репутация: 3
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение Vytos »

vtgmfg писал(а): 12 авг 2023, 21:43 ну а что это дает?
Ну, например.
Есть большая заготовка, из которой режется куча небольших деталей. Просто 2D. Сам контур простой, один проход по контуру порядка 80 строк. Заготовка толстая, полностью деталь режется за 15 проходов контура. Получается что? - тупо копипастим те 80 строк и вставляем между этими блоками изменение Z. Итого уже 1200+ строк. А можно было бы добавить всего 30 строк (изменение Z и вызов подпрограммы). А если надо чуть подправить контур? - правим контур и по новой копипастим... Гемор.
Заготовки разного размера - из одной заготовки режется 10-20-30-40 деталей. Опять копипастим всю кучу?... и получаем код на десятки тысяч строк. Заготовки разного размера - из одной 10 деталей выйдет, а из другой 40. Подходить к станку и запускать 4 раза код под 10 деталей, каждый раз выставляя новый "ноль"? Или иметь несколько файлов - под 10-20-30-40-ххх деталей и при каждой смене заготовки подгружать свой? Да, можно, сейчас так и делается. Гемор и трата времени... Проще в коде прописать несколько строк со сменой СК и запуском подпрограммы. А подправить контур в этом случае? Ууууу.....

Новую детальку запустить - опять такого же многотысячестрокового монстра лепить? А можно взять ту же основу и заменить только блок самого контура в подпрограмме.

Ну да, можно в САМ-е накопировать контуров и он нам этого монстра сгенерит. Но, опять же, на каждый чих - новые копипасты и новый монстр.

Затраты времени на подготовку и, особенно, вероятность ошибок при таком подходе - много больше.

А вот время загрузки в программу файла с кодом - 7мсек или 70 сек - вААще пофиг, как и размер файла. :hehehe:

P.S. Чего оно ко мне пристало с этим "А это случаем не спамер?" :thinking: Не он я, не он. :lol:
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

Vytos писал(а): P.S. Чего оно ко мне пристало с этим "А это случаем не спамер?" Не он я, не он.
это видимо всем "новичкам" такое голосование
Vytos писал(а): опять такого же многотысячестрокового монстра лепить?
ну а как это напрягает? в КАМ( наверное не во всех) можно размножить траекторию вдоль и поперек- ну тыщи строк- ну и что? можно подумать в компе память не используется варварски.
если деталь простая -то и генерация быстрая. я вообще не храню и не планирую хранить или тем более бг упаси редактировать или копипастить УП - это рискованно кмк.. есть модель и в ней кам-операции. нужно будет повторить - сгенерю что нужно..
Vytos
Кандидат
Сообщения: 72
Зарегистрирован: 13 ноя 2018, 18:03
Репутация: 3
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение Vytos »

vtgmfg писал(а): 13 авг 2023, 00:13 ну а как это напрягает?
Ну я же написал выше - "Затраты времени на подготовку и, особенно, вероятность ошибок при таком подходе - много больше."
vtgmfg писал(а): 13 авг 2023, 00:13 если деталь простая -то и генерация быстрая. я вообще не храню и не планирую хранить или тем более бг упаси редактировать или копипастить УП - это рискованно кмк.. есть модель и в ней кам-операции. нужно будет повторить - сгенерю что нужно..
Порой для совсем простой детальки быстрее и проще набрать код в Блокноте, чем лепить модель в CAD/САМ-е. :hehehe:
Детальки на потоке, не разовые мероприятия. Деталь нарезаются оптом на склад для производства и потом УП откладывается на неделю-месяц-два - конечно храним УП, не генерить же каждый раз снова. :)
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

загрузка, проверка и отрисовка (1) УП в программу
MACHINE.loadGProgram(полное имя УП,1)

запуск программы с элемента 0
MACHINE.runGProgram(0)

ну и дальше средствами JS можно циклить.
а вот смещения СК средствами Гкода вроде нет. но опять же можно скриптом это организовать или использовать для каждой копии свою СК до 105шт.
Vytos писал(а): Затраты времени на подготовку и, особенно, вероятность ошибок при таком подходе - много больше.
нет не могу согласиться что вероятность ошибки и трудоемкость при ручной организации мультиплицирования ниже чем когда это делает комп. и там не только прямоугольную сетку одинаковых деталей можно (солидкам например), а какую хочешь.
Vytos
Кандидат
Сообщения: 72
Зарегистрирован: 13 ноя 2018, 18:03
Репутация: 3
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение Vytos »

vtgmfg писал(а): 13 авг 2023, 07:59 загрузка, проверка ...
...
MACHINE.runGProgram(0)
Ага. Попробуем. Разберемся. Наверное.
vtgmfg писал(а): 13 авг 2023, 07:59 а вот смещения СК средствами Гкода вроде нет
G52 - локальная система координат
vtgmfg писал(а): 13 авг 2023, 07:59 нет не могу согласиться что вероятность ошибки и трудоемкость при ручной организации мультиплицирования ниже чем когда это делает комп. и там не только прямоугольную сетку одинаковых деталей можно (солидкам например), а какую хочешь.
...
N100 G54
N110 M97 P1000
(Деталь размером 80 мм по Y. Между деталями 20мм.Смещаем СК на 100 мм)
N120 G52 X0 Y100
N130 M97 P1000
(Деталь размером 40 мм по Х. Между деталями 20мм.Смещаем СК на 60 мм)
N140 G52 X60 Y0
N150 M97 P1000
N160 G52 X60 Y100
N170 M97 P1000
(Возвращаем СК на круги своя)
N180 G54 ;Ну или N180 G52 X0 Y0
...
N333 M30

(Начало обработки контура. Отлажено и не трогается)
N1000 G01 X35 Y 74 F1000
.....
N1100 M99
Вот и все мультиплицирование. Добавили 6 строк в код и получили вместо одной детали - четыре. Чем это хуже раскладывания копий в CAM-е и генерации нового кода? Вероятность ошибки невелика, а по времени - да Solid запускаться будет дольше, чем эти 6 строк набрать.:) Ну, если мозги станка умеютт тот G52, конечно. ;) Вот тоже, кстати, вопрос - а умеет ли?
Я, конечно, ну совсем чайник в ЧПУшном деле, и отдаю себе в этом отчет. И если принципиально не прав в таком подходе - просветите. (Впрочем, это будет уже совсем флуд не по теме.. :think: )
vtgmfg
Мастер
Сообщения: 1438
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 53
Настоящее имя: Максим
Контактная информация:

Re: WLMill (Windows/Linux (Qt) + WLMotion) - управление фрезерным ЧПУ

Сообщение vtgmfg »

Vytos писал(а): если мозги станка умеютт тот G52, конечно.
не умеют они g52 почему то. Но раз уж все равно в скрипты лезть - то это можно в скриптах реализовать. просто G54 будет перемещаться.
можно там же сделать меню где все параметры задавать. чтобы не править скрипт каждый раз и если сетка прямоугольная.
даже может это все и удобнее даже так как УП будет именно для одной детали.
можно думаю даже в меню сделать иммитацию как будто параметры G52.
Vytos писал(а): это будет уже совсем флуд не по теме..
да норм. тема все равно мертвая. почему то разработчик перестал выносить все на всеобщее обозрение
Ответить

Вернуться в «Windows / Mach»