Jump to content

Помогите с программкой, sinumerik840d горизонтально-фрезерный


Recommended Posts

Aveovar

 

Помогите пожалуйста, проблема такая, вот программка,
$P_UIFR[1]=CFINE(X,10,Y,100)
В оффсет, G54, значения меняются на заданные, но так же меняются Z, B, W... на 0
Как мне прописать, чтоб менялись только X и Y, а остальные остались без изменения?

Link to post
Share on other sites


UnPinned posts

Здравствуйте. Попробуйте так:

$P_UIFR[1, X, FI]=10

$P_UIFR[1, Y, FI]=100

6 часов назад, Aveovar сказал:

Как мне прописать, чтоб менялись только X и Y, а остальные остались без изменения?

 

Link to post
Share on other sites
Aveovar
16 часов назад, A_1 сказал:

Здравствуйте. Попробуйте так:

$P_UIFR[1, X, FI]=10

$P_UIFR[1, Y, FI]=100

 

Спасибо, сработало, только почему то при сложении фреймов он последний не меняет

$P_UIFR[1,X,0]=$P_UIFR[1,X,0]+$P_UIFR[1,X,5]

$P_UIFR[1,X,5]=0

Складывает точное и грубое смещение правильно, записывает правильно, а второй кадр как будто не читает

Без сложения все работает

Link to post
Share on other sites
  • 2 months later...
ShadoWofXaoS

Какой странный синтаксис у системной переменной $P_UIFR[1, X, 0]... Что делает или за что отвечает 3-й параметр в вашей интерпретации? 

Хотелось бы увидеть весь код целиком... 

Link to post
Share on other sites
Aveovar
Posted (edited)
06.04.2022 в 16:25, ShadoWofXaoS сказал:

Какой странный синтаксис у системной переменной $P_UIFR[1, X, 0]... Что делает или за что отвечает 3-й параметр в вашей интерпретации? 

 

0-грубое смещение = tr

5-точное смещение

1-поворот =rt

3-масштаб = sc

4-зеркало =mi

2 не помню что означает,  

Цифры заменяют символьные обозначения

Также g54=1 в первом параметре

G55=2, g56=3 и так далее

Edited by Aveovar
Link to post
Share on other sites
  • 1 month later...
ShadoWofXaoS

Насчёт цифрового обозначения номера ENS я в курсе, но никогда и нигде не встречал цифрового замещения типа фрейма... Надо опробовать... Кстати а откуда данная инфа? Получена опытным путём или содержалась в каком-то руководстве? 

А что насчёт проблемы? Решена? 

Edited by ShadoWofXaoS
"полировка" текста и мысли
Link to post
Share on other sites
Aveovar
21 час назад, ShadoWofXaoS сказал:

Кстати а откуда данная инфа? Получена опытным путём или содержалась в каком-то руководстве? 

А что насчёт проблемы? Решена? 

где то на форуме вычитал, в инструкции нигде не нашел, но это  работает, и такой вид записи мне больше нравится, да проблема решена, когда поставил stopre перед каждым определением фрейма

STOPRE

$P_UIFR[1,X,0]=$P_UIFR[1,X,0]+$P_UIFR[1,X,5]

STOPRE

$P_UIFR[1,X,5]=0

Link to post
Share on other sites
ShadoWofXaoS
19.01.2022 в 00:50, Aveovar сказал:

 

Помогите пожалуйста, проблема такая, вот программка,
$P_UIFR[1]=CFINE(X,10,Y,100)
В оффсет, G54, значения меняются на заданные, но так же меняются Z, B, W... на 0
Как мне прописать, чтоб менялись только X и Y, а остальные остались без изменения?

Вот решение (сам недавно подобное программировал в измерительном цикле) : $P_UIFR[1]=$P_UIFR[1]:CTRANS(X,1,Y,1). Данная команда прибавит к значению "грубо" осей X и Y системы ENS с идентификатором "G54" число "1". Иначе говоря, данный тип команды выполняет аддитивное наложение одного фрейма на другой. Если же использовать команду $P_UIFR[1]=CTRANS(X,1,Y,1), то произойдёт замещение одного фрейма другим. 

13 часов назад, Aveovar сказал:

P_UIFR[1,X,0]=$P_UIFR[1,X,0]+$P_UIFR[1,X,5]

STOPRE

$P_UIFR[1,X,5]=0

Вполне достаточно и такой компоновки. Если в программе одна и та же переменная принимает разные значения, то между кодами редактирования её значения рекомендуется использование команды STOPRE, либо, что более предпочтительно, сохраняйте предыдущее/"старое" значение этой переменной в другой переменной. 

Edited by ShadoWofXaoS
"полировка" текста и мысли
Link to post
Share on other sites
Aveovar
Posted (edited)
10 часов назад, ShadoWofXaoS сказал:

P_UIFR[1,X,0]=$P_UIFR[1,X,0]+$P_UIFR[1,X,5]

STOPRE

$P_UIFR[1,X,5]=0

Вполне достаточно и такой компоновки.

Достаточно, если эта часть стоит в начале программы, но если присвоение значения фрейму стоит в середине программы, тогда нужно перед каждым [$P_UIFR] прописывать stopre, иначе он запишет смещение раньше времени

Edited by Aveovar
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.



×
×
  • Create New...