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

Программирование с переменными


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

20 минут назад, andrey2147 сказал:

Пар 1006#3

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

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


1 час назад, ope@gusarm.ru сказал:

Здравствуйте, подскажите токарный станок с функцией фрезерования в плоскости G17 (X Y) надо сделать радиусы, а по х идет расчет в два раза больше т.к. работает на диаметр. как можно отключить работу в этой плоскости ось Х на диаметр и сделать как Y на радиус? Спасибо. 

Можно при составлении программы, например, писать X[10*2], где 10 - радиус.

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

Добрый день. Может не туда пишу, но вроде бы тема живая. Есть  расточной станок с осями Х/Y/Z/W.  Ноль поворота стола не совпадает с Хо, только с осью Y0 соответственно. Операторы хотят иметь возможность сравнить координаты Х и Y отверстий расположенных на одной оси заготовки, с разных сторон при использовании разных нулей и скорректировать их до среднего значения, чтобы не было разнос тенности и черноты после обработки. Может кто подкинет идеи по подпрограмме пересчета? Во вложении фото нолей отверстий в положении 0° (G54) и 180° (G55). 

На форуме нашел вроде бы подходящие формулы, но не совсем понимаю что в моем случае Х0/Y0/Z0 и где их брать.

 

 

39f9a45b46cbe4588f0fa59db80c40d.jpg

3422839a632b7224e7568c35367465a.jpg

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

Добрый день. Может не туда пишу, но вроде бы тема живая. Есть  расточной станок с осями Х/Y/Z/W.  Ноль поворота стола не совпадает с Хо, только с осью Y0 соответственно. Операторы хотят иметь возможность сравнить координаты Х и Y отверстий расположенных на одной оси заготовки, с разных сторон при использовании разных нулей и скорректировать их до среднего значения, чтобы не было разнос тенности и черноты после обработки. Может кто подкинет идеи по подпрограмме пересчета? Во вложении фото нолей отверстий в положении 0° (G54) и 180° (G55). 

На форуме нашел вроде бы подходящие формулы, но не совсем понимаю что в моем случае Х0/Y0/Z0 и где их брать.

 

 

39f9a45b46cbe4588f0fa59db80c40d.jpg

3422839a632b7224e7568c35367465a.jpg

Могу ошибаться с переменными точно не помню их названия. Вы проверьте их к своему станку перед использованием. В рабочей программе напишите переменную G56=[G54 +G55]/2 - теория. На практике будет примерно та 

Рабочая плоскость программы G56. 

