Производители метизов сопровождают продукцию паспортом, в котором шпильки с метрической резьбой имеют маркировку вида МDxPxL, где:
M – отображение метрического типа резьбы;
D – выраженный в миллиметрах...
Код, для датчика высоты инструмента в Mach3 PlateOffset=10 => толщина платы мм. Zup=25 => расстояние на которое отойдет фреза после коррекции MaxZPlus=250 => максимальный ход станка по оси Z мм. Sleep 100 => Пауза 0,1 сек. CurrentFeed = GetOemDRO(818) => Запомнить текущую скорость, для того чтобы восстановить после коррекции. Code "F300" => Задать скорость подачи до касания инструментом ZNew = GetDro(2) - MaxZPlus => опустить инструмент до касания Code "G31Z" &ZNew While IsMoving() => Подождать пока произойдет касание платы. Wend ZNew = GetVar(2002) =>читать точку касания Code "G0 Z" &ZNew + 3 => отьехать вверх на 3мм от точки касания While IsMoving () Wend Code "F50" =>замедлить подачу до 50мм\мин ZNew = GetDro(2) - 6 Code "G31Z" &ZNew => опустить инструмент до касания While IsMoving() => Подождать пока произойдет касание платы. Wend If PlateOffset <> 0 Then Call SetDro (2, PlateOffset) => записать в окно Z толщину платы, тем самым откорректировав позицию по Z Code "G4 P0.25" => пауза для успешной записи значения в DRO ZNew = PlateOffset + Zup => вычислени точки подьема Code "G0 Z" &ZNew => поднять на высоту отхода после коррекции While IsMoving () Wend Code "(Z axis is now zero !)" => послать сообщение в статус End If Code "F" &CurrentFeed => Возвращаем установленное значение подачи Sleep 100 Думаю все более дотошно описано, какая строчка кода за что отвечает и для чего нужна.