PLC verisini buluta aktarma artık sıradan bir gereksinim: bakım ekibi uzaktan durum verisi, yönetim sahalar arası OEE, veri ekipleri de analitik için temiz zaman serileri istiyor. Bu rehber, tesislerde gerçekten işe yarayan üç mimariyi, yani yerel PLC MQTT, edge gateway ve SCADA tabanlı yönlendirmeyi karşılaştırıyor ve her birinin arkasındaki güvenlik ve güvenilirlik kararlarını adım adım ele alıyor. Kendi tesisiniz için bir tasarım seçmenizi sağlayacak bir kontrol listesiyle ayrılacaksınız.
MQTT Neden Genellikle Köprü Görevi Görür?
PLC'ler deterministik, yerel iletişim için tasarlanmış saha protokolleri konuşur: PROFINET, EtherNet/IP, Modbus, S7 iletişimi, ADS. Bunların hiçbiri interneti aşmak için tasarlanmamıştır. Bulut uygulamaları ise güvenlik duvarlarını geçebilen şifreli, kimlik doğrulamalı bağlantılar üzerinden olay akışları ister.
MQTT üç özelliği sayesinde bu ikisinin arasına oturur:
- Yalnızca giden bağlantılar. Tesis tarafı broker'a bir TLS bağlantısı açar. Buluttaki hiçbir şeyin tesisin içine erişmesi gerekmez; bu yüzden gelen trafik için güvenlik duvarında port açılmaz.
- Publish/subscribe ayrışması. PLC tarafı bir kez yayınlar; panolar, historian'lar, analitik ve alarm sistemleri bağımsız olarak abone olur. Yeni bir tüketici eklemek tesise dokunmayı gerektirmez.
- Hafif ve zayıf bağlantılara toleranslı. Küçük başlıklar, keep alive, QoS seviyeleri, retained mesajlar ve kalıcı oturumlar hücresel veya sıkışık WAN bağlantılarını iyi yönetir.
Broker kavramı sizin için yeniyse, bir mimari seçmeden önce bir MQTT broker'ın ne yaptığı ile başlayın.
Mimari 1: PLC'de Yerel MQTT
Kontrolörün kendisi bir MQTT client çalıştırır ve broker'a bağlanır. Siemens S7-1200 ve S7-1500 için bir kütüphane sunar, CODESYS'in bir MQTT client kütüphanesi, Beckhoff TwinCAT'in de IoT fonksiyonları vardır; adım adım anlatımlar Siemens S7 MQTT eğitiminde ve kardeş yazılarında yer alıyor.
Güçlü yönleri: ek donanım yok, minimum gecikme, payload'lar prosesi en iyi bilen kişi tarafından tanımlanır.
Zayıf yönleri: ağ ve sertifika kodu artık kontrol programının içinde yaşar, her değişiklik bir PLC yüklemesi anlamına gelir, store-and-forward kontrolör belleğiyle sınırlıdır ve PLC'nin internete veya bir DMZ broker'ına giden bir yola sahip olması gerekir; birçok güvenlik ekibi buna direnir.
Uygun olduğu durum: bir makine üreticisi bağlantılı makineler teslim ediyorsa veya birkaç kontrolörün birkaç düzine sinyale ihtiyacı varsa ve donanım eklemek pratik değilse.
Mimari 2: Edge Gateway
Kontrol ağındaki bir gateway, PLC'leri yerel protokolleriyle okur ve MQTT'yi yukarı doğru yayınlar. Bu, ticari bir bağlantı sunucusu çalıştıran bir endüstriyel PC, bir edge platformunda bir container, Node-RED veya kısa bir Python servisi olabilir. IIoT edge gateway rehberi donanım ve yazılım seçeneklerini derinlemesine ele alıyor.
Güçlü yönleri: PLC programlarına dokunulmaz, tek bir gateway birçok kontrolöre ve markaya hizmet eder, disk destekli tamponlama WAN kesintilerinden sağ çıkar; payload biçimlendirme, ölü bantlar ve Sparkplug B kodlaması da yazılım araçlarının güçlü olduğu bir yerde gerçekleşir.
Zayıf yönleri: yamalanacak, izlenecek ve yedeklenecek bir cihaz daha; gateway kritik bir düğüm haline gelir; ayrıca PLC'lerde yerel protokol okumalarının etkinleştirilmesi gerekir ve bu bazen devre dışı bırakılmış PUT/GET gibi kontrolör tarafındaki korumaları zayıflatır.
Uygun olduğu durum: bir hattı, bir tesisi veya karışık bir filoyu bağlıyorsanız. Çoğu mevcut (brownfield) tesis için varsayılan seçim budur.
Mimari 3: SCADA Tabanlı Yönlendirme
Mevcut SCADA veya HMI sunucusu zaten her PLC'yi sorgular. O sunucudaki bir MQTT modülü veya betiği, seçilen tag'leri broker'a, çoğu zaman Sparkplug B olarak iletir. Ignition yaygın bir örnektir; MQTT ile Ignition yazısına bakın.
Güçlü yönleri: mevcut tag veritabanını, alarm yapılandırmasını ve adlandırmayı yeniden kullanır; yeni PLC bağlantısı yoktur; tesisten neyin çıktığını yönetmek için tek bir yer vardır.
Zayıf yönleri: bulut verisi artık SCADA'nın erişilebilirliğine ve lisanslamasına bağlıdır; SCADA tag adları kurumsal adlandırma standardıyla eşleşmeyebilir; ayrıca genellikle yüksek değerli bir OT varlığı olan SCADA sunucusu artık internete giden bir yola sahiptir.
Uygun olduğu durum: SCADA önemsediğiniz varlıkları zaten kapsıyorsa ve entegrasyonun sahibi SCADA ekibiyse.
PLC'den Buluta Mimarilerinin Yan Yana Karşılaştırması
| Kriter | Yerel PLC MQTT | Edge gateway | SCADA yönlendirmesi |
|---|---|---|---|
| Ek donanım | Yok | Saha veya hat başına gateway | Yok |
| PLC programı değişiklikleri | Evet | Hayır | Hayır |
| Çok üreticili PLC'ler | Üretici başına bir uygulama | Evet, sürücüler aracılığıyla | Evet, SCADA destekliyorsa |
| Store-and-forward | Sınırlı | Güçlü (disk tamponu) | Modüle bağlı |
| Payload esnekliği | PLC string işlemeyle sınırlı | Yüksek | Orta ile yüksek arası |
| Değişiklik yönetimi | PLC yüklemesi | Gateway yapılandırma dağıtımı | SCADA proje değişikliği |
| Bağımlılık riski | Her PLC'nin ağ yolu | Gateway erişilebilirliği | SCADA erişilebilirliği |
| Tipik sahibi | Kontrol mühendisi | OT veya IT/OT ekibi | SCADA ekibi |
Birçok tesis sonunda bunları karıştırır: makine üreticileri yerel olarak bağlantılı ekipman teslim eder, eski hatlar gateway'lerden geçer, SCADA da alarm ve üretim özetlerini iletir.
PLC'den Buluta İçin Güvenlik Modelleri
Bu projelerin başarılı olduğu veya tıkandığı yer güvenliktir. Aşağıdaki modeller mimariden bağımsız olarak geçerlidir.
- Yalnızca giden. Tesis cihazları broker'a TLS bağlantılarını kendileri başlatır. Gelen port yönlendirmesi yok, veri toplamak için kontrolör ağlarına VPN yok.
- Seviyeye göre segmentasyon. PLC'leri kontrol bölgesinde tutun. Gateway'leri sınırda veya bir endüstriyel DMZ'de konumlandırın ve broker'a yalnızca gateway'in erişmesine izin verin. MQTT DMZ modeli, broker'ın OT ile IT arasındaki yerleşimini açıklıyor.
- Hücrenin dışında her yerde TLS. Sertifika doğrulamasıyla 8883 portunu kullanın; bir bağlantıyı çalıştırmak için doğrulamayı asla devre dışı bırakmayın.
- Yayıncı başına bir kimlik. Her PLC veya gateway kendi kullanıcı adını, parolasını ve client ID'sini alır; böylece ele geçirilen bir cihaz diğerlerine dokunmadan iptal edilebilir.
- Varsayılan olarak salt okunur. Buluttan PLC'ye yazmaları; izin listeleri, aralık kontrolleri, PLC tarafında kilitlemeler ve bir denetim izi içeren ayrı bir proje olarak ele alın.
- Gizli bilgileri projelerin dışında tutun. Broker parolalarını PLC projelerine veya ekipler arasında paylaşılan gateway depolarına commit etmeyin.
- Kötüye kullanımı izleyin. Taşkınları hız sınırlamasıyla kısıtlayan ve tekrarlanan başarısız oturum açma denemelerini engelleyen bir broker kullanın; beklenen bir yayıncı ortadan kaybolduğunda alarm üretin.
Örneğin ConnectMQ, her broker'da plan bazlı kotalar, taşkın koruması ve tekrarlanan başarısız oturum açma denemelerinden sonra IP engelleme uygular; böylece bu korumalar her tesisin kendi yapılandırmasını doğru yapmasına bağlı kalmaz.
Güvenilirlik ve Veri Kalitesi
Bir demoda çalışan bağlantı, yıllarca güvenilir veri sağlayan bir bağlantıyla aynı şey değildir. Canlıya geçmeden önce şunları kontrol edin:
- Heartbeat ile report by exception. Anlamlı değişiklikte ve buna ek olarak periyodik bir yenilemeyle yayınlayın; böylece boşta duran değerler ölü bağlantılardan ayırt edilebilir.
- Last Will ve retained durum. Yayıncı başına retained bir
onlineveyaofflinedurumu, her tüketicinin neyin güncel olduğunu bilmesini sağlar. - Kaynakta zaman damgası. Değerleri alındıkları yerde değil okundukları yerde damgalayın ve saatleri NTP ile senkronize tutun.
- Tamponlama. Bir WAN kesintisi sırasında ne olacağına karar verin: verileri atmak, bellekte tamponlamak veya diskte tamponlayıp sırayla yeniden oynatmak.
- Adlandırma. İkinci saha bağlanmadan önce ISA-95 tabanlı bir topic hiyerarşisinde anlaşın. Sonradan yeniden adlandırmak pahalıdır.
Ağ Yolunu Test Etmek
Herhangi bir şey kurmadan önce tesis ağının TLS üzerinden bir broker'a erişebildiğini kanıtlayın. Yayıncınızın çalışacağı bölgedeki bir makineden:
mosquitto_pub -h broker.connectmq.com -p 8883 --capath /etc/ssl/certs \
-i plant-path-test-9x2c -t 'connectmq/demo/9x2c/path-test' -m 'hello from the plant'
Bu bir zaman aşımıyla başarısız olursa, güvenlik duvarı giden 8883'ü engelliyordur. El sıkışma sırasında başarısız olursa, TLS denetimi yapan bir proxy sertifikaları değiştiriyor olabilir; bu, ağ ekibiyle erkenden yapılması gereken bir konuşmadır. Herkese açık test broker'ı paylaşımlıdır ve herkes tarafından okunabilir; bu yüzden yalnızca test string'leri gönderin.
Broker Nerede Bulunmalı?
Seçenekleriniz şirket içi bir broker, bulutta kendiniz çalıştırdığınız bir broker veya bir barındırılan MQTT broker çözümüdür. Şirket içi broker'lar yerel tüketiciler ve DMZ tasarımları için kullanışlıdır; kurum genelindeki veriler için ise her sahadan erişilebilen bir bulut broker daha basittir. ConnectMQ bunu MQTT 3.1.1 ve 5.0, 8883'te TLS ve paylaşımlı Serverless planlardan Dedicated kümelere ve kendi bulut hesabınızdaki BYOC dağıtımlarına kadar seçeneklerle yönetilen bir servis olarak sunar. Portalın cihazlar görünümü ISA-95 topic'lerini ve Sparkplug B'yi anlar; böylece yerel PLC client'larından, gateway'lerden ve SCADA'dan gelen veriler tek bir gezilebilir hiyerarşide toplanır.
Karar Kontrol Listesi
- Bu yıl kapsamda kaç PLC ve kaç üretici var?
- PLC programları değiştirilip yüklenebilir mi ve bunu kim onaylıyor?
- SCADA ihtiyaç duyduğunuz varlıkları zaten sorguluyor mu?
- Gerekli veri gecikmesi nedir: saniyeler, dakikalar mı yoksa saatler mi?
- Bir WAN kesintisi sırasında verilere ne olacak ve ne kadar süreyle?
- Hangi bölge, hangi portlar üzerinden giden bağlantı başlatabilir?
- Gateway yamalarının, sertifikaların ve izlemenin sahibi kim olacak?
- Buluttan PLC'ye herhangi bir yazma yolu gerekiyor mu ve bunun risk değerlendirmesi yapıldı mı?
Cevaplar çok sayıda üreticiye, PLC değişikliği yapılmamasına ve uzun kesintilere işaret ediyorsa bir edge gateway ile başlayın. Uçtan uca mimari için MQTT ile endüstriyel IoT rehberiyle devam edin.
PLC'den Buluta Projenize ConnectMQ ile Başlayın
Hangi mimariyi seçerseniz seçin, diğer uçta güvenilir bir bulut MQTT broker gerekir. app.connectmq.com adresinde kredi kartı gerektirmeden ücretsiz bir Serverless broker oluşturun ve ilk PLC'nizi veya gateway'inizi bugün TLS ile bağlayın.
Sık Sorulan Sorular
Bir PLC'yi buluta bağlamanın en güvenli yolu nedir?
PLC'yi kendi kontrol bölgesinde tutun, yalnızca bir gateway'in veya DMZ broker'ının giden TLS bağlantıları kurmasına izin verin, her yayıncıya kendi kimlik bilgilerini verin ve veri yolunu salt okunur tutun.
PLC verisini buluta aktarmak için edge gateway gerekir mi?
Her zaman değil. Bazı PLC'ler yerel olarak MQTT yayınlayabilir; ancak çok üreticili filolar, kesintiler sırasında tamponlama ve PLC programlarını değiştirmeden bırakmak için gateway'ler genellikle tercih edilir.
PLC'den buluta için OPC UA mı yoksa MQTT mi daha iyi?
OPC UA, PLC verilerine yerel ve yapılandırılmış erişimde öne çıkarken MQTT olayları çok sayıda bulut tüketicisine dağıtmada daha iyidir. Birçok mimari edge'de OPC UA ile okur ve MQTT ile yayınlar.
PLC verileri buluta gerçek zamanlı mı gitmeli?
Çoğu bulut kullanım senaryosu milisaniyelere değil, saniyelerden dakikalara kadar sürelere ihtiyaç duyar. Kapalı çevrim kontrolü yerelde tutun ve yukarıya report-by-exception verisi gönderin.



