왜 OPC 인가?
왜 OPC를 도입해야 할까? 일단 아래의 그림을 보자.
다소 복잡해보이지만 천천히 살펴보면 결론은 간단하다. 같은 통신 방법으로 하위에서 상위까지 모두 같은 프로토콜로 통신이 가능하다는 것이다. 이것을 상호운용성을 확보했다라고 표현하고, 이렇게 통합하기 위해 OPC를 구성한다라고 이해하면 된다.
시스템을 구성해본 경험이 있다면 알겠지만 프로토콜이 통합된다는 것은 투입되는 시간과 자원을 줄일 수 있고, 확장성 측면에서도 유용하다. 이러한 통신을 조금 더 유용하게 하기 위해 OPC에서는 다양한 기능들을 제공해주고 있다.
OPC 기능
Classic OPC 표준을 통해 DA(Data Access), AE(Alarm & Events), HDA(Historical Data Access)의 세가지 서비스를 제공한다.
DA(Data Access)는 말그대로 PLC의 현재값을 확인하고 받아올 수 있다. 현장에서 가장 유용하게 쓰는 기능으로, 과거의 데이터를 받지 못한다. 이부분이 HDA와의 차이라고 할 수 있다.
HDA(Historical Data Access)는 과거의 데이터를 가져올 수 있다. OPC HDA서버에서 현재 데이터를 Local Historian 에 저장하고 그것을 Client에서 Access하는 방식이다.
AE(Alarm & Events)는 Alarm Tag를 등록하면 해당 Tag가 True로 바뀌었을 때 Event로 Client에게 알려주는 기능이다.
Classic OPC의 서버는 위와 같이 3가지로 분류되어 있다.
OPCUA vs OPCDA
아래의 이미지와 같이 OPCDA의 경우 3개의 서버가 분리되어 있었고, 윈도우에서만 동작을 했다.
OPCUA에서는 기존 OPC Classic의 DA / AE / HDA에 Security를 보완하여 크로스 플랫폼으로 제공한다. 즉, 윈도우를 벗어날 수 있게 되었다.
아래의 이미지처럼 OPCDA는 윈도우의 기술인 COM과 DCOM이라는 커다란 장벽이 존재하였다. 결국 컴퓨터를 거치치 않으면 안되는 구조였던 것이다. 하지만 OPCUA로 넘어오면서 많은 PLC 제조사들이 직접 서버를 구축하여 출시하는 형태로 바뀌었다.
'🏭IIOT' 카테고리의 다른 글
[OPCUA] OPC (1) (0) | 2023.09.25 |
---|