
1995 Yılında piyasaya sürülen OPC (OLE for Process Control) endüstriyel haberleşmeyi sağlayan bir standarttır. OPC aynı arayüzü kullanan, farklı üreticilerdeki makinelerin ve sistemlerin veri transferi yapmasına imkan sağlar. OPC, HMI/SCADA sistemlerinin makineler ile özel sürücüler ve sürücü yazılımları olmadan haberleşmesini amaçlamaktaydı.
Günümüzde klasik OPC olarak adlandırılan bu sistem hala oldukça yaygın kullanılmaktadır. OPC’de uyumluluk sorunu, güvenlik problemleri, Microsoft platformlarına bağımlılık, pahalı ve etkin olmayan veri taşıma yöntemleri, bakım zorlukları gibi sıkıntılar vardı. Tüm bu sıkıntılar OPC’ye varis olarak OPC-UA’nın ortaya çıkmasına sebep oldu.
OPC-UA (OPC Unified Architecture), OPC teknolojisinin bir sonraki jenerasyonudur. Sunucular ve istemciler arasında daha güvenli ve neredeyse eksiksiz veri transferi sağlar.
OPC-Birleşik Mimari, nesneye dayalı ve servis odaklı özellikleriyle ikili bir yapıya sahiptir. Nesneye dayalı özelliği, varlıkların yeniden kullanılabilirliğini ve karmaşık veri modellerini desteklemek için ortak bir nesne yönetim metodunu sağlar. OPC-UA’nın servis odaklı yapısı ise, diğer platformlarla daha geniş birlikte çalışabilirlik sağlar.
OPC verinin iletiminde güvenlik duvarları, özel platformlar ve güvenlik bariyerleri arasında gidip gelebildiği ilk haberleşme teknolojisidir.
OPC-UA; veri tabanları, analitik araçlar, ERP sistemleri ve diğer işletme sistemleri ile gerçek dünya verisini üretip, kontrol edip yine gerçek dünya verisi ile bağlantısını kurar.
OPC-UA; en küçük özel kontrolcünün karmaşık, son sürüm sunucu uygulamalarıyla serbestçe etkileşim kurmasına izin vermek için ölçeklenebilir platformlar, çoklu güvenlik modelleri, çoklu taşıma katmanları ve karmaşık bilgi modeli kullanır.
Bu teknolojinin özellikleri şunlardır;
IoT (Internet of Things) temelde radyo frekansı tanımlama (RFID), İnternet, Wireless, sensör teknolojisi, bulut gibi çoklu teknolojilerin bir benzeridir. Tüm bu teknolojiler IoT altyapısına katkıda bulunmaktadır. Aslında bilgisayar yetilerini geliştirmek için orataya çıkan IoT günümüzde tüm dünyada haberleşme altyapısı olarak görülmektedir. Sadece insandan insana, makineden insana değil makinelerin haberleşmesi için de geleceğin teknolojisi olarak tanımlanmıştır.
OPC-UA ise kaynak açısından sınırlı cihazlar için arayüz yazılımı çözümü olarak geliştirilmiştir. Bu şekilde çok büyük miktarda IOT verisi işlenebilir hale gelmiştir. IoT verilerinin bir bulut veritabanında saklanabilmesi sağlanmıştır.
OLE, programlar arasında bilgi alışverişini sağlamak için kullanabileceğimiz program bütünleştirme teknolojisidir. OLE’yi destekleyen herhangi bir programdan bilgileri bağlantılı nesne olarak kopyalayabiliriz.
OPC-UA teknolojisi ve mimarisi üç ana modulden oluşmaktadır. Connect Server, Toplayıcı Server, Cloud Proxy Server. Connect Server üç farklı sunucu şeklinde olabilir. Tesis ağı bağlantısı, Kontrol ağı bağlantısı, Alan ağı bağlantısı. Sırası ile tüm bu katmanlar fabrika makinelerinden, kurumsal cihazlara kadar tüm verileri modellemek için kullanılır. Toplama kısmında veriler bir alanda toplanır. İstemci böylelikle birden çok sunucuya ulaşabilir. Birleştirme sunucusunda veri güvenliği için sınırlamalar sağlanır, şifrelemeler kullanılır. Cloud Proxy sunucusu ise proxy bağlantısını sağlar. Farklı uygulamalarla farklı endüstriyel veriler, katmanlar sayesinde bilgi alışverişinde bulunabilir ve bu sayede dinamik bir otomasyon sistemi ortaya getirilebilir.
OPC-UA mevcut OPC sunucularıının tüm standatlarını bünyesinde bulundurur ve bunların üstüne geliştirilmiştir. Bu büyüklükteki standartlar ileilgili bazı sorunlar oluşmuştur. Bunlardan en temel olanı OPC-UA’nın uygulanışıdır. Kolay uygulanabilirliğin sağlanması için, yeni standartlar oluşturulurken bir de Yazılım Geliştirme Kiti yani SDK geliştirildi.
SDK programlama arayüzü ve örnek kod uygulamalarından oluşmaktadır. Farklı platformlarda kullanımını ve benimsenmesini kolaylaştırmak adına farklı seçenekler sunmaktadır. NET, ANSI C ve Java örnek uygulamalarını sunmaktadır.
SDK içerisinde yer alan her seçenek bellek ve işlemci gereksinimlerine ve özel ihtiyaçlara cevap verecek şekilde tasarlanmıştır ve hepsi uyumlu şekilde birbiriyle çalışabilir. Örneğin .NET sürümü istemci/sunucu kullanımı için daha uygundur. ANSI C sürümü bellek ve CPU kullanımının önemli olduğu gömülü sistemler için daha kullanışlıdır. Java uygulaması ise web ortamı ve güçsüz istemciler için daha kullanışlıdır. Her kullanıcı kendisi için en verimli olacak uygulamayı seçebilir.
SDK’nın dışında OPC Foundation ikili bağdaştırıcılar sağlar. Com tabanlı tüm eski OPC sunucularına yeni OPC-UA ile erişim sağlayabilmek için kullanılır. Aynı zamanda Klasik OPC den OPC-UA’nın alt katmanına ulaşmanıza da imkan verir.
OPC-UA tarafından sağlanan imkanlar ve gereklilikleri kontrol edilirken çoğu ihtiyaca yanıt verdiği doğrudur fakat gerekli deterministik veri alışverişi sağlanamaz. Bu sebeple ilave bir yaklaşım izlenmelidir. Bu yaklaşıma göre;
Yukarıda belirtilen gerekliliklerin yerine getirilmesi için Zaman Duyarlı Ağ İletişimi (TSN) standardı kullanılabilir. Bu standart 2011 yılında piyasaya çıkan AVB standardına dayanmaktadır. Nihayetinde TSN standardı AVB’ye göre bir dizi geliştirmeler içermektedir. Zamanlama yetenekleri ile gerçek zamanlı iletişimi mümkün kılar.