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

Переменные def


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

Здравствуйте все кто в теме, не могу вникнуть в тему переменных def, может кто нибудь понятно объяснить,  в талмудах мало что понял, вот у нас переменная  def int peremen, как ей присвоить, что (peremen) например равна 50 или R10, а потом нужно переместиться по Х на значение (peremen), или это не так работает,  подскажите в какую сторону думать

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


UnPinned posts
6 минут назад, Aveovar сказал:

вот у нас переменная  def int peremen, как ей присвоить, что (peremen) например равна 50 или R10, а потом нужно переместиться по Х на значение (peremen), или это не так работает

Здравствуйте. В самом начале программы нужно объявить необходимые переменные:

def inr peremen

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

peremen = 50
или
peremen = R1
или
peremen = 50 * R1

и, наконец, можно использовать это значение:

x=peremen

 

Ссылка на сообщение
Поделиться на других сайтах
4 минуты назад, A_1 сказал:

Здравствуйте. В самом начале программы нужно объявить необходимые переменные:


def inr peremen

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


peremen = 50
или
peremen = R1
или
peremen = 50 * R1

и, наконец, можно использовать это значение:


x=peremen

 

Спасибо за ответ, всяко пытался записать, так тоже пробовал, но почему то станок ошибку выдавал, что переменной такой не существует,  ошибок синтаксических не было,  завтра ещё раз попробую, отпишусь, ещё интересует, в каких случаях нужно перед переменными ставить $

Ссылка на сообщение
Поделиться на других сайтах
11 минут назад, Aveovar сказал:

в каких случаях нужно перед переменными ставить $

Сообщение о том, что переменной не существует возможно, если Вы обращаетесь к ней из подпрограммы. Пришлите фрагмент программы и ошибку. Символ $ в начале имени имеют системные переменные, например $p_toolr - активный радиус инструмента. Если подставите этот символ перед R-переменной ($R1), то этой переменной можно будет пользоваться в синхронных действиях.

 

 

 

 

 

 

 

 

Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, A_1 сказал:

Сообщение о том, что переменной не существует возможно, если Вы обращаетесь к ней из подпрограммы. Пришлите фрагмент программы и ошибку. Символ $ в начале имени имеют системные переменные, например $p_toolr - активный радиус инструмента. Если подставите этот символ перед R-переменной ($R1), то этой переменной можно будет пользоваться в синхронных действиях.

 

 

 

 

 

 

 

 

Подпрограммы я ещё не писал на синумерике, и с многоуровневыми программами не сталкивался, сложно после фанука перестроиться, программу я удалил, так как она не работала, запустил через R-ки, но она простая покадровая, максимум 30 кадров, все как вы и написали, объявил переменную, придал ей значение, но станок как будто её не видит

Ссылка на сообщение
Поделиться на других сайтах
12 часов назад, A_1 сказал:

Здравствуйте. В самом начале программы нужно объявить необходимые переменные:


def inr peremen

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


peremen = 50
или
peremen = R1
или
peremen = 50 * R1

и, наконец, можно использовать это значение:


x=peremen

 

Фото не могу отправить, цитирую:

N1 LL6(3)

N2 TL2

N3 G90 G54 G64 G42 G96

N4 T3 D2

N5 M42

N6 M3 S100

N7 LIMS=120

N8 

N9 DEF INT PEREMEN

N10 PEREMEN=50

N11 G0 X=PEREMEN

N12 M30

 

Ошибка: кадр N9 неразрешенная команда DEF или PROC в программе обработки детали

 

Объяснение ошибки: программы обработки деталей ЧПУ с элементами языка высокого уровня делятся на включенную впереди (описательную?) часть и следующую за ней программную часть. Переход никак особенно не отмечается - после первой команды программы никакого определяющего оператора следовать не может

Помощь: поставить операторы определений PROC в начало программы

 

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, Aveovar сказал:

N1 LL6(3)

N2 TL2

N3 G90 G54 G64 G42 G96

N4 T3 D2

N5 M42

N6 M3 S100

N7 LIMS=120

N8 

N9 DEF INT PEREMEN

N10 PEREMEN=50

N11 G0 X=PEREMEN

N12 M30

Кадр DEF INT PERMEN должен располагаться в самом начале программы, перед кадром N1

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, A_1 сказал:

Кадр DEF INT PERMEN должен располагаться в самом начале программы, перед кадром N1

Спасибо большое, сработало

Ссылка на сообщение
Поделиться на других сайтах
  • 2 месяца спустя...
24.03.2022 в 09:45, A_1 сказал:

Кадр DEF INT PERMEN должен располагаться в самом начале программы, перед кадром N1

А не подскажете, как в ShopMill можно вынести определения переменных в начало программы? Никак не получается запихнуть что-либо перед шапкой :(

Ссылка на сообщение
Поделиться на других сайтах
16 часов назад, Grundick сказал:

А не подскажете, как в ShopMill можно вынести определения переменных в начало программы? Никак не получается запихнуть что-либо перед шапкой :(

Да, в таких файлах не получается написать что-нибудь выше заголовка. Можно использовать в этом случае  R-переменные

Ссылка на сообщение
Поделиться на других сайтах
25.05.2022 в 10:56, A_1 сказал:

Да, в таких файлах не получается написать что-нибудь выше заголовка. Можно использовать в этом случае  R-переменные

R-переменные  они динамически  типизируются? Я могу туда поместить как INT, так и REAL?

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, Grundick сказал:

R-переменные  они динамически  типизируются? Я могу туда поместить как INT, так и REAL?

R-переменные имеют тип Real. На некоторых станках можно с ними работать как с целыми, на некоторых - нет. Возможно, это настраивается параметрами станка.

Ссылка на сообщение
Поделиться на других сайтах
24.05.2022 в 19:44, Grundick сказал:

А не подскажете, как в ShopMill можно вынести определения переменных в начало программы? Никак не получается запихнуть что-либо перед шапкой :(

Насколько я знаю, обычным способом в программу типа ShopMill не получится "запихнуть" пользовательские переменные. Но. Можно использовать другие способы: 1. R-переменные; 2. Глобальные пользовательские переменные - GUD.

Но стоит помнить, что все переменные имеют область действия не выше отдельного рабочего канала. 

Кстати, в R-переменные не всегда можно сохранять целочисленные значения. В некоторых случаях система выдаёт ошибку при попытки присвоить R- параметру переменную целочисленного типа. Для избежания таких ситуациях следует использовать явное преобразование типов. 

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

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

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

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

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

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

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

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

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

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

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




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