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

Многоместная обработка через параметрическое программирование


fantom.ul

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

Кто нибудь реализовал многоместную обработку через параметры?

Если да, то поделитесь способом.

Мой вариант Cimco в отрисовывается прекрасно, а на станке хрень какая-то получается.

Все сходится на том, что я не могу вернуться к прежним координатам после кода G92 и обработка постоянно смещается...

Вот моя прога:

%
O0002
#100=50. (PLOSKOST' BEZOPASNOSTI)
#101=5 (CHISLO ELEMENTOV PO X)
#102=70. (SHAG ELEMENTOV PO X)
#103=4 (CHISLO ELEMENTOV PO Y)
#104=50. (SHAG ELEMENTOV PO Y)
 
N3 T3 M6 (CENTROVKA)
G54 G90 G43 H3 X0 Y0 Z#100 S2500 M3
M8
#31=#101 (SCHETCHIK CHISLA ELEMENTOV PO X)
#33=#103 (SCHETCHIK CHISLA ELEMENTOV PO X)
(TELO PROHODA)
N300 G81 X12.1 Y8. R0.5 Z-0.5 F100
X32.9
G80 G0 Z#100
X0 Y0
(KONEC TELA PROHODA)
G92 X-#102
#31=#31-1
IF[#31 GT 0]GOTO300
G53
G54 X0
G92 Y#104
#31=#101 (SCHETCHIK CHISLA ELEMENTOV PO X)
#33=#33-1
IF[#33 GT 0]GOTO300
M9
G91 G28 Z0 M5
G53
M1
 
N4 T4 M6 (SVERLO D0.9)
G54 G90 G43 H4 X0 Y0 Z#100 S2500 M3
M8
#41=#101 (SCHETCHIK CHISLA ELEMENTOV PO X)
#43=#103 (SCHETCHIK CHISLA ELEMENTOV PO X)
(TELO PROHODA)
N400 G81 X12.1 Y8. R0 Z-4. F15
X32.9
G80 G0 Z#100
X0 Y0
(KONEC TELA PROHODA)
G92 X-#102
#41=#41-1
IF[#41 GT 0]GOTO400
G53
G54 X0
G92 Y#104
#41=#101 (SCHETCHIK CHISLA ELEMENTOV PO X)
#43=#43-1
IF[#43 GT 0]GOTO400
M9
G91 G28 Z0 M5
G53
M1
 
N5 T5 M6 (METCHIK D1.2)
G54 G90 G43 H5 X0 Y0 Z#100 S2500 M3
M8
#51=#101 (SCHETCHIK CHISLA ELEMENTOV PO X)
#53=#103 (SCHETCHIK CHISLA ELEMENTOV PO X)
(TELO PROHODA)
N500 G95 G84 X12.1 Y8. R0.3 Z-3. F0.25
X32.9
G94 G80 G0 Z#100 
X0 Y0
(KONEC TELA PROHODA)
G92 X-#102
#51=#51-1
IF[#51 GT 0]GOTO500
G53
G54 X0
G92 Y#104
#51=#101 (SCHETCHIK CHISLA ELEMENTOV PO X)
#53=#43-1
IF[#53 GT 0]GOTO500
M9
G91 G28 Z0 M5
G53
G91G28Z0
G91G28Y0X0
M30
%

Картинка из Cimco:

post-13197-0-34569000-1442662414_thumb.jpg

 

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


Было дело, ничего не получилось через G92.

Поставил G52 и всё пошло.

А можно поподробнее?

 

P.S. почитал я про код G52 в инструкции по Фануку. Стыдно признаться, но нефига не понял...  :confused_1:

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

Есть куча других смещений: G54-G59 и еще много дополнительных. Есть программирование в относительных координатах G91. Есть Код G92 или G50, которым можно сместить "туда" и вернуть "обратно". Есть переменные, в которые можно записывать, с них считывать, т.е ими же подсчитывать суммарные значения. Наконец, есть переменные, в которых записано текущее положение, текущие смещения и т. д. Нужно только выбрать с чем удобнее работать.

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

Есть куча других смещений: G54-G59 и еще много дополнительных. Есть программирование в относительных координатах G91. Есть Код G92 или G50, которым можно сместить "туда" и вернуть "обратно". Есть переменные, в которые можно записывать, с них считывать, т.е ими же подсчитывать суммарные значения. Наконец, есть переменные, в которых записано текущее положение, текущие смещения и т. д. Нужно только выбрать с чем удобнее работать.

Относительные координаты не подходят по нескольким соображениям. Код G92 - очень коварная команда, как я убедился, и сместить "туда" и вернуть "обратно" не так просто. Как поможет тут зеркальная обработка G50 - трудно представить. Остальное - буду думать.

Спасибо.

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

У фанука 3 группы G-кодов. G50- аналог G92 в группе кодов А. Могу ошибаться, - смещение G92 должно отменяться с концом программы, в отличии от G50, которое не отменяется..


в вашем случае я бы через переменные менял координаты обработки вместо смещения нулей

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

Вы знаете, не отменилось ни с М30 ни с М2.

Дело было на студенческом симуляторе, чтобы не мучиться просто переустановил программу.

Так до сих пор не знаю как с G92 бороться.

Пользуюсь G52.

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

в вашем случае я бы через переменные менял координаты обработки вместо смещения нулей

Дело в том, что, в моем случае,  в промежуток между строками (TELO PROHODA) и (KONEC TELA PROHODA) я могу вставить ЛЮБОЙ фрагмент обработки в обычных координатах. Т.е. та недоделанная УП, что я привел здесь, по сути - просто "рыба".

Задавая же конкретные координаты переменными - так уже не получится.

 

У фанука 3 группы G-кодов. G50- аналог G92 в группе кодов А.

Возможно, я что-то не понял, но, из оглавления "Руководства..." :

 

14.7 МАСШТАБИРОВАНИЕ(G50, G51) .............................................................................. 280

14.10 ПРОГРАММИРУЕМОЕ ЗЕРКАЛЬНОЕ ОТОБРАЖЕНИЕ(G50.1, G51.1) ................ 296
 
Что из этого вы имели ввиду?
Ссылка на сообщение
Поделиться на других сайтах

Что из этого вы имели ввиду?

 

Вы правы, для версии М неприменимо.

Возможно, изменение бита RLC поможет:

post-14754-0-04335400-1442759358_thumb.jpg

Можно записать коррекцию в другую переменную, а в конце программы восстановить:

post-14754-0-20284400-1442760135_thumb.jpg

А можно сделать счетчик смещений и в конце сместить обратно. Но способы выше понадежнее будут в случае прерывания программы.

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

Вы правы, для версии М неприменимо.

Возможно, изменение бита RLC поможет:

attachicon.gifG92.JPG

Можно записать коррекцию в другую переменную, а в конце программы восстановить:

attachicon.gifпеременные.JPG

Эти системные переменные я знаю и умею использовать. Но, дело в том, что пишу прогу не для себя, и я не могу предсказать реакцию исполнителя в случае несанкционированного вмешательства и прочих форс-мажоров. Изменение этих переменных при отработке УП может повлечь, в случае сбоя в работе, непредсказуемые последствия. Уж поверьте - я знаю. 

В данном случае - нужен принцип врача "не повреди". Т.е. оператор просто должен запустить прогу с начала и не заморачиваться. 

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

Когда вы задаете смещение командой происходит ровно то же самое, - перезаписываются переменные тем же способом.

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

Когда вы задаете смещение командой происходит ровно то же самое, - перезаписываются переменные тем же способом.

 

Позвольте не согласиться. 

Когда я задаю смещение кодами G92 (G52) - значения привязки по G54-G59 (системные переменные, соответствующие им) не меняются. Максимум, что мне грозит - нужно выключить станок и все восстановится. 
В вашем же случае - значения привязки по G54-G59 изменятся.
Ссылка на сообщение
Поделиться на других сайтах

Не эти, так другие переменные перезаписываются. Фанука нет, проверить не могу.

В п.7.2.1 написано, что при выходе в референт восстанавливается.

 

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

Не эти, так другие переменные перезаписываются. Фанука нет, проверить не могу.

В п.7.2.1 написано, что при выходе в референт восстанавливается.

При ручном выходе. В этом случае нет никакой "защиты от дурака". 

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

G92 - присвоение значения координат, если в абсолюте. Для смещения надо использовать относительные значения адресов XYZ. Хотя фанук не придерживается своих мануалов, он их каждый раз новые сочиняет.

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

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

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

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

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

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

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

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

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

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

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




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