Bir etiket yazıcısını bir robot hücresine, bir Allen-Bradley PLC adımına veya bir MES iş akışına entegre ediyorsanız REST yanlış araçtır. İş durumu için polling yapmak döngü yakar. HTTP/1.1 üzerinden JSON, saniyede bir birim çalışan bir hatta karşılayamayacağınız gecikme yakar. İstemcileri üretebileceğiniz tipli bir sözleşme yoktur. Entegratör, on yıl önce yazdığı aynı string-jonglörlüğü kalıpsal kodunu yazar, sonra bir sonraki satıcı için yeniden yazar.
LabelInn Edge Server, tam olarak bu senaryo için tipli bir gRPC yüzeyi sunar. Dört hizmet, canlı telemetri ve iş yaşam döngüsü olayları için sunucu-akış, tesis-ağı güveni için mTLS ve bir öğleden sonra içinde Go, Python, C++, Java, .NET, Rust ve Kotlin'de istemciler üreten tek bir .proto tanımı.
Dört hizmet, her biri tek bir paragrafta
PrintService — işleri gönder, iptal et ve yeniden yazdır; iş durumunu sorgula; iş yaşam döngüsü olaylarını (kuyrukta → yazdırılıyor → tamamlandı/başarısız) uzun ömürlü bir çağırıcıya akıt, böylece bir robot denetleyici polling yapmaz. Vardiya sonu patlamaları için toplu gönderim. Her çağrı, hattın izlenebilirlik veritabanına geri taşıdığınız kararlı bir iş kimliğiyle tipli bir yanıt döndürür.
PrinterFleetService — yazıcı filosunu sayar, yazıcı başına sağlığı al (durum, kuyruk derinliği, donanımın bildirdiği yerlerde şerit ve etiket seviyeleri) ve yazıcı durum olaylarını akıt, böylece bir SCADA HMI, kaynak eşiği geçtiği anda "Yazıcı-A: Düşük Şerit" göstergesini yakar. Akış burada doğru ilkeldir: olaylar seyrektir ve polling vergisi olmadan anlık fan-out istersiniz.
VerifyService — sabit veya el tarayıcısından barkod tarama yüklerini kabul et, en son baskıya karşı eşleştir ve bir doğrulama kararı döndür. Scan-to-verify gerektiren düzenlenmiş hatlar için bu, yazıcı ile tarayıcı arasında oturan ayrı bir doğrulama uygulaması olmadan döngüyü kapatır.
SystemService — sağlık, sürüm, yetenek keşfi ve izleme için bir kalp atışı. Her entegratörün ilk önce kabloladığı ve unuttuğu şey.
Robotlar söz konusu olduğunda tipli, dizgisel-tiplinin neden yendiğini
Bir robot hücresinde hatalar fiziksel. Yanlış yönlendirilmiş bir etiket, yanlış yönlendirilmiş bir parça anlamına gelir, bir durdurma ve manuel kurtarma anlamına gelir. Bir JSON anahtarındaki yazım hatasının sessizce yanlış olanı yaptığı dizgisel-tipli bir entegrasyonun maliyeti üretim saatleri olarak ölçülür.
gRPC'nin tipli protobuf şeması tüm hata sınıflarını imkânsız kılar:
- Telde olmayan bir alan üretilen istemcide bir derleme hatasıdır, çalışma zamanı
nulldeğil. - Sunucunun sahip olduğu ancak istemcinin olmadığı bir enum değeri, sessizce bir varsayılana zorlanmak yerine açık bir "bilinmeyen" olarak yüzeylenir.
- Gerekli alanlar gereklidir; üretilen istemci geçersiz bir istek oluşturmayı reddeder.
- Akış yöntemleri birinci sınıftır; bir iş yaşam döngüsünün olay-güdümlü olduğunu unutamaz ve yanlışlıkla sıcak bir döngüde bir durum uç noktasını polling yapamazsınız.
Entegrasyonunu bir Kalite gözden geçirmesinde savunmak zorunda olan bir entegratör için "üretilen istemci hatalı bir istek oluşturamaz" gerçek bir cevaptır.
En sık gördüğümüz entegrasyon kalıpları
1. PLC adımı ladder mantığından SubmitJob çağırır
Hücredeki bir Allen-Bradley CompactLogix veya Siemens S7-1500, gRPC'yi bir yan-arabası aracılığıyla konuşabilir (Raspberry Pi veya küçük endüstriyel PC'de çalışan, PLC'ye Modbus / Ethernet/IP arayüzü ve dışarıya gRPC sunan bir Linux IPC). Yan-araba tipli gRPC istemcisini tutar. PLC adımı paylaşılan belleğe sipariş kimliğini ve şablon kimliğini yazar, bir "baskı isteği" bitini yükseltir, yan-araba SubmitJob'u çağırır ve dönen iş kimliğini geri yazar. PLC adımı, sunucu-akışı o iş kimliği için bir completed olayı yaydığında yan-arabanın yükselttiği bir "baskı tamamlandı" bitini bekler.
Döngü süresi: tipik olarak PLC bit yükselmesinden PLC bit düşmesine 60-150 ms, yazıcı ısınmasına bağlı. Geride kalmadan saniyede bir birim hatlarıyla uyumlu.
2. MES (Wonderware, Ignition, FactoryTalk) doğrudan
Modern MES platformları gRPC'yi yerel olarak veya üretilen bir istemci aracılığıyla konuşur. Ignition'ın betikleme ortamı örneğin bir .proto'dan Java istemcileri üretir ve bunları etiket değişikliği betiklerinde kullanır. MES baskı gönderimlerini toplu olarak gönderir, iş akışını izler ve sonuçtaki etiket üretimini iş emrine karşı gerçek zamanlı olarak karşılaştırır. Kalite Müdürünün MES paneli, polling olmadan "basılan etiketler: 412 / 412" yeşil onayını görür.
3. Robot hücre denetleyicisi (Fanuc, ABB, KUKA)
2026'daki robot denetleyiciler açık-platform Linux yan-arabasıyla gelir (RoboDK, Fanuc PMC Plus, ABB RobotWare 7'nin IRC5/OmniCore uzantısı). Yan-araba gRPC istemcisini tutar. Robotun TPP programı, gRPC çağrısını sarmalayan bir denetleyici işlevini çağırır. Akışlı baskı yaşam döngüsü olayı robotun teslim hakemliğini yönlendirir: etiket basıldığı ve doğrulandığı onaylanana kadar parçayı aşağı akışa serbest bırakma.
Sunucu-akışı, mTLS, geri basınç
İki sunucu-akış yöntemi (PrintService.StreamEvents, PrinterFleetService.StreamPrinterStatus), bu alan için gRPC vs. REST'i haklı kılan yöntemlerdir. Her ikisi de:
- Yerel akış kontrolüne sahip uzun ömürlü HTTP/2 akışlarında çalışır, böylece yavaş bir tüketici sunucuyu eritmez.
- Ayrı bir union şeması ile tipli olay yüklerini taşır (yazıcı-online, yazıcı-hata, düşük-şerit, iş-kuyruğa-alındı, iş-tamamlandı, iş-başarısız vb.).
- gRPC'nin bağlantı yönetimi ilkelliklerinden geçici TCP sıfırlamalarını atlatır, böylece tesis LAN'ındaki kısa bir ağ titremesi katta olayları kaybetmez.
Tesis ağında güven için sunucu mTLS'yi destekler: edge düğümü yalnızca müşterinin seçtiği CA tarafından imzalanan istemci sertifikalarına güvenir. Tesis ağının zaten segmente edildiği ve TLS sonlandırmasının çevre cihazında gerçekleştiği bir ortam için, gRPC meta verilerinde API anahtarı kimlik doğrulaması da desteklenir.
.proto'yu ve başlangıç istemcisini nasıl alırsınız
labelinn_edge.proto tanımı, izin verici bir entegrasyon lisansı altında kurumsal müşterilere sunulur. Kısa bir keşif görüşmesinin ardından proto'yu artı seçtiğiniz dilde önceden bir değerlendirme kiracısına bağlanmış bir başlangıç istemcisini göndeririz. Çoğu entegratör bir saat içinde ilk işlerini gönderiyor.
İstemcinizi Bir Öğleden Sonra İçinde Üretin
Endüstriyel otomasyon mühendisleri — proto'yu, dilinizde başlangıç istemcisini ve onu yönlendireceğiniz bir değerlendirme kiracısını isteyin.
.proto'yu isteyin →