s7-1200 plcden direk etiket çıktısı almak

Zebranın kendi dizayn programı var zebra designer burdan etiketini tasarlayıp zpl kodunu alacaksın.Dizayn dosyası dedikleri budur.

ya usb dönüştürücü alman gerekli yada ethernet üzerinden göndereceksin.
Peki gönderdiğim kod değişir mi ethernet üzerinden göndersem ya da usb dönüştürücü üzerinden ?
 
Kod:
'Seagull:2.1:DP
INPUT OFF
VERBOFF
INPUT ON
SYSVAR(48) = 0
ERROR 15,"FONT NOT FOUND"
ERROR 18,"DISK FULL"
ERROR 26,"PARAMETER TOO LARGE"
ERROR 27,"PARAMETER TOO SMALL"
ERROR 37,"CUTTER DEVICE NOT FOUND"
ERROR 1003,"FIELD OUT OF LABEL"
SYSVAR(35)=0
OPEN "tmp:setup.sys" FOR OUTPUT AS #1
PRINT#1,"Printing,Media,Print Area,Media Margin (X),0"
PRINT#1,"Printing,Media,Clip Default,On"
CLOSE #1
SETUP "tmp:setup.sys"
KILL "tmp:setup.sys"
CLIP ON
CLIP BARCODE ON
LBLCOND 3,2
SYSVAR(48) = 0
CLL
OPTIMIZE "BATCH" ON
PP2,1216:PL406,2
PP406,1218:DIR2
PL203,2
PP2,1015:DIR1
PL406,2
PP2,1218:DIR2
PL203,2
PP8,1210:DIR1
PL394,2
PP400,1212:DIR2
PL191,2
PP8,1021:DIR1
PL394,2
PP8,1212:DIR2
PL191,2
PP22,1167:DIR1
PL82,10
PP58,1177:DIR2
PL121,10
PP124,1167:DIR1
PL71,10
PP124,1112:PL61,11
PP124,1056:PL71,10
PP124,1177:DIR2
PL121,10
PP215,1167:DIR1
PL71,10
PP215,1112:PL71,11
PP215,1056:PL71,10
PP215,1177:DIR2
PL66,10
PP276,1122:PL66,10
PP307,1167:DIR1
PL81,10
PP342,1177:DIR2
PL121,10
SYSVAR(48) = 1
LAYOUT RUN ""
PF
PRINT KEY OFF

Şu şekilde bir kod dizini aldım bartender'dan. Direct Protocol diye kendi dili vardı onu seçtim ve bu sonucu gördüm. Errorları görmezden gelirsek kod dizini sence doğru mu ? seninki buna benzer miydi?
Bu kodları PLC mi Hmı'dan mı göndermeliyim,
Gönderirken kullanmam gereken kodlar ve işlemler neler?
Çok sordum kafam karışık Kb :)
 
Öncelikle bu kod zpl kodu değil. ve error yazıyor bir sürü bunu gönderirsen çalıçacağından emin değilim. Bunu anlamak için şöyle bir yöntem deneyebilirsin. Windows yazıcılara yeni bir yazıcı ekleyip generic text türünü seçeceksin.ve pc ile yazıcıya usb printer kablosu ile bağlanacaksın.Ardından bu kodu not defterine yapıştırıp çıktı alma tuşuna basacaksın. Çıktı alırken o tanıttığın yazıcı türünü seçeceksin ve bu kodu yazıcıya gönderdiğinde istediğin şey çıkıyorsa kod kısmı tamamdır. ( bunu diğer arkadaşlarda aynı şekilde yapabilir bunun üzerinden ilerlemekte yarar var kodun doğruluğunu sınamak için ). Daha sonra bu kodu plc üzerinden göndermeye geldi sıra dediğim gibi ben Siemens ile yapmıştım siemensde bir veya daha fazla stringin içine bu karakterleri yazıp yollayarak çıktı alıyordum.Bu kodları hmi dan nasıl gönderirsin emin dğeilim delta teknik desteğe danışabilirsin hızlı dönüş yapıyorlar.
 