[#_WZG56[1]]=[#2501+#2502]/2.

 

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

Добрый день.После очень долгого перерыва вернулся на производство. Станок - фрезерный центр Fanuc Oi MFplus .

Начал потихоньку осваивать переменные.Вопрос знатокам - могу ли я использовать несколько переменных #1, но с разными данными внутри, при том, что  всегда #1=1?

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

могу ли я использовать несколько переменных #1, но с разными данными внутри, при том, что  всегда #1=1?

Здравствуйте. Любая переменная хранит в определённый момент времени какое-то единственное значение.

С другой стороны, #1 относится к локальным переменным, и при каждом вызове макропрограммы (через G65) создаётся новый блок локальных переменных #1 - #33, которые действуют только на своём уровне вызова подпрограммы. Поэтому эти переменные, хоть и обозначаются одинаково, но считаются разными переменными.

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

Обращаюсь через WHILE , и условие - просто счетчик проходов контура, а контуров всего на детали два, но я пока не знаю, как задействовать еще одну(вторую, если надо) переменную.

Может подскажете где почитать?Нужен просто синтаксис? второй переменной.

#2=1
WHILE[#2 LE 10] DO2
Код программы
...
...
#2=#2+1
END2
M30

Может как-то так?

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

. Любая переменная хранит в определённый момент времени какое-то единственное значение.

Квантовый компьютер хранит в одной переменной несколько значений. И у каждого своя вероятность что при считывании выпадет именно оно

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

Да, правильно. Можно сокращённо писать WH вместо WHILE.

(В руководстве по программированию HAAS всё объясняется и много примеров.)

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

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

 


O0253(PROG-NERG)
#1=0(NACHALO-X)
#2=0(NACHALO-Y)
#3=-500(SHIRINA-LISTA)
#4=-250(DLINA-LISTA)
#5=2.5(TOLSHINA-ZAGOTOVKI)
#6=1.5(TOLSHINA-FIKSATORA)
#7=50(DIAMETR-FREZI)
#8=#7/4(SMESHENIE-OT-NOLYA-PO-X)
#9=#4-[#7/2](PEREBEG-PO-Y)
#10=#7/2.2(PEREKRITIE-OBRATNOGO-HODA-PO+X)
#11=#2+[#7/2](PEREBEG-PO+Y)
#12=0.7*#7(PEREKRITIE-70)
#16=#6/#5/2(SHAG)
#13=#7/2
N1T3M6
G0G90G55X#1Y#13 
G43Z50H3S500M13
WHILE[#5GT#6]DO1
#5=#5-#16
IF[#5LT#6]THEN#5=6#
G1Z#5F1000
WHILE[#1GT#3]DO2
G1X#1F1000 
G1G91X-#8
G90Y#9F250 
G91X#10 
G90Y#11F380 
#1=#1-#12
END2
END1
G0Z50M15 
G0G53G49Z-100
G0G53Y-50
M30
%

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

Добрый день. Здесь у Вас ошибка:

2 часа назад, Vomkin сказал:

IF[#5LT#6]THEN#5=6#

Следует написать IF[#5LT#6]THEN#5=#6

 

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

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

Не совсем так. В Вашем случае как раз габарит и не циклится :)

Между End2 и End1 нет возврата к стартовому значению для #1. Условие WHILE[#1GT#3] перестанет выполняться после первого прохода по Z, вот ничего и не происходит.

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

Добрый день. Здесь у Вас ошибка:

Следует написать IF[#5LT#6]THEN#5=#6

 

Это я сюда так вставил, а так там нормально 

4 часа назад, mannul сказал:

Пытался понять что такое #6 и #16 и зачем #6/#5/2. Так ничего и не понял.

#6 конечная толщина листа

#16 это шаг, который по Z идёт 

 

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

#6 конечная толщина листа

#16 это шаг, который по Z идёт

Почему шаг рассчитывается делением одного на другое и потом на 2? Шаг это же желаемая величина. Нужно в программе указывать шаг и конечную толщину, добавить счетчик который будет считать текущую толщину, сравнивать с конечной и опускать инструмент на величину шага.

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

Это я сюда так вставил, а так там нормально 

 

 

@mannul Есть подозрение, что в данном случае тоже "так вставил"(ось). Ставлю на то, что в реальной программе #16=[#5-#6]/2.

Но посмотрим, что автор скажет.

@Vomkin А что конкретно хоть работает не так? А то "по глубине, что то я не так делаю, или я сам себя замкнул уже, не понимаю" - слишком расплывчатое объяснение :)

Опечатки есть, как уже выяснилось, поэтому вопрос спорный, но если реально нет инициализации #1 внутри DO1-END1 - работать не будет.

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

@Vomkin А вообще... я сижу на работе, и мне скучно (настолько, что позволил себе пару банок пива), так что держите :) Строки, которые я изменил или добавил - выделены жирным, если важно, и курсивом, если неважно (Вы же эти цифры тоже от балды взяли). Привожу упрощённый вариант.

 

O0253(PROG-NERG)
#501=0(NACHALO-X) 
#2=0(NACHALO-Y)
#3=-500(SHIRINA-LISTA)
#4=-250(DLINA-LISTA)
#5=100500(TOLSHINA-ZAGOTOVKI)
#6=0,001(TOLSHINA-FIKSATORA)

#7=50(DIAMETR-FREZI)
#8=#7/4(SMESHENIE-OT-NOLYA-PO-X)
#9=#4-[#7/2](PEREBEG-PO-Y)
#10=#7/2.2(PEREKRITIE-OBRATNOGO-HODA-PO+X)
#11=#2+[#7/2](PEREBEG-PO+Y)
#12=0.7*#7(PEREKRITIE-70)
#16= 0,971 (тот шаг, который Вы сами посчитаете нужным задать, ЗАВИСИТ ЖЕ от толщины детали, от её габаритов (или у вас подсосиновик? я так вакуумный зажим называю) от фрезы, от материала, от станка...)

#17=FUP[[#5-#6]/#16]  (считаем количество шагов по Z, которое нужно сделать, чтобы доехать с #5 до #6, в стиле "лучше перебдеть, чем недобдеть", иначе было бы FIX)

#501=#16*#17 (считаем новую стартовую точку, опять же в том же стиле)
#13=#7/2
N1T3M6
G0G90G55X#1Y#13 
G43Z50H3S500M13
WHILE[#5GT#6]DO1

#1=#501
#5=#5-#16
IF[#5LT#6]THEN#5=#6 (в эти две строки не вмешиваюсь, но скрипя душу)
G1Z#5F1000
WHILE[#1GT#3]DO2
(без обид, пожалуйста, но тут у Вас такая чушь...  работает - и ладно, не моё дело)
END2
END1
G0Z50M15 
G0G53G49Z-100
G0G53Y-50
M30

 

 

Если стойка младше MF - обязательно прогнать в тестовом режиме. Не из-за того, что я кракозябры написал, а из-за того, что Fanuc'овская математика непредсказуема. Если есть графика - прогоните в ней, в покадровом режиме убедитесь, что работает нормально и в итоге и по X и по Z приезжает куда надо.

 

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

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

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

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

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

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

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

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

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

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

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



  • Сообщения

    • Snake 60
      Скорее всего исправляли в конкретной сборке, для конкретных тел. Насколько я помню, надо в самом эскизе профиля заполнить свойство Description
    • Snake 60
      Делаете дырку в свае - вставляете в нее трубу и 2 человеко-силы крутят сваю ) Дёшево и сердито и не нужен никакой планетарный редуктор ))
    • gudstartup
      вы всегда ищите свой путь или будете делать то что вам советуют? с самого начала прежде чем приступать к экспериментам вам нужно было вынуть носитель и сделать образ. diskcopy делает копию гибкого диска на другой а вам надо сделать образ жесткого диска или карты памяти. делайте как советует @Viktor2004 иначе еще чего нибудь сломаете или вам станок не нужен и вы его приобрели для экспериментов ? вот а печатной машинке из прошлого нельзя а вот на синумерике можно - удивительные вещи в настоящем происходят!! на 100 % уверен что там не модуль а либо писимиси ай либо жд @mircomax81 хотите работать в дос почитайте помощь по командам 
    • PuKoLLleT
      Доброго дня всем. Поделитесь опытом,раньше такое не доводилось делать. На торце фланца нужно сделать  восемь отверстий ф17H7 на токарно-фрезерном станке с осью Y ,имеется ManualGuide.В моем понимании нужно просверлить,а затем торцевой фрезой расточить нужный диаметр.Получится такой фокус,или надо разверткой доводить нужный размер?  Стойка Fanuc 0i-Tf.
    • Snake 60
      Всё верно, я даже русификатор делал для него (ушло на это где-то около года). Хороший софт был, я всех знакомых на него подсадил в свое время :) У меня даже где-то образ на виртуалке лежит с SW2014+MechSoft, Жаль, что автодеск его поглотил, а не DS :( А по сути вопроса, проектировал двухступенчатый планетарный редуктор в свое время. Что было нужно: Справочник по планетаркам (автора не помню, если надо поищу), из софта MathCAD + GearTeq (софтина идет вместе с GearTrax, только рассчитывает и моделирует несколько зацеплений согласно выбранной схеме, в том числе планетарки) Ой и ошибаетесь. Звездочки - не равно зубчатые колеса в планетарке) Мы намучились с малой точностью изготовления на эл.эрозии, а Вы лазером ))) Был собран опытный образец редуктора с незакаленными деталями, чисто проверить геометрию, отладить сборку. Так потом начальство этот редуктор сказало испытать в бою, как я не противился)) Помер за пару дней интенсивных нагрузок ))) Материал, термообработка и точности изготовления решают )
    • Snake 60
      @Тихоход  Ещё один вариант - изучать программирование и писать свою программу/макрос. Вот пример конфигуратора двери: https://www.youtube.com/watch?v=wv4HryWQBSk
    • mircomax81
      Посредством Diskcopy можно сделать адекватную копию на флоппи диск?
    • Andrey_kzn
      Да, ведь советовали автору вытащить жёсткий диск и сделать образ. Неужели самому не интересно, как устроен этот старый промкомпьютер? Там может стоять как жёсткий диск, так и CF-карта, или же Disc-on-chip или Disc-on-module.  Как-то очень давно, на подобном промышленном оборудовании (большая печатная машина) я не смог перенести  ПО с родной CF - карты на другую, такого же размера но другой фирмы. Была также станочная оболочка под досом.  Образ я делал Нортон гостом, развернул его на другую CF-карту без проблем. Машина загрузилась нормально и работала ровно 2 дня, на неродной CF-карте,  потом зависла, и отказалась загружаться. Пришлось вызывать сервисника. От него мы узнали, что нельзя просто так взять и заменить карту  - носитель системного ПО, на другую. А полезли мы туда, так как руководство захотело печатать отчёты по работе машины. В станочном ПО такая функция была. Вот только принтер надо было купить у фирмы - производителя этой самой машины. В попытках заставить работать другой принтер мы редактировали файл  AUTOEXEС.BAT, на предмет загрузки драйвера принтера, ничего не получилось, зато перестали открываться некоторые страницы станочного ПО.  Образ у нас был давно снят, и мы развернули его на другую карту памяти. Родную карту я трогать не стал (как чувствовал, что нельзя ). Сервисник восстановил ПО с архивной дискеты на родную карту памяти, и всё заработало. Дискеты с архивами ПО шли вместе с документацией к машине.  Там были дискеты с Досом, станочной оболочкой, параметрами приводов, программой ПЛК. Он же и предупредил нас о предельно аккуратном обращении с родной картой памяти, и посоветовал немедленно сделать образы с архивных дискет, что мы сразу и проделали.. Вот такой сюрприз от машины эпохи Дос.
    • Борман
    • gudstartup
      а ведь все работало...
×
×
  • Создать...