Определение входных данных
После того как мы определили нашу функциональность и стандартизировали использование таблицы переменных, нам нужно определить входные данные для нашей программы, необходимые для получения желаемых результатов функциональности. Мой метод заключается в том, чтобы поместить входные данные в отдельную подпрограмму от основной рабочей программы. Это помогает предотвратить ошибки при редактировании из-за любопытства или случайных изменений в основном макросе.
Входные данные, которые нам нужны для выполнения сверления, следующие:
#500: Количество отверстий для сверления
#501: Диаметр окружности болтов
#502: Угол первого отверстия вдоль оси X при угле координат машины 0. Обычно это направление X+.
#503: Абсолютная позиция по оси X для центра окружности болтов
#504: Абсолютная позиция по оси Y для центра окружности болтов
#505: Глубина отверстия
#506: Глубина захода (Pecking Depth)
#507: Высота плоскости R (R plane clearance)
#508: Скорость подачи (Feedrate) для сверления
#509: Высота зазора (над частью Z0) для быстрых перемещений между отверстиями
#510: Скорость шпинделя для сверления
#511: Функция W в цикле сверления G82
#512: Функция E в цикле сверления G82
#513: Функция V в цикле сверления G82
#514: Функция L в цикле сверления G82
Это все, что я могу придумать на данный момент, что нам нужно для достижения нашей заявленной функциональности. Если кто-то заметит что-то пропущенное, дайте мне знать, так как я пишу это и обдумываю по ходу. Кстати, я пишу это, основываясь на реализации Fanuc на Brother B00.