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

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

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

Сообщение Vytos »

Ух, какой косячина.... М30 - КОНЕЦ ПРОГРАММЫ!.. Если в коде УП встретился М30, то все - К О Н Е Ц. КОНЕЦ программы, Конец работы. НЕ ДОЛЖНО быть дальнейшей отработки кода, расположенного после М30. А WLMill берет и фигачит дальше, как-будто так и надо. Косячище вообще.
vtgmfg
Мастер
Сообщения: 1819
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 77
Настоящее имя: Максим
Контактная информация:

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

Сообщение vtgmfg »

а как вы добились этого?)
там вызывается скрипт пустой и указатель переставляется на 0..
---
ну в общем есть такое. указатель переставляется в 0 после скрипта м30. но он видимо не переставляется с учетом указателя общей длины УП, а последний считается игнорируя М30.
но.. это как то не оч большая проблема - это нужно чтобы после М30 оказался еще текст какой то.. это ваши подпрограммы? ну так они не поддерживаются - вот и не рассматривается такой случай. можно попробовать сбросить счетчик актив в скрипте М30

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

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

Сообщение Vytos »

Не имеет значения - "мусор" там после м30 в коде или снова код, который может быть исполнен. Есть м30 - все, СТОП. Никакой дальнейшей обработки быть не должно. Априори. Без всяких частных или общих случаев. Безвариантно.

Как добился? Элементарно - поставь после м30 любое перемещение и оно отработает!.

Банальный пример "частного случая". Из жизни. Есть УП, в которой из одной заготовки режется 6 деталей. Пришла короткая заготовка, влезает только 3. Ну вставил просто м30 в нужнлмместе УП и все. В полной уверенности, что обработка остановится, как положено. Ну не запускать же, в самом деле САМ и переделывать пм модель под 3 копии детали и генерить нлвую УП ради этого! Хорошо возле станка был и успел остановить кнопкой, когда после третьей детали шпиндель поехал.
vtgmfg
Мастер
Сообщения: 1819
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 77
Настоящее имя: Максим
Контактная информация:

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

Сообщение vtgmfg »

вставьте в М30 вот такой суповой набор, вряд ли что то сможет шелохнуться после М30
MACHINE.reset()
MACHINE.runMCode(5)
MACHINE.stopMov()
while(MACHINE.isActiv()) SCRIPT.process()
GPROGRAM.setActivElement(1) // это костыль. старый номер не сработает. нужно передернуть
GPROGRAM.setActivElement(0)
MACHINE.setIndexLastMovElementProgram(0)
vtgmfg
Мастер
Сообщения: 1819
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 77
Настоящее имя: Максим
Контактная информация:

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

Сообщение vtgmfg »

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

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

Сообщение Vytos »

Случай решаем, если пользователь умеет те скрипты программить. Продукт должен адекватно работать БЕЗ подобных костылей. Купил контроллер, поставил софт, настроил датчики-фигатчики-шпиндели-шминдели и вперед работать. Базовые стандартные функции должны работать стандартно же, без подобных сюрпризов.
vtgmfg
Мастер
Сообщения: 1819
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 77
Настоящее имя: Максим
Контактная информация:

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

Сообщение vtgmfg »

этого вам никто не обещал)))
и это кстати не было бы костылем если бы все подобные ситуации по максимуму выносились в скрипты. например М3М4М5 - что там происходит - а хз. при пустых скриптах.
и в любой момент после какихнить исправлений в шпинделе на модбасе перестанет работать правильно мой простой шпиндель. и через сколько версий я это замечу.. а было бы все в скрипте - я бы рабочую версию хранил отдельно, может и причесал бы под себя и что очень полезно - я мог бы из скрипта управлять параметрами. а как есть - фигвам - никак. только через выклвкл и меню где все в одной куче.
Аватара пользователя
wldev
Мастер
Сообщения: 1650
Зарегистрирован: 24 янв 2012, 16:04
Репутация: 510
Настоящее имя: Сергей Бочаров
Откуда: Новосибирск
Контактная информация:

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

