Bilgi

Makro programların işe yaramaz olduğunu kim söylüyor? Çünkü telafi edemiyorsun!

Günümüzde birçok CNC teknisyeni makro programları anlamıyor. Otomatik programlama yazılımı ile makro program öğrenmeye gerek olmadığına inanıyorlar. Aslında makro programların fonksiyonları oldukça güçlüdür. Örneğin, toplu ve tekrarlı programlar yazarken, makro programların kullanılması, kapsamlı tekrarlı programlamaya gerek kalmadan yalnızca birkaç veri noktasının değiştirilmesini gerektirir. Bu, işlemleri büyük ölçüde basitleştirebilir ve iş verimliliğini artırabilir.
Makro programları, aritmetik işlemler, mantıksal işlemler ve işlevlerin karma işlemleri için değişkenleri kullanabilir ve ayrıca döngü ifadeleri, dal ifadeleri ve alt program çağrı ifadeleri sağlayabilir.
Genel olarak konuşursak, makro programlar aynı grafiklere sahip ancak farklı boyutlardaki parça serilerini programlamak için uygundur; Aynı proses yoluna ancak farklı konumsal parametrelere sahip seri parçaların programlanması için uygundur; Paraboller, elipsler, hiperboller vb. gibi enterpolasyon talimatları olmadan eğri programlamaya uygundur.
1.
Değişkenlerin Temsili ve Kullanımı
1, Değişken gösterimi
#I (I=1,2,3,...) veya # []
Örnek: # 5, # 109, # 501, # [# 1+# 2-12]
2, Değişkenlerin kullanımı
1. Adres kelimesinden sonra bir değişken numarası veya formülü belirtin
Biçim:

# I
Buradaki "I" değişken numarasını temsil eder
Örnek: F # 103, eğer # 103=15 ise F15'tir
Z - # 110, # 110=250 varsayarsak, Z-250 olur
X [# 24+# 18 * COS [# 1]]
2. Değişken sayılar değişkenlerle değiştirilebilir
Örnek: # [# 30], eğer # 30=3 ise # 3'tür
3. Değişkenler O, N, I adreslerini kullanamaz
Örnek: Aşağıdaki yöntemlere göre izin verilir
O # 1;
I # 2 6.00 × 100.0;
N # 3 Z200.0;
4. Değişken numarasına karşılık gelen değişken, her adres için belirli bir sayısal aralığa sahiptir.
Örnek: # 30=1100 olduğunda M # 30'a izin verilmez
5. # 0 boş bir değişkendir ve tanımlı değişken değerleri olmayan değişkenler de boş değişkenlerdir
6. Değişken Değer Tanımı:
Programı tanımlarken ondalık noktalar atlanabilir, örneğin: # 123=149
2.
Değişken türleri

1697180776294780.jpg

1. Yerel değişkenler # 1~# 33
Bir makro programında yerel olarak kullanılan ve işlem sonucu başka programlar tarafından kullanılamayan bir değişkendir.
Örnek: A Makro Programı B Makro Programı
#10=20 X # 10, X20'yi temsil etmiyor
Elektrik kesintisinden sonra temizle, makro programlarını çağırırken değişken değerlerini gir
2. Ortak değişkenler # 100~# 199, # 500~# 999
Her kullanıcının makro programındaki ortak değişkenler, herhangi bir program çağrısıyla aynı işlem sonucuna sahiptir.
Örnek: Önceki örnekte # 10 # 100 olarak değiştirildiğinde B makro programı
X # 100, X20'yi temsil eder
#100~# 149 elektrik kesintisinden sonra temizle
#500~# 531 Tutma tipi değişkeni (elektrik kesintisinden sonra kaybolmaz)
3. Sistem değişkenleri
Değeri sistemin durumuna bağlı olan sabit amaçlı bir değişken
Örnek: # 2001 değeri, takım 1 telafisi için X ekseni telafi değeridir
#5221 değeri, X ekseni G54 iş parçası başlangıç ​​ofseti değeridir
Giriş yaparken ondalık nokta girilmelidir. Ondalık nokta atlanırsa birim μ M'dir.
üç
Aritmetik öğretimi
Bir ifadenin sağında sabitler, değişkenler, işlevler ve formüller bulunabilir
Formülde #j ve #k sabit de olabilir
Denklemin sağ tarafında değişken sayısı ve ifadesi yer alır.
1, Tanım
#I=# j
2, Aritmetik işlem
#I=# j+# k
#I=# j - # k
#I=# j * # k
#I=# j/# k
3, Mantıksal işlem
#I=#Şaka #k
#I=# JXOK # k
#I=# JAND # k
4, İşlev

1697180846458234.jpg

#I=SIN [# j] sinüs
#I=COS [# j] kosinüs
#I=TAN [# j] teğet
#I=ATAN [# j] arktanjant
#I=SQRT [# j] karekök
#I=ABS'nin mutlak değeri [# j]
#I=YUVARLAK [# j] En yakın tam sayıya yuvarla
#Round I=DÜZELTME [# j]
#Raunt I=FUP [# j]
#I=BIN [# j] BCD → BIN (ikili)
#I=BCN [# j] BIN → BCD
1) Derece cinsinden açı
Örnek: 90 derece ve 30 dakika 90,5 dereceye eşittir
2) ATAN fonksiyonundan sonraki iki kenar uzunluğu "/" ile ayrılmalıdır
Örnek: # {{0}}ATAN [1]/[-1] olduğunda # 1, 35,0 olur
3) YUVARLA, ifadelerdeki adresler için kullanılır ve her adresin en küçük kümesine yuvarlanır.
Örnek: # 1=1.2345, # 2=2.3456'yı ayarlayın ve birimi 1 μ M olarak ayarlayın
G91 X - # 1; X-1.235
X - # 2 F300; X-2.346
X [# 1+# 2]; X3.580
Orijinal konumuna döndürülmemiş, şu şekilde değiştirilmelidir:
X [YUVARLAK [# 1]+YUVARLAK [# 2]];
4) Yuvarlama sonrası mutlak değer orijinal değerden büyükse yukarıya yuvarlanır; aksi halde aşağı yuvarlanır
Örnek: # 1=1.2, # 2=-1.2 olduğunda
Eğer # {{0}}FUP [# 1] ise, o zaman # 3=2.0
# {{0}}DÜZELTME [# 1] ise, o zaman # 3=1.0
Eğer # {{0}}FUP [# 2] ise, o zaman # 3=-2.0
# {{0}DÜZELTME [# 2] ise, o zaman # 3=-1.0
5) Bir fonksiyona talimat verirken sadece ilk iki harf yazılabilir
Örnek: YUVARLAK → RO
DÜZELTME → FI
6) Öncelik
Fonksiyon → Çarpma ve bölme (*, 1, AND) → Toplama ve çıkarma (+, -, OR, XOR)
Örnek: # 1=# 2+# 3 * SIN [# 4];
7) Köşeli parantezler, ifadeleri yorumlamak için en fazla 5 defa kullanılan köşeli parantezlerdir.
Örnek: # 1=SIN [[[# 2+# 3] * # 4+# 5] * # 6]; (Üçlü)
dört
Transfer ve Döngü Talimatları
1. Koşulsuz transfer
Biçim: GOTO n;
Koşulsuz olarak program segmenti n'ye aktarın
n: Program segment numarası (1-99999)
N ayrıca değişkenler veya ifadelerle de değiştirilebilir
GOTO10;
GOTO # 10;
2. Şartlı transfer
EĞER [] GOTO n;
Eğerkarşılanırsa, bir sonraki adım segment numarası n olan program segmentine transfer etmektir.
Memnun kalmazsanız sonraki program bölümünü yürütün.
EĞER [] THE;
Eğerkarşılanırsa, THEN'den sonra yalnızca bir makro program ifadesini yürütün.
IF [# 1EQ # 2] THE # 3=0;
Koşullu formül:

1697180896472742.png

#J ve #k ile de değiştirilebilir
Örnek: IF [# 1 GT 10] GOTO 100;
N100 G00 G91 X10;
Örnek: 1'den 10'a kadar toplamını bulma
O9500;
#1=0
#2=1
N1 IF [# 2 GT10] GOTO 2
#1=# 1+# 2;
#2=# 2+1;
GOTO 1
N2 M30
3. Döngü
Biçim: WHILE [] YAP m; (m=1, 2, 3)
SON dk
Koşullar karşılandığında, DOm'dan ENDm'ye, ardından DOm'un program bölümünden yürütün
Memnun kalmadığınızda program bölümünü ENDm'den sonra yürütün
WHILE deyimi atlanırsa ve yalnızca DOm... ENDm mevcutsa, DOm ve ENDm arasında bir ölü döngü oluşur
3. Yuvalama
EQ NE mevcut olduğunda boş değer ve "0" farklıdır
Diğer koşullar altında null ve "0" aynıdır
Örnek: 1'den 10'a kadar toplamını bulma
O0001;
#1=0;
#2=1;
WHILE [# 2LE10] DO1;
#1=# 1+# 2;
#2=# 2+# 1;
SON1;
M30;

 

Bunları da sevebilirsiniz

Soruşturma göndermek