조익영 전무, ODVA KOREA
통신 네트워크는 프로세싱, 센서, 액추에이터를 필요한 곳에 분산시킴으로써 오늘날의 자동화 시스템의 외형을 크게 변화시켰다. CIP Safety는 안전 시스템에 있어서 동일하고 좋은 장점을 제공한다. CIP Safety는 높은 무결성을 지닌 EtherNet/IP와 같은 CIP 기반 네트워크의 데이터 전송에 CIP Safety의 고유 서비스를 추가하여 업계에 표준 CIP 기반 서비스를 확장해나가고 있다.
본 백서에서는 안전 네트워킹에 대해서 확장 가능하고 네트워크 독립적인 접근방식을 제시하며, 나아가 안전 서비스에 대해서는 아래와 같은 설명을 하고 있다. 즉, 잘 정의된 계층으로 기본 네트워크 서비스를 변경할 수 있으며 이 접근 방식은 안전 데이터의 원활한 라우팅을 가능하게 하여 사용자가 여러 링크에 걸쳐 엔드 투 엔드 안전체인을 만들 수 있도록 해준다.
소개
원래 통신 네트워크를 산업 환경으로 이동시킨 그 동기가 바로 산업 안전 네트워크의 발전을 견인하는 원인이 되고 있다. 거리 향상, 유연성 향상, 비용 절감 및 유지관리성 향상 등이 그것이다.
이러한 인센티브 외에도, 최종 사용자는 유선으로 연결된 시스템의 가장 기본적인 애플리케이션을 제외한 모든 애플리케이션에 대해서 개발 및 유지보수가 어렵기 때문에 전통적인 유선연결 안전 솔루션의 한계를 인식하고 있다. 예를 들어 유선으로 연결된 안전 시스템은 안전 기능을 제공하기 위해 상호간 연결된 릴레이를 보통 사용한다. 또한, 이러한 시스템은 기기 간 거리에 상당한 제약을 가한다.
안전 시스템 개발자들이 기본적인 비상 중지 기능을 넘어서면서, 그들은 1970년대 이후 제어 기능에는 널리 사용되지 않는 유선연결 논리기법으로 후퇴할 수밖에 없었다. 그들은 상당한 규모의 안전 시스템을 개발하는데 성공했을 때에도, 그 시스템들은 종종 비용이 많이 들고 유지해 나가기가 쉽지 않았다.
이러한 문제와 프로세스 데이터 및 유연성에 대한 필요성이 증가함에 따라 표준 통신 네트워크에서 안전 서비스를 제공하는 것은 바람직하다. EtherNet/IP 및 기타 네트워크에서 사용하기 위한 ODVA의 CIP Safety 개발이 그 예 중 하나이다.
이러한 개발의 핵심은 실패할 수 없는 네트워크를 만드는 것이 아니고 네트워크에 장애가 없는 안전장치가 있는 시스템을 만드는 것이다. 사용자가 시스템이 어떤 상태로 갈 것인지를 아는 경우에는 애플리케이션을 안전하게 만들 수 있으나 이는 훨씬 더 많은 점검과 중복코딩 정보가 요구됨을 의미한다. 다행히 통신 네트워크는 자동화 시스템에 널리 보급되어 있으며 고급진단이 가능한 전자장치를 사용할 수가 있다.
기능 안전성의 기초에 관한 표준은 IEC 61508이다. 그런 표준지침에 따라 IEC 62061, ISO 13849-1 및 IEC 61784-3과 같은 산업, 제품 및 기술에 특정한 추가 안전 표준이 개발되었다.
전용안전 등급 네트워크 설계의 복잡성과 유지보수를 피하기 위해 IEC 61508과 IEC 61784-3은 “검은 채널”이라는 옵션을 특히 강조한다. 블랙 채널은 네트워크를 완전히 신뢰할 수 없다고 가정하는 것이므로, 진단은 네트워크 인프라 외부에 존재해야 한다.
이 개념은 안전통신 프로토콜이 프로토콜에 충분한 오류의 감지를 내장한 경우, 안전 데이터의 무결성을 저하시키지 않고 서로 다른 네트워크 유형에 걸쳐 독립적으로 전송할 수 있다고 규정하고 있다. 여기에는 여러 네트워크의 링크 및 네트워크 분할기법의 통과가 포함될 수 있다.
해당 표준통신 프로토콜이 비표준 네트워크 하드웨어에 크게 의존할 경우 블랙채널 원리로 안전통신 프로토콜을 구축하는 것은 문제가 될 수 있다. 다행히도 CIP 안전은 네트워크 독립적인 데이터 라우팅을 허용하는 공통 산업 프로토콜(CIP)에 기반을 두고 있다. 이러한 기본 서비스는 CIP Safety 특유의 네트워크 서비스를 추가하여 높은 무결성 안전 서비스를 허용하도록 확장되었다.
본 논문은 확장 가능하고 라우팅 가능하며 네트워크에 독립적인 안전계층에 대한 솔루션을 제시하여 전용안전 게이트웨이에 대한 요구사항을 제거한다. 모든 안전장치들은 그들이 설치된 미디어와는 무관하게 동일한 프로토콜을 실행함으로, 사용자 접근법은 사용되는 미디어 또는 네트워크로부터 일관되고 독립적인 것으로 되어있다.
CIP Safety : 공통산업 통신규약에 기초한 안전 서비스
공통 산업 프로토콜(CIP)은 다른 네트워크를 공통 프로토콜과 함께 사용할 수 있도록 설계되었다. 미디어와 데이터링크가 독립적으로 설계되었기 때문에 다른 네트워크로 확장되고 이더넷이 성장함에 따라 함께 성장한다.
CIP Safety는 CIP의 표준기능을 확장한 것으로 TUV 라인랜드에 의해 기능안전 애플리케이션에 사용할 수 있는 인증을 받았고 그림 1과 같이 CIP Safety 응용프로그램의 계층기능을 추가하여 모델을 확장한다.
안전 애플리케이션 계층의 확장은 기본표준 CIP 서비스와 데이터링크 계층의 무결성에 의존하지 않기 때문에 단일 채널(복합 채널이 아닌) 하드웨어를 데이터링크 통신 인터페이스에 사용할 수 있다.
이와 같은 기능 분할은 그림 2에서와 같이 기본안전 데이터가 수정되지 않는 한, 그리고 그림 3에서와 같이 복잡한 네트워크의 다른 계층들 간에 안전 데이터를 라우팅 하는 데 표준 라우터를 사용할 수 있게 한다. 엔드 장치는 데이터의 무결성을 확인하는 역할을 하기 때문에 안전 메시지를 라우팅 할 수 있다. 데이터 전송이나 중간 라우터에서 오류가 발생하면 최종 장치가 오류를 감지하고 적절한 조치를 취한다.
필요한 안전 데이터만 필요한 셀로 라우팅 하므로 개별 대역폭 요구사항이 줄어든다. 빠르게 반응하는 국소안전 셀과 안전 데이터의 셀 간 경로의 조합은 사용자가 빠른 응답 시간으로 훨씬 더 크고 복잡한 안전 애플리케이션을 만들 수 있게 한다.
안전의 구현
CIP 안전응용 프로그램 계층은 안전검증기 객체를 사용하여 지정한다. 이 객체는 CIP 안전 연결을 관리하는 역할을 하며 그림 4와 같이 안전 애플리케이션 객체와 링크 계층 연결 사이의 인터페이스 역할을 한다. 안전유효성 검사기가 안전 데이터 전송의 무결성을 확인한다.
• 생산안전 애플리케이션은 고객 검증자의 인스턴스를 사용하여 안전 데이터를 생성하고 시간 조정을 확인한다.
• 고객은 링크데이터 생산자를 사용하여 데이터를 전송하고 링크소비자는 시간 조정 메시지를 수신한다.
• 소모적인 안전 애플리케이션은 서버검증기를 사용하여 데이터를 수신하고 확인한다.
• 서버는 링크소비자를 이용하여 데이터를 수신하고 링크생산자를 이용하여 시간 조정 메시지를 전송한다.
링크생산자와 소비자는 안전 패킷에 대한 지식이 없으며 안전 기능을 수행하지 않는다. 안전 데이터의 높은 무결성 전송 및 점검 책임은 안전 검증자에게 있다.
무결성 보장에 도움 되는 안전 검사기
CIP Safety는 통신 오류가 발생하는 것을 방지하지는 않지만 오류를 감지하고 장치가 적절한 조치를 취할 수 있도록 하여 전송 무결성을 보장하는 데 도움이 된다. 안전확인기는 이러한 통신 오류를 탐지하는 역할을 한다. 감지되어야 하는 9가지 통신 오류는 표 1과 같이 표시된다. 표 1과 CIP Safety가 이러한 오류를 탐지하기 위해 사용하는 5가지 조치이다.
타임스탬프를 통한 예상시간
모든 CIP Safety 데이터는 시간 스탬프로 생성되므로 안전소비자가 생성된 데이터의 나이를 결정할 수 있다. 이 검출 방법은 기존의 수신 타이머 및 감시 타이머보다 우수하다.
수신 타이머는 메시지가 마지막으로 수신된 이후 경과된 시간을 알 수 있지만, 실제 데이터 연령에 대한 정보는 전달하지 않는다. 타임스탬프를 사용하면 전송, 미디어 액세스/호출, 대기 열, 재시도 및 라우팅 지연을 감지할 수 있다.
시간은 그림 5와 같이 핑 요청과 핑 응답을 사용하여 생산자와 소비자 사이에서 조정된다. 연결이 설정된 후, 생산자는 소비자가 소비자 시간에 따라 응답하도록 하는 핑 요청을 생성한다. 생산자는 핑 생산과 핑 응답 사이의 시간 차이를 기록하고 이후의 모든 데이터 전송에 대한 생산자 시간의 오프셋 값으로 저장한다.
이 값은 타임스탬프로 전송된다. 소비자는 데이터 메시지를 받으면 타임스탬프에서 내부시계를 빼서 데이터 사용기간을 결정한다. 데이터 사용기간이 허용된 최대 사용 기간보다 작으면 데이터가 적용된다. 데이터 연령이 연령제한을 초과하면 데이터가 삭제되므로 최근 데이터만 사용된다.
일반적으로 구성 가능한 설정을 통해 사용자는 안전 상태로 이동하기 전에 허용되는 누락, 지연 또는 손실 패킷 수를 결정할 수 있다. 일단 안전 상태가 되면 연결 안전 상태를 적절히 반영할 수 있도록 장치 응용 프로그램에 알린다.
핑 요청 및 응답 시퀀스는 주기적으로 반복되어 생산자 또는 소비자 크리스털 드리프트의 드리프트를 보정한다.
타임스탬프가 가용성을 제공한다
안전 네트워크는 사용 가능한 경우에만 생산에 유용하다. 잘못된 트립은 가용성을 낮추고 네트워크의 유용한 응용프로그램을 제한한다. CIP Safety는 재전송을 허용함으로써 사소한 장애에 대한 내성을 제공한다. 예상시간 간격이 만료되기 전에 재전송이 수신되는 한, 네트워크 연결은 계속 작동할 수 있다.
프로덕션 아이덴티파이
프로덕션 아이텐티파이(Production IDentifier, PID)는 수신된 각 메시지가 올바른 소비자에게 도착하는지 확인하기 위해 생성된 각 안전 패킷에 인코딩 된다. PID는 전자키, 장치 일련 번호 및 CIP 연결 일련번호에서 파생된다. PID가 잘못된 메시지를 실수로 수신한 장치는 모두 안전 상태가 된다. 올바른 PID로 예상 시간 간격 내에 메시지를 수신하지 않는 장치도 안전 상태가 된다. 이 조치는 다중링크 응용프로그램에서 메시지가 올바르게 라우팅 되는지 확인한다.
안전 CRC(순환 중복코드)
CIP 안전에 대한 모든 안전 전송은 정보 전송의 무결성을 확인하기 위해 안전순환 중복코드(CRC)를 사용한다. 안전 CRC는 전송된 데이터의 손상 가능성을 탐지하는 주요 보증 역할을 한다.
전체 해밍 거리의 범위는 프로토콜의 중복성으로 인해 완전 전송에 더 큰 영향을 주지만 각 데이터 전송 섹션에 대해 최대 4의 해밍 거리까지 탐지할 수 있다. 안전 CRC는 안전생산자에서 생성되고 안전소비자에 체크인 된다. 중간 라우팅 장치는 안전 CRC를 검사하지 않는다.
따라서 엔드 투 엔드 안전 CRC를 사용함으로써, 개별 데이터링크 CRC는 안전 기능의 일부가 아니다. 이는 중간 장치에 대한 인증요건을 제거하며 안전한 프로토콜이 네트워크 기술과는 독립적이며 블랙채널 원칙의 핵심임을 보증하는 데 도움이 된다.
또한, 안전 CRC는 비트 채우기 또는 조각화 오류와 같은 기본 데이터링크 오류를 탐지할 수 있는 강력한 보호 메커니즘을 제공한다. 개별링크 CRC는 안전을 위해 의존하지 않지만 여전히 활성화되어 있다. 이는 로컬링크에서 일시적인 오류에 대한 데이터 재전송을 허용함으로써 추가적인 수준의 보호 및 노이즈 방지기능을 제공한다.
중복성과 교차검사
교차검사를 통한 데이터 및 CRC 중복성은 전송된 데이터의 손상 가능성을 감지하여 추가적인 보호수단을 제공하고 오류감지 개선을 위해 해밍 거리를 효과적으로 증가시킨다. 이러한 조치를 통해 최대 250바이트의 긴 안전데이터 패킷을 높은 무결성으로 전송할 수가 있다. 2바이트 이하의 짧은 패킷의 경우 데이터 중복이 필요하지 않지만 중복 CRC를 교차 검사하여 무결성을 확인한다.
안전과 표준을 위한 다양한 조치
CIP 안전은 안전장치에만 존재하므로 표준장치가 안전장치로 위장되는 것을 방지할 수 있다.
안전 연결
CIP Safety는 다음 두 가지 유형의 안전 연결을 제공한다.
• 유니캐스트
• 멀티캐스트
그림 6에 표시된 것처럼 유니캐스트 연결(인터넷에서 어느 특정인에게만 연결 하는 것)은 두 개의 링크계층 연결을 사용하여 안전검사기의 클라이언트를 안전검사기의 서버에 연결할 수 있도록 해 준다.
그림 7에 표시된 것과 같은 멀티캐스트 연결은 최대 15대의 안전검사기 서버가 안전검사기 클라이언트의 안전 데이터를 소비할 수 있게 한다. 첫 번째 안전검사기 서버가 안전검사기 클라이언트와 연결을 설정할 때 데이터용, 시간 수정용 및 시간 조정용 등 3가지 링크계층 연결이 설정된다.
각 새 안전검사기 서버는 기존 데이터 및 시간을 보정하여 연결을 사용하고 안전검사기 클라이언트와 새 시간조정 연결을 설정해준다.
메시지 패킷 세션
CIP Safety에는 다음 4가지 메시지 섹션 유형이 있다.
· 데이터 섹션
· 타임스탬프 섹션
· 시간 보정 부분
· 시간조정 구간
CIP Safety는 데이터 섹션에 서로 다른 2가지 크기의 범위를 지원한다. 그림 8에 표시된 짧은 데이터 크기는 최대 2바이트의 안전 데이터에 대해 높은 무결성 전송을 제공한다. 전체 메시지에 대한 안전 데이터의 사례, 타임스탬프 및 24비트 안전 CRC(시리얼 전송-데이터/신뢰성/에러 검출)를 포함한다. 안전 CRC의 3바이트는 연속적이지 못하다.
그림 9에 표시된 긴 데이터의 크기는 최대 250바이트의 안전 데이터에 대해 높은 무결성 전송을 제공한다. 긴 데이터 크기에서는 원본 안전 데이터가 16비트 안전 CRC, 반전된 안전 데이터 복사본, 타임스탬프 및 24비트 안전 CRC와 함께 전송되어 보완된 데이터와 타임스탬프를 커버한다. 짧은 데이터 섹션과 마찬가지로 24비트 안전 CRC의 3바이트는 연속적이지 못하다.
프로토콜의 타임스탬프 섹션은 모든 안전제품의 생산 시간을 표시하는 데 사용된다. 그림 10에 표시된 시간보정 섹션은 멀티캐스트 메시지에만 사용한다. 이것은 멀티캐스트 연결을 위한 개별 소비자의 시간 수를 조정하기 위해 사용된다. 유니 캐스트 메시지에서는 각 프로듀서가 하나의 소비자와만 연결되기 때문에 이 섹션이 필요하지 않다.
그림 11에 표시된 시간 조정 섹션은 시간 값을 수정하기 위해 소비자가 생산자에게 보낸 정보를 포함한다. 데이터 섹션과 타임스탬프 섹션은 단일 패킷으로 결합되며, 시간 조정 섹션과 시간 보정 섹션은 각각 자체 패킷으로 전송된다.
연결 설정
EtherNet/IP 네트워크는 전방 열림 서비스를 사용하는 연결 설정 메커니즘을 제공하는데, 이 서비스를 통해서 생산자는 중간 라우터(네트워크에서 데이터의 전달을 촉진하는 중계 장치)를 통해 소비자 연결이 로컬 또는 여러 링크에 걸쳐서 설정할 수가 있다.
다음에 대해 동일한 다중연결을 허용하기 위해 안전 열림 서비스라고 하는 전방 열림의 확장성이 생성된다.
안전 열림 요청에는 2가지 유형이 있다.
• 유형 1 : 구성도 포함
• 유형 2 : 구성도 없음
Type 1 안전 열림 서비스를 사용하면 구성과 연결이 동시에 설정된다. 따라서 간단하고 비교적 작은 구성 데이터로 장치를 신속하게 구성할 수 있다.
Type 2 안전 열림 서비스를 사용하면 먼저 안전장치를 구성하고 안전 열림 서비스를 통해 안전연결을 설정해야만 한다. 이러한 구성 및 연결 설정의 분리를 통해 크고 복잡한 구성 데이터를 가진 장치를 우리가 구성할 수 있다.
2가지 경우 모두, 안전 열림 서비스는 중간링크와 라우터뿐만 아니라 로컬링크 전반에 걸쳐 모든 기본 링크계층의 연결을 설정한다.
구성
안전 시스템에서 안전장치를 사용하려면 먼저 장치를 구성하고 연결을 설정해야 한다. 구성 프로세스를 수행하려면 구성 도구의 구성 데이터를 안전장치에 배치해야 한다. 구성에 사용할 수 있는 두 가지 시퀀스가 있다.
• 장치 또는 장치에 직접 연결된 구성도구
• 중간 장치를 통해 그림 12와 같이 구성도구에서 장치케이스로, 구성도구는 (1)과 (2)를 구성할 장치에 직접 기록한다. 연결 장치는 형식2의 안전 열림(3)이어야 한다.
그림 13과 같은 중간 장치 구성의 경우, 도구는 먼저 발신자(1)에 기록한다. 적당한 크기의 구성의 경우 형식1 안전 열림을 사용하여 연결 설정(2)와 동시에 장치를 구성할 수 있다. 매우 큰 구성의 경우 별도의 구성 다운로드(3) 및 형식2 안전 열림을 연결 설정(4)에 사용할 수가 있다.
구성 구현
CIP Safety는 구성의 무결성을 보장하기 위한 다음과 같은 보호 조치를 제공한다.
• 안전망 번호
• 암호 보호
• 구성 소유권
• 구성 잠금
1. 안전망 번호
모든 안전장치는 선택적 암호 사용을 지원한다. 암호 메커니즘은 올바른 암호 없이 장치를 재구성할 수 없도록 하는 추가 보호조치를 제공한다.
2. 구성 소유권
CIP 안전장치의 소유자를 지정하고 시행할 수 있다. 각 안전장치는 해당 구성이 선택한 마스터에 의해 구성되거나 구성 도구에만 의해 구성되도록 지정할 수 있다.
3. 구성 잠금
구성 잠금은 안전 응용 프로그램에 사용하기 전에 모든 장치가 검증 및 시험되었는지 확인하는 메커니즘을 사용자에게 제공한다.
안전장치
안전장치 내에 물체의 관계는 그림 14와 같다. CIP Safety는 Safety I/O 어셈블리, 안전검사기 및 안전감독자 객체를 추가하여 CIP 객체 모델을 확장한다.
안전 감독관
안전 감독관 객체는 안전장치를 위한 공통구성 인터페이스를 제공한다. 응용 프로그램 객체의 상태, 동작 및 관련 상태정보, 예외상태 표시(경보 및 경고)를 중앙 집중화하고 조정하며 안전장치에 속하는 것으로 확인된 객체로 가정하는 행동 모델을 정의한다.
무선
CIP 안전성은 TUV 라인랜드에 의해 “블랙채널” 프로토콜로 인증됐으며, 이는 안전 무결성이 물리적 매체에 의존하지 않음을 의미한다. 블랙채널 프로토콜로서 CIP Safety는 다양한 유선 이더넷 플랫폼(10, 100Mbps 및 1Gbps), 광섬유 및 WiFi(802.11a/b/g/n/ ac)와 같은 무선 시스템과 통신할 수 있다. CIP Safety는 WiFi6(802.11ax) 및 5G와 같은 표준과 정방향으로 호환될 것이 예상된다.
요약
통신 네트워크는 처리, 센서 및 액추에이터를 필요한 곳에 분산시킴으로써 오늘날 자동화 시스템의 작동방식을 크게 변화시키고 있다. CIP Safety는 확장이 가능하고 라우팅이 가능한 네트워크 독립적 인 안전통신을 제공하여 안전시스템에 동일한 이점을 제공한다.
멀티캐스트 메시징과 같은 기능은 사용자가 안전거리를 개선하는 빠른 응답을 안겨주는 로컬 셀 제작이 가능한 강력한 기초를 제공하는 한편, 멀티링크 라우팅과 같은 고급기능은 미래의 확장 요구를 충족시키기 위해 원격 셀과의 원활한 상호연결을 허용하고 있다.