Движение по контуру, изображенному на рис. 2.93 (— — → — траектория, описанная после оператора ТРАНС; → − фактическая траектория движения инструмента), программируется следующим образом (табл. 2.4).
Оператор ТРАНСРЕЗ имеет следующий формат: èìÿÒÐÀÍÑÐÅÇ
где имя − символическое имя матрицы.
отличие от оператора ТРАНС оператор ТРАНСРЕЗ осуществляет преобразование по заданной матрице рассчитанных точек траектории. Действие его распространяется до нового оператора ТРАНСРЕЗ или до оператора ТРАНСРЕЗ ОТМЕН.
Различие в результатах, полученных при использовании операторов ТРАНС и ТРАНСРЕЗ в приведенном примере, иллюстрируется на рис. 2.94 (– – – → — программируемое перемещение; → — фактическое перемещение). Например:
ТЧ0 = 0,0
ТЧ1 = −100,0
ПР1=ТЧ0, 60
МАТР М1=ПОВХУ, -90
ИЗ ТЧ1
НАПРТ ТЧ0
ИДИ НА ПР1
ТРАНС Ml
ВПРАВО ПР1 НА ОКРУЖИ (ТЧ0, 50)
Оператор ТРАНС выполняет преобразование поверхностей. Поэтому после применения оператора ТРАНС прямая ПР1 примет положение ПРГ, а оператор ВПРАВО вызовет перемещение инструмента из ТЧ0 в точку 1 (см. рис. 2.94, а).
Если в этой же программе заменить оператор ТРАНС Ml оператором ТРАНСРЕЗ Ml, то преобразованию будет подвергнута точка траектории 2, которая займет положение 3, куда и переместится инструмент из ТЧ0 (см. рис. 2.94,6).
Наряду с элементарными типами геометрических объектов в языке Техтран имеется комбинированный тип − КОНТУР. Геометрические объекты этого типа являются совокупностями отрезков прямых и дуг окружностей. Они могут использоваться в командах непрерывного движения аналогично элементарным геометрическим объектам, т. е. инструмент может быть выведен на контур оператором ИДИ, а движение по нему осуществляется с помощью операторов ВЛЕВО, ВПРАВО, ВПЕРЕД, НАЗАД.
Различают простые и составные контуры. Простой контур − комбинация элементарных геометрических объектов, а составной контур является комбинацией нескольких простых контуров.
Простой контур. Описание простого контура состоит из последовательности операторов непрерывного движения, ограниченных заголовком контура и служебным словом КОНКОН:
[КОНТУР] имя = ИЗ точка, модификатор оператор1 оператор2
…
операторn-1 операторn
КОНКОН
где КОНТУР − служебное слово, задающее тип определяемого объекта (если он еще не известен); имя − имя, присвоенное контуру; точка − имя первой точки контура (если контур замкнутый, то любой точки контура); модификатор − любой из модификаторов ХБ−ХМ−УБ−УМ, задающий направление, относительно которого выбирается оператор1; оператор1, оператор2, ..., операторп− операторы движения.
Простой контур называется замкнутым, если начальная и конечная точки контура совпадают, и незамкнутым, если точки не совпадают. Направление движения в операторе1 определяется относительно модификатора, указанного в заголовке контура. Проще всего в качестве оператора1 употреблять оператор ВПЕРЕД. Направление движения в последующих операторах указывается относительно предыдущего направления движения по правилам, изложенным в п. 2.10.
Оператор, (1 ≤ i ≤ n) может быть оператором с двумя поверхностями
либо оператором с одной поверхностью
ÂÏÅÐÅÄ ÍÀÇÀÄВ описании замкнутого контура направляющие поверхности в первом и последнем операторах могут совпадать. В описании контуров кроме операторов движения можно использовать операторы ПОВТОР и ЕСЛИ (см. п. 2.12).
Незамкнутый контур, изображенный на рис. 2.95, описывается таким образом:
КОНТУР КОН 1= ИЗ ТЧ1, ХБ
ВПЕРЕД ПР1
ВЛЕВО КР1 2 ПЕРЕСЕЧ
ВЛЕВО ПР1 НА ПР2
КОНКОН
Применим в описании контура (рис. 2.95) условный оператор для выбора обхода верхней или нижней полуокружности в зависимости от знака переменной Р:
КОНТУР КОН 1= ИЗ ТЧ1, ХБВПЕРЕД ПР1
ЕСЛИ(Р>0)ТО
ВЛЕВО КР1 2 ПЕРЕСЕЧ
ВЛЕВО ПР1 НА ПР2
ИНАЧЕ
ВПРАВО КР1 2 ПЕРЕСЕЧ
ВПРАВО ПР1 НА ПР2
КОНЕСЛИ
КОНКОН
Замкнутый контур, изображенный на рис. 2.96, может быть задан двумя способами. Обычная форма записи следующая:
КОНТУР КОН2 = ИЗ ТЧ1, ХБ
ВПЕРЕД ПР1
ВПЕРЕД КР1
ВПЕРЕД ПР2
ВПЕРЕД КР2
ВПЕРЕД ПРЗ
ВПЕРЕД КРЗ
ВПЕРЕД ПР4
ВПЕРЕД КР4 ВПЕРЕД ПР1 КОНКОН
Сокращенная форма записи имеет вид:
КОНТУР КОШ = ИЗ ТЧ1, ХБ
ВПЕРЕД ПР1:КР1:ПР2:КР2:ПРЗ:КРЗ:ПР4:КР4:ПР1
КОНКОН
Кроме операторов движения в определении контура можно использовать и операторы постпроцессора. При этом следует соблюдать осторожность, так как если направление обхода контура не соответствует направлению, выбранному при описании, то оператор постпроцессора, записанный перед некоторым сегментом контура, будет в действительности относиться к предыдущему сегменту.
Составной контур. Составной контур представляет собой комбинацию ранее определенных контуров. Если контур1, контур2, контур3, контурп− ранее определенные контуры, матрица1, матрица2, матрица3, матрицап− плоские матрицы, а число1, число2, число3, числоп− числа, переменные или арифметические выражения, то оператор вида
КОНТУР. имя = число1, матрица1, контур1, %
, число2, матрица2, контур2, %
, число3, матрица3, контур3, %
……………
, числоп, матрщап, контурп
определяет новый контур, который строится следующим образом. Каждый i-й контур преобразуется по заданной матрице и присоединяется к предыдущему контуру начальной точкой, если числоi положительное, или конечной точкой, если числоi отрицательное. Если же числоi равно нулю, то контур пропускается. По умолчанию предполагается, что числоi = 1. Начальной точкой результирующего контура является начальная точка контура1, если число1 положительное, и конечная его точка, если число1 отрицательное. Матрица1 − любая плоская матрица, матрицаi (i≥2) − матрица поворота или симметрии; сдвиг, если он есть, не учитывается. Служебное слово КОНТУР должно присутствовать в том случае, когда определение типа не было сделано ранее.
Если после знака « = » в определении составного контура нет ничего, то это означает, что контур имеет многострочный формат с ограничителем КОНКОН, где элементы составного контура отделены друг от друга концами строк или символами «;».
Например, контур К (рис. 2.97, в), состоящий из контуров К1 и К2 (рис. 2.97, а, б), описывается следующим образом:
………..
МАТР Ml = ПОВОРОТ, 45 КОНТУР К1=ИЗ ТЧ1, ……..
……………
КОНКОН
КОНТУР К2 = ИЗ ТЧ2, ……... …………...
КОНКОН
КОНТУР К = М1, Kl, K2
Еще один пример построения составного контура приведен на рис. 2.98, б (на рис. 2.98, а − исходный контур):
Ml = ПОВОРОТ, −90
КОНТУР К = К1, Ml, K1, -1, К1
На рис. 2.99, б приведен пример составного контура, который получается симметричным преобразованием исходного контура (на рис. 2.99, а − исходный контур):
КОНТУР К, К1
М1=ПРХ
М2 = ПРУ
МЗ = М1, М2
К1 =
К= + 1, К1, -1, Ml, К1, +1, МЗ, К1, -1, М2, К1
(или К = К1, -1, Ml, К1, МЗ, К1, -1, М2, К1)
В определениях составных контуров можно использовать операторы ЕСЛИ и ПОВТОР. Применим оператор цикла при построении контура К (рис. 2.100,6), получающегося многократным повторением контура К1 (рис. 2.100, а): КОНТУР К =
ПОВТОР И = 1,5
МАТР (ПОВОРОТ, 72*(И -1)), К1
КОНЦИКЛ
КОНКОН
Частным случаем описания составного контура является оператор присваивания: А = Б или КОНТУР А = Б, где А и Б − объекты типа КОНТУР.
Определение табулированной кривой. Табулированная кривая (СПЛАЙН, таблично заданная кривая) − это гладкая кривая, интерполирующая заданный набор точек и состоящая из отрезков прямых и дуг окружностей. Табулированная кривая имеет направление от первой заданной точки к последней (т. е. при построении кривой от точки TЧ1 к точке ТЧn и от точки ТЧn к точке ТЧ1 результаты совпадать не будут).