OPC Unified Architecture (OPC UA) – protokół komunikacyjny opracowany przez OPC Foundation w celu ujednolicenia komunikacji między maszynami, bazuje na ogólnie przyjętych komunikacyjnych protokołach takich jak TCP/IP, HTTP, SOAP, co zapewnia bardzo dużą skalowalność rozwiązań implementowanych w oparciu o tę technologię. OPC Unified Architecture umożliwia przesyłanie danych za pośrednictwem różnych formatów m.in. formatu opartego na XML i formatu binarnego. Serwer OPC zbudowany w oparciu o Unified Architecture definiuje swoim klientom (zobacz klient opc) zestaw usług, jakie oferuje oraz format danych procesowych za pośrednictwem, którego ma odbywać się komunikacja. W poprzedniej wersji standardu OPC każda ze specyfikacji (np. OPC DA, OPC HDA) definiowała swoją własną przestrzeń adresową i swój własny zestaw usług. OPC Unified Architecture definiuje zunifikowaną przestrzeń adresową (ang. Address Space) oraz szereg usług (ang. Services), które mogą być udostępnione przez serwer OPC[1].
Specyfikacja OPC UA składa się z kilkunastu części:
Standard OPC Unified Architecture (OPC UA), jest wynikiem wieloletniej współpracy liderów przemysłowych, których celem było stworzenie otwartego standardu wymiany informacji w systemach zarządzania procesem w sposób bogatszy i pełniejszy, zorientowany usługowo i bezpieczny w porównaniu do aktualnie wykorzystywanych standardów bazujących na platformie DCOM. Ten standard to odpowiedź na fundamentalne potrzeby mapowania i wymiany rzeczywistych informacji w sposób zorientowany obiektowo.
Nowy standard został opracowany tak, by nie wiązać go z żadną istniejącą technologią komunikacyjną, specyfikacja przewiduje udostępnianie usług na różne sposoby. Twórcy OPC UA zdają sobie sprawę, że to co nowoczesne dziś, za kilka lat może już wyjść z użycia. Aktualnie specyfikacja przewiduje możliwość wykorzystania jednego z dwóch sposobów komunikacji i jednocześnie pozostawia furtkę, by w przyszłości dodanie innych było możliwe. Pierwszym sposobem jest udostępnienie danych poprzez web serwisy, drugim natomiast są binarne strumienie danych.
OPC UA ma dwoistą naturę, tzn. jest zorientowana obiektowo i usługowo jednocześnie. Natura zorientowana obiektowo powoduje, że OPC UA może być wykorzystywane do wielu celów w warstwie procesowej i zapewnia wsparcie dla zaawansowanych struktur danych i elastyczny model danych. Natura zorientowana usługowo zapewnia lepsze wsparcie w dziedzinie przenośności na różnych platformach, lepszy dostęp i bezpieczeństwo.
Należy się spodziewać, że dzięki tym cechom technologia OPC UA będzie dostępniejsza dla systemów ERP czy MES, pozwalając na wyjście OPC poza płaszczyznę automatyzacji.
Brak konieczności wykorzystywania technologii DCOM, która jest komponentem systemu Windows, otwiera możliwości implementacji technologii OPC UA w urządzenia procesowych, takich jak sterowniki przemysłowe, analizatory i inne.
Ostatnim, ale nie najmniej ważnym elementem jest to, że OPC UA oferuje wspólny zestaw usług dla wszystkich istniejących dotąd specyfikacji. Inaczej mówiąc: jeden serwer OPC UA może jednocześnie pełnić rolę serwera DA, HDA, A&E itp.
Trzeba zauważyć, że OPC UA specyfikuje pewien abstrakcyjny opis usług (głównie w specyfikacji OPC UA części 4). Opis usług nie jest związany z żadnym konkretnym sposobem komunikacji lub technologią komunikacyjną. Dopiero inna część specyfikacji (specyfikacja OPC UA część 6) opisuje ich implementację z wykorzystaniem konkretnej technologii (ang. technology mapping). Aktualnie specyfikacji zakłada użycie Web Serwisów i binarnych strumieni danych, ale pozostawia również furtkę, że w przyszłości wykorzystany zostanie inny sposób wymiany danych (zmieni się sposób przesyłania wiadomości, ale model usługowy i model informacyjny pozostanie bez zmian).
Dodatkowo OPC UA nie precyzuje natomiast konkretnego API (Application Program Interface – Interfejs programowy aplikacji), tak jak to miało miejsce w przypadku OPC Classic opartego na DCOM. OPC UA specyfikuje format przesyłanych wiadomości. Stosy komunikacyjne klienta lub serwera użyte do zaszyfrowania lub odszyfrowania danych, wywołań lub odpowiedzi również nie są definiowane. Stosy komunikacyjne różnych dostawców powinny być w stanie komunikować się, jeśli tylko używają tej samej technologii (ang. technology mapping).
Najważniejsze informacje, które są istotne dla opisywanej infrastruktury komunikacyjno-usługowej: