Перейти к публикации

Коррекция 5 осей


DmitriTMB

Рекомендованные сообщения

Похоже, вы не включили CRC3D=1, когда перешли на метку @3DCOMPON. Сама она включится только в соотв. фичах, так что пробуйте насильно включить, иначе...

 

%IF CRC3D=1 @NO3DCOMP2
XPARTNORMAL=#FUNNY : YPARTNORMAL=#FUNNY : ZPARTNORMAL=#FUNNY
@NO3DCOMP2

 

...поимеете #FUNNY, ибо по умолчанию при входе многих процедур CRC3D=0...

Да, совсем забыл. Я пробовал делать пост в старой версии (2013r2), там почему-то есть 2 угла, но нет нормалей в переменных:

4xold.jpg

Изменено пользователем zerganalizer
Ссылка на сообщение
Поделиться на других сайтах


CRC3D насильно не включается. Переменные X(YZ)PARTNORMAL так и остаются неактивными. 

 

Принудительно активируем CRC3D. И ничего не происходит:

CRC3D1.thumb.jpg.e127e47cef8408f4bac6a134eef1c9b0.jpg

Отключается CRC3D, когда завершается 5 осевая обработка:

CRC3D0.jpg.a7948a0e703da20638cff6e2eaa31840.jpg 

Добавляем #FUNNY (хотя х.з. что такая за переменная).....и ничего не происходит:

CRC3D1_FUNNY.thumb.jpg.9ead20152be545817078a48bc35d3c61.jpg

Для теста жестко присваиваем значения. Выводятся:

NX123.thumb.jpg.419bc6aaedf6fcb3b16142b2699bcc28.jpg 

Ссылка на сообщение
Поделиться на других сайтах
В 02.10.2017 в 21:00, DmitriTMB сказал:

Принудительно активируем CRC3D. И ничего не происходит:

Вы невнимательны. На метку, где вы включаете CRC3D=1 вы идете ТОЛЬКО по условию... что она уже включена. Отсюда провал - вы назначили 1/2/3 после перехода к этой метке (@SAXL), но вы сюда не попадаете, если в системе CRC3D не равно 1 (отключена системой по умолчанию).

 

Для теста удалите условие IF CRC3D=1 и посмотрите...

Если вывод и расчет нормалей заработает, у вас возникнет маленькая проблема - вам надо будет придумать, как САМОМУ включать вывод этих переменных. Возможно, вам придется добавить свою функцию или прикрутить включение вывода этих переменных ко включению чего-то еще (стандартного). Но скорее всего, все ваши метки и переходы будут не нужны. Достаточно будет добавить вывод нормалей ВСЕГДА. Когда вы системно включите их вывод - они выведутся, выключите - будет #FUNNY. Да, веселая переменная, смысла и шутки по этому поводу вы не поняли. Если любая переменная равна #FUNNY, она НИКОГДА НЕ ВЫВОДИТСЯ даже если она есть в строке вывода. Так, по крайней мере, у меня работает...

 

Ссылка на сообщение
Поделиться на других сайтах

В этом случае, для перехода на метку @5AXL, срабатывает условие IF #AX5MODE=128. Т.е. режим 5 осевой обработки становится активным (код М128). Ну а в @5AXL пытался активировать CRC3D=1.

Если #AX5MODE не равен 128, но при этом CRC3D=1, то переход идет на ту же метку @5AXL. 

Если оба условия не сбылись то отрабатывается первая строчка, где НЕ СТОИТ обязательного вывода переменных <C>.

Ссылка на сообщение
Поделиться на других сайтах

Обратите внимание на значения Y. Если бы не было перехода на @5AXL - то одинаковые значения Y пропускались бы.

Ссылка на сообщение
Поделиться на других сайтах

У вас дословно написано - если 5-осевая - иди включи коррекцию CRC3D и выводи нормали. Иначе если CRC3D=1 - то идти туда же. В противном случае (в остальных, когда CRC3D=0 - в посте по умолчанию) вы пройдете мимо вывода нормалей, даже если их расчет ведется.

 

Давайте уточним (если я правильно все понял) - вам нужен вывод нормалей ТОЛЬКО при 5х или при включении галки вывода нормалей в эджике. Из внимательного повторного просмотра понял свое недоразумение - при пятиосевой (куда оно ИДЕТ) CRC3D=1 не запускает вывод нормалей, но запускает при 3-осевой? В вашем первом примере (стр.1) вроде - да. Вывод - включать вывод нормалей нужно чем-то еще.

 

То, что при задании жестко вручную 1-2-3 они выводятся говорит о том, что внутри поста где-то им задается =#FUNNY. Покопаюсь чутка в коде. Может, пришлете ваш пост на panguver@gmail.com (лучше - на Синумерик, он мне знаком), и я ковырну ваш код?

 

PS. Возможно, нашел процедуру, которую нужно выполнять, но проверять лучше на полноценном 5х-посте (у меня максимум только 4х, недоделанный).

 

5x.jpg

Изменено пользователем zerganalizer
Ссылка на сообщение
Поделиться на других сайтах

Походу, никак.

 

;CODE: CRC3D=1
;CODE: #USER11=CRC3D
;CODE: %CANCEL=#USER11
;CODE:#FUNNY=5
[DELETE][BLKNUM][COMPGCODE][FEEDGCODE][XMOVE][YMOVE][ZMOVE][XPARTNORMAL][YPARTNORMAL][ZPARTNORMAL][CRC REGISTER][SPEED][SPINDIR][FEED][COOLANT][<C>USER-11]

Чего только ни пробовал - вот результат если CRC3D=1, он выведен в #USER11 в код станка - видно, что он так и есть 1, но нормали подавлены!

 

Y-32.918 Z-0.004 D05 F300.0I1
 Y-32.585 Z-0.017I1
 Y-32.253 Z-0.039I1
 Y-31.921 Z-0.069I1
 Y-31.591 Z-0.108I1
 Y-31.261 Z-0.156I1
 Y-30.909 Z-0.214I1

 

Если так отключить насильно

 

;CODE: CRC3D=0
;CODE: #USER11=CRC3D
;CODE: %CANCEL=#USER11
;CODE:#FUNNY=5
[DELETE][BLKNUM][COMPGCODE][FEEDGCODE][XMOVE][YMOVE][ZMOVE][XPARTNORMAL][YPARTNORMAL][ZPARTNORMAL][CRC REGISTER][SPEED][SPINDIR][FEED][COOLANT][<C>USER-11]

 

то насильно вылазят, но равными #FUNNY=5

 

G1 Z0.0 F100.0I0
 Y-32.918 Z-0.004 I5.0 J5.0 K5.0 D05 F300.0I0
 Y-32.585 Z-0.017 I5.0 J5.0 K5.0I0
 Y-32.253 Z-0.039 I5.0 J5.0 K5.0I0
 Y-31.921 Z-0.069 I5.0 J5.0 K5.0I0
 Y-31.591 Z-0.108 I5.0 J5.0 K5.0I0

Эта хрень творится в коде поста

 

* 3D CRC mode off
$3DCOMP=$3DCOMPOFF : #3DCRCGCODE=DATA1(64)
%CALL=CODECON_CANCEL-3D-COMP
#3DCRCKEEP=0
%GOTO @NO3DCOMP

@3DCOMPON
* 3D CRC mode on only before first feed
%IF #MACRO<>2 @NO3DCOMP
$3DCOMP=$3DCOMPON : #3DCRCGCODE=DATA1(63)
%CALL=CODECON_3D_CUTTER-COMP
#3DCRCKEEP=1

@NO3DCOMP
%IF CRC3D=1 @NO3DCOMP2
XPARTNORMAL=#FUNNY : YPARTNORMAL=#FUNNY : ZPARTNORMAL=#FUNNY
@NO3DCOMP2

 

Пока CRC3D=0 - нормали подавляются #FUNNY и выводятся так в УП. Если включить CRC3D=1 происходит их подавление неизвестным мне способом, возможно - недоступным из поста. Но включение галки в эджике дает нужный результат (если CRC3D=1):

 

G1 Z0.0 I0.0 J0.0 K1.0 F100.0I1
 Y-32.918 Z-0.004 I0.0 J0.0 K1.0 D05 F300.0I1
 Y-32.585 Z-0.017 I0.0 J0.042 K0.999I1
 Y-32.253 Z-0.039 I0.0 J0.044 K0.999I1
 Y-31.921 Z-0.069 I0.0 J0.069 K0.998I1
 Y-31.591 Z-0.108 I0.0 J0.111 K0.994I1
 Y-31.261 Z-0.156 I0.0 J0.133 K0.991I1

 

Последнее попробую завтра - удалить поганую строку в MXT и его откомпилить (в версии 2013 работало, в 2016r2 куда-то спрятали фичу).

 

 

Ссылка на сообщение
Поделиться на других сайтах
  • 4 недели спустя...

Пришли к выводу, что дело не в постпроцессоре...

Ждем, пока не добавят чудо кнопку в 5 осевые циклы обработки.

Большое спасибо @zerganalizer за участие!

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...
В 18.09.2017 в 21:57, DmitriTMB сказал:

Спорить с троллем техно - нацистом я не собираюсь. 

:k05205:  Техно-нацист!! Сильно. Возьму это определение в свою копилку, если вы не против 

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
В 20.12.2017 в 10:44, SNick сказал:

:k05205:  Техно-нацист!! Сильно. Возьму это определение в свою копилку, если вы не против 

Обращайтесь.:smile:

Вы правы в своем высказывании были, но относительно обсуждаемого софта можно точностью определений было пренебречь.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.



×
×
  • Создать...