TurkeyCNC Forum

CNC Okulu => Fanuc => Macro Programlama => Konuyu başlatan: SFKY42 - Ocak 12, 2019, 08:01:15 ÖS

Başlık: MAKROYLA ALAKADAR BI SORU
Gönderen: SFKY42 - Ocak 12, 2019, 08:01:15 ÖS
BEN ASAGIDAKI GIBI SINIRLI PARCA URETEN PROGRAM YAZDIM. BENIM MERAK ETTIGIM, 3901 ILE 3902 SISTEM DEGISKENINE DEGER ATAYABILIR MIYIZ ? EMIN OLMADAN, TEZGAHTA DENEMEDIM.
NOT: PROGRAM ICERIGINE TAKILMAYIN, TORNA DA SADECE BASIT DELIK DELME.
DIPNOT: PROGRAM ICERIGINI BASIT TUTMAYA CALISTIM, BASKA KARDESLERIM ICIN DE ANLASILIR OLMASINI UMUYORUM.
O4321
#501 = #3901
#502 = #3902
#3901 = 0.
#3902 = 100.
N11 G0 G40 G97 S1500 T101 X0. Z3.
G1 Z-3. F.05 M8
Z-19.5 F.07
W.5
Z-20.
G0 U.1 Z50. M9
M54
M0
IF[#3901NE#3902] GOTO11
#100 = #3901
#3901 = #501
#3902 = #502
#501 = #0
#502 = #0
#3000 = 100 (IS, [#100].ADET)
M30
%


O4321
#501 = #3901 (TEZGAHTA KI TOPLAM ONCEDEN ISLENILEN PARCA SAYISI, 501 NUMARALI DEGISKENDE DEGERI SAKLIYORUM.)
#502 = #3902 (TEZGAHTA ONCEDEN ISLENILMESI GEREKEN PARCA SAYISI, 502 NUMARALI DEGISKENDE DEGERI SAKLIYORUM.)
#3901 = 0. (IS PARCASI SAYISINI SIFIRLIYORUM.)
#3902 = 100. (TOPLAMDA ISLENILECEK IS PARCASI SAYISINI GIRIYORUM.)
N11 G0 G40 G97 S1500 T101 X0. Z3.
(ASAGIDAKI SATIRDA ISE 100 ADET IS PARCASINI TEZGAH OKUDUGUNDA, TEZGAH STOP, EKRANA ALARM DUSECEK.)
IF[#3901EQ#3902] GOTO22
G1 Z-3. F.05 M8
Z-19.5 F.07
W.5
Z-20.
G0 U.1 Z50. M9
M54 (OPERATORLUK YAPTIGIM TEZGAHTA PARCA SAYMA KOMUTU, M30 KULLANMADIM CUNKU PROGRAM BASA SARMASINI ISTEMEYIZ [: )
M0
GOTO11 (100 ADET IS PARCASINI GORENE DEK SATIRLAR ARASI ISLEM TEKRARINA GIT.)
(500LU DEGISKENDE TUTUGUM DEGERLERI GERI TANIMLIYORUM.)
N22 #100 = #3901
#3901 = #501
#3902 = #502
(500LU DEGISKENLERIN KUTUCUKLARINI TEMIZLIYORUM, 0 DAHI GOZUKMESIN. CUNKU 0 DA BI DEGER.)
#501 = #0
#502 = #0
#3000 = 100 (IS, [#100].ADET) /*BU KISIM DA PARCA SAYISINI 0 GOSTEREBILIR, EMIN DEGILIM.*/
M30
%
Başlık: Ynt: MAKROYLA ALAKADAR BI SORU
Gönderen: Ufk - Ocak 22, 2019, 10:34:44 ÖÖ
Muhtemelen işiniz bitmiştir ama belki pratik olur yazmak istedim.
m54 komutu gördüğünde parça adedi artıyorsa bu şekilde yapmanız daha kolay olur.

O4321
#3901=0
#3902=100
N11 G0 G40 G97 S1500 T101 X0. Z3.
G1 Z-3. F.05 M8
Z-19.5 F.07
W.5
Z-20.
G0 U.1 Z50. M9
M54
M0
IF[#3901LE#3902] GOTO11
#3000 = 100 (IS 100 ADET)
M30
%

eğer programı resetleyip tekrar çalıştırmınız gerekirse
#3901 nolu değişkenin yanına program resetlenirken kaç adet işlendiyse o değer girilmeli.

İyi çalışmalar