액추에이터, 센서와 같은 필드레벨의 데이터 정보는 제어레벨에서의 데이터 정보와 달리 대부분 비트 중심으로 시스템이 구성된다. 그럼에도 많은 시스템 개발 및 운용자들은 비트 중심인지, 바이트 중심인지를 고려하지 않은 채, 바이트 중심으로 이루어진 제어 레벨의 네트워크 통신망을 그대로 사용하기도 한다. 자신의 시스템에서는 어떤 전송방식이 올바른가를 먼저 고민할 필요가 있겠다.< 편집자 주>
비트 중심인가, 바이트 중심인가
과일 바구니 하나를 사는 경우, 당신은 총 중량(전체 무게)에 관심을 둘 수도 있지만, 당신의 구매와 구매 결정에 중요한 것은 바로 그 내용물의 무게, 순 중량이다. 상황은 필드버스 시스템의 경우에도 유사하다. 필드버스 시스템을 비교할 때, 전송 주파수 내지 총 데이터 속도가 일반적으로 지정된다. 그러나 해당시스템을 설계하기 위해서는, 순 데이터 처리량이 결정적인 중요성을 지닌다.
두 가지 수치 간의 관계는 데이터 전송 효율로 참조된다. 그리고 – 순 중량이 총중량의 90% 정도를 차지 할 수도 있는 과일 바구니의 경우와는 달리 – 필드버스 관련 순 데이터 처리량은 전체 처리율의 단 몇 퍼센트에 불과할 따름일 것이다.
전체 처리율과 순 처리율 간의 차이는 다음과 같은 시스템 내재적 특성에 기인한 것이다.
* 두 텔레그램들 사이에 필요한 최소 휴지부, ‘유휴 시간(idle time)’
* 시작 및 종료 비트, 동기화 정보
* 주소 또는 식별자(ID) 정보
* 정보 보안 비트
* 최소 정보 길이
‘최소 정보 길이’ 속성에 따라 다음과 같은 필드버스 시스템의 대체적인 구분이 가능하다.
(1) 비트(bit) 중심 시스템
이들 시스템은 1 비트 (또는 소수의 비트) 길이의 전송 정보에 최적화된 것이다.
(2) 바이트(byte) 중심 시스템
이들은 1 바이트 내지 소수의 바이트 단위의 정보를 최적화하여 전송할 수 있다. (1 바이트는 8 비트로 구성된다)
(3) 블록 중심 시스템
이들은 일반적으로 다수의 바이트로 구성된 데이터 블록을 전송하기 위해 고안된 것이다. (예: 64 바이트)
단일 비트 정보를 바이트 중심 시스템상에서 전송하는 것이 특별히 효율적이지 않다는 점은 분명할 것이다. 8개 정보 비트들 중 7 비트가 남아돌 테지만, 그래도 시스템 사양을 충족하도록 계속 전송될 것이다.
혹자는 과도한 정보를 전송하는 것도 이로울 수 있다고 반박할 지도 모른다. 이 ‘과도한’ 정보 전송은 부가적으로 데이터 무결성을 측정하는 데에 사용될 수는 있다. 그러나 반론을 주장하자면, 이를 위해 대역폭이 생성되어야 하며, 대역폭은 비용이 소요된다는 점을 언급해 둔다.
데이터 전송률이 높아질수록,
* 버스 케이블에 비용이 더 많이 들고 복잡해 지며
* 송•수신기 역시 더 비싸고, 민감해지며
* 설계 및 설치에 준수될 필요가 있는 요구사항과 조건들이 더 많아지게 된다. (종단 저항, 보상 캐퍼시터(축전기), 분기 최장 길이 등)
어떤 전송방식이 올바른가
앞에서 언급한 순 데이터 처리량 외에도, 입력 지연 시간 또한 어떤 필드버스가 특정 애플리케이션에 적절한가를 평가하는 데 중요하다.
입력 지연 시간(input delay time) 또는 대기 시간 (latency time)은 어떤 이벤트 (명령 디바이스가 촉발되고, 측정된 값이 특정 한계를 초과하거나, 혹은 어떤 객체가 센서에 의해 탐지 되는 등)가 발생한 시점과 해당 이벤트가 기계 또는 시스템 컨트롤러의 입력 데이터 버퍼에 등재되는 시점 사이에 경과된 시간을 말한다. 이 시간은 단지 전송 속도 및 슬레이브 수에만 좌우되는 것이 아니라, 또한 하나의 필드버스 시스템상의 여러 가지 노드들 간에서 통신이 어떤 식으로 구성되느냐에도 달려있는 것이다. 이는 또한‘버스 액세스 프러시저’(bus access procedure)라고도 알려져 있다. 여기서 다양한 솔루션들을 간단히 설명하겠다.
(1) 마스터-슬레이브 프러시저
한 가지 분명한 방법이 바로 마스터-슬레이브 프러시저인데, 여기서는 오직 하나의 스테이션, 즉 마스터만 송신 권한을 지닌다. 슬레이브는 단지 마스터에 의해 요청될 경우에만, 사전에 결정된 시간 내에 송신할 뿐이다.
여기서 한 가지 장점은, 기존의 모든 슬레이브들에게 마스터가 순차적으로 폴(poll) 명령을 보내고, 이 때 모든 폴 명령과 응답신호의 길이가 동일한 경우, 하나의 주기에 걸리는 시간이 정확히 결정될 수 있다는 점이다. 그러나 스테이션 하나에 도달한 입력 신호가 바로 전달될 수 없고, 요청을 받은 해당 슬레이브가 폴 명령을 받을 때만 실행되는 것이 단점이다.
(2) 토큰-패싱 프러시저
또 다른 프러시저는 모든 스테이션들에 전송 권한을 할당하는 일을 담당하는 것으로, “토큰 패싱”으로 알려져 있다. 토큰은 각 스테이션이 자신의 전송 책임을 다한 후 다음 스테이션으로 전달하는 특별한 정보 조각이다. 여기서도 마찬가지로, 최대 주기시간은, 해당 토큰이 반드시 전달되어야 한다고 정해진 최대 토큰 보유에 의해 정확히 결정될 수 있다.
(3) CSMA (Carrier Sense Multiple Access)
그 밖에 자주 사용되는 프러시저로 소위 CSMA라는 것이 있다. 이는, 본질적으로 각 슬레이브가 전송 권한을 지니고 있다(다중 접속). 하지만, 그 절차가 진행되기에 앞서, 반드시 해당 전송 채널이 사용가능한 상태임을 확인해야 한다. (캐리어 감지) 그렇지 않을 경우, 해당 채널에 여유가 생길 때까지 기다려야 한다.
두 개 이상의 스테이션들이 하나의 가용 전송 채널을 발견하고 동시에 전송을 시작하는 상황을 처리하는 다양한 방식이 있다. 한 가지 방식은, 임의로 정해진 시간 후에 양측 스테이션들이 재차 전송을 시도하는 것이다. 또 다른 방안은, 메시지에 우선 순위를 할당하고, 그 같은 충돌이 발생할 경우, 우선 순위가 높은 메시지가 먼저 전송되도록 보장하는 것이다.
이러한 프러시저의 장점은, 대부분의 경우 하나의 이벤트가 지체됨이 없이 회선을 따라 통지될 수 있다는 것이다. 단점은, 과중한 트래픽이 해당 전송 채널에 걸리게 되면 메시지가 심각하게 지연될 수 있기 때문에, 최대 가능 지연 시간이 보장 될 수 없다는 것이다.
박스 기사와 같이 실생활에서의 유추 비교를 통하여 프러시저를 확실히 이해하는 데 도움이 되길 바란다.
필드버스 시스템 상의 전송은, CSMA 시스템의 경우, 해당 파라미터의 대기시간 및 지터 값을 산정하기가 더 이상 용이하지 않을 것이며, 어떤 특정 애플리케이션 상의 이러한 파라미터에 대한 신뢰성 있는 정보를 얻으려면 계획도구 내지 시뮬레이션 툴을 사용해야 한다.
통과 대상의 속도를 감지하기 위해, 필드버스를 통해 하나의 컨트롤러에 연결된 두 개의 동일한 센서를 사용하고자 할 때, 얼마나 정확한 측정 수치를 얻을 수 있는가를 알고 싶다고 가정해 보자. 양쪽 센서에 동일하게 영향을 주는 구조적 지연시간이 있을 수 있으므로, 측정 시에 남아 있는 불확실성은 정확히 해당 전송 시스템의 지터에 해당한다.
시스템 응답시간과 실시간 처리용량
자동화 시스템 전체의 응답 시간은 항상 다음 사항으로 구성된다.
* 입력 지연시간
* 컨트롤러의 처리시간
* 출력 지연시간
이들 각각의 시간은 차례로 실제 처리시간 내지 전송시간에 평균 동기화 시간을 더한 값으로 이루어진다.
tsystem = tinput + tprocessing + toutput
마스터-슬레이브 시스템에 대한 시스템 응답시간의 편차(jitter)는 쉽게 산정된다.
jsystem = Zfieldbus + ZPLC + Zfieldbus
여기서 Zfieldbus는 해당 필드버스의 주기를, 그리고 ZPLC는 PLC 프로그램의 주기에 해당한다. 이미 위에서 기술된 바와 같이, CSMA 프러시저에서는 시스템 응답시간의 편차를 간단하게 특정하는 것이 불가능하다.
일반적인 컨트롤러의 처리시간은 시스템 응답시간의 대부분을 차지한다. 따라서 이 시간은 필드버스 시스템에 대한 평가 기준으로는 단지 한정된 유용성을 지닐 따름이다.
당신이 의도하는 애플리케이션에 대한 시스템 응답시간의 편차가 지나치게 크다면 – 가령, 이동 중인 지면이나 의류 컨베이어 상의 연속적인 상표부착 작업이라 하자. 그 출력을 동기화하는 것도 시스템 작동상태를 개선하는 방법이 될 수 있을 것이다.
결정적 최대 시스템 응답시간이 해당 공정을 모니터링 하거나 제어하는데 필요한 최소 응답시간에 비해 궁극적으로 짧은 경우에 한해서만, 하나의 시스템이 실시간 능력을 지닌다고 평가할 수 있다. 다시 말하면, 실시간이라는 것은 항상 상대적이다. 이것 때문에 필드 버스를 평가할 때 한정된 유용성을 갖게 되는 것이다.
데이터 손실률
데이터 전송에서 오류가 전혀 없을 수는 없다. 대량의 전자 및 전기 디바이스들을 갖추고 있을 뿐 아니라, 그 중 일부는 많은 양의 전력을 소비하는 산업 환경에서, 우리는 데이터 전송에 영향을 미치는 전자파 방출이 있다는 점을 염두에 두어야 한다. 광섬유 시스템은 조건부로 제외되는데, 이는 정보가 광학적으로 전송되는 까닭에, 전자기장의 영향을 직접적으로 받지 않기 때문이다.
이러한 자기장이 전송 회선에 영향을 미치고, 데이터 텔레그램 상의 개별 비트들이 – 가령 0이 1로 혹은 그 역으로 – 임의적으로 손상될 수 있다고 가정해 보자. 이는 파형 오류률, 또는 펄스 에러 가능성 Pi로 표시한다. 경험법칙으로 볼 때, 잘 설계된 전화회선의 경우라면, 펄스 에러가 대략 10-4 정도이다.
나아가, 그와 같은 데이터 손상에 영향을 받은 각각의 텔레그램이 손상된 것으로 인식된다면, 우리는 데이터 손실률을 도출해 낼 수 있을 것이다. 모든 여건들이 동일하다면, 이는 오직 해당 텔레그램의 길이에 좌우된다. 보다 긴 텔레그램이 짧은 것에 비해 더 빈번하게 데이터 손상의 영향을 받게 될 것이 분명하다.
이렇게 데이터 감지에 실패하는 경우 어떤 일이 발생하는 지 아래에서 논의하게 될 것이다. 수신기 상에서 오류 보정을 수행하는 일이 흔하지 않기 때문에, 이에 대해서는 여기서 논하지 않기로 한다.
그림 1은 10 비트(검정색) 및 100 비트(오렌지색) 길이의 텔레그램에 대한 데이터 손실률을 나타낸 것이다. 100 비트 길이의 텔레그램에 대해서는 최대 약 3×10-4 정도의 펄스 에러의 통신이 유지될 수 있음을 볼 수 있다. 매 30번째 텔레그램은 손상된 것일 수 있다. 하지만 그 보다 짧은 10 비트 텔레그램의 경우에는, 약 3×10-3의 펄스 에러 가능성까지는 통신이 가능하다.
따라서 짧은 텔레그램은, 데이터 손상이 개입될 여지 없이 정보 전송이 보다 철저하게 보호되도록 만든다. 높은 펄스 에러 가능성으로 인해 늘어나는 추가 지연시간 및 지터 등이 훨씬 줄어든다. 일단 손실된 각각의 텔레그램은 재전송되어야 하고, 그에 따라 해당 시스템의 순 전송률이 감소되기 때문이다.
손실되거나 결함이 인식된 메시지에 대한 일반적인 응답은 – 일상 생활에서와 마찬가지로 – 해당 메시지를 다시 보내 달라고 요구하는 것이다. 메시지를 반복하는 것은 동일 비트 오류율에 관계되지만, 오류가 재차 발생할 가능성은 상대적으로 낮다.
상대적 데이터 무결성을 위한 전략
텔레그램이 불어나는 비트 오류 수에 의해 영향을 받는다면, 이는 수신기가 그것과 다른 손상되지 않은 텔레그램을 더 이상 구별해낼 수 없을 정도로 손상된 상태라고 말할 수 있다. 이것은 가령 송신기가 메시지 1을(예, 드라이브 정지!) 전송하지만, 해당 수신기는 메시지 2로(예, 빠른 이동으로 드라이브 전환!) 이해하는 것을 의미한다. 그와 같은 경우가 기계 운전자 및 기계에 위험한 상황을 초래하기에, 어떤 비용이 들더라도 피해야 할 것임이 분명하다. 따라서 그 목적은 이러한 잔류 오류 확률을 절대적으로 최소화하는 데 있다. 이는 데이터 무결성 점검을 통해 이루어진다.
정보 점검이 순수한 해당 메시지에 부가되는데, 이는 미리 정해진 알고리즘에 따라 송신기에 의해 계산된다. 수신기의 임무는 메시지를 받은 후 이 계산을 반복하는 것이다. 그 결과가 정확하다면, 해당 메시지는 오류 없이 전송된 것으로 평가되고, 그렇지 않을 경우, 메시지 전체가 거부되어 재전송이 요구된다.
데이터 무결성 전략 수립 시, 한편으로 데이터 전송 효율을 희생할 것인가, 아니면 다른 한편 자신의 데이터 전송이 가능한 한 오류가 없도록 만들 것인가를 결정하는 일 사이에서 면밀한 절충점을 찾아야 한다. 흔히 사용되는 전략에는 패러티 비트, 블록 보호 혹은 순환잉여검사(CRC)등이 포함된다. 오류 판별에는 시그널 코딩에 대한 잔존 잉여성을 사용하는 다른 전략들이 있다.
데이터 무결성 측정방법으로, EN 60870-5-1 규격에 준하여 정의된 세가지 데이터 무결성 등급들이 있다. 이는 그림 2에서 보는 바와 같은데, 여기서 우리는 Class I 1이 가장 낮은 수준의 무결성을, 그리고 Class I 3이 최상위 수준을 제공함을 볼 수 있다.
여기서는 두 가지 예를 들어, 이들 숫자들이 지닌 의미를 보다 분명히 하기로 한다.
AS-Interface 네트워크가 (하루 24시간, 일주일 내내) 지속적으로 운용되고, 해당 데이터 채널이 10-3의 비트 오류 확률을 지닌다고 가정할 때, 10-12의 잔류 오류 가능성이 의미하는 것은, 평균 매 5년마다 어떤 예상하지 못한 오류의 발생 가능성을 염두에 둘 필요가 있다는 것이다.
전형적으로 간주되는 비트 오류 확률인 10-4라면, 우리는 2300년의 한번 꼴의 확률에 도달하는 셈이 된다!
잔류 오류 확률은 다음의 파라미터들에 종속된다.
* 전송 속도
* 메시지 길이
* 비트 오류 확률
* 데이터 무결성 전략
많은 필드버스 시스템들에서 이들 파라미터의 일부가 다양하기 때문에, 때로 잔류 오류 가능성을 표현하기가 쉽지 않다. 흔히 사용되는 해밍거리(Hamming distance)방법을 사용하는 것은, 자동차 엔진의 움직임과 최고속도를 비교하는 것 만큼 부적절하다.
세분성, 모듈성 – 경제성 문제
세분성(granularity) 내지 모듈성(modularity)은 기존의 입•출력 단위가 얼마나 작게 분할될 수 있는가를 표현하는 말이다. 이것은 기술적이라기보다는 경제적인 문제다.
처음에 우리는 표준화된 버스 시스템을 비트 중심, 바이트 중심, 그리고 블록 중심으로 분류하여 논의하였다.
정교한 세분성은 실제적인 운용 애플리케이션에서 이점을 제공한다. 먼저, 실제로 필요한 수의 입력 및 출력에 대한 보다 정밀한 조정을 할 수 있으며, 그로 인해 사용되지 않는 채널에 드는 과도한 비용을 방지할 수 있다. 아울러, 설계•조달•설치되며, 확장용 또는 예비부품으로 창고에 보관하는 제품 종류의 수도 줄어들게 된다.
이 기종간 상호운용성
상호운용성은 필드버스 상의 통신 파트너들이 서로 정보를 교환할 수 있는 능력을 말한다. 이는 표준 데이터의 교환뿐만 아니라, 또한 예외 상황, 간섭, 혹은 고장이 발생할 경우에의 처리방식 등과 같은 것도 포함한다. 또 이것은 필드버스 통신 참여자들이 다른 참여자들 사이에서 데이터 교환을 절충할 필요가 없을 정도의 협력상태를 보장해야 한다.
상호운용성을 위한 기반은 필드버스 표준이다. 이는 해당 통신과 관련된 중요 세부사항들을 모두 명확하게 특정하여 명세해야 한다. 오직, 해당 표준이 명실공히 통신의 제 측면들을 모두 결합할 때에야, 비로소 다양한 제조사에서 출시된 제품들이 동일한 필드버스에 무난하게 연결될 수 있다고 확신할 수 있을 것이다. 이는 사용자에게 상당한 이점이 되는데, 왜냐하면 그가 필드버스를 사용하면서 드물게 출현하는 잠재적인 예외상황조차 일체 염려할 필요가 없기 때문이다. 오히려, 사용자는 토의된, 표준화된 응답을 신뢰할 수 있다. 하지만, 필드버스 사양조건이 완전하고 상충되지 않는 것만으로는 충분하지 않다. 사양조건을 해석하거나 구현할 때 오해가 있을 경우, 문제가 발생할 수도 있다. 이러한 문제를 예방하기 위해, 의문이 있을 경우 제조사가 의뢰할 수 있는 수많은 시험연구소 및 인증기관들이 있다.
범용으로 만들어진 필드버스를 사용함으로써, 이제는 해당 사양이 지나치게 높은 수준의 자유를 허용할 위험도 있다.
이는 표준규격을 매우 복잡하게 만들고, 그 결과 그에 상응하도록 정말 완전하고 일관성 있는 지를 확인하는 검사를 어렵게 한다. 프로파일들은 특정 애플리케이션들에 대한 자유의 정도를 한정하는 데 흔히 사용된다.
이 모두가, 해당 사양의 완전성, 일관성 및 명료성을 통하여 훌륭한 상호운용성을 갖는다. 하지만 사양이 이를 달성했는지 결정하는 데 사용할 만한 절차가 마련되어 있지 않다. 단지, 해당 사양에 견주어 문제가 없다고 확신할 정도로 가능한 한 많은 현장 구현 경험을 축적하는 것만이 도움이 될 따름이다.
마치며
하드웨어 비용이 필드버스 시스템 선정 시에 중요한 역할을 하는 유일한 것이 아니다. 경제적인 관점에서 중요한 다른 요소가 있는데, 이를 위해 AS-Interface가 비용 효율적인 솔루션을 제공할 수 있다.
AS-Interface의 간편성은, 특별한 지식을 갖고 있지 않더라도 최소한의 교육훈련을 이수함으로써 작업인원이 운용 자격을 갖출 수 있도록 해준다. 다수의 업체들이 AS-Interface 컴포넌트를 갖춘 교육훈련 과정과 아울러 해당 시스템을 속성으로 이수하도록 실습 훈련을 제공하고 있다. 이러한 훈련과정들과 기자재들은 AS-Interface가 제공하는 기능과 능력에 대해 장래의 사용자들을 교육하는 훌륭한 방안이라 하겠다.
< 제공: AS-Interface Association>
< 박스 기사>
실생활의 출근길에서 유추한 비교
A씨와 B씨는 서울 근교도시인 수원에 살고 있고, 서울 시내의 직장으로 출근해야 한다. A씨는 전철을 이용하고, B씨는 자가용을 운전한다. A씨가 역에서 막 도착하는 정시의 열차를 (동기화 시간) 방금 놓쳐서, 그 다음 열차를 기다려야 할 수도 있다. 하지만 그는 자신이 목적지에 언제 도착할지 상당히 정확히 예상할 수 있다. B씨는 물론, 자기 차를 바로 출발시키고, 평시의 교통 상황과 교통 신호가 허락하는 한, 상대적으로 빠르게 자신의 목적지로 갈 수 있다. 그러나 그가 상황이 좋지 않은 시간대에 출발했다면, 다른 모든 차들이 같은 시간 같은 도로 상에 몰려 있는 바람에 전철을 이용한 A씨 보다 출근길이 훨씬 오래 걸릴 수도 있는 것이다.
두 사람이 매일 일정한 시간을 정하지 않고 각기 나름대로 집에서 출발한다고 가정하고, 이들을 장기간에 걸쳐 관찰해 보자. 이들의 이동시간을 종합해 보면, 가령 그림 B-1에 나타낸 다이어그램을 얻을 수 있다. 우리는 입력 대기시간과 관련한 여타의 조건들이 동일할 경우, 이와 같은 종류의 다이어그램을 주기적 폴 명령을 수행하는 마스터-슬레이브 시스템들(A씨)을 CSMA 시스템들(B씨)과 비교할 때도 얻을 수 있다.
A씨가 자택을 출발하여 서울 시내에 있는 직장까지의 출근 교통시간은 두 개의 변수, 즉 평균 이동시간 및 편차시간으로 설명될 수 있다. 그와 마찬가지로, 필드버스 시스템의 경우에도, 우리는 평균 입력지연시간과 아울러, 소위 지터(jitter)라고 칭하는 지연 편차시간을 말할 수 있다. 마스터-슬레이브 시스템상의 지터는 해당 시스템의 주기와 항상 동일하다. 최악의 경우를 예측하는 데 중요한 것은 가능한 최장 대기시간이다. 이것은 신호가 입력되어 실제적으로 안정적인 검출되는 시간을 말한다. 위에서 언급한 예에서는 평균 대기시간에 편차시간의 절반을 더한 값에 해당한다. (그림 B-2)
B씨의 경우는 상황이 그리 간단하지 않다. 여기서도 우리는 다시 평균 이동시간을 나타낼 수 있다. 더욱이 이는 A씨의 경우보다 일반적으로 더 짧을 것이다. 그러나 이동시간 편차는 이제 더 이상 평균 이동시간 주위에 대칭적으로 분산되어 있지 않다. 상위 편차는 엄청나게 늘어난다. (그림 B-3)
< 박스 끝>
아이씨엔 매거진 2007년 04월호








