[특별기획] 자동화 산업용 네트워크의 종류와 이해Ⅱ ‘ETHERNET Powerink’
지난달 월간 모션컨트롤이 자동화 산업용 네트워크의 종류와 이해의 첫 순서로 이더켓(EtherCAT)을 소개한 바 있다.
산업용 네트워크는 최소한의 인력으로 공장의 가동 및 유지, 보수가 가능 하게끔 하며, 국내의 심각한 노동력 부족과 급격한 임금 상승에 맞서 기업의 생산성 향상과 생산 품질의 경쟁력을 회복하는데 하나의 필수적인 해결 방안으로 인식되고 있다는 점을 다시 한 번 강조하며, 이번에는 그 두 번째 순서로 ‘ETHERNET Powerink’를 소개해 본다.
왜 필드버스로 이더넷인가?
이더넷은 우리의 생활환경 어디에나 있다. 특히 산업 환경에서는 더욱 중요한데, 그 이유는 이더넷이 자동화 공장 설비 등에 일반적으로 사용되고 있기 때문이다. 이더넷은 전 세계 표준을 자랑하며, 어디에서나 이용이 가능하다. 뿐만 아니라, 엔지니어들은 이더넷에 친숙하게 접근할 수 있고, 또한 엄청나게 많은 소프트웨어, 툴과 하드웨어들을 이용가능, 매우 빠른 데이터 속도, Future-proof 등의 주요 특징을 지니고 있다.
그 중 자동화 요건과 이더넷은, CSMA/CD로 인해 가능하지 않으며, 일반 소프트웨어는 버퍼링과 대기열 메커니즘을 사용하고, 일반 프로토콜의 경우 많은 프로토콜 오버헤드를 지니고 있는 등 실시간 데이터 전송이 가능하다. 또한 Switches를 사용하여 어떤 위상도 가능하며, 일반 이더넷의 경우 라인에 단 2개의 허브를 지닌다. 환경적인 측면에서도 온도 및 견고성의 특징도 지닌다.
‘ETHERNET Powerink’ 특징
‘ETHERNET Powerink’는 IEEE802.3u 빠른 이더넷, 표준 이더넷 컨트롤러들의 사용, IEEE1588 클럭동기화(V3에서) 등 일반 이더넷 프로토콜과 요소들이 바탕을 이루고 있으며, 200μs 까지의 주기시간, Jitter<1μs possible(하드웨어/CPU에따라가능) 등 결정적 통신을 제공한다. 통신 성능 부분에서 CANopen은 최대 전송속도 1Mbit/s, 최대 메시지 속도 약14.000 msgs/s(최소CANopen메시지길이)로 Non real-time에 결정적 영향을 미치며, EPL은 최대 전송속도 100 Mbit/s(향후1 Gbit/s가능), 최대 메시지 속도 약100.000msgs/s(PReq/PRes)로 Hard real-time에 결정적 영향을 준다.
‘ETHERNET Powerink’의 애플리케이션들을 살펴보면, 하드 리얼타임을 요구하거나, 스테이션의 정밀한 동기화, 짧은 주기시간을 요하는 모든 필드버스에 적용이 가능하다. 또한 높은 결정력, 표준 IP 프로토콜들을 지원하는 공장 자동화 뿐만 아니라, 최적화된 대역폭을 활용하거나 표준 기반구조 요소를 사용하는 백본 네트워크 애플리케이션에 적용이 가능하다. CANopen 매커니즘을 통신 프로파일에서 채택할 수 있는데, Object Dictionary, PDO, SDO 외에도 모든 CANopen Device와 Application Profiles 사용이 가능하다. 그 밖에도 N-to-M 통신구조를 갖추고 있어 Hot Plugging/Hot Swapping 지원, 표준IP 기반 프로토콜들 지원, Webserver, FTP, E-Mail 같은 서비스들의 사용이 가능하다.
‘ETHERNET Powerink’의 역사
2001년 11월 B&R에 의해 ETHERNET Powerlink는 처음 도입됐다. 이후 2002년 4월 외부에 기술이 공개됐으며, 2002년 11월 EPSG 컨소시엄이 구성됐는데 Hirschmann, KukaRoboter, Lenze, B&R, ZHW 등이 참여했다. 2003년 6월 EPSG Association이 설립되어 CANopen에 대해 CiA와 협력이 이뤄졌고, 2003년 11월에는 ETHERNET Powerlink Specification V2가 발표된 이후 2005월 4월까지 EPSG 회원 수 약 70여개로 늘어났다.
![]() |
위상(Topology)
ETHERNET Powerlinksms 허브들만 sub-net 안에서 사용되어야 한다. Switches는 권장되지 않으며(대기열 지연), 가능한 위상들은 Tree, Star, Line이 있다. 한 라인에 10개 이상의 허브는 권장되지 않고 있다.
![]() |
통신 모델
ETHERNET Powerlink의 통신 모델은 크게 Protected 모드와 기본 이더넷 모드로 나뉜다. Protected 모드는 collision-free 소통의 Sub-net(EPL 세그먼트)으로 실시간 통신이 중요하게 요구되는 경우에 사용된다. 네트워크 접속은 마스터 디바이스에 의해 처리되고, EPL 특정메시지들은 이더넷을 통해 전송된다. Sub-net은 bridge/router를 통해 접속될 수 있다. 기본 이더넷 모드는 CSMA/CD(네트워크 소통은 비-결정적)를 통한 네트워크 접속이며, 별도 하드웨어 없이 일반 PC를 사용하여 디바이스가 구성될 수 있다.
Protected 모드 통신 원리는 다음과 같다. EPL 세그먼트(sub-net)는 non-deterministic 노드로부터 보호된다. 메시지교환은 cyclic basis(EPL사이클)에서 구성된 계획대로 실행되며, Managing Device는 다른 노드들(Controlled Nodes)의 전송을 요청한다. 또한 주기적 데이터 전송은 나뉘어진다. 노드 당 개별적인 통신 슬롯을 가진 등시성(Isochronous) 통신이며, 모든 노드에 공유된 통신 슬롯을 가진 비동기(Asynchronous) 통신이라고 할 수 있다. 한편, 관리/제어 노드를 살펴보면, 관리노드(Managing Node;MN)는 메시지를 개별적으로 보낼 수 있는 특징을 지니고 있다. 제어노드(Controlled Nodes)에 전송을 요청하고, 한 개의MN은 반드시 Protected Mode에서 동작하는 EPL 세그먼트에 존재해야 한다.
제어노드(Controlled Node;CN)의 경우 Protected Mode에서 요청 시에만 데이터를 전송할 수 있으며, CN의 두 가지 종류로는 등시성CN(등시적 그리고 비동기 기간에도 데이터 전송)과 Async-only CN(비동기 기간에만 데이터 전송)이 있다.
EPL Cycle
EPL Cycle의 구성은 다음과 같다.
![]() |
•시작 주기 - 동기화
•등시 주기 - PDO/SDO 통신
•비동기 주기 - SDO 통신, NMT, IP 통신(구형이더넷)
•유휴 주기 - 통신 없음
EPL Cycle의 연속타임 슬롯은 모든 EPL 사이클에 존재한다. 다중송신(Multiplexed) 타임슬롯에서 모든 EPL 사이클에서 전송하는 CN들의 그룹은 다중 송신타임 슬롯에 배정되며, CN의 수가 다중 송신타임 슬롯의 수보다 더 커야 한다. EPL 메시지 프레임은 소스/목적지 MAC 주소 및 ETHERNET Powerlink EtherType:0x88AB의 이더넷 헤더와 메시지 유형, 목적지(EPL Node ID), 소스(EPL Node ID), 플래그, NMT 상태의 EPL 헤더, 그리고 필요한 경우 공백으로 메꿔진 데이터로 구성되어 있다.
EPL 프로토콜
•주기시작(Start of Cyclic;SoC)
-주기의 시작 알림, 디바이스들을 동기화, Nettime(4-byte value in μs)전송
•폴요청(Poll Request;PReq)
-단일 전송 메시지로 MN에서 하나의 CN으로, 최대 총1490bytes, PDO와 SDO 데이터전송
•폴응답(Poll Response;PRes)
-멀티캐스트 메시지로 하나의 CN에서 또는 MN에서, 최대 총1490bytes, POD와SDO 데이터전송
•비동기시작(Start of Asynchronous; SoA)
-전용 CN에서 특정 NMT 서비스를 요청하기 위해 또는 CN이 불특정 데이터를 전송하도록 요구하기 위해 MN에 의해 사용(비동기 슬롯의 액세스를 위해 CN에 의한 이전의 요청에 대한 응답으로)
EPL 프로토콜 비동기전송(ASend)에서 EPL-Format은 NMT 서비스를 전송하기 위해 사용되며, IdentResponse, StatusResponse, NMTRequest(MN에서 NMT 서비스를 요청하기 위해CN에 의해 사용될 뿐임), NMTCommand(MN에 의해 사용될 뿐임) 등이다. EPL-Frame 내에서 SDO를 전송하기 위해 사용된다. TCP/UDP/IP-Format의 경우 TCP와 UDP 기반 서비스들을 전송하기 위해 사용되고, UDP를 통해 SDO 서비스를 전송하기 위해 사용되고 있다.
![]() |
![]() |
![]() |
EPL Node-ID
EPL Node-ID는 노드를 어드레스하기 위해 EPL 프레임 내에서 사용된다.
Service Data Object(SDO)
Service Data Object(SDO)는 두 노드간에 지점대 지점(point-to-point) 통신을 위해 사용된다. 노드의 객체 사전(Object Dictionary)에서 모든 엔트리들에 대한 read/write 액세스들을 제공하며, 읽히고/기록되는 데이터는 index/subindex에 의해 확인된다. 또한 모든 길이의 데이터 전송을 지원(예-프로그램 다운로드)하며, 확인된 통신(수용은 애플리케이션 수신에 의해 확인)이다. Service Data Object(SDO)는 다음을 통해 전송될 수 있다.
•UDP/IP 메시지(선호방법)
•Poll Response 메시지(PDO에 map으로 함유된 SDO, 단 시간 내에 많은 SDO 전송들 허용)
•비동기 전송 메시지(UDP/IP 이용보다 적은 오버헤드)
뿐만 아니라, SDO 모듈은 Command Layer, Sequence Layer 등 2개의 하위 계층들로 구된다. Sequence Layer는 세그먼트의 무손실과 세그먼트의 정확한 순서를 보증하며, 세그먼트의 크기는 Command Layer에 따라 달라진다. Command Layer는 SDO 명령들을 제공하고 처리한다. 전송유형은 “expedited”와 “segmented”이며, 최대 세그먼트 크기를 지정한다(적어도256 bytes 세그먼트 크기가 지원되어야 함).
[Service Data Object(SDO) 명령어]
•인덱스에 의한 Read/Write
•인덱스에 의한 Read/Write All
•이름에 의한 Read/Write
•인덱스에 의한 Read/Write multiple parameter
•Read/Write File
![]() |
![]() |
![]() |
Process Data Object(PDO)
Process Data Object(PDO)는 처리데이터의 실시간 전송을 위해 사용된다. 모델에 따라 데이터의 효율적인 전송을 제공하고, 등시(Isochronous) 슬롯안의 PollResponse 프레임에 의한 주기적 전송 및 비확인 전송을 담당한다. 정확한 수용은 주기적 전송과 이더넷 프레임의 CRC checksum에 의해 보장되며, PDO와 같이 전송될 처리데이터의 어셈블리는 정적으로 또는 실행동안(PDO mapping) 설정될 수 있다.
•CN에서는 단 한 개의 Transmit PDO
•MN에서는 최대 253개의 Transmit PDO 이용 가능
•MN/CN에서는 최대 253개의 Receive PDO 이용 가능
•Map된 오브젝트들의 최대 수는 253(하위 인덱스의 개수 한도로 인하여)
•최대길이 1490 bytes
•PDO의 일관된 재구성 지원(버전제어, 유효성)
NMT CN 통신 상태는 네트워크의 제어된 Boot-Up은 모든 디바이스들의 동기화를 보증한다.
EPL V2 에서의 추가 정의들
•오류처리-오류데이터는Status Response 메시지 안으로 전송
•Bootup-절차
•프로그램 다운로드
•구성매니저(Configuration Manager)
•프로그램 가능 디바이스의 Input/Output
•XML 파일로서의 EDS/DCF
•데이터 유형과 암호 규칙
•커넥터
•지시기(Indicators)
기반 구조 요소들 : Router
•Router Type 1
-구형 이더넷 라우터에 대한 EPL
-다음용도에사용 : 원격접속/ EPL 세그먼트간의 통신
•Router Type 2
-CANopen Router에 대한 EPL
-SDO 액세스들의 경로지정(routing)
-PDO 데이터의 경로지정
EPL 확장 - EPLsafety Layer
EPLsafety는 regular EPL의 상위에 있는 프로토콜로 독립적 safety layer이다. 한 개 네트워크에서의 Regular와 safe messages, 100μs cycle time에서 IEC 61508 SIL3, 데이터 양이 감소된 SIL4을 포함하며, ETHERNET Powerlink의 장점을 유지한다. Regular PDO 내에포함된 EPLsafety messages도 이에 속한다.
산업환경에서의 속도와 결정성의 중요성
이더넷은 IEEE 820.3 표준의 일부인 프레임 기반, 혹은 데이터 패킷 기반 네트워킹 기술이다. 이더넷에는 여러 가지 변형된 형태가 있다. 원래는 과거의 아날로그 케이블 TV의 케이블과 같은 동축 케이블 기반이었지만, 이더넷 케이블은 점점 더 전화기술에서 채택한 트위스티드 페어(Twisted Fair) 기술에 기반을 두게 됐다. 그 이유는 이미 많은 사무실에서 이러한 종류의 케이블을 사용하고 있으며, 대부분의 케이블 설치 업체도 이를 사용하고 있기 때문이었다. 이렇듯 10Base-T가 전화와 비슷한 스타 토폴로지로 개발됐고, 10Base-T는 100Base-T 및 다른 스루풋(Throughput) 포맷이 등장할 때까지 계속 사용됐다.
이더넷 네트워크는 노드, 스위치, 라우터와 리피터로 구성돼 있다. 특히 스위치는 스마트형으로서, 거의 무한정의 노드로 구성된 이더넷 네트워크를 가능하게 해주었다. 이더넷 노드는 서로에게 데이터 패킷을 전송한다. 다른 IEEE 802 랜에서와 같이 이더넷 노드 각각에는 MAC(Media Access Control : 매체 접근 제어) 주소가 주어진다. MAC 주소는 각각의 데이터 패킷의 목적지와 소스를 정하는데 사용된다. 모든 패킷은 동보(Broadcast), 즉 모든 노드에 보내진다. 패킷에 있는 데이터는 그 패킷이 어떤 노드를 깨워 데이터를 취하게 할 것인가를 정하는 역할을 한다. 어댑터는 전 세계적으로 동일한 주소로 프로그램돼 나온다. 거의 모든 이더넷 세대가 동일한 프레임 포맷을 사용하고 있으며, 브리지를 이용해 쉽게 서로 연결할 수 있다.
하지만 한 가지 문제가 있다. 이더넷은 광보(Broadcast)를 하기 때문에 모든 패킷이 모든 노드로 가게 된다. 하지만 데이터 패킷 간의 충돌이 심각한 문제로 남는다. 이 데이터 충돌은 대역폭의 감소와 데이터 손실을 유발할 수 있다. 이는 기업(사무실) 환경에서는 통제가 가능하지만, 산업용 공장 환경에서는 그렇지가 못하다. 문제가 되는 것은 데이터가 다양한 경로를 취할 수 있고 따라서 발송 노드에서 수령 노드까지 걸리는 시간이 달라질 수 있다는 점이다.
만일 이것이 이메일이라면 아무도 신경 쓰지 않을 것이다(사실은 아무도 알 수가 없다). 하지만 고속의 CNC 공장을 위한 제어 변수라면, 패킷 손실과 속도 손실은 끔찍한 일이 될 수 있다.
산업 환경에서는 실시간 정보 전송이 필요하다. 특정 패킷이 이더넷 랜상에서 목적지에 도달하는 시간이 정해져 있지 않기 때문에, 이더넷에 대해 실시간 제어 기능을 보장하기가 어렵다. 각 패킷이 목적지에 도달하는 결정해둬야 한다. 즉, 이 프로세스가 결정성이 있어야 한다.
결정성은 속도를 규정하지 않는다. 결정성과 속도는 매우 다른 개념이다. 일반적으로 산업용 공장 설비를 제어하는 것에 있어서는 속도와 결정성 둘 모두가 필요하다. 속도는 최대한의 스루풋을 위해 필요하고, 결정성은 스루풋의 질을 결정하는데 필요하다. 즉, 사용 가능한 최고의 속도를 지닌 스루풋을 위해 결정성이 필요한 것이다. 이런 점들을 미루어 보았을 때, ‘ETHERNET Powerink’는 다양한 장점을 지니고 있는 자동화 산업용 네트워크로서 다양한 장점을 지녔다고 할 수 있다.
자료제공 | 임베디드시스템코리아(www.eskorea.net)