Öncelikle bu kod zpl kodu değil. ve error yazıyor bir sürü bunu gönderirsen çalıçacağından emin değilim. Bunu anlamak için şöyle bir yöntem deneyebilirsin. Windows yazıcılara yeni bir yazıcı ekleyip generic text türünü seçeceksin.ve pc ile yazıcıya usb printer kablosu ile bağlanacaksın.Ardından bu kodu not defterine yapıştırıp çıktı alma tuşuna basacaksın. Çıktı alırken o tanıttığın yazıcı türünü seçeceksin ve bu kodu yazıcıya gönderdiğinde istediğin şey çıkıyorsa kod kısmı tamamdır. ( bunu diğer arkadaşlarda aynı şekilde yapabilir bunun üzerinden ilerlemekte yarar var kodun doğruluğunu sınamak için ). Daha sonra bu kodu plc üzerinden göndermeye geldi sıra dediğim gibi ben Siemens ile yapmıştım siemensde bir veya daha fazla stringin içine bu karakterleri yazıp yollayarak çıktı alıyordum.Bu kodları hmi dan nasıl gönderirsin emin dğeilim delta teknik desteğe danışabilirsin hızlı dönüş yapıyorlar.
Evet bu kod Direct Protocol kodu. Yazıcı şu an elimde değil yarın ilk iş dediğini deneyeceğim. Siemens'te yazdığın kod ne idi? Tiaportalla da uğraşmışlığım var sanırsam kod dizinini görürsem deltaya göre yorumlayabilirim. Bir haberleşme başlatıyor muydun?
 
Siemensde yada deltada bir kod yazmıyorsunuz.Oluşturduğunuz etiket dizaynını bir kanal üzerindne ( rs232,ethernet vb..) yazıcıya direkt gönderiyorsunuz. Gerisini yazıcı işliyor Benim zpl nin bir kısmı aşağıdaki gibi
Buradaki XA,MMT,FT herbiri yazıcı için bir komut zaten
^XA~TA000~JSN^LT0^MNW^MTT^PON^PMN^LH0,0^JMA^PR4,4~SD20^JUS^LRN^CI0^XZ
^XA
^MMT
^PW203
^LL0472
^LS0
^BY1,3,87^FT133,386^BCB,,N,N
^FD>:ABCDEFGH/20.06.>52017>6/16:35^FS
^FT154,341^A0B,20,19^FH\^DENEME/20.06.2017/16:35^FS
^PQ1,0,1,Y^XZ
 
Bu kodu plc ile göndermek istediğimde ethernet üzerinden nasıl gönderirim?
Bir haberleşme açıp mı göndermeliyim? Bir karakter gönder mi demeliyim?
 
Siemens tarafı için konuşuyorum. TCON bloğu ile printer ipsini yazıp connection oluşturuyoruz. TSEND bloğunun içine de bu kodu içine koyduğumuz stringi yazıp gönderiyoruz. Deltada bu işlem nasıl yapılır bilmiyorum. Delta destek den yardımcı olacaklardır eminim
 
İçine koyduğumuz stringi derken bizzat bu kodları kopyala yapıştır mı yoksa bunları bir değişken tanımlaması içine mi koyuyorsunzu mesela string a = blabla gibi mi ? Bir örnek sunabilir misiniz?
 
İçine koyduğumuz stringi derken bizzat bu kodları kopyala yapıştır mı yoksa bunları bir değişken tanımlaması içine mi koyuyorsunzu mesela string a = blabla gibi mi ? Bir örnek sunabilir misiniz?
Israrla aynı şeyi soruyorsun :)
Ekteki resimde data_str1 ve data_str2 2 tane string in start value suna koydum bu değerleri.Bu stringleri sırayla Siemens in haberleşme bloğu ile gönderince çıktı alabiliyorsun. Mesela benim etikette tarih,saat,parti no gibi değişmesi gereken yerler de vardı. Onun içinde stringin belirli adreslerine istediğim değerleri move ediyordum. Mesela tarih değerini data_str1[35],data_str1[36],data_str1[37],data_str1[38] string değerlerine gönderip etikete o günün tarihini yazdırıyordum.
54240
 

Forum istatistikleri

Konular
129,835
Mesajlar
930,600
Kullanıcılar
452,663
Son üye
Yılmaz Çetiner

Yeni konular

Geri
Üst