Сообщение wldev »

daemon78 писал(а): 05 сен 2023, 21:09 Пробую на Ubuntu Mate
Скрипт install отработал, пакеты встали.
Запускаю wlmill, неа, не выходит каменный цветок.
Судя по сообщению, разрядность не та. Обычно сообщение о том, что файл не найден, когда он есть и отмечен как исполняемый, выводится в том случае, если не совпадение битности платформы и откомпилированного файла.
IMG_20230905_210547.jpg
IMG_20230905_211249.jpg
Архив не тот я ссылку давал https://wldev.ru/data/soft/wlmill/linux ... 7.6.tar.gz
Не пойму. это у вас Rasberry?

Увидел. Что сделали...
Последний раз редактировалось wldev 07 сен 2023, 11:12, всего редактировалось 1 раз.
Новости: https://t.me/wldevruch
Обсуждения: https://t.me/wldevgr
Аватара пользователя
wldev
Мастер
Сообщения: 1650
Зарегистрирован: 24 янв 2012, 16:04
Репутация: 510
Настоящее имя: Сергей Бочаров
Откуда: Новосибирск
Контактная информация:

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

Сообщение wldev »

Vytos писал(а): 07 сен 2023, 05:45 Ух, какой косячина.... М30 - КОНЕЦ ПРОГРАММЫ!.. Если в коде УП встретился М30, то все - К О Н Е Ц. КОНЕЦ программы, Конец работы. НЕ ДОЛЖНО быть дальнейшей отработки кода, расположенного после М30. А WLMill берет и фигачит дальше, как-будто так и надо. Косячище вообще.
Сейчас есть такое исправим...
Новости: https://t.me/wldevruch
Обсуждения: https://t.me/wldevgr
Аватара пользователя
daemon78
Мастер
Сообщения: 1693
Зарегистрирован: 02 окт 2018, 15:02
Репутация: 103
Настоящее имя: Владимир
Откуда: Москва
Контактная информация:

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

Сообщение daemon78 »

wldev писал(а): 07 сен 2023, 11:08
daemon78 писал(а): 05 сен 2023, 21:09 Пробую на Ubuntu Mate
Скрипт install отработал, пакеты встали.
Запускаю wlmill, неа, не выходит каменный цветок.
Судя по сообщению, разрядность не та. Обычно сообщение о том, что файл не найден, когда он есть и отмечен как исполняемый, выводится в том случае, если не совпадение битности платформы и откомпилированного файла.
IMG_20230905_210547.jpg
IMG_20230905_211249.jpg
Архив не тот я ссылку давал https://wldev.ru/data/soft/wlmill/linux ... 7.6.tar.gz
Не пойму. это у вас Rasberry?

Увидел. Что сделали...
Да, спасибо, заработало!!!
На выходных погоняю обязательно. Скоро щуп 3Д приедет с алиэкспресса. Будет следующая серия вопрос-ответ :)
vtgmfg
Мастер
Сообщения: 1819
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 77
Настоящее имя: Максим
Контактная информация:

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

Сообщение vtgmfg »

DIALOG.show() больше месяца
MACHINE.goDriveVerify() год
SysMessage() как минимум с апреля
Аватара пользователя
daemon78
Мастер
Сообщения: 1693
Зарегистрирован: 02 окт 2018, 15:02
Репутация: 103
Настоящее имя: Владимир
Откуда: Москва
Контактная информация:

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

Сообщение daemon78 »

Кстати, хотел узнать.
А можно приспособить 3Д щуп для поиска центра отверстий? Как я понял, сейчас макросы сильно развились у Сергея.
vtgmfg
Мастер
Сообщения: 1819
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 77
Настоящее имя: Максим
Контактная информация:

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

Сообщение vtgmfg »

макросов нет, а скрипты есть - в том числе и к центру отверстия можно привязаться.
макрос -это последовательность нажатий клавиш в интерфейсе назначенные одной клавише. Т.е. макросов вообще тут нет.
Аватара пользователя
daemon78
Мастер
Сообщения: 1693
Зарегистрирован: 02 окт 2018, 15:02
Репутация: 103
Настоящее имя: Владимир
Откуда: Москва
Контактная информация:

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

Сообщение daemon78 »

vtgmfg писал(а): 07 сен 2023, 13:27 макросов нет, а скрипты есть - в том числе и к центру отверстия можно привязаться.
макрос -это последовательность нажатий клавиш в интерфейсе назначенные одной клавише. Т.е. макросов вообще тут нет.
:)))) Я, как программист в прошлом, по старой памяти, воспринимаю макросы как символьное имя, заменяемое при обработке препроцессором на последовательность программных инструкций. Но, скрипты конечно правильнее.
То есть надо сделать какой нить скрипт типа M100500, под него кнопку и реализовать логику измерения до краев отверстий.
Здорово, надо будет заняться!
vtgmfg
Мастер
Сообщения: 1819
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 77
Настоящее имя: Максим
Контактная информация:

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

Сообщение vtgmfg »

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

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

Сообщение Vytos »

wldev писал(а): 07 сен 2023, 11:09
Сейчас есть такое исправим...
A getActivElementGProgramString() / getLastMovElementGProgramString() или getGProgramString(iElement), возвращающие текст строки кода дадите? У вас же полюбому в движке есть получение и разбор строки, вывести это дело в скрипты, по идее, минутное дело.
vtgmfg
Мастер
Сообщения: 1819
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 77
Настоящее имя: Максим
Контактная информация:

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

Сообщение vtgmfg »

буковку i там ставить рановато
Vytos
Кандидат
Сообщения: 72
Зарегистрирован: 13 ноя 2018, 18:03
Репутация: 3
Контактная информация:

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

Сообщение Vytos »

Ни фига не пойму. Где что неправильно?
Ввожу, скажем, 2-3-4 копии. Почему УП запускается на исполнение только один раз, после того как закроется последний диалог про завершение копии.

И почему при задаваемом смещении ровно 100, фактически задается99.*****... (куча знаков после запятой)
Вложения
IMG_20230909_052511_911.jpg (175 просмотров) <a class='original' href='./download/file.php?id=209082&mode=view' target=_blank>Загрузить оригинал (5.52 МБ)</a>
vtgmfg
Мастер
Сообщения: 1819
Зарегистрирован: 23 июн 2022, 14:13
Репутация: 77
Настоящее имя: Максим
Контактная информация:

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

Сообщение vtgmfg »

посмотрю сегодня может пойму. скорее всего он таки не выходит из первого выполнения, а запускается 2е.
а вообще лучше скрипты в виде текста чем в виде фото
klepa
Новичок
Сообщения: 18
Зарегистрирован: 23 авг 2023, 12:42
Репутация: 3
Контактная информация:

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

Сообщение klepa »

всем добра,подскажите где ошибка,в написании скриптов не силен,нужна кнопочка на сброс осей в ноль,так как режу в разных местах на столе,при запуске вылетает в ошибку,заранее спасибо
function funcSETXYZA0()
{
MACHINE.setCurPositionSC("X",0)
MACHINE.setCurPositionSC("Y",0)
MACHINE.setCurPositionSC("Z",0)
MACHINE.setCurPositionSC("A",0)
}

function initmyButton()
{
TOOLBAR1.addButton("SETXYZA0")
SETXYZA0.setShow(1);
SETXYZA0.setIcon("zerro.png")
SETXYZA0.setText("SETXYZA0")
SETXYZA0.setScript("funcXYZA0()")
SETXYZA0.setShortcut("F10") //горячая клавиша
}

//initG28Button(); // при необходимости закомментировать

//исполняется при инициализации скриптов
function init()
{
//Добавление кнопки быстрого запуска программы
//initStartButton()

//Добавление кнопки перехода в G28
//initG28Button(); // при необходимости закомментировать
initmyButton()
Ответить

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