[ETG 기술소개] EtherCAT 진단기능 part 2-1

EtherCAT 진단 기능 Part 2-1

  이전 10월호에 게재된 ‘EtherCAT 진단 기능 – Part 2’ 기사에서는 Working counter로 EtherCAT 마스터 디바이스가 주기적으로 EtherCAT 슬레이브의 동작을 모니터링 하는 메커니즘에 대해서 설명하였다. 주기적으로 모니터링 하는 것 외에도 일반적인 산업용 통신들은 해당 마스터가 하드웨어 및 슬레이브의 애플리케이션 프로그램에서 오류의 상태와 원인을 정확하게 감지할 수 있게 하는 추가 진단 메커니즘을 제공한다.
  일반적으로 산업용 통신의 경우, 특성때문에 IOS/OSI 7계층 모델에서 물리계층, 데이터 링크 계층 및 응용 계층만을 사용한다.(그림1)

그림1. Simplified ISO/OSI model for fieldbus systems

물리계층 및 데이터 링크 계층(Physical Layer and Data Link Layer)
  EtherCAT 슬레이브 컨트롤러(ESC)에 하드웨어적으로 구현되어 있고, 프레임 라우팅, CRC 체크 및 슬레이브 내의 메모리 액세스와 같이 시간에 민감한 모든 기능을 처리한다.


애플리케이션 계층(Application Layer)
  애플리케이션 계층은 상태 머신(State machine) 관리와 주기, 비주기 데이터 교환 및 슬레이브별 고유 기능을 담당한다. EtherCA의 경우 이러한 기능들은 ESC와 인터페이스 하는 마이크로 컨트롤러의 펌웨어로 구현된다.
  EtherCAT은 ESC 메모리 내의 여러 레지스터 세트에 추가 정보를 제공한다. 이 레지스터의 주소와 의미는 표준화 되어 있기 때문에 모든 ESC에서 동일하다.
  마스터는 네트워크망에 연결된 특정 슬레이브에 제한되지 않고 표준화된 접근 절차를 통해 진단 정보를 읽을 수 있다.


Diagnosisin the ESC address space
  마스트와 슬레이브 간의 데이터 교환은 슬레이브의 메모리 주소 영역 내에서 이루어지고,(그림2) 이 ESC 내의 주소 공간은 논리적으로 두 영역으로 나뉘어진다.

그림2. Internal structure of the EtherCAT Slave Controller (ESC)

User memory(address ≥ 0x1000)
  User memory는 프로세스 데이터와 메일 박스의 형태로 마스터와 슬레이브 간에 애플리케이션 데이터를 교환하기 위한 듀얼 포트 RAM의 기능을 한다. 이 메모리 영역에 대한 액세스는 마스터와 로컬 애플리케이션 간의 일관된 데이터 교환을 보장하는 SyncManager라고 하는 요소에 의해 조정된다.

Registers(address < 0x1000)
  이 메모리 영역은 슬레이브 동작을 구성, 제어 및 모니터링하는데 사용되고 표준화된 구조를 가지고 있다. 마스터 응용 프로그램과 슬레이브 응용 프로그램 모두 이 메모리 영역에 직접 액세스할 수 있다. 진단 정보 또한 이 영역의 일부를 사용하고, 하드웨어 정보와 응용프로그램 정보로 나눌 수이다.


Hardware diagnostic registers
  EtherCAT 슬레이브는 각 포트의 물리적 링크 상태를 보고한다. 이 정보는 데이터 링크 상태 레지스터(ESC DL Status Register (0x0110:0x0111))에 제공된다. (표1)

표1

  포트에서 링크 손실이 감지될 때마다 해당 Link lost Counter가 증가한다. (표2)

표2

  Link Lost Counter는 슬레이브 결함, 케이블 단선 또는 느슨해진 연결과 같은 물리적인 연결 문제로 인해 증가한다. Link Lost Counter는 마스터 장치에 의해 초기화 시킬 수 있다. 전원을 켰을 때 또는 시운전 중에 발생할 수 있는 오류를 삭제하려면 카운터 모니터링을 시작하기 전에 초기화를 수행해야 한다. 링크 상태는 포트의 루프 상태에 영향을 미치지만 이 루프 상태는 프레임의 전달 방향에 영향을 미친다. 열려있는 프레임은 프레임을 바깥쪽으로 라우팅하지만 닫힌 포트는 내부적으로 프레임을 다음 포트로 전달한다. DL Status Register는 각 포트의 루프 상태에 대한 정보도 보고한다.(표3)

표3


Example 1: Location of network topology changes

EtherCAT

  마스터 장치는 브로드 캐스트 방식으로 슬레이브 상태를 읽는 것과 같은 주기적 프레임에 포함된 Working counter 값을 확인하여 토폴로지가 변경된 것을 모니터링 할 수 있다. 이러한 명령에 대한 Working counter 값의 변화는 네트워크 토폴로지의 변경을 의미한다. 변경이 발생한 위치를 감지하기 위위해 마스터 장치는 각 슬레이브에서 DL Status Register를 읽는 일련의 유니 캐스트 명령을 보내고 모든 포트의 실제 루프 상태를, 구성된 네트워크 토폴로지에 따라 예상되는 값과 비교할 수 있다. (그림3)

그림 3. Network topology change detection and location

  포워딩 프레임 외에도 EtherCAT 슬레이브 컨트롤러의 각 포트는 수신 프레임에 대해 CRC 평가를 수행한다.(그림4)

그림4. Each open port performs CRC evaluation on incoming frames

CRC

  오류는 전원 케이블이 필드버스 연결부에 매우 가깝게 지나가는 경우 EMC 장애로 인한 데이터 손상의 결과로 발생할 가능성이 높다.
추가적으로 발생한 CRC 오류를 감지한 첫 번째 열린 포트는 이 포트(RX 오류 카운터, CRC 오류 카운터)에서 오류 카운터를 증가시키고 프레임에 니블을 추가하여 프레임이 손상된 것으로 표시한다.(표4)

표4

  또한 다른 ESC는 Forwarded CRC Error Counters를 증가시킬 수 있다. 슬레이브가 포워딩메커니즘을 지원하면 잘못된 프레임을 수신한 첫 번째 포트는 CRC 오류 카운터를 증가시키고 프레임에 니블을 추가하여 프레임을 유효하지 않은 것으로 표시한다. 이후 프레임을 수신하는 모든 포트는 추가 니블을 인식하고 프레임의 데이터를 무시하고 전달된 CRC 오류 카운터(표5)를 증가시킨다. 또한 CRC 및 Forwarded CRC Error Counters는 마스터 장치에서 초기화 할 수 있다.

표5

  이번호에는 EtherCAT 마스터와 슬레이브에서 감지할 수 있는 오류의 상태와 종류에 대해서 소개를 하였고, 다음 호에는 보다 다양한 상황에서 오류를 확인하는 방법에 대해서 소개할 예정이다.


[출처] 월간 Control / 2019. 02

댓글

이 블로그의 인기 게시물

[IPC 메뉴얼] BECKHOFF PC 기본 설정 방법

트라이텍, EtherCAT과 DeviceNet [월간CONTROL 2013/11]

[쉽고 간단한 안내서] TwinCAT PLC HMI와 TwinCAT HMI