1. Для работы с несколькими инструментами, которые могли отличаться по типу, место положению, назначению и прочее. Был добавлен новый объект Tool Place (TPlace) — «Место инструмента».
Например у нас есть шпиндель и штанга с щупом, которая опускается для быстрого измерения положения заготовки. Тогда будет два TPlace первый — шпиндель, второй штанга.
Например использование нескольких шпинделей. На одном приводе Z или разных. Тогда у них могут быть разные места измерения инструмента и его смены.
Для начала работы с TPlace (если он необходим вам) нужно установить галочку его использования.

После чего станет доступна панель TPlace. Она имеет те же возможности, что и панели инструментов и систем координат.

Основные параметры:
Name — Имя
T — текущий установленный в TPlace инструмент
Tfilter — фильтр номера инструмента, который может быть установлен в этот TPlace. Его задание схоже с заданием номеров печати страниц. Если фильтр не задан, то возможна установка любого инструмента.
Например:
Tfilter = «3» — только инструмент номер 3
Tfilter = «3,7» — только инструмент номер 3 и 7
Tfilter = «3,7-10» — только инструмент номер 3 и от 7 до 10
Tfilter = «3,7-10,15» — только инструмент номер 3, от 7 до 10 и номер 15
Xo,Yo,Zo — смещения TPlace.
Также изменилась стоковая функция M6
function M6()
{
SCRIPT.console("M6")
setTPlaceForTool(GCODE.getT())
GCODE.setCurTool(GCODE.getT())
GCODE.setOffsetTool(GCODE.getT())
}
Добавилась функция setTPlaceForTool(GCODE.getT()).
В которой происходит переключение с одного TPlace на новый по номеру инструмента. Для поиска подходящего TPlace используется функция GCODE.findTPlaceForTool(index).
GCODE.findTPlaceForTool(index) ищет номер подходящего TPlace в 3 этапа
- Ищет — Установлен ли где-то нужный инструмент (по T параметру у TPlace).
- Ищет — Возможно ли установить инструмента в текущий TPlace (по фильтру Tfilter).
- Ищет — Подходящий TPlace начиная с первого (по фильтру Tfilter).
Стоковый вид функции:
function setTPlaceForTool(index)
{
if(!GCODE.isUseTPlace())
{
SCRIPT.console("no useTPlace")
return
}
SCRIPT.console("setTPlaceForTool T:"+index)
var curTPlace = GCODE.getCurTPlace()
var newTPlace = GCODE.findTPlaceForTool(index)
if(newTPlace == -1)
{
SCRIPT.console("can't set tool T:"+index)
MACHINE.reset()
}
GCODE.setCurTPlace(newTPlace)
}
Например при использовании штанги с щупом мы можем дописать следующее.
function setTPlaceForTool(index)
{
if(!GCODE.isUseTPlace())
{
SCRIPT.console("no useTPlace")
return
}
SCRIPT.console("setTPlaceForTool T:"+index)
var curTPlace = GCODE.getCurTPlace()
var newTPlace = GCODE.findTPlaceForTool(index)
if(newTPlace == -1)
{
SCRIPT.console("can't set tool T:"+index)
MACHINE.reset()
}
if(curTPlace == 2)
{
if( ! DIALOG.question("Поднимите штангу"))
MACHINE.reset()
}
if(newTPlace == 2)
{
if( ! DIALOG.question("Опустите штангу"))
MACHINE.reset()
}
GCODE.setCurTPlace(newTPlace)
}
В результате мы будем получать сообщение о необходимости поднят или опустить штангу с щупом.
2. Также был доработан скрипт WLTool.js. Теперь можно задавать место измерения длины инструмента отдельно для каждого TPlace.

3. Добавлена возможность расчёта смещения инструмента и TPlace из их таблиц. Раньше для этого был отдельный скрипт WLToolOffset.js.

4. Улучшено автоформатирование скриптов (Ctrl+I)
5. Добавлен отдельный элемент отображения текущего инструмента и его параметров

6. Добавлено возможность использования нескольких шпинделей.
Необходимо обновить прошивку до 2.5.7
WLM55E/J — 2шт
WLM155S — 4шт


Текущий шпиндель мы можем переключать с помощью функции скрипта.
MACHINE.setSpindleIndex(index)
7.Добавилась возможность отключения входа.
Например для отключения щупа.
MACHINE.setInEnable(index,enable)
8. Прочие доработки